|
|
@ -878,7 +878,7 @@ MD_CALCA: |
|
|
; |
|
|
; |
|
|
LD A,(HB_CURBNK) ; WE ARE STARTING IN HB_CURBNK |
|
|
LD A,(HB_CURBNK) ; WE ARE STARTING IN HB_CURBNK |
|
|
; |
|
|
; |
|
|
RET ; RETURN TO MD_FNRET |
|
|
|
|
|
|
|
|
RET |
|
|
; |
|
|
; |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; FLASH IDENTIFY |
|
|
; FLASH IDENTIFY |
|
|
@ -913,9 +913,9 @@ MD_FIDENT_R: ; THIS CODE GETS RELOCATED TO HIGH MEMORY |
|
|
LD (HL),A ; LD ($5555),A ; COMMAND |
|
|
LD (HL),A ; LD ($5555),A ; COMMAND |
|
|
; |
|
|
; |
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
CALL HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
|
|
|
|
|
|
JP HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
; |
|
|
; |
|
|
RET ; RETURN TO MD_FNRET |
|
|
|
|
|
|
|
|
; RET |
|
|
; |
|
|
; |
|
|
MD_I_SZ .EQU $-MD_FIDENT_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
MD_I_SZ .EQU $-MD_FIDENT_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; |
|
|
; |
|
|
@ -976,9 +976,9 @@ MD_WT4: LD A,(HL) ; DO TWO SUCCESSIVE READS |
|
|
MD_WT5: LD C,L ; SET SUCCESS STATUS |
|
|
MD_WT5: LD C,L ; SET SUCCESS STATUS |
|
|
; |
|
|
; |
|
|
MD_WT6: POP AF ; RETURN TO ORIGINAL BANK |
|
|
MD_WT6: POP AF ; RETURN TO ORIGINAL BANK |
|
|
CALL HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
|
|
|
|
|
|
JP HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
; |
|
|
; |
|
|
RET ; RETURN TO MD_FNRET |
|
|
|
|
|
|
|
|
; RET |
|
|
; |
|
|
; |
|
|
MD_S_SZ .EQU $-MD_FERAS_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
MD_S_SZ .EQU $-MD_FERAS_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; |
|
|
; |
|
|
@ -996,6 +996,7 @@ MD_S_SZ .EQU $-MD_FERAS_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; IX POINTS TO DATA TO BE WRITTEN |
|
|
; IX POINTS TO DATA TO BE WRITTEN |
|
|
; A CONTAINS CURRENT BANK |
|
|
; A CONTAINS CURRENT BANK |
|
|
; ON EXIT NO STATUS RETURNED |
|
|
; ON EXIT NO STATUS RETURNED |
|
|
|
|
|
; AF' TRASHED |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
MD_FREAD_R: ; THIS CODE GETS RELOCATED TO HIGH MEMORY |
|
|
MD_FREAD_R: ; THIS CODE GETS RELOCATED TO HIGH MEMORY |
|
|
@ -1003,17 +1004,17 @@ MD_FREAD_R: ; THIS CODE GETS RELOCATED TO HIGH MEMORY |
|
|
LD H,C ; SECTOR |
|
|
LD H,C ; SECTOR |
|
|
LD L,D ; ADDRESS |
|
|
LD L,D ; ADDRESS |
|
|
; |
|
|
; |
|
|
PUSH AF ; SAVE CURRENT BANK |
|
|
|
|
|
|
|
|
EX AF,AF' ; PUT DESTINATION BANK IN AF' |
|
|
|
|
|
LD A,B ; PUT SOURCE BANK IN AF |
|
|
; |
|
|
; |
|
|
MD_FRD1: |
|
|
MD_FRD1: |
|
|
LD A,B ; SELECT BANK |
|
|
|
|
|
CALL HBX_BNKSEL ; TO READ |
|
|
|
|
|
LD C,(HL) ; READ BYTE |
|
|
|
|
|
; |
|
|
|
|
|
POP AF |
|
|
|
|
|
PUSH AF ; SELECT BANK |
|
|
|
|
|
|
|
|
CALL HBX_BNKSEL ; READ ; SWITCH TO SOURCE BANK |
|
|
|
|
|
LD C,(HL) ; BYTE |
|
|
|
|
|
; |
|
|
|
|
|
EX AF,AF' ; SELECT BANK ; SWITCH DESTINATION BANK |
|
|
CALL HBX_BNKSEL ; TO WRITE |
|
|
CALL HBX_BNKSEL ; TO WRITE |
|
|
LD (IX+0),C ; WRITE BYTE |
|
|
LD (IX+0),C ; WRITE BYTE |
|
|
|
|
|
EX AF,AF' ; ; PUT SOURCE BANK IN AF |
|
|
; |
|
|
; |
|
|
INC HL ; NEXT SOURCE LOCATION |
|
|
INC HL ; NEXT SOURCE LOCATION |
|
|
INC IX ; NEXT DESTINATION LOCATION |
|
|
INC IX ; NEXT DESTINATION LOCATION |
|
|
@ -1021,11 +1022,8 @@ MD_FRD1: |
|
|
INC DE ; CONTINUE READING UNTIL |
|
|
INC DE ; CONTINUE READING UNTIL |
|
|
BIT 4,D ; WE HAVE DONE ONE SECTOR |
|
|
BIT 4,D ; WE HAVE DONE ONE SECTOR |
|
|
JR Z,MD_FRD1 |
|
|
JR Z,MD_FRD1 |
|
|
|
|
|
|
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
|
|
|
CALL HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
|
|
|
; |
|
|
; |
|
|
RET ; RETURN TO MD_FNRET |
|
|
|
|
|
|
|
|
RET |
|
|
; |
|
|
; |
|
|
MD_R_SZ .EQU $-MD_FREAD_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
MD_R_SZ .EQU $-MD_FREAD_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; |
|
|
; |
|
|
@ -1059,7 +1057,7 @@ MD_FVE1: |
|
|
; |
|
|
; |
|
|
POP AF |
|
|
POP AF |
|
|
PUSH AF ; SELECT BANK |
|
|
PUSH AF ; SELECT BANK |
|
|
CALL HBX_BNKSEL ; TO WRITE |
|
|
|
|
|
|
|
|
CALL HBX_BNKSEL ; TO VERIFY AGAINST |
|
|
; |
|
|
; |
|
|
LD A,C |
|
|
LD A,C |
|
|
SUB (IX+0) ; COMPARE BYTE |
|
|
SUB (IX+0) ; COMPARE BYTE |
|
|
@ -1076,10 +1074,8 @@ MD_FVE1: |
|
|
LD C,E ; SET SUCCESS STATUS = 0 |
|
|
LD C,E ; SET SUCCESS STATUS = 0 |
|
|
; |
|
|
; |
|
|
MD_FVE2: |
|
|
MD_FVE2: |
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
|
|
|
CALL HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
|
|
|
; |
|
|
|
|
|
RET ; RETURN TO MD_FNRET |
|
|
|
|
|
|
|
|
POP AF |
|
|
|
|
|
RET |
|
|
; |
|
|
; |
|
|
MD_V_SZ .EQU $-MD_FVERI_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
MD_V_SZ .EQU $-MD_FVERI_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; |
|
|
; |
|
|
@ -1141,9 +1137,9 @@ MD_FW7: LD A,(HL) ; FROM THE SAME FLASH ADDRESS. |
|
|
JR Z,MD_FWRI1 |
|
|
JR Z,MD_FWRI1 |
|
|
; |
|
|
; |
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
POP AF ; RETURN TO ORIGINAL BANK |
|
|
CALL HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
|
|
|
|
|
|
JP HBX_BNKSEL ; WHICH IS OUR RAM BIOS COPY |
|
|
; |
|
|
; |
|
|
RET |
|
|
|
|
|
|
|
|
; RET |
|
|
; |
|
|
; |
|
|
MD_W_SZ .EQU $-MD_FWRIT_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
MD_W_SZ .EQU $-MD_FWRIT_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
; |
|
|
; |
|
|
|