Kernel 0.93+

This commit is contained in:
Rémy GIBERT 2020-01-14 16:26:24 +01:00
parent 8ba8817cc1
commit 3fd1609f94
5 changed files with 31 additions and 31 deletions

Binary file not shown.

View File

@ -166,21 +166,16 @@ CMD.SET lda (ZPArgVBufPtr)
>STYA ZPPTR1
.1 lda (ZPPTR1)
beq .9 Ending 0 ?
beq .8 Ending 0 ?
>PUSHW L.MSG.PRINTENV
>LDYA ZPPTR1
>SYSCALL puts
bcs .9
>PUSHW ZPPTR1 Push name
jsr GetPtr1NextString
>PUSHW ZPPTR1 Push value
jsr GetPtr1NextString
>PUSHBI 4
>SYSCALL printf2
bcc .1
bra .1
.8
* clc
.9 rts
*--------------------------------------
* SET +X VAR = VALUE1 op VALUE2 op VALUE3 ...
@ -262,15 +257,7 @@ CMD.SET.GET >LDYA ZPVarNamePtr
clc
rts
.1 pha
>PUSHW L.MSG.PRINTENV
>PUSHW ZPVarNamePtr push name
pla
>PUSHYA push value
>PUSHBI 4
>SYSCALL printf2
.1 >SYSCALL puts
rts
*--------------------------------------
CMD.SET.EXEC jsr CORE.ArgV.NextChar skip "`"

View File

@ -119,7 +119,6 @@ L.MSG.ECHOCRLF .DA MSG.ECHOCRLF
L.MSG.BATCHLINE .DA MSG.BATCHLINE
L.MSG.BATCHERR .DA MSG.BATCHERR
L.MSG.ERROR .DA MSG.ERROR
L.MSG.PRINTENV .DA MSG.PRINTENV
L.MSG.PID .DA MSG.PID
L.FMT.DATE .DA FMT.DATE
L.FMT.Long .DA FMT.Long
@ -569,7 +568,6 @@ MSG.BATCHLINE .AZ "%s\r\n"
MSG.BATCHERR .AZ "%s^\r\nLine #%D:"
MSG.ERROR .AS "[$%h]:%S."
MSG.ECHOCRLF .AZ "\r\n"
MSG.PRINTENV .AZ "%s = %s\r\n"
MSG.PID .AZ "PID=%d\r\n"
FMT.DATE .AZ "%A, %B %d %Y %H:%M:%S"
FMT.Long .AZ "%L"

View File

@ -88,9 +88,11 @@ K.ExpandStr stz ENV.hMem Reset Intermediate string...
.40 jsr ENV.ExpandStrVar
bcc .70
.50 jsr ENV.FindVarP1
bcs .70
jsr ENV.NextEnvP3
jsr ENV.NextEnvP3Y Skip NAME=
jsr ENV.AddP3ToBuf
.70 ldy #$ff
@ -242,6 +244,7 @@ K.PutEnv >STYA ZPPtr2 NAME=VALUE
.1 lda (ZPPtr2),y copy NAME to K.Buf256
beq .9
cmp #'='
beq .2
@ -337,6 +340,9 @@ K.SetEnv.I jsr K.UnsetEnv.I
sta (ZPPtr3),y
bne .23
lda #'='
sta (ZPPtr3),y
jsr ENV.NextEnvP3Y
ldy #$ff
@ -364,10 +370,11 @@ K.SetEnv.I jsr K.UnsetEnv.I
* CS : not found
*\--------------------------------------
K.GetEnv >STYA ZPPtr1
jsr ENV.FindVarP1
bcs .9
jsr ENV.NextEnvP3 Skip NAME
jsr ENV.NextEnvP3Y Skip NAME=
clc just in case ADC in NextEnvPtr3 disturb CC
.9 >LDYA ZPPtr3 \0
@ -387,7 +394,7 @@ K.UnsetEnv >STYA ZPPtr1 Store VAR Name
K.UnsetEnv.I jsr ENV.FindVarP1
bcs K.UnsetEnv.I.8 not found, quit
jsr ENV.DelVarP3 Ptr3 -> ENVNAME
jsr ENV.DelVarP3 Ptr3 -> NAME=VALUE
K.UnsetEnv.I.8 clc
K.UnsetEnv.I.9 rts
*--------------------------------------
@ -513,7 +520,7 @@ ENV.StrVarsSession
* CC: Found
* Y = NAME len
* ZPPtr1 -> NAME
* ZPPtr3 -> ENV.NAME
* ZPPtr3 -> NAME=VALUE
* CS: Not Found
* ZPPtr1 -> NAME
* ZPPtr3 -> PTR to Ending 0
@ -522,24 +529,28 @@ ENV.FindVarP1 jsr ENV.InitEnvP3 Store ENV
.1 lda (ZPPtr3)
beq .9 end of ENV
ldy #$ff
.2 iny
lda (ZPPtr1),y
beq .3
jsr SHARED.IsIDValid
bcs .3
cmp (ZPPtr3),y
beq .2
bra .4
.3 lda (ZPPtr3),y
cmp #'='
bne .4
clc
rts
.4 jsr ENV.NextEnvP3x2 Skip NAME & VALUE
.4 jsr ENV.NextEnvP3 Skip NAME=VALUE
bra .1
.9 sec
@ -551,7 +562,7 @@ ENV.FindVarP1 jsr ENV.InitEnvP3 Store ENV
*--------------------------------------
ENV.DelVarP3 >LDYA ZPPtr3 save actual Ptr
>STYA ZPPtr4
jsr ENV.NextEnvP3x2 Skip NAME & VALUE
jsr ENV.NextEnvP3 Skip NAME=VALUE
.1 ldy #$ff
@ -577,8 +588,6 @@ ENV.InitEnvP3 ldy #S.PS.hENV
ENV.InitEnvP3.RTS
rts
*--------------------------------------
ENV.NextEnvP3x2 jsr ENV.NextEnvP3
*--------------------------------------
ENV.NextEnvP3 jsr ENV.GetP3LenY
*--------------------------------------
ENV.NextEnvP3Y tya

View File

@ -80,6 +80,12 @@ SHARED.TXTPTR.GetY
sta SETREADAUX
rts
*--------------------------------------
SHARED.FORPNT.PutY
sta CLRWRITEAUX
sta (FORPNT),y
sta SETWRITEAUX
rts
*--------------------------------------
SHARED.TXTPTR.GetNext
sta CLRREADAUX
lda (TXTPTR)