fix wrap bugs

This commit is contained in:
~d6 2023-02-19 20:13:16 -05:00
parent 6df71489cd
commit d23ce3e111
1 changed files with 9 additions and 6 deletions

View File

@ -159,7 +159,7 @@
reset-terminal reset-terminal
( set to 01 to enable debug log ) ( set to 01 to enable debug log )
#01 .debug STZ #00 .debug STZ
.debug LDZ ?&continue BRK &continue .debug LDZ ?&continue BRK &continue
#99 #010e DEO #99 #010e DEO
@ -349,7 +349,6 @@
screen-to-cursor cur-addr LDA2 !draw-cell screen-to-cursor cur-addr LDA2 !draw-cell
@draw-cursor ( -> ) @draw-cursor ( -> )
at-max-x .cur-wrap STZ
screen-to-cursor cur-addr LDA2 screen-to-cursor cur-addr LDA2
.tcem LDZ #00 EQU ?&skip SWP reverse-tint SWP .tcem LDZ #00 EQU ?&skip SWP reverse-tint SWP
&skip !draw-cell &skip !draw-cell
@ -783,6 +782,10 @@
@sm ( n* -> ) mode-addr #01 SWP STZ JMP2r @sm ( n* -> ) mode-addr #01 SWP STZ JMP2r
@rm ( n* -> ) mode-addr #00 SWP STZ JMP2r @rm ( n* -> ) mode-addr #00 SWP STZ JMP2r
( other attributes: )
( 10 - primary font )
( 39 - default fg )
( 49 - default bg )
@read-attr ( attr* -> ) @read-attr ( attr* -> )
DUP2 #0000 NEQ2 ?&!0 #02 .attr STZ !&done ( reset ) DUP2 #0000 NEQ2 ?&!0 #02 .attr STZ !&done ( reset )
&!0 DUP2 #0001 NEQ2 ?&!1 #03 !&set-fg ( bright ) &!0 DUP2 #0001 NEQ2 ?&!1 #03 !&set-fg ( bright )
@ -828,7 +831,7 @@
@exec-vpa POP ;vpa !exec1 @exec-vpa POP ;vpa !exec1
@exec-cha POP ;cha !exec1 @exec-cha POP ;cha !exec1
@exec-el POP ;el !exec0 @exec-el POP ;el !exec0
@exec-ed POP ;edx !exec0 @exec-ed POP ;ed_ !exec0
@exec-sm POP ;sm !exec1 @exec-sm POP ;sm !exec1
@exec-rm POP ;rm !exec1 @exec-rm POP ;rm !exec1
@exec-dsr POP ;dsr !exec1 @exec-dsr POP ;dsr !exec1
@ -878,7 +881,7 @@
&erase-to-end POP2 cur-addr eol-addr !erase &erase-to-end POP2 cur-addr eol-addr !erase
&erase-from-start POP2 bol-addr cur-addr !erase &erase-from-start POP2 bol-addr cur-addr !erase
@edx ( n* -> ) @ed_ ( n* -> )
DUP2 #0000 EQU2 ?&erase-to-end DUP2 #0000 EQU2 ?&erase-to-end
DUP2 #0001 EQU2 ?&erase-from-start DUP2 #0001 EQU2 ?&erase-from-start
DUP2 #0002 EQU2 ?&erase-full DUP2 #0002 EQU2 ?&erase-full
@ -896,8 +899,7 @@
goto BRK ( ) goto BRK ( )
@dec-floor ( x* -> x==0 ? 0* : x-1* ) @dec-floor ( x* -> x==0 ? 0* : x-1* )
#0001 SUB2 JMP2r #0001 SUB2 #0000 !smax
( ORAk ?&sub JMP2r &sub #0001 SUB2 JMP2r )
@debug-esc ( c^ -> ) @debug-esc ( c^ -> )
.debug LDZ ?&continue POP JMP2r &continue .debug LDZ ?&continue POP JMP2r &continue
@ -966,6 +968,7 @@
DUP #20 LTH ?read-ctrl DUP #20 LTH ?read-ctrl
DUP #7f EQU ?read-del DUP #7f EQU ?read-del
.tint LDZ SWP DUP2 insert-cell draw-cell .tint LDZ SWP DUP2 insert-cell draw-cell
.cur-x LDZ2 .max-x LDZ2 EQU2 .cur-wrap STZ
clear-cursor forward BRK clear-cursor forward BRK
@read-ctrl ( c^ -> BRK ) @read-ctrl ( c^ -> BRK )