mirror of
https://github.com/wwarthen/RomWBW.git
synced 2026-02-06 14:11:48 -06:00
Update md.asm
minors
This commit is contained in:
@@ -261,7 +261,13 @@ MD_RW:
|
|||||||
MD_RW1:
|
MD_RW1:
|
||||||
PUSH BC ; SAVE COUNTERS
|
PUSH BC ; SAVE COUNTERS
|
||||||
LD HL,(MD_RWFNADR) ; GET PENDING IO FUNCTION ADDRESS
|
LD HL,(MD_RWFNADR) ; GET PENDING IO FUNCTION ADDRESS
|
||||||
|
#IF (MDFFENABLE)
|
||||||
|
PUSH IX
|
||||||
CALL JPHL ; ... AND CALL IT
|
CALL JPHL ; ... AND CALL IT
|
||||||
|
POP IX
|
||||||
|
#ELSE
|
||||||
|
CALL JPHL ; ... AND CALL IT
|
||||||
|
#ENDIF
|
||||||
JR NZ,MD_RW2 ; IF ERROR, SKIP INCREMENT
|
JR NZ,MD_RW2 ; IF ERROR, SKIP INCREMENT
|
||||||
; INCREMENT LBA
|
; INCREMENT LBA
|
||||||
LD A,MD_LBA ; LBA OFFSET IN CFG ENTRY
|
LD A,MD_LBA ; LBA OFFSET IN CFG ENTRY
|
||||||
@@ -297,7 +303,7 @@ MD_RDSECF: ; CALLED FROM MD_RW
|
|||||||
POP HL ; BLOCK WE HAVE
|
POP HL ; BLOCK WE HAVE
|
||||||
JR Z,MD_SECM ; IN THE BUFFER
|
JR Z,MD_SECM ; IN THE BUFFER
|
||||||
;
|
;
|
||||||
MD_SECR:
|
;MD_SECR:
|
||||||
; DESIRED SECTOR
|
; DESIRED SECTOR
|
||||||
; IS NOT IN BUFFER
|
; IS NOT IN BUFFER
|
||||||
LD (MD_LBA4K),BC ; WE WILL READ IN
|
LD (MD_LBA4K),BC ; WE WILL READ IN
|
||||||
@@ -307,10 +313,9 @@ MD_SECR:
|
|||||||
;
|
;
|
||||||
; DE:HL CONTAIN SOURCE ADDRESS
|
; DE:HL CONTAIN SOURCE ADDRESS
|
||||||
; WHICH WAS SETUP BY MD_IOSETUPF
|
; WHICH WAS SETUP BY MD_IOSETUPF
|
||||||
PUSH IX
|
;
|
||||||
LD IX,MD_F4KBUF ; SET DESTINATION ADDRESS
|
LD IX,MD_F4KBUF ; SET DESTINATION ADDRESS
|
||||||
CALL MD_FREAD ; READ 4K SECTOR
|
CALL MD_FREAD ; READ 4K SECTOR
|
||||||
POP IX
|
|
||||||
;
|
;
|
||||||
MD_SECM:
|
MD_SECM:
|
||||||
LD A,(IY+MD_LBA+0) ; GET SECTOR WITHIN 4K BLOCK
|
LD A,(IY+MD_LBA+0) ; GET SECTOR WITHIN 4K BLOCK
|
||||||
@@ -332,7 +337,7 @@ MD_SECM:
|
|||||||
;
|
;
|
||||||
; ON EXIT
|
; ON EXIT
|
||||||
; BC = LBA 4K BLOCK WE ARE ACCESSING
|
; BC = LBA 4K BLOCK WE ARE ACCESSING
|
||||||
; DE:HL = MEMORY ADDRESS TO READ FROM IN FLASH
|
; DE:HL = MEMORY ADDRESS TO ACCESS IN FLASH
|
||||||
;
|
;
|
||||||
MD_IOSETUPF:
|
MD_IOSETUPF:
|
||||||
LD L,(IY+MD_LBA+0) ; HL := LOW WORD OF LBA
|
LD L,(IY+MD_LBA+0) ; HL := LOW WORD OF LBA
|
||||||
@@ -369,15 +374,11 @@ MD_WRSECF: ; CALLED FROM MD_RW
|
|||||||
;
|
;
|
||||||
LD (MD_LBA4K),BC ; SAVE 4K LBA
|
LD (MD_LBA4K),BC ; SAVE 4K LBA
|
||||||
;
|
;
|
||||||
PUSH IX
|
|
||||||
LD IX,MD_F4KBUF ; SET DESTINATION ADDRESS
|
LD IX,MD_F4KBUF ; SET DESTINATION ADDRESS
|
||||||
CALL MD_FREAD ; READ 4K SECTOR
|
CALL MD_FREAD ; READ 4K SECTOR
|
||||||
POP IX
|
|
||||||
;
|
;
|
||||||
MD_SECM1: ; DESIRED SECTOR IS IN BUFFER
|
MD_SECM1: ; DESIRED SECTOR IS IN BUFFER
|
||||||
PUSH IX
|
|
||||||
CALL MD_FERAS ; ERASE 4K SECTOR
|
CALL MD_FERAS ; ERASE 4K SECTOR
|
||||||
POP IX
|
|
||||||
OR A
|
OR A
|
||||||
RET NZ ; RETURN IF ERROR
|
RET NZ ; RETURN IF ERROR
|
||||||
;
|
;
|
||||||
@@ -403,10 +404,8 @@ MD_SECM1: ; DESIRED SECTOR IS IN BUFFER
|
|||||||
POP DE
|
POP DE
|
||||||
POP HL
|
POP HL
|
||||||
;
|
;
|
||||||
PUSH IX
|
|
||||||
LD IX,MD_F4KBUF ; WRITE THE SECTOR
|
LD IX,MD_F4KBUF ; WRITE THE SECTOR
|
||||||
CALL MD_FWRIT
|
CALL MD_FWRIT
|
||||||
POP IX
|
|
||||||
;
|
;
|
||||||
XOR A
|
XOR A
|
||||||
;
|
;
|
||||||
@@ -651,15 +650,13 @@ FF_PROBE:
|
|||||||
CALL MD_FIDENT ; GET ID AT THIS ADDRESS
|
CALL MD_FIDENT ; GET ID AT THIS ADDRESS
|
||||||
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
; PUSH DE
|
|
||||||
LD HL,MD_TGTDEV ; IF WE MATCH WITH
|
LD HL,MD_TGTDEV ; IF WE MATCH WITH
|
||||||
XOR A ; A NON 39SF040
|
XOR A ; A NON 39SF040
|
||||||
SBC HL,BC ; CHIP SET THE
|
SBC HL,BC ; CHIP SET THE
|
||||||
LD A,(MD_FFSEN) ; R/W FLAG TO R/O
|
LD A,(MD_FFSEN) ; R/W FLAG TO R/O
|
||||||
OR H
|
OR H
|
||||||
OR L
|
OR L ; A NON ZERO VALUE
|
||||||
LD (MD_FFSEN),A ; A NON ZERO VALUE
|
LD (MD_FFSEN),A ; MEANS WE CAN'T
|
||||||
; POP DE ; MEANS WE CAN'T
|
|
||||||
POP HL ; ENABLE FLASH WRITING
|
POP HL ; ENABLE FLASH WRITING
|
||||||
#IF (MD_FVBS==1)
|
#IF (MD_FVBS==1)
|
||||||
CALL MD_LAND ; LOOKUP AND DISPLAY
|
CALL MD_LAND ; LOOKUP AND DISPLAY
|
||||||
@@ -693,8 +690,6 @@ MD_LAND:
|
|||||||
;
|
;
|
||||||
#IF (MD_FDBG==1)
|
#IF (MD_FDBG==1)
|
||||||
PRTS(" ID:$")
|
PRTS(" ID:$")
|
||||||
; LD H,C
|
|
||||||
; LD L,B
|
|
||||||
CALL PRTHEXWORD ; DISPLAY FLASH ID
|
CALL PRTHEXWORD ; DISPLAY FLASH ID
|
||||||
CALL PC_SPACE
|
CALL PC_SPACE
|
||||||
#ENDIF
|
#ENDIF
|
||||||
|
|||||||
Reference in New Issue
Block a user