|
|
@ -733,9 +733,10 @@ FF_NXT2: |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
FF_FNCALL: ; USING HBX_BUF FOR CODE AREA |
|
|
FF_FNCALL: ; USING HBX_BUF FOR CODE AREA |
|
|
CALL FF_CALCA ; GET BANK AND SECTOR DATA IN IY |
|
|
|
|
|
|
|
|
CALL FF_CALCA ; GET BANK AND SECTOR DATA IN BC |
|
|
; |
|
|
; |
|
|
POP HL ; GET ROUTINE TO CALL |
|
|
POP HL ; GET ROUTINE TO CALL |
|
|
|
|
|
PUSH BC |
|
|
; |
|
|
; |
|
|
LD DE,HBX_BUF ; EXECUTE / START ADDRESS |
|
|
LD DE,HBX_BUF ; EXECUTE / START ADDRESS |
|
|
LD BC,HBX_BUFSIZ ; MAX. CODE SIZE POSSIBLE |
|
|
LD BC,HBX_BUFSIZ ; MAX. CODE SIZE POSSIBLE |
|
|
@ -744,8 +745,7 @@ FF_FNCALL: ; USING HBX_BUF FOR CODE AREA |
|
|
LD D,B ; PRESET DE TO ZERO TO REDUCE |
|
|
LD D,B ; PRESET DE TO ZERO TO REDUCE |
|
|
LD E,B ; CODE SIZE IN RELOCATABLE CODE |
|
|
LD E,B ; CODE SIZE IN RELOCATABLE CODE |
|
|
; |
|
|
; |
|
|
PUSH IY ; PUT BANK AND SECTOR |
|
|
|
|
|
POP BC ; DATA IN BC |
|
|
|
|
|
|
|
|
POP BC ; PUT BANK AND SECTOR DATA IN BC |
|
|
; |
|
|
; |
|
|
#IF (MD_FDBG==1) |
|
|
#IF (MD_FDBG==1) |
|
|
CALL PRTHEXWORD |
|
|
CALL PRTHEXWORD |
|
|
@ -768,15 +768,14 @@ FF_FNCALL: ; USING HBX_BUF FOR CODE AREA |
|
|
LD A,C ; RETURN WITH STATUS IN A |
|
|
LD A,C ; RETURN WITH STATUS IN A |
|
|
POP DE |
|
|
POP DE |
|
|
POP HL |
|
|
POP HL |
|
|
POP IY |
|
|
|
|
|
RET ; RETURN TO MD_READF, MD_WRITEF |
|
|
RET ; RETURN TO MD_READF, MD_WRITEF |
|
|
; |
|
|
; |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; CALCULATE BANK AND ADDRESS DATA FROM MEMORY ADDRESS |
|
|
; CALCULATE BANK AND ADDRESS DATA FROM MEMORY ADDRESS |
|
|
; |
|
|
; |
|
|
; ON ENTRY DE:HL CONTAINS 32 BIT MEMORY ADDRESS. |
|
|
; ON ENTRY DE:HL CONTAINS 32 BIT MEMORY ADDRESS. |
|
|
; ON EXIT I,B CONTAINS BANK SELECT BYTE |
|
|
|
|
|
; Y,C CONTAINS HIGH BYTE OF SECTOR ADDRESS |
|
|
|
|
|
|
|
|
; ON EXIT B CONTAINS BANK SELECT BYTE |
|
|
|
|
|
; C CONTAINS HIGH BYTE OF SECTOR ADDRESS |
|
|
; A CONTAINS CURRENT BANK HB_CURBNK |
|
|
; A CONTAINS CURRENT BANK HB_CURBNK |
|
|
; |
|
|
; |
|
|
; DDDDDDDDEEEEEEEE HHHHHHHHLLLLLLLL |
|
|
; DDDDDDDDEEEEEEEE HHHHHHHHLLLLLLLL |
|
|
@ -804,9 +803,6 @@ FF_CALCA: |
|
|
RRA ; ADDRESS THAT GETS WRITTEN |
|
|
RRA ; ADDRESS THAT GETS WRITTEN |
|
|
AND $70 ; TO BANK SELECT PORT |
|
|
AND $70 ; TO BANK SELECT PORT |
|
|
LD C,A |
|
|
LD C,A |
|
|
; |
|
|
|
|
|
PUSH BC |
|
|
|
|
|
POP IY |
|
|
|
|
|
; |
|
|
; |
|
|
#IF (MD_FDBG==1) |
|
|
#IF (MD_FDBG==1) |
|
|
CALL PRTHEXWORD ; DISPLAY BANK AND |
|
|
CALL PRTHEXWORD ; DISPLAY BANK AND |
|
|
@ -833,7 +829,6 @@ FF_CALCA: |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
MD_FIDENT: |
|
|
MD_FIDENT: |
|
|
PUSH IY |
|
|
|
|
|
PUSH HL |
|
|
PUSH HL |
|
|
PUSH DE |
|
|
PUSH DE |
|
|
; |
|
|
; |
|
|
@ -905,7 +900,6 @@ MD_I_SZ .EQU $-MD_FIDENT_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
MD_FERAS: |
|
|
MD_FERAS: |
|
|
PUSH IY |
|
|
|
|
|
PUSH HL |
|
|
PUSH HL |
|
|
PUSH DE |
|
|
PUSH DE |
|
|
; |
|
|
; |
|
|
@ -1005,7 +999,6 @@ MD_S_SZ .EQU $-MD_FERAS_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
MD_FREAD: |
|
|
MD_FREAD: |
|
|
PUSH IY |
|
|
|
|
|
PUSH HL |
|
|
PUSH HL |
|
|
PUSH DE |
|
|
PUSH DE |
|
|
; |
|
|
; |
|
|
@ -1089,7 +1082,6 @@ MD_R_SZ .EQU $-MD_FREAD_R ; SIZE OF RELOCATABLE CODE BUFFER REQUIRED |
|
|
;====================================================================== |
|
|
;====================================================================== |
|
|
; |
|
|
; |
|
|
MD_FWRIT: |
|
|
MD_FWRIT: |
|
|
PUSH IY |
|
|
|
|
|
PUSH HL |
|
|
PUSH HL |
|
|
PUSH DE |
|
|
PUSH DE |
|
|
; |
|
|
; |
|
|
|