Kernel Rewrite #6.2

This commit is contained in:
Rémy GIBERT 2016-06-24 08:02:32 +02:00
parent 1de9550760
commit 448a4c2133
10 changed files with 19 additions and 25 deletions

Binary file not shown.

Binary file not shown.

View File

@ -86,7 +86,8 @@ CS.INIT ldy #S.PS.hARGS
>SYSCALL SYS.PStrCat
sta hDIRPATH
.3 >SYSCALL SYS.ListDirInitA
.3 >SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.ListDirInitYA
bcs .99
ldy #hS.LISTDIR
sta (pData),y

View File

@ -86,14 +86,11 @@ CS.INIT >LDYA L.LIBSTR
.1 ldy #S.PS.hPREFIX
lda (pPs),y
.3 pha
>SYSCALL SYS.CheckPrefixA is it a existing directory?
bcs .4 no, let ListDirInitA extract pattern
pla
pha
>SYSCALL SYS.GetMemPtrA
.3 >SYSCALL SYS.GetMemPtrA
>STYA ZPPtr1
>SYSCALL SYS.CheckPrefixYA is it a existing directory?
bcs .4 no, let ListDirInitYA extract pattern
lda (ZPPtr1)
tay
lda #'/'
@ -106,8 +103,8 @@ CS.INIT >LDYA L.LIBSTR
lda #'*'
sta (ZPPtr1),y
.4 pla
>SYSCALL SYS.ListDirInitA
.4 >LDYA ZPPtr1
>SYSCALL SYS.ListDirInitYA
bcs .9
ldy #hS.LISTDIR
sta (pData),y

View File

@ -65,7 +65,8 @@ CS.INIT ldy #S.PS.hARGS
ldy #hDirPath
sta (pData),y
.3 >SYSCALL SYS.ListDirInitA
.3 >SYSCALL SYS.GetMemPtrA
>SYSCALL SYS.ListDirInitYA
bcs .99
ldy #hS.LISTDIR
sta (pData),y

View File

@ -236,12 +236,11 @@ SYS.GetPSByIDA .EQ $98
SYS.Sleep .EQ $9C
*--------------------------------------
SYS.CheckPrefixA .EQ $A0
SYS.CheckPrefixYA .EQ $A0
SYS.FileSearch .EQ $A2
SYS.LoadFileYA .EQ $A6
SYS.ListDirInitA .EQ $A8
SYS.ListDirInitYA .EQ $AA
SYS.ListDirNextA .EQ $AC
SYS.ListDirCloseA .EQ $AE

View File

@ -243,8 +243,8 @@ EXEC.CMD.CD.C >SYSCALL SYS.GetMemPtrA
sta (ZPPTR3),y
tya
sta (ZPPTR3)
.4 lda hNEWPATH
>SYSCALL SYS.CheckPrefixA
.4 >LDYA ZPPTR3
>SYSCALL SYS.CheckPrefixYA
bcs .98
ldy #S.PS.hPREFIX
lda (pPs),y

View File

@ -7,7 +7,6 @@ AUTO 6
*--------------------------------------
* PUBLIC
*--------------------------------------
S.CheckPrefixA jsr S.GetMemPtrA
S.CheckPrefixYA >STYA MLICALL.PARAMS+1
>STYA ZPQuickPtr1
lda (ZPQuickPtr1)
@ -183,16 +182,13 @@ S.LoadFile.hExp .BS 1
S.LoadFile.hMem .BS 1
S.LoadFile.Len .BS 2
*--------------------------------------
* S.ListDirInitA
* S.ListDirInitYA
* in :
* A = PATH (PSTR) /DIR,/DIR/*.?s
* Y,A = PSTR /DIR,/DIR/*.?s
* out :
* A = hMem of Dir Listing
*--------------------------------------
S.ListDirInitA
jsr S.GetMemPtrA
S.ListDirInitYA
>STYA R.BX Store path
S.ListDirInitYA >STYA R.BX Store path
stz TmpFileName Reset File.Pattern

View File

@ -97,11 +97,11 @@ KERNEL.SYSCALL .DA S.GetMem $00
.DA S.Sleep
.DA 0
*--------------------------------------
.DA S.CheckPrefixA $A0
.DA S.CheckPrefixYA $A0
.DA S.FileSearch
.DA 0
.DA S.LoadFileYA
.DA S.ListDirInitA
.DA 0
.DA S.ListDirInitYA
.DA S.ListDirNextA
.DA S.ListDirCloseA

View File

@ -217,6 +217,7 @@ A2osX.BE00.END .EQ *
A2osX.D001 .EQ *
.PH $D000
.INB SYS/KERNEL.S.JMP
.INB SYS/KERNEL.S.RUN
.INB SYS/KERNEL.S.STR
.INB SYS/KERNEL.S.CIO
.INB SYS/KERNEL.S.FIO
@ -238,7 +239,6 @@ A2osX.D002.END .EQ *
*--------------------------------------
A2osX.E000 .EQ *
.PH $E000
.INB SYS/KERNEL.S.RUN
.INB SYS/KERNEL.S.IRQ
.INB SYS/KERNEL.S.MEM
.INB SYS/KERNEL.S.BIN