|
|
|
@ -174,48 +174,27 @@ BSPC: .EQU 'H'-40h ; ^H = Backspace |
|
|
|
RESTART: |
|
|
|
LD DE,$0000 ; SET UP START |
|
|
|
LD (MD_FBAS),DE ; BANK AND SECTOR |
|
|
|
|
|
|
|
; |
|
|
|
LD HL,MD_FIDEN ; IDENTIFY CHIP |
|
|
|
CALL MD_FNCALL ; AT THIS BANK/SECTOR |
|
|
|
|
|
|
|
LD HL,$B7BF ; IS IT A 39SF040 |
|
|
|
XOR A |
|
|
|
SBC HL,BC |
|
|
|
LD A,0 |
|
|
|
JR Z,CHPFND ; YES IT IS ... |
|
|
|
; |
|
|
|
LD HL,$A401 ; IS IT A 29F040 |
|
|
|
XOR A |
|
|
|
SBC HL,BC |
|
|
|
LD A,1 |
|
|
|
JR Z,CHPFND ; YES IT IS ... |
|
|
|
; |
|
|
|
LD HL,$131F ; IS IT AN AT49F040 |
|
|
|
XOR A |
|
|
|
SBC HL,BC |
|
|
|
LD A,2 |
|
|
|
JR Z,CHPFND ; YES IT IS |
|
|
|
; |
|
|
|
LD HL,$A41F ; IS IT AN AT29C040 |
|
|
|
XOR A |
|
|
|
SBC HL,BC |
|
|
|
LD A,3 |
|
|
|
JR Z,CHPFND ; YES IT IS |
|
|
|
; |
|
|
|
LD HL,$E220 ; IS IT AN M29F040 |
|
|
|
XOR A |
|
|
|
SBC HL,BC |
|
|
|
LD A,4 |
|
|
|
JR Z,CHPFND ; YES IT IS |
|
|
|
; |
|
|
|
LD HL,$A4C2 ; IS IT AN MX29F040 |
|
|
|
LD A,0-1 ; SEARCH DEVICE |
|
|
|
LD HL,DEVICES ; TABLE FOR |
|
|
|
NXTDEV: LD D,(HL) ; VALID DEVICE |
|
|
|
INC HL ; |
|
|
|
LD E,(HL) |
|
|
|
INC HL |
|
|
|
INC A |
|
|
|
CP +((LSTDEV-DEVICES)/2) |
|
|
|
JP Z,FAILBC ; SUPPORTED CHIP NOT FOUND |
|
|
|
OR A |
|
|
|
EX DE,HL |
|
|
|
SBC HL,BC |
|
|
|
LD A,5 |
|
|
|
; |
|
|
|
JP NZ,FAILBC ; SUPPORTED CHIP NOT FOUND |
|
|
|
EX DE,HL |
|
|
|
JR NZ,NXTDEV |
|
|
|
; |
|
|
|
CHPFND: LD (ERATYP),A ; SAVE ERASE TYPE |
|
|
|
|
|
|
|
; |
|
|
|
LD BC,$F8F0 ; GET CPU SPEED |
|
|
|
RST 08 ; AND MULTIPLY |
|
|
|
LD A,L ; BY 4 |
|
|
|
@ -920,6 +899,7 @@ CONIN: PUSH HL ; CONSOLE INPUT. WAIT FOR A CHARACTER ADD RETURN IT IN A |
|
|
|
RET |
|
|
|
; |
|
|
|
PRTHEXB:PUSH AF ; PRINT HEX BYTE IN A TO CONSOLE |
|
|
|
PUSH BC |
|
|
|
PUSH DE |
|
|
|
CALL HEXASC |
|
|
|
LD C,D |
|
|
|
@ -927,6 +907,7 @@ PRTHEXB:PUSH AF ; PRINT HEX BYTE IN A TO CONSOLE |
|
|
|
LD C,E |
|
|
|
CALL CONOUT |
|
|
|
POP DE |
|
|
|
POP BC |
|
|
|
POP AF |
|
|
|
RET |
|
|
|
|
|
|
|
@ -1221,6 +1202,17 @@ packet: .DB 0 ; SOH |
|
|
|
.FILL 128,0 ; data*128, |
|
|
|
.DB 0 ; chksum |
|
|
|
; |
|
|
|
DEVICES: |
|
|
|
.DW $BFB7 ; 39SF040 0 |
|
|
|
.DW $01A4 ; 29F040 1 |
|
|
|
.DW $1F13 ; AT49F040 2 |
|
|
|
.DW $1FA4 ; AT29C040 3 |
|
|
|
.DW $20E2 ; M29F040 4 |
|
|
|
.DW $C2A4 ; MX29F040 5 |
|
|
|
.DW $37A4 ; A29010B 6 |
|
|
|
.DW $3786 ; A29040B 7 |
|
|
|
LSTDEV: .EQU $ |
|
|
|
; |
|
|
|
sector4k: .EQU $ ; 32 PACKETS GET ACCUMULATED HERE BEFORE FLASHING |
|
|
|
; |
|
|
|
SLACK .EQU (USR_END - $) |
|
|
|
|