duskos

dusk os fork
git clone git://git.alexwennerberg.com/duskos
Log | Files | Refs | README | LICENSE

commit 84c50f70c65ae58275ba69da4905a7905f47e383
parent 1414b9cb2c0c446a65f27b6c2302097705f9a88d
Author: Virgil Dupras <hsoft@hardcoded.net>
Date:   Mon, 12 Jun 2023 13:17:49 -0400

rpi: fix broken [@], and [!], when they were used with offsets

Diffstat:
Mfs/xcomp/arm/rpi/kernel.fs | 1+
Mfs/xcomp/rpiboot.fs | 13+++++++++----
2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/fs/xcomp/arm/rpi/kernel.fs b/fs/xcomp/arm/rpi/kernel.fs @@ -638,6 +638,7 @@ pc to L1 ( operand -- operand-rn=r0 ) xdup, setrd0) rTOP rdn) ,) pushret, wcall, 32b) wcall, @, popret, setrn0) rTOP rdn) ,) + bic) rTOP rdn) $3f i) ,) \ clear offset+imm flags exit, xcode [@], ( operand -- ) diff --git a/fs/xcomp/rpiboot.fs b/fs/xcomp/rpiboot.fs @@ -416,12 +416,17 @@ struct[ Foo sfield baz ]struct -create data 'A' , 'X' , - -: hey data Foo baz emit ; +extends Foo struct[ Bar + sfield zzz +]struct : foo ." foo!" ; : bar ." bar!" ; : prompt ." Hello World!" ; -uartinit prompt ' key ' in< realias +create data 'A' , 'X' , 'Z' , + +data structbind Bar mybar +: hey mybar zzz emit ; + +uartinit prompt ' key ' in< realias hello