промежуточное 3

This commit is contained in:
Anatoliy Belyanskiy 2023-10-15 20:26:15 +10:00
parent 2df0b56e56
commit fb6c8a2caf
3 changed files with 72 additions and 97 deletions

View File

@ -29,19 +29,16 @@
; B = 1 SET ATTRIB
; OUTPUT: A - ATTRIB
////////////////////////////////////////////////////////////////////////
ATTRIB:
_mSavePath 1
;!Test Current Dir
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
ATTRIB: ;!Test Current Dir ;[x] 15/10/23
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
INC B
DEC B
@ -101,13 +98,12 @@ ATTRIB:
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
; OUTPUT: A - FM
////////////////////////////////////////////////////////////////////////
CREATE: _mSavePath 0
;!Test Current Dir
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
;
CREATE: ;!Test Current Dir ;[x] 15/10/23
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
;
CALL .Prepare
RET C
CALL SEARCH
@ -116,13 +112,12 @@ CREATE: _mSavePath 0
;
; INPUT: HL - "C:\DIR1\DIR2\filename.ext",#00
; OUTPUT: A - FM
.NEW: _mSavePath 0
;!Test Current Dir
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
;
.NEW: ;!Test Current Dir ;[x] 15/10/23
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
;
CALL .Prepare
RET C
CALL SEARCH
@ -184,8 +179,7 @@ CREAT_N EQU CREATE.NEW
; INPUT: HL - "c:\dir\filename.ext",#00 without simbols * ?
////////////////////////////////////////////////////////////////////////
DEL_FN: ;!TEST
_mSavePath 1
;!Test Current Dir
;!Test Current Dir ;[x] 15/10/23
PUSH HL
CALL DIR_PATH_CHECK
POP HL
@ -313,18 +307,16 @@ RENAME:
; ¢ë室: A - ¤¥áªà¨¯â®à ä ©« , ¥á«¨ CF=0
; ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
////////////////////////////////////////////////////////////////////////
OPEN_FN:
_mSavePath 1
;!Test Current Dir
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK.forceCheck
POP BC
POP HL
RET C
LD A,C
;
OPEN_FN:;!Test Current Dir ;[x] 15/10/23
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK.forceCheck
POP BC
POP HL
RET C
LD A,C
;
;R08
OPEN: LD (F_FIRST.ACCESS),A
CALL GETWORD
@ -378,7 +370,6 @@ OPEN: LD (F_FIRST.ACCESS),A
; A - ª®¤ ®è¨¡ª¨, ¥á«¨ CF=1
////////////////////////////////////////////////////////////////////////
CLOSE_FN:
_mSavePath 1
;R08
CLOSE: LD (F_FIRST.ACCESS),A
CALL SET_FM
@ -857,17 +848,14 @@ PUT_D_T:
; INPUT: HL - "C:\DIR\DIR\DIR_NAME[\]",0
////////////////////////////////////////////////////////////////////////
CHDIR_FN:
_mSavePath 0
;!Test Current Dir
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
;
CALL CHDIR
JP DIR_PATH_CHANGE.FullCurrent
; RET
;
;!Test Current Dir ;[x] 15/10/23
PUSH HL
CALL DIR_PATH_CHECK
POP HL
RET C
CALL CHDIR
JP DIR_PATH_CHANGE.FullCurrent
;
CHDIR: CALL GETWORD ; â¥áâ ­  ¤®¯ãáâ. ¨¬ï ¨ ­ áâà. ­  ¤¨áª
RET C
LD HL,TMPNAME
@ -884,17 +872,16 @@ CHDIR: CALL GETWORD ;
;
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
////////////////////////////////////////////////////////////////////////
MKDIR: _mSavePath 1
;!Test Current Dir
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
MKDIR: ;!Test Current Dir ;[x] 15/10/23
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
CALL GETWORD ; â¥áâ ­  ¤®¯ãáâ. ¨¬ï ¨ ­ áâà. ­  ¤¨áª
RET C
@ -1059,18 +1046,16 @@ MKDIR: _mSavePath 1
;
; INPUT: HL - "C:\DIR\DIR\DIR_NAME",0
////////////////////////////////////////////////////////////////////////
RMDIR: _mSavePath 1
;!Test Current Dir
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
RMDIR: ;!Test Current Dir ;[x] 15/10/23
LD C,A
PUSH HL
PUSH BC
CALL DIR_PATH_CHECK
POP BC
POP HL
RET C
LD A,C
;
CALL GETWORD
RET C
LD HL,TMPNAME
@ -2112,7 +2097,7 @@ DIR_PATH_CHECK: LD A,(HL)
;
.forceCheck: LD HL,CurrentDirectory+1
LD BC,CurrentDirectory.DEPTH-1
CALL FINDDIR.CHECK_SLASH
;CALL FINDDIR.CHECK_SLASH
CALL .checkDrive
JR Z,.checkDir
;
@ -2120,7 +2105,7 @@ DIR_PATH_CHECK: LD A,(HL)
LD A,(FatBuffer.DRIVE)
ADD 'A'
CP (HL)
JP NZ,GETWORD
JP NZ,.gotoPath
;
.checkDir: LD HL,CurrentDirectory+1
LD DE,WorkDirectory+1
@ -2137,13 +2122,15 @@ DIR_PATH_CHECK: LD A,(HL)
.end: CP (HL)
RET Z
.ReDir: LD HL,CurrentPath
JP GETWORD
JP .gotoPath
;
.checkDrive: LD HL,CurrentPath
LD A,(FatBuffer.DRIVE)
ADD 'A'
CP (HL)
RET
.gotoPath: CALL FINDDIR.CHECK_SLASH
JP GETWORD
;----------------------------------------------------------------------;

