diff --git a/gui/notepad/src/notepad.tal b/gui/notepad/src/notepad.tal index bf5bf34..1c53651 100644 --- a/gui/notepad/src/notepad.tal +++ b/gui/notepad/src/notepad.tal @@ -248,26 +248,26 @@ ,&color STR ,&y2 STR2 ,&x2 STR2 - ,&y1 STR2 + STH2 ,&x1 STR2 ,&x2 LDR2 ,&x1 LDR2 SUB2 abs2 ,&dx STR2 - #0000 ,&y2 LDR2 ,&y1 LDR2 SUB2 abs2 SUB2 ,&dy STR2 + #0000 ,&y2 LDR2 STH2kr SUB2 abs2 SUB2 ,&dy STR2 #ffff [ LIT2 00 _&x1 ] LDR2 ,&x2 LDR2 lts2 DUP2 ADD2 ADD2 ,&sx STR2 - #ffff [ LIT2 00 _&y1 ] LDR2 ,&y2 LDR2 lts2 DUP2 ADD2 ADD2 ,&sy STR2 + #ffff #00 STH2kr ,&y2 LDR2 lts2 DUP2 ADD2 ADD2 ,&sy STR2 [ LIT2 &dx $2 ] [ LIT2 &dy $2 ] ADD2 &>while ( -- ) - ( draw ) ,&x1 LDR2 ,&y1 LDR2 [ LIT &color $1 ] + ( draw ) ,&x1 LDR2 STH2kr [ LIT &color $1 ] ( x ) [ LIT2 &x1 $2 ] [ LIT2 &x2 $2 ] EQU2 - ( y ) [ LIT2 &y1 $2 ] [ LIT2 &y2 $2 ] EQU2 AND ?&end + ( y ) STH2kr [ LIT2 &y2 $2 ] EQU2 AND ?&end DUP2k ADD2 DUP2 ( y ) ,&dy LDR2 lts2 ?{ ( e+dy ) SWP2 ,&dy LDR2 ADD2 SWP2 ( x1+sx ) ,&x1 LDR2 [ LIT2 &sx $2 ] ADD2 ,&x1 STR2 } ( x ) ,&dx LDR2 gts2 ?{ ( e+dx ) ,&dx LDR2 ADD2 - ( y1+sy ) ,&y1 LDR2 [ LIT2 &sy $2 ] ADD2 ,&y1 STR2 } + ( y1+sy ) [ LIT2r &sy $2 ] ADD2r } !&>while - &end POP2 JMP2r + &end POP2 POP2r JMP2r @snap ( x1* x2* -- x* ) SUB2k abs2 #0008 LTH2 ?{ NIP2 JMP2r }