mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 17:31:47 +03:00
testing
This commit is contained in:
parent
34ee5a9db8
commit
6333672fa6
118
DSS/DOS5.ASM
118
DSS/DOS5.ASM
@ -7,7 +7,7 @@
|
||||
;Rev Date Name Description
|
||||
;-------------------------------------------------------------
|
||||
;R11 17-04-2023 BAO ‚६¥ë© ª®áâë«ì ¤«ï ¥¤®¯ã᪠¨ï ¯¥à¥¯®«¥¨ï ¡ãä¥à ¯ã⨠ª â «®£
|
||||
;R10 15-04-2023 BAO ;????? FIXED BUG WITH CHANGE DISK WITHOUT CHANGE PATH ;!FIXIT ¯®ª ¢ ¢¨¤¥ § ¯« ⪨ ¯®«ã¥à ¡®â î饩
|
||||
;R10 15-04-2023 BAO FIXED BUG WITH CHANGE DISK WITHOUT CHANGE PATH
|
||||
;R09 13-04-2023 BAO FIX BUG WITH PARSING DIRECTORY BUFFER
|
||||
;R08 15-04-2003 DNS SAVE AND RESTORE CUR-PATH MACROS
|
||||
;R07 06-02-2003 DNS FIX BUG IN MASK ROUTINE, IT ALLOW NAMES WHICH BEGAN
|
||||
@ -181,12 +181,12 @@ CREAT_N EQU CREATE.NEW
|
||||
; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ?
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
DEL_FN: ;!TEST
|
||||
;!TEST Current Dir ;[x] 15/10/23
|
||||
PUSH HL
|
||||
CALL DIR_PATH_CHECK
|
||||
POP HL
|
||||
RET C
|
||||
;
|
||||
;!TEST Current Dir ;[x] 15/10/23
|
||||
PUSH HL
|
||||
CALL DIR_PATH_CHECK
|
||||
POP HL
|
||||
RET C
|
||||
;
|
||||
CALL GETWORD ; â¥áâ ¤®¯ãáâ. ¨¬ï ¨ áâà. ¤¨áª
|
||||
RET C
|
||||
; LD HL,TMPNAME
|
||||
@ -316,7 +316,7 @@ OPEN_FN:;!TEST Current Dir ;[x] 15/10/23
|
||||
POP HL
|
||||
RET C
|
||||
LD A,C
|
||||
;!FIXIT ᤥ« âì ª ª ¢ mkdir ¨«¨ rmdir
|
||||
;!FIXIT ᤥ« âì ª ª ¢ mkdir ¨«¨ rmdir?
|
||||
;
|
||||
;R08
|
||||
OPEN: LD (.TMP),A ; enter point for CREATE
|
||||
@ -580,24 +580,18 @@ CHNDISK_FN:
|
||||
CALL DIR_PATH_CHANGE.FullCurrent
|
||||
POP AF
|
||||
RET
|
||||
CHNDISK:
|
||||
;!TEST
|
||||
CHNDISK:;[x] ¡®«¥¥ ª®à४â ï ᬥ ¤¨áª
|
||||
CALL OPENDSK
|
||||
;CALL OPENDSK.force
|
||||
;
|
||||
;????? R10
|
||||
RET C
|
||||
;R10
|
||||
RET C
|
||||
LD HL,WorkDirectory
|
||||
LD (HL),0
|
||||
PUSH AF
|
||||
CALL OPENDIR
|
||||
POP BC
|
||||
RET C
|
||||
LD A,B
|
||||
; RET C
|
||||
; PUSH AF
|
||||
; CALL LOADDIR
|
||||
; POP AF
|
||||
LD (HL),0
|
||||
PUSH AF
|
||||
CALL OPENDIR
|
||||
POP BC
|
||||
RET C
|
||||
LD A,B
|
||||
RET
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
@ -605,19 +599,24 @@ CHNDISK:
|
||||
;
|
||||
; ¢å®¤: HL - ¡ãä¥à ¢ ¯ ¬ï⨠256 ¡ ©â
|
||||
; ¢ë室: A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
||||
; !FIXIT ¬®¦¥â ¢ë©â¨ § ¯à¥¤¥«ë ¡ãä¥à ?
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
CURRDIR: LD DE,WorkDirectory
|
||||
JR CURRDIR_FN.skip
|
||||
CURRDIR_FN:
|
||||
LD DE,CurrentDirectory
|
||||
.skip: EX DE,HL
|
||||
LD BC,DIRECTORY_PATH_LENGTH ;[x] 15/11/2023 ¬®£«® ¢ë©â¨ § ¯à¥¤¥«ë ¡ãä¥à
|
||||
XOR A
|
||||
.loop: CP (HL)
|
||||
LDI
|
||||
LDI
|
||||
JP PO,.error ;[x] 15/11/2023 ¬®£«® ¢ë©â¨ § ¯à¥¤¥«ë ¡ãä¥à
|
||||
JR NZ,.loop
|
||||
RET
|
||||
|
||||
;[x] 15/11/2023 ¬®£«® ¢ë©â¨ § ¯à¥¤¥«ë ¡ãä¥à
|
||||
.error: LD A,DSS_Error.sys.TOO_DEEP_DIR_DEPTH
|
||||
SCF
|
||||
RET
|
||||
;
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
; ”ãªæ¨ï #21. ’¥ªãé ï ¤ â ¨ ¢à¥¬ï.
|
||||
;
|
||||
@ -1023,8 +1022,8 @@ MKDIR: ;!TEST Current Dir ;[x] 15/10/23
|
||||
LD E,L
|
||||
INC DE
|
||||
LD (HL),0
|
||||
LD BC,512-65
|
||||
LDIR ;!FIXIT 㦮 «¨ â ª ¬®£® £à®å âì?
|
||||
LD BC,512-65 ;!HARDCODE
|
||||
LDIR
|
||||
;
|
||||
POP HL
|
||||
CALL NSECTOR
|
||||
@ -1049,7 +1048,7 @@ MKDIR: ;!TEST Current Dir ;[x] 15/10/23
|
||||
LD DE,CORE_BUFFERS.SECBUF+1
|
||||
LD BC,511
|
||||
LD (HL),0
|
||||
LDIR ;!FIXIT 㦮 «¨ â ª ¬®£® £à®å âì?
|
||||
LDIR
|
||||
;
|
||||
POP IX
|
||||
POP HL
|
||||
@ -1453,7 +1452,7 @@ SEARCH:
|
||||
INC HL
|
||||
INC DE
|
||||
DJNZ .loop_compare
|
||||
;!TEST 9/11/23
|
||||
;!TEST 9/11/23 ;[x] some optimize
|
||||
; LD D,XH
|
||||
; LD E,XL
|
||||
LD D,XH
|
||||
@ -1472,7 +1471,7 @@ SEARCH:
|
||||
AND A
|
||||
RET
|
||||
.next_record:
|
||||
;!TEST 9/11/23
|
||||
;!TEST 9/11/23 ;[x] some optimize
|
||||
; EXX
|
||||
; INC DE
|
||||
; EXX
|
||||
@ -1580,9 +1579,9 @@ TMPNAME: DZ ' ' ; 12
|
||||
;----------------------------------------------------------------------;
|
||||
; IN: A - drive number
|
||||
;
|
||||
;????? R10
|
||||
|
||||
OPENDSK:
|
||||
;!TEST DRV.Open ®¡å®¤
|
||||
;!TEST DRV.Open ®¡å®¤ R10
|
||||
LD C,A
|
||||
LD A,(FatBuffer.DRIVE)
|
||||
CP C
|
||||
@ -1610,19 +1609,25 @@ OPENDSK:
|
||||
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
OPENDIR:
|
||||
XOR A
|
||||
CALL SET_FM
|
||||
OPENDIR:;!TEST ;[ ] some optimize
|
||||
;XOR A
|
||||
;CALL SET_FM
|
||||
LD IY,CORE_BUFFERS.FM_BUF
|
||||
;
|
||||
LD A,(HL)
|
||||
OR A
|
||||
JR NZ,.SUBDIR
|
||||
.REROOT1:
|
||||
LD DE,0
|
||||
LD (IY+_sFM.ST_CLUSTER),E
|
||||
LD (IY+_sFM.ST_CLUSTER+1),D
|
||||
;!TEST ;[ ] some optimize
|
||||
;LD (IY+_sFM.ST_CLUSTER),E
|
||||
;LD (IY+_sFM.ST_CLUSTER+1),D
|
||||
EX DE,HL
|
||||
LD (CORE_BUFFERS.FM_BUF + _sFM.ST_CLUSTER),HL
|
||||
EX DE,HL
|
||||
;
|
||||
CALL LOADDIR
|
||||
;LD HL,CurrentDirectory
|
||||
.dir+1: LD HL,WorkDirectory
|
||||
LD HL,WorkDirectory
|
||||
LD (HL),'\'
|
||||
INC HL
|
||||
LD (HL),#00
|
||||
@ -1631,8 +1636,11 @@ OPENDIR:
|
||||
.SUBDIR:
|
||||
CP "."
|
||||
JR NZ,.SUBDIR2
|
||||
LD A,(IY+_sFM.ST_CLUSTER) ;R05 ;!FIXIT ¬®¦® ¯¥à¥¤¥« âì ¯àï¬ë¥ áá뫪¨ ¡¥§ IY
|
||||
OR (IY+_sFM.ST_CLUSTER+1) ;R05 ;!FIXIT ¬®¦® ¯¥à¥¤¥« âì ¯àï¬ë¥ áá뫪¨ ¡¥§ IY
|
||||
;!TEST ;[ ] some optimize
|
||||
;LD A,(IY+_sFM.ST_CLUSTER) ;R05
|
||||
LD A,(CORE_BUFFERS.FM_BUF + _sFM.ST_CLUSTER) ;R05
|
||||
;
|
||||
OR (IY+_sFM.ST_CLUSTER+1) ;R05
|
||||
JR NZ,.SUDI1 ;R05
|
||||
INC HL ;R05
|
||||
LD A,(HL) ;R05
|
||||
@ -1640,7 +1648,7 @@ OPENDIR:
|
||||
DEC HL ;R05
|
||||
JR Z,.REROOT1 ;R05
|
||||
.SUDI1: EXX
|
||||
LD HL,MASKARE ;!FIXIT ¬®¦® ¥ § â¨à âì ¯à¥¤¢ à¨â¥«ì®?
|
||||
LD HL,MASKARE
|
||||
LD DE,MASKARE+1
|
||||
LD BC,10 ;!HARDCODE
|
||||
LD (HL),' '
|
||||
@ -1653,17 +1661,23 @@ OPENDIR:
|
||||
JR NZ,.loop
|
||||
JR .SUBDIR3
|
||||
.SUBDIR2:
|
||||
;LD DE,MASKARE
|
||||
CALL MASK.name
|
||||
RET C
|
||||
.SUBDIR3:
|
||||
CALL FINDDIR
|
||||
RET C
|
||||
LD (IY+_sFM.ST_CLUSTER),E
|
||||
LD (IY+_sFM.ST_CLUSTER+1),D
|
||||
LD DE,#4000 ;!HARDCODE
|
||||
LD (IY+_sFM.F_SIZE),E
|
||||
LD (IY+_sFM.F_SIZE+1),D
|
||||
;!TEST ;[ ] some optimize
|
||||
;LD (IY+_sFM.ST_CLUSTER),E
|
||||
;LD (IY+_sFM.ST_CLUSTER+1),D
|
||||
;LD DE,#4000 ;!HARDCODE
|
||||
;LD (IY+_sFM.F_SIZE),E
|
||||
;LD (IY+_sFM.F_SIZE+1),D
|
||||
EX DE,HL
|
||||
LD (CORE_BUFFERS.FM_BUF + _sFM.ST_CLUSTER),HL
|
||||
LD HL,#4000 ;!HARDCODE
|
||||
LD (CORE_BUFFERS.FM_BUF + _sFM.F_SIZE),HL
|
||||
EX DE,HL
|
||||
;
|
||||
CALL LOADDIR
|
||||
AND A
|
||||
RET
|
||||
@ -1738,8 +1752,6 @@ FINDDIR:
|
||||
.ADDSPEC:
|
||||
LD E,XL
|
||||
LD D,XH
|
||||
;LD HL,CurrentDirectory+1
|
||||
;LD BC,CurrentDirectory.DEPTH-1
|
||||
LD HL,WorkDirectory+1
|
||||
LD BC,WorkDirectory.DEPTH-1
|
||||
; XOR A
|
||||
@ -1975,6 +1987,7 @@ LOADDIR:
|
||||
; LD (HL),L
|
||||
; LDIR
|
||||
;
|
||||
;
|
||||
LD A,(FatBuffer.DRIVE) ; ®¬¥à ¤¨áª
|
||||
LD (IY+_sFM.DRIVE),A ; á®åà. ¢ ¤¥áªà¨¯â®à
|
||||
LD D,(IY+_sFM.ST_CLUSTER) ; de=®¬¥à ¯¥à¢®£® ª« áâ¥à
|
||||
@ -2204,7 +2217,10 @@ DIR_PATH_CHECK: LD A,(HL)
|
||||
; Œ áᨢ «®£. ®¬¥à®¢ ¡ ®ª à áè¨à¥¨ï DSS
|
||||
BANKTBL: BLOCK USING_MEMPAGES+1,#FF ; +1 ¤«ï COREPAGE
|
||||
;
|
||||
|
||||
HANDBUF: BLOCK HANDBUF.SIZE,0
|
||||
;
|
||||
|
||||
MASKARE: BLOCK 8,0 ; ¨¬ï ä ©«
|
||||
BLOCK 3,0 ; à áè.
|
||||
BLOCK 21,0 ; 11+21=32
|
||||
|
||||
@ -1 +1 @@
|
||||
579
|
||||
595
|
||||
Loading…
Reference in New Issue
Block a user