mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 22:43:15 -06:00
Update rz.asm
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user