... | ... |
@@ -7,33 +7,25 @@ |
7 | 7 |
|
8 | 8 |
%RTN { JMP2r } |
9 | 9 |
%TOS { #00 SWP } |
10 |
-%INCR { SWP #01 ADD SWP } |
|
11 |
-%GET-ITERATORS { SWP2k POP SWP POP } |
|
12 | 10 |
|
13 | 11 |
( devices ) |
14 | 12 |
|
15 | 13 |
|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ] |
16 |
-|10 @Console [ &vector $2 &read $1 &pad $5 &write $1 ] |
|
17 | 14 |
|20 @Screen [ &vector $2 &width $2 &height $2 &pad $2 &x $2 &y $2 &addr $2 &color $1 ] |
18 |
-|80 @Controller [ &vector $2 &button $1 &key $1 ] |
|
19 | 15 |
|a0 @File [ &vector $2 &success $2 &offset $2 &pad $2 &name $2 &length $2 &load $2 &save $2 ] |
20 | 16 |
|
21 | 17 |
( variables ) |
22 | 18 |
|
23 | 19 |
|0000 |
24 | 20 |
|
25 |
-@position |
|
26 |
- &x $2 |
|
27 |
- &y $2 |
|
28 |
- |
|
29 | 21 |
( init ) |
30 | 22 |
|
31 | 23 |
|0100 ( -> ) |
32 | 24 |
|
33 | 25 |
( theme ) |
34 |
- #0f73 .System/r DEO2 |
|
35 |
- #0fe3 .System/g DEO2 |
|
36 |
- #0fc3 .System/b DEO2 |
|
26 |
+ #0f7f .System/r DEO2 |
|
27 |
+ #0fe0 .System/g DEO2 |
|
28 |
+ #0fc0 .System/b DEO2 |
|
37 | 29 |
|
38 | 30 |
( load font ) |
39 | 31 |
#4000 .File/length DEO2 |
... | ... |
@@ -66,34 +58,28 @@ BRK |
66 | 58 |
&sprite ( char color -- ) |
67 | 59 |
STH |
68 | 60 |
( get addr ) STHk TOS #0020 ** ;font-data #0100 ++ ++ .Screen/addr DEO2 |
61 |
+ ( get width ) STHkr TOS ;font-data ++ LDA TOS |
|
69 | 62 |
SWPr |
70 |
- ( top-left ) STHkr .Screen/color DEO |
|
63 |
+ ( left-top ) STHkr .Screen/color DEO |
|
71 | 64 |
.Screen/y DEI2 #0008 ++ .Screen/y DEO2 |
72 | 65 |
.Screen/addr DEI2 #0010 ++ .Screen/addr DEO2 |
73 |
- ( bottom-left ) STHkr .Screen/color DEO |
|
66 |
+ ( left-bottom ) STHkr .Screen/color DEO |
|
74 | 67 |
.Screen/x DEI2 #0008 ++ .Screen/x DEO2 |
75 |
- .Screen/addr DEI2 #0008 ++ .Screen/addr DEO2 |
|
76 |
- ( bottom-right ) STHkr .Screen/color DEO |
|
77 | 68 |
.Screen/y DEI2 #0008 -- .Screen/y DEO2 |
78 |
- .Screen/addr DEI2 #0010 -- .Screen/addr DEO2 |
|
79 |
- ( top-right ) STHkr .Screen/color DEO |
|
69 |
+ DUP #09 < ,&thin JCN |
|
70 |
+ .Screen/addr DEI2 #0008 -- .Screen/addr DEO2 |
|
71 |
+ ( right-top ) STHkr .Screen/color DEO |
|
72 |
+ .Screen/addr DEI2 #0010 ++ .Screen/addr DEO2 |
|
73 |
+ .Screen/y DEI2 #0008 ++ .Screen/y DEO2 |
|
74 |
+ ( right-bottom ) STHkr .Screen/color DEO |
|
75 |
+ .Screen/y DEI2 #0008 -- .Screen/y DEO2 &thin |
|
80 | 76 |
SWPr |
81 |
- ( get width ) STHkr TOS ;font-data ++ LDA TOS .Screen/x DEI2 ++ #0008 -- .Screen/x DEO2 |
|
77 |
+ ( use width ) .Screen/x DEI2 ++ #0008 -- .Screen/x DEO2 |
|
82 | 78 |
POPr POPr |
83 | 79 |
RTN |
84 | 80 |
|
85 | 81 |
RTN |
86 | 82 |
|
87 |
-@font-hex |
|
88 |
- 003c 464a 5262 3c00 0018 0808 0808 1c00 |
|
89 |
- 003c 4202 3c40 7e00 003c 421c 0242 3c00 |
|
90 |
- 000c 1424 447e 0400 007e 407c 0242 3c00 |
|
91 |
- 003c 407c 4242 3c00 007e 0204 0810 1000 |
|
92 |
- 003c 423c 4242 3c00 003c 4242 3e02 3c00 |
|
93 |
- 003c 4242 7e42 4200 007c 427c 4242 7c00 |
|
94 |
- 003c 4240 4042 3c00 007c 4242 4242 7c00 |
|
95 |
- 007e 4078 4040 7e00 007e 4078 4040 4000 |
|
96 |
- |
|
97 | 83 |
@body |
98 | 84 |
4927 6c6c 206d 616b 6520 6120 736f 756e |
99 | 85 |
6420 7468 6174 2773 2073 6f20 616c 6f6e |