... | ... |
@@ -1,16 +1,23 @@ |
1 | 1 |
( Orca |
2 | 2 |
|
3 | 3 |
TODO |
4 |
+ - Display guides |
|
4 | 5 |
- Clamp selection to grid |
5 |
- - Chorded copy/paste |
|
6 |
+ - Synthax highlight |
|
6 | 7 |
- Locking ports |
7 | 8 |
- Detect capitalization |
8 |
- - Fill grid with . characters on start |
|
9 |
- - Display guides |
|
10 |
- - Draw Frame number in UI |
|
9 |
+ - Draw Interface |
|
10 |
+ - Position |
|
11 |
+ - Frame |
|
12 |
+ - BPM |
|
13 |
+ - Toggle Guides |
|
14 |
+ - New |
|
15 |
+ - Save |
|
16 |
+ - Load |
|
11 | 17 |
- Comments |
12 | 18 |
- Load/Save |
13 | 19 |
- Copy/Paste |
20 |
+ - Copy/paste(chorded) |
|
14 | 21 |
) |
15 | 22 |
|
16 | 23 |
%RTN { JMP2r } |
... | ... |
@@ -36,7 +43,7 @@ |
36 | 43 |
|
37 | 44 |
|0200 |
38 | 45 |
|
39 |
- ( theme ) #0faf =System.r #0fff =System.g #0f5f =System.b |
|
46 |
+ ( theme ) #08f3 =System.r #08fc =System.g #08f9 =System.b |
|
40 | 47 |
( vectors ) ,on-button =Controller.vector |
41 | 48 |
( vectors ) ,on-key =Keys.vector |
42 | 49 |
( vectors ) ,on-mouse =Mouse.vector |
... | ... |
@@ -196,6 +203,24 @@ RTN |
196 | 203 |
|
197 | 204 |
RTN |
198 | 205 |
|
206 |
+@get-char-sprite-grid ( x y -- addr ) |
|
207 |
+ |
|
208 |
+ DUP2 ,get-char JSR2 |
|
209 |
+ ( if character is dot ) |
|
210 |
+ DUP #2e NEQ ^$no-bar JNZ |
|
211 |
+ ( check if x,y is grid ) |
|
212 |
+ POP |
|
213 |
+ #08 MOD #00 EQU |
|
214 |
+ SWP |
|
215 |
+ #08 MOD #00 EQU |
|
216 |
+ ( make it a + ) #0101 EQU2 #00 SWP #0058 MUL2 ,font ADD2 |
|
217 |
+ RTN |
|
218 |
+ $no-bar |
|
219 |
+ STH POP2 STHr |
|
220 |
+ #20 SUB #00 SWP #0008 MUL2 ,font ADD2 |
|
221 |
+ |
|
222 |
+RTN |
|
223 |
+ |
|
199 | 224 |
@op-a ( x y char -- ) |
200 | 225 |
|
201 | 226 |
POP |
... | ... |
@@ -210,7 +235,13 @@ RTN |
210 | 235 |
|
211 | 236 |
@op-b ( x y char -- ) |
212 | 237 |
|
213 |
- POP POP2 |
|
238 |
+ POP |
|
239 |
+ ( get left ) DUP2 SWP #01 SUB SWP ,get-value JSR2 STH |
|
240 |
+ ( get right ) DUP2 SWP #01 ADD SWP ,get-value JSR2 STH |
|
241 |
+ ( incr y ) #01 ADD |
|
242 |
+ ( get result ) SUBr STHr |
|
243 |
+ ,get-value-char JSR2 |
|
244 |
+ ,put-char JSR2 |
|
214 | 245 |
|
215 | 246 |
RTN |
216 | 247 |
|
... | ... |
@@ -240,7 +271,6 @@ RTN |
240 | 271 |
( get x,y ) SWP2 OVR STH SWP2 OVR STHr DUP2 |
241 | 272 |
,get-char JSR2 |
242 | 273 |
,run-char JSR2 |
243 |
- $next-char |
|
244 | 274 |
( incr ) SWP #01 ADD SWP |
245 | 275 |
DUP2 LTH ^$hor JNZ |
246 | 276 |
POP2 |
... | ... |
@@ -260,8 +290,8 @@ RTN |
260 | 290 |
$hor |
261 | 291 |
( pos-x ) OVR #00 SWP #0008 MUL2 =Sprite.x |
262 | 292 |
( get x,y ) SWP2 OVR STH SWP2 OVR STHr |
263 |
- ( sprite ) DUP2 ,get-char-sprite JSR2 =Sprite.addr |
|
264 |
- ( draw ) ,is-selected JSR2 #08 MUL #01 ADD =Sprite.color |
|
293 |
+ ( sprite ) DUP2 ,get-char-sprite-grid JSR2 =Sprite.addr |
|
294 |
+ ( draw ) ,is-selected JSR2 #0d MUL #01 ADD =Sprite.color |
|
265 | 295 |
( incr ) SWP #01 ADD SWP |
266 | 296 |
DUP2 LTH ^$hor JNZ |
267 | 297 |
POP2 |