beta 3
This commit is contained in:
parent
9c14f06b9c
commit
95e6385690
@ -216,7 +216,7 @@ ID_Version: DW BIOS_ver_hex
|
|||||||
ID_SPRINTER: DB 'Firmware v'
|
ID_SPRINTER: DB 'Firmware v'
|
||||||
.BIOS_ver: DB BIOS_ver_string,' '
|
.BIOS_ver: DB BIOS_ver_string,' '
|
||||||
IF BETA_BUILD
|
IF BETA_BUILD
|
||||||
DB 'BETA 2'
|
DB BETA_str_ver
|
||||||
ELSE
|
ELSE
|
||||||
DB '[',BUILD_DATE,']'
|
DB '[',BUILD_DATE,']'
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|||||||
@ -26,40 +26,39 @@
|
|||||||
FDD_5x_GETMED:
|
FDD_5x_GETMED:
|
||||||
;!TEST FDD 720/1440
|
;!TEST FDD 720/1440
|
||||||
IF FDD_NormalCount
|
IF FDD_NormalCount
|
||||||
LD IY,FDD_INI_TABLE.FDD_0
|
LD IY,FDD_INI_TABLE.FDD_0
|
||||||
DEC A
|
DEC A
|
||||||
JR C,.getParams
|
JR C,.getParams
|
||||||
LD IY,FDD_INI_TABLE.FDD_1
|
LD IY,FDD_INI_TABLE.FDD_1
|
||||||
.getParams:
|
.getParams:
|
||||||
ENDIF
|
ENDIF
|
||||||
|
IN A,(SLOT3)
|
||||||
IN A,(SLOT3)
|
EX AF,AF'
|
||||||
EX AF,AF'
|
LD A,SYS_PAGE
|
||||||
LD A,SYS_PAGE
|
OUT (SLOT3),A
|
||||||
OUT (SLOT3),A
|
|
||||||
;!TEST FDD 720/1440
|
;!TEST FDD 720/1440
|
||||||
IF FDD_NormalCount
|
IF FDD_NormalCount
|
||||||
LD L,(IY+1) ;SECTORS
|
LD L,(IY+1) ;SECTORS
|
||||||
LD H,(IY+2) ;HEADS
|
LD H,(IY+2) ;HEADS
|
||||||
LD E,(IY+3) ;CYLINDL
|
LD E,(IY+3) ;CYLINDL
|
||||||
LD D,(IY+4) ;CYLINDH
|
LD D,(IY+4) ;CYLINDH
|
||||||
LD A,(IY+5) ;B_P_S low
|
LD A,(IY+5) ;B_P_S low
|
||||||
LD XL,A
|
LD XL,A
|
||||||
LD A,(IY+6) ;B_P_S High
|
LD A,(IY+6) ;B_P_S High
|
||||||
LD XH,A
|
LD XH,A
|
||||||
LD A,(IY+0) ;F144/720
|
LD A,(IY+0) ;F144/720
|
||||||
ELSE
|
ELSE
|
||||||
LD HL,(FDD_INI_TABLE.FDD_0.SECTORS)
|
LD HL,(FDD_INI_TABLE.FDD_0.SECTORS)
|
||||||
LD DE,(FDD_INI_TABLE.FDD_0.CYLINDL)
|
LD DE,(FDD_INI_TABLE.FDD_0.CYLINDL)
|
||||||
LD IX,(FDD_INI_TABLE.FDD_0.BytesPerSector)
|
LD IX,(FDD_INI_TABLE.FDD_0.BytesPerSector)
|
||||||
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
||||||
ENDIF
|
ENDIF
|
||||||
LD B,A
|
LD B,A
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
EX AF,AF'
|
;EX AF,AF'
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
;[]===========================================================[]
|
;[]===========================================================[]
|
||||||
;Function: Set Current Media Parameters
|
;Function: Set Current Media Parameters
|
||||||
@ -149,9 +148,9 @@ FDD_5x_RESET: CALL SAVE_INTERRUPTS.switch_off
|
|||||||
XOR A
|
XOR A
|
||||||
OUT (FDC_93.Track),A
|
OUT (FDC_93.Track),A
|
||||||
IN A,(FDC_93.Command)
|
IN A,(FDC_93.Command)
|
||||||
LD C,A
|
;LD C,A
|
||||||
CALL SET_DOS_OFF
|
CALL SET_DOS_OFF
|
||||||
LD A,C
|
;LD A,C
|
||||||
AND A
|
AND A
|
||||||
JP SAVE_INTERRUPTS.restore
|
JP SAVE_INTERRUPTS.restore
|
||||||
;RET
|
;RET
|
||||||
@ -164,7 +163,7 @@ FDD_5x_RESET: CALL SAVE_INTERRUPTS.switch_off
|
|||||||
OUT (FDC_93.DrvCTRL),A
|
OUT (FDC_93.DrvCTRL),A
|
||||||
CALL SET_DOS_OFF
|
CALL SET_DOS_OFF
|
||||||
; CF=1
|
; CF=1
|
||||||
LD A,4 ;NOT READY /NO DISK/
|
LD A,BIOS.Error.NotReady
|
||||||
;POP AF
|
;POP AF
|
||||||
JP SAVE_INTERRUPTS.restore
|
JP SAVE_INTERRUPTS.restore
|
||||||
|
|
||||||
@ -208,7 +207,7 @@ FDD_5x_LONG_READ:
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
CALL SET_DOS_ON
|
CALL SET_DOS_ON
|
||||||
CALL S_FDD
|
CALL S_FDD
|
||||||
CALL SPEED
|
CALL SET_SPEED
|
||||||
CALL NTRACK
|
CALL NTRACK
|
||||||
POP BC
|
POP BC
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
@ -233,7 +232,7 @@ FDD_5x_LONG_READ:
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL READ_SECTOR
|
CALL READ_SECTOR
|
||||||
JP C,ERRDOS
|
JR C,ERRDOS
|
||||||
LD D,YH
|
LD D,YH
|
||||||
LD E,YL
|
LD E,YL
|
||||||
POP HL
|
POP HL
|
||||||
@ -256,7 +255,7 @@ FDD_5x_LONG_READ:
|
|||||||
LD A,C
|
LD A,C
|
||||||
INC E
|
INC E
|
||||||
CP E
|
CP E
|
||||||
JP NZ,.NINC_T
|
JR NZ,.NINC_T
|
||||||
LD E,0
|
LD E,0
|
||||||
INC D
|
INC D
|
||||||
.NINC_T: DJNZ .DSK_LP
|
.NINC_T: DJNZ .DSK_LP
|
||||||
@ -353,7 +352,7 @@ FDD_5x_LONG_WRITE:
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
CALL SET_DOS_ON
|
CALL SET_DOS_ON
|
||||||
CALL S_FDD
|
CALL S_FDD
|
||||||
CALL SPEED
|
CALL SET_SPEED
|
||||||
CALL NTRACK
|
CALL NTRACK
|
||||||
POP BC
|
POP BC
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
@ -378,7 +377,7 @@ FDD_5x_LONG_WRITE:
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL WR_SEC
|
CALL WR_SEC
|
||||||
JP C,ERRDOS
|
JR C,ERRDOS
|
||||||
LD D,YH
|
LD D,YH
|
||||||
LD E,YL
|
LD E,YL
|
||||||
POP HL
|
POP HL
|
||||||
@ -401,7 +400,7 @@ FDD_5x_LONG_WRITE:
|
|||||||
LD A,C
|
LD A,C
|
||||||
INC E
|
INC E
|
||||||
CP E
|
CP E
|
||||||
JP NZ,.NINC_T2
|
JR NZ,.NINC_T2
|
||||||
LD E,0
|
LD E,0
|
||||||
INC D
|
INC D
|
||||||
.NINC_T2: DJNZ .DSK_LP2
|
.NINC_T2: DJNZ .DSK_LP2
|
||||||
@ -441,9 +440,10 @@ READ_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,XH
|
LD A,XH
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
LD B,4
|
;
|
||||||
|
LD B,4 ; áçñâ稪
|
||||||
LD C,FDC_93.Data
|
LD C,FDC_93.Data
|
||||||
LD A,#80 ;COMMAND READ
|
LD A,#80 ;!HARDCODE COMMAND READ
|
||||||
OUT (FDC_93.Command),A
|
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
|
AND #C0
|
||||||
@ -472,7 +472,7 @@ READ_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
;R01 ; JP C,ERRRD ;READ ERROR
|
;R01 ; JP C,ERRRD ;READ ERROR
|
||||||
; !TEST 29/06/2024
|
; !TEST 29/06/2024
|
||||||
;JP C,.ERR_XRD
|
;JP C,.ERR_XRD
|
||||||
JP NC,.NO_ERR_XRD
|
JR NC,.NO_ERR_XRD
|
||||||
DEC D
|
DEC D
|
||||||
JR Z,.RSTOP
|
JR Z,.RSTOP
|
||||||
JR .RRETRY
|
JR .RRETRY
|
||||||
@ -482,7 +482,7 @@ READ_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
RET Z
|
RET Z
|
||||||
BIT 2,C
|
BIT 2,C
|
||||||
JR NZ,.ERDATA
|
JR NZ,.ERDATA
|
||||||
LD A,5 ;SEEK ERROR
|
LD A,BIOS.Error.Seek
|
||||||
DEC D
|
DEC D
|
||||||
JR Z,.RSTOP
|
JR Z,.RSTOP
|
||||||
PUSH DE
|
PUSH DE
|
||||||
@ -494,7 +494,7 @@ READ_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
;
|
;
|
||||||
.ERDATA: DEC D ; POTERIA DANNYH
|
.ERDATA: DEC D ; POTERIA DANNYH
|
||||||
JR NZ,.RRETRY
|
JR NZ,.RRETRY
|
||||||
.ERRRD: LD A,9 ;READ ERROR
|
.ERRRD: LD A,BIOS.Error.Read
|
||||||
.RSTOP: EX AF,AF'
|
.RSTOP: EX AF,AF'
|
||||||
LD A,#D0
|
LD A,#D0
|
||||||
OUT (FDC_93.Command),A ;STOP OPERATION
|
OUT (FDC_93.Command),A ;STOP OPERATION
|
||||||
@ -502,7 +502,7 @@ READ_SECTOR: LD D,5 ;RETRY COUNT
|
|||||||
BIT 0,C
|
BIT 0,C
|
||||||
SCF
|
SCF
|
||||||
RET Z
|
RET Z
|
||||||
LD A,6 ;SECTOR NOT FOUND /NO DISK/
|
LD A,BIOS.Error.SectorNotFound
|
||||||
RET
|
RET
|
||||||
; ; ;
|
; ; ;
|
||||||
|
|
||||||
@ -554,18 +554,17 @@ WR_SEC: LD D,5 ;RETRY COUNT
|
|||||||
IN A,(FDC_93.Command)
|
IN A,(FDC_93.Command)
|
||||||
LD C,A
|
LD C,A
|
||||||
;R01
|
;R01
|
||||||
JP C,.ERR_XWR
|
JR C,.ERR_XWR
|
||||||
; JP C,ERRWR ;WRITE ERROR
|
|
||||||
AND #7F
|
AND #7F
|
||||||
RET Z
|
RET Z
|
||||||
BIT 6,C
|
BIT 6,C
|
||||||
LD A,8 ;WRITE PROTECT
|
LD A,BIOS.Error.WriteProtect
|
||||||
JR NZ,.WSTOP
|
JR NZ,.WSTOP
|
||||||
BIT 2,C
|
BIT 2,C
|
||||||
JR NZ,.EWDATA
|
JR NZ,.EWDATA
|
||||||
LD A,5 ;SEEK ERROR
|
LD A,BIOS.Error.Seek
|
||||||
DEC D
|
DEC D
|
||||||
JP Z,.WSTOP
|
JR Z,.WSTOP
|
||||||
.ERR_XWR:
|
.ERR_XWR:
|
||||||
PUSH DE
|
PUSH DE
|
||||||
CALL RESWG ; RESET_WG
|
CALL RESWG ; RESET_WG
|
||||||
@ -576,7 +575,7 @@ WR_SEC: LD D,5 ;RETRY COUNT
|
|||||||
.EWDATA:
|
.EWDATA:
|
||||||
DEC D ; POTERIA DANNYH
|
DEC D ; POTERIA DANNYH
|
||||||
JR NZ,.WRETRY
|
JR NZ,.WRETRY
|
||||||
.ERRWR: LD A,10 ;WRITE ERROR
|
.ERRWR: LD A,BIOS.Error.Write
|
||||||
.WSTOP: EX AF,AF'
|
.WSTOP: EX AF,AF'
|
||||||
LD A,#D0
|
LD A,#D0
|
||||||
OUT (FDC_93.Command),A ;STOP OPERATION
|
OUT (FDC_93.Command),A ;STOP OPERATION
|
||||||
@ -584,7 +583,7 @@ WR_SEC: LD D,5 ;RETRY COUNT
|
|||||||
BIT 0,C
|
BIT 0,C
|
||||||
SCF
|
SCF
|
||||||
RET Z
|
RET Z
|
||||||
LD A,6 ;SECTOR NOT FOUND /NO DISK/
|
LD A,BIOS.Error.SectorNotFound
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
|
||||||
@ -605,21 +604,6 @@ SET_DOS_OFF:
|
|||||||
OUT (SYS_PORT.ROM),A ; - CLOSE
|
OUT (SYS_PORT.ROM),A ; - CLOSE
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
RET
|
RET
|
||||||
;
|
|
||||||
|
|
||||||
;
|
|
||||||
FDD.SET720:
|
|
||||||
LD A,FDD_Density.SET_720
|
|
||||||
OUT (FDD_Density),A
|
|
||||||
RET
|
|
||||||
;
|
|
||||||
|
|
||||||
;
|
|
||||||
FDD.SET1440:
|
|
||||||
LD A,FDD_Density.SET_1440
|
|
||||||
OUT (FDD_Density),A
|
|
||||||
RET
|
|
||||||
;
|
|
||||||
|
|
||||||
;
|
;
|
||||||
S_FDD: PUSH BC
|
S_FDD: PUSH BC
|
||||||
@ -656,85 +640,81 @@ S_FDD: PUSH BC
|
|||||||
;
|
;
|
||||||
|
|
||||||
;
|
;
|
||||||
TURNSPD:
|
CHANGE_SPEED: IN A,(SLOT3)
|
||||||
IN A,(SLOT3)
|
EX AF,AF'
|
||||||
EX AF,AF'
|
LD A,SYS_PAGE
|
||||||
LD A,SYS_PAGE
|
OUT (SLOT3),A
|
||||||
OUT (SLOT3),A
|
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
||||||
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
XOR #80
|
||||||
XOR #80
|
LD (FDD_INI_TABLE.FDD_0.F144),A
|
||||||
LD (FDD_INI_TABLE.FDD_0.F144),A
|
AND #80
|
||||||
AND #80
|
EX AF,AF'
|
||||||
EX AF,AF'
|
OUT (SLOT3),A
|
||||||
OUT (SLOT3),A
|
EX AF,AF'
|
||||||
EX AF,AF'
|
JR Z,FDD.SET720
|
||||||
JP Z,FDD.SET720
|
;JP FDD.SET1440 ;ZF=0
|
||||||
JP FDD.SET1440 ;NZ
|
FDD.SET1440: LD A,FDD_Density.SET_1440
|
||||||
|
OUT (FDD_Density),A
|
||||||
|
RET
|
||||||
;
|
;
|
||||||
|
|
||||||
;
|
|
||||||
SPEED: IN A,(SLOT3)
|
|
||||||
EX AF,AF'
|
|
||||||
LD A,SYS_PAGE
|
|
||||||
OUT (SLOT3),A
|
|
||||||
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
|
||||||
AND #80
|
|
||||||
EX AF,AF'
|
|
||||||
OUT (SLOT3),A
|
|
||||||
EX AF,AF'
|
|
||||||
JP Z,FDD.SET720
|
|
||||||
JP FDD.SET1440 ;NZ
|
|
||||||
;
|
;
|
||||||
|
SET_SPEED: IN A,(SLOT3)
|
||||||
|
EX AF,AF'
|
||||||
|
LD A,SYS_PAGE
|
||||||
|
OUT (SLOT3),A
|
||||||
|
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
||||||
|
AND #80
|
||||||
|
EX AF,AF'
|
||||||
|
OUT (SLOT3),A
|
||||||
|
EX AF,AF'
|
||||||
|
JR NZ,FDD.SET1440
|
||||||
|
;JR FDD.SET720 ;ZF=1
|
||||||
|
FDD.SET720: LD A,FDD_Density.SET_720
|
||||||
|
OUT (FDD_Density),A
|
||||||
|
RET
|
||||||
|
|
||||||
; ¯à¥àë¢ ¨ï ¤®«¦ë ¡ëâì ®âª«îç¥ë
|
; ¯à¥àë¢ ¨ï ¤®«¦ë ¡ëâì ®âª«îç¥ë
|
||||||
DISK_ID:
|
DISK_ID: EXX
|
||||||
;DI
|
CALL SET_SPEED
|
||||||
EXX
|
IN A,(FDC_93.Track)
|
||||||
CALL SPEED
|
OUT (FDC_93.Data),A
|
||||||
IN A,(FDC_93.Track)
|
LD A,#18 ;!TODO ¢ë¯¨á âì ª®¬¬ ¤ë ‚ƒ ;SEARCH ; !HARDCODE
|
||||||
OUT (FDC_93.Data),A
|
CALL EXECOM
|
||||||
LD A,#18 ;!TODO ¢ë¯¨á âì ª®¬¬ ¤ë ‚ƒ ;SEARCH ; !HARDCODE
|
LD C,4 ; áçñâ稪
|
||||||
CALL EXECOM
|
.loop_reg_C: LD A,#C0
|
||||||
LD C,4
|
OUT (FDC_93.Command),A
|
||||||
.ID_LP0:
|
LD HL,#F000 ; áçñâ稪
|
||||||
LD A,#C0
|
.loop_reg_HL: IN A,(FDC_93.DrvCTRL)
|
||||||
OUT (FDC_93.Command),A
|
AND #C0
|
||||||
LD HL,#F000
|
JR Z,.ID_LP4
|
||||||
.ID_LP1:
|
;
|
||||||
IN A,(FDC_93.DrvCTRL)
|
.ID_LP2: IN A,(FDC_93.Data)
|
||||||
AND #C0
|
.ID_LP3: IN A,(FDC_93.DrvCTRL)
|
||||||
JR Z,.ID_LP4
|
AND #C0
|
||||||
.ID_LP2:
|
JR Z,.ID_LP3
|
||||||
IN A,(FDC_93.Data)
|
JP P,.ID_LP2
|
||||||
.ID_LP3:
|
EXX
|
||||||
IN A,(FDC_93.DrvCTRL)
|
IN A,(SLOT3)
|
||||||
AND #C0
|
EX AF,AF'
|
||||||
JR Z,.ID_LP3
|
LD A,SYS_PAGE
|
||||||
JP P,.ID_LP2
|
OUT (SLOT3),A
|
||||||
EXX
|
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
||||||
IN A,(SLOT3)
|
EX AF,AF'
|
||||||
EX AF,AF'
|
OUT (SLOT3),A
|
||||||
LD A,SYS_PAGE
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
AND #80
|
||||||
LD A,(FDD_INI_TABLE.FDD_0.F144)
|
RET
|
||||||
EX AF,AF'
|
;
|
||||||
OUT (SLOT3),A
|
.ID_LP4: DEC HL
|
||||||
EX AF,AF'
|
LD A,H
|
||||||
AND #80
|
OR L
|
||||||
;EI
|
JR NZ,.loop_reg_HL
|
||||||
RET
|
CALL CHANGE_SPEED
|
||||||
.ID_LP4:
|
DEC C
|
||||||
DEC HL
|
JR NZ,.loop_reg_C
|
||||||
LD A,H
|
EXX
|
||||||
OR L
|
SCF
|
||||||
JP NZ,.ID_LP1
|
RET
|
||||||
CALL TURNSPD
|
|
||||||
DEC C
|
|
||||||
JP NZ,.ID_LP0
|
|
||||||
EXX
|
|
||||||
SCF
|
|
||||||
;EI
|
|
||||||
RET
|
|
||||||
;
|
;
|
||||||
|
|
||||||
;
|
;
|
||||||
@ -793,16 +773,17 @@ P50ms: LD A,12
|
|||||||
;
|
;
|
||||||
RESWG: LD A,8
|
RESWG: LD A,8
|
||||||
EXECOM: OUT (FDC_93.Command),A
|
EXECOM: OUT (FDC_93.Command),A
|
||||||
LD HL,#0000
|
LD HL,#0000 ; áçñâ稪
|
||||||
.WREST: DEC HL
|
.WREST: DEC HL
|
||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
SCF
|
SCF
|
||||||
RET Z
|
RET Z
|
||||||
|
;
|
||||||
IN A,(FDC_93.DrvCTRL)
|
IN A,(FDC_93.DrvCTRL)
|
||||||
AND #80
|
AND #80
|
||||||
JR Z,.WREST
|
JR Z,.WREST
|
||||||
AND A
|
;AND A
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
;[ ] 18/12/2023. ¤®¡ ¢«¥¨¥/¤®¯¨«¨¢ ¨¥ API CD-ROM (ATAPI)
|
;[ ] 18/12/2023. ¤®¡ ¢«¥¨¥/¤®¯¨«¨¢ ¨¥ API CD-ROM (ATAPI)
|
||||||
|
;ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
|
||||||
;CD ROM DRIVE DRIVER
|
;CD ROM DRIVE DRIVER
|
||||||
;---------------------------------------------------------------
|
;---------------------------------------------------------------
|
||||||
;Rev Date Name Description
|
;Rev Date Name Description
|
||||||
@ -156,6 +156,7 @@ TRAY_FN:
|
|||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
; INPUT: HL - AP paket (12bytes)
|
; INPUT: HL - AP paket (12bytes)
|
||||||
; RETURN: CF - ERROR
|
; RETURN: CF - ERROR
|
||||||
|
; !TODO CD ERRORS to INCLUDES
|
||||||
; #01 - RECOVERED ERROR
|
; #01 - RECOVERED ERROR
|
||||||
; #02 - NOT READY
|
; #02 - NOT READY
|
||||||
; #03 - MEDIUM ERROR
|
; #03 - MEDIUM ERROR
|
||||||
@ -284,7 +285,7 @@ AP_COM: EXX
|
|||||||
IN A,(C)
|
IN A,(C)
|
||||||
AND #02
|
AND #02
|
||||||
;CP #02
|
;CP #02
|
||||||
JP NZ,.FROM_CD
|
JR NZ,.FROM_CD
|
||||||
;.TO_CD:
|
;.TO_CD:
|
||||||
LD BC,IDE.Read.Data
|
LD BC,IDE.Read.Data
|
||||||
.WR_T_CD:
|
.WR_T_CD:
|
||||||
|
|||||||
@ -112,10 +112,10 @@ HDD_5x_GETMED:
|
|||||||
LD E,(IY+IDE.HDD_INIT_TABLE.CylinderNumberLow)
|
LD E,(IY+IDE.HDD_INIT_TABLE.CylinderNumberLow)
|
||||||
LD D,(IY+IDE.HDD_INIT_TABLE.CylinderNumberHigh)
|
LD D,(IY+IDE.HDD_INIT_TABLE.CylinderNumberHigh)
|
||||||
LD B,(IY+IDE.HDD_INIT_TABLE.DRV_Flags)
|
LD B,(IY+IDE.HDD_INIT_TABLE.DRV_Flags)
|
||||||
LD IX,512
|
LD IX,512 ;!HARDCODE sector size
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
EX AF,AF'
|
;EX AF,AF'
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
;[]================================================================[#58]
|
;[]================================================================[#58]
|
||||||
@ -144,7 +144,7 @@ HDD_5x_SETMED:
|
|||||||
LD (IY+IDE.HDD_INIT_TABLE.DRV_Flags),B
|
LD (IY+IDE.HDD_INIT_TABLE.DRV_Flags),B
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
EX AF,AF'
|
;EX AF,AF'
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
;[]================================================================[#59]
|
;[]================================================================[#59]
|
||||||
@ -184,7 +184,7 @@ HDD_5x_LONG_READ:
|
|||||||
PUSH HL
|
PUSH HL
|
||||||
CALL RDS000
|
CALL RDS000
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
JP C,HERRRD0
|
JR C,HERRRD0
|
||||||
LD A,XH
|
LD A,XH
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
POP HL
|
POP HL
|
||||||
@ -645,7 +645,7 @@ WAITPRT:
|
|||||||
DEC L
|
DEC L
|
||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
;
|
;
|
||||||
.error: LD A,BIOS.Error.WaitPort
|
.error: LD A,BIOS.Error.NotReady
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
.ok: POP HL
|
.ok: POP HL
|
||||||
|
|||||||
@ -18,7 +18,7 @@ SELECT_DRIVE:
|
|||||||
LD IY,IDE.INIT_TBL_IDE3
|
LD IY,IDE.INIT_TBL_IDE3
|
||||||
;
|
;
|
||||||
JR Z,.channel
|
JR Z,.channel
|
||||||
LD A,BIOS.Error.BadDrvNumber
|
LD A,BIOS.Error.BadNumber
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
@ -46,7 +46,7 @@ SELECT_DRIVE:
|
|||||||
CP C
|
CP C
|
||||||
EXX
|
EXX
|
||||||
SCF
|
SCF
|
||||||
LD A,BIOS.Error.BadDrvNumber
|
LD A,BIOS.Error.BadNumber
|
||||||
RET NZ
|
RET NZ
|
||||||
;
|
;
|
||||||
LD A,B
|
LD A,B
|
||||||
@ -96,5 +96,5 @@ DRV_DETECT:
|
|||||||
OUT (C),B
|
OUT (C),B
|
||||||
RET Z
|
RET Z
|
||||||
SCF
|
SCF
|
||||||
.error: LD A,BIOS.Error.BadDrvNumber
|
.error: LD A,BIOS.Error.BadNumber
|
||||||
RET
|
RET
|
||||||
@ -53,7 +53,7 @@ RMD_5x_GETMED:
|
|||||||
JR NC,.loop
|
JR NC,.loop
|
||||||
; CF==1, A==0 - ®è¨¡ª , A==#FF - ok
|
; CF==1, A==0 - ®è¨¡ª , A==#FF - ok
|
||||||
INC A
|
INC A
|
||||||
RET NZ ; ¥á«¨ ¢ë室¨â, â® á ä¤ £ ¬¨ CF==1, ZF==1
|
RET NZ ; ¥á«¨ ¢ë室¨â, â® á ä« £ ¬¨ CF==1, ZF==1
|
||||||
|
|
||||||
LD E,B
|
LD E,B
|
||||||
LD B,C
|
LD B,C
|
||||||
|
|||||||
@ -19,7 +19,7 @@ EMM.GetMemSize:
|
|||||||
JR NZ,.loop
|
JR NZ,.loop
|
||||||
INC C
|
INC C
|
||||||
JR .loop
|
JR .loop
|
||||||
.exit: LD HL,#100
|
.exit: LD HL,#100 ;!HARDCODE max mem pages
|
||||||
LD A,B
|
LD A,B
|
||||||
LD B,0
|
LD B,0
|
||||||
OUT (SLOT1),A
|
OUT (SLOT1),A
|
||||||
@ -31,7 +31,7 @@ EMM.GetMemSize:
|
|||||||
; á⥪®¬, â ¬ ¬®¦¥â ¡ëâì SP ¢ ०¨¬¥ ᯥªâàã¬
|
; á⥪®¬, â ¬ ¬®¦¥â ¡ëâì SP ¢ ०¨¬¥ ᯥªâàã¬
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; ˆ¨æ¨ «¨§ æ¨ï à á¯à¥¤¥«¥¨ï ¯ ¬ïâ¨.
|
; ˆ¨æ¨ «¨§ æ¨ï à á¯à¥¤¥«¥¨ï ¯ ¬ïâ¨.
|
||||||
EMM.InitMem:
|
EMM.InitMem:
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -116,7 +116,7 @@ RESERVED_PAGES:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; <20>®«ãç¨âì ¡«®ª ¯ ¬ï⨠N bytes,
|
; <20>®«ãç¨âì ¡«®ª ¯ ¬ï⨠N bytes,
|
||||||
; ‚室: B - ç¨á«® ¥®¡å®¤¨¬ëå ¡«®ª®¢
|
; ‚室: B - ç¨á«® ¥®¡å®¤¨¬ëå ¡«®ª®¢
|
||||||
; ‚ë室: L,A - Š‹ž— RAM-Disk/ª®¤ ®è¨¡ª¨
|
; ‚ë室: L,A - Š‹ž— RAM-Disk/ª®¤ ®è¨¡ª¨
|
||||||
@ -262,7 +262,7 @@ EMM_F3M_L1:
|
|||||||
EMM_FN3M_ERR:
|
EMM_FN3M_ERR:
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
OUT (SLOT3),A
|
OUT (SLOT3),A
|
||||||
LD A,2 ;!HARDCODE error code
|
LD A,BIOS.Error.BadNumber
|
||||||
SCF
|
SCF
|
||||||
RET
|
RET
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
@ -956,7 +956,7 @@ GET_RAMD_ST:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; RAM-Disk A, BLK - B
|
; RAM-Disk A, BLK - B
|
||||||
BLK_TO_RAMD:
|
BLK_TO_RAMD:
|
||||||
CP SYS_PAGE.RAMD_KEYS.NUM
|
CP SYS_PAGE.RAMD_KEYS.NUM
|
||||||
@ -1000,7 +1000,7 @@ BLK_BUSY:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; RAM-Disk A
|
; RAM-Disk A
|
||||||
RAMD_CLEAR:
|
RAMD_CLEAR:
|
||||||
CP SYS_PAGE.RAMD_KEYS.NUM
|
CP SYS_PAGE.RAMD_KEYS.NUM
|
||||||
@ -1035,7 +1035,7 @@ RAMD_CLEAR:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; à §¤¥«¨âì ¡«®ª ¯ ¬ï⨠¤¢ ¡«®ª
|
; à §¤¥«¨âì ¡«®ª ¯ ¬ï⨠¤¢ ¡«®ª
|
||||||
; A - ¡«®ª, B - ¤«¨ ¯¥à¢®£® ¡«®ª ¯®á«¥ à §¤¥«¥¨ï
|
; A - ¡«®ª, B - ¤«¨ ¯¥à¢®£® ¡«®ª ¯®á«¥ à §¤¥«¥¨ï
|
||||||
; ¢ë室: A - ¡«®ª 1, B - ¡«®ª 2
|
; ¢ë室: A - ¡«®ª 1, B - ¡«®ª 2
|
||||||
@ -1073,7 +1073,7 @@ EMM.DivMemBlocks:
|
|||||||
|
|
||||||
|
|
||||||
;
|
;
|
||||||
;----------------------------------------------------------------------; !FIXIT SAFE_RGADR +
|
;----------------------------------------------------------------------;
|
||||||
; ᫨âì ¤¢ ¡«®ª ¯ ¬ï⨠¢ ®¤¨
|
; ᫨âì ¤¢ ¡«®ª ¯ ¬ï⨠¢ ®¤¨
|
||||||
; € - ¡«®ª 1, B - ¡«®ª 2
|
; € - ¡«®ª 1, B - ¡«®ª 2
|
||||||
; ¢ë室: € - ¡«®ª
|
; ¢ë室: € - ¡«®ª
|
||||||
|
|||||||
@ -1,6 +1,9 @@
|
|||||||
;
|
;
|
||||||
;---------[All shared defines]----------
|
;---------[All shared defines]----------
|
||||||
DEFINE BETA_BUILD 1 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥¨¥ ® â¥á⮢®© ᡮથ áâ à⮢®¬ íªà ¥
|
DEFINE BETA_BUILD 1 ; ¤®¡ ¢«ï¥â áâப㠨 á®®¡é¥¨¥ ® â¥á⮢®© ᡮથ áâ à⮢®¬ íªà ¥
|
||||||
|
IF BETA_BUILD
|
||||||
|
DEFINE BETA_str_ver 'BETA 3'
|
||||||
|
ENDIF
|
||||||
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
DEFINE PACKED_MAIN 0 ; ¯ ª®¢ âì MAIN ¨«¨ ¢«¥§ ¥â ¡¥§ í⮣®?
|
||||||
DEFINE SP2000_Loader_Flag #0107
|
DEFINE SP2000_Loader_Flag #0107
|
||||||
DEFINE IDE_Optimization 1 ; á«¥£ª ®¯â¨¬¨§¨àã¥â ¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD
|
DEFINE IDE_Optimization 1 ; á«¥£ª ®¯â¨¬¨§¨àã¥â ¥ª®â®àë¥ ¯à®æ¥¤ãàë à ¡®âë á HDD
|
||||||
|
|||||||
Binary file not shown.
Loading…
Reference in New Issue
Block a user