| ... | ... |
@@ -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 |