ZX-SP-ROMs/TRDOS/TR_HDD_4.ASZ
Anatoliy Belyanskiy 8930150cf8 ...
2024-07-21 01:35:28 +10:00

69 lines
892 B
Plaintext

;[x] 29/01/2024
;¢ë室: A: bit1 - Primary/Secondary, bit0 - master/slave, bit2..3: ¨á¯®«ì§ãî騩áï à §¤¥« ¢ MBR
CHOOSE_HDD:
PUSH DE
LD A,(ZX_VARS.OPER_DISK)
LD C,BIOS.GET_DRV_ST
CALL EXP_FNS
POP DE
JR C,.error
AND #40 ;!HARDCODE HDD
CALL Z,.setUp_HDD
;
.loop: LD A,(DE)
INC DE
CP ' '
JR Z,.loop
LD A,(DE)
CP #0D
JR Z,.error
.cont: ; ­®¬¥à à §¤¥« 
;INC DE
LD A,(DE)
CP "4"
JR NC,.error
CP "0"
JR C,.error
SUB "0"
RLA
RLA
LD C,A
; ; master/slave
; DEC DE
; LD A,(DE)
; CP "2"
; JR NC,.error
; CP "0"
; JR C,.error
; SUB "0"
; RLA
; OR C
; LD C,A
; Primary/Secondary, master/slave
DEC DE
LD A,(DE)
CP "4"
JR NC,.error
CP "0"
JR C,.error
SUB "0"
OR C
;
LD C,BIOS.HDD_PART
CALL EXP_FNS
RET NC
;
.error: LD HL,MSG_3
JP ERR_EXIT
;
.setUp_HDD:
LD A,(ZX_VARS.OPER_DISK)
LD B,A
XOR A
LD C,BIOS.HDD_TO_DRV
PUSH DE
CALL EXP_FNS
POP DE
RET
;