mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 17:31:47 +03:00
some optimization
This commit is contained in:
parent
5c283a4d7f
commit
fed7066721
47
DSS/DOS5.ASM
47
DSS/DOS5.ASM
@ -29,7 +29,7 @@
|
|||||||
; B = 1 SET ATTRIB
|
; B = 1 SET ATTRIB
|
||||||
; OUTPUT: A - ATTRIB
|
; OUTPUT: A - ATTRIB
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
ATTRIB: ;!Test Current Dir ;[x] 15/10/23
|
ATTRIB: ;!TEST Current Dir ;[x] 15/10/23
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -98,7 +98,7 @@ ATTRIB: ;!Test Current Dir ;[x] 15/10/23
|
|||||||
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
||||||
; OUTPUT: A - FM
|
; OUTPUT: A - FM
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
CREATE: ;!Test Current Dir ;[x] 15/10/23
|
CREATE: ;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -112,7 +112,7 @@ CREATE: ;!Test Current Dir ;[x] 15/10/23
|
|||||||
;
|
;
|
||||||
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
||||||
; OUTPUT: A - FM
|
; OUTPUT: A - FM
|
||||||
.NEW: ;!Test Current Dir ;[x] 15/10/23
|
.NEW: ;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -179,7 +179,7 @@ CREAT_N EQU CREATE.NEW
|
|||||||
; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ?
|
; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ?
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
DEL_FN: ;!TEST
|
DEL_FN: ;!TEST
|
||||||
;!Test Current Dir ;[x] 15/10/23
|
;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -240,7 +240,7 @@ DELETE: SET_PAGE_X DIRPAGE
|
|||||||
; DE - "new_name.ext",#00 without simbols * ?
|
; DE - "new_name.ext",#00 without simbols * ?
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
RENAME:
|
RENAME:
|
||||||
;!Test Current Dir
|
;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH DE
|
PUSH DE
|
||||||
CALL DIR_PATH_CHECK.forceCheck
|
CALL DIR_PATH_CHECK.forceCheck
|
||||||
@ -307,7 +307,7 @@ RENAME:
|
|||||||
; ¢ë室: A - ¤¥áªà¨¯â®à ä ©« , ¥á«¨ CF=0
|
; ¢ë室: A - ¤¥áªà¨¯â®à ä ©« , ¥á«¨ CF=0
|
||||||
; ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
; ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
OPEN_FN:;!Test Current Dir ;[x] 15/10/23
|
OPEN_FN:;!TEST Current Dir ;[x] 15/10/23
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -433,25 +433,26 @@ CLOSE: LD (F_FIRST.ACCESS),A
|
|||||||
; A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
; A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
F_FIRST:
|
F_FIRST:
|
||||||
;!Test Current Dir
|
; Current Dir [x] 15/10/23
|
||||||
LD C,A
|
; LD C,A
|
||||||
PUSH HL
|
; PUSH HL
|
||||||
PUSH DE
|
; PUSH DE
|
||||||
PUSH BC
|
; PUSH BC
|
||||||
CALL DIR_PATH_CHECK
|
; CALL DIR_PATH_CHECK
|
||||||
POP BC
|
; POP BC
|
||||||
POP DE
|
; POP DE
|
||||||
POP HL
|
; POP HL
|
||||||
RET C
|
; RET C
|
||||||
LD A,C
|
; LD A,C
|
||||||
;
|
; ;
|
||||||
|
|
||||||
|
|
||||||
LD (.ACCESS),A
|
LD (.ACCESS),A
|
||||||
LD (.DTABUF),DE
|
LD (.DTABUF),DE
|
||||||
LD A,B
|
LD A,B
|
||||||
LD (.FNDMODE),A
|
LD (.FNDMODE),A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
|
;!TEST Current Dir ;[x] 15/10/23
|
||||||
|
CALL DIR_PATH_CHECK
|
||||||
|
;
|
||||||
CALL LOADDIR
|
CALL LOADDIR
|
||||||
POP HL
|
POP HL
|
||||||
CALL GETWORD
|
CALL GETWORD
|
||||||
@ -848,7 +849,7 @@ PUT_D_T:
|
|||||||
; INPUT: HL - "C:\DIR\DIR\DIR_NAME[\]",0
|
; INPUT: HL - "C:\DIR\DIR\DIR_NAME[\]",0
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
CHDIR_FN:
|
CHDIR_FN:
|
||||||
;!Test Current Dir ;[x] 15/10/23
|
;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -872,7 +873,7 @@ CHDIR: CALL GETWORD ;
|
|||||||
;
|
;
|
||||||
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
MKDIR: ;!Test Current Dir ;[x] 15/10/23
|
MKDIR: ;!TEST Current Dir ;[x] 15/10/23
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -1046,7 +1047,7 @@ MKDIR: ;!Test Current Dir ;[x] 15/10/23
|
|||||||
;
|
;
|
||||||
; 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
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
|
|||||||
@ -73,7 +73,7 @@ RES_FM:
|
|||||||
_mFM_FIND
|
_mFM_FIND
|
||||||
|
|
||||||
LD A,DSS_Error.sys.INVALID_HANDLE
|
LD A,DSS_Error.sys.INVALID_HANDLE
|
||||||
EXX
|
;EXX
|
||||||
SCF
|
SCF
|
||||||
RET Z
|
RET Z
|
||||||
XOR A
|
XOR A
|
||||||
|
|||||||
@ -21,6 +21,15 @@
|
|||||||
;R01 14-05-1999 DNS DECREASE HEADER SIZE FOR EXE-FILE
|
;R01 14-05-1999 DNS DECREASE HEADER SIZE FOR EXE-FILE
|
||||||
;---------------------------------------------------------------
|
;---------------------------------------------------------------
|
||||||
|
|
||||||
|
MACRO _mINCTASK
|
||||||
|
LD HL,TASK ;R08
|
||||||
|
INC (HL) ;R08
|
||||||
|
ENDM
|
||||||
|
;
|
||||||
|
MACRO _mDECTASK
|
||||||
|
LD HL,TASK ;R08
|
||||||
|
DEC (HL) ;R08
|
||||||
|
ENDM
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
; !FIXIT âãâ ®¤¨ § âã¯ë ¨ ¤¥¡¨«¨§¬
|
; !FIXIT âãâ ®¤¨ § âã¯ë ¨ ¤¥¡¨«¨§¬
|
||||||
@ -779,14 +788,6 @@ PATH_PNT_ARRAY EQU #FC80
|
|||||||
TMP_CURDIR EQU #FD00
|
TMP_CURDIR EQU #FD00
|
||||||
ENVTEMP EQU #FE00
|
ENVTEMP EQU #FE00
|
||||||
|
|
||||||
INCTASK: LD HL,TASK ;R08
|
|
||||||
INC (HL) ;R08
|
|
||||||
RET ;R08
|
|
||||||
|
|
||||||
DECTASK: LD HL,TASK ;R08
|
|
||||||
DEC (HL) ;R08
|
|
||||||
RET ;R08
|
|
||||||
|
|
||||||
|
|
||||||
;/////////////////////////////////////////////////////////////////////
|
;/////////////////////////////////////////////////////////////////////
|
||||||
; ”ãªæ¨ï #40. ‚믮«¨âì ä ©«.
|
; ”ãªæ¨ï #40. ‚믮«¨âì ä ©«.
|
||||||
@ -852,10 +853,10 @@ EXEC_1: LD (CMDLINE),HL
|
|||||||
CALL TST_EXT
|
CALL TST_EXT
|
||||||
LD A,DSS_Error.sys.FILE_NOT_FOUND
|
LD A,DSS_Error.sys.FILE_NOT_FOUND
|
||||||
RET C
|
RET C
|
||||||
CALL INCTASK ;R08
|
_mINCTASK ;R08
|
||||||
CALL OPEN.FILE
|
CALL OPEN.FILE
|
||||||
JR NC,.noError
|
JR NC,.noError
|
||||||
CALL DECTASK ;R08
|
_mDECTASK ;R08
|
||||||
AND A
|
AND A
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
@ -996,7 +997,7 @@ ERREXE0: LD A,DSS_Error.sys.NOT_ENOUGH_MEMORY
|
|||||||
ERREXE: PUSH AF
|
ERREXE: PUSH AF
|
||||||
LD A,(EXE_FM)
|
LD A,(EXE_FM)
|
||||||
CALL CLOSE
|
CALL CLOSE
|
||||||
CALL DECTASK
|
_mDECTASK
|
||||||
POP AF
|
POP AF
|
||||||
RET
|
RET
|
||||||
|
|
||||||
@ -1046,7 +1047,7 @@ _TST_PROC:
|
|||||||
IN A,(SLOT1)
|
IN A,(SLOT1)
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH AF
|
PUSH AF
|
||||||
;!Test close EXE FM [x] 25/10/23
|
;[x] 25/10/23 close EXE FM
|
||||||
LD A,(EXE_FM)
|
LD A,(EXE_FM)
|
||||||
PUSH AF
|
PUSH AF
|
||||||
;
|
;
|
||||||
@ -1131,7 +1132,7 @@ _TST_PROC_2:
|
|||||||
LD DE,RETFAR ; ¤à¥á ¯/¯ "¥®¦¨¤ ®¥ § ¢¥à襨¥ ¯à®æ¥áá "
|
LD DE,RETFAR ; ¤à¥á ¯/¯ "¥®¦¨¤ ®¥ § ¢¥à襨¥ ¯à®æ¥áá "
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
;!Test Current Dir ;[x] 15/10/23
|
;!TEST Current Dir ;[x] 15/10/23
|
||||||
PUSH IX
|
PUSH IX
|
||||||
LD HL,CurrentDirectory
|
LD HL,CurrentDirectory
|
||||||
CALL CHDIR_FN
|
CALL CHDIR_FN
|
||||||
@ -1158,12 +1159,11 @@ _TST_PROC_2:
|
|||||||
LEAVE: LD A,B
|
LEAVE: LD A,B
|
||||||
LD (ERLEVEL),A
|
LD (ERLEVEL),A
|
||||||
CALL LEAVMEM
|
CALL LEAVMEM
|
||||||
;CALL DECTASK ;!Test close EXE FM [x] 25/10/23
|
|
||||||
LD SP,(EXSTACK)
|
LD SP,(EXSTACK)
|
||||||
;!Test close EXE FM [x] 25/10/23
|
;[x] 25/10/23 close EXE FM
|
||||||
POP AF
|
POP AF
|
||||||
CALL RES_FM
|
CALL RES_FM
|
||||||
CALL DECTASK
|
_mDECTASK
|
||||||
;
|
;
|
||||||
POP AF
|
POP AF
|
||||||
POP HL
|
POP HL
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
516
|
522
|
||||||
@ -157,7 +157,6 @@ A839D: ld bc,0*256 + Dss.Exec ;
|
|||||||
CALL RESTORE_ALL
|
CALL RESTORE_ALL
|
||||||
POP AF
|
POP AF
|
||||||
;
|
;
|
||||||
|
|
||||||
;[x] 25/10/23
|
;[x] 25/10/23
|
||||||
JP NC,Ret_New_Line ; Ok
|
JP NC,Ret_New_Line ; Ok
|
||||||
;
|
;
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
Subproject commit a8a109eb8f4ee85e47d65911e8a0f2d2f5b71db1
|
Subproject commit 4c835d305fd5d1bc296039706d5e163c1f2224ca
|
||||||
Loading…
Reference in New Issue
Block a user