mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 09:21:47 +03:00
-bug fdd-drv.asm: не будет читать сектор больше DSS_MAX_SECTOR_SIZE.
-bug OPENDSK: обработка ошибки после Dss.DRV.MediaCheck
This commit is contained in:
parent
cc65c4ba24
commit
a51e56090b
@ -192,6 +192,7 @@ OPENDSK: ;!TEST DRV.Open
|
||||
RST ToDSS.DRV
|
||||
POP BC
|
||||
JR Z,.exit
|
||||
JR C,.error
|
||||
JR .skip_open ;!FIXIT ª®£¤ DRV.MediaCheck ¨ DRV.Open ¡ã¤ã⠮⫨ç âìáï
|
||||
;
|
||||
.open: LD A,B
|
||||
|
||||
@ -1 +1 @@
|
||||
29
|
||||
30
|
||||
@ -182,7 +182,6 @@ MAKEDVC: LD C,A
|
||||
RET
|
||||
|
||||
|
||||
;!FIXIT ¯®¯¥à¥¤¥«ë¢ âì âã⠢맮¢ë ç¥à¥§ â®çª¨ ¢å®¤ ⨯ RST ¨«¨ ¢ë§®¢ë ⨯ LD C,0 : CALL HDDRIVE ¯àï¬ë¥
|
||||
;-------------------------------------------------
|
||||
; RST 18h. ‚¥ªâ®à ¤¨áª®¢ëå ãáâனáâ¢
|
||||
; ¢å®¤: a=®¬¥à ãáâனá⢠(0-25)
|
||||
|
||||
@ -620,6 +620,7 @@ MediaCheck: PUSH IY
|
||||
;
|
||||
CP DSS_Error.sys.UNKNOWN_FORMAT
|
||||
JR NZ,.exit
|
||||
; A != 0
|
||||
AND A ; á¡à®á ZF
|
||||
SCF
|
||||
; [ ] media changed
|
||||
@ -669,9 +670,6 @@ MediaCheck: PUSH IY
|
||||
CHECK_IDE_SECTOR_SIZE: ;RET
|
||||
LD E,(IY+LOGDRV.SECTOR_SIZE)
|
||||
LD D,(IY+LOGDRV.SECTOR_SIZE+1)
|
||||
; LD HL,DSS_MAX_SECTOR_SIZE
|
||||
; AND A
|
||||
; SBC HL,DE
|
||||
PUSH HL
|
||||
LD HL,-DSS_MAX_SECTOR_SIZE - 1
|
||||
ADD HL,DE
|
||||
|
||||
@ -178,8 +178,21 @@ Init: LD A,2 ;
|
||||
; ; ;
|
||||
|
||||
;
|
||||
Open: LD C,BIOS.DRV_RESET
|
||||
Open: PUSH AF
|
||||
LD C,BIOS.DRV_RESET
|
||||
RST ToBIOS
|
||||
POP BC
|
||||
RET C
|
||||
;
|
||||
LD A,B
|
||||
LD C,BIOS.DRV_GET_PAR
|
||||
RST ToBIOS
|
||||
LD DE,-DSS_MAX_SECTOR_SIZE - 1 ; [ ] 15/04/25 ¥ ¡ã¤¥â ç¨â âì ᥪâ®à ¡®«ìè¥ DSS_MAX_SECTOR_SIZE
|
||||
; ZF = 0
|
||||
LD A,DSS_Error.sys.UNKNOWN_FORMAT
|
||||
OR A
|
||||
;
|
||||
ADD IX,DE ; ¥á«¨ à §¬¥à ᥪâ®à ¡®«ìè¥, â® ®¡«®¬
|
||||
RET
|
||||
; ; ;
|
||||
|
||||
@ -190,7 +203,9 @@ Close: XOR A
|
||||
|
||||
|
||||
;!FIXIT ¯à®¢¥àïâì ‚ƒ93 ª®£¤ íâ® á⠥⠢®§¬®¦ë¬
|
||||
MediaCheck: IF NON_REMOVABLE_FDD
|
||||
MediaCheck: CALL Open
|
||||
RET C
|
||||
IF NON_REMOVABLE_FDD
|
||||
XOR A
|
||||
ELSE
|
||||
LD A,#FF
|
||||
@ -234,13 +249,13 @@ GetBPB: LD IX,0
|
||||
; RET
|
||||
; ; ;
|
||||
|
||||
;
|
||||
; !FIXIT ¬®¦¥â 㬥à¥âì à §¬¥à¥ ᥪâ®à ¡®«ìè¥ 512 ¡ ©â®¢
|
||||
Read: LD C,BIOS.DRV_READ
|
||||
RST ToBIOS
|
||||
RET
|
||||
; ; ;
|
||||
|
||||
;
|
||||
; !FIXIT ¬®¦¥â 㬥à¥âì à §¬¥à¥ ᥪâ®à ¡®«ìè¥ 512 ¡ ©â®¢
|
||||
Write: LD C,BIOS.DRV_WRITE
|
||||
RST ToBIOS
|
||||
RET
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit a9f5915a3275f5ffbafa0994bb97c5846aab826c
|
||||
Subproject commit bd4546a854905998edab6144547b79aa673404f6
|
||||
Loading…
Reference in New Issue
Block a user