diff --git a/projects/examples/demos/bifurcan.tal b/projects/examples/demos/bifurcan.tal index 7021f46..4b05c29 100644 --- a/projects/examples/demos/bifurcan.tal +++ b/projects/examples/demos/bifurcan.tal @@ -5,14 +5,13 @@ |90 @Mouse &vector $2 &x $2 &y $2 &state $1 &wheel $1 |c0 @DateTime &year $2 &month $1 &day $1 &hour $1 &minute $1 &second $1 &dotw $1 &doty $2 &isdst $1 |80 @Controller &vector $2 &button $1 &key $1 - -|0000 +|000 @last $1 @style $1 @center &x $2 &y $2 -|0100 +|100 @on-reset ( -> ) ( | theme ) @@ -54,6 +53,9 @@ ;tiles [ LIT2 00 -style ] LDZ #40 SFT ADD2 ( >> ) +( +@|drawing ) + @ ( -- ) ( | hrs ) [ .center/x LDZ2 #0018 SUB2 ] [ .center/y LDZ2 #0048 SUB2 ] .DateTime/hour DEI #0a DIV @@ -70,7 +72,7 @@ ,&y STR2 ,&x STR2 #0f00 - &loop ( -- ) + &>loop ( -- ) ( save-x ) DUP #03 DIVk MUL SUB #00 SWP #30 SFT2 [ LIT2 &x $2 ] ADD2 .Screen/x DEO2 ( save-y ) DUP #03 DIV #00 SWP #30 SFT2 [ LIT2 &y $2 ] ADD2 .Screen/y DEO2 ( get digit* ) DUP [ LIT &digit $1 ] DUP ADD #00 SWP ;digits ADD2 LDA2 @@ -78,22 +80,22 @@ ( set tile ) #30 SFT2 ;tiles ADD2 ( set style ) .style LDZ #40 SFT #00 SWP ADD2 .Screen/addr DEO2 ( draw ) [ LIT2 01 -Screen/sprite ] DEO - INC GTHk ?&loop + INC GTHk ?&>loop POP2 JMP2r @ ( addr* -- ) .Screen/addr DEO2 - .Screen/height DEI2 #03 SFT2 ,&h STR POP - .Screen/width DEI2 #03 SFT2 ,&w STR POP - [ LIT &h $1 ] #00 - &ver ( -- ) + .Screen/height DEI2 #03 SFT2 ,&h STR + POP .Screen/width DEI2 #03 SFT2 ,&w STR + POP [ LIT &h $1 ] #00 + &>ver ( -- ) #00 OVR #30 SFT2 .Screen/y DEO2 [ LIT &w $1 ] #00 - &hor ( -- ) - #00 OVR #30 SFT2 .Screen/x DEO2 - [ LIT2 01 -Screen/sprite ] DEO - INC GTHk ?&hor - POP2 INC GTHk ?&ver + &>hor ( -- ) + #00 OVR #30 SFT2 .Screen/x DEO2 + [ LIT2 01 -Screen/sprite ] DEO + INC GTHk ?&>hor + POP2 INC GTHk ?&>ver POP2 JMP2r @ ( color addr* -- ) @@ -111,6 +113,9 @@ .Screen/sprite DEO JMP2r +( +@|assets ) + @cursor-icn [ 80c0 e0f0 f8e0 1000 ] @fill-icn [ ffff ffff ffff ffff ]