|
|
|
@ -25,6 +25,9 @@ |
|
|
|
FF_DBG: .EQU 0 ; DEBUG |
|
|
|
FF_HBX: .EQU 1 ; =0 USE STACK, =1 USE HBX_BUF |
|
|
|
; |
|
|
|
FF_RW .DB 00h ; READ WRITE FLAG |
|
|
|
FF_TGT .EQU 0BFB7H ; TARGET CHIP FOR R/W FILESYSTEM |
|
|
|
; |
|
|
|
;====================================================================== |
|
|
|
; BIOS FLASH INITIALIZATION |
|
|
|
; |
|
|
|
@ -46,7 +49,7 @@ FF_PROBE: |
|
|
|
LD E,C ; |
|
|
|
LD H,D ; WE INCREASE E BY $08 |
|
|
|
LD L,D ; ON EACH CYCLE THROUGH |
|
|
|
; |
|
|
|
; |
|
|
|
PUSH BC |
|
|
|
CALL PC_SPACE |
|
|
|
LD A,+(ROMSIZE/512)+1 |
|
|
|
@ -55,6 +58,20 @@ FF_PROBE: |
|
|
|
LD A,'=' ; NUMBER |
|
|
|
CALL COUT |
|
|
|
CALL FF_IINIT ; GET ID AT THIS ADDRESS |
|
|
|
; |
|
|
|
PUSH HL |
|
|
|
PUSH DE |
|
|
|
LD H,FF_TGT&$FF ; IF WE MATCH WITH |
|
|
|
LD L,FF_TGT/$FF |
|
|
|
CCF ; A NON 39SF040 |
|
|
|
SBC HL,DE ; CHIP SET THE |
|
|
|
LD A,(FF_RW) ; R/W FLAG TO R/O |
|
|
|
OR H |
|
|
|
OR L |
|
|
|
LD (FF_RW),A |
|
|
|
POP DE |
|
|
|
POP HL |
|
|
|
; |
|
|
|
CALL FF_LAND ; LOOKUP AND DISPLAY |
|
|
|
POP BC |
|
|
|
; |
|
|
|
@ -63,6 +80,13 @@ FF_PROBE: |
|
|
|
LD C,A |
|
|
|
; |
|
|
|
DJNZ FF_PROBE ; ALWAYS AT LEAST ONE DEVICE |
|
|
|
; |
|
|
|
LD A,(FF_RW) |
|
|
|
OR A |
|
|
|
JR NZ,FF_PR1 |
|
|
|
CALL PRTSTRD |
|
|
|
.TEXT " FLASH FILESYSTEM ENABLED$" |
|
|
|
FF_PR1: |
|
|
|
; |
|
|
|
#IF (FF_DBG==1) |
|
|
|
CALL FF_TESTING |
|
|
|
|