From 8ba8817cc15ee6f83f5d38614d7b38a5bb152e6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Tue, 14 Jan 2020 08:40:01 +0100 Subject: [PATCH] Kernel 0.93+ --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes SYS/KERNEL.S.DEF.txt | 1 + SYS/KERNEL.S.ENV.txt | 48 +++++++++++++++++++++++++++++++++++---- SYS/KERNEL.S.INIT.txt | 9 ++++++-- 4 files changed, 51 insertions(+), 7 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index ea2876263db1672f88564b0a37e98fc52a106769..5bb19e4f88b4925494d54ae6ef257ce7700d511b 100644 GIT binary patch delta 12901 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 diff --git a/SYS/KERNEL.S.DEF.txt b/SYS/KERNEL.S.DEF.txt index 8f1eaec8..bbd52e4e 100644 --- a/SYS/KERNEL.S.DEF.txt +++ b/SYS/KERNEL.S.DEF.txt @@ -2,6 +2,7 @@ NEW AUTO 3,1 *-------------------------------------- AUXPIPE .EQ 1 +AUXENV .EQ 0 *-------------------------------------- ZPKERNEL .EQ $0 *-------------------------------------- diff --git a/SYS/KERNEL.S.ENV.txt b/SYS/KERNEL.S.ENV.txt index d997bc71..1cbfd218 100644 --- a/SYS/KERNEL.S.ENV.txt +++ b/SYS/KERNEL.S.ENV.txt @@ -239,16 +239,20 @@ ENV.Search.YA >STYA .4+1 K.PutEnv >STYA ZPPtr2 NAME=VALUE ldy #0 + .1 lda (ZPPtr2),y copy NAME to K.Buf256 beq .9 cmp #'=' beq .2 + sta K.Buf256,y iny bne .1 + .9 lda #E.SYN sec rts + .2 lda #0 sta K.Buf256,y @@ -277,6 +281,7 @@ K.SetEnv.I jsr K.UnsetEnv.I lda #1 sta ZPPtr4 stz ZPPtr4+1 ZPPtr4 = ENVSIZE = 1 + .10 lda (ZPPtr3) End of ENV beq .15 jsr ENV.GetP3LenY @@ -285,9 +290,11 @@ K.SetEnv.I jsr K.UnsetEnv.I bra .10 .15 ldy #$ff + .16 iny lda (ZPPtr1),y bne .16 + jsr ENV.NextEnvP4Y ZPPtr4 = ENVSIZE + VAR ldy #$ff @@ -295,10 +302,13 @@ K.SetEnv.I jsr K.UnsetEnv.I .19 iny lda (ZPPtr2),y bne .19 + jsr ENV.NextEnvP4Y ZPPtr4 = ENVSIZE + VALUE lda ZPPtr4 beq .20 + inc ZPPtr4+1 + .20 ldy #S.PS.ENVPAGECNT lda (pPs),y cmp ZPPtr4+1 @@ -307,6 +317,7 @@ K.SetEnv.I jsr K.UnsetEnv.I lda ZPPtr4+1 jsr ENV.Dup.A bcs .9 + pha ldy #S.PS.hENV lda (pPs),y @@ -318,11 +329,14 @@ K.SetEnv.I jsr K.UnsetEnv.I dey S.PS.ENVPAGECNT sta (pPs),y bra .1 Start over + .22 ldy #$ff + .23 iny lda (ZPPtr1),y sta (ZPPtr3),y bne .23 + jsr ENV.NextEnvP3Y ldy #$ff @@ -352,8 +366,10 @@ K.SetEnv.I jsr K.UnsetEnv.I K.GetEnv >STYA ZPPtr1 jsr ENV.FindVarP1 bcs .9 + jsr ENV.NextEnvP3 Skip NAME clc just in case ADC in NextEnvPtr3 disturb CC + .9 >LDYA ZPPtr3 \0 rts */-------------------------------------- @@ -551,7 +567,12 @@ ENV.DelVarP3 >LDYA ZPPtr3 save actual Ptr *-------------------------------------- ENV.InitEnvP3 ldy #S.PS.hENV lda (pPs),y + .DO AUXENV=1 + ldx #SYS.GetStkObjPtr + jsr K.SYSCALL2 + .ELSE jsr K.GetMemPtr + .FIN >STYA ZPPtr3 Store ENV ENV.InitEnvP3.RTS rts @@ -609,31 +630,48 @@ ENV.AddAToBuf ldx ENV.BufLen *-------------------------------------- ENV.Dup ldy #S.PS.ENVPAGECNT lda (pPs),y + ENV.Dup.A sta .8+1 Store target page Count ldy #0 jsr K.GetMem bcs .9 + >STYA .2+1 Target Buffer phx save hMem jsr Mem.SetOwner Set Ownership - ldy #S.PS.hENV - lda (pPs),y - jsr K.GetMemPtr - >STYA .1+1 + ldy #S.PS.ENVPAGECNT get SOURCE page count lda (pPs),y tax + + iny #S.PS.hENV + lda (pPs),y + + .DO AUXENV=1 + sta SETREADAUX + sta SETWRITEAUX + .FIN + + jsr K.GetMemPtr + >STYA .1+1 + ldy #0 + .1 lda $ffff,y SELF MODIFIED .2 sta $ffff,y SELF MODIFIED iny bne .1 + inc .1+2 inc .2+2 dex bne .1 -.8 ldx #$ff SELF MODIFIED Target Page Count +.8 .DO AUXENV=1 + sta CLRREADAUX + sta CLRWRITEAUX + .FIN + ldx #$ff SELF MODIFIED Target Page Count pla hMem clc .9 rts diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index 19feae0c..93b96bab 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -1000,7 +1000,12 @@ TskMgrInit >LDYAI MSG.TSK >SYSCALL2 puts >LDYAI K.ENV.SIZE get a buffer for ENV + .DO AUXENV=1 + ldx #SYS.NewStkObj + jsr K.SYSCALL2.AUX Buffer in AUX mem + .ELSE jsr K.GetMem + .FIN bcs EvtMgrInit.RTS >STYA ZPPtr1 ldy #S.PS.ENVPAGECNT @@ -1008,8 +1013,8 @@ TskMgrInit >LDYAI MSG.TSK sta (pPs),y txa -* ldy #S.PS.hENV - iny + + iny #S.PS.hENV sta (pPs),y lda #0 sta (ZPPtr1) make sure blank!!