Kernel 0.93+

This commit is contained in:
Rémy GIBERT 2019-12-20 22:17:17 +01:00
parent 8aeb8be66d
commit e0b8b9dfcc
6 changed files with 55 additions and 50 deletions

Binary file not shown.

View File

@ -10,12 +10,6 @@ CL.Init >LDYAI 256
>STA.G CL.hCLBuf
.9 rts
*--------------------------------------
CL.Quit >LDA.G CL.hCLBuf
beq .9
>SYSCALL FreeMem
.9 rts
*--------------------------------------
CL.PrintPrompt >LDYA L.PS1
>SYSCALL ExpandStr

View File

@ -52,9 +52,8 @@ CMD.PUSHD >LDA.G PUSHD.STACK
cmp #PUSHD.STACK+PUSHD.STACK.MAX
beq CMD.POPD.CSYN
ldy #S.PS.hCWD
lda (pPs),y
>SYSCALL GetMemPtr
jsr GetCWD
>SYSCALL strdup
bcs CMD.POPD.CSYN
>INC.G PUSHD.STACK
@ -464,9 +463,8 @@ CMD.MD lda (ZPArgVBufPtr)
>SYSCALL MKDir
rts
*--------------------------------------
CMD.PWD ldy #S.PS.hCWD
lda (pPs),y
>SYSCALL GetMemPtr
CMD.PWD jsr GetCWD
>SYSCALL puts
rts
*--------------------------------------
@ -702,8 +700,7 @@ CMD.EXIT lda (ZPArgVBufPtr)
clc
.9 rts
*--------------------------------------
CMD.EXIT.FILE jsr CORE.StkPull
>SYSCALL freemem Code buffer
CMD.EXIT.FILE jsr CORE.StkPullFree Code buffer
ldy #S.PS.hARGV
lda (pPS),y

View File

@ -10,10 +10,6 @@ CORE.Init >LDYAI 256
>STA.G CORE.hArgVBuf
.9 rts
*--------------------------------------
CORE.Quit >LDA.G CORE.hArgVBuf
beq CORE.FUNCRESET
>SYSCALL FreeMem
CORE.FUNCRESET >LDA.G hFuncList
beq .8
@ -628,28 +624,24 @@ CORE.StkPopCtxA and #$3F
.1 jsr CORE.StkPopX
.2 jsr CORE.StkPull
>SYSCALL freemem
.2 jsr CORE.StkPullFree
.8 clc
rts
.3 jsr CORE.StkPull Get FOR sub cmd
beq .4 FOR List
jsr CORE.StkPull hVARNAME
>SYSCALL freemem
jsr CORE.StkPullFree hVARNAME
jsr CORE.StkPull hFILE/hPIPE
>SYSCALL fclose
jsr CORE.StkPullFclose hFILE/hPIPE
ldx #2 CmdPtr
jmp CORE.StkPopX
.4 jsr CORE.StkPull hVARNAME
>SYSCALL freemem
.4 jsr CORE.StkPullFree hVARNAME
jsr CORE.StkPull hFILE/hPIPE
>SYSCALL fclose
jsr CORE.StkPullFclose hFILE/hPIPE
ldx #4 ListPtr,CmdPtr
jmp CORE.StkPopX
@ -745,6 +737,16 @@ CORE.StkPullInputBufPtr
.9 rts
*--------------------------------------
CORE.StkPullFClose
jsr CORE.StkPull
>SYSCALL fclose
rts
*--------------------------------------
CORE.StkPullFree
jsr CORE.StkPull
>SYSCALL freemem
rts
*--------------------------------------
CORE.StkPull jsr CORE.StkGet
bcs .9
dey

View File

@ -13,11 +13,6 @@ HIS.Init >LDYAI HISTORY.MAX Get a buffer for History
>STA.G HIS.Index
.9 rts
*--------------------------------------
HIS.Quit >LDA.G HIS.hBuf
beq .9
>SYSCALL FreeMem
.9 rts
*--------------------------------------
HIS.Add >LDA.G HIS.hBuf
beq .9
>SYSCALL GetMemPtr

View File

@ -206,17 +206,13 @@ CS.RUN jsr CL.Init
lda #0
jsr CMD.SHIFTA Remove $0=/bin/sh
ldy #S.PS.hARGV
lda (pPS),y
>SYSCALL GetMemPtr
jsr GetArgV
jsr IO.Load
bcs CS.INIT.RTS
phx
ldy #S.PS.hARGV
lda (pPS),y
>SYSCALL GetMemPtr
plx
jsr GetArgV
jsr CORE.Load.YAX Exec Batch file
bcs CS.INIT.RTS
lda #$C0+C..
@ -336,11 +332,9 @@ CS.RUN.INTERACTIVE
>LDYA ZPCLBuf
>SYSCALL strdup
bcs .8
phx
ldy #S.PS.hARGV
lda (pPS),y
>SYSCALL GetMemPtr Y,A =ARGV
plx
jsr GetArgV Y,A =ARGV
jsr CORE.Load.YAX Exec CL
bcs .9
lda #$C0+C.CLEXEC
@ -433,11 +427,34 @@ CS.DOEVENT lda (pEvent)
.9 sec
rts
*--------------------------------------
CS.QUIT jsr HIS.Quit
jsr CL.Quit
jsr CORE.Quit
CS.QUIT jsr CORE.FUNCRESET
clc
ldy #HIS.hBuf
jsr .7
ldy #CL.hCLBuf
jsr .7
ldy #CORE.hArgVBuf
.7 lda (pData),y
beq .8
>SYSCALL FreeMem
.8 clc
rts
*--------------------------------------
GetCWD phx
ldy #S.PS.hCWD
bra GetArgV.1
*--------------------------------------
GetArgV phx
ldy #S.PS.hARGV
GetArgV.1 lda (pPS),y
>SYSCALL GetMemPtr
plx
rts
*--------------------------------------
CheckLFAfterCR ldy #S.PS.hStdIn Check for any extra LF