Kernel 0.93+

This commit is contained in:
Rémy GIBERT 2019-11-28 23:06:22 +01:00
parent 0c83cbab62
commit 54e50b61ce
6 changed files with 59 additions and 41 deletions

Binary file not shown.

View File

@ -34,6 +34,9 @@ FilterMatch >LDA.G index
>LDYA ZPPtr2 CI compare
>SYSCALL strupr
>LDYA ZPFileName
>SYSCALL strupr
.10 lda (ZPPtr2) Get first pattern byte
beq .8 Match always if empty
@ -568,5 +571,5 @@ GetoDIRENT ldy #index
*--------------------------------------
MAN
SAVE USR/SRC/BIN/X.FILEENUM.S
LOAD USR/SRC/BIN/CP.S
LOAD USR/SRC/BIN/LS.S
ASM

View File

@ -33,7 +33,7 @@ XDOS.MLI cld no decimal.
and #$1F
tax
lda (A3L),y check result to see if valid command #
cmp scnums,x
cmp XDOS.CmdNums,x
bne scnerr
iny index to call spec parm list.
@ -45,13 +45,13 @@ XDOS.MLI cld no decimal.
pla
sta A3L
* ldy #$00
lda pcntbl,x make sure parameter list has the correct # of parameters.
lda XDOS.ParamCnt,x make sure parameter list has the correct # of parameters.
beq goclock clock has 0 parameters.
cmp (A3L) ,y
bne scperr error if wrong count.
lda scnums,x get call # again
lda XDOS.CmdNums,x get call # again
cmp #MLIQUIT is it quit?
beq special if so, then call quit dispatcher
@ -244,7 +244,7 @@ sysdeath1 tax death error code.
*--------------------------------------
* ProDOS Block File Manager
*--------------------------------------
XDOS.bfmgr lda disptch,x translate into command address.
XDOS.bfmgr lda XDOS.CmdFlags,x translate into command address.
asl bit 7 indicates pathname to process
sta cmdtemp
and #$3F bit 6 is refnum, 5 is time to process

View File

@ -734,7 +734,7 @@ sp_bufptr .HS 0000 data buffer
*--------------------------------------
* data tables
*--------------------------------------
scnums .HS D3D4D500 table of valid mli command numbers.
XDOS.CmdNums .HS D3D4D500 table of valid mli command numbers.
.HS 40410000
.HS 808182
.HS 65
@ -742,7 +742,7 @@ scnums .HS D3D4D500 table of valid mli command numbers.
.HS 00
.HS D0D1D2
pcntbl .HS 020202FF parameter counts for the calls
XDOS.ParamCnt .HS 020202FF parameter counts for the calls
.HS 0201FFFF
.HS 030300
.HS 04
@ -750,36 +750,42 @@ pcntbl .HS 020202FF parameter counts for the calls
.HS FF
.HS 020202
cmdtable .DA XDOS.Create
.DA XDOS.Destroy
.DA XDOS.Rename
.DA XDOS.SetFileInfo
.DA XDOS.GetFileInfo
.DA XDOS.Online
.DA XDOS.SetPrefix
.DA XDOS.GetPrefix
.DA XDOS.Open
.DA XDOS.NewLine
.DA XDOS.Read
.DA XDOS.Write
.DA XDOS.Close
.DA XDOS.Flush
.DA XDOS.SetMark
.DA XDOS.GetMark
.DA XDOS.SetEOF
.DA XDOS.GetEOF
.DA XDOS.SetBuf
.DA XDOS.GetBuf
.DA XDOS.SetFileInfoEx
.DA XDOS.GetFileInfoEx
* corresponding command function bytes
disptch .HS A0A1A2A3
XDOS.CmdFlags .HS A0A1A2A3
.HS 84050607
.HS 88494A4B
.HS 2C2D4E4F
.HS 50515253
.HS 9495
cmdtable .DA XDOS.Create
.DA XDOS.Destroy
.DA XDOS.Rename
.DA XDOS.SetFileInfo
.DA XDOS.GetFileInfo
.DA XDOS.Online
.DA XDOS.SetPrefix
.DA XDOS.GetPrefix
.DA XDOS.Open
.DA XDOS.NewLine
.DA XDOS.Read
.DA XDOS.Write
.DA XDOS.Close
.DA XDOS.Flush
.DA XDOS.SetMark
.DA XDOS.GetMark
.DA XDOS.SetEOF
.DA XDOS.GetEOF
.DA XDOS.SetBuf
.DA XDOS.GetBuf
.DA XDOS.SetFileInfoEx
.DA XDOS.GetFileInfoEx
dinctbl .HS 0100000200 table to increment directory usage/eof counts
.DO LOWERCASE=0

View File

@ -391,7 +391,7 @@ K.ReadDir.ADDF
bne .1
*--------------------------------------
K.ReadDir.AddAccess
ldy CORE.FSID
lda CORE.FSID
sta K.S.STAT+S.STAT.FSID
ldy #$1E ProDOS Access

View File

@ -196,14 +196,14 @@ KConfigLoad >LDYAI MSG.KCREAD
jsr MLI
.DA #MLIGETFILEINFOEX
.DA MLIGETFILEINFOEX00
bcs .1
>LDYAI MSG.PRODOSFX
jsr PrintFYA
bcc .1
cmp #MLI.E.BADCALL
beq .2
inc CORE.FSID
.1 inc CORE.FSID
bra .9
.1 jsr MLI
.2 jsr MLI
.DA #MLIOPEN
.DA MLIOPEN00
bcs .9
@ -222,12 +222,21 @@ KConfigLoad >LDYAI MSG.KCREAD
pla
plp
bcs .9
>LDYAI MSG.KCREAD.OK
jsr PrintFYA
rts
bra .8
.9 >LDYAI MSG.KCREAD.KO
jsr PrintFYA
rts
.8 lda CORE.FSID
beq .99
>LDYAI MSG.PRODOSFX
jsr PrintFYA
.99 rts
*--------------------------------------
* INIT3 Subs
*--------------------------------------
@ -1086,10 +1095,10 @@ TClock.SIG.Cnt .EQ *-TClock.SIG
*--------------------------------------
MSG.Init2 .AZ "A2osX[Stage2]:Init\nRelocating Kernel...\n"
MSG.HZ .AZ "Kernel SYS Timer Set For %d0 hz Machine.\n"
MSG.PRODOSFX .AS "Running under ProDOS FX! Enabling lowercase mode.\n"
MSG.KCREAD .AZ "Reading Kernel Config File..."
MSG.KCREAD.OK .AZ "OK\n"
MSG.KCREAD.KO .AZ "\nError While Reading Kernel Config File, Using Default.\n"
MSG.PRODOSFX .AZ "!!!Running under ProDOS.FX!!! Enabling lowercase mode.\n"
MSG.Init2.OK .AZ "A2osX[Stage2]:Complete.\n"
*--------------------------------------
SYSSCREEN.TOP .AZ "A2osX 0.93 Console"