-bug in FREE_PROCESS_FMs

-bug in Check_0_BPB
This commit is contained in:
Tolik 2025-02-22 06:02:11 +10:00
parent a93bbd76ad
commit 5f493aec7c
19 changed files with 37 additions and 177 deletions

View File

@ -9,14 +9,6 @@
ATTRIB: ;!TEST Current Dir ;[x] 15/10/23 ATTRIB: ;!TEST Current Dir ;[x] 15/10/23
LD C,A LD C,A
; ;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
;
ENDIF
;
PUSH HL PUSH HL
PUSH BC PUSH BC
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK

View File

@ -11,14 +11,6 @@
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
CHDIR_FN: CHDIR_FN:
;!TEST Current Dir ;[x] 15/10/23 ;!TEST Current Dir ;[x] 15/10/23
;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,CHDIR
;
ENDIF
; ;
PUSH HL PUSH HL
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK

View File

@ -7,13 +7,6 @@ CREATE: ;!TEST Current Dir ;[x] 15/10/23 ;CREATE_FN:
PUSH HL PUSH HL
LD C,A LD C,A
; ;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
PUSH BC PUSH BC
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
POP BC POP BC
@ -42,13 +35,6 @@ CREATE: ;!TEST Current Dir ;[x] 15/10/23 ;CREATE_FN:
PUSH HL PUSH HL
LD C,A LD C,A
; ;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
PUSH BC PUSH BC
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
POP BC POP BC

View File

@ -2,16 +2,7 @@
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ? ; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ?
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
DEL_FN: ;!TEST DEL_FN: ;Current Dir ;[x] 15/10/23
;!TEST Current Dir ;[x] 15/10/23
;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
PUSH HL PUSH HL
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
POP HL POP HL

View File

@ -309,13 +309,6 @@ _TST_PROC: CALL GETMEM
PUSH HL ; +2 EXSTACK size for 1 task PUSH HL ; +2 EXSTACK size for 1 task
PUSH DE ; +2 PUSH DE ; +2
; ;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
PUSH AF ; +2
;
ENDIF
;
IN A,(SLOT3) IN A,(SLOT3)
LD D,A LD D,A
IN A,(SLOT2) IN A,(SLOT2)
@ -426,11 +419,6 @@ _TST_PROC_2: LD SP,(CORE_BUFFERS.EXEBUFF.SP_REG)
LD HL,CORE_BUFFERS.CurrentPath LD HL,CORE_BUFFERS.CurrentPath
LD A,(CORE_BUFFERS.EXEBUFF.VERSION) LD A,(CORE_BUFFERS.EXEBUFF.VERSION)
; ;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD (EXE_VERSION),A
;
ENDIF
OR A OR A
JR NZ,.set_path JR NZ,.set_path
CALL DIR_PATH_CHANGE.FullCurrent CALL DIR_PATH_CHANGE.FullCurrent
@ -532,9 +520,6 @@ ENVPATH: DB "PATH=",0
EXE_EXT: DB "EXE" EXE_EXT: DB "EXE"
TASK: DB #01 ; ã஢¥­ì ⥪ã饩 ¯à®£à ¬¬ë TASK: DB #01 ; ã஢¥­ì ⥪ã饩 ¯à®£à ¬¬ë
; ;
IF OLD_DSS_FOR_OLD_EXE
EXE_VERSION: DB #01 ; [ ] 10/06/24
ENDIF
RAMMAP: DB #00,#00,#00,#00 RAMMAP: DB #00,#00,#00,#00
ErrorLevel: DB #00 ; ª®¤ § ¢¥à襭¨ï ¯à®£à ¬¬ë (¯à®æ¥áá ) ErrorLevel: DB #00 ; ª®¤ § ¢¥à襭¨ï ¯à®£à ¬¬ë (¯à®æ¥áá )
EXE_FM: DB #00 ; ¤¥áªà. ä ©«  EXE_FM: DB #00 ; ¤¥áªà. ä ©« 
@ -575,11 +560,6 @@ LEAVE: LD A,B
OUT (SLOT2),A OUT (SLOT2),A
LD A,H LD A,H
OUT (SLOT3),A OUT (SLOT3),A
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
POP AF ; -2
LD (EXE_VERSION),A
ENDIF
; ;
POP DE ; -2 POP DE ; -2
POP HL ; -2 POP HL ; -2
@ -655,7 +635,9 @@ FREE_PROCESS_FMs:
PUSH DE PUSH DE
LD A,FMCOUNT+1 LD A,FMCOUNT+1
SUB B SUB B
PUSH BC
CALL CLOSE_FN CALL CLOSE_FN
POP BC
POP DE POP DE
POP IY POP IY
.skip: POP AF .skip: POP AF

