add metadata and optimize

This commit is contained in:
~d6 2023-01-30 23:01:34 -05:00
parent 55e35d0761
commit 1f47e56d8d
1 changed files with 18 additions and 11 deletions

View File

@ -48,7 +48,7 @@
( end alt charset ESC [ 10 m )
( end alt charset ESC [ 11 m )
|00 @System [ &vect $2 &pad $6 &r $2 &g $2 &b $2 ]
|00 @System [ &vect $2 &expansion $2 &title $2 &metadata $2 &r $2 &g $2 &b $2 ]
|10 @Console [ &vect $2 &r $1 &pad $5 &w $1 ]
|20 @Screen [ &vect $2 &w $2 &h $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 ]
|80 @Controller [ &vect $2 &button $1 &key $1 &fn $1 ]
@ -78,6 +78,10 @@
( to send CSI 200 ~ on start of paste, and CSI 201 ~ at end of paste )
|0100
( metadata )
;meta .System/metadata DEO2
;meta/name .System/title DEO2
( 80 cols x 24 rows )
#0028 .rows STZ2
#0050 .cols STZ2
@ -183,23 +187,20 @@
@redraw
.dirty? LDZ #00 EQU ?&done
;cells STH2 ( [addr*] )
#0000 DUP2 .Screen/y DEO2
.rows LDZ2 #0000 DUP2 .Screen/y DEO2
&yloop
#0000 DUP2 .Screen/x DEO2
.cols LDZ2 #0000 DUP2 .Screen/x DEO2
&xloop
STH2kr LDA2 draw-cell
.Screen/x DEI2k #0008 ADD2 ROT DEO2
INC2 INC2r INC2r
DUP2 .cols LDZ2 LTH2 ?&xloop
POP2
GTH2k ?&xloop
POP2 POP2
.Screen/y DEI2k #0008 ADD2 ROT DEO2
INC2
DUP2 .rows LDZ2 LTH2 ?&yloop
POP2 POP2r
draw-cursor
#00 .dirty? STZ
&done BRK
GTH2k ?&yloop
POP2 POP2 POP2r
draw-cursor #00 .dirty? STZ &done BRK
@clear-cursor
.cur-x LDZ2 #30 SFT2 .Screen/x DEO2
@ -771,5 +772,11 @@
@ascii
~chr/ascii.tal
@meta 00
&name "determ 0a
&details "ansi 20 "terminal 20 "emulator 0a
&author "by 20 "d_m 0a
&date "3 20 "jan 20 2023 00
( store tint+char for each screen position )
@cells $1900 ( 80 x 40 x 2 )