| 39 | 39 |
deleted file mode 100644 |
| ... | ... |
@@ -1,63 +0,0 @@ |
| 1 |
-( GUI Animation ) |
|
| 2 |
- |
|
| 3 |
-;dvd { x 2 y 2 dx 1 dy 1 }
|
|
| 4 |
- |
|
| 5 |
-|0100 ;System { vector 2 pad 6 r 2 g 2 b 2 }
|
|
| 6 |
-|0120 ;Screen { vector 2 width 2 height 2 pad 2 x 2 y 2 addr 2 color 1 }
|
|
| 7 |
- |
|
| 8 |
-( program ) |
|
| 9 |
- |
|
| 10 |
-|0200 |
|
| 11 |
- |
|
| 12 |
- ( theme ) #4cfd =System.r #4cf3 =System.g #dcf2 =System.b |
|
| 13 |
- ( vectors ) ,on-frame =Screen.vector |
|
| 14 |
- ( init ) ~Screen.width #0002 DIV2 =dvd.x |
|
| 15 |
- ( init ) ~Screen.height #0002 DIV2 =dvd.y |
|
| 16 |
- |
|
| 17 |
-BRK |
|
| 18 |
- |
|
| 19 |
-@on-frame ( -> ) |
|
| 20 |
- |
|
| 21 |
- ( clear ) #20 ,draw-dvd JSR2 |
|
| 22 |
- ( hit-right ) ~dvd.x ~Screen.width #0020 SUB2 EQU2 |
|
| 23 |
- ( hit-left ) ~dvd.x #0000 EQU2 |
|
| 24 |
- #0000 EQU2 ^$no-flipx JNZ |
|
| 25 |
- ~dvd.dx #00 EQU =dvd.dx $no-flipx |
|
| 26 |
- ( hit-bottom ) ~dvd.y ~Screen.height #0010 SUB2 EQU2 |
|
| 27 |
- ( hit-top ) ~dvd.y #0000 EQU2 |
|
| 28 |
- #0000 EQU2 ^$no-flipy JNZ |
|
| 29 |
- ~dvd.dy #00 EQU =dvd.dy $no-flipy |
|
| 30 |
- ( incr ) ~dvd.x #0001 #00 ~dvd.dx #00 EQU #fffe MUL2 ADD2 ADD2 =dvd.x |
|
| 31 |
- ( incr ) ~dvd.y #0001 #00 ~dvd.dy #00 EQU #fffe MUL2 ADD2 ADD2 =dvd.y |
|
| 32 |
- ( draw ) #21 ,draw-dvd JSR2 |
|
| 33 |
- |
|
| 34 |
-BRK |
|
| 35 |
- |
|
| 36 |
-@draw-dvd ( color -- ) |
|
| 37 |
- |
|
| 38 |
- ( stash color ) STH |
|
| 39 |
- ,dvd_icn =Screen.addr |
|
| 40 |
- ~dvd.y ~dvd.y #0010 ADD2 |
|
| 41 |
- $ver |
|
| 42 |
- OVR2 =Screen.y |
|
| 43 |
- ~dvd.x ~dvd.x #0020 ADD2 |
|
| 44 |
- $hor |
|
| 45 |
- OVR2 =Screen.x |
|
| 46 |
- ( draw ) DUPr STHr =Screen.color |
|
| 47 |
- ( next ) ~Screen.addr #0008 ADD2 =Screen.addr |
|
| 48 |
- ( incr ) SWP2 #0008 ADD2 SWP2 |
|
| 49 |
- OVR2 OVR2 LTH2 ^$hor JNZ |
|
| 50 |
- POP2 POP2 |
|
| 51 |
- ( incr ) SWP2 #0008 ADD2 SWP2 |
|
| 52 |
- OVR2 OVR2 LTH2 ^$ver JNZ |
|
| 53 |
- POP2 POP2 |
|
| 54 |
- ( destroy color ) POPr |
|
| 55 |
- |
|
| 56 |
-JMP2r |
|
| 57 |
- |
|
| 58 |
-@dvd_icn [ |
|
| 59 |
- 001f 3f38 3838 787f 00fe fe7e 7777 e3c3 |
|
| 60 |
- 000f 1f3b 7b77 e7c7 00fc fe8f 8707 0efc |
|
| 61 |
- 7f00 000f ff7f 0700 0301 00ff f0f8 ff00 |
|
| 62 |
- 8700 00ff 7f7f ff00 f000 00e0 fcfc 8000 |
|
| 63 |
-] |
|
| 64 | 0 |
\ No newline at end of file |
| 65 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,74 @@ |
| 1 |
+( GUI Animation ) |
|
| 2 |
+ |
|
| 3 |
+|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ] |
|
| 4 |
+|20 @Screen [ &vector $2 &width $2 &height $2 &pad $2 &x $2 &y $2 &addr $2 &color $1 ] |
|
| 5 |
+ |
|
| 6 |
+|0100 |
|
| 7 |
+ |
|
| 8 |
+@dvd [ &x $2 &y $2 &dx $1 &dy $1 ] |
|
| 9 |
+ |
|
| 10 |
+( program ) |
|
| 11 |
+ |
|
| 12 |
+|0100 ( -> ) |
|
| 13 |
+ |
|
| 14 |
+ ( theme ) |
|
| 15 |
+ #4cfd .System/r DEO2 |
|
| 16 |
+ #4cf3 .System/g DEO2 |
|
| 17 |
+ #dcf2 .System/b DEO2 |
|
| 18 |
+ |
|
| 19 |
+ ( vectors ) |
|
| 20 |
+ ;on-frame .Screen/vector DEO2 |
|
| 21 |
+ |
|
| 22 |
+ ( starting position ) |
|
| 23 |
+ .Screen/width DEI2 #0002 DIV2 .dvd/x POK2 |
|
| 24 |
+ .Screen/height DEI2 #0002 DIV2 .dvd/y POK2 |
|
| 25 |
+ |
|
| 26 |
+ #21 ;draw-dvd JSR2 |
|
| 27 |
+ |
|
| 28 |
+BRK |
|
| 29 |
+ |
|
| 30 |
+@on-frame ( -> ) |
|
| 31 |
+ |
|
| 32 |
+ ( clear ) #20 ;draw-dvd JSR2 |
|
| 33 |
+ ( hit-right ) .dvd/x PEK2 .Screen/width DEI2 #0020 SUB2 EQU2 |
|
| 34 |
+ ( hit-left ) .dvd/x PEK2 #0000 EQU2 |
|
| 35 |
+ #0000 EQU2 ,&no-flipx JNZ |
|
| 36 |
+ .dvd/dx PEK #00 EQU .dvd/dx POK &no-flipx |
|
| 37 |
+ ( hit-bottom ) .dvd/y PEK2 .Screen/height DEI2 #0010 SUB2 EQU2 |
|
| 38 |
+ ( hit-top ) .dvd/y PEK2 #0000 EQU2 |
|
| 39 |
+ #0000 EQU2 ,&no-flipy JNZ |
|
| 40 |
+ .dvd/dy PEK #00 EQU .dvd/dy POK &no-flipy |
|
| 41 |
+ ( incr ) .dvd/x PEK2 #0001 #00 .dvd/dx PEK #00 EQU #fffe MUL2 ADD2 ADD2 .dvd/x POK2 |
|
| 42 |
+ ( incr ) .dvd/y PEK2 #0001 #00 .dvd/dy PEK #00 EQU #fffe MUL2 ADD2 ADD2 .dvd/y POK2 |
|
| 43 |
+ ( draw ) #21 ;draw-dvd JSR2 |
|
| 44 |
+ |
|
| 45 |
+BRK |
|
| 46 |
+ |
|
| 47 |
+@draw-dvd ( color -- ) |
|
| 48 |
+ |
|
| 49 |
+ ( stash color ) STH |
|
| 50 |
+ ;dvd_icn .Screen/addr DEO2 |
|
| 51 |
+ .dvd/y PEK2 .dvd/y PEK2 #0010 ADD2 |
|
| 52 |
+ &ver |
|
| 53 |
+ OVR2 .Screen/y DEO2 |
|
| 54 |
+ .dvd/x PEK2 .dvd/x PEK2 #0020 ADD2 |
|
| 55 |
+ &hor |
|
| 56 |
+ OVR2 .Screen/x DEO2 |
|
| 57 |
+ ( draw ) DUPr STHr .Screen/color DEO |
|
| 58 |
+ ( next ) .Screen/addr DEI2 #0008 ADD2 .Screen/addr DEO2 |
|
| 59 |
+ ( incr ) SWP2 #0008 ADD2 SWP2 |
|
| 60 |
+ OVR2 OVR2 LTH2 ,&hor JNZ |
|
| 61 |
+ POP2 POP2 |
|
| 62 |
+ ( incr ) SWP2 #0008 ADD2 SWP2 |
|
| 63 |
+ OVR2 OVR2 LTH2 ,&ver JNZ |
|
| 64 |
+ POP2 POP2 |
|
| 65 |
+ ( destroy color ) POPr |
|
| 66 |
+ |
|
| 67 |
+JMP2r |
|
| 68 |
+ |
|
| 69 |
+@dvd_icn [ |
|
| 70 |
+ 001f 3f38 3838 787f 00fe fe7e 7777 e3c3 |
|
| 71 |
+ 000f 1f3b 7b77 e7c7 00fc fe8f 8707 0efc |
|
| 72 |
+ 7f00 000f ff7f 0700 0301 00ff f0f8 ff00 |
|
| 73 |
+ 8700 00ff 7f7f ff00 f000 00e0 fcfc 8000 |
|
| 74 |
+] |
|
| 0 | 75 |
\ No newline at end of file |
| ... | ... |
@@ -13,22 +13,22 @@ WITH REGARD TO THIS SOFTWARE. |
| 13 | 13 |
#include "ppu.h" |
| 14 | 14 |
|
| 15 | 15 |
static Uint8 font[][8] = {
|
| 16 |
- {0x00, 0x3c, 0x46, 0x4a, 0x52, 0x62, 0x3c, 0x00},
|
|
| 17 |
- {0x00, 0x18, 0x28, 0x08, 0x08, 0x08, 0x3e, 0x00},
|
|
| 18 |
- {0x00, 0x3c, 0x42, 0x02, 0x3c, 0x40, 0x7e, 0x00},
|
|
| 19 |
- {0x00, 0x3c, 0x42, 0x1c, 0x02, 0x42, 0x3c, 0x00},
|
|
| 20 |
- {0x00, 0x08, 0x18, 0x28, 0x48, 0x7e, 0x08, 0x00},
|
|
| 21 |
- {0x00, 0x7e, 0x40, 0x7c, 0x02, 0x42, 0x3c, 0x00},
|
|
| 22 |
- {0x00, 0x3c, 0x40, 0x7c, 0x42, 0x42, 0x3c, 0x00},
|
|
| 23 |
- {0x00, 0x7e, 0x02, 0x04, 0x08, 0x10, 0x10, 0x00},
|
|
| 24 |
- {0x00, 0x3c, 0x42, 0x3c, 0x42, 0x42, 0x3c, 0x00},
|
|
| 25 |
- {0x00, 0x3c, 0x42, 0x42, 0x3e, 0x02, 0x3c, 0x00},
|
|
| 26 |
- {0x00, 0x3c, 0x42, 0x42, 0x7e, 0x42, 0x42, 0x00},
|
|
| 27 |
- {0x00, 0x7c, 0x42, 0x7c, 0x42, 0x42, 0x7c, 0x00},
|
|
| 28 |
- {0x00, 0x3c, 0x42, 0x40, 0x40, 0x42, 0x3c, 0x00},
|
|
| 29 |
- {0x00, 0x78, 0x44, 0x42, 0x42, 0x44, 0x78, 0x00},
|
|
| 30 |
- {0x00, 0x7e, 0x40, 0x7c, 0x40, 0x40, 0x7e, 0x00},
|
|
| 31 |
- {0x00, 0x7e, 0x40, 0x40, 0x7c, 0x40, 0x40, 0x00}};
|
|
| 16 |
+ {0x00, 0x7c, 0x82, 0x82, 0x82, 0x82, 0x82, 0x7c},
|
|
| 17 |
+ {0x00, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10},
|
|
| 18 |
+ {0x00, 0x7c, 0x82, 0x02, 0x7c, 0x80, 0x80, 0xfe},
|
|
| 19 |
+ {0x00, 0x7c, 0x82, 0x02, 0x1c, 0x02, 0x82, 0x7c},
|
|
| 20 |
+ {0x00, 0x0c, 0x14, 0x24, 0x44, 0x84, 0xfe, 0x04},
|
|
| 21 |
+ {0x00, 0xfe, 0x80, 0x80, 0x7c, 0x02, 0x82, 0x7c},
|
|
| 22 |
+ {0x00, 0x7c, 0x82, 0x80, 0xfc, 0x82, 0x82, 0x7c},
|
|
| 23 |
+ {0x00, 0x7c, 0x82, 0x02, 0x1e, 0x02, 0x02, 0x02},
|
|
| 24 |
+ {0x00, 0x7c, 0x82, 0x82, 0x7c, 0x82, 0x82, 0x7c},
|
|
| 25 |
+ {0x00, 0x7c, 0x82, 0x82, 0x7e, 0x02, 0x82, 0x7c},
|
|
| 26 |
+ {0x00, 0x7c, 0x82, 0x02, 0x7e, 0x82, 0x82, 0x7e},
|
|
| 27 |
+ {0x00, 0xfc, 0x82, 0x82, 0xfc, 0x82, 0x82, 0xfc},
|
|
| 28 |
+ {0x00, 0x7c, 0x82, 0x80, 0x80, 0x80, 0x82, 0x7c},
|
|
| 29 |
+ {0x00, 0xfc, 0x82, 0x82, 0x82, 0x82, 0x82, 0xfc},
|
|
| 30 |
+ {0x00, 0x7c, 0x82, 0x80, 0xf0, 0x80, 0x82, 0x7c},
|
|
| 31 |
+ {0x00, 0x7c, 0x82, 0x80, 0xf0, 0x80, 0x80, 0x80}};
|
|
| 32 | 32 |
|
| 33 | 33 |
void |
| 34 | 34 |
clear(Ppu *p) |