View File

@ -16,13 +16,6 @@
F_FIRST_FN: CALL F_FIRST.INIT_VARS F_FIRST_FN: CALL F_FIRST.INIT_VARS
PUSH HL PUSH HL
;!TEST Current Dir ;[x] 15/10/23 ;!TEST Current Dir ;[x] 15/10/23
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
RET C RET C
; ;

View File

@ -14,14 +14,7 @@ MKDIR:
RET RET
; ;
; Entry point ;!TEST Current Dir ;[x] 15/10/23 ; Entry point ;!TEST Current Dir ;[x] 15/10/23
.B: ; [ ] 10/06/24 .B: PUSH HL
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.START
ENDIF
;
PUSH HL
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
POP HL POP HL
RET C RET C

View File

@ -15,13 +15,6 @@
OPEN_FN: ;!TEST Current Dir ;[x] 15/10/23 OPEN_FN: ;!TEST Current Dir ;[x] 15/10/23
;AND #7F ; ACCESS_MODE bit7 - ¤«ï ¢­ãâ७­¥£® ¨á¯®«ì§®¢ ­¨ï))) ;!TODO ;AND #7F ; ACCESS_MODE bit7 - ¤«ï ¢­ãâ७­¥£® ¨á¯®«ì§®¢ ­¨ï))) ;!TODO
LD (.TMP),A LD (.TMP),A
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
PUSH HL PUSH HL
CALL DIR_PATH_CHECK.forceCheck CALL DIR_PATH_CHECK.forceCheck
POP HL POP HL

View File

@ -10,13 +10,6 @@
; DE - "new_name.ext",#00 without simbols * ? ; DE - "new_name.ext",#00 without simbols * ?
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
RENAME: ;!TEST Current Dir ;[x] 15/10/23 RENAME: ;!TEST Current Dir ;[x] 15/10/23
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
PUSH HL PUSH HL
PUSH DE PUSH DE
CALL DIR_PATH_CHECK.forceCheck CALL DIR_PATH_CHECK.forceCheck

View File

@ -9,13 +9,6 @@
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0 ; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
//////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////
RMDIR: ;!TEST Current Dir ;[x] 15/10/23 RMDIR: ;!TEST Current Dir ;[x] 15/10/23
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.START
ENDIF
;
PUSH HL PUSH HL
CALL DIR_PATH_CHECK CALL DIR_PATH_CHECK
POP HL POP HL

View File

@ -36,13 +36,6 @@ SCANDRV:
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; 4. ­  ¢á直© á«ãç © ¯¥à¥ç¨â뢠¥¬ ¤¨à४â®à¨î ; 4. ­  ¢á直© á«ãç © ¯¥à¥ç¨â뢠¥¬ ¤¨à४â®à¨î
; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -; ; - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -;
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
JR Z,.old_EXE
ENDIF
;
LD A,(CORE_BUFFERS.CurrentPath) LD A,(CORE_BUFFERS.CurrentPath)
SUB 'A' SUB 'A'
CALL OPENDSK.open CALL OPENDSK.open
@ -62,19 +55,6 @@ SCANDRV:
RET PO RET PO
EI EI
RET RET
;
; [ ] 10/06/24
IF OLD_DSS_FOR_OLD_EXE
.old_EXE: LD A,(CORE_BUFFERS.FatBuffer.DRIVE)
CALL OPENDSK
;
LD HL,CORE_BUFFERS.WorkDirectory
CALL CHDIR
JR NC,.exit
LD HL,CORE_BUFFERS.WorkDirectory
LD (HL),0
JR .exit
ENDIF
.BOOT_DSK_LOST: DZ "Boot drive lost o_O" .BOOT_DSK_LOST: DZ "Boot drive lost o_O"
.BOOT_DSK_LOST.size EQU $-.BOOT_DSK_LOST .BOOT_DSK_LOST.size EQU $-.BOOT_DSK_LOST

