(dos.tal) Improved hx view

This commit is contained in:
neauoire 2022-01-23 10:48:26 -08:00
parent 44789e4c00
commit dacd2ff26c
1 changed files with 33 additions and 24 deletions

View File

@ -61,9 +61,9 @@
|0100 ( -> ) |0100 ( -> )
( theme ) ( theme )
#50f5 .System/r DEO2 #0f55 .System/r DEO2
#c0f5 .System/g DEO2 #0fc5 .System/g DEO2
#a0f5 .System/b DEO2 #0fa5 .System/b DEO2
( vectors ) ( vectors )
;on-button .Controller/vector DEO2 ;on-button .Controller/vector DEO2
@ -205,12 +205,19 @@ RTN
;&error-txt #02 ;draw-str JSR2 RTN &valid ;&error-txt #02 ;draw-str JSR2 RTN &valid
AUTO-YADDR AUTO-YADDR
.Screen/x DEI2 ,&anchor STR2 .File/success DEI2 #0000
;view #0014 ++ ;view
&loop &loop
LDAk #01 ;draw-byte JSR2 DUP2 ;view ++ LDA #01 ;draw-hex JSR2
LIT2 &anchor $2 .Screen/x DEO2 ( make shorts )
.Screen/y DEI2k #0010 ++ ROT DEO2 DUP2 #0001 AND2 #0000 == ,&no-short JCN
.Screen/x DEI2k #0008 ++ ROT DEO2
&no-short
( make lines )
DUP2 #000f AND2 #000f !! ,&no-lines JCN
.Screen/y DEI2k #0010 ++ ROT DEO2
PAD .Screen/x DEO2
.Screen/y DEI2 .Screen/height DEI2 PAD -- #0010 -- >> ,&end JCN
&no-lines
INC2 GTH2k ,&loop JCN INC2 GTH2k ,&loop JCN
&end &end
POP2 POP2 POP2 POP2
@ -263,9 +270,9 @@ RTN
;commands/end ;commands ;commands/end ;commands
&loop &loop
PAD .Screen/x DEO2 PAD .Screen/x DEO2
LDA2k #06 ;draw-str JSR2 ( name ) LDA2k #08 ;draw-str JSR2
PAD #0020 ++ .Screen/x DEO2 PAD #0020 ++ .Screen/x DEO2
DUP2 ;commands -- ;commands-docs ++ LDA2 #01 ;draw-str JSR2 ( docs ) DUP2 ;commands -- ;commands-docs ++ LDA2 #01 ;draw-str JSR2
.Screen/y DEI2k #0010 ++ ROT DEO2 .Screen/y DEI2k #0010 ++ ROT DEO2
INC2 INC2 GTH2k ,&loop JCN INC2 INC2 GTH2k ,&loop JCN
&end &end
@ -287,6 +294,8 @@ RTN
:cmd-hx/func :cmd-tx/func :cmd-do/func :cmd-tm/func :cmd-hx/func :cmd-tx/func :cmd-do/func :cmd-tm/func
&end :cmd-??/func &end :cmd-??/func
( gui )
@draw-input ( color -- ) @draw-input ( color -- )
AUTO-YADDR AUTO-YADDR
@ -307,20 +316,6 @@ RTN
JMP2r JMP2r
@draw-byte ( byte color -- )
STH
DUP #04 SFT ,&parse JSR STHkr ;draw-char JSR2
#0f AND ,&parse JSR STHr ;draw-char JSR2
RTN
&parse ( value -- char )
DUP #09 > ,&above JCN
#30 + RTN
&above
#09 - #60 + RTN
RTN
@draw-tx ( str* color -- ) @draw-tx ( str* color -- )
AUTO-YADDR AUTO-YADDR
@ -354,6 +349,20 @@ RTN
RTN RTN
@draw-hex ( byte color -- )
STH
DUP #04 SFT ,&parse JSR STHkr ,draw-char JSR
#0f AND ,&parse JSR STHr ,draw-char JSR
RTN
&parse ( value -- char )
DUP #09 > ,&above JCN
#30 + RTN
&above
#09 - #60 + RTN
RTN
@draw-str ( str* color -- ) @draw-str ( str* color -- )
AUTO-YADDR AUTO-YADDR