From 5330100fde566cc44006134d7ab5b548aea19933 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Fri, 26 Apr 2024 11:38:26 -0400 Subject: [PATCH] spiral: putting way too much work ingo this think I understand what's going on fully now though --- demos/lovebyte2024/spiraling_shape_32/spiral.shape | 10 ++++++++++ demos/lovebyte2024/spiraling_shape_32/spiral_32.s | 8 ++++---- demos/lovebyte2024/spiraling_shape_32/spiral_test.bas | 7 +++++++ 3 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 demos/lovebyte2024/spiraling_shape_32/spiral.shape create mode 100644 demos/lovebyte2024/spiraling_shape_32/spiral_test.bas diff --git a/demos/lovebyte2024/spiraling_shape_32/spiral.shape b/demos/lovebyte2024/spiraling_shape_32/spiral.shape new file mode 100644 index 00000000..7e78ccde --- /dev/null +++ b/demos/lovebyte2024/spiraling_shape_32/spiral.shape @@ -0,0 +1,10 @@ +# reverse engineering what the pattern we picked actually looks like +# +# Number of shapes +1 +START +NRT NDN NOP +NUP DN NLT +NLT NUP NOP +NUP UP NOP +STOP diff --git a/demos/lovebyte2024/spiraling_shape_32/spiral_32.s b/demos/lovebyte2024/spiraling_shape_32/spiral_32.s index b914220c..e9129ad5 100644 --- a/demos/lovebyte2024/spiraling_shape_32/spiral_32.s +++ b/demos/lovebyte2024/spiraling_shape_32/spiral_32.s @@ -93,8 +93,8 @@ tiny_loop: our_shape = $E2DF ; location in the Applesoft ROM ; that holds $11,$F0,$03,$20,$00 - ; which makes an offset right-angle - ; double line-ish pattern when + ; which makes two offset lines, + ; one up, one down, when ; interpreted as a shape table ; (it points into the code for the FRE() ; BASIC routine but that's not important) @@ -118,7 +118,7 @@ our_shape = $E2DF ; location in the Applesoft ROM ; x is the starting point, * are the two line segments drawn -; . +; ^ ; * ; . x * -; . . . +; . . V diff --git a/demos/lovebyte2024/spiraling_shape_32/spiral_test.bas b/demos/lovebyte2024/spiraling_shape_32/spiral_test.bas new file mode 100644 index 00000000..a3207d83 --- /dev/null +++ b/demos/lovebyte2024/spiraling_shape_32/spiral_test.bas @@ -0,0 +1,7 @@ +10 HIMEM:8167 +20 POKE 232,231:POKE 233,31 +30 FOR L=8167 TO 8175: READ B:POKE L,B:NEXT L +35 HGR:ROT=0:SCALE=2 +40 FOR I=1 TO 1: XDRAW I AT I*10,100:NEXT I +90 END +100 DATA 1,0,4,0,17,240,3,32,0