View File

@ -58,11 +58,11 @@ WRITE: ;!TEST ;!TODO 5/12/23 ; [ ]
JR C,.ERR3 JR C,.ERR3
LD C,B LD C,B
LD HL,(.R_POINT) LD HL,(.R_POINT)
LD DE,#0200 ;!HARDCODE LD DE,#0200 ;!HARDCODE sector size
.WOV5: ADD HL,DE .WOV5: ADD HL,DE
DJNZ .WOV5 DJNZ .WOV5
; B=0 ; B=0
LD (.R_POINT),HL LD (.R_POINT),HL ;!FIXIT íâ® §­ ç¥­¨¥ 㦥 à ácç¨â뢠¥âáï ¯¥à¥¤ ¢ë室®¬ ¢ BLOK_WRITE?
;LD B,0 ;LD B,0
POP HL POP HL
ADD HL,BC ADD HL,BC

View File

@ -6,14 +6,6 @@
; C - ­®¬¥à ¯®á«¥¤­¥£® ¤¨áª  ¢ á¨á⥬¥ ; C - ­®¬¥à ¯®á«¥¤­¥£® ¤¨áª  ¢ á¨á⥬¥
;///////////////////////////////////////////////////////////////////// ;/////////////////////////////////////////////////////////////////////
CURDISK_FN: CURDISK_FN:
;
IF OLD_DSS_FOR_OLD_EXE
; [ ] 10/06/24
LD A,(EXE_VERSION)
OR A
JR Z,CURDISK
;
ENDIF
LD A,(LDRIVE) LD A,(LDRIVE)
LD C,A LD C,A
LD A,(CORE_BUFFERS.CurrentPath) LD A,(CORE_BUFFERS.CurrentPath)

View File

@ -130,15 +130,7 @@ DISKINF: LD C,B
CP #FF ; !FIXIT WorkDirectory CP #FF ; !FIXIT WorkDirectory
;!TEST !Current Dir ;!TEST !Current Dir
;JR Z,CURRDS ;R06 ;JR Z,CURRDS ;R06
.CurrentDisk: ; [ ] 10/06/24 .CurrentDisk: LD A,(CORE_BUFFERS.CurrentPath)
IF OLD_DSS_FOR_OLD_EXE
LD A,(EXE_VERSION)
OR A
LD A,(CORE_BUFFERS.FatBuffer.DRIVE)
JR Z,.old_EXE
ENDIF
;
LD A,(CORE_BUFFERS.CurrentPath)
SUB 'A' SUB 'A'
.old_EXE: LD HL,CORE_BUFFERS.FatBuffer.DRIVE .old_EXE: LD HL,CORE_BUFFERS.FatBuffer.DRIVE
CP (HL) CP (HL)

View File

@ -24,7 +24,7 @@
;File Manipulator (FM) ;File Manipulator (FM)
;[ ] fat32 ;[ ] fat32
STRUCT _sFM ; 51 bytes STRUCT _sFM ; 54 bytes
; from FAT ; from FAT
; .NAME: TEXT 8,{". "," "} ;+ #00 +00 NAME ; .NAME: TEXT 8,{". "," "} ;+ #00 +00 NAME
; .EXT: TEXT 3,{" "," "} ;+ #08 +08 EXT ; .EXT: TEXT 3,{" "," "} ;+ #08 +08 EXT