View File

@ -9,7 +9,7 @@
//;R12 20-07-2023 BAO <20>ਠ§ ¢¥à襭¨¨ ¯à¨«®¦¥­¨ï ç¥à¥§ äã­ªæ¨î #41 ¨«¨ " ¢ à¨©­®" ¢ ¢®§¢à é ¥¬®¥ ¯à¨«®¦¥­¨¥ ¯¥à¥¤ ñâáï ª®¤ ®è¨¡ª¨ ¨ ä« £ CF=1
;R11 17-04-2023 BAO OPTIMIZED BUFFERS, FREED UP 768 BYTES FOR CODE
;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
;R07 05-12-2002 DNS FIX FOR EXECUTING IN CURRENT DIR WITHOUT PATH
;R06 02-12-2002 DNS FIX BUG WITH NULL-TERMINATED STRING
@ -821,8 +821,7 @@ DECTASK: LD HL,TASK ;R08
; +00 1 db ? ; „«¨­  ª®¬-áâப¨
; +01 127 ds ? ; <20> à ¬¥âàë ª®¬-áâப¨, § ª ­ç¨¢ ¥âáï ­ã«¥¬
;/////////////////////////////////////////////////////////////////////
EXEC: _mSavePath 1
INC B ;R03
EXEC: INC B ;R03
DEC B ;R03
JR Z,.VAR_1 ;R03
DEC B ;R03
@ -911,16 +910,7 @@ EXEC02: LD (EXE_FM),A
LD A,DSS_Error.sys.UNKNOWN_EXE
SCF
JP NZ,ERREXE
; LD HL,TASK
; INC (HL)
;
; !TODO: BACK TO CURRDIR
;
;R09
_mRestorStackAfterRestorePath
;_mRestorePath
;R09
;
LD DE,(CORE_BUFFERS.EXEBUFF.LOADER)
LD A,E
OR D
@ -1137,14 +1127,12 @@ _TST_PROC_2:
LD DE,RETFAR ;  ¤à¥á ¯/¯ "­¥®¦¨¤ ­­®¥ § ¢¥à襭¨¥ ¯à®æ¥áá "
PUSH DE
PUSH HL
_mRestorePath
;!Test Current Dir ;[x] 15/10/23
PUSH IX
LD HL,CurrentDirectory
CALL CHDIR_FN
POP IX
;
RET
;
;-----------------------------------------------------------------------

View File

@ -1 +1 @@
495
496