diff --git a/Source/Apps/Test/rzsz/rz.asm b/Source/Apps/Test/rzsz/rz.asm index a22c56cd..44e0af6b 100644 --- a/Source/Apps/Test/rzsz/rz.asm +++ b/Source/Apps/Test/rzsz/rz.asm @@ -22,12 +22,22 @@ iobyte .equ 0004h bdos .equ 0005h A_READ .equ 3 +A_WRITE .equ 4 A_STATIN .equ 7 A_STAT_OUT .equ 8 C_WRITESTR .equ 9 S_BDOSVER .equ 12 DRV_SET .equ 14 +F_OPEN .equ 15 +F_CLOSE .equ 16 +F_DELETE .equ 19 +F_WRITE .equ 21 +F_MAKE .equ 22 +F_DMAOFF .equ 26 F_USERNUM .equ 32 +DRV_DPB .equ 33 +F_SIZE .equ 35 +F_MULTISEC .EQU 44 S_SYSVAR .equ 49 buf_len: .equ 80h @@ -442,7 +452,7 @@ smod_52D: .equ $+1 ; self modifying ld a,(hl) ld (str_sav),a ld de,str_rev - ld c,9 + ld c,C_WRITESTR jp bdos str_busy: .db 7ch ; | @@ -530,7 +540,7 @@ sub_5B4: ld a,(byte_587) ;---------------------------------------------------------------------------- -loc_5C7: LD C,4 ; punch out +loc_5C7: LD C,A_WRITE ; punch out LD E,A JP bdos @@ -545,7 +555,6 @@ sub_5CD: ld c,A_STAT_OUT ret ;---------------------------------------------------------------------------- - ; S u b r o u t i n e sub_5D4: @@ -610,7 +619,6 @@ loc_5F7: ld e,(hl) ret ;---------------------------------------------------------------------------- - ; S u b r o u t i n e sub_61C: or a @@ -1082,10 +1090,10 @@ loc_860: djnz loc_841 ;---------------------------------------------------------------------------- -sub_885: PUSH AF -smod_w_887: .equ $+1 +crc16: PUSH AF +crc_seed: .equ $+1 LD HL,0 - LD DE,1021H ; ? + LD DE,1021H ; crc16-ccitt polynomial XOR H LD H,A LD B,8 @@ -1098,7 +1106,7 @@ loc_890: ADD HL,HL XOR E LD L,A loc_899: DJNZ loc_890 - LD (smod_w_887),HL + LD (crc_seed),HL POP AF RET @@ -1109,7 +1117,7 @@ sub_8A0: xor a ld h,a ld l, a ld (smod_b_7DF),a - ld (smod_w_887),hl + ld (crc_seed),hl ld hl,loc_2899 jp loc_726 @@ -1284,7 +1292,7 @@ loc_9E3: call sub_4A4 call sub_169E jr nz,loc_A11 ld de,byte_17A3 - ld c,16h + ld c,F_MAKE call bdos_s ret c ld a,0FFh @@ -1313,7 +1321,7 @@ loc_A11: call sub_A09 ;---------------------------------------------------------------------------- loc_A24: ld de,byte_17A3 - ld c,13h + ld c,F_DELETE call bdos_s jr nc,loc_9E3 loc_A2E: call sub_552 @@ -1330,13 +1338,13 @@ loc_A35: ld a,(byte_2CA1) cp 0FFh jr nz,loc_A24 loc_A43: ld de,loc_2811 - ld c,1Ah + ld c,F_DMAOFF call bdos ; BDOS function 26 (F_DMAOFF) - Set DMA address ld e, 1 - ld c,2Ch + ld c,F_MULTISEC call bdos ; BDOS function 44 (F_MULTISEC) - Set number of records to read/write at once ld de,byte_17A3 - ld c,0Fh + ld c,F_OPEN call bdos_s ret c ld a,0FFh @@ -1344,7 +1352,7 @@ loc_A43: ld de,loc_2811 ld hl,byte_280E call sub_64A ld de,byte_17A3 - ld c,23h + ld c,F_SIZE call bdos_s ret c ld hl,byte_17C7 @@ -1366,7 +1374,7 @@ loc_A83: push hl pop hl djnz loc_A83 ld de,byte_17A3 - ld c,21h + ld c,DRV_DPB call bdos_s ret c ld a,(byte_2CA1) @@ -1723,7 +1731,7 @@ loc_D15: ld a,1Ah jr nz,loc_D15 ld a,0 ld (byte_2CA5),a - ld c,10h + ld c,F_CLOSE ld de,byte_17A3 jp bdos_s @@ -1775,13 +1783,13 @@ loc_D6E: LD C,0 JR NZ,loc_0D97 LD HL,byte_280E CALL sub_64A - LD C,1AH ; set dma + LD C,F_DMAOFF ; set dma LD DE,loc_2811 CALL bdos - LD C,2CH + LD C,F_MULTISEC LD E,1 CALL bdos - LD C,15H ; wr. seq. + LD C,F_WRITE ; wr. seq. LD DE,byte_17A3 CALL bdos_s JR NC,loc_D6E @@ -2002,7 +2010,7 @@ loc_EDD: CALL sub_E2F JP C,loc_F38 CALL sub_FA2 CALL Z,sub_7ED - CALL NZ,sub_885 + CALL NZ,crc16 LD HL,(word_2CEB) LD BC,(word_2CEF) SBC HL,BC @@ -2071,11 +2079,11 @@ sub_F54: LD A,10H sub_F58: LD (byte_2CFD),A AND 7FH - CALL sub_885 + CALL crc16 LD B,2 loc_F62: PUSH BC CALL sub_E2F - CALL sub_885 + CALL crc16 POP BC JP C,loc_F38 DJNZ loc_F62 @@ -2322,13 +2330,13 @@ sub_1100: CALL sub_8A0 CALL sub_E2F RET C LD (byte_2D01),A - CALL sub_885 + CALL crc16 LD HL,loc_2CA7 LD B,4 loc_1112: PUSH BC PUSH HL CALL sub_E2F - CALL sub_885 + CALL crc16 POP HL POP BC LD (HL),A @@ -2338,7 +2346,7 @@ loc_1112: PUSH BC LD B,2 loc_1123: PUSH BC CALL sub_E2F - CALL sub_885 + CALL crc16 POP BC RET C DJNZ loc_1123 @@ -2358,7 +2366,7 @@ sub_113F: CALL sub_8A0 CALL sub_1194 RET C LD (byte_2D01),A - CALL sub_885 + CALL crc16 LD HL,loc_2CA7 LD B,4 loc_1151: PUSH BC @@ -2369,7 +2377,7 @@ loc_1151: PUSH BC POP BC RET -loc_115B: CALL sub_885 +loc_115B: CALL crc16 POP HL POP BC LD (HL),A @@ -2382,7 +2390,7 @@ loc_1166: PUSH BC POP BC RET -loc_116E: CALL sub_885 +loc_116E: CALL crc16 POP BC DJNZ loc_1166 LD A,H @@ -2606,7 +2614,7 @@ loc_12E6: LD B,0AH LD (IX),A INC IX CALL sub_7DD - CALL sub_885 + CALL crc16 LD BC,(word_2CEF) INC BC LD (word_2CEF),BC @@ -2625,12 +2633,12 @@ loc_12E6: LD B,0AH CP 10H JR NZ,loc_1352 LD A,(byte_2D08) - CALL sub_885 + CALL crc16 LD B,0AH CALL sub_DE7 LD (byte_2D08),A JP C,loc_137A - CALL sub_885 + CALL crc16 LD A,H OR L JP NZ,loc_137A @@ -2705,7 +2713,7 @@ sub_13BA: ld (byte_2CE8),a call sub_DDC call sub_8A0 ld a,(byte_2CE8) - call sub_885 + call crc16 call sub_1418 ld hl,loc_2CE0 ld b,4 @@ -2713,14 +2721,14 @@ loc_13D4: push bc ld a,(hl) inc hl push hl - call sub_885 + call crc16 call sub_1418 pop hl pop bc djnz loc_13D4 - ld a,(smod_w_887+1) + ld a,(crc_seed+1) call sub_1418 - ld a,(smod_w_887) + ld a,(crc_seed) call sub_1418 ld a,0Dh call loc_145C