... | ... |
@@ -44,30 +44,6 @@ BRK |
44 | 44 |
|
45 | 45 |
BRK |
46 | 46 |
|
47 |
-@clear-ball ( -- ) |
|
48 |
- |
|
49 |
- .ball/x LDZ2 .Screen/x DEO2 |
|
50 |
- .ball/y LDZ2 .Screen/y DEO2 |
|
51 |
- #76 .Screen/auto DEO |
|
52 |
- #0800 |
|
53 |
- &loop-bg |
|
54 |
- #40 .Screen/sprite DEO |
|
55 |
- INC GTHk ,&loop-bg JCN |
|
56 |
- POP2 |
|
57 |
- |
|
58 |
-JMP2r |
|
59 |
- |
|
60 |
-@move-ball ( -- ) |
|
61 |
- |
|
62 |
- ,clear-ball JSR |
|
63 |
- .ball/vx LDZ2k STH2k ROT STZ2 |
|
64 |
- .ball/x LDZ2k STH2r ADD2 ,check-flip-vx JSR ROT STZ2 |
|
65 |
- .ball/vy LDZ2k INC2 STH2k ROT STZ2 |
|
66 |
- .ball/y LDZ2k STH2r ADD2 ,check-flip-vy JSR ROT STZ2 |
|
67 |
- ,draw-ball JSR |
|
68 |
- |
|
69 |
-JMP2r |
|
70 |
- |
|
71 | 47 |
@check-flip-vx ( x -- x ) |
72 | 48 |
|
73 | 49 |
( left ) DUP2 #0010 LTH2 ,&flip JCN |
... | ... |
@@ -85,6 +61,23 @@ JMP2r |
85 | 61 |
|
86 | 62 |
JMP2r |
87 | 63 |
|
64 |
+@move-ball ( -- ) |
|
65 |
+ |
|
66 |
+ ( clear ) |
|
67 |
+ .ball/x LDZ2 .Screen/x DEO2 |
|
68 |
+ .ball/y LDZ2 .Screen/y DEO2 |
|
69 |
+ #76 .Screen/auto DEO |
|
70 |
+ #0800 |
|
71 |
+ &loop-bg |
|
72 |
+ #40 .Screen/sprite DEO |
|
73 |
+ INC GTHk ,&loop-bg JCN |
|
74 |
+ POP2 |
|
75 |
+ |
|
76 |
+ .ball/vx LDZ2k STH2k ROT STZ2 |
|
77 |
+ .ball/x LDZ2k STH2r ADD2 ,check-flip-vx JSR ROT STZ2 |
|
78 |
+ .ball/vy LDZ2k INC2 STH2k ROT STZ2 |
|
79 |
+ .ball/y LDZ2k STH2r ADD2 ,check-flip-vy JSR ROT STZ2 |
|
80 |
+ |
|
88 | 81 |
@draw-ball ( -- ) |
89 | 82 |
|
90 | 83 |
( shadow ) |
... | ... |
@@ -31,11 +31,11 @@ |
31 | 31 |
;on-mouse .Mouse/vector DEO2 |
32 | 32 |
;on-control .Controller/vector DEO2 |
33 | 33 |
( glider ) |
34 |
- #07 #03 ;set-cell JSR2 |
|
35 |
- #07 #04 ;set-cell JSR2 |
|
36 |
- #05 #04 ;set-cell JSR2 |
|
37 |
- #07 #05 ;set-cell JSR2 |
|
38 |
- #06 #05 ;set-cell JSR2 |
|
34 |
+ #0703 ;set-cell JSR2 |
|
35 |
+ #0704 ;set-cell JSR2 |
|
36 |
+ #0504 ;set-cell JSR2 |
|
37 |
+ #0705 ;set-cell JSR2 |
|
38 |
+ #0605 ;set-cell JSR2 |
|
39 | 39 |
( center ) |
40 | 40 |
.Screen/width DEI2 #01 SFT2 #0040 SUB2 |
41 | 41 |
DUP2 .anchor/x STZ2 |
... | ... |
@@ -118,9 +118,9 @@ BRK |
118 | 118 |
( move buffer ) |
119 | 119 |
;bank2 ;bank1 #1000 ;mcpy JSR2 |
120 | 120 |
( draw ) |
121 |
- ;draw-grid JSR2 |
|
121 |
+ ;draw-grid ( .. ) |
|
122 | 122 |
|
123 |
-JMP2r |
|
123 |
+JMP2 |
|
124 | 124 |
|
125 | 125 |
@run-cell ( x y -- ) |
126 | 126 |
|
... | ... |
@@ -130,13 +130,13 @@ JMP2r |
130 | 130 |
#00 EQU ,&dead JCN |
131 | 131 |
DUP #02 LTH ,&dies JCN |
132 | 132 |
DUP #03 GTH ,&dies JCN |
133 |
- POP ;&save JSR2 JMP2r |
|
133 |
+ POP ;&save JMP2 |
|
134 | 134 |
&dies POP POP2 JMP2r |
135 | 135 |
&dead |
136 | 136 |
DUP #03 EQU ,&birth JCN POP POP2 JMP2r |
137 |
- &birth POP ;&save JSR2 |
|
137 |
+ &birth POP ;&save ( .. ) |
|
138 | 138 |
|
139 |
-JMP2r |
|
139 |
+JMP2 |
|
140 | 140 |
&save ( x y -- ) |
141 | 141 |
STH2 #01 STH2r ,get-index JSR [ #1000 ADD2 ] STA |
142 | 142 |
.world/count LDZ2 INC2 .world/count STZ2 |