... | ... |
@@ -7,7 +7,7 @@ |
7 | 7 |
|
8 | 8 |
%2* { #10 SFT } |
9 | 9 |
%4* { #20 SFT } %4/ { #02 SFT } |
10 |
-%8/ { #03 SFT } |
|
10 |
+%8* { #30 SFT } %8/ { #03 SFT } |
|
11 | 11 |
%2** { #10 SFT2 } %2// { #01 SFT2 } |
12 | 12 |
%4** { #20 SFT2 } |
13 | 13 |
%8** { #30 SFT2 } %8// { #03 SFT2 } |
... | ... |
@@ -203,13 +203,26 @@ BRK |
203 | 203 |
DUP #03 ! ,&no-div JCN ;do-div JSR2 &no-div |
204 | 204 |
POP |
205 | 205 |
|
206 |
+ ;draw-bitpad JSR2 |
|
206 | 207 |
( release mouse ) #00 .Mouse/state DEO |
207 | 208 |
|
208 | 209 |
BRK |
209 | 210 |
|
210 | 211 |
@click-bitpad ( x* y* -> ) |
211 | 212 |
|
212 |
- DEBUG2 DEBUG2 |
|
213 |
+ .bitpad-frame/y LDZ2 -- 8// NIP 8* STH |
|
214 |
+ .bitpad-frame/x LDZ2 -- 8// NIP STHr + |
|
215 |
+ STHk |
|
216 |
+ |
|
217 |
+ #30 + .Audio0/pitch DEO |
|
218 |
+ |
|
219 |
+ ( toggle bit ) |
|
220 |
+ .input/value LDZ2 #0001 |
|
221 |
+ [ STHr #0f SWP - ] #40 SFT SFT2 EOR2 |
|
222 |
+ .input/value STZ2 |
|
223 |
+ |
|
224 |
+ ( release mouse ) #00 .Mouse/state DEO |
|
225 |
+ ;draw-bitpad JSR2 |
|
213 | 226 |
|
214 | 227 |
BRK |
215 | 228 |
|
... | ... |
@@ -238,6 +251,7 @@ BRK |
238 | 251 |
TOS .input/value LDZ2 #40 SFT2 ++ .input/value STZ2 |
239 | 252 |
.input/length LDZ INC .input/length STZ |
240 | 253 |
#ff ;draw-input JSR2 |
254 |
+ ;draw-bitpad JSR2 |
|
241 | 255 |
|
242 | 256 |
RTN |
243 | 257 |
|
... | ... |
@@ -478,9 +492,9 @@ RTN |
478 | 492 |
|
479 | 493 |
#10 #00 |
480 | 494 |
&loop |
481 |
- ( state ) #00 STH |
|
482 |
- ( y ) .bitpad-frame/y LDZ2 STH2 |
|
483 |
- ( x ) DUP TOS 4** .bitpad-frame/x LDZ2 ++ |
|
495 |
+ ( state ) DUP #0f SWP - .input/value LDZ2 ROT SFT2 #0001 AND2 NIP STH |
|
496 |
+ ( y ) DUP 8/ TOS 8** .bitpad-frame/y LDZ2 ++ STH2 |
|
497 |
+ ( x ) DUP #07 AND TOS 8** .bitpad-frame/x LDZ2 ++ |
|
484 | 498 |
STH2r STHr #01 ;draw-bit JSR2 |
485 | 499 |
INC GTHk ,&loop JCN |
486 | 500 |
POP2 |
... | ... |
@@ -490,7 +504,7 @@ RTN |
490 | 504 |
@draw-bit ( x* y* state color -- ) |
491 | 505 |
|
492 | 506 |
STH |
493 |
- ( addr ) POP ;bit-icns .Screen/addr DEO2 |
|
507 |
+ ( addr ) 8* TOS ;bit-icns ++ .Screen/addr DEO2 |
|
494 | 508 |
( y ) .Screen/y DEO2 |
495 | 509 |
( x ) .Screen/x DEO2 |
496 | 510 |
STHr .Screen/sprite DEO |
... | ... |
@@ -681,7 +695,10 @@ RTN |
681 | 695 |
fefe fefe fe7c 3800 |
682 | 696 |
|
683 | 697 |
@bit-icns |
684 |
- e0e0 e0e0 e0e0 e000 |
|
698 |
+ &outline |
|
699 |
+ 3844 8282 8244 3800 |
|
700 |
+ &full |
|
701 |
+ 387c fefe fe7c 3800 |
|
685 | 702 |
|
686 | 703 |
@stack-icns |
687 | 704 |
&push |