Browse code

(dvd.tal) Migrated to immediate opcodes

Devine Lu Linvega authored on 06/03/2023 04:49:13
Showing 1 changed files
... ...
@@ -5,10 +5,10 @@
5 5
 
6 6
 |0000
7 7
 
8
-@dvd &x $2 &y $2 &dx $1 &dy $1
8
+	@dvd &x $2 &y $2 &dx $1 &dy $1
9 9
 
10 10
 |0100 ( -> )
11
-	
11
+
12 12
 	( theme )
13 13
 	#4cfd .System/r DEO2
14 14
 	#4cf3 .System/g DEO2
... ...
@@ -22,34 +22,34 @@
22 22
 	.Screen/width DEI2 #0020 SUB2 ;on-frame/hit-hor STA2
23 23
 	.Screen/height DEI2 #0010 SUB2 ;on-frame/hit-ver STA2
24 24
 	( drawing mode )
25
-	#36 .Screen/auto DEO
26
-	#01 ,draw-dvd JSR
27
-	
25
+	[ LIT2 36 -Screen/auto ] DEO
26
+	#01 draw-dvd
27
+
28 28
 BRK
29 29
 
30 30
 @on-frame ( -> )
31 31
 
32
-	#00 ,draw-dvd JSR
32
+	#00 draw-dvd
33 33
 	( x )
34 34
 	.dvd/x LDZ2
35
-		STH2k #0000 EQU2 ,&flip-x JCN
36
-		STH2kr [ LIT2 &hit-hor $2 ] EQU2 ,&flip-x JCN
35
+		DUP2 #0000 EQU2 ?&flip-x
36
+		DUP2 [ LIT2 &hit-hor $2 ] EQU2 ?&flip-x
37 37
 	&no-x
38
-	STH2r [ #00 .dvd/dx LDZ ] DUP2 ADD2 ADD2 #ffff ADD2 .dvd/x STZ2
38
+	[ LIT2 00 -dvd/dx ] LDZ DUP2 ADD2 ADD2 #ffff ADD2 .dvd/x STZ2
39 39
 	( y )
40 40
 	.dvd/y LDZ2
41
-		STH2k #0000 EQU2 ,&flip-y JCN
42
-		STH2kr [ LIT2 &hit-ver $2 ] EQU2 ,&flip-y JCN
41
+		DUP2 #0000 EQU2 ?&flip-y
42
+		DUP2 [ LIT2 &hit-ver $2 ] EQU2 ?&flip-y
43 43
 	&no-y
44
-	STH2r [ #00 .dvd/dy LDZ ] DUP2 ADD2 ADD2 #ffff ADD2 .dvd/y STZ2
45
-	#01 ,draw-dvd JSR
44
+	[ LIT2 00 -dvd/dy ] LDZ DUP2 ADD2 ADD2 #ffff ADD2 .dvd/y STZ2
45
+	#01 draw-dvd
46 46
 
47 47
 BRK
48
-	&flip-x .dvd/dx LDZk #00 EQU SWP STZ ,&no-x JMP
49
-	&flip-y .dvd/dy LDZk #00 EQU SWP STZ ,&no-y JMP
48
+	&flip-x .dvd/dx LDZk #00 EQU SWP STZ !&no-x
49
+	&flip-y .dvd/dy LDZk #00 EQU SWP STZ !&no-y
50 50
 
51 51
 @draw-dvd ( color -- )
52
-	
52
+
53 53
 	;dvd_icn .Screen/addr DEO2
54 54
 	.dvd/x LDZ2 .Screen/x DEO2
55 55
 	.dvd/y LDZ2 .Screen/y DEO2
... ...
@@ -57,8 +57,9 @@ BRK
57 57
 
58 58
 JMP2r
59 59
 
60
-@dvd_icn ( 4 x 2 )
60
+@dvd_icn ( 4 x 2 ) [
61 61
 	001f 3f38 3838 787f 00fe fe7e 7777 e3c3
62 62
 	000f 1f3b 7b77 e7c7 00fc fe8f 8707 0efc
63 63
 	7f00 000f ff7f 0700 0301 00ff f0f8 ff00
64
-	8700 00ff 7f7f ff00 f000 00e0 fcfc 8000
64
+	8700 00ff 7f7f ff00 f000 00e0 fcfc 8000 ]
65
+