мелкие фиксы

This commit is contained in:
Tolik 2025-03-06 03:31:14 +10:00
parent d47e126730
commit c19ce52143
8 changed files with 40 additions and 37 deletions

View File

@ -233,16 +233,6 @@ OPENDSK: ;!TEST DRV.Open
;
LD A,DSS_Error.sys.NOT_READY
RET
/*
0000 0010 02
0001 1100 1c
0000 1101 0d
0001 0011
*/
;
;[x] 29/02/2024 fix "open drive error"; 20/06/2024 fixed
.error_bpb: PUSH AF ; á®å࠭塞 ­®¬¥à ®è¨¡ª¨

View File

@ -1 +1 @@
22
24

View File

@ -323,11 +323,16 @@ Init: PUSH IY
; LD A,DSS_Error.drv.UNKNOWN_FORMAT
; RET
;
; ¯¥à¥¤¥« âì âã⠯஢¥àªã ­  à §¬¥à ᥪâ®à ?
;HL:IX - SECTOR
; DE - ADDRESS
; B - COUNTER
; A - HDD LOG NUMBER
SelectDrive.NoSector:
LD HL,0
LD IX,0
;HL:IX - SECTOR
; DE - ADDRESS
; B - COUNTER
; A - HDD LOG NUMBER
SelectDrive: PUSH DE
PUSH HL
;
@ -354,8 +359,8 @@ SelectDrive: PUSH DE
JR C,.error_pop2
;
POP DE
LD A,DSS_Error.drv.SECTOR_NOT_FOUND
RET C
; LD A,DSS_Error.sys.SECTOR_NOT_FOUND
; RET C
;
LD A,(IY+LOGDRV.PHISICAL_DRV_NUMBER)
RET
@ -496,10 +501,7 @@ GetParams: EX DE,HL
PUSH HL
PUSH DE
PUSH BC
LD A,(IY + LOGDRV.PHISICAL_DRV_NUMBER)
LD (CURRENT_DRIVE.Number),A
LD (LOGDRV_OFFSET),IY
CALL DEFINE_PARTITIONS
CALL ReDEFINE_PARTITIONS
POP BC
POP DE
POP HL
@ -613,7 +615,7 @@ Open: CALL MediaCheck
; POP IY
; RET
MediaCheck: PUSH IY
CALL SelectDrive
CALL SelectDrive.NoSector
JR NC,.next_step
;
CP DSS_Error.sys.UNKNOWN_FORMAT
@ -646,14 +648,8 @@ MediaCheck: PUSH IY
XOR A
RET
;
.Reinit: LD A,DSS_MAX_DRIVES_AMOUNT - 1 ; ®£à ­¨ç¨â¥«ì, ç⮡ ­¥ ¤¥â¥ªâ¨âì ¡®«ìè¥ 1 à §¤¥« 
LD (Init.count),A
LD A,(IY + LOGDRV.PHISICAL_DRV_NUMBER)
LD (CURRENT_DRIVE.Number),A
LD (LOGDRV_OFFSET),IY
;RES 1,(IY + LOGDRV.MediaParameters) - á¡à á뢠¥âáï ¢ DEFINE_PARTITIONS
PUSH IY
CALL DEFINE_PARTITIONS
.Reinit: PUSH IY
CALL ReDEFINE_PARTITIONS
POP IY
POP AF ; ‚®ááâ ­ ¢«¨¢ ¥¬ CF ¨ ª®¤ ®è¨¡ª¨ UNKNOWN_FORMAT, ¥á«¨ CF=1
CALL C,SelectDrive.get_data
@ -683,6 +679,15 @@ CHECK_IDE_SECTOR_SIZE: ;RET
RET
;
ReDEFINE_PARTITIONS:
LD A,DSS_MAX_DRIVES_AMOUNT - 1 ; ®£à ­¨ç¨â¥«ì, ç⮡ ­¥ ¤¥â¥ªâ¨âì ¡®«ìè¥ 1 à §¤¥« 
LD (Init.count),A
LD A,(IY + LOGDRV.PHISICAL_DRV_NUMBER)
LD (CURRENT_DRIVE.Number),A
LD (LOGDRV_OFFSET),IY
;RES 1,(IY + LOGDRV.MediaParameters) - á¡à á뢠¥âáï ¢ DEFINE_PARTITIONS
JP DEFINE_PARTITIONS
;HL:IX - SECTOR
; DE - ADDRESS

View File

@ -136,10 +136,14 @@ cmd_dir: push de
.key_p+1: and #ff
dec a
jr nz,.skip_wait
ld de,MAIN_MSG.PAUSE
ld de,MAIN_MSG.DIRPAUSE
call ECHO_MESSAGE ; ¢ë¢¥á⨠áâபã
ld c,Dss.WaitKey
rst ToDSS
PUSH DE
ld de,MAIN_MSG.CLSLINE
call ECHO_MESSAGE
POP DE
dec d
ld de,MAIN_MSG.DIR_ESCAPE
jp z,ECHO_MESSAGE ; § ª®­ç¨âì ¯® ESC

View File

@ -24,6 +24,8 @@ MAIN_MSG:
.CRLF EQU .CRLF_
.INFO_1 EQU .INFO_1_
.INFO_2 EQU .INFO_2_
.DIRPAUSE EQU .DIRPAUSE_
.CLSLINE EQU .CLSLINE_
;
!txtCounter DEFL 0
; ; ­¥ ᤢ¨£ âì____
@ -40,7 +42,7 @@ MAIN_MSG:
stN .DATE_ : DZ "Current date: %1, %2\r\n" ; [x] ¢ë¢®¤ ¤­ï ­¥¤¥«¨ 26/01/2023
stN .TIME_ : DZ "Current time: %1\r\n"
stN .PAUSE_ : DZ "Press any key to continue . . .\r"
stN .DIR_ESC_ : DZ "Command 'DIR' aborted by user \r\n\n"
stN .DIR_ESC_ : DZ "Command 'DIR' cancelled by user\r\n\n"
stN .INV_ : DZ "Invalid parametr\r\n"
stN .ECHO_ : DZ "Echo is %1\r\n"
stN .ON_ : DZ "on"
@ -57,6 +59,8 @@ MAIN_MSG:
stN .CALC_ : DZ "Calculating free space...\r"
stN .INFO_1_ : DZ "\r\nDrive File System Label Serial number Size in bytes\r\n"
stN .INFO_2_ : DZ " %9 \r\t %8\r\t\t\t %7\r\t\t\t\t\t %4\r\t\t\t\t\t\t\t %5\r\n"
stN .DIRPAUSE_ : DZ "Press ESC to cancel or any other key to continue . . .\r"
stN .CLSLINE_ : DZ " \r"
; ;R11
db 0
DZ "Unknown command"

View File

@ -1 +1 @@
457
461

@ -1 +1 @@
Subproject commit 2b1e30c6108f0a5c271f84558e1e5f804a6d623a
Subproject commit 60b5ff6a74b57614b1f54fbe5611585cd46582ab