View File

@ -1 +1 @@
12 15

View File

@ -102,8 +102,6 @@ DSS_MAX_DRIVES_AMOUNT EQU 26
DEFINE EnoughtOnly_LF 0 DEFINE EnoughtOnly_LF 0
DEFINE MINIMUM_BIOS_VERSION 2*256 + 55 ; version 2.55 DEFINE MINIMUM_BIOS_VERSION 2*256 + 55 ; version 2.55
DEFINE NON_REMOVABLE_FDD 0 DEFINE NON_REMOVABLE_FDD 0
;
DEFINE OLD_DSS_FOR_OLD_EXE 0 ; !TODO
; ;
;-------------------[MEMORY]-------------------------; ;-------------------[MEMORY]-------------------------;

View File

@ -752,7 +752,16 @@ DEFINE_PARTITIONS:
PUSH AF PUSH AF
LD A,SHARED_PAGE LD A,SHARED_PAGE
OUT (SLOT3),A OUT (SLOT3),A
LD A,(Init.count) ; [ ] for ZIP disk A:
PUSH AF ; [ ] for ZIP disk A:
CALL .Start CALL .Start
; [ ] for ZIP disk A:
LD A,(Init.count)
LD B,A
POP AF
CP B
CALL Z,.Check_0_BPB
;
POP AF POP AF
OUT (SLOT3),A OUT (SLOT3),A
RET RET
@ -945,42 +954,6 @@ DEFINE_PARTITIONS:
ADD IY,DE ADD IY,DE
POP BC POP BC
DJNZ .DOSAGA DJNZ .DOSAGA
;
.tst_zipNoMBR: ; [ ] zip no MBR
; ⮫쪮 ¤«ï Removable media
LD A,(CURRENT_DRIVE.Removable)
AND %0000'0001
RET Z
; ⮫쪮 ¤«ï ATAPI
LD A,(CURRENT_DRIVE.Number)
LD B,A
AND #F0
CP DRIVE_CODES.SPRINTER.ATAPI
JR NZ,.exit
;
XOR A
LD HL,(CURRENT_SECTOR.Low)
OR H
OR L
LD HL,(CURRENT_SECTOR.High)
OR H
OR L
RET NZ
;
PUSH IY
LD A,B
LD C,BIOS.DRV_GET_PAR
RST ToBIOS
POP IY
;
LD B,XH
LD C,XL
CALL .set_LOGDRV
LD A,(CURRENT_DRIVE.Removable)
LD (IX + LOGDRV.MediaParameters),A
LD (IX + LOGDRV.PARTITION_RECORD_NUM),#FF
CALL .set_drv_tbl
;
.exit: AND A .exit: AND A
RET RET
; ;
@ -1019,7 +992,24 @@ DEFINE_PARTITIONS:
RST ToBIOS RST ToBIOS
POP IY POP IY
RET RET
;
.Check_0_BPB: LD A,(CURRENT_DRIVE.Number)
CP DRIVE_CODES.SPRINTER.ATAPI
RET C
LD C,BIOS.DRV_GET_PAR
RST ToBIOS
RET C
;
LD B,XH
LD C,XL
CALL .set_LOGDRV
LD A,(CURRENT_DRIVE.Removable)
LD (IX + LOGDRV.MediaParameters),A
LD (IX + LOGDRV.PARTITION_RECORD_NUM),#FF
CALL .set_drv_tbl
JP INC_DRV_COUNT
;
; ; ;
GetSectorSize: PUSH IY GetSectorSize: PUSH IY
LD A,(CURRENT_DRIVE.Number) LD A,(CURRENT_DRIVE.Number)

@ -1 +1 @@
Subproject commit aa0c67b6b30b02b1302145cd4d57b708130e2e0a Subproject commit 2b1e30c6108f0a5c271f84558e1e5f804a6d623a