bug fixes

This commit is contained in:
Anatoliy Belyanskiy 2024-04-22 03:47:11 +10:00
parent ed82bbff78
commit 2f0db9fa98
8 changed files with 42 additions and 44 deletions

View File

@ -59,7 +59,7 @@ GOOD_DRIVE: LD DE,#8200 ;!HARDCODE
;
; CONTINUE
;!TEST 26/03/2024
LD SP,#C000
;LD SP,#C000
;
LD HL,0
LD (DISKL),HL

View File

@ -23,9 +23,9 @@ F_FIRST:
CALL DIR_PATH_CHECK
RET C
;
CALL LOADDIR
POP HL
CALL GETWORD
;CALL LOADDIR
RET C
CALL MASK
RET C

View File

@ -10,52 +10,48 @@
SCANDRV:
; 1. § ¯®¬¨­ ¥¬ á®áâ®ï­¨¥ ¯à¥à뢠­¨©
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
LD A,R
DI
PUSH AF
LD A,R
DI
PUSH AF
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; 2. ã§­ ñ¬ ¡ãª¢ã ¡ãâ-¤¨áª 
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
CALL BOOTDSK.GET
CALL BOOTDSK.GET
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; 3. ¢ë§ë¢ ¥¬ à¥áª ­
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; A = Boot disk
LD B,A
LD A,Dss.DRV.RescanDRV
LD C,Dss.DRV.RescanDRV
RST ToDSS.DRV
; ¯à®¢¥àª  ­  ®è¨¡ªã boot disk lost
LD HL,.BOOT_DSK_LOST
LD E, +(80-.BOOT_DSK_LOST.size)/2 ; coord X
LD BC,.BOOT_DSK_LOST.size
JP C,KERNEL_PANIC
;
LD (LDRIVE),A
; A = Boot disk
LD B,A
LD A,Dss.DRV.RescanDRV
LD C,Dss.DRV.RescanDRV
RST ToDSS.DRV
; ¯à®¢¥àª  ­  ®è¨¡ªã boot disk lost
LD HL,.BOOT_DSK_LOST
LD E, +(80-.BOOT_DSK_LOST.size)/2 ; coord X
LD BC,.BOOT_DSK_LOST.size
JP C,KERNEL_PANIC
;
LD (LDRIVE),A
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; 4. ­  ¢á直© á«ãç © ¯¥à¥ç¨â뢠¥¬ ¤¨à४â®à¨î
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
LD A,(CurrentPath)
SUB 'A'
CALL CHNDISK
;
LD HL,CurrentDirectory
CALL CHDIR
JR NC,.exit
LD HL,CurrentDirectory
LD (HL),0
; LD HL,CurrentPath
; CALL CHDIR
LD A,(CurrentPath)
SUB 'A'
CALL OPENDSK
LD HL,CurrentDirectory
CALL CHDIR
JR NC,.exit
LD HL,CurrentDirectory
LD (HL),0
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; 5. ¢ë室
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
.exit: POP AF
RET PO
EI
RET
;
.BOOT_DSK_LOST:
DZ "Boot drive lost o_O"
.exit: POP AF
RET PO
EI
RET
;
.BOOT_DSK_LOST: DZ "Boot drive lost o_O"
.BOOT_DSK_LOST.size EQU $-.BOOT_DSK_LOST
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
;///////////////////////////////////////////////////////////////////////

View File

@ -540,10 +540,11 @@ LOAD_SAVE_DIR_PREPARE:
LD A,(CORE_BUFFERS.FatBuffer.DRIVE)
LD (IY+_sFM.DRIVE),A
;!FIXIT ¯¥à¥¤¥« âì ­  à ¡®âã ¡¥§ IY
LD A,(IY+_sFM.FS_REC.FIRST_CLUSTER_L)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_L+1)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_H)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_H+1)
LD A,(IY+_sFM.FS_REC.FIRST_CLUSTER_L)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_L+1)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_H)
OR (IY+_sFM.FS_REC.FIRST_CLUSTER_H+1)
;
EX AF,AF'
RET

View File

@ -680,7 +680,7 @@ WRITE_FAT_TABLE:
LD C,Dss.DRV.Write
JP ToDSS.DRV
.SAVE_NOT_ALL_BLOCK:
; A = CORE_BUFFERS.FatBuffer.CacheBlock
; A = CORE_BUFFERS.FatBuffer.CacheUpdated
; HL:IX - ᬥ饭¨¥ ¢­ãâਠࠧ¤¥«  ­  ­ ç «® ­ã¦­®£® ¡«®ª  FAT
; B = ¬ ªá¨¬ «ì­®¥ ç¨á«® ¡«®ª®¢ ¤«ï § ¯¨á¨
EXX

View File

@ -443,8 +443,8 @@ KILL_FM:;
POP BC
PUSH AF
; ˜¥àá⨬ ¬ ­¨¯ã«ïâ®àë ­  ­ «¨ç¨¥ ¢ ­¨å £à®å­ã⮣® ¤à ©¢ 
LD IY,CORE_BUFFERS.FM_BUF - CORE_BUFFERS.FM_BUF.Size + #C000
LD B,FMCOUNT
LD IY,CORE_BUFFERS.FM_BUF + #C000 ; - CORE_BUFFERS.FM_BUF.Size
LD B,FMCOUNT - 1 ; ¯à®¯ã᪠¥¬ á«ã¦¥¡­ë© ­ã«¥¢®© ¬ ­¨¯ã«ïâ®à
LD DE,CORE_BUFFERS.FM_BUF.Size
.loop_fm:
ADD IY,DE

View File

@ -1 +1 @@
955
957

View File

@ -154,5 +154,6 @@ MOUSE_BAUD:
;
;----------------------------------------------------;
; <EFBFBD>­ЈЌ ­ЈЅ, стЅЊ хр ­Јтся Ђ тЎЉ ІЅ стр ­ЈцЅ!
SUBLOAD_SIZE EQU 10 ; ª®«-¢® ᥪâ®à®¢ ª®â®à®¥ ­ ¤® ¯®¤£à㧨âì ¯®á«¥ § £à㧪¨ system.dos ¢ áâà ­¨æã
;----------------------------------------------------;