Browse code

(screen.blending) Draw foreground sprites too

neauoire authored on 08/11/2023 17:30:49
Showing 1 changed files
... ...
@@ -11,32 +11,55 @@
11 11
 	#f0d6 .System/g DEO2
12 12
 	#f0b2 .System/b DEO2
13 13
 	( | size )
14
-	#0080 .Screen/width DEO2
14
+	#0100 .Screen/width DEO2
15 15
 	#010c .Screen/height DEO2
16 16
 	( | background )
17
-	#f2 .Screen/auto DEO
18
-	;check-icn .Screen/addr DEO2
19
-	#2200
20
-	&times ( -- )
21
-		#02 .Screen/sprite DEO
22
-		INC GTHk ?&times
23
-	POP2
17
+	#02 <draw-strippes>
18
+	#0080 .Screen/x DEO2
19
+	#0000 .Screen/y DEO2
20
+	#03 <draw-strippes>
24 21
 	( | 1bpp )
25 22
 	#1000
26
-	&l1 ( -- )
23
+	&l1bg ( -- )
27 24
 		#00 OVR #03 AND #50 SFT2 #0008 ADD2 .Screen/x DEO2
28 25
 		#00 OVR #02 SFT #50 SFT2 #0008 ADD2 .Screen/y DEO2
29 26
 		DUP #80 ORA #0f AND <draw-circle>
30
-		INC GTHk ?&l1
27
+		INC GTHk ?&l1bg
28
+	POP2
29
+	#1000
30
+	&l1fg ( -- )
31
+		#00 OVR #03 AND #50 SFT2 #0088 ADD2 .Screen/x DEO2
32
+		#00 OVR #02 SFT #50 SFT2 #0008 ADD2 .Screen/y DEO2
33
+		DUP #c0 ORA #0f AND <draw-circle>
34
+		INC GTHk ?&l1fg
31 35
 	POP2
32 36
 	( | 2bpp )
33 37
 	#1000
34
-	&l2 ( -- )
38
+	&l2bg ( -- )
35 39
 		#00 OVR #03 AND #50 SFT2 #0008 ADD2 .Screen/x DEO2
36 40
 		#00 OVR #02 SFT #50 SFT2 #0088 ADD2 .Screen/y DEO2
37 41
 		DUP #80 ORA <draw-circle>
38
-		INC GTHk ?&l2
39
-	POP2 BRK
42
+		INC GTHk ?&l2bg
43
+	POP2
44
+	#1000
45
+	&l2fg ( -- )
46
+		#00 OVR #03 AND #50 SFT2 #0088 ADD2 .Screen/x DEO2
47
+		#00 OVR #02 SFT #50 SFT2 #0088 ADD2 .Screen/y DEO2
48
+		DUP #c0 ORA <draw-circle>
49
+		INC GTHk ?&l2fg
50
+	POP2
51
+	BRK
52
+
53
+@<draw-strippes> ( color -- )
54
+	,&color STR
55
+	#f2 .Screen/auto DEO
56
+	;check-icn .Screen/addr DEO2
57
+	#2200
58
+	&times ( -- )
59
+		[ LIT &color $1 ] .Screen/sprite DEO
60
+		INC GTHk ?&times
61
+	POP2
62
+	JMP2r
40 63
 
41 64
 @<draw-circle> ( color -- )
42 65
 	#01 .Screen/auto DEO