M src/assets.tal => src/assets.tal +3 -0
@@ 1,3 1,6 @@
+@dict
+ &bytes-free 20 "bytes 20 "free. $1
+
@dashed-icn [
aa00 0000 0000 0000 ]
@cursor-icn [
M src/left.tal => src/left.tal +30 -25
@@ 1153,11 1153,39 @@ JMP2r
draw-token
.Screen/y DEI2 .Screen/height DEI2 #0010 SUB2 GTH2 ?&end
GTH2k ?&l
+ ( draw size left )
+ #2004 ;draw-chr/color STA draw-chr
+ #0000 OVR2 SUB2 draw-dec
+ ;dict/bytes-free draw-str POP2
&end
POP2 POP2
#0000 .state STZ2
-!draw-scrollbar
+( >> )
+
+@draw-scrollbar ( -- )
+
+ #0000 .Screen/x DEO2
+ #0018 .Screen/y DEO2
+ [ LIT2 02 -Screen/auto ] DEO
+ ( bg )
+ ;checkered-icn .Screen/addr DEO2
+ .scrollbar/height LDZ2 #03 SFT2 SUB
+ &l
+ [ LIT2 04 -Screen/sprite ] DEO
+ INC DUP ?&l
+ POP
+ ( fg )
+ ;state-icns .Screen/addr DEO2
+ #0018 STH2k .scroll/y LDZ2 .scroll/ratio LDZ2 STH2k DIV2 ADD2 .Screen/y DEO2
+ ( TODO: Optimize )
+ .Screen/height DEI2 count-lines STH2r DIV2 SUB2 STH2r SUB2 #03 SFT2 INC SUB
+ &stretch
+ [ LIT2 05 -Screen/sprite ] DEO
+ INC DUP ?&stretch
+ POP
+
+JMP2r
@draw-token ( str* -- str* )
@@ 1226,30 1254,6 @@ JMP2r
JMP2r
-@draw-scrollbar ( -- )
-
- #0000 .Screen/x DEO2
- #0018 .Screen/y DEO2
- [ LIT2 02 -Screen/auto ] DEO
- ( bg )
- ;checkered-icn .Screen/addr DEO2
- .scrollbar/height LDZ2 #03 SFT2 SUB
- &l
- [ LIT2 04 -Screen/sprite ] DEO
- INC DUP ?&l
- POP
- ( fg )
- ;state-icns .Screen/addr DEO2
- #0018 STH2k .scroll/y LDZ2 .scroll/ratio LDZ2 STH2k DIV2 ADD2 .Screen/y DEO2
- ( TODO: Optimize )
- .Screen/height DEI2 count-lines STH2r DIV2 SUB2 STH2r SUB2 #03 SFT2 INC SUB
- &stretch
- [ LIT2 05 -Screen/sprite ] DEO
- INC DUP ?&stretch
- POP
-
-JMP2r
-
@draw-spacer ( -- )
#0000 .Screen/x DEO2
@@ 1443,3 1447,4 @@ JMP2r
@runes [ ",_.-;=!? ] $1
~src/manifest.tal
+