From 632b88d2d8769b2e5d2dded13c7e0e8b12fafe4a Mon Sep 17 00:00:00 2001 From: Travis Shears Date: Fri, 27 Jun 2025 20:40:12 +0200 Subject: [PATCH 1/2] start draw-canvas-bounds --- one_line_canvas.tal | 47 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/one_line_canvas.tal b/one_line_canvas.tal index ec49e63..cae40c0 100644 --- a/one_line_canvas.tal +++ b/one_line_canvas.tal @@ -3,21 +3,60 @@ |20 @Screen &vector $2 &width $2 &height $2 &auto $1 &pad $1 &x $2 &y $2 &addr $2 &pixel $1 &sprite $1 -|58 @width -|1f @height +|58 @canvas-width +|1f @canvas-height (to run gui: `./run_ui.sh one_line_canvas.tal`) (to run debugger: `../uxn/bin/uxnasm one_line_canvas.tal one_line_canvas.rom && ../uxn/bin/uxnemu ../beetbug.rom ./one_line_canvas.rom`) +%dbug { #01 .System/debug DEO } |0100 @on-reset setup-gui + draw-canvas-bounds BRK +@draw-canvas-bounds + (change x,y to top left of canvas) + LIT2 00 -canvas-width .Screen/x DEO2 + LIT2 00 -canvas-height .Screen/y DEO2 + + &x $1 + (set x to 88) + #58 ,&x STR + (#00 ,&i STR) + + &loop + #00 LIT &x $1 .Screen/x DEO2 + LIT &x $1 + INC + ,&x STRk + + EQUk ?&loop + + + + + + + ( + ,&top-left-x STR + dbug + &loop + LIT -width + (00 58) + ADDk (00 58 58) + #00 .Screen/x DEO2 (0058 00B0) + #01 .Screen/pixel DEO + INC2 (0059 00B0) + EQUk ?&loop + POP2 POP2) + JMP2r + @setup-gui ( -- ) (set screen height and width the 3x canvas size) - LIT2 =width #0003 MUL2 .Screen/width DEO2 - LIT2 =height #0003 MUL2 .Screen/height DEO2 + LIT2 =canvas-width #0003 MUL2 .Screen/width DEO2 + LIT2 =canvas-height #0003 MUL2 .Screen/height DEO2 (set basic color scheme) #f07f .System/r DEO2 #f0d6 .System/g DEO2 From 78cdf6c993d2b2dc0743c433963cea34960a4f60 Mon Sep 17 00:00:00 2001 From: Travis Shears Date: Sun, 29 Jun 2025 11:44:33 +0200 Subject: [PATCH 2/2] try and make a routine to draw line --- one_line_canvas.tal | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/one_line_canvas.tal b/one_line_canvas.tal index cae40c0..fe5648a 100644 --- a/one_line_canvas.tal +++ b/one_line_canvas.tal @@ -16,7 +16,7 @@ draw-canvas-bounds BRK -@draw-canvas-bounds +@draw-line (change x,y to top left of canvas) LIT2 00 -canvas-width .Screen/x DEO2 LIT2 00 -canvas-height .Screen/y DEO2