From e32db79ce3481664a8b4ce1b5f149a35b037343e Mon Sep 17 00:00:00 2001 From: burniouf Date: Wed, 12 Jul 2023 19:07:55 +0200 Subject: [PATCH] Kernel 0.94.3a (kernel migration step a) --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes BIN/ATTR.S.txt | 22 ++++++++++------- BIN/CHAUX.S.txt | 22 ++++++++++------- BIN/CHGRP.S.txt | 24 ++++++++++++------ BIN/CHMOD.S.txt | 26 ++++++++++++++------ BIN/CHOWN.S.txt | 24 ++++++++++++------ BIN/CHTYP.S.txt | 21 +++++++++------- BIN/DU.S.txt | 33 ++++++++++++++----------- BIN/LC.S.txt | 5 ++-- BIN/LS.S.txt | 25 ++++++++++--------- BIN/PAK.S.txt | 3 +-- BIN/UC.S.txt | 21 +++++++++------- BIN/WC.S.txt | 21 +++++++++------- INC/KERNEL.I.txt | 29 +++++++++++----------- SHARED/X.CPMVRM.S.txt | 2 +- SHARED/X.FILEENUM.S.txt | 12 ++++----- SYS/KERNEL.S.CORE.txt | 6 ++--- SYS/KERNEL.S.DEF.txt | 26 +++++++++----------- SYS/KERNEL.S.INIT.txt | 52 +++++++++++++++++++++++++-------------- SYS/KERNEL.S.txt | 6 +++-- 20 files changed, 221 insertions(+), 159 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index 8b6e0b4ad46d8885d3802b9f30a9ac4c49ec600c..c776a4294702dff728497f79cdc6a4178e26e7b8 100644 GIT binary patch delta 84402 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 delta 86882 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 R;wo{CxNg~n-p^u*_&=>Yzz_fc diff --git a/BIN/ATTR.S.txt b/BIN/ATTR.S.txt index 699e3db0..6d15462f 100644 --- a/BIN/ATTR.S.txt +++ b/BIN/ATTR.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -32,6 +33,8 @@ bContinue .BS 1 bRecurse .BS 1 bPause .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -93,7 +96,7 @@ CS.RUN dec AttrAND set mask = $ff bne .9 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN rts @@ -133,7 +136,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 lda bPause bmi CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE ldy #S.STAT.MODE+1 @@ -159,13 +162,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -188,7 +191,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -221,12 +224,12 @@ CS.RUN.DIR lda (ZPFileName) bpl .8 >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -401,8 +404,9 @@ Access2CSTR ldy #S.STAT.P.ACCESS CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT + >LDA.G hFilter beq .1 diff --git a/BIN/CHAUX.S.txt b/BIN/CHAUX.S.txt index 954c68b9..351add22 100644 --- a/BIN/CHAUX.S.txt +++ b/BIN/CHAUX.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- * Zero Page Segment, up to 32 bytes *-------------------------------------- @@ -37,6 +38,8 @@ bPause .BS 1 bContinue .BS 1 bRecurse .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -107,13 +110,14 @@ CS.RUN inc ArgIndex jsr GetAuxType bcs .99 + bra CS.RUN .5 >LDA.G hSrcBasePath bne .99 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcs .99 bra CS.RUN *-------------------------------------- @@ -155,10 +159,10 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 bit bPause bmi CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE - jsr FilterMatch + jsr X.IncludeMatch bcs CS.RUN.NEXT no match, skip.... ldy #S.STAT.MODE+1 @@ -181,13 +185,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -216,12 +220,12 @@ CS.RUN.DIR bit bRecurse .1 jsr CS.RUN.GetFilePath >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs .8 no match, skip.... jsr CS.RUN.GetFilePath @@ -277,7 +281,7 @@ CS.RUN.GetFilePath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT >LDA.G hFilter diff --git a/BIN/CHGRP.S.txt b/BIN/CHGRP.S.txt index 2c019fdf..97cd59d9 100644 --- a/BIN/CHGRP.S.txt +++ b/BIN/CHGRP.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -23,6 +24,8 @@ ZPFileName .BS 2 ZPFileStat .BS 2 ZPFullPath .BS 2 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -70,6 +73,7 @@ CS.RUN >INC.G ArgIndex .2 cmp OptionList,x beq .3 + dex bpl .2 @@ -93,8 +97,9 @@ CS.RUN >INC.G ArgIndex .5 >LDA.G hSrcBasePath bne .9 + >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN rts @@ -140,7 +145,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 >LDA.G bPause bne CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE ldy #S.STAT.MODE+1 @@ -166,13 +171,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -195,7 +200,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 skip ".." -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -217,7 +222,7 @@ CS.RUN.DIR lda (ZPFileName) bpl .8 >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts @@ -269,13 +274,16 @@ CS.RUN.GetFilePath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT + >LDA.G hFilter beq .1 + >SYSCALL FreeMem .1 >LDA.G hSrcFullPath beq .8 + >SYSCALL FreeMem .8 clc rts diff --git a/BIN/CHMOD.S.txt b/BIN/CHMOD.S.txt index da45d380..56f981fb 100644 --- a/BIN/CHMOD.S.txt +++ b/BIN/CHMOD.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -25,6 +26,9 @@ ZPFullPath .BS 2 ZPMode .BS 2 ArgIndex .BS 1 StrMode .BS 1 + +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -98,8 +102,9 @@ CS.RUN inc ArgIndex bne .9 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN + rts .8 lda StrMode @@ -144,7 +149,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 >LDA.G bPause bne CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE ldy #S.STAT.MODE+1 @@ -170,13 +175,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -199,7 +204,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -220,7 +225,7 @@ CS.RUN.DIR lda (ZPFileName) bpl .8 >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts @@ -309,14 +314,19 @@ CS.RUN.GetFilePath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT + >LDA.G hFilter beq .1 + >SYSCALL FreeMem + .1 >LDA.G hSrcFullPath beq .8 + >SYSCALL FreeMem + .8 clc rts *-------------------------------------- diff --git a/BIN/CHOWN.S.txt b/BIN/CHOWN.S.txt index ce8f1f22..bc290cdb 100644 --- a/BIN/CHOWN.S.txt +++ b/BIN/CHOWN.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -23,6 +24,8 @@ ZPFileName .BS 2 ZPFileStat .BS 2 ZPFullPath .BS 2 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -95,7 +98,7 @@ CS.RUN >INC.G ArgIndex bne .9 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN rts @@ -141,7 +144,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 >LDA.G bPause bne CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE ldy #S.STAT.MODE+1 @@ -167,13 +170,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -196,7 +199,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 skip ".." -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -218,7 +221,7 @@ CS.RUN.DIR lda (ZPFileName) bpl .8 >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts @@ -270,14 +273,19 @@ CS.RUN.GetFilePath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT + >LDA.G hFilter beq .1 + >SYSCALL FreeMem + .1 >LDA.G hSrcFullPath beq .8 + >SYSCALL FreeMem + .8 clc rts *-------------------------------------- diff --git a/BIN/CHTYP.S.txt b/BIN/CHTYP.S.txt index 9e1f12f8..851f4b65 100644 --- a/BIN/CHTYP.S.txt +++ b/BIN/CHTYP.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- * Zero Page Segment, up to 32 bytes *-------------------------------------- @@ -36,6 +37,8 @@ bPause .BS 1 bContinue .BS 1 bRecurse .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -111,7 +114,7 @@ CS.RUN inc ArgIndex bne .99 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcs .99 bra CS.RUN *-------------------------------------- @@ -152,10 +155,10 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 bit bPause bmi CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE - jsr FilterMatch + jsr X.IncludeMatch bcs CS.RUN.NEXT no match, skip.... ldy #S.STAT.MODE+1 @@ -178,13 +181,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -213,12 +216,12 @@ CS.RUN.DIR bit bRecurse .1 jsr CS.RUN.GetFilePath >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs .8 no match, skip.... jsr CS.RUN.GetFilePath @@ -274,7 +277,7 @@ CS.RUN.GetFilePath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT >LDA.G hFilter diff --git a/BIN/DU.S.txt b/BIN/DU.S.txt index 04e60dda..732461d0 100644 --- a/BIN/DU.S.txt +++ b/BIN/DU.S.txt @@ -11,9 +11,10 @@ NEW .INB inc/mli.i .INB inc/mli.e.i *-------------------------------------- -X.ENTER.SUBDIR .EQ 1 -X.COPY.TO.DEST .EQ 0 -X.DELETE.SOURCE .EQ 0 +X.ENTER.SUBDIR .EQ 1 +X.COPY.TO.DEST .EQ 0 +X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 1 *-------------------------------------- .DUMMY .OR ZPBIN @@ -35,6 +36,8 @@ bAllFiles .BS 1 ArgCount .BS 1 ArgDir .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- @@ -122,7 +125,7 @@ CS.RUN jsr CS.RUN.SetCRLF sta ArgDir >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc .1 scan for any other args rts @@ -133,7 +136,7 @@ CS.RUN jsr CS.RUN.SetCRLF ldy #S.PS.hCWD lda (pPS),y >SYSCALL GetMemPtr - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcs .99 .8 >PUSHEA.G TIME.SysTime @@ -165,10 +168,10 @@ CS.RUN.LOOP stz bPass2 .3 bit bPause bmi .1 - jsr GetEntry First entry + jsr X.GetEntry First entry bcs .9 - jsr FilterMatch Filter filename + jsr X.IncludeMatch Filter filename bcs .8 no match, skip.... lda (ZPFileName) @@ -186,13 +189,13 @@ CS.RUN.LOOP stz bPass2 jsr CS.RUN.PRINT.JMP bcs .99 -.8 jsr GetNextEntry Next entry +.8 jsr X.GetNextEntry Next entry bcc .1 If there is one, go again bit bPass2 bmi .9 - jsr ResetSrcDir + jsr X.ResetSrcDir bcs .99 dec bPass2 @@ -206,12 +209,12 @@ CS.RUN.LOOP stz bPass2 jsr CS.RUN.NewLine .91 dec bDirLevel - jsr LeaveSubDir "cd .." + jsr X.LeaveSubDir "cd .." bcs .97 This means we are done - jsr BasePath.. Prune pathname + jsr X.BasePath.. Prune pathname - jsr GetNextEntry Get next entry + jsr X.GetNextEntry Get next entry jmp CS.RUN.LOOP Go again .97 bit bSummary @@ -315,7 +318,7 @@ CS.RUN.PRINT.DIR inc bDirLevel >LDYA ZPFileName - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts @@ -354,7 +357,7 @@ CS.RUN.PRINT.BDEV inc bDirLevel >LDYA ZPFileName - jsr EnterSubDirYA + jsr X.EnterSubDirYA bcs .9 .8 clc @@ -433,7 +436,7 @@ CS.RUN.SetCRLF ldy #S.PS.hStdOut CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT >LDA.G hFilter diff --git a/BIN/LC.S.txt b/BIN/LC.S.txt index c9b10acf..68f22771 100644 --- a/BIN/LC.S.txt +++ b/BIN/LC.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -185,7 +186,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -213,7 +214,7 @@ CS.RUN.DIR lda (ZPFileName) .8 clc .9 rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs .8 no match, skip.... jsr CS.RUN.GetFilePath diff --git a/BIN/LS.S.txt b/BIN/LS.S.txt index 2c9d18f3..7f47a241 100644 --- a/BIN/LS.S.txt +++ b/BIN/LS.S.txt @@ -14,6 +14,7 @@ NEW X.ENTER.SUBDIR .EQ 1 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 1 *-------------------------------------- MAX.COLW .EQ 20 MAX.COLC .EQ 4 @@ -48,6 +49,8 @@ bToFile .BS 1 ZPLineBuf .BS 2 ZPLineBufPtr .BS 2 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -152,7 +155,7 @@ CS.RUN ldy #S.PS.hStdOut bra .1 .4 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc .1 scan for any other args .9 rts @@ -163,7 +166,7 @@ CS.RUN ldy #S.PS.hStdOut ldy #S.PS.hCWD lda (pPS),y >SYSCALL GetMemPtr - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcs .9 .8 >PUSHEA.G TIME.SysTime @@ -211,10 +214,10 @@ CS.RUN.LOOP stz bPass2 .2 bit bPause bmi .1 - jsr GetEntry + jsr X.GetEntry bcs .6 - jsr FilterMatch + jsr X.IncludeMatch bcs .5 no match, skip.... bit bAllmostAll @@ -235,7 +238,7 @@ CS.RUN.LOOP stz bPass2 jsr CS.RUN.PRINT.JMP bcs .99 -.5 jsr GetNextEntry +.5 jsr X.GetNextEntry bcc .1 bit bPass2 @@ -244,7 +247,7 @@ CS.RUN.LOOP stz bPass2 jsr CS.RUN.CheckRoot beq .6 - jsr ResetSrcDir + jsr X.ResetSrcDir bcs .99 dec bPass2 @@ -256,15 +259,15 @@ CS.RUN.LOOP stz bPass2 jsr CS.RUN.LineBufFlush bcs .99 -.7 jsr LeaveSubDir +.7 jsr X.LeaveSubDir bcs .8 - jsr BasePath.. + jsr X.BasePath.. jsr CS.RUN.ENTER.MSG bcs .99 - jsr GetNextEntry + jsr X.GetNextEntry jmp CS.RUN.LOOP .8 lda #0 @@ -508,7 +511,7 @@ CS.RUN.PRINT.BDEVEND bcs .9 .7 >LDYA ZPFileName - jsr EnterSubDirYA + jsr X.EnterSubDirYA bcs .9 jmp CS.RUN.ENTER.MSG @@ -864,7 +867,7 @@ CS.RUN.LineBufCOut CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT ldy #hFilter diff --git a/BIN/PAK.S.txt b/BIN/PAK.S.txt index 4033840d..99ee546d 100644 --- a/BIN/PAK.S.txt +++ b/BIN/PAK.S.txt @@ -4,8 +4,6 @@ NEW .OP 65C02 .OR $2000 .TF bin/pak -*-------------------------------------- -X.RESETSRCDIR .EQ 0 single pass *-------------------------------------- .INB inc/macros.i .INB inc/a2osx.i @@ -17,6 +15,7 @@ X.RESETSRCDIR .EQ 0 single pass X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 single pass *-------------------------------------- .DUMMY .OR ZPBIN diff --git a/BIN/UC.S.txt b/BIN/UC.S.txt index 9b26a189..e6b50136 100644 --- a/BIN/UC.S.txt +++ b/BIN/UC.S.txt @@ -13,6 +13,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -34,6 +35,8 @@ bPause .BS 1 bContinue .BS 1 bRecurse .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -89,7 +92,7 @@ CS.RUN inc ArgIndex bne .9 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN .99 rts @@ -133,7 +136,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .1 lda bPause bne CS.RUN.LOOP Pause... *-------------------------------------- - jsr GetEntry + jsr X.GetEntry bcs CS.RUN.LEAVE ldy #S.STAT.MODE+1 @@ -159,13 +162,13 @@ CS.RUN.LOOP ldy #S.PS.hStdIn sec .99 rts *-------------------------------------- -CS.RUN.NEXT jsr GetNextEntry +CS.RUN.NEXT jsr X.GetNextEntry bcc CS.RUN.LOOP -CS.RUN.LEAVE jsr LeaveSubDir +CS.RUN.LEAVE jsr X.LeaveSubDir bcs .90 - jsr BasePath.. + jsr X.BasePath.. jmp CS.RUN.NEXT @@ -188,7 +191,7 @@ CS.RUN.DIR lda (ZPFileName) lda (ZPFileName),y beq .8 -.1 jsr FilterMatch +.1 jsr X.IncludeMatch bcs .8 jsr CS.RUN.GetFilePath @@ -211,12 +214,12 @@ CS.RUN.DIR lda (ZPFileName) bpl .8 >LDYA ZPFileName is now lowercase - jmp EnterSubDirYA + jmp X.EnterSubDirYA .8 clc .9 rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs .8 no match, skip.... jsr CS.RUN.GetFilePath @@ -285,7 +288,7 @@ CS.RUN.GetNewPath CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT >LDA.G hFilter diff --git a/BIN/WC.S.txt b/BIN/WC.S.txt index f2086ddc..8f8dd87a 100644 --- a/BIN/WC.S.txt +++ b/BIN/WC.S.txt @@ -14,6 +14,7 @@ NEW X.ENTER.SUBDIR .EQ 0 X.COPY.TO.DEST .EQ 0 X.DELETE.SOURCE .EQ 0 +X.RESET.SRC.DIR .EQ 0 *-------------------------------------- .DUMMY .OR ZPBIN @@ -43,6 +44,8 @@ bWord .BS 1 bInWord .BS 1 bTotal .BS 1 +hFilter .BS 1 + ZS.END .ED *-------------------------------------- * File Header (16 Bytes) @@ -98,7 +101,7 @@ CS.RUN inc ArgIndex bne .9 >LDYA ZPPtr1 - jsr InitSrcDirYA + jsr X.InitSrcDirYA bcc CS.RUN .99 rts @@ -185,7 +188,7 @@ CS.RUN.LOOP ldy #S.PS.hStdIn .10 lda bPause bne CS.RUN.LOOP Pause... - jsr GetEntry + jsr X.GetEntry bcs .9 ldy #S.STAT.P.DRIVE @@ -213,11 +216,11 @@ CS.RUN.LOOP ldy #S.PS.hStdIn bra .8 -.9 jsr LeaveSubDir +.9 jsr X.LeaveSubDir bcs .90 - jsr BasePath.. -.8 jsr GetNextEntry + jsr X.BasePath.. +.8 jsr X.GetNextEntry jmp CS.RUN.LOOP .90 jsr CS.RUN.PrintTstat @@ -252,20 +255,20 @@ CS.RUN.DIR lda bRecurse beq .8 >LDYA ZPFileName - jsr EnterSubDirYA + jsr X.EnterSubDirYA jmp CS.RUN.CheckErr .8 clc rts *-------------------------------------- CS.RUN.DEV -.8 jsr GetNextEntry +.8 jsr X.GetNextEntry CS.RUN.DEV.CLC.RTS clc rts *-------------------------------------- -CS.RUN.FILE jsr FilterMatch +CS.RUN.FILE jsr X.IncludeMatch bcs CS.RUN.DEV.CLC.RTS no match, skip.... jsr CS.RUN.GetFilePath @@ -565,7 +568,7 @@ CS.RUN.PrintTstat CS.DOEVENT sec rts *-------------------------------------- -CS.QUIT jsr LeaveSubDir +CS.QUIT jsr X.LeaveSubDir bcc CS.QUIT >LDA.G hFilter diff --git a/INC/KERNEL.I.txt b/INC/KERNEL.I.txt index 262d0736..09bc6870 100644 --- a/INC/KERNEL.I.txt +++ b/INC/KERNEL.I.txt @@ -22,26 +22,25 @@ K.IRQDEV.MAX .EQ 4 Mem.Table .EQ $0800 -> $1000 *-------------------------------------- * Z80 .EQ $1000 -* Scratch512 .EQ $1100 *-------------------------------------- -hFDs .EQ $1300 K.hFD.MAX -hFDs.hName .EQ $1320 K.hFD.MAX -hFDs.oCnt .EQ $1340 K.hFD.MAX +* Tables start at $1C00 *-------------------------------------- -Flt.Table.pftLO .EQ $1360 K.FLT.MAX -Flt.Table.pftHI .EQ $1364 K.FLT.MAX -Flt.Table.cbLO .EQ $1368 K.FLT.MAX -Flt.Table.cbHI .EQ $136C K.FLT.MAX +hFDs .EQ $1D00 K.hFD.MAX +hFDs.hName .EQ $1D20 K.hFD.MAX +hFDs.oCnt .EQ $1D40 K.hFD.MAX *-------------------------------------- -S.Table.hSID .EQ $1370 K.USR.MAX -S.Table.hFile .EQ $1378 K.USR.MAX +Flt.Table.pftLO .EQ $1D60 K.FLT.MAX +Flt.Table.pftHI .EQ $1D64 K.FLT.MAX +Flt.Table.cbLO .EQ $1D68 K.FLT.MAX +Flt.Table.cbHI .EQ $1D6C K.FLT.MAX *-------------------------------------- -PS.Table.PID .EQ $1380 K.PS.MAX -PS.Table.hPS .EQ $13A0 K.PS.MAX -PS.Table.Hits .EQ $13C0 K.PS.MAX -PS.Table.Stats .EQ $13E0 K.PS.MAX +S.Table.hSID .EQ $1D70 K.USR.MAX +S.Table.hFile .EQ $1D78 K.USR.MAX *-------------------------------------- -A2osX.EndTables .EQ $1400 +PS.Table.PID .EQ $1D80 K.PS.MAX +PS.Table.hPS .EQ $1DA0 K.PS.MAX +PS.Table.Hits .EQ $1DC0 K.PS.MAX +PS.Table.Stats .EQ $1DE0 K.PS.MAX *-------------------------------------- MAN SAVE inc/kernel.i diff --git a/SHARED/X.CPMVRM.S.txt b/SHARED/X.CPMVRM.S.txt index c112ecd3..c06adc0f 100644 --- a/SHARED/X.CPMVRM.S.txt +++ b/SHARED/X.CPMVRM.S.txt @@ -2,7 +2,7 @@ NEW AUTO 3,1 .LIST OFF *-------------------------------------- -X.RESETSRCDIR .EQ 0 single pass +X.RESET.SRC.DIR .EQ 0 single pass *-------------------------------------- .DUMMY .OR ZPBIN diff --git a/SHARED/X.FILEENUM.S.txt b/SHARED/X.FILEENUM.S.txt index db9d1c87..6f96f3fa 100644 --- a/SHARED/X.FILEENUM.S.txt +++ b/SHARED/X.FILEENUM.S.txt @@ -149,13 +149,11 @@ X.InitSrcDirPtr1 >LDA.G STATBUF+S.STAT.MODE+1 and #$F0 cmp /S.STAT.MODE.DIR - bne .4 TYPE not a DIR, extract.... - - bra .5 TYPE=DIR, do not extract pattern - .ELSE - bra .4 + beq .8 TYPE=DIR, do not extract pattern .FIN + bra .4 + .1 cmp #MLI.E.INVPATH beq .11 @@ -208,7 +206,7 @@ X.InitSrcDirPtr1 sec .99 rts *-------------------------------------- - .DO X.RESETSRCDIR=1 + .DO X.RESET.SRC.DIR=1 X.ResetSrcDir jsr X.GethDIR >SYSCALL CloseDir @@ -642,5 +640,5 @@ X.GetoDIRENT >LDA.G index *-------------------------------------- MAN SAVE usr/src/shared/x.fileenum.s -LOAD usr/src/bin/cp.s +LOAD usr/src/bin/ls.s ASM diff --git a/SYS/KERNEL.S.CORE.txt b/SYS/KERNEL.S.CORE.txt index 863c251a..ccaeff99 100644 --- a/SYS/KERNEL.S.CORE.txt +++ b/SYS/KERNEL.S.CORE.txt @@ -85,7 +85,7 @@ CORE.Events jsr CORE.GetEvents >STYA pPs >LDYAI K.STACKTOP >STYA pStack - lda #Evt.Table + lda #K.S.EVT sta pEvent .1 lda (pEvent) @@ -201,7 +201,7 @@ CORE.UpdPPS tax save RC From INIT or RUN * CC * event in YA * (pEvent) *-------------------------------------- -CORE.GetEvents lda #Evt.Table +CORE.GetEvents lda #K.S.EVT sta pEvent point to start of event list stz CORE.EvtCount reset Size bit A2osX.IRQMode do we have IRQ enabled for Ticks ? @@ -306,7 +306,7 @@ CORE.Dispatch ldx #1 skip PS0 sta (pPS),y jsr CORE.PSSelect - lda #Evt.Table + lda #K.S.EVT sta pEvent Select first event in list lda CORE.EvtCount sta CORE.EvtIndex diff --git a/SYS/KERNEL.S.DEF.txt b/SYS/KERNEL.S.DEF.txt index 912bf060..b63e61c1 100644 --- a/SYS/KERNEL.S.DEF.txt +++ b/SYS/KERNEL.S.DEF.txt @@ -130,15 +130,6 @@ FOUTBuf .EQ $103 Aux * Aux $200 -> 3FD : /RAM Driver * Aux $3FE -> 3FF : IRQ Vector *-------------------------------------- -K.S.STAT .EQ $0300 S.STAT for internal kernel operations -Evt.Table .EQ $0340 K.EVT.MAX*S.EVT=4*8=32b -K.S.IOCTL .EQ $0360 9 bytes -K.MLI.PATH .EQ $0369 64+1 -K.MLI.PARAMS .EQ $03AA Main, 18 bytes min for GetFileInfo -* GetFileInfoEx/SetFileInfoEx need 1 + 2 + 48 = 51 -*-------------------------------------- -K.STACKTOP .EQ $03ED XFer !!! down to $3E0 -*-------------------------------------- *** $3F0-$3FF IRQ Handler.... *** *-------------------------------------- SYS.BASL0 .EQ $400 @@ -154,15 +145,22 @@ Mem.LastSlot .EQ $0806 *-------------------------------------- * free $1000->$1FFF = $1000 (4096) Aux *-------------------------------------- -*** Z80 Reserved $1000-10FF*** +A2osX.Main .EQ $1200 *-------------------------------------- -Z80CODE .EQ $1000 (00000h) Up To $10FF -Z80STACK .EQ $10FF (000FFh) Down to $1000 +K.S.STAT .EQ $1C00 S.STAT for internal kernel operations +K.S.EVT .EQ $1C40 K.EVT.MAX*S.EVT=4*8=32b +K.S.IOCTL .EQ $1C60 9 bytes +K.MLI.PATH .EQ $1C69 64+1 +K.MLI.PARAMS .EQ $1CAA Main, 18 bytes min for GetFileInfo +* GetFileInfoEx/SetFileInfoEx need 1 + 2 + 48 = 51 *-------------------------------------- -K.Buf256 .EQ $1100 512 bytes.... +K.STACKTOP .EQ $1CFF *-------------------------------------- -K.IOBuf .EQ $1200 ....for ReadDir +K.Buf256 .EQ $1E00 512 bytes.... *-------------------------------------- +K.IOBuf .EQ $1F00 ....for ReadDir +*-------------------------------------- +Mem.MLoMem .EQ $2000 Mem.MHiMem .EQ A2osX.SYSCALL Mem.XLoMem .EQ $1000 Mem.XHiMem .EQ $A000 diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index fbc77793..339a249d 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -22,7 +22,7 @@ Kernel.Init2 sei >LDYA PAKME.MAIN >STYA ZPInBufPtr - >LDYAI A2osX.EndTables + >LDYAI A2osX.Main jsr A2osX.Unpak >LDYA PAKME.AUX @@ -306,7 +306,7 @@ MemMgrInit >LDYAI Mem.MHiMem ldx #K.EVT.MAX*S.EVT-1 -.5 stz Evt.Table,x +.5 stz K.S.EVT,x dex bpl .5 @@ -630,20 +630,27 @@ Detect6502 ldy #0 Test 6502 BCD bug * Out: * A = Z80 Slot *-------------------------------------- -DetectZ80 ldx #Z80Code.Size +DetectZ80 ldx #Z80.300.L -.1 lda Z80Code.Start-1,x - sta Z80CODE-1,x 00000H for Z80 +.1 lda Z80.300-1,x + sta $300-1,x 0F300H for Z80 dex bne .1 + ldx #Z80.1000.L + +.2 lda Z80.1000-1,x + sta $1000-1,x 00000H for Z80 + dex + bne .2 + stz ZPPtr1 lda #$C1 sta ZPPtr1+1 -.2 sta (ZPPtr1) - lda $100D +.3 sta (ZPPtr1) to Z80..... + lda $100B .....back bmi .8 inc ZPPtr1+1 @@ -653,14 +660,31 @@ DetectZ80 ldx #Z80Code.Size clc adc #$20 - sta $100A - bra .2 + sta $302 + bra .3 .8 lda ZPPtr1+1 and #$0F clc .9 rts *-------------------------------------- +* Z80 Reserved +*-------------------------------------- +*Z80CODE .EQ $300 0F300h +*Z80STACK .EQ $3CF 0F3CFh +*-------------------------------------- +Z80.300 .HS 3200E1 LD (0E100H),A Back to 6502 + + +Z80.300.L .EQ *-Z80.300 +*-------------------------------------- +Z80.1000 .HS 31CFF3 START: LD SP,0F3CFh Init Stack + .HS 3EFF LD A,0FFH Set Flag + .HS 320B00 LD (FLAG),A + .HS C300F3 JP 0F300h + .HS 00 FLAG: .DB 0 +Z80.1000.L .EQ *-Z80.1000 +*-------------------------------------- DevMgrInit >LDYAI MSG.DEV >SYSCALL2 puts @@ -1161,7 +1185,7 @@ EvtMgrInit >LDYAI MSG.EVT stz CORE.EvtCount - lda /Evt.Table + lda /K.S.EVT sta pEvent+1 clc rts @@ -1276,14 +1300,6 @@ ZP.IsDigit.9 sec .EP Kernel.ZP.S .EQ *-Kernel.ZP *-------------------------------------- -Z80Code.Start .HS 31FF00 START: LD SP,000FFH Init Stack - .HS 3EFF LD A,0FFH Set Flag - .HS 320D00 LD (FLAG),A - .HS 3200E1 LD (0E100H),A Back to 6502 - .HS 18F3 JR START Loop - .HS 00 FLAG: .DB 0 -Z80Code.Size .EQ *-Z80Code.Start -*-------------------------------------- Mouse.OFS .HS 05070B0CFB Mouse.SIG .HS 38180120D6 *-------------------------------------- diff --git a/SYS/KERNEL.S.txt b/SYS/KERNEL.S.txt index 44243719..4065efe7 100644 --- a/SYS/KERNEL.S.txt +++ b/SYS/KERNEL.S.txt @@ -33,13 +33,15 @@ PAKME.E0 .DA E0 MAIN .DA #0 .DA MAIN.S -MAIN.B .PH A2osX.EndTables +MAIN.B .PH A2osX.Main .INB usr/src/sys/kernel.s.core .INB usr/src/sys/kernel.s.drv .INB usr/src/sys/kernel.s.pft .INB usr/src/sys/kernel.s.fs .INB usr/src/sys/kernel.s.mathf -Mem.MLoMem .EQ * + .LIST ON +MAIN.E .EQ * + .LIST OFF .EP MAIN.S .EQ *-MAIN.B