Browse code

(hilbert.tal) Animated

Devine Lu Linvega authored on 13/03/2023 17:22:19
Showing 1 changed files
... ...
@@ -11,14 +11,18 @@
11 11
 	#7f0a .System/g DEO2
12 12
 	#8e0a .System/b DEO2
13 13
 	( screen size )
14
-	#0140 .Screen/width DEO2
15
-	#0140 .Screen/height DEO2
16
-	( draw )
17
-	#03ff #0000
18
-	&l
19
-		STH2k INC2k d2xy STH2r d2xy #01 draw-line
20
-		INC2 GTH2k ?&l
21
-	POP2 POP2
14
+	#00c0
15
+		DUP2 .Screen/width DEO2
16
+		.Screen/height DEO2
17
+	( vector )
18
+	;on-frame .Screen/vector DEO2
19
+
20
+BRK
21
+
22
+@on-frame ( -> )
23
+
24
+	[ LIT2 &f $2 ] INC2k ,&f STR2
25
+		INC2k d2xy ROT2 d2xy #01 draw-line
22 26
 
23 27
 BRK
24 28
 
... ...
@@ -28,27 +32,27 @@ BRK
28 32
 	#0000
29 33
 		DUP2 ,&x STR2
30 34
 		,&y STR2
31
-	#0020 #0001
35
+	#2001
32 36
 	&l
33
-		STH2k
37
+		#00 OVR STH2
34 38
 		[ LIT2 &t $2 ]
35 39
 			DUP2 DUP2 #01 SFT2 #0001 AND2 DUP2 ,&rx STR2
36 40
 			EOR2 #0001 AND2 ,&ry STR2
37 41
 			#02 SFT2 ,&t STR2
38 42
 		[ LIT2 &x $2 ] [ LIT2 &y $2 ] [ LIT2 &rx $2 ] [ LIT2 &ry $2 ]
39
-			STH2kr rot 
43
+			STH2kr rot
40 44
 		STH2kr ,&ry LDR2 MUL2 ADD2 ,&y STR2
41 45
 		STH2r ,&rx LDR2 MUL2 ADD2 ,&x STR2
42
-		DUP2 ADD2 GTH2k ?&l
43
-	POP2 POP2
44
-	,&x LDR2 #30 SFT2 #0020 ADD2
45
-	,&y LDR2 #30 SFT2 #0020 ADD2
46
+		DUP ADD GTHk ?&l
47
+	POP2
48
+	,&x LDR2 #20 SFT2 #0020 ADD2
49
+	,&y LDR2 #20 SFT2 #0020 ADD2
46 50
 
47 51
 JMP2r
48 52
 
49 53
 @rot ( x* y* rx* ry* n* -- x* y* )
50 54
 
51
-	( n-1 ) #0001 SUB2 STH2
55
+	#0001 SUB2 STH2
52 56
 	SWP2 ,&rx STR2
53 57
 	ORA ?&skipy
54 58
 		[ LIT2 &rx $2 ] #0001 NEQ2 ?&skipx