RECOVERY:
- обновлены системные файлы - подправлены опечатки. Спасибо @Andrew_Gorshkov BIOS: Исправлен баг в READ_SECTOR, могло уходить в бесконечный цикл
This commit is contained in:
parent
44dfb7f39b
commit
9c14f06b9c
@ -232,7 +232,7 @@ FDD_5x_LONG_READ:
|
||||
PUSH DE
|
||||
PUSH BC
|
||||
PUSH HL
|
||||
CALL RD_SEC
|
||||
CALL READ_SECTOR
|
||||
JP C,ERRDOS
|
||||
LD D,YH
|
||||
LD E,YL
|
||||
@ -431,15 +431,13 @@ FDD_5x_LONG_WRITE:
|
||||
;-------------------------------
|
||||
;READ SECTOR
|
||||
;-------------------------------
|
||||
RD_SEC: LD D,5 ;RETRY COUNT
|
||||
.RRETRY:
|
||||
;DI
|
||||
READ_SECTOR: LD D,5 ;RETRY COUNT
|
||||
.RRETRY: ;DI
|
||||
PUSH DE
|
||||
LD A,E
|
||||
INC A
|
||||
OUT (FDC_93.Sector),A
|
||||
.FDREAD:
|
||||
IN A,(SLOT3)
|
||||
.FDREAD: IN A,(SLOT3)
|
||||
EX AF,AF'
|
||||
LD A,XH
|
||||
OUT (SLOT3),A
|
||||
@ -447,8 +445,7 @@ RD_SEC: LD D,5 ;RETRY COUNT
|
||||
LD C,FDC_93.Data
|
||||
LD A,#80 ;COMMAND READ
|
||||
OUT (FDC_93.Command),A
|
||||
.FDR001:
|
||||
IN A,(FDC_93.DrvCTRL) ;WAIT INTRQ or DRQ
|
||||
.FDR001: IN A,(FDC_93.DrvCTRL) ;WAIT INTRQ or DRQ
|
||||
AND #C0
|
||||
JR NZ,.FDR004
|
||||
INC DE
|
||||
@ -458,41 +455,44 @@ RD_SEC: LD D,5 ;RETRY COUNT
|
||||
DJNZ .FDR001
|
||||
SCF
|
||||
JR .FDR005
|
||||
.FDR004:
|
||||
INI ;READ BYTE
|
||||
.FDR002:
|
||||
IN A,(FDC_93.DrvCTRL)
|
||||
;
|
||||
.FDR004: INI ;READ BYTE
|
||||
.FDR002: IN A,(FDC_93.DrvCTRL)
|
||||
AND #C0
|
||||
JR Z,.FDR002
|
||||
JP P,.FDR004
|
||||
.FDR005:
|
||||
EX AF,AF'
|
||||
.FDR005: EX AF,AF'
|
||||
OUT (SLOT3),A
|
||||
EX AF,AF'
|
||||
;-------------------------------
|
||||
;
|
||||
POP DE
|
||||
;EI
|
||||
IN A,(FDC_93.Command)
|
||||
LD C,A
|
||||
;R01
|
||||
JP C,.ERR_XRD
|
||||
; JP C,ERRRD ;READ ERROR
|
||||
;R01 ; JP C,ERRRD ;READ ERROR
|
||||
; !TEST 29/06/2024
|
||||
;JP C,.ERR_XRD
|
||||
JP NC,.NO_ERR_XRD
|
||||
DEC D
|
||||
JR Z,.RSTOP
|
||||
JR .RRETRY
|
||||
;
|
||||
.NO_ERR_XRD: ;
|
||||
AND #7F
|
||||
RET Z
|
||||
BIT 2,C
|
||||
JR NZ,.ERDATA
|
||||
LD A,5 ;SEEK ERROR
|
||||
DEC D
|
||||
JP Z,.RSTOP
|
||||
JR Z,.RSTOP
|
||||
PUSH DE
|
||||
CALL RESWG ; RESET_WG
|
||||
LD A,XL
|
||||
CALL SEEK ; !!!!! ¯®á¬®âà¥âì
|
||||
.ERR_XRD:
|
||||
POP DE
|
||||
.ERR_XRD: POP DE
|
||||
JR .RRETRY
|
||||
.ERDATA:
|
||||
DEC D ; POTERIA DANNYH
|
||||
;
|
||||
.ERDATA: DEC D ; POTERIA DANNYH
|
||||
JR NZ,.RRETRY
|
||||
.ERRRD: LD A,9 ;READ ERROR
|
||||
.RSTOP: EX AF,AF'
|
||||
@ -504,7 +504,7 @@ RD_SEC: LD D,5 ;RETRY COUNT
|
||||
RET Z
|
||||
LD A,6 ;SECTOR NOT FOUND /NO DISK/
|
||||
RET
|
||||
;
|
||||
; ; ;
|
||||
|
||||
;
|
||||
;-------------------------------
|
||||
|
||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user