diff --git a/gui/shaviankb/shaviankb.tal b/gui/shaviankb/shaviankb.tal index 3ff7eef..1b09671 100644 --- a/gui/shaviankb/shaviankb.tal +++ b/gui/shaviankb/shaviankb.tal @@ -105,7 +105,7 @@ DUP2 #0009 DIV2 #0030 MUL2 #0008 ADD2 .Screen/y DEO2 DUP #1e NEQ ?{ POP2 #0007 } DUP #1f NEQ ?{ POP2 #0008 } - #0009 DIV2k MUL2 SUB2 #0020 MUL2 #0008 ADD2 .Screen/x DEO2 + #0009 DIV2k MUL2 SUB2 #50 SFT2 #0008 ADD2 .Screen/x DEO2 JMP2r ( @@ -185,22 +185,33 @@ ,&y STR2 DUP2 .Screen/x DEO2 ,&x STR2 - #01 .Screen/auto DEO - #81 .Screen/sprite DEO - ,&next JSR [ LIT &w $1 ] ,&repeat JSR #02 .Screen/auto DEO - ,&next JSR #81 .Screen/sprite DEO - ,&next JSR [ LIT &h $1 ] ,&repeat JSR + [ LIT2 01 -Screen/auto ] DEO + [ LIT2 81 -Screen/sprite ] DEO + /next + [ LIT &w $1 ] /repeat + [ LIT2 02 -Screen/auto ] DEO + /next + [ LIT2 81 -Screen/sprite ] DEO + /next + [ LIT &h $1 ] /repeat ( left ) [ LIT2 &y $2 ] #0008 ADD2 .Screen/y DEO2 [ LIT2 &x $2 ] .Screen/x DEO2 - ,&next JSR ,&h LDR ,&repeat JSR #01 .Screen/auto DEO - ,&next JSR #81 .Screen/sprite DEO - ,&next JSR ,&w LDR ,&repeat JSR ,&next JSR #81 .Screen/sprite DEO - ( fill ) ,&next JSR ,&x LDR2 #0008 ADD2 .Screen/x DEO2 + /next + ,&h LDR /repeat + [ LIT2 01 -Screen/auto ] DEO + /next + [ LIT2 81 -Screen/sprite ] DEO + /next + ,&w LDR /repeat + /next + [ LIT2 81 -Screen/sprite ] DEO + ( fill ) /next + ,&x LDR2 #0008 ADD2 .Screen/x DEO2 ,&y LDR2 #0008 ADD2 .Screen/y DEO2 JMP2r &next .Screen/addr DEI2k #0010 ADD2 ROT DEO2 JMP2r - &repeat #00 &repeat-loop #81 .Screen/sprite DEO + &repeat #00 &repeat-loop [ LIT2 81 -Screen/sprite ] DEO INC GTHk ?&repeat-loop POP2 JMP2r @@ -228,6 +239,6 @@ &c ( -- ) #0f AND DUP #09 GTH #27 MUL ADD [ LIT "0 ] ADD #18 DEO JMP2r - + ~assets.tal