mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 17:31:47 +03:00
промежуточное 3
This commit is contained in:
parent
2df0b56e56
commit
fb6c8a2caf
41
DSS/DOS5.ASM
41
DSS/DOS5.ASM
@ -29,9 +29,7 @@
|
|||||||
; B = 1 SET ATTRIB
|
; B = 1 SET ATTRIB
|
||||||
; OUTPUT: A - ATTRIB
|
; OUTPUT: A - ATTRIB
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
ATTRIB:
|
ATTRIB: ;!Test Current Dir ;[x] 15/10/23
|
||||||
_mSavePath 1
|
|
||||||
;!Test Current Dir
|
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -42,7 +40,6 @@ ATTRIB:
|
|||||||
LD A,C
|
LD A,C
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
INC B
|
INC B
|
||||||
DEC B
|
DEC B
|
||||||
JP Z,.RATTRIB
|
JP Z,.RATTRIB
|
||||||
@ -101,8 +98,7 @@ ATTRIB:
|
|||||||
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
||||||
; OUTPUT: A - FM
|
; OUTPUT: A - FM
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
CREATE: _mSavePath 0
|
CREATE: ;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -116,8 +112,7 @@ CREATE: _mSavePath 0
|
|||||||
;
|
;
|
||||||
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
|
||||||
; OUTPUT: A - FM
|
; OUTPUT: A - FM
|
||||||
.NEW: _mSavePath 0
|
.NEW: ;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -184,8 +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
|
||||||
_mSavePath 1
|
;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
@ -313,9 +307,7 @@ RENAME:
|
|||||||
; ¢ë室: A - ¤¥áªà¨¯â®à ä ©« , ¥á«¨ CF=0
|
; ¢ë室: A - ¤¥áªà¨¯â®à ä ©« , ¥á«¨ CF=0
|
||||||
; ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
; ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
OPEN_FN:
|
OPEN_FN:;!Test Current Dir ;[x] 15/10/23
|
||||||
_mSavePath 1
|
|
||||||
;!Test Current Dir
|
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -378,7 +370,6 @@ OPEN: LD (F_FIRST.ACCESS),A
|
|||||||
; A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
; A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
CLOSE_FN:
|
CLOSE_FN:
|
||||||
_mSavePath 1
|
|
||||||
;R08
|
;R08
|
||||||
CLOSE: LD (F_FIRST.ACCESS),A
|
CLOSE: LD (F_FIRST.ACCESS),A
|
||||||
CALL SET_FM
|
CALL SET_FM
|
||||||
@ -857,17 +848,14 @@ PUT_D_T:
|
|||||||
; INPUT: HL - "C:\DIR\DIR\DIR_NAME[\]",0
|
; INPUT: HL - "C:\DIR\DIR\DIR_NAME[\]",0
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
CHDIR_FN:
|
CHDIR_FN:
|
||||||
_mSavePath 0
|
;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL DIR_PATH_CHECK
|
CALL DIR_PATH_CHECK
|
||||||
POP HL
|
POP HL
|
||||||
RET C
|
RET C
|
||||||
;
|
|
||||||
CALL CHDIR
|
CALL CHDIR
|
||||||
JP DIR_PATH_CHANGE.FullCurrent
|
JP DIR_PATH_CHANGE.FullCurrent
|
||||||
; RET
|
;
|
||||||
;
|
|
||||||
CHDIR: CALL GETWORD ; â¥áâ ¤®¯ãáâ. ¨¬ï ¨ áâà. ¤¨áª
|
CHDIR: CALL GETWORD ; â¥áâ ¤®¯ãáâ. ¨¬ï ¨ áâà. ¤¨áª
|
||||||
RET C
|
RET C
|
||||||
LD HL,TMPNAME
|
LD HL,TMPNAME
|
||||||
@ -884,8 +872,7 @@ CHDIR: CALL GETWORD ;
|
|||||||
;
|
;
|
||||||
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
MKDIR: _mSavePath 1
|
MKDIR: ;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -1059,8 +1046,7 @@ MKDIR: _mSavePath 1
|
|||||||
;
|
;
|
||||||
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
|
||||||
////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////
|
||||||
RMDIR: _mSavePath 1
|
RMDIR: ;!Test Current Dir ;[x] 15/10/23
|
||||||
;!Test Current Dir
|
|
||||||
LD C,A
|
LD C,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH BC
|
PUSH BC
|
||||||
@ -1070,7 +1056,6 @@ RMDIR: _mSavePath 1
|
|||||||
RET C
|
RET C
|
||||||
LD A,C
|
LD A,C
|
||||||
;
|
;
|
||||||
|
|
||||||
CALL GETWORD
|
CALL GETWORD
|
||||||
RET C
|
RET C
|
||||||
LD HL,TMPNAME
|
LD HL,TMPNAME
|
||||||
@ -2112,7 +2097,7 @@ DIR_PATH_CHECK: LD A,(HL)
|
|||||||
;
|
;
|
||||||
.forceCheck: LD HL,CurrentDirectory+1
|
.forceCheck: LD HL,CurrentDirectory+1
|
||||||
LD BC,CurrentDirectory.DEPTH-1
|
LD BC,CurrentDirectory.DEPTH-1
|
||||||
CALL FINDDIR.CHECK_SLASH
|
;CALL FINDDIR.CHECK_SLASH
|
||||||
CALL .checkDrive
|
CALL .checkDrive
|
||||||
JR Z,.checkDir
|
JR Z,.checkDir
|
||||||
;
|
;
|
||||||
@ -2120,7 +2105,7 @@ DIR_PATH_CHECK: LD A,(HL)
|
|||||||
LD A,(FatBuffer.DRIVE)
|
LD A,(FatBuffer.DRIVE)
|
||||||
ADD 'A'
|
ADD 'A'
|
||||||
CP (HL)
|
CP (HL)
|
||||||
JP NZ,GETWORD
|
JP NZ,.gotoPath
|
||||||
;
|
;
|
||||||
.checkDir: LD HL,CurrentDirectory+1
|
.checkDir: LD HL,CurrentDirectory+1
|
||||||
LD DE,WorkDirectory+1
|
LD DE,WorkDirectory+1
|
||||||
@ -2137,13 +2122,15 @@ DIR_PATH_CHECK: LD A,(HL)
|
|||||||
.end: CP (HL)
|
.end: CP (HL)
|
||||||
RET Z
|
RET Z
|
||||||
.ReDir: LD HL,CurrentPath
|
.ReDir: LD HL,CurrentPath
|
||||||
JP GETWORD
|
JP .gotoPath
|
||||||
;
|
;
|
||||||
.checkDrive: LD HL,CurrentPath
|
.checkDrive: LD HL,CurrentPath
|
||||||
LD A,(FatBuffer.DRIVE)
|
LD A,(FatBuffer.DRIVE)
|
||||||
ADD 'A'
|
ADD 'A'
|
||||||
CP (HL)
|
CP (HL)
|
||||||
RET
|
RET
|
||||||
|
.gotoPath: CALL FINDDIR.CHECK_SLASH
|
||||||
|
JP GETWORD
|
||||||
;----------------------------------------------------------------------;
|
;----------------------------------------------------------------------;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@
|
|||||||
//;R12 20-07-2023 BAO <20>ਠ§ ¢¥à襨¨ ¯à¨«®¦¥¨ï ç¥à¥§ äãªæ¨î #41 ¨«¨ " ¢ ਩®" ¢ ¢®§¢à é ¥¬®¥ ¯à¨«®¦¥¨¥ ¯¥à¥¤ ñâáï ª®¤ ®è¨¡ª¨ ¨ ä« £ CF=1
|
//;R12 20-07-2023 BAO <20>ਠ§ ¢¥à襨¨ ¯à¨«®¦¥¨ï ç¥à¥§ äãªæ¨î #41 ¨«¨ " ¢ ਩®" ¢ ¢®§¢à é ¥¬®¥ ¯à¨«®¦¥¨¥ ¯¥à¥¤ ñâáï ª®¤ ®è¨¡ª¨ ¨ ä« £ CF=1
|
||||||
;R11 17-04-2023 BAO OPTIMIZED BUFFERS, FREED UP 768 BYTES FOR CODE
|
;R11 17-04-2023 BAO OPTIMIZED BUFFERS, FREED UP 768 BYTES FOR CODE
|
||||||
;R10 13-04-2023 BAO FIX BUG WITH PARSING DIRECTORY BUFFER
|
;R10 13-04-2023 BAO FIX BUG WITH PARSING DIRECTORY BUFFER
|
||||||
;R09 14-04-2003 DNS NOW EXEC DON'T FOLLOW TO PROGRAM'S DIR
|
;R09 -- 14-04-2003 DNS NOW EXEC DON'T FOLLOW TO PROGRAM'S DIR
|
||||||
;R08 05-12-2002 DNS FIX BUG WITH INCREMENT TASK ID AND OPEN *.EXE ERROR
|
;R08 05-12-2002 DNS FIX BUG WITH INCREMENT TASK ID AND OPEN *.EXE ERROR
|
||||||
;R07 05-12-2002 DNS FIX FOR EXECUTING IN CURRENT DIR WITHOUT PATH
|
;R07 05-12-2002 DNS FIX FOR EXECUTING IN CURRENT DIR WITHOUT PATH
|
||||||
;R06 02-12-2002 DNS FIX BUG WITH NULL-TERMINATED STRING
|
;R06 02-12-2002 DNS FIX BUG WITH NULL-TERMINATED STRING
|
||||||
@ -821,8 +821,7 @@ DECTASK: LD HL,TASK ;R08
|
|||||||
; +00 1 db ? ; „«¨ ª®¬-áâப¨
|
; +00 1 db ? ; „«¨ ª®¬-áâப¨
|
||||||
; +01 127 ds ? ; <20> à ¬¥âàë ª®¬-áâப¨, § ª 稢 ¥âáï ã«¥¬
|
; +01 127 ds ? ; <20> à ¬¥âàë ª®¬-áâப¨, § ª 稢 ¥âáï ã«¥¬
|
||||||
;/////////////////////////////////////////////////////////////////////
|
;/////////////////////////////////////////////////////////////////////
|
||||||
EXEC: _mSavePath 1
|
EXEC: INC B ;R03
|
||||||
INC B ;R03
|
|
||||||
DEC B ;R03
|
DEC B ;R03
|
||||||
JR Z,.VAR_1 ;R03
|
JR Z,.VAR_1 ;R03
|
||||||
DEC B ;R03
|
DEC B ;R03
|
||||||
@ -911,16 +910,7 @@ EXEC02: LD (EXE_FM),A
|
|||||||
LD A,DSS_Error.sys.UNKNOWN_EXE
|
LD A,DSS_Error.sys.UNKNOWN_EXE
|
||||||
SCF
|
SCF
|
||||||
JP NZ,ERREXE
|
JP NZ,ERREXE
|
||||||
; LD HL,TASK
|
|
||||||
; INC (HL)
|
|
||||||
;
|
|
||||||
; !TODO: BACK TO CURRDIR
|
|
||||||
;
|
|
||||||
;R09
|
|
||||||
_mRestorStackAfterRestorePath
|
|
||||||
;_mRestorePath
|
|
||||||
;R09
|
|
||||||
;
|
|
||||||
LD DE,(CORE_BUFFERS.EXEBUFF.LOADER)
|
LD DE,(CORE_BUFFERS.EXEBUFF.LOADER)
|
||||||
LD A,E
|
LD A,E
|
||||||
OR D
|
OR D
|
||||||
@ -1137,14 +1127,12 @@ _TST_PROC_2:
|
|||||||
LD DE,RETFAR ; ¤à¥á ¯/¯ "¥®¦¨¤ ®¥ § ¢¥à襨¥ ¯à®æ¥áá "
|
LD DE,RETFAR ; ¤à¥á ¯/¯ "¥®¦¨¤ ®¥ § ¢¥à襨¥ ¯à®æ¥áá "
|
||||||
PUSH DE
|
PUSH DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
|
;!Test Current Dir ;[x] 15/10/23
|
||||||
_mRestorePath
|
|
||||||
|
|
||||||
PUSH IX
|
PUSH IX
|
||||||
LD HL,CurrentDirectory
|
LD HL,CurrentDirectory
|
||||||
CALL CHDIR_FN
|
CALL CHDIR_FN
|
||||||
POP IX
|
POP IX
|
||||||
|
;
|
||||||
RET
|
RET
|
||||||
;
|
;
|
||||||
;-----------------------------------------------------------------------
|
;-----------------------------------------------------------------------
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
495
|
496
|
||||||
Loading…
Reference in New Issue
Block a user