mirror of
https://github.com/Tolik-Trek/Sprinter-BIOS.git
synced 2026-11-09 11:19:54 +03:00
...
This commit is contained in:
1 parent
55620e1adf
commit
e43370d8a5
2 files changed
+41
-47
No files matched your search
+1
-1
Submodule Shared_Includes updated: 73f764ccd1...62170ee7bc.
@@ -239,8 +239,8 @@ RDS000: LD C,IDE.Device.HDD
|
||||
CALL SELECT_DRIVE
|
||||
RET C
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
EX AF,AF'
|
||||
@@ -257,9 +257,8 @@ RDS000: LD C,IDE.Device.HDD
|
||||
;?????
|
||||
;SAVE HL!
|
||||
RDS002: EXX
|
||||
LD DE,#8908 ;WAIT BUSY=0 & DRQ=1 & ERR=0
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
LD DE,#8908 ;WAIT BUSY=0 & DRQ=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
;NOP ;R01 REMOVED "DI"
|
||||
@@ -298,9 +297,8 @@ RDS004: DUP 16
|
||||
;
|
||||
.W44: INC XL ;INC LOADED SECTORS
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
LD BC,IDE.Read.Status
|
||||
@@ -403,9 +401,8 @@ WRS000:
|
||||
CALL SELECT_DRIVE
|
||||
RET C
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
EX AF,AF'
|
||||
@@ -439,9 +436,8 @@ NO_WriteProtect:
|
||||
OUT (C),A
|
||||
;SAVE HL!
|
||||
WRS002: EXX
|
||||
LD DE,#8908 ;WAIT BUSY=0 & DRQ=1 & ERR=0
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
LD DE,#8908 ;WAIT BUSY=0 & DRQ=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
|
||||
@@ -480,9 +476,8 @@ WRS003:
|
||||
OUT (SLOT3),A
|
||||
.W33: INC XL ;INC SAVED SECTORS
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
LD BC,IDE.Read.Status
|
||||
@@ -514,34 +509,31 @@ HDD_5x.VERIFY:
|
||||
RET
|
||||
;[]================================================================[#54]
|
||||
;VERIFY SECTOR(S)
|
||||
VRS000:
|
||||
LD C,IDE.Device.HDD
|
||||
CALL SELECT_DRIVE
|
||||
RET C
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
PUSH DE
|
||||
CALL PRESET
|
||||
POP HL
|
||||
LD BC,IDE.Write.Command
|
||||
LD A,IDE.ATA.ReadVerifySectorsWithRetry
|
||||
OUT (C),A
|
||||
VRS002: LD BC,IDE.Read.Status
|
||||
IN A,(C)
|
||||
BIT IDE.ControlBit.Error,A
|
||||
JR Z,VRS003
|
||||
SCF
|
||||
RET
|
||||
VRS003: LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
;LD BC,IDE.Read.Status
|
||||
CALL WAITPRT
|
||||
RET C
|
||||
XOR A
|
||||
RET
|
||||
VRS000: LD C,IDE.Device.HDD
|
||||
CALL SELECT_DRIVE
|
||||
RET C
|
||||
EXX
|
||||
LD DE,#C140 ;WAIT BUSY=0 & READY=1 & ERR=0
|
||||
CALL WAITPRT
|
||||
EXX
|
||||
RET C
|
||||
PUSH DE
|
||||
CALL PRESET
|
||||
POP HL
|
||||
LD BC,IDE.Write.Command
|
||||
LD A,IDE.ATA.ReadVerifySectorsWithRetry
|
||||
OUT (C),A
|
||||
VRS002: LD BC,IDE.Read.Status
|
||||
IN A,(C)
|
||||
BIT IDE.ControlBit.Error,A
|
||||
JR Z,VRS003
|
||||
SCF
|
||||
RET
|
||||
VRS003: LD DE,#C140 ;WAIT BUSY=0 & ERR=0 & READY=1
|
||||
CALL WAITPRT
|
||||
RET C
|
||||
XOR A
|
||||
RET
|
||||
|
||||
; HL:IX - LBA SECTOR
|
||||
; B - SECTOR COUNTER
|
||||
@@ -637,7 +629,9 @@ CHS005: INC A
|
||||
WAITPRT:
|
||||
LD BC,IDE.Read.Status
|
||||
LD HL,#0000 ; § ¤¥à¦ª ;!HARDCODE
|
||||
;
|
||||
.loop: PUSH HL
|
||||
;
|
||||
.loop2: IN A,(C)
|
||||
AND D
|
||||
CP E
|
||||
@@ -652,7 +646,7 @@ WAITPRT:
|
||||
JR NZ,.loop
|
||||
;
|
||||
.error: LD A,BIOS.Error.WaitPort
|
||||
SCF
|
||||
SCF
|
||||
RET
|
||||
.ok: POP HL
|
||||
RET
|
||||
|
||||
Reference in new issue
Block a user