| ... | ... |
@@ -14,16 +14,19 @@ |
| 14 | 14 |
|
| 15 | 15 |
( devices ) |
| 16 | 16 |
|
| 17 |
-|0100 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 18 |
-|0110 ;Screen { width 2 height 2 pad 4 x 2 y 2 color 1 }
|
|
| 19 |
-|0120 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 20 |
-|0170 ;Audio { ch1adsr 2 ch2adsr 2 ch3adsr 2 ch4adsr 2 ch1vol 1 ch1pitch 1 ch2vol 1 ch2pitch 1 ch3vol 1 ch3pitch 1 ch4vol 1 ch4pitch 1 }
|
|
| 21 |
-|0190 ;Time { year 2 month 1 day 1 hour 1 minute 1 second 1 dow 1 doy 2 isdst 1 get 1 }
|
|
| 22 |
-|01F0 ;System { pad 8 r 2 g 2 b 2 }
|
|
| 17 |
+|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 18 |
+|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 19 |
+|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
|
| 20 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 21 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 22 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 23 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 24 |
+|0180 ;Audio { ch1adsr 2 ch2adsr 2 ch3adsr 2 ch4adsr 2 ch1vol 1 ch1pitch 1 ch2vol 1 ch2pitch 1 ch3vol 1 ch3pitch 1 ch4vol 1 ch4pitch 1 }
|
|
| 25 |
+|01a0 ;Time { year 2 month 1 day 1 hour 1 minute 1 second 1 dow 1 doy 2 isdst 1 get 1 }
|
|
| 23 | 26 |
|
| 24 | 27 |
( program ) |
| 25 | 28 |
|
| 26 |
-|0200 @RESET |
|
| 29 |
+|0200 |
|
| 27 | 30 |
|
| 28 | 31 |
( theme ) #0ff8 =System.r #0f08 =System.g #0f08 =System.b |
| 29 | 32 |
( vectors ) ,FRAME =Screen.vector |
| ... | ... |
@@ -134,8 +137,6 @@ BRK |
| 134 | 137 |
|
| 135 | 138 |
RTN |
| 136 | 139 |
|
| 137 |
-@ERROR BRK |
|
| 138 |
- |
|
| 139 | 140 |
@table ( 60 positions on a circle in bytes ) |
| 140 | 141 |
[ |
| 141 | 142 |
8000 8d00 9a02 a706 b40b c011 cb18 d520 |
| ... | ... |
@@ -10,17 +10,20 @@ |
| 10 | 10 |
;r2 { x1 2 y1 2 x2 2 y2 2 }
|
| 11 | 11 |
;r3 { x1 2 y1 2 x2 2 y2 2 }
|
| 12 | 12 |
|
| 13 |
-|0110 ;Screen { width 2 height 2 pad 4 x 2 y 2 color 1 }
|
|
| 14 |
-|0120 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 15 |
-|0150 ;Mouse { x 2 y 2 state 1 chord 1 }
|
|
| 16 |
-|01F0 ;System { pad 8 r 2 g 2 b 2 }
|
|
| 13 |
+|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 14 |
+|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 15 |
+|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
|
| 16 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 17 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 18 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 19 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 17 | 20 |
|
| 18 | 21 |
( program ) |
| 19 | 22 |
|
| 20 |
-|0200 @RESET |
|
| 23 |
+|0200 |
|
| 21 | 24 |
|
| 22 | 25 |
( theme ) #0f0f =System.r #0fff =System.g #0ff0 =System.b |
| 23 |
- ( vectors ) ,FRAME =Screen.vector |
|
| 26 |
+ ( vectors ) ,on-mouse =Mouse.vector |
|
| 24 | 27 |
|
| 25 | 28 |
#0020 #0030 #0060 #0060 =r1.y2 =r1.x2 =r1.y1 =r1.x1 |
| 26 | 29 |
#0058 #0050 #0090 #0080 =r2.y2 =r2.x2 =r2.y1 =r2.x1 |
| ... | ... |
@@ -28,7 +31,7 @@ |
| 28 | 31 |
|
| 29 | 32 |
BRK |
| 30 | 33 |
|
| 31 |
-@FRAME |
|
| 34 |
+@on-mouse |
|
| 32 | 35 |
|
| 33 | 36 |
,pointer_icn =pointer.sprite |
| 34 | 37 |
|
| ... | ... |
@@ -98,5 +101,3 @@ RTN |
| 98 | 101 |
@clear_icn [ 0000 0000 0000 0000 ] |
| 99 | 102 |
@pointer_icn [ 80c0 e0f0 f8e0 1000 ] |
| 100 | 103 |
@hand_icn [ 4040 4070 f8f8 f870 ] |
| 101 |
- |
|
| 102 |
-@ERROR BRK |
| ... | ... |
@@ -3,20 +3,21 @@ |
| 3 | 3 |
%RTN { JMP2r }
|
| 4 | 4 |
|
| 5 | 5 |
;label { x 2 y 2 color 1 addr 2 }
|
| 6 |
-;rect { x1 2 y1 2 x2 2 y2 2 }
|
|
| 7 | 6 |
;center { x 2 y 2 }
|
| 8 |
-;i { short 2 }
|
|
| 9 | 7 |
|
| 10 |
-|0110 ;Screen { width 2 height 2 pad 4 x 2 y 2 color 1 }
|
|
| 11 |
-|0120 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 12 |
-|01F0 ;System { pad 8 r 2 g 2 b 2 }
|
|
| 8 |
+|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 9 |
+|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 10 |
+|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
|
| 11 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 12 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 13 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 14 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 13 | 15 |
|
| 14 | 16 |
( program ) |
| 15 | 17 |
|
| 16 | 18 |
|0200 @RESET |
| 17 | 19 |
|
| 18 | 20 |
( theme ) #0f0f =System.r #0fff =System.g #0ff0 =System.b |
| 19 |
- ( vectors ) ,FRAME =Screen.vector |
|
| 20 | 21 |
|
| 21 | 22 |
( find screen center ) |
| 22 | 23 |
~Screen.width #0002 DIV2 =center.x |
| ... | ... |
@@ -128,7 +129,4 @@ RTN |
| 128 | 129 |
@text2 [ Middle 20 Aligned 00 ] |
| 129 | 130 |
@text3 [ Right 20 Aligned 00 ] |
| 130 | 131 |
@text4 [ even 00 ] |
| 131 |
-@text5 [ odd 00 ] |
|
| 132 |
- |
|
| 133 |
-@FRAME BRK |
|
| 134 |
-@ERROR BRK |
|
| 132 |
+@text5 [ odd 00 ] |
|
| 135 | 133 |
\ No newline at end of file |
| ... | ... |
@@ -4,15 +4,19 @@ |
| 4 | 4 |
|
| 5 | 5 |
;pict { x 2 y 2 width 2 height 2 color 1 addr 2 }
|
| 6 | 6 |
|
| 7 |
-|0120 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 8 |
-|01F0 ;System { pad 8 r 2 g 2 b 2 }
|
|
| 7 |
+|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 8 |
+|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 9 |
+|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
|
| 10 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 11 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 12 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 13 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 9 | 14 |
|
| 10 | 15 |
( program ) |
| 11 | 16 |
|
| 12 |
-|0200 @RESET |
|
| 17 |
+|0200 |
|
| 13 | 18 |
|
| 14 | 19 |
( theme ) #0ffc =System.r #0f0b =System.g #0f03 =System.b |
| 15 |
- ( vectors ) ,FRAME =Screen.vector |
|
| 16 | 20 |
|
| 17 | 21 |
#0000 #0000 #0100 #0100 #01 ,pict_large ,draw-picture JSR2 |
| 18 | 22 |
#0098 #0060 #0080 #0080 #01 ,pict_medium ,draw-picture JSR2 |
| ... | ... |
@@ -309,6 +313,3 @@ RTN |
| 309 | 313 |
1081 4182 0500 0000 aa25 512a 44aa 0000 0254 0992 4984 0000 9452 4925 5289 0000 |
| 310 | 314 |
|
| 311 | 315 |
] |
| 312 |
- |
|
| 313 |
-@FRAME BRK |
|
| 314 |
-@ERROR BRK |
| ... | ... |
@@ -10,16 +10,19 @@ |
| 10 | 10 |
;rect { x1 2 y1 2 x2 2 y2 2 }
|
| 11 | 11 |
;line { x0 2 y0 2 x 2 y 2 sx 2 sy 2 dx 2 dy 2 e1 2 e2 2 }
|
| 12 | 12 |
;color { byte 1 }
|
| 13 |
- |
|
| 14 | 13 |
;circle { xc 2 yc 2 x 2 y 2 r 2 d 2 }
|
| 15 | 14 |
|
| 16 |
-|0110 ;Screen { width 2 height 2 pad 4 x 2 y 2 color 1 }
|
|
| 17 |
-|0120 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 18 |
-|01F0 ;System { pad 8 r 2 g 2 b 2 }
|
|
| 15 |
+|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 16 |
+|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
|
| 17 |
+|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
|
| 18 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 19 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 20 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 21 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 19 | 22 |
|
| 20 | 23 |
( program ) |
| 21 | 24 |
|
| 22 |
-|0200 @RESET |
|
| 25 |
+|0200 |
|
| 23 | 26 |
|
| 24 | 27 |
( theme ) #13fd =System.r #1ef3 =System.g #1bf2 =System.b |
| 25 | 28 |
|
| ... | ... |
@@ -54,10 +54,10 @@ |
| 54 | 54 |
|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
| 55 | 55 |
|0110 ;Console { pad 8 char 1 byte 1 short 2 }
|
| 56 | 56 |
|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 color 1 }
|
| 57 |
-|0130 ;Sprite { pad 8 x 2 y 2 addr 2 color 1 }
|
|
| 58 |
-|0140 ;Controller { p1 1 }
|
|
| 59 |
-|0150 ;Keys { key 1 }
|
|
| 60 |
-|0160 ;Mouse { x 2 y 2 state 1 chord 1 }
|
|
| 57 |
+|0130 ;Sprite { vector 2 pad 6 x 2 y 2 addr 2 color 1 }
|
|
| 58 |
+|0140 ;Controller { vector 2 button 1 }
|
|
| 59 |
+|0150 ;Keys { vector 2 key 1 }
|
|
| 60 |
+|0160 ;Mouse { vector 2 x 2 y 2 state 1 chord 1 }
|
|
| 61 | 61 |
|0170 ;File { pad 8 name 2 length 2 load 2 save 2 }
|
| 62 | 62 |
|
| 63 | 63 |
( program ) |
| ... | ... |
@@ -134,7 +134,7 @@ BRK |
| 134 | 134 |
~Mouse.state #00 EQU ,$no-touch JNZ2 |
| 135 | 135 |
|
| 136 | 136 |
( drag ) |
| 137 |
- ~Controller #02 NEQ ,$no-drag JNZ2 |
|
| 137 |
+ ~Controller.button #02 NEQ ,$no-drag JNZ2 |
|
| 138 | 138 |
~brush.drag #00 NEQ ^$no-drag-start JNZ |
| 139 | 139 |
~canvas.x1 =origin.x1 |
| 140 | 140 |
~canvas.y1 =origin.y1 |
| ... | ... |
@@ -262,8 +262,8 @@ BRK |
| 262 | 262 |
|
| 263 | 263 |
$no-touch |
| 264 | 264 |
|
| 265 |
- ~Controller.p1 #00 EQU ,$no-ctrl JNZ2 |
|
| 266 |
- ~Controller.p1 #f0 AND |
|
| 265 |
+ ~Controller.button #00 EQU ,$no-ctrl JNZ2 |
|
| 266 |
+ ~Controller.button #f0 AND |
|
| 267 | 267 |
DUP #04 SFT #01 AND #01 NEQ ^$no-up JNZ |
| 268 | 268 |
( move ) ~zoom.y -- =zoom.y $no-up |
| 269 | 269 |
DUP #05 SFT #01 AND #01 NEQ ^$no-down JNZ |
| ... | ... |
@@ -275,8 +275,8 @@ BRK |
| 275 | 275 |
#00 EQU #04 JNZ ,draw-canvas JSR2 |
| 276 | 276 |
$no-ctrl |
| 277 | 277 |
|
| 278 |
- ~Keys #00 EQU ,$no-keys JNZ2 |
|
| 279 |
- ~Keys |
|
| 278 |
+ ~Keys.key #00 EQU ,$no-keys JNZ2 |
|
| 279 |
+ ~Keys.key |
|
| 280 | 280 |
DUP #20 NEQ ^$no-space JNZ |
| 281 | 281 |
( toggle zoom ) ~zoom.active #00 EQU =zoom.active ,redraw JSR2 $no-space |
| 282 | 282 |
DUP #08 NEQ ^$no-backspace JNZ |
| ... | ... |
@@ -293,7 +293,7 @@ BRK |
| 293 | 293 |
( tool0 ) #04 =brush.tool ,draw-toolpane JSR2 $no-tkey |
| 294 | 294 |
DUP |
| 295 | 295 |
DUP #30 GTH SWP #39 LTH #0101 NEQ2 ^$no-numkey JNZ |
| 296 |
- ( size ) ~Keys #31 SUB =brush.size ,draw-sizepane JSR2 $no-numkey |
|
| 296 |
+ ( size ) ~Keys.key #31 SUB =brush.size ,draw-sizepane JSR2 $no-numkey |
|
| 297 | 297 |
POP |
| 298 | 298 |
( release ) #00 =Keys |
| 299 | 299 |
$no-keys |
| ... | ... |
@@ -306,21 +306,21 @@ BRK |
| 306 | 306 |
|
| 307 | 307 |
@on-rename ( -- ) |
| 308 | 308 |
|
| 309 |
- ~Keys #00 EQU ,$no-keys JNZ2 |
|
| 309 |
+ ~Keys.key #00 EQU ,$no-keys JNZ2 |
|
| 310 | 310 |
( enter ) |
| 311 |
- ~Keys #0d NEQ ^$no-enter JNZ |
|
| 311 |
+ ~Keys.key #0d NEQ ^$no-enter JNZ |
|
| 312 | 312 |
#00 =document.edit |
| 313 | 313 |
,redraw JSR2 BRK |
| 314 | 314 |
$no-enter |
| 315 | 315 |
( backspace ) |
| 316 |
- ~Keys #08 NEQ ^$no-backspace JNZ |
|
| 316 |
+ ~Keys.key #08 NEQ ^$no-backspace JNZ |
|
| 317 | 317 |
~path.length #00 EQU ^$end JNZ |
| 318 | 318 |
~path.length #01 SUB =path.length |
| 319 | 319 |
^$end JMP |
| 320 | 320 |
$no-backspace |
| 321 | 321 |
( default ) |
| 322 | 322 |
~path.length #1f EQU ^$end JNZ |
| 323 |
- ~Keys ,path.name #00 ~path.length ADD2 POK2 |
|
| 323 |
+ ~Keys.key ,path.name #00 ~path.length ADD2 POK2 |
|
| 324 | 324 |
~path.length #01 ADD =path.length |
| 325 | 325 |
$end |
| 326 | 326 |
#00 ,path.name #00 ~path.length ADD2 POK2 |
| ... | ... |
@@ -659,7 +659,7 @@ RTN |
| 659 | 659 |
( draw size cursor ) |
| 660 | 660 |
~brush.tool #01 NEQ ,$outside-canvas JNZ2 |
| 661 | 661 |
( do not draw size when holding alt ) |
| 662 |
- ~Controller #02 EQU ,$outside-canvas JNZ2 |
|
| 662 |
+ ~Controller.button #02 EQU ,$outside-canvas JNZ2 |
|
| 663 | 663 |
~Mouse.x CLN2r ~canvas.x1 GTH2 STH2r ~canvas.x2 LTH2 #0101 NEQ2 ,$outside-canvas JNZ2 |
| 664 | 664 |
~Mouse.y CLN2r ~canvas.y1 GTH2 STH2r ~canvas.y2 LTH2 #0101 NEQ2 ,$outside-canvas JNZ2 |
| 665 | 665 |
( do not draw size in toolpane ) |
| ... | ... |
@@ -673,7 +673,7 @@ RTN |
| 673 | 673 |
$outside-canvas |
| 674 | 674 |
( draw new cursor ) |
| 675 | 675 |
~cursor.x =Sprite.x ~cursor.y =Sprite.y |
| 676 |
- ,pointers_icn #00 ~Controller #02 EQU 8* ADD2 =Sprite.addr |
|
| 676 |
+ ,pointers_icn #00 ~Controller.button #02 EQU 8* ADD2 =Sprite.addr |
|
| 677 | 677 |
#1f ~Mouse.state #01 EQU #0a MUL SUB =Sprite.color |
| 678 | 678 |
|
| 679 | 679 |
RTN |
| ... | ... |
@@ -998,6 +998,4 @@ RTN |
| 998 | 998 |
0008 0808 0808 0800 0030 1008 0810 3000 0000 0032 4c00 0000 3c42 99a1 a199 423c |
| 999 | 999 |
] |
| 1000 | 1000 |
|
| 1001 |
-@ERROR BRK |
|
| 1002 |
- |
|
| 1003 | 1001 |
|2100 @data |
| ... | ... |
@@ -189,6 +189,6 @@ portuxn(Uxn *u, Uint8 id, char *name, Uint8 (*pofn)(Uxn *u, Uint16 ptr, Uint8 b0 |
| 189 | 189 |
Device *d = &u->dev[id]; |
| 190 | 190 |
d->addr = PAGE_DEVICE + id * 0x10; |
| 191 | 191 |
d->poke = pofn; |
| 192 |
- printf("Device added #%d: %s, at 0x%04x \n", id, name, d->addr);
|
|
| 192 |
+ printf("Device added #%02x: %s, at 0x%04x \n", id, name, d->addr);
|
|
| 193 | 193 |
return d; |
| 194 | 194 |
} |