fix cmd /hdd

This commit is contained in:
Tolik 2024-08-24 04:20:18 +10:00
parent 6c1a9a6d66
commit a170bf4abc
7 changed files with 87 additions and 71 deletions

@ -1 +1 @@
Subproject commit aca9ce3f859bf53c76b0d710e108543226697f91 Subproject commit e9d481a5565338505710b08e50d22a8579c400be

View File

@ -73,14 +73,16 @@ HDD_SET:;!TEST
; [x] new tr-hdd ; [x] new tr-hdd
.init: ;CALL CORRECT_CUR_DIR .init: ;CALL CORRECT_CUR_DIR
DI DI
IN A,(SLOT3) LD BC,SLOT3
LD C,A IN B,(C)
;LD C,A
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT3),A OUT (SLOT3),A
; ;
LD E,DRIVE_CODES.TRDOS.HDD LD E,DRIVE_CODES.TRDOS.HDD
LD A,(SYS_PAGE.CURRENT_DIR_DRIVE_COPY) LD A,(SYS_PAGE.CURRENT_DIR_DRIVE_COPY)
CP #FF CP #FF
SCF
JR Z,.skip JR Z,.skip
; ;
CP E CP E
@ -88,10 +90,24 @@ HDD_SET:;!TEST
LD (SYS_PAGE.CURRENT_DIR_DRIVE),A LD (SYS_PAGE.CURRENT_DIR_DRIVE),A
; ;
AND #0F AND #0F
LD (SYS_PAGE.CURRENT_HDD),A ; !TEST
OUT (C),B
; ;
.skip: LD A,C PUSH DE
OUT (SLOT3),A LD C,BIOS.HDD_PART
CALL EXP_FNS
POP DE
JR C,CHOOSE_HDD.error
;
LD C,BIOS.SET_DISK_REDIR
JP EXP_FNS
;
;LD (SYS_PAGE.CURRENT_HDD),A
;
;
;.skip: LD A,C
; OUT (SLOT3),A
.skip: OUT (C),B
; ;
PUSH DE PUSH DE
LD C,BIOS.HDD_INIT LD C,BIOS.HDD_INIT
@ -107,6 +123,7 @@ HDD_SET:;!TEST
LD C,BIOS.SET_DISK_REDIR LD C,BIOS.SET_DISK_REDIR
JP EXP_FNS JP EXP_FNS
;[x] 29/01/2024 ;[x] 29/01/2024
;¢ë室: A: bit1 - Primary/Secondary, bit0 - master/slave, bit2..3: ¨á¯®«ì§ãî騩áï à §¤¥« ¢ MBR ;¢ë室: A: bit1 - Primary/Secondary, bit0 - master/slave, bit2..3: ¨á¯®«ì§ãî騩áï à §¤¥« ¢ MBR
CHOOSE_HDD: CHOOSE_HDD:
@ -137,7 +154,7 @@ CHOOSE_HDD:
SUB "0" SUB "0"
OR C OR C
; ;
PUSH AF .part: PUSH AF
LD C,BIOS.HDD_PART LD C,BIOS.HDD_PART
CALL EXP_FNS CALL EXP_FNS
POP BC POP BC

View File

@ -135,14 +135,13 @@ MSDOS_CAT:
LD A,"\r" LD A,"\r"
RST #10 RST #10
POP DE ; <E28098>ŽŠ€ ŹŽ‘‹… CAT POP DE ; <E28098>ŽŠ€ ŹŽ‘‹… CAT
.loop: LD A,(DE)
CAT_SPACES:
LD A,(DE)
CP " " CP " "
JR NZ,CAT_NO_SPACE ;JR NZ,CAT_NO_SPACE
INC DE INC DE
JR CAT_SPACES JR Z,.loop
CAT_NO_SPACE: DEC DE
;CAT_NO_SPACE:
CP "\r" CP "\r"
JR NZ,CAT_ALL JR NZ,CAT_ALL
LD DE,CAT_FILES LD DE,CAT_FILES

View File

@ -34,7 +34,7 @@ INIT_RMD:
RAMD_FAT_PROG: RAMD_FAT_PROG:
CALL AUTO_1D97 ; CLS CALL AUTO_1D97 ; CLS
CALL OPEN_CH2 CALL OPEN_CH2
LD HL,SYS_PAGE.RAMD_FAT LD HL,SYS_PAGE.RAM_TABLE
RAMD_F_L1: RAMD_F_L1:
DI DI
IN A,(SLOT3) IN A,(SLOT3)

View File

@ -190,7 +190,7 @@ MSD_R_W_LOOP:
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT2),A OUT (SLOT2),A
LD A,(ZX_VARS.MED_START) LD A,(ZX_VARS.MED_START)
LD HL,SYS_PAGE.RAMD_FAT-#4000 LD HL,SYS_PAGE.RAM_TABLE-#4000
LD L,A LD L,A
LD L,(HL) LD L,(HL)
LD A,C LD A,C

View File

@ -715,7 +715,7 @@ INIT_SYS_ALL:
LD DE,CNF_0 LD DE,CNF_0
LD (CONFIG_DE-4000h),DE LD (CONFIG_DE-4000h),DE
LD HL,TASK_DATA-4000h ; 㡨âì ¢á¥ § ¤ ç¨ ;SYS_PAGE.CURRENT_TASK LD HL,TASK_DATA-4000h ; 㡨âì ¢á¥ § ¤ ç¨ ;SYS_PAGE.CURRENT_TASK.ID
LD DE,TASK_DATA+1-4000h LD DE,TASK_DATA+1-4000h
LD BC,0FFH LD BC,0FFH
LD (HL),0 LD (HL),0

View File

@ -215,7 +215,7 @@ HD_RD_CONT2:
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT3),A OUT (SLOT3),A
EX AF,AF' EX AF,AF'
LD HL,SYS_PAGE.RAMD_FAT LD HL,SYS_PAGE.RAM_TABLE
LD L,A LD L,A
LD A,(HL) LD A,(HL)
OUT (SLOT3),A OUT (SLOT3),A
@ -315,7 +315,7 @@ HD_WR_LOOP:
LD A,SYS_PAGE LD A,SYS_PAGE
OUT (SLOT3),A OUT (SLOT3),A
EX AF,AF' EX AF,AF'
LD HL,SYS_PAGE.RAMD_FAT LD HL,SYS_PAGE.RAM_TABLE
LD L,A LD L,A
LD A,(HL) LD A,(HL)
OUT (SLOT3),A OUT (SLOT3),A