diff --git a/th04/shot_velocity[data].asm b/th04/shot_velocity[data].asm new file mode 100644 index 00000000..c64fb9b9 --- /dev/null +++ b/th04/shot_velocity[data].asm @@ -0,0 +1,262 @@ +; Precomputed results of `cos(angle)*192` (X) and `sin(angle)*192` (Y), used +; to derive 16-bit X and Y velocities for a shot's motion_t::velocity field +; from an 8-bit angle, with a hardcoded speed of 192 subpixels (= 12 pixels) +; per frame. +public _VELOCITY_192_AT_ANGLE +_VELOCITY_192_AT_ANGLE label Point + Point < 192, 0> ; 0 + Point < 192, 4> ; 1 + Point < 192, 9> ; 2 + Point < 191, 14> ; 3 + Point < 191, 18> ; 4 + Point < 190, 23> ; 5 + Point < 189, 28> ; 6 + Point < 189, 33> ; 7 + Point < 188, 37> ; 8 + Point < 187, 42> ; 9 + Point < 186, 46> ; 10 + Point < 185, 51> ; 11 + Point < 183, 55> ; 12 + Point < 182, 60> ; 13 + Point < 180, 64> ; 14 + Point < 179, 69> ; 15 + Point < 177, 73> ; 16 + Point < 175, 78> ; 17 + Point < 173, 81> ; 18 + Point < 171, 86> ; 19 + Point < 169, 90> ; 20 + Point < 167, 94> ; 21 + Point < 165, 99> ; 22 + Point < 162, 102> ; 23 + Point < 159, 106> ; 24 + Point < 156, 110> ; 25 + Point < 154, 114> ; 26 + Point < 151, 117> ; 27 + Point < 148, 121> ; 28 + Point < 145, 125> ; 29 + Point < 142, 129> ; 30 + Point < 138, 132> ; 31 + Point < 135, 135> ; 32 + Point < 132, 138> ; 33 + Point < 129, 142> ; 34 + Point < 125, 145> ; 35 + Point < 121, 148> ; 36 + Point < 117, 151> ; 37 + Point < 114, 154> ; 38 + Point < 110, 156> ; 39 + Point < 106, 159> ; 40 + Point < 102, 162> ; 41 + Point < 99, 165> ; 42 + Point < 94, 167> ; 43 + Point < 90, 169> ; 44 + Point < 86, 171> ; 45 + Point < 81, 173> ; 46 + Point < 78, 175> ; 47 + Point < 73, 177> ; 48 + Point < 69, 179> ; 49 + Point < 64, 180> ; 50 + Point < 60, 182> ; 51 + Point < 55, 183> ; 52 + Point < 51, 185> ; 53 + Point < 46, 186> ; 54 + Point < 42, 187> ; 55 + Point < 37, 188> ; 56 + Point < 33, 189> ; 57 + Point < 28, 189> ; 58 + Point < 23, 190> ; 59 + Point < 18, 191> ; 60 + Point < 14, 191> ; 61 + Point < 9, 192> ; 62 + Point < 4, 192> ; 63 + Point < 0, 192> ; 64 + Point < -5, 192> ; 65 + Point < -10, 192> ; 66 + Point < -15, 191> ; 67 + Point < -19, 191> ; 68 + Point < -24, 190> ; 69 + Point < -29, 189> ; 70 + Point < -33, 189> ; 71 + Point < -38, 188> ; 72 + Point < -42, 187> ; 73 + Point < -47, 186> ; 74 + Point < -51, 185> ; 75 + Point < -56, 183> ; 76 + Point < -60, 182> ; 77 + Point < -65, 180> ; 78 + Point < -69, 179> ; 79 + Point < -74, 177> ; 80 + Point < -78, 175> ; 81 + Point < -82, 173> ; 82 + Point < -87, 171> ; 83 + Point < -91, 169> ; 84 + Point < -95, 167> ; 85 + Point < -99, 165> ; 86 + Point <-103, 162> ; 87 + Point <-107, 159> ; 88 + Point <-111, 156> ; 89 + Point <-114, 154> ; 90 + Point <-118, 151> ; 91 + Point <-122, 148> ; 92 + Point <-126, 145> ; 93 + Point <-129, 142> ; 94 + Point <-133, 138> ; 95 + Point <-136, 135> ; 96 + Point <-139, 132> ; 97 + Point <-143, 129> ; 98 + Point <-146, 125> ; 99 + Point <-149, 121> ; 100 + Point <-152, 117> ; 101 + Point <-155, 114> ; 102 + Point <-157, 110> ; 103 + Point <-160, 106> ; 104 + Point <-162, 102> ; 105 + Point <-165, 99> ; 106 + Point <-168, 94> ; 107 + Point <-170, 90> ; 108 + Point <-172, 86> ; 109 + Point <-174, 81> ; 110 + Point <-176, 78> ; 111 + Point <-178, 73> ; 112 + Point <-180, 69> ; 113 + Point <-181, 64> ; 114 + Point <-183, 60> ; 115 + Point <-184, 55> ; 116 + Point <-186, 51> ; 117 + Point <-186, 46> ; 118 + Point <-188, 42> ; 119 + Point <-189, 37> ; 120 + Point <-189, 33> ; 121 + Point <-190, 28> ; 122 + Point <-191, 23> ; 123 + Point <-192, 18> ; 124 + Point <-192, 14> ; 125 + Point <-192, 9> ; 126 + Point <-192, 4> ; 127 + Point <-192, 0> ; 128 + Point <-192, -5> ; 129 + Point <-192, -10> ; 130 + Point <-192, -15> ; 131 + Point <-192, -19> ; 132 + Point <-191, -24> ; 133 + Point <-190, -29> ; 134 + Point <-189, -33> ; 135 + Point <-189, -38> ; 136 + Point <-188, -42> ; 137 + Point <-186, -47> ; 138 + Point <-186, -51> ; 139 + Point <-184, -56> ; 140 + Point <-183, -60> ; 141 + Point <-181, -65> ; 142 + Point <-180, -69> ; 143 + Point <-178, -74> ; 144 + Point <-176, -78> ; 145 + Point <-174, -82> ; 146 + Point <-172, -87> ; 147 + Point <-170, -91> ; 148 + Point <-168, -95> ; 149 + Point <-165, -99> ; 150 + Point <-162, -103> ; 151 + Point <-160, -107> ; 152 + Point <-157, -111> ; 153 + Point <-155, -114> ; 154 + Point <-152, -118> ; 155 + Point <-149, -122> ; 156 + Point <-146, -126> ; 157 + Point <-143, -129> ; 158 + Point <-139, -133> ; 159 + Point <-136, -136> ; 160 + Point <-133, -139> ; 161 + Point <-129, -143> ; 162 + Point <-126, -146> ; 163 + Point <-122, -149> ; 164 + Point <-118, -152> ; 165 + Point <-114, -155> ; 166 + Point <-111, -157> ; 167 + Point <-107, -160> ; 168 + Point <-103, -162> ; 169 + Point < -99, -165> ; 170 + Point < -95, -168> ; 171 + Point < -91, -170> ; 172 + Point < -87, -172> ; 173 + Point < -82, -174> ; 174 + Point < -78, -176> ; 175 + Point < -74, -178> ; 176 + Point < -69, -180> ; 177 + Point < -65, -181> ; 178 + Point < -60, -183> ; 179 + Point < -56, -184> ; 180 + Point < -51, -186> ; 181 + Point < -47, -186> ; 182 + Point < -42, -188> ; 183 + Point < -38, -189> ; 184 + Point < -33, -189> ; 185 + Point < -29, -190> ; 186 + Point < -24, -191> ; 187 + Point < -19, -192> ; 188 + Point < -15, -192> ; 189 + Point < -10, -192> ; 190 + Point < -5, -192> ; 191 + Point < 0, -192> ; 192 + Point < 4, -192> ; 193 + Point < 9, -192> ; 194 + Point < 14, -192> ; 195 + Point < 18, -192> ; 196 + Point < 23, -191> ; 197 + Point < 28, -190> ; 198 + Point < 33, -189> ; 199 + Point < 37, -189> ; 200 + Point < 42, -188> ; 201 + Point < 46, -186> ; 202 + Point < 51, -186> ; 203 + Point < 55, -184> ; 204 + Point < 60, -183> ; 205 + Point < 64, -181> ; 206 + Point < 69, -180> ; 207 + Point < 73, -178> ; 208 + Point < 78, -176> ; 209 + Point < 81, -174> ; 210 + Point < 86, -172> ; 211 + Point < 90, -170> ; 212 + Point < 94, -168> ; 213 + Point < 99, -165> ; 214 + Point < 102, -162> ; 215 + Point < 106, -160> ; 216 + Point < 110, -157> ; 217 + Point < 114, -155> ; 218 + Point < 117, -152> ; 219 + Point < 121, -149> ; 220 + Point < 125, -146> ; 221 + Point < 129, -143> ; 222 + Point < 132, -139> ; 223 + Point < 135, -136> ; 224 + Point < 138, -133> ; 225 + Point < 142, -129> ; 226 + Point < 145, -126> ; 227 + Point < 148, -122> ; 228 + Point < 151, -118> ; 229 + Point < 154, -114> ; 230 + Point < 156, -111> ; 231 + Point < 159, -107> ; 232 + Point < 162, -103> ; 233 + Point < 165, -99> ; 234 + Point < 167, -95> ; 235 + Point < 169, -91> ; 236 + Point < 171, -87> ; 237 + Point < 173, -82> ; 238 + Point < 175, -78> ; 239 + Point < 177, -74> ; 240 + Point < 179, -69> ; 241 + Point < 180, -65> ; 242 + Point < 182, -60> ; 243 + Point < 183, -56> ; 244 + Point < 185, -51> ; 245 + Point < 186, -47> ; 246 + Point < 187, -42> ; 247 + Point < 188, -38> ; 248 + Point < 189, -33> ; 249 + Point < 189, -29> ; 250 + Point < 190, -24> ; 251 + Point < 191, -19> ; 252 + Point < 191, -15> ; 253 + Point < 192, -10> ; 254 + Point < 192, -5> ; 255 diff --git a/th04_main.asm b/th04_main.asm index 21abb91c..4bb3bc8a 100644 --- a/th04_main.asm +++ b/th04_main.asm @@ -14415,7 +14415,7 @@ sub_11DCA proc near mov bl, ss:[bx+2] xor bh, bh shl bx, 2 - mov eax, [bx+1390h] + mov eax, _VELOCITY_192_AT_ANGLE[bx] mov [si], eax pop si retn 4 @@ -42559,1029 +42559,7 @@ NUMERALS db 0, 0, 38h, 0, 44h, 0, 82h, 0, 82h, 0, 82h, 0, 44h, 0 db 84h db 0 db 78h ; x - db 0C0h - db 0 - db 0 - db 0 - db 0C0h - db 0 - db 4 - db 0 - db 0C0h - db 0 - db 9 - db 0 - db 0BFh - db 0 - db 0Eh - db 0 - db 0BFh - db 0 - db 12h - db 0 - db 0BEh - db 0 - db 17h - db 0 - db 0BDh - db 0 - db 1Ch - db 0 - db 0BDh - db 0 - db 21h ; ! - db 0 - db 0BCh - db 0 - db 25h ; % - db 0 - db 0BBh - db 0 - db 2Ah ; * - db 0 - db 0BAh - db 0 - db 2Eh ; . - db 0 - db 0B9h - db 0 - db 33h ; 3 - db 0 - db 0B7h - db 0 - db 37h ; 7 - db 0 - db 0B6h - db 0 - db 3Ch ; < - db 0 - db 0B4h - db 0 - db 40h - db 0 - db 0B3h - db 0 - db 45h ; E - db 0 - db 0B1h - db 0 - db 49h ; I - db 0 - db 0AFh - db 0 - db 4Eh ; N - db 0 - db 0ADh - db 0 - db 51h ; Q - db 0 - db 0ABh - db 0 - db 56h ; V - db 0 - db 0A9h - db 0 - db 5Ah ; Z - db 0 - db 0A7h - db 0 - db 5Eh ; ^ - db 0 - db 0A5h - db 0 - db 63h ; c - db 0 - db 0A2h - db 0 - db 66h ; f - db 0 - db 9Fh - db 0 - db 6Ah ; j - db 0 - db 9Ch - db 0 - db 6Eh ; n - db 0 - db 9Ah - db 0 - db 72h ; r - db 0 - db 97h - db 0 - db 75h ; u - db 0 - db 94h - db 0 - db 79h ; y - db 0 - db 91h - db 0 - db 7Dh ; } - db 0 - db 8Eh - db 0 - db 81h - db 0 - db 8Ah - db 0 - db 84h - db 0 - db 87h - db 0 - db 87h - db 0 - db 84h - db 0 - db 8Ah - db 0 - db 81h - db 0 - db 8Eh - db 0 - db 7Dh ; } - db 0 - db 91h - db 0 - db 79h ; y - db 0 - db 94h - db 0 - db 75h ; u - db 0 - db 97h - db 0 - db 72h ; r - db 0 - db 9Ah - db 0 - db 6Eh ; n - db 0 - db 9Ch - db 0 - db 6Ah ; j - db 0 - db 9Fh - db 0 - db 66h ; f - db 0 - db 0A2h - db 0 - db 63h ; c - db 0 - db 0A5h - db 0 - db 5Eh ; ^ - db 0 - db 0A7h - db 0 - db 5Ah ; Z - db 0 - db 0A9h - db 0 - db 56h ; V - db 0 - db 0ABh - db 0 - db 51h ; Q - db 0 - db 0ADh - db 0 - db 4Eh ; N - db 0 - db 0AFh - db 0 - db 49h ; I - db 0 - db 0B1h - db 0 - db 45h ; E - db 0 - db 0B3h - db 0 - db 40h - db 0 - db 0B4h - db 0 - db 3Ch ; < - db 0 - db 0B6h - db 0 - db 37h ; 7 - db 0 - db 0B7h - db 0 - db 33h ; 3 - db 0 - db 0B9h - db 0 - db 2Eh ; . - db 0 - db 0BAh - db 0 - db 2Ah ; * - db 0 - db 0BBh - db 0 - db 25h ; % - db 0 - db 0BCh - db 0 - db 21h ; ! - db 0 - db 0BDh - db 0 - db 1Ch - db 0 - db 0BDh - db 0 - db 17h - db 0 - db 0BEh - db 0 - db 12h - db 0 - db 0BFh - db 0 - db 0Eh - db 0 - db 0BFh - db 0 - db 9 - db 0 - db 0C0h - db 0 - db 4 - db 0 - db 0C0h - db 0 - db 0 - db 0 - db 0C0h - db 0 - db 0FBh - db 0FFh - db 0C0h - db 0 - db 0F6h - db 0FFh - db 0C0h - db 0 - db 0F1h - db 0FFh - db 0BFh - db 0 - db 0EDh - db 0FFh - db 0BFh - db 0 - db 0E8h - db 0FFh - db 0BEh - db 0 - db 0E3h - db 0FFh - db 0BDh - db 0 - db 0DFh - db 0FFh - db 0BDh - db 0 - db 0DAh - db 0FFh - db 0BCh - db 0 - db 0D6h - db 0FFh - db 0BBh - db 0 - db 0D1h - db 0FFh - db 0BAh - db 0 - db 0CDh - db 0FFh - db 0B9h - db 0 - db 0C8h - db 0FFh - db 0B7h - db 0 - db 0C4h - db 0FFh - db 0B6h - db 0 - db 0BFh - db 0FFh - db 0B4h - db 0 - db 0BBh - db 0FFh - db 0B3h - db 0 - db 0B6h - db 0FFh - db 0B1h - db 0 - db 0B2h - db 0FFh - db 0AFh - db 0 - db 0AEh - db 0FFh - db 0ADh - db 0 - db 0A9h - db 0FFh - db 0ABh - db 0 - db 0A5h - db 0FFh - db 0A9h - db 0 - db 0A1h - db 0FFh - db 0A7h - db 0 - db 9Dh - db 0FFh - db 0A5h - db 0 - db 99h - db 0FFh - db 0A2h - db 0 - db 95h - db 0FFh - db 9Fh - db 0 - db 91h - db 0FFh - db 9Ch - db 0 - db 8Eh - db 0FFh - db 9Ah - db 0 - db 8Ah - db 0FFh - db 97h - db 0 - dw 0FF86h - db 94h - db 0 - db 82h - db 0FFh - db 91h - db 0 - db 7Fh - db 0FFh - db 8Eh - db 0 - db 7Bh ; { - db 0FFh - db 8Ah - db 0 - db 78h ; x - db 0FFh - db 87h - db 0 - db 75h ; u - db 0FFh - db 84h - db 0 - db 71h ; q - db 0FFh - db 81h - db 0 - db 6Eh ; n - db 0FFh - db 7Dh ; } - db 0 - db 6Bh ; k - db 0FFh - db 79h ; y - db 0 - db 68h ; h - db 0FFh - db 75h ; u - db 0 - db 65h ; e - db 0FFh - db 72h ; r - db 0 - db 63h ; c - db 0FFh - db 6Eh ; n - db 0 - db 60h - db 0FFh - db 6Ah ; j - db 0 - db 5Eh ; ^ - db 0FFh - db 66h ; f - db 0 - db 5Bh ; [ - db 0FFh - db 63h ; c - db 0 - db 58h ; X - db 0FFh - db 5Eh ; ^ - db 0 - db 56h ; V - db 0FFh - db 5Ah ; Z - db 0 - db 54h ; T - db 0FFh - db 56h ; V - db 0 - db 52h ; R - db 0FFh - db 51h ; Q - db 0 - db 50h ; P - db 0FFh - db 4Eh ; N - db 0 - db 4Eh ; N - db 0FFh - db 49h ; I - db 0 - db 4Ch ; L - db 0FFh - db 45h ; E - db 0 - db 4Bh ; K - db 0FFh - db 40h - db 0 - db 49h ; I - db 0FFh - db 3Ch ; < - db 0 - db 48h ; H - db 0FFh - db 37h ; 7 - db 0 - db 46h ; F - db 0FFh - db 33h ; 3 - db 0 - db 46h ; F - db 0FFh - db 2Eh ; . - db 0 - db 44h ; D - db 0FFh - db 2Ah ; * - db 0 - db 43h ; C - db 0FFh - db 25h ; % - db 0 - db 43h ; C - db 0FFh - db 21h ; ! - db 0 - db 42h ; B - db 0FFh - db 1Ch - db 0 - db 41h ; A - db 0FFh - db 17h - db 0 - db 40h - db 0FFh - db 12h - db 0 - db 40h - db 0FFh - db 0Eh - db 0 - db 40h - db 0FFh - db 9 - db 0 - db 40h - db 0FFh - db 4 - db 0 - db 40h - db 0FFh - db 0 - db 0 - db 40h - db 0FFh - db 0FBh - db 0FFh - db 40h - db 0FFh - db 0F6h - db 0FFh - db 40h - db 0FFh - db 0F1h - db 0FFh - db 40h - db 0FFh - db 0EDh - db 0FFh - db 41h ; A - db 0FFh - db 0E8h - db 0FFh - db 42h ; B - db 0FFh - db 0E3h - db 0FFh - db 43h ; C - db 0FFh - db 0DFh - db 0FFh - db 43h ; C - db 0FFh - db 0DAh - db 0FFh - db 44h ; D - db 0FFh - db 0D6h - db 0FFh - db 46h ; F - db 0FFh - db 0D1h - db 0FFh - db 46h ; F - db 0FFh - db 0CDh - db 0FFh - db 48h ; H - db 0FFh - db 0C8h - db 0FFh - db 49h ; I - db 0FFh - db 0C4h - db 0FFh - db 4Bh ; K - db 0FFh - db 0BFh - db 0FFh - db 4Ch ; L - db 0FFh - db 0BBh - db 0FFh - db 4Eh ; N - db 0FFh - db 0B6h - db 0FFh - db 50h ; P - db 0FFh - db 0B2h - db 0FFh - db 52h ; R - db 0FFh - db 0AEh - db 0FFh - db 54h ; T - db 0FFh - db 0A9h - db 0FFh - db 56h ; V - db 0FFh - db 0A5h - db 0FFh - db 58h ; X - db 0FFh - db 0A1h - db 0FFh - db 5Bh ; [ - db 0FFh - db 9Dh - db 0FFh - db 5Eh ; ^ - db 0FFh - db 99h - db 0FFh - db 60h - db 0FFh - db 95h - db 0FFh - db 63h ; c - db 0FFh - db 91h - db 0FFh - db 65h ; e - db 0FFh - db 8Eh - db 0FFh - db 68h ; h - db 0FFh - db 8Ah - db 0FFh - db 6Bh ; k - db 0FFh - db 86h - db 0FFh - db 6Eh ; n - db 0FFh - db 82h - db 0FFh - db 71h ; q - db 0FFh - db 7Fh - db 0FFh - db 75h ; u - db 0FFh - db 7Bh ; { - db 0FFh - db 78h ; x - db 0FFh - db 78h ; x - db 0FFh - db 7Bh ; { - db 0FFh - db 75h ; u - db 0FFh - db 7Fh - db 0FFh - db 71h ; q - db 0FFh - db 82h - db 0FFh - db 6Eh ; n - db 0FFh - db 86h - db 0FFh - db 6Bh ; k - db 0FFh - db 8Ah - db 0FFh - db 68h ; h - db 0FFh - db 8Eh - db 0FFh - db 65h ; e - db 0FFh - db 91h - db 0FFh - db 63h ; c - db 0FFh - db 95h - db 0FFh - db 60h - db 0FFh - db 99h - db 0FFh - db 5Eh ; ^ - db 0FFh - db 9Dh - db 0FFh - db 5Bh ; [ - db 0FFh - db 0A1h - db 0FFh - db 58h ; X - db 0FFh - db 0A5h - db 0FFh - db 56h ; V - db 0FFh - db 0A9h - db 0FFh - db 54h ; T - db 0FFh - db 0AEh - db 0FFh - db 52h ; R - db 0FFh - db 0B2h - db 0FFh - db 50h ; P - db 0FFh - db 0B6h - db 0FFh - db 4Eh ; N - db 0FFh - db 0BBh - db 0FFh - db 4Ch ; L - db 0FFh - db 0BFh - db 0FFh - db 4Bh ; K - db 0FFh - db 0C4h - db 0FFh - db 49h ; I - db 0FFh - db 0C8h - db 0FFh - db 48h ; H - db 0FFh - db 0CDh - db 0FFh - db 46h ; F - db 0FFh - db 0D1h - db 0FFh - db 46h ; F - db 0FFh - db 0D6h - db 0FFh - db 44h ; D - db 0FFh - db 0DAh - db 0FFh - db 43h ; C - db 0FFh - db 0DFh - db 0FFh - db 43h ; C - db 0FFh - db 0E3h - db 0FFh - db 42h ; B - db 0FFh - db 0E8h - db 0FFh - db 41h ; A - db 0FFh - db 0EDh - db 0FFh - db 40h - db 0FFh - db 0F1h - db 0FFh - db 40h - db 0FFh - db 0F6h - db 0FFh - db 40h - db 0FFh - db 0FBh - db 0FFh - db 40h - db 0FFh - db 0 - db 0 - db 40h - db 0FFh - db 4 - db 0 - db 40h - db 0FFh - db 9 - db 0 - db 40h - db 0FFh - db 0Eh - db 0 - db 40h - db 0FFh - db 12h - db 0 - db 40h - db 0FFh - db 17h - db 0 - db 41h ; A - db 0FFh - db 1Ch - db 0 - db 42h ; B - db 0FFh - db 21h ; ! - db 0 - db 43h ; C - db 0FFh - db 25h ; % - db 0 - db 43h ; C - db 0FFh - db 2Ah ; * - db 0 - db 44h ; D - db 0FFh - db 2Eh ; . - db 0 - db 46h ; F - db 0FFh - db 33h ; 3 - db 0 - db 46h ; F - db 0FFh - db 37h ; 7 - db 0 - db 48h ; H - db 0FFh - db 3Ch ; < - db 0 - db 49h ; I - db 0FFh - db 40h - db 0 - db 4Bh ; K - db 0FFh - db 45h ; E - db 0 - db 4Ch ; L - db 0FFh - db 49h ; I - db 0 - db 4Eh ; N - db 0FFh - db 4Eh ; N - db 0 - db 50h ; P - db 0FFh - db 51h ; Q - db 0 - db 52h ; R - db 0FFh - db 56h ; V - db 0 - db 54h ; T - db 0FFh - db 5Ah ; Z - db 0 - db 56h ; V - db 0FFh - db 5Eh ; ^ - db 0 - db 58h ; X - db 0FFh - db 63h ; c - db 0 - db 5Bh ; [ - db 0FFh - db 66h ; f - db 0 - db 5Eh ; ^ - db 0FFh - db 6Ah ; j - db 0 - db 60h - db 0FFh - db 6Eh ; n - db 0 - db 63h ; c - db 0FFh - db 72h ; r - db 0 - db 65h ; e - db 0FFh - db 75h ; u - db 0 - db 68h ; h - db 0FFh - db 79h ; y - db 0 - db 6Bh ; k - db 0FFh - db 7Dh ; } - db 0 - db 6Eh ; n - db 0FFh - db 81h - db 0 - db 71h ; q - db 0FFh - db 84h - db 0 - db 75h ; u - db 0FFh - db 87h - db 0 - db 78h ; x - db 0FFh - db 8Ah - db 0 - db 7Bh ; { - db 0FFh - db 8Eh - db 0 - db 7Fh - db 0FFh - db 91h - db 0 - db 82h - db 0FFh - db 94h - db 0 - db 86h - db 0FFh - db 97h - db 0 - db 8Ah - db 0FFh - db 9Ah - db 0 - db 8Eh - db 0FFh - db 9Ch - db 0 - db 91h - db 0FFh - db 9Fh - db 0 - db 95h - db 0FFh - db 0A2h - db 0 - db 99h - db 0FFh - db 0A5h - db 0 - db 9Dh - db 0FFh - db 0A7h - db 0 - db 0A1h - db 0FFh - db 0A9h - db 0 - db 0A5h - db 0FFh - db 0ABh - db 0 - db 0A9h - db 0FFh - db 0ADh - db 0 - db 0AEh - db 0FFh - db 0AFh - db 0 - db 0B2h - db 0FFh - db 0B1h - db 0 - db 0B6h - db 0FFh - db 0B3h - db 0 - db 0BBh - db 0FFh - db 0B4h - db 0 - db 0BFh - db 0FFh - db 0B6h - db 0 - db 0C4h - db 0FFh - db 0B7h - db 0 - db 0C8h - db 0FFh - db 0B9h - db 0 - db 0CDh - db 0FFh - db 0BAh - db 0 - db 0D1h - db 0FFh - db 0BBh - db 0 - db 0D6h - db 0FFh - db 0BCh - db 0 - db 0DAh - db 0FFh - db 0BDh - db 0 - db 0DFh - db 0FFh - db 0BDh - db 0 - db 0E3h - db 0FFh - db 0BEh - db 0 - db 0E8h - db 0FFh - db 0BFh - db 0 - db 0EDh - db 0FFh - db 0BFh - db 0 - db 0F1h - db 0FFh - db 0C0h - db 0 - db 0F6h - db 0FFh - db 0C0h - db 0 - db 0FBh - db 0FFh +include th04/shot_velocity[data].asm db 18h db 68h ; h db 98h diff --git a/th05_main.asm b/th05_main.asm index 5fae86fd..476dcba0 100644 --- a/th05_main.asm +++ b/th05_main.asm @@ -7025,7 +7025,7 @@ sub_E4DE proc near movzx bx, byte ptr ss:[bx+2] mov [si+7], bl shl bx, 2 - mov eax, [bx+13CCh] + mov eax, _VELOCITY_192_AT_ANGLE[bx] mov [si], eax pop si retn 4 @@ -40703,1030 +40703,7 @@ aMaine db 'maine',0 aMaine_0 db 'maine',0 include th04/shot_levels[data].asm aTxt1_bb db 'txt1.bb',0 - db 0C0h - db 0 - db 0 - db 0 - db 0C0h - db 0 - db 4 - db 0 - db 0C0h - db 0 - db 9 - db 0 - db 0BFh - db 0 - db 0Eh - db 0 - db 0BFh - db 0 - db 12h - db 0 - db 0BEh - db 0 - db 17h - db 0 - db 0BDh - db 0 - db 1Ch - db 0 - db 0BDh - db 0 - db 21h ; ! - db 0 - db 0BCh - db 0 - db 25h ; % - db 0 - db 0BBh - db 0 - db 2Ah ; * - db 0 - db 0BAh - db 0 - db 2Eh ; . - db 0 - db 0B9h - db 0 - db 33h ; 3 - db 0 - db 0B7h - db 0 - db 37h ; 7 - db 0 - db 0B6h - db 0 - db 3Ch ; < - db 0 - db 0B4h - db 0 - db 40h - db 0 - db 0B3h - db 0 - db 45h ; E - db 0 - db 0B1h - db 0 - db 49h ; I - db 0 - db 0AFh - db 0 - db 4Eh ; N - db 0 - db 0ADh - db 0 - db 51h ; Q - db 0 - db 0ABh - db 0 - db 56h ; V - db 0 - db 0A9h - db 0 - db 5Ah ; Z - db 0 - db 0A7h - db 0 - db 5Eh ; ^ - db 0 - db 0A5h - db 0 - db 63h ; c - db 0 - db 0A2h - db 0 - db 66h ; f - db 0 - db 9Fh - db 0 - db 6Ah ; j - db 0 - db 9Ch - db 0 - db 6Eh ; n - db 0 - db 9Ah - db 0 - db 72h ; r - db 0 - db 97h - db 0 - db 75h ; u - db 0 - db 94h - db 0 - db 79h ; y - db 0 - db 91h - db 0 - db 7Dh ; } - db 0 - db 8Eh - db 0 - db 81h - db 0 - db 8Ah - db 0 - db 84h - db 0 - db 87h - db 0 - db 87h - db 0 - db 84h - db 0 - db 8Ah - db 0 - db 81h - db 0 - db 8Eh - db 0 - db 7Dh ; } - db 0 - db 91h - db 0 - db 79h ; y - db 0 - db 94h - db 0 - db 75h ; u - db 0 - db 97h - db 0 - db 72h ; r - db 0 - db 9Ah - db 0 - db 6Eh ; n - db 0 - db 9Ch - db 0 - db 6Ah ; j - db 0 - db 9Fh - db 0 - db 66h ; f - db 0 - db 0A2h - db 0 - db 63h ; c - db 0 - db 0A5h - db 0 - db 5Eh ; ^ - db 0 - db 0A7h - db 0 - db 5Ah ; Z - db 0 - db 0A9h - db 0 - db 56h ; V - db 0 - db 0ABh - db 0 - db 51h ; Q - db 0 - db 0ADh - db 0 - db 4Eh ; N - db 0 - db 0AFh - db 0 - db 49h ; I - db 0 - db 0B1h - db 0 - db 45h ; E - db 0 - db 0B3h - db 0 - db 40h - db 0 - db 0B4h - db 0 - db 3Ch ; < - db 0 - db 0B6h - db 0 - db 37h ; 7 - db 0 - db 0B7h - db 0 - db 33h ; 3 - db 0 - db 0B9h - db 0 - db 2Eh ; . - db 0 - db 0BAh - db 0 - db 2Ah ; * - db 0 - db 0BBh - db 0 - db 25h ; % - db 0 - db 0BCh - db 0 - db 21h ; ! - db 0 - db 0BDh - db 0 - db 1Ch - db 0 - db 0BDh - db 0 - db 17h - db 0 - db 0BEh - db 0 - db 12h - db 0 - db 0BFh - db 0 - db 0Eh - db 0 - db 0BFh - db 0 - db 9 - db 0 - db 0C0h - db 0 - db 4 - db 0 - db 0C0h - db 0 - db 0 - db 0 - db 0C0h - db 0 - db 0FBh - db 0FFh - db 0C0h - db 0 - db 0F6h - db 0FFh - db 0C0h - db 0 - db 0F1h - db 0FFh - db 0BFh - db 0 - db 0EDh - db 0FFh - db 0BFh - db 0 - db 0E8h - db 0FFh - db 0BEh - db 0 - db 0E3h - db 0FFh - db 0BDh - db 0 - db 0DFh - db 0FFh - db 0BDh - db 0 - db 0DAh - db 0FFh - db 0BCh - db 0 - db 0D6h - db 0FFh - db 0BBh - db 0 - db 0D1h - db 0FFh - db 0BAh - db 0 - db 0CDh - db 0FFh - db 0B9h - db 0 - db 0C8h - db 0FFh - db 0B7h - db 0 - db 0C4h - db 0FFh - db 0B6h - db 0 - db 0BFh - db 0FFh - db 0B4h - db 0 - db 0BBh - db 0FFh - db 0B3h - db 0 - db 0B6h - db 0FFh - db 0B1h - db 0 - db 0B2h - db 0FFh - db 0AFh - db 0 - db 0AEh - db 0FFh - db 0ADh - db 0 - db 0A9h - db 0FFh - db 0ABh - db 0 - db 0A5h - db 0FFh - db 0A9h - db 0 - db 0A1h - db 0FFh - db 0A7h - db 0 - db 9Dh - db 0FFh - db 0A5h - db 0 - db 99h - db 0FFh - db 0A2h - db 0 - db 95h - db 0FFh - db 9Fh - db 0 - db 91h - db 0FFh - db 9Ch - db 0 - db 8Eh - db 0FFh - db 9Ah - db 0 - db 8Ah - db 0FFh - db 97h - db 0 - db 86h - db 0FFh - db 94h - db 0 - db 82h - db 0FFh - db 91h - db 0 - db 7Fh - db 0FFh - db 8Eh - db 0 - db 7Bh ; { - db 0FFh - db 8Ah - db 0 - db 78h ; x - db 0FFh - db 87h - db 0 - db 75h ; u - db 0FFh - db 84h - db 0 - db 71h ; q - db 0FFh - db 81h - db 0 - db 6Eh ; n - db 0FFh - db 7Dh ; } - db 0 - db 6Bh ; k - db 0FFh - db 79h ; y - db 0 - db 68h ; h - db 0FFh - db 75h ; u - db 0 - db 65h ; e - db 0FFh - db 72h ; r - db 0 - db 63h ; c - db 0FFh - db 6Eh ; n - db 0 - db 60h - db 0FFh - db 6Ah ; j - db 0 - db 5Eh ; ^ - db 0FFh - db 66h ; f - db 0 - db 5Bh ; [ - db 0FFh - db 63h ; c - db 0 - db 58h ; X - db 0FFh - db 5Eh ; ^ - db 0 - db 56h ; V - db 0FFh - db 5Ah ; Z - db 0 - db 54h ; T - db 0FFh - db 56h ; V - db 0 - db 52h ; R - db 0FFh - db 51h ; Q - db 0 - db 50h ; P - db 0FFh - db 4Eh ; N - db 0 - db 4Eh ; N - db 0FFh - db 49h ; I - db 0 - db 4Ch ; L - db 0FFh - db 45h ; E - db 0 - db 4Bh ; K - db 0FFh - db 40h - db 0 - db 49h ; I - db 0FFh - db 3Ch ; < - db 0 - db 48h ; H - db 0FFh - db 37h ; 7 - db 0 - db 46h ; F - db 0FFh - db 33h ; 3 - db 0 - db 46h ; F - db 0FFh - db 2Eh ; . - db 0 - db 44h ; D - db 0FFh - db 2Ah ; * - db 0 - db 43h ; C - db 0FFh - db 25h ; % - db 0 - db 43h ; C - db 0FFh - db 21h ; ! - db 0 - db 42h ; B - db 0FFh - db 1Ch - db 0 - db 41h ; A - db 0FFh - db 17h - db 0 - db 40h - db 0FFh - db 12h - db 0 - db 40h - db 0FFh - db 0Eh - db 0 - db 40h - db 0FFh - db 9 - db 0 - db 40h - db 0FFh - db 4 - db 0 - db 40h - db 0FFh - db 0 - db 0 - db 40h - db 0FFh - db 0FBh - db 0FFh - db 40h - db 0FFh - db 0F6h - db 0FFh - db 40h - db 0FFh - db 0F1h - db 0FFh - db 40h - db 0FFh - db 0EDh - db 0FFh - db 41h ; A - db 0FFh - db 0E8h - db 0FFh - db 42h ; B - db 0FFh - db 0E3h - db 0FFh - db 43h ; C - db 0FFh - db 0DFh - db 0FFh - db 43h ; C - db 0FFh - db 0DAh - db 0FFh - db 44h ; D - db 0FFh - db 0D6h - db 0FFh - db 46h ; F - db 0FFh - db 0D1h - db 0FFh - db 46h ; F - db 0FFh - db 0CDh - db 0FFh - db 48h ; H - db 0FFh - db 0C8h - db 0FFh - db 49h ; I - db 0FFh - db 0C4h - db 0FFh - db 4Bh ; K - db 0FFh - db 0BFh - db 0FFh - db 4Ch ; L - db 0FFh - db 0BBh - db 0FFh - db 4Eh ; N - db 0FFh - db 0B6h - db 0FFh - db 50h ; P - db 0FFh - db 0B2h - db 0FFh - db 52h ; R - db 0FFh - db 0AEh - db 0FFh - db 54h ; T - db 0FFh - db 0A9h - db 0FFh - db 56h ; V - db 0FFh - db 0A5h - db 0FFh - db 58h ; X - db 0FFh - db 0A1h - db 0FFh - db 5Bh ; [ - db 0FFh - db 9Dh - db 0FFh - db 5Eh ; ^ - db 0FFh - db 99h - db 0FFh - db 60h - db 0FFh - db 95h - db 0FFh - db 63h ; c - db 0FFh - db 91h - db 0FFh - db 65h ; e - db 0FFh - db 8Eh - db 0FFh - db 68h ; h - db 0FFh - db 8Ah - db 0FFh - db 6Bh ; k - db 0FFh - db 86h - db 0FFh - db 6Eh ; n - db 0FFh - db 82h - db 0FFh - db 71h ; q - db 0FFh - db 7Fh - db 0FFh - db 75h ; u - db 0FFh - db 7Bh ; { - db 0FFh - db 78h ; x - db 0FFh - db 78h ; x - db 0FFh - db 7Bh ; { - db 0FFh - db 75h ; u - db 0FFh - db 7Fh - db 0FFh - db 71h ; q - db 0FFh - db 82h - db 0FFh - db 6Eh ; n - db 0FFh - db 86h - db 0FFh - db 6Bh ; k - db 0FFh - db 8Ah - db 0FFh - db 68h ; h - db 0FFh - db 8Eh - db 0FFh - db 65h ; e - db 0FFh - db 91h - db 0FFh - db 63h ; c - db 0FFh - db 95h - db 0FFh - db 60h - db 0FFh - db 99h - db 0FFh - db 5Eh ; ^ - db 0FFh - db 9Dh - db 0FFh - db 5Bh ; [ - db 0FFh - db 0A1h - db 0FFh - db 58h ; X - db 0FFh - db 0A5h - db 0FFh - db 56h ; V - db 0FFh - db 0A9h - db 0FFh - db 54h ; T - db 0FFh - db 0AEh - db 0FFh - db 52h ; R - db 0FFh - db 0B2h - db 0FFh - db 50h ; P - db 0FFh - db 0B6h - db 0FFh - db 4Eh ; N - db 0FFh - db 0BBh - db 0FFh - db 4Ch ; L - db 0FFh - db 0BFh - db 0FFh - db 4Bh ; K - db 0FFh - db 0C4h - db 0FFh - db 49h ; I - db 0FFh - db 0C8h - db 0FFh - db 48h ; H - db 0FFh - db 0CDh - db 0FFh - db 46h ; F - db 0FFh - db 0D1h - db 0FFh - db 46h ; F - db 0FFh - db 0D6h - db 0FFh - db 44h ; D - db 0FFh - db 0DAh - db 0FFh - db 43h ; C - db 0FFh - db 0DFh - db 0FFh - db 43h ; C - db 0FFh - db 0E3h - db 0FFh - db 42h ; B - db 0FFh - db 0E8h - db 0FFh - db 41h ; A - db 0FFh - db 0EDh - db 0FFh - db 40h - db 0FFh - db 0F1h - db 0FFh - db 40h - db 0FFh - db 0F6h - db 0FFh - db 40h - db 0FFh - db 0FBh - db 0FFh - db 40h - db 0FFh - db 0 - db 0 - db 40h - db 0FFh - db 4 - db 0 - db 40h - db 0FFh - db 9 - db 0 - db 40h - db 0FFh - db 0Eh - db 0 - db 40h - db 0FFh - db 12h - db 0 - db 40h - db 0FFh - db 17h - db 0 - db 41h ; A - db 0FFh - db 1Ch - db 0 - db 42h ; B - db 0FFh - db 21h ; ! - db 0 - db 43h ; C - db 0FFh - db 25h ; % - db 0 - db 43h ; C - db 0FFh - db 2Ah ; * - db 0 - db 44h ; D - db 0FFh - db 2Eh ; . - db 0 - db 46h ; F - db 0FFh - db 33h ; 3 - db 0 - db 46h ; F - db 0FFh - db 37h ; 7 - db 0 - db 48h ; H - db 0FFh - db 3Ch ; < - db 0 - db 49h ; I - db 0FFh - db 40h - db 0 - db 4Bh ; K - db 0FFh - db 45h ; E - db 0 - db 4Ch ; L - db 0FFh - db 49h ; I - db 0 - db 4Eh ; N - db 0FFh - db 4Eh ; N - db 0 - db 50h ; P - db 0FFh - db 51h ; Q - db 0 - db 52h ; R - db 0FFh - db 56h ; V - db 0 - db 54h ; T - db 0FFh - db 5Ah ; Z - db 0 - db 56h ; V - db 0FFh - db 5Eh ; ^ - db 0 - db 58h ; X - db 0FFh - db 63h ; c - db 0 - db 5Bh ; [ - db 0FFh - db 66h ; f - db 0 - db 5Eh ; ^ - db 0FFh - db 6Ah ; j - db 0 - db 60h - db 0FFh - db 6Eh ; n - db 0 - db 63h ; c - db 0FFh - db 72h ; r - db 0 - db 65h ; e - db 0FFh - db 75h ; u - db 0 - db 68h ; h - db 0FFh - db 79h ; y - db 0 - db 6Bh ; k - db 0FFh - db 7Dh ; } - db 0 - db 6Eh ; n - db 0FFh - db 81h - db 0 - db 71h ; q - db 0FFh - db 84h - db 0 - db 75h ; u - db 0FFh - db 87h - db 0 - db 78h ; x - db 0FFh - db 8Ah - db 0 - db 7Bh ; { - db 0FFh - db 8Eh - db 0 - db 7Fh - db 0FFh - db 91h - db 0 - db 82h - db 0FFh - db 94h - db 0 - db 86h - db 0FFh - db 97h - db 0 - db 8Ah - db 0FFh - db 9Ah - db 0 - db 8Eh - db 0FFh - db 9Ch - db 0 - db 91h - db 0FFh - db 9Fh - db 0 - db 95h - db 0FFh - db 0A2h - db 0 - db 99h - db 0FFh - db 0A5h - db 0 - db 9Dh - db 0FFh - db 0A7h - db 0 - db 0A1h - db 0FFh - db 0A9h - db 0 - db 0A5h - db 0FFh - db 0ABh - db 0 - db 0A9h - db 0FFh - db 0ADh - db 0 - db 0AEh - db 0FFh - db 0AFh - db 0 - db 0B2h - db 0FFh - db 0B1h - db 0 - db 0B6h - db 0FFh - db 0B3h - db 0 - db 0BBh - db 0FFh - db 0B4h - db 0 - db 0BFh - db 0FFh - db 0B6h - db 0 - db 0C4h - db 0FFh - db 0B7h - db 0 - db 0C8h - db 0FFh - db 0B9h - db 0 - db 0CDh - db 0FFh - db 0BAh - db 0 - db 0D1h - db 0FFh - db 0BBh - db 0 - db 0D6h - db 0FFh - db 0BCh - db 0 - db 0DAh - db 0FFh - db 0BDh - db 0 - db 0DFh - db 0FFh - db 0BDh - db 0 - db 0E3h - db 0FFh - db 0BEh - db 0 - db 0E8h - db 0FFh - db 0BFh - db 0 - db 0EDh - db 0FFh - db 0BFh - db 0 - db 0F1h - db 0FFh - db 0C0h - db 0 - db 0F6h - db 0FFh - db 0C0h - db 0 - db 0FBh - db 0FFh +include th04/shot_velocity[data].asm aGENSOU_SCR db 'GENSOU.SCR',0 gCONTINUE db 0ACh, 0B8h, 0B7h, 0BDh, 0B2h, 0B7h, 0BEh, 0AEh, 0 byte_221C0 db 0