Browse code

Added clear canvas routine

neauoire authored on 20/03/2021 00:40:15
Showing 2 changed files
... ...
@@ -713,4 +713,4 @@ RTN
713 713
 |FF60 ;File { pad 8 name 2 length 2 load 2 save 2 }
714 714
 
715 715
 |FFF0 .RESET .FRAME .ERROR ( vectors )
716
-|FFF8 [ 30ff e0f3 b0f3 ] ( palette )
716
+|FFF8 [ ed0f 3d0f 3d0f ]   ( palette )
... ...
@@ -11,7 +11,6 @@
11 11
 		- Only draw-canvas when mouse has changed
12 12
 		- Only draw-canvas target tile
13 13
 		- Resize buttons
14
-		- Clear all button
15 14
 		- Limit size
16 15
 		- Draw point inbetween
17 16
 		- Pixel cleanup brush
... ...
@@ -161,10 +160,12 @@ BRK
161 160
 	#00 NEQ ,draw-canvas ROT JSR2?
162 161
 	
163 162
 	,$no-keys ~Keys #00 EQU JMP2?
164
-		,$no-keys-toogle-zoom ~Keys #20 NEQ JMP2?
165
-			~zoom.active #00 EQU =zoom.active
166
-			,redraw JSR2
167
-		$no-keys-toogle-zoom 
163
+		~Keys 
164
+		DUP #20 NEQ ,$no-space ROT JMP2?
165
+			( toggle zoom ) ~zoom.active #00 EQU =zoom.active ,redraw JSR2 $no-space 
166
+		DUP #08 NEQ ,$no-backspace ROT JMP2?
167
+			( erase ) ,clear JSR2 $no-backspace
168
+		POP
168 169
 		( release ) #00 =Keys
169 170
 	$no-keys
170 171
 
... ...
@@ -173,6 +174,19 @@ BRK
173 174
 
174 175
 BRK
175 176
 
177
+@clear
178
+	
179
+	( from ) ,data
180
+	( to ) ~canvas.w ~canvas.h MUL2 #0008 MUL2 ,data ADD2
181
+	$loop NOP
182
+		OVR2 #00 ROT ROT STR
183
+		( incr ) SWP2 #0001 ADD2 SWP2
184
+		OVR2 OVR2 LTH2 ^$loop SWP JMP?
185
+	POP2 POP2
186
+	,redraw JSR2
187
+
188
+RTN
189
+
176 190
 @load-file ( path )
177 191
 
178 192
 	=File.name ~canvas.w ~canvas.h MUL2 #0008 MUL2 =File.length ,data =File.load