mirror of
https://github.com/A2osX/A2osX.git
synced 2025-02-18 15:30:43 +00:00
Kernel version 0.9 : KERNEL.S.ENV.txt, SHELL.....bugfix in ENV & CMD line params
This commit is contained in:
parent
0d5e4282f2
commit
e868cab63d
@ -8,6 +8,29 @@ AUTO 6
|
|||||||
* Y,A -> Command line (formatted & not empty)
|
* Y,A -> Command line (formatted & not empty)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Cmd.ExecYA stz Cmd.Exec.Mode
|
Cmd.ExecYA stz Cmd.Exec.Mode
|
||||||
|
|
||||||
|
pha
|
||||||
|
phy
|
||||||
|
|
||||||
|
lda #'<'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
|
ply
|
||||||
|
pla
|
||||||
|
|
||||||
|
pha
|
||||||
|
phy
|
||||||
|
>SYSCALL PPrintFYA
|
||||||
|
lda #'>'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #13
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #10
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
|
ply
|
||||||
|
pla
|
||||||
|
|
||||||
Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
|
Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
|
||||||
>STYA ZPPtr1
|
>STYA ZPPtr1
|
||||||
phx
|
phx
|
||||||
@ -49,6 +72,17 @@ Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
|
|||||||
pla
|
pla
|
||||||
>SYSCALL FreeMemA
|
>SYSCALL FreeMemA
|
||||||
|
|
||||||
|
lda #'|'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
>LDYA L.ARGS
|
||||||
|
>SYSCALL PPrintFYA
|
||||||
|
lda #'|'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #13
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #10
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
>LDYA L.CMDS
|
>LDYA L.CMDS
|
||||||
>STYA ZPPtr2
|
>STYA ZPPtr2
|
||||||
|
|
||||||
@ -63,15 +97,17 @@ Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
|
|||||||
tay
|
tay
|
||||||
|
|
||||||
.2 lda CMD,y
|
.2 lda CMD,y
|
||||||
.3 cmp (ZPPtr2),y
|
cmp (ZPPtr2),y
|
||||||
bne .4
|
bne .4
|
||||||
dey
|
dey
|
||||||
bne .2
|
bne .2
|
||||||
|
|
||||||
jsr .5 Found an internal Cmd...
|
jsr .5 Found an internal Cmd...
|
||||||
bcs .31
|
bcs .3
|
||||||
|
|
||||||
lda #0
|
lda #0
|
||||||
.31 ldy #S.PS.RC
|
|
||||||
|
.3 ldy #S.PS.RC
|
||||||
sta (pPS),y
|
sta (pPS),y
|
||||||
rts
|
rts
|
||||||
|
|
||||||
@ -86,7 +122,21 @@ Cmd.ExecYA.1 >SYSCALL ExpandPStrYA
|
|||||||
inc ZPPtr2+1
|
inc ZPPtr2+1
|
||||||
bra .1
|
bra .1
|
||||||
|
|
||||||
.5 jmp (J.INTCMDS,x)
|
.5 phx
|
||||||
|
|
||||||
|
lda #'{'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
>LDYA L.ARGS
|
||||||
|
>SYSCALL PPrintFYA
|
||||||
|
lda #'}'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #13
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #10
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
|
plx
|
||||||
|
jmp (J.INTCMDS,x)
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
Cmd.Exec.EXT ldy #1
|
Cmd.Exec.EXT ldy #1
|
||||||
lda CMD,y
|
lda CMD,y
|
||||||
@ -344,7 +394,7 @@ Cmd.Exec.SET lda ARGS
|
|||||||
>PUSHW ZPPTR1 Push name
|
>PUSHW ZPPTR1 Push name
|
||||||
|
|
||||||
>LDYA L.MSG.PRINTENV
|
>LDYA L.MSG.PRINTENV
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
lda ZPPTR2
|
lda ZPPTR2
|
||||||
@ -392,7 +442,7 @@ Cmd.Exec.SETVAR tax
|
|||||||
>PUSHYA push value
|
>PUSHYA push value
|
||||||
>PUSHW L.ARGS push name
|
>PUSHW L.ARGS push name
|
||||||
>LDYA L.MSG.PRINTENV
|
>LDYA L.MSG.PRINTENV
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
|
|
||||||
.8 clc
|
.8 clc
|
||||||
.9 rts
|
.9 rts
|
||||||
|
@ -38,7 +38,7 @@ ERR.Print >PUSHA Save EC for PrintF
|
|||||||
|
|
||||||
.8 >PUSHW ZPPTR1
|
.8 >PUSHW ZPPTR1
|
||||||
>LDYA L.MSG.ERROR
|
>LDYA L.MSG.ERROR
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MAN
|
MAN
|
||||||
|
@ -173,7 +173,9 @@ HIS.SetBuf jsr CmdBuffer.CLR
|
|||||||
dey
|
dey
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
jmp CmdBuffer.PRINT
|
>LDYA pData
|
||||||
|
>SYSCALL PPrintfYA
|
||||||
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
HIS.Quit ldy #hCmdHistory
|
HIS.Quit ldy #hCmdHistory
|
||||||
lda (pData),y
|
lda (pData),y
|
||||||
|
@ -51,7 +51,7 @@ TXT.ReadFile >PUSHWI UsrBuf256+1
|
|||||||
|
|
||||||
>PUSHW pData
|
>PUSHW pData
|
||||||
>LDYA L.MSG.ECHO
|
>LDYA L.MSG.ECHO
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
.8 clc
|
.8 clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -90,7 +90,7 @@ CS.INIT.INTERACTIVE
|
|||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
>LDYA L.MSG.GREETINGS
|
>LDYA L.MSG.GREETINGS
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
|
|
||||||
lda (pPs)
|
lda (pPs)
|
||||||
ora #S.PS.F.EVENT Now accept events
|
ora #S.PS.F.EVENT Now accept events
|
||||||
@ -394,12 +394,21 @@ PrintPrompt >LDYA L.ENV.PS1
|
|||||||
pla
|
pla
|
||||||
>SYSCALL FreeMemA
|
>SYSCALL FreeMemA
|
||||||
>LDYA L.MSG.PROMPT
|
>LDYA L.MSG.PROMPT
|
||||||
>SYSCALL CPrintFYA
|
>SYSCALL PPrintFYA
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* Remove extra SPACE & comment
|
* Remove extra SPACE & comment
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CmdBuffer.Normalize
|
CmdBuffer.Normalize
|
||||||
|
>LDYA pData
|
||||||
|
>SYSCALL PPrintFYA
|
||||||
|
lda #'\'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #13
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #10
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
>LDYA pData
|
>LDYA pData
|
||||||
>STYA ZPPtr1
|
>STYA ZPPtr1
|
||||||
|
|
||||||
@ -438,8 +447,18 @@ CmdBuffer.Normalize
|
|||||||
bne .3 no more space, add next word...
|
bne .3 no more space, add next word...
|
||||||
|
|
||||||
.8 tya
|
.8 tya
|
||||||
sta (pData)
|
sta (pData)
|
||||||
.9 rts
|
|
||||||
|
.9 >LDYA pData
|
||||||
|
>SYSCALL PPrintFYA
|
||||||
|
lda #'%'
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #13
|
||||||
|
>SYSCALL PutCA
|
||||||
|
lda #10
|
||||||
|
>SYSCALL PutCA
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
CmdBuffer.Normalize.Next
|
CmdBuffer.Normalize.Next
|
||||||
txa
|
txa
|
||||||
@ -451,15 +470,6 @@ CmdBuffer.Normalize.Next
|
|||||||
.1 lda (ZPPtr1)
|
.1 lda (ZPPtr1)
|
||||||
.8 rts
|
.8 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
CmdBuffer.PRINT ldy #0
|
|
||||||
.1 iny
|
|
||||||
lda (pData),y
|
|
||||||
>SYSCALL PutCA
|
|
||||||
tya
|
|
||||||
cmp (pData)
|
|
||||||
bne .1
|
|
||||||
rts
|
|
||||||
*--------------------------------------
|
|
||||||
CmdBuffer.CLR jsr CmdBuffer.DEL
|
CmdBuffer.CLR jsr CmdBuffer.DEL
|
||||||
bne CmdBuffer.CLR
|
bne CmdBuffer.CLR
|
||||||
rts
|
rts
|
||||||
@ -495,13 +505,13 @@ CMDS >PSTR "CD"
|
|||||||
>PSTR "TIME"
|
>PSTR "TIME"
|
||||||
.HS 00
|
.HS 00
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MSG.GREETINGS >CSTR "\r\nA2osX-Shell\r\n\r\n"
|
MSG.GREETINGS >PSTR "\r\nA2osX-Shell\r\n\r\n"
|
||||||
MSG.PROMPT >CSTR "%S$ "
|
MSG.PROMPT >PSTR "%S$ "
|
||||||
MSG.ECHO >CSTR ">%S\r\n"
|
MSG.ECHO >PSTR ">%S\r\n"
|
||||||
MSG.ERROR >CSTR "Err:%S [%h]\r\n"
|
MSG.ERROR >PSTR "Err:%S [%h]\r\n"
|
||||||
|
MSG.PRINTENV >PSTR "%S=%S\r\n"
|
||||||
FMT.DATE >PSTR "%A, %B %d %Y"
|
FMT.DATE >PSTR "%A, %B %d %Y"
|
||||||
FMT.TIME >PSTR "%H:%M:%S (%I:%M:%S%p)"
|
FMT.TIME >PSTR "%H:%M:%S (%I:%M:%S%p)"
|
||||||
MSG.PRINTENV >CSTR "%S=%S\r\n"
|
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.INB /A2OSX.SRC/X.ERRORS.S
|
.INB /A2OSX.SRC/X.ERRORS.S
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -383,39 +383,35 @@ ENV.SysVarsJmp .DA ENV.SysVarsArgs
|
|||||||
.DA ENV.SysVarsPID
|
.DA ENV.SysVarsPID
|
||||||
.DA ENV.SysVarsCPID
|
.DA ENV.SysVarsCPID
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
ENV.SysVarsArgs
|
ENV.SysVarsArgs lda #1
|
||||||
|
jsr K.GetArgA
|
||||||
lda #1
|
|
||||||
jsr K.GetArgA Trash Ptr1
|
|
||||||
bcs ENV.SysVarsExit2
|
bcs ENV.SysVarsExit2
|
||||||
|
|
||||||
ldx KrnBuf256
|
>STYA ZPPtr3
|
||||||
|
|
||||||
.1 lda (ZPPtr1)
|
|
||||||
bcs ENV.SysVarsExit
|
|
||||||
|
|
||||||
ldy #0
|
.1 lda (ZPPtr3)
|
||||||
|
beq ENV.SysVarsExit2
|
||||||
|
|
||||||
.2 iny
|
.2 jsr ENV.AppendPtr3ToBuf
|
||||||
inx
|
lda (ZPPtr3)
|
||||||
beq ENV.SysVarsExit make sure not overlapping buf 256
|
sec
|
||||||
|
adc ZPPtr3
|
||||||
lda (ZPPtr1),y
|
sta ZPPtr3
|
||||||
sta KrnBuf256,x
|
|
||||||
tya
|
|
||||||
cmp (ZPPtr1)
|
|
||||||
bne .2
|
|
||||||
|
|
||||||
adc ZPPtr1 CS from beq .2
|
|
||||||
sta ZPPtr1
|
|
||||||
bcc .3
|
bcc .3
|
||||||
inc ZPPtr1+1
|
|
||||||
.3 lda #' '
|
|
||||||
inx
|
|
||||||
beq ENV.SysVarsExit make sure not overlapping buf 256
|
|
||||||
sta KrnBuf256,x
|
|
||||||
bra .1
|
|
||||||
|
|
||||||
|
inc ZPPtr3+1
|
||||||
|
|
||||||
|
.3 lda (ZPPtr3)
|
||||||
|
beq ENV.SysVarsExit2
|
||||||
|
|
||||||
|
ldx KrnBuf256
|
||||||
|
inx
|
||||||
|
beq ENV.SysVarsExit2 make sure not overlapping buf 256
|
||||||
|
stx KrnBuf256
|
||||||
|
lda #' '
|
||||||
|
sta KrnBuf256,x
|
||||||
|
bra .2
|
||||||
|
*--------------------------------------
|
||||||
ENV.SysVarsArgC jsr K.GetArgC Trash Ptr1
|
ENV.SysVarsArgC jsr K.GetArgC Trash Ptr1
|
||||||
bra ENV.SysVarsA
|
bra ENV.SysVarsA
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user