... | ... |
@@ -27,8 +27,9 @@ |
27 | 27 |
%RTN { JMP2r } |
28 | 28 |
%TOS { #00 SWP } |
29 | 29 |
|
30 |
-%WIDTH { #40 } |
|
30 |
+%WIDTH { #40 } |
|
31 | 31 |
%HEIGHT { #40 } |
32 |
+%LENGTH { #1000 } |
|
32 | 33 |
|
33 | 34 |
( devices ) |
34 | 35 |
|
... | ... |
@@ -74,7 +75,7 @@ BRK |
74 | 75 |
.timer/frame LDZk |
75 | 76 |
#03 AND ,&no-run JCN |
76 | 77 |
;run JSR2 |
77 |
- ;future-world ;past-world #4000 ;mcpy JSR2 |
|
78 |
+ ;past-world LENGTH ++ ;past-world LENGTH ;mcpy JSR2 |
|
78 | 79 |
;redraw JSR2 |
79 | 80 |
&no-run |
80 | 81 |
LDZk INC SWP STZ |
... | ... |
@@ -144,7 +145,7 @@ RTN |
144 | 145 |
&hor |
145 | 146 |
( x,y ) DUP STHkr |
146 | 147 |
( cell ) DUP2 ,get-addr JSR STH2k LDA |
147 |
- ( transform ) ,transform JSR STH2r ( future ) #4000 ++ STA |
|
148 |
+ ( transform ) ,transform JSR STH2r ( future ) LENGTH ++ STA |
|
148 | 149 |
INC GTHk ,&hor JCN |
149 | 150 |
POP2 |
150 | 151 |
POPr |
... | ... |
@@ -153,33 +154,35 @@ RTN |
153 | 154 |
|
154 | 155 |
RTN |
155 | 156 |
|
156 |
-@transform ( xy cell -- cell ) |
|
157 |
- |
|
158 |
- DUP #03 ! ,&no-head JCN POP POP2 #02 RTN &no-head |
|
159 |
- DUP #02 ! ,&no-tail JCN POP POP2 #01 RTN &no-tail |
|
160 |
- DUP #01 ! ,&no-cond JCN POP ,morph JSR #02 * INC RTN &no-cond |
|
161 |
- NIP NIP |
|
162 |
- |
|
163 |
-RTN |
|
164 |
- |
|
165 | 157 |
@get-addr ( x y -- addr* ) |
166 | 158 |
|
167 | 159 |
TOS [ #00 WIDTH ] ** ROT TOS ++ ;past-world ++ |
168 | 160 |
|
169 | 161 |
RTN |
170 | 162 |
|
171 |
-@morph ( xy -- bool ) |
|
163 |
+@transform ( xy cell -- cell ) |
|
172 | 164 |
|
173 |
- LITr 00 |
|
174 |
- DUP2 SWP #01 - SWP #01 - ,get-addr JSR LDA #03 ! JMP INCr |
|
175 |
- DUP2 #01 - ,get-addr JSR LDA #03 ! JMP INCr |
|
176 |
- DUP2 SWP INC SWP #01 - ,get-addr JSR LDA #03 ! JMP INCr |
|
177 |
- DUP2 SWP #01 - SWP ,get-addr JSR LDA #03 ! JMP INCr |
|
178 |
- DUP2 SWP INC SWP ,get-addr JSR LDA #03 ! JMP INCr |
|
179 |
- DUP2 SWP #01 - SWP INC ,get-addr JSR LDA #03 ! JMP INCr |
|
180 |
- DUP2 INC ,get-addr JSR LDA #03 ! JMP INCr |
|
181 |
- SWP INC SWP INC ,get-addr JSR LDA #03 ! JMP INCr |
|
182 |
- STHkr #02 = STHr #01 = #0000 >> |
|
165 |
+ DUP #00 ! ,&no-null JCN NIP NIP RTN &no-null |
|
166 |
+ DUP #03 ! ,&no-head JCN POP POP2 #02 RTN &no-head |
|
167 |
+ DUP #02 ! ,&no-tail JCN POP POP2 #01 RTN &no-tail |
|
168 |
+ DUP #01 ! ,&no-cond JCN POP |
|
169 |
+ LITr 00 |
|
170 |
+ DUP2 #01 - ,get-addr JSR |
|
171 |
+ ( tl ) #0001 -- LDAk #03 ! JMP INCr |
|
172 |
+ ( tc ) INC2 LDAk #03 ! JMP INCr |
|
173 |
+ ( tr ) INC2 LDA #03 ! JMP INCr |
|
174 |
+ DUP2 ,get-addr JSR |
|
175 |
+ ( ml ) #0001 -- LDAk #03 ! JMP INCr |
|
176 |
+ ( mr ) INC2 INC2 LDA #03 ! JMP INCr |
|
177 |
+ INC ,get-addr JSR |
|
178 |
+ ( bl ) #0001 -- LDAk #03 ! JMP INCr |
|
179 |
+ ( bc ) INC2 LDAk #03 ! JMP INCr |
|
180 |
+ ( br ) INC2 LDA #03 ! JMP INCr |
|
181 |
+ STHkr #02 = STHr #01 = #0000 >> |
|
182 |
+ #02 * INC RTN |
|
183 |
+ &no-cond |
|
184 |
+ ( unknown ) |
|
185 |
+ NIP NIP |
|
183 | 186 |
|
184 | 187 |
RTN |
185 | 188 |
|
... | ... |
@@ -206,4 +209,4 @@ JMP2r |
206 | 209 |
What do I do? |
207 | 210 |
How do I find peace? ) |
208 | 211 |
|
209 |
-@past-world $4000 @future-world |
|
212 |
+@past-world |