[4f508e6] | 1 | | ------------------------------------------------------------------------------
|
---|
| 2 | | sreset.s -- reset score highlighting
|
---|
| 3 | | Version 14 -- 1988-07-28 -- D.N. Lynx Crowe
|
---|
| 4 | | ------------------------------------------------------------------------------
|
---|
[f40a309] | 5 | .text
|
---|
[4f508e6] | 6 |
|
---|
[8325447] | 7 | .xdef sreset | sreset()
|
---|
| 8 |
|
---|
| 9 | .xref vputa | vputa(sbase, row, col, attrib)
|
---|
| 10 |
|
---|
| 11 | .xref ndisp | WORD - display number
|
---|
| 12 | .xref obj8 | LONG - object base address
|
---|
| 13 | .xref vrbw08 | WORD - detail word for bit 8
|
---|
| 14 | .xref vrbw09 | WORD - detail word for bit 9
|
---|
| 15 | .xref vrbw10 | WORD - detail word for bit 10
|
---|
| 16 | .xref vrbw11 | WORD - detail word for bit 11
|
---|
| 17 | .xref vrbw12 | WORD - detail word for bit 12
|
---|
| 18 | .xref vrbw13 | WORD - detail word for bit 13
|
---|
| 19 | .xref vrbw14 | WORD - detail word for bit 14
|
---|
| 20 | .xref vrbw15 | WORD - detail word for bit 15
|
---|
| 21 | .xref vrcw | WORD - video reset control word
|
---|
[4f508e6] | 22 |
|
---|
| 23 | ROW = 4
|
---|
| 24 | COL = 6
|
---|
| 25 | ATR = 8
|
---|
| 26 |
|
---|
| 27 | AT01 = 0x0014
|
---|
| 28 | AT04 = 0x0013
|
---|
| 29 | AT05 = 0x0014
|
---|
| 30 | AT06 = 0x0013
|
---|
| 31 | AT07 = 0x0014
|
---|
| 32 | AT08 = 0x0013
|
---|
| 33 | AT09 = 0x0014
|
---|
| 34 | AT10 = 0x0013
|
---|
| 35 | AT11 = 0x0012
|
---|
| 36 | AT12 = 0x0012
|
---|
| 37 |
|
---|
[f40a309] | 38 | .page
|
---|
[4f508e6] | 39 |
|
---|
| 40 | | sreset() -- reset highlighting
|
---|
| 41 | | -------- ------------------
|
---|
[8325447] | 42 | sreset: link a6,#0 | link stack frame
|
---|
| 43 | cmp.w #2,ndisp | see if we should update display
|
---|
[4f508e6] | 44 | bne srsexit | jump if not
|
---|
| 45 |
|
---|
[8325447] | 46 | move.w vrcw,d0 | get and check vrcw
|
---|
[4f508e6] | 47 | bne srs0 | jump if something to do
|
---|
| 48 |
|
---|
| 49 | srsexit: unlk a6 | unlink stack frame
|
---|
| 50 | rts | return to caller
|
---|
| 51 |
|
---|
| 52 | srs0: move.w sr,d1 | <<<<< disable interrupts >>>>>
|
---|
| 53 | ori.w #0x0700,sr | ...
|
---|
| 54 |
|
---|
[3370595] | 55 | move.w vrcw,_vrcw | make local copies of control variables
|
---|
[8325447] | 56 | clr.w vrcw | ... and clear them for the next pass
|
---|
[3370595] | 57 | move.w vrbw08,_vrbw08 | ...
|
---|
[8325447] | 58 | clr.w vrbw08 | ...
|
---|
[3370595] | 59 | move.w vrbw09,_vrbw09 | ...
|
---|
[8325447] | 60 | clr.w vrbw09 | ...
|
---|
[3370595] | 61 | move.w vrbw10,_vrbw10 | ...
|
---|
[8325447] | 62 | clr.w vrbw10 | ...
|
---|
[3370595] | 63 | move.w vrbw11,_vrbw11 | ...
|
---|
[8325447] | 64 | clr.w vrbw11 | ...
|
---|
[3370595] | 65 | move.w vrbw12,_vrbw12 | ...
|
---|
[8325447] | 66 | clr.w vrbw12 | ...
|
---|
[3370595] | 67 | move.w vrbw13,_vrbw13 | ...
|
---|
[8325447] | 68 | clr.w vrbw13 | ...
|
---|
[3370595] | 69 | move.w vrbw14,_vrbw14 | ...
|
---|
[8325447] | 70 | clr.w vrbw14 | ...
|
---|
[3370595] | 71 | move.w vrbw15,_vrbw15 | ...
|
---|
[8325447] | 72 | clr.w vrbw15 | ...
|
---|
[4f508e6] | 73 |
|
---|
| 74 | move.w d1,sr | <<<<< restore interrupts >>>>>
|
---|
| 75 |
|
---|
| 76 | | Setup STACK for subsequent calls to vputa(sbase, row, col, atr):
|
---|
| 77 |
|
---|
| 78 | | 0(a7) sbase
|
---|
| 79 |
|
---|
| 80 | | 4(a7) row ROW
|
---|
| 81 | | 6(a7) col COL
|
---|
| 82 | | 8(a7) atr ATR
|
---|
| 83 |
|
---|
| 84 | clr.w -(a7) | put dummy attribute on stack
|
---|
| 85 | clr.w -(a7) | put dummy column on stack
|
---|
| 86 | clr.w -(a7) | put dummy row on stack
|
---|
[8325447] | 87 | move.l obj8,-(a7) | put sbase on stack
|
---|
[4f508e6] | 88 |
|
---|
[f40a309] | 89 | .page
|
---|
[4f508e6] | 90 |
|
---|
| 91 | | assignment
|
---|
| 92 | | ----------
|
---|
| 93 | btst #0,d0 | assignment ?
|
---|
| 94 | beq srs1 | jump if not
|
---|
| 95 |
|
---|
| 96 | move.w #AT04,ATR(a7) | put attribute on stack
|
---|
| 97 | move.w #1,ROW(a7) | put row on stack
|
---|
| 98 | move.w #11,COL(a7) | put 1st column on stack
|
---|
[8325447] | 99 | jsr vputa | reset first column
|
---|
[4f508e6] | 100 | move.w #12,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 101 | jsr vputa | reset second column
|
---|
[3370595] | 102 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 103 |
|
---|
| 104 | | tuning
|
---|
| 105 | | ------
|
---|
| 106 | srs1: btst #1,d0 | tuning ?
|
---|
| 107 | beq srs2 | jump if not
|
---|
| 108 |
|
---|
| 109 | move.w #AT05,ATR(a7) | put attribute on stack
|
---|
| 110 | move.w #1,ROW(a7) | put row on stack
|
---|
| 111 | move.w #19,COL(a7) | put column on stack
|
---|
[8325447] | 112 | jsr vputa | reset column
|
---|
[3370595] | 113 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 114 |
|
---|
| 115 | | tempo
|
---|
| 116 | | -----
|
---|
| 117 | srs2: btst #2,d0 | tempo ?
|
---|
| 118 | beq srs3 | jump if not
|
---|
| 119 |
|
---|
| 120 | move.w #AT06,ATR(a7) | put attribute on stack
|
---|
| 121 | move.w #1,ROW(a7) | put row on stack
|
---|
| 122 | move.w #27,COL(a7) | put 1st column on stack
|
---|
[8325447] | 123 | jsr vputa | reset first column
|
---|
[4f508e6] | 124 | move.w #28,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 125 | jsr vputa | reset second column
|
---|
[4f508e6] | 126 | move.w #29,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 127 | jsr vputa | reset third column
|
---|
[3370595] | 128 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 129 |
|
---|
[f40a309] | 130 | .page
|
---|
[4f508e6] | 131 |
|
---|
| 132 | | interpolate
|
---|
| 133 | | -----------
|
---|
| 134 | srs3: btst #3,d0 | interpolate ?
|
---|
| 135 | beq srs4 | jump if not
|
---|
| 136 |
|
---|
| 137 | move.w #AT07,ATR(a7) | put attribute on stack
|
---|
| 138 | move.w #1,ROW(a7) | put row on stack
|
---|
| 139 | move.w #35,COL(a7) | put 1st column on stack
|
---|
[8325447] | 140 | jsr vputa | reset first column
|
---|
[4f508e6] | 141 | move.w #36,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 142 | jsr vputa | reset second column
|
---|
[4f508e6] | 143 | move.w #37,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 144 | jsr vputa | reset third column
|
---|
[4f508e6] | 145 | move.w #38,COL(a7) | put 4th column on stack
|
---|
[8325447] | 146 | jsr vputa | reset fourth column
|
---|
[3370595] | 147 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 148 |
|
---|
| 149 | | section begin
|
---|
| 150 | | -------------
|
---|
| 151 | srs4: btst #4,d0 | section begin ?
|
---|
| 152 | beq srs5 | jump if not
|
---|
| 153 |
|
---|
| 154 | move.w #AT01,ATR(a7) | put attribute on stack
|
---|
| 155 | move.w #0,ROW(a7) | put row on stack
|
---|
| 156 | move.w #6,COL(a7) | put 1st column on stack
|
---|
[8325447] | 157 | jsr vputa | reset first column
|
---|
[4f508e6] | 158 | move.w #7,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 159 | jsr vputa | reset second column
|
---|
[4f508e6] | 160 |
|
---|
[f40a309] | 161 | .page
|
---|
[4f508e6] | 162 |
|
---|
| 163 | | punch in
|
---|
| 164 | | --------
|
---|
| 165 | srs5: btst #5,d0 | punch in ?
|
---|
| 166 | beq srs6 | jump if not
|
---|
| 167 |
|
---|
| 168 | move.w #AT09,ATR(a7) | put attribute on stack
|
---|
| 169 | move.w #1,ROW(a7) | put row on stack
|
---|
| 170 | move.w #50,COL(a7) | put 1st column on stack
|
---|
[8325447] | 171 | jsr vputa | reset first column
|
---|
[4f508e6] | 172 | move.w #51,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 173 | jsr vputa | reset second column
|
---|
[3370595] | 174 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 175 |
|
---|
| 176 | | punch out
|
---|
| 177 | | ---------
|
---|
| 178 | srs6: btst #6,d0 | punch out ?
|
---|
| 179 | beq srs7 | jump if not
|
---|
| 180 |
|
---|
| 181 | move.w #AT09,ATR(a7) | put attribute on stack
|
---|
| 182 | move.w #1,ROW(a7) | put row on stack
|
---|
| 183 | move.w #53,COL(a7) | put 1st column on stack
|
---|
[8325447] | 184 | jsr vputa | reset first column
|
---|
[4f508e6] | 185 | move.w #54,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 186 | jsr vputa | reset second column
|
---|
[4f508e6] | 187 | move.w #55,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 188 | jsr vputa | reset third column
|
---|
[3370595] | 189 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 190 |
|
---|
| 191 | | Output
|
---|
| 192 | | ------
|
---|
| 193 | srs7: btst #7,d0 | output ?
|
---|
| 194 | beq srs8 | jump if not
|
---|
| 195 |
|
---|
| 196 | move.w #AT10,ATR(a7) | put attribute on stack
|
---|
| 197 | move.w #1,ROW(a7) | put row on stack
|
---|
| 198 | move.w #57,COL(a7) | put 1st column on stack
|
---|
[8325447] | 199 | jsr vputa | reset first column
|
---|
[4f508e6] | 200 | move.w #58,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 201 | jsr vputa | reset second column
|
---|
[4f508e6] | 202 | move.w #59,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 203 | jsr vputa | reset third column
|
---|
[4f508e6] | 204 | move.w #60,COL(a7) | put 4th column on stack
|
---|
[8325447] | 205 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 206 | move.w #61,COL(a7) | put 5th column on stack
|
---|
[8325447] | 207 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 208 | move.w #62,COL(a7) | put 6th column on stack
|
---|
[8325447] | 209 | jsr vputa | reset sixth column
|
---|
[3370595] | 210 | move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 211 |
|
---|
[f40a309] | 212 | .page
|
---|
[4f508e6] | 213 |
|
---|
| 214 | | instrument
|
---|
| 215 | | ----------
|
---|
| 216 | srs8: btst #8,d0 | instrument ?
|
---|
| 217 | beq srs9 | jump if not
|
---|
| 218 |
|
---|
| 219 | move.w #2,ROW(a7) | put row on stack
|
---|
| 220 | move.w #AT11,ATR(a7) | put attribute on stack
|
---|
[3370595] | 221 | btst #0,_vrbw08+1 | group 1 ?
|
---|
[4f508e6] | 222 | beq srs8a | jump if not
|
---|
| 223 |
|
---|
| 224 | move.w #7,COL(a7) | put 1st column on stack
|
---|
[8325447] | 225 | jsr vputa | reset first column
|
---|
[4f508e6] | 226 | move.w #8,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 227 | jsr vputa | reset second column
|
---|
[4f508e6] | 228 |
|
---|
[3370595] | 229 | srs8a: btst #1,_vrbw08+1 | group 2 ?
|
---|
[4f508e6] | 230 | beq srs8b | jump if not
|
---|
| 231 |
|
---|
| 232 | move.w #12,COL(a7) | put 1st column on stack
|
---|
[8325447] | 233 | jsr vputa | reset first character
|
---|
[4f508e6] | 234 | move.w #13,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 235 | jsr vputa | reset second character
|
---|
[4f508e6] | 236 |
|
---|
[3370595] | 237 | srs8b: btst #2,_vrbw08+1 | group 3 ?
|
---|
[4f508e6] | 238 | beq srs8c | jump if not
|
---|
| 239 |
|
---|
| 240 | move.w #17,COL(a7) | put 1st column on stack
|
---|
[8325447] | 241 | jsr vputa | reset first character
|
---|
[4f508e6] | 242 | move.w #18,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 243 | jsr vputa | reset second character
|
---|
[4f508e6] | 244 |
|
---|
[3370595] | 245 | srs8c: btst #3,_vrbw08+1 | group 4 ?
|
---|
[4f508e6] | 246 | beq srs8d | jump if not
|
---|
| 247 |
|
---|
| 248 | move.w #22,COL(a7) | put 1st column on stack
|
---|
[8325447] | 249 | jsr vputa | reset first character
|
---|
[4f508e6] | 250 | move.w #23,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 251 | jsr vputa | reset second character
|
---|
[4f508e6] | 252 |
|
---|
[f40a309] | 253 | .page
|
---|
[4f508e6] | 254 |
|
---|
[3370595] | 255 | srs8d: btst #4,_vrbw08+1 | group 5 ?
|
---|
[4f508e6] | 256 | beq srs8e | jump if not
|
---|
| 257 |
|
---|
| 258 | move.w #27,COL(a7) | put 1st column on stack
|
---|
[8325447] | 259 | jsr vputa | reset first character
|
---|
[4f508e6] | 260 | move.w #28,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 261 | jsr vputa | reset second character
|
---|
[4f508e6] | 262 |
|
---|
[3370595] | 263 | srs8e: btst #5,_vrbw08+1 | group 6 ?
|
---|
[4f508e6] | 264 | beq srs8f | jump if not
|
---|
| 265 |
|
---|
| 266 | move.w #32,COL(a7) | put 1st column on stack
|
---|
[8325447] | 267 | jsr vputa | reset first character
|
---|
[4f508e6] | 268 | move.w #33,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 269 | jsr vputa | reset second character
|
---|
[4f508e6] | 270 |
|
---|
[3370595] | 271 | srs8f: btst #6,_vrbw08+1 | group 7 ?
|
---|
[4f508e6] | 272 | beq srs8g | jump if not
|
---|
| 273 |
|
---|
| 274 | move.w #37,COL(a7) | put 1st column on stack
|
---|
[8325447] | 275 | jsr vputa | reset first character
|
---|
[4f508e6] | 276 | move.w #38,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 277 | jsr vputa | reset second character
|
---|
[4f508e6] | 278 |
|
---|
[3370595] | 279 | srs8g: btst #7,_vrbw08+1 | group 8 ?
|
---|
[4f508e6] | 280 | beq srs8h | jump if not
|
---|
| 281 |
|
---|
| 282 | move.w #42,COL(a7) | put 1st column on stack
|
---|
[8325447] | 283 | jsr vputa | reset first character
|
---|
[4f508e6] | 284 | move.w #43,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 285 | jsr vputa | reset second character
|
---|
[4f508e6] | 286 |
|
---|
[f40a309] | 287 | .page
|
---|
[4f508e6] | 288 |
|
---|
[3370595] | 289 | srs8h: btst #0,_vrbw08 | group 9
|
---|
[4f508e6] | 290 | beq srs8j | jump if not
|
---|
| 291 |
|
---|
| 292 | move.w #47,COL(a7) | put 1st column on stack
|
---|
[8325447] | 293 | jsr vputa | reset first character
|
---|
[4f508e6] | 294 | move.w #48,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 295 | jsr vputa | reset second character
|
---|
[4f508e6] | 296 |
|
---|
[3370595] | 297 | srs8j: btst #1,_vrbw08 | group 10
|
---|
[4f508e6] | 298 | beq srs8k | jump if not
|
---|
| 299 |
|
---|
| 300 | move.w #52,COL(a7) | put 1st column on stack
|
---|
[8325447] | 301 | jsr vputa | reset first character
|
---|
[4f508e6] | 302 | move.w #53,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 303 | jsr vputa | reset second character
|
---|
[4f508e6] | 304 |
|
---|
[3370595] | 305 | srs8k: btst #2,_vrbw08 | group 11
|
---|
[4f508e6] | 306 | beq srs8m | jump if not
|
---|
| 307 |
|
---|
| 308 | move.w #57,COL(a7) | put 1st column on stack
|
---|
[8325447] | 309 | jsr vputa | reset first character
|
---|
[4f508e6] | 310 | move.w #58,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 311 | jsr vputa | reset second character
|
---|
[4f508e6] | 312 |
|
---|
[3370595] | 313 | srs8m: btst #3,_vrbw08 | group 12
|
---|
[4f508e6] | 314 | beq srs8x | jump if not
|
---|
| 315 |
|
---|
| 316 | move.w #62,COL(a7) | put 1st column on stack
|
---|
[8325447] | 317 | jsr vputa | reset first character
|
---|
[4f508e6] | 318 | move.w #63,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 319 | jsr vputa | reset second character
|
---|
[4f508e6] | 320 |
|
---|
[3370595] | 321 | srs8x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 322 |
|
---|
[f40a309] | 323 | .page
|
---|
[4f508e6] | 324 |
|
---|
| 325 | | transpose
|
---|
| 326 | | ---------
|
---|
| 327 | srs9: btst #9,d0 | transpose ?
|
---|
| 328 | beq srs10 | jump if not
|
---|
| 329 |
|
---|
| 330 | move.w #AT11,ATR(a7) | put attribute on stack
|
---|
| 331 | move.w #3,ROW(a7) | put row on stack
|
---|
[3370595] | 332 | btst #0,_vrbw09+1 | group 1 ?
|
---|
[4f508e6] | 333 | beq srs9a | jump if not
|
---|
| 334 |
|
---|
| 335 | move.w #5,COL(a7) | put 1st column on stack
|
---|
[8325447] | 336 | jsr vputa | reset first column
|
---|
[4f508e6] | 337 | move.w #6,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 338 | jsr vputa | reset second column
|
---|
[4f508e6] | 339 | move.w #7,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 340 | jsr vputa | reset third column
|
---|
[4f508e6] | 341 | move.w #8,COL(a7) | put 4th column on stack
|
---|
[8325447] | 342 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 343 |
|
---|
[3370595] | 344 | srs9a: btst #1,_vrbw09+1 | group 2 ?
|
---|
[4f508e6] | 345 | beq srs9b | jump if not
|
---|
| 346 |
|
---|
| 347 | move.w #10,COL(a7) | put 1st column on stack
|
---|
[8325447] | 348 | jsr vputa | reset first column
|
---|
[4f508e6] | 349 | move.w #11,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 350 | jsr vputa | reset second column
|
---|
[4f508e6] | 351 | move.w #12,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 352 | jsr vputa | reset third column
|
---|
[4f508e6] | 353 | move.w #13,COL(a7) | put 4th column on stack
|
---|
[8325447] | 354 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 355 |
|
---|
[3370595] | 356 | srs9b: btst #2,_vrbw09+1 | group 3 ?
|
---|
[4f508e6] | 357 | beq srs9c | jump if not
|
---|
| 358 |
|
---|
| 359 | move.w #15,COL(a7) | put 1st column on stack
|
---|
[8325447] | 360 | jsr vputa | reset first column
|
---|
[4f508e6] | 361 | move.w #16,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 362 | jsr vputa | reset second column
|
---|
[4f508e6] | 363 | move.w #17,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 364 | jsr vputa | reset third column
|
---|
[4f508e6] | 365 | move.w #18,COL(a7) | put 4th column on stack
|
---|
[8325447] | 366 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 367 |
|
---|
[f40a309] | 368 | .page
|
---|
[4f508e6] | 369 |
|
---|
[3370595] | 370 | srs9c: btst #3,_vrbw09+1 | group 4 ?
|
---|
[4f508e6] | 371 | beq srs9d | jump if not
|
---|
| 372 |
|
---|
| 373 | move.w #20,COL(a7) | put 1st column on stack
|
---|
[8325447] | 374 | jsr vputa | reset first column
|
---|
[4f508e6] | 375 | move.w #21,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 376 | jsr vputa | reset second column
|
---|
[4f508e6] | 377 | move.w #22,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 378 | jsr vputa | reset third column
|
---|
[4f508e6] | 379 | move.w #23,COL(a7) | put 4th column on stack
|
---|
[8325447] | 380 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 381 |
|
---|
[3370595] | 382 | srs9d: btst #4,_vrbw09+1 | group 5 ?
|
---|
[4f508e6] | 383 | beq srs9e | jump if not
|
---|
| 384 |
|
---|
| 385 | move.w #25,COL(a7) | put 1st column on stack
|
---|
[8325447] | 386 | jsr vputa | reset first column
|
---|
[4f508e6] | 387 | move.w #26,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 388 | jsr vputa | reset second column
|
---|
[4f508e6] | 389 | move.w #27,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 390 | jsr vputa | reset third column
|
---|
[4f508e6] | 391 | move.w #28,COL(a7) | put 4th column on stack
|
---|
[8325447] | 392 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 393 |
|
---|
[3370595] | 394 | srs9e: btst #5,_vrbw09+1 | group 6 ?
|
---|
[4f508e6] | 395 | beq srs9f | jump if not
|
---|
| 396 |
|
---|
| 397 | move.w #30,COL(a7) | put 1st column on stack
|
---|
[8325447] | 398 | jsr vputa | reset first column
|
---|
[4f508e6] | 399 | move.w #31,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 400 | jsr vputa | reset second column
|
---|
[4f508e6] | 401 | move.w #32,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 402 | jsr vputa | reset third column
|
---|
[4f508e6] | 403 | move.w #33,COL(a7) | put 4th column on stack
|
---|
[8325447] | 404 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 405 |
|
---|
[f40a309] | 406 | .page
|
---|
[4f508e6] | 407 |
|
---|
[3370595] | 408 | srs9f: btst #6,_vrbw09+1 | group 7 ?
|
---|
[4f508e6] | 409 | beq srs9g | jump if not
|
---|
| 410 |
|
---|
| 411 | move.w #35,COL(a7) | put 1st column on stack
|
---|
[8325447] | 412 | jsr vputa | reset first column
|
---|
[4f508e6] | 413 | move.w #36,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 414 | jsr vputa | reset second column
|
---|
[4f508e6] | 415 | move.w #37,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 416 | jsr vputa | reset third column
|
---|
[4f508e6] | 417 | move.w #38,COL(a7) | put 4th column on stack
|
---|
[8325447] | 418 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 419 |
|
---|
[3370595] | 420 | srs9g: btst #7,_vrbw09+1 | group 8 ?
|
---|
[4f508e6] | 421 | beq srs9h | jump if not
|
---|
| 422 |
|
---|
| 423 | move.w #40,COL(a7) | put 1st column on stack
|
---|
[8325447] | 424 | jsr vputa | reset first column
|
---|
[4f508e6] | 425 | move.w #41,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 426 | jsr vputa | reset second column
|
---|
[4f508e6] | 427 | move.w #42,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 428 | jsr vputa | reset third column
|
---|
[4f508e6] | 429 | move.w #43,COL(a7) | put 4th column on stack
|
---|
[8325447] | 430 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 431 |
|
---|
[3370595] | 432 | srs9h: btst #0,_vrbw09 | group 9
|
---|
[4f508e6] | 433 | beq srs9j | jump if not
|
---|
| 434 |
|
---|
| 435 | move.w #45,COL(a7) | put 1st column on stack
|
---|
[8325447] | 436 | jsr vputa | reset first column
|
---|
[4f508e6] | 437 | move.w #46,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 438 | jsr vputa | reset second column
|
---|
[4f508e6] | 439 | move.w #47,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 440 | jsr vputa | reset third column
|
---|
[4f508e6] | 441 | move.w #48,COL(a7) | put 4th column on stack
|
---|
[8325447] | 442 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 443 |
|
---|
[f40a309] | 444 | .page
|
---|
[4f508e6] | 445 |
|
---|
[3370595] | 446 | srs9j: btst #1,_vrbw09 | group 10
|
---|
[4f508e6] | 447 | beq srs9k | jump if not
|
---|
| 448 |
|
---|
| 449 | move.w #50,COL(a7) | put 1st column on stack
|
---|
[8325447] | 450 | jsr vputa | reset first column
|
---|
[4f508e6] | 451 | move.w #51,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 452 | jsr vputa | reset second column
|
---|
[4f508e6] | 453 | move.w #52,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 454 | jsr vputa | reset third column
|
---|
[4f508e6] | 455 | move.w #53,COL(a7) | put 4th column on stack
|
---|
[8325447] | 456 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 457 |
|
---|
[3370595] | 458 | srs9k: btst #2,_vrbw09 | group 11
|
---|
[4f508e6] | 459 | beq srs9m | jump if not
|
---|
| 460 |
|
---|
| 461 | move.w #55,COL(a7) | put 1st column on stack
|
---|
[8325447] | 462 | jsr vputa | reset first column
|
---|
[4f508e6] | 463 | move.w #56,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 464 | jsr vputa | reset second column
|
---|
[4f508e6] | 465 | move.w #57,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 466 | jsr vputa | reset third column
|
---|
[4f508e6] | 467 | move.w #58,COL(a7) | put 4th column on stack
|
---|
[8325447] | 468 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 469 |
|
---|
[3370595] | 470 | srs9m: btst #3,_vrbw09 | group 12
|
---|
[4f508e6] | 471 | beq srs9x | jump if not
|
---|
| 472 |
|
---|
| 473 | move.w #60,COL(a7) | put 1st column on stack
|
---|
[8325447] | 474 | jsr vputa | reset first column
|
---|
[4f508e6] | 475 | move.w #61,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 476 | jsr vputa | reset second column
|
---|
[4f508e6] | 477 | move.w #62,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 478 | jsr vputa | reset third column
|
---|
[4f508e6] | 479 | move.w #63,COL(a7) | put 4th column on stack
|
---|
[8325447] | 480 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 481 |
|
---|
[3370595] | 482 | srs9x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 483 |
|
---|
[f40a309] | 484 | .page
|
---|
[4f508e6] | 485 |
|
---|
| 486 | | dynamics
|
---|
| 487 | | --------
|
---|
| 488 | srs10: btst #10,d0 | dynamics ?
|
---|
| 489 | beq srs11 | jump if not
|
---|
| 490 |
|
---|
| 491 | move.w #AT11,ATR(a7) | put attribute on stack
|
---|
| 492 | move.w #4,ROW(a7) | put row on stack
|
---|
[3370595] | 493 | btst #0,_vrbw10+1 | group 1 ?
|
---|
[4f508e6] | 494 | beq srs10a | jump if not
|
---|
| 495 |
|
---|
| 496 | move.w #6,COL(a7) | put column on stack
|
---|
[8325447] | 497 | jsr vputa | reset column
|
---|
[4f508e6] | 498 |
|
---|
[3370595] | 499 | srs10a: btst #1,_vrbw10+1 | group 2 ?
|
---|
[4f508e6] | 500 | beq srs10b | jump if not
|
---|
| 501 |
|
---|
| 502 | move.w #11,COL(a7) | put column on stack
|
---|
[8325447] | 503 | jsr vputa | reset column
|
---|
[4f508e6] | 504 |
|
---|
[3370595] | 505 | srs10b: btst #2,_vrbw10+1 | group 3 ?
|
---|
[4f508e6] | 506 | beq srs10c | jump if not
|
---|
| 507 |
|
---|
| 508 | move.w #16,COL(a7) | put column on stack
|
---|
[8325447] | 509 | jsr vputa | reset column
|
---|
[4f508e6] | 510 |
|
---|
[3370595] | 511 | srs10c: btst #3,_vrbw10+1 | group 4 ?
|
---|
[4f508e6] | 512 | beq srs10d | jump if not
|
---|
| 513 |
|
---|
| 514 | move.w #21,COL(a7) | put column on stack
|
---|
[8325447] | 515 | jsr vputa | reset column
|
---|
[4f508e6] | 516 |
|
---|
[f40a309] | 517 | .page
|
---|
[4f508e6] | 518 |
|
---|
[3370595] | 519 | srs10d: btst #4,_vrbw10+1 | group 5 ?
|
---|
[4f508e6] | 520 | beq srs10e | jump if not
|
---|
| 521 |
|
---|
| 522 | move.w #26,COL(a7) | put column on stack
|
---|
[8325447] | 523 | jsr vputa | reset column
|
---|
[4f508e6] | 524 |
|
---|
[3370595] | 525 | srs10e: btst #5,_vrbw10+1 | group 6 ?
|
---|
[4f508e6] | 526 | beq srs10f | jump if not
|
---|
| 527 |
|
---|
| 528 | move.w #31,COL(a7) | put column on stack
|
---|
[8325447] | 529 | jsr vputa | reset column
|
---|
[4f508e6] | 530 |
|
---|
[3370595] | 531 | srs10f: btst #6,_vrbw10+1 | group 7 ?
|
---|
[4f508e6] | 532 | beq srs10g | jump if not
|
---|
| 533 |
|
---|
| 534 | move.w #36,COL(a7) | put column on stack
|
---|
[8325447] | 535 | jsr vputa | reset column
|
---|
[4f508e6] | 536 |
|
---|
[3370595] | 537 | srs10g: btst #7,_vrbw10+1 | group 8 ?
|
---|
[4f508e6] | 538 | beq srs10h | jump if not
|
---|
| 539 |
|
---|
| 540 | move.w #41,COL(a7) | put column on stack
|
---|
[8325447] | 541 | jsr vputa | reset column
|
---|
[4f508e6] | 542 |
|
---|
[f40a309] | 543 | .page
|
---|
[4f508e6] | 544 |
|
---|
[3370595] | 545 | srs10h: btst #0,_vrbw10 | group 9
|
---|
[4f508e6] | 546 | beq srs10j | jump if not
|
---|
| 547 |
|
---|
| 548 | move.w #46,COL(a7) | put column on stack
|
---|
[8325447] | 549 | jsr vputa | reset column
|
---|
[4f508e6] | 550 |
|
---|
[3370595] | 551 | srs10j: btst #1,_vrbw10 | group 10
|
---|
[4f508e6] | 552 | beq srs10k | jump if not
|
---|
| 553 |
|
---|
| 554 | move.w #51,COL(a7) | put column on stack
|
---|
[8325447] | 555 | jsr vputa | reset column
|
---|
[4f508e6] | 556 |
|
---|
[3370595] | 557 | srs10k: btst #2,_vrbw10 | group 11
|
---|
[4f508e6] | 558 | beq srs10m | jump if not
|
---|
| 559 |
|
---|
| 560 | move.w #56,COL(a7) | put column on stack
|
---|
[8325447] | 561 | jsr vputa | reset column
|
---|
[4f508e6] | 562 |
|
---|
[3370595] | 563 | srs10m: btst #3,_vrbw10 | group 12
|
---|
[4f508e6] | 564 | beq srs10x | jump if not
|
---|
| 565 |
|
---|
| 566 | move.w #61,COL(a7) | put column on stack
|
---|
[8325447] | 567 | jsr vputa | reset column
|
---|
[4f508e6] | 568 |
|
---|
[3370595] | 569 | srs10x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 570 |
|
---|
[f40a309] | 571 | .page
|
---|
[4f508e6] | 572 |
|
---|
| 573 | | location
|
---|
| 574 | | --------
|
---|
| 575 | srs11: btst #11,d0 | location ?
|
---|
| 576 | beq srs12 | jump if not
|
---|
| 577 |
|
---|
| 578 | move.w #AT11,ATR(a7) | put attribute on stack
|
---|
| 579 | move.w #4,ROW(a7) | put row on stack
|
---|
[3370595] | 580 | btst #0,_vrbw11+1 | group 1 ?
|
---|
[4f508e6] | 581 | beq srs11a | jump if not
|
---|
| 582 |
|
---|
| 583 | move.w #8,COL(a7) | put column on stack
|
---|
[8325447] | 584 | jsr vputa | reset column
|
---|
[4f508e6] | 585 |
|
---|
[3370595] | 586 | srs11a: btst #1,_vrbw11+1 | group 2 ?
|
---|
[4f508e6] | 587 | beq srs11b | jump if not
|
---|
| 588 |
|
---|
| 589 | move.w #13,COL(a7) | put column on stack
|
---|
[8325447] | 590 | jsr vputa | reset column
|
---|
[4f508e6] | 591 |
|
---|
[3370595] | 592 | srs11b: btst #2,_vrbw11+1 | group 3 ?
|
---|
[4f508e6] | 593 | beq srs11c | jump if not
|
---|
| 594 |
|
---|
| 595 | move.w #18,COL(a7) | put column on stack
|
---|
[8325447] | 596 | jsr vputa | reset column
|
---|
[4f508e6] | 597 |
|
---|
[3370595] | 598 | srs11c: btst #3,_vrbw11+1 | group 4 ?
|
---|
[4f508e6] | 599 | beq srs11d | jump if not
|
---|
| 600 |
|
---|
| 601 | move.w #23,COL(a7) | put column on stack
|
---|
[8325447] | 602 | jsr vputa | reset column
|
---|
[4f508e6] | 603 |
|
---|
[f40a309] | 604 | .page
|
---|
[4f508e6] | 605 |
|
---|
[3370595] | 606 | srs11d: btst #4,_vrbw11+1 | group 5 ?
|
---|
[4f508e6] | 607 | beq srs11e | jump if not
|
---|
| 608 |
|
---|
| 609 | move.w #28,COL(a7) | put column on stack
|
---|
[8325447] | 610 | jsr vputa | reset column
|
---|
[4f508e6] | 611 |
|
---|
[3370595] | 612 | srs11e: btst #5,_vrbw11+1 | group 6 ?
|
---|
[4f508e6] | 613 | beq srs11f | jump if not
|
---|
| 614 |
|
---|
| 615 | move.w #33,COL(a7) | put column on stack
|
---|
[8325447] | 616 | jsr vputa | reset column
|
---|
[4f508e6] | 617 |
|
---|
[3370595] | 618 | srs11f: btst #6,_vrbw11+1 | group 7 ?
|
---|
[4f508e6] | 619 | beq srs11g | jump if not
|
---|
| 620 |
|
---|
| 621 | move.w #38,COL(a7) | put column on stack
|
---|
[8325447] | 622 | jsr vputa | reset column
|
---|
[4f508e6] | 623 |
|
---|
[3370595] | 624 | srs11g: btst #7,_vrbw11+1 | group 8 ?
|
---|
[4f508e6] | 625 | beq srs11h | jump if not
|
---|
| 626 |
|
---|
| 627 | move.w #43,COL(a7) | put column on stack
|
---|
[8325447] | 628 | jsr vputa | reset column
|
---|
[4f508e6] | 629 |
|
---|
[f40a309] | 630 | .page
|
---|
[4f508e6] | 631 |
|
---|
[3370595] | 632 | srs11h: btst #0,_vrbw11 | group 9
|
---|
[4f508e6] | 633 | beq srs11j | jump if not
|
---|
| 634 |
|
---|
| 635 | move.w #48,COL(a7) | put column on stack
|
---|
[8325447] | 636 | jsr vputa | reset column
|
---|
[4f508e6] | 637 |
|
---|
[3370595] | 638 | srs11j: btst #1,_vrbw11 | group 10
|
---|
[4f508e6] | 639 | beq srs11k | jump if not
|
---|
| 640 |
|
---|
| 641 | move.w #53,COL(a7) | put column on stack
|
---|
[8325447] | 642 | jsr vputa | reset column
|
---|
[4f508e6] | 643 |
|
---|
[3370595] | 644 | srs11k: btst #2,_vrbw11 | group 11
|
---|
[4f508e6] | 645 | beq srs11m | jump if not
|
---|
| 646 |
|
---|
| 647 | move.w #58,COL(a7) | put column on stack
|
---|
[8325447] | 648 | jsr vputa | reset column
|
---|
[4f508e6] | 649 |
|
---|
[3370595] | 650 | srs11m: btst #3,_vrbw11 | group 12
|
---|
[4f508e6] | 651 | beq srs11x | jump if not
|
---|
| 652 |
|
---|
| 653 | move.w #63,COL(a7) | put column on stack
|
---|
[8325447] | 654 | jsr vputa | reset column
|
---|
[4f508e6] | 655 |
|
---|
[3370595] | 656 | srs11x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 657 |
|
---|
[f40a309] | 658 | .page
|
---|
[4f508e6] | 659 |
|
---|
| 660 | | velocity
|
---|
| 661 | | --------
|
---|
| 662 | srs12: btst #12,d0 | velocity ?
|
---|
| 663 | beq srs13 | jump if not
|
---|
| 664 |
|
---|
| 665 | move.w #AT11,ATR(a7) | put attribute on stack
|
---|
| 666 | move.w #5,ROW(a7) | put row on stack
|
---|
[3370595] | 667 | btst #0,_vrbw12+1 | group 1 ?
|
---|
[4f508e6] | 668 | beq srs12a | jump if not
|
---|
| 669 |
|
---|
| 670 | move.w #6,COL(a7) | put 1st column on stack
|
---|
[8325447] | 671 | jsr vputa | reset first column
|
---|
[4f508e6] | 672 | move.w #7,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 673 | jsr vputa | reset second column
|
---|
[4f508e6] | 674 | move.w #8,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 675 | jsr vputa | reset third column
|
---|
[4f508e6] | 676 |
|
---|
[3370595] | 677 | srs12a: btst #1,_vrbw12+1 | group 2 ?
|
---|
[4f508e6] | 678 | beq srs12b | jump if not
|
---|
| 679 |
|
---|
| 680 | move.w #11,COL(a7) | put 1st column on stack
|
---|
[8325447] | 681 | jsr vputa | reset first column
|
---|
[4f508e6] | 682 | move.w #12,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 683 | jsr vputa | reset second column
|
---|
[4f508e6] | 684 | move.w #13,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 685 | jsr vputa | reset third column
|
---|
[4f508e6] | 686 |
|
---|
[3370595] | 687 | srs12b: btst #2,_vrbw12+1 | group 3 ?
|
---|
[4f508e6] | 688 | beq srs12c | jump if not
|
---|
| 689 |
|
---|
| 690 | move.w #16,COL(a7) | put 1st column on stack
|
---|
[8325447] | 691 | jsr vputa | reset first column
|
---|
[4f508e6] | 692 | move.w #17,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 693 | jsr vputa | reset second column
|
---|
[4f508e6] | 694 | move.w #18,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 695 | jsr vputa | reset third column
|
---|
[4f508e6] | 696 |
|
---|
[f40a309] | 697 | .page
|
---|
[4f508e6] | 698 |
|
---|
[3370595] | 699 | srs12c: btst #3,_vrbw12+1 | group 4 ?
|
---|
[4f508e6] | 700 | beq srs12d | jump if not
|
---|
| 701 |
|
---|
| 702 | move.w #21,COL(a7) | put 1st column on stack
|
---|
[8325447] | 703 | jsr vputa | reset first column
|
---|
[4f508e6] | 704 | move.w #22,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 705 | jsr vputa | reset second column
|
---|
[4f508e6] | 706 | move.w #23,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 707 | jsr vputa | reset third column
|
---|
[4f508e6] | 708 |
|
---|
[3370595] | 709 | srs12d: btst #4,_vrbw12+1 | group 5 ?
|
---|
[4f508e6] | 710 | beq srs12e | jump if not
|
---|
| 711 |
|
---|
| 712 | move.w #26,COL(a7) | put 1st column on stack
|
---|
[8325447] | 713 | jsr vputa | reset first column
|
---|
[4f508e6] | 714 | move.w #27,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 715 | jsr vputa | reset second column
|
---|
[4f508e6] | 716 | move.w #28,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 717 | jsr vputa | reset third column
|
---|
[4f508e6] | 718 |
|
---|
[3370595] | 719 | srs12e: btst #5,_vrbw12+1 | group 6 ?
|
---|
[4f508e6] | 720 | beq srs12f | jump if not
|
---|
| 721 |
|
---|
| 722 | move.w #31,COL(a7) | put 1st column on stack
|
---|
[8325447] | 723 | jsr vputa | reset first column
|
---|
[4f508e6] | 724 | move.w #32,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 725 | jsr vputa | reset second column
|
---|
[4f508e6] | 726 | move.w #33,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 727 | jsr vputa | reset third column
|
---|
[4f508e6] | 728 |
|
---|
[f40a309] | 729 | .page
|
---|
[4f508e6] | 730 |
|
---|
[3370595] | 731 | srs12f: btst #6,_vrbw12+1 | group 7 ?
|
---|
[4f508e6] | 732 | beq srs12g | jump if not
|
---|
| 733 |
|
---|
| 734 | move.w #36,COL(a7) | put 1st column on stack
|
---|
[8325447] | 735 | jsr vputa | reset first column
|
---|
[4f508e6] | 736 | move.w #37,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 737 | jsr vputa | reset second column
|
---|
[4f508e6] | 738 | move.w #38,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 739 | jsr vputa | reset third column
|
---|
[4f508e6] | 740 |
|
---|
[3370595] | 741 | srs12g: btst #7,_vrbw12+1 | group 8 ?
|
---|
[4f508e6] | 742 | beq srs12h | jump if not
|
---|
| 743 |
|
---|
| 744 | move.w #41,COL(a7) | put 1st column on stack
|
---|
[8325447] | 745 | jsr vputa | reset first column
|
---|
[4f508e6] | 746 | move.w #42,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 747 | jsr vputa | reset second column
|
---|
[4f508e6] | 748 | move.w #43,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 749 | jsr vputa | reset third column
|
---|
[4f508e6] | 750 |
|
---|
[3370595] | 751 | srs12h: btst #0,_vrbw12 | group 9
|
---|
[4f508e6] | 752 | beq srs12j | jump if not
|
---|
| 753 |
|
---|
| 754 | move.w #46,COL(a7) | put 1st column on stack
|
---|
[8325447] | 755 | jsr vputa | reset first column
|
---|
[4f508e6] | 756 | move.w #47,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 757 | jsr vputa | reset second column
|
---|
[4f508e6] | 758 | move.w #48,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 759 | jsr vputa | reset third column
|
---|
[4f508e6] | 760 |
|
---|
[f40a309] | 761 | .page
|
---|
[4f508e6] | 762 |
|
---|
[3370595] | 763 | srs12j: btst #1,_vrbw12 | group 10
|
---|
[4f508e6] | 764 | beq srs12k | jump if not
|
---|
| 765 |
|
---|
| 766 | move.w #51,COL(a7) | put 1st column on stack
|
---|
[8325447] | 767 | jsr vputa | reset first column
|
---|
[4f508e6] | 768 | move.w #52,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 769 | jsr vputa | reset second column
|
---|
[4f508e6] | 770 | move.w #53,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 771 | jsr vputa | reset third column
|
---|
[4f508e6] | 772 |
|
---|
[3370595] | 773 | srs12k: btst #2,_vrbw12 | group 11
|
---|
[4f508e6] | 774 | beq srs12m | jump if not
|
---|
| 775 |
|
---|
| 776 | move.w #56,COL(a7) | put 1st column on stack
|
---|
[8325447] | 777 | jsr vputa | reset first column
|
---|
[4f508e6] | 778 | move.w #57,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 779 | jsr vputa | reset second column
|
---|
[4f508e6] | 780 | move.w #58,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 781 | jsr vputa | reset third column
|
---|
[4f508e6] | 782 |
|
---|
[3370595] | 783 | srs12m: btst #3,_vrbw12 | group 12
|
---|
[4f508e6] | 784 | beq srs12x | jump if not
|
---|
| 785 |
|
---|
| 786 | move.w #61,COL(a7) | put 1st column on stack
|
---|
[8325447] | 787 | jsr vputa | reset first column
|
---|
[4f508e6] | 788 | move.w #62,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 789 | jsr vputa | reset second column
|
---|
[4f508e6] | 790 | move.w #63,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 791 | jsr vputa | reset third column
|
---|
[4f508e6] | 792 |
|
---|
[3370595] | 793 | srs12x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 794 |
|
---|
[f40a309] | 795 | .page
|
---|
[4f508e6] | 796 |
|
---|
| 797 | | resolution
|
---|
| 798 | | ----------
|
---|
| 799 | srs13: btst #13,d0 | resolution ?
|
---|
| 800 | beq srs14 | jump if not
|
---|
| 801 |
|
---|
| 802 | move.w #AT12,ATR(a7) | put attribute on stack
|
---|
| 803 | move.w #7,ROW(a7) | put row on stack
|
---|
[3370595] | 804 | btst #0,_vrbw13+1 | variable 1 ?
|
---|
[4f508e6] | 805 | beq srs13a | jump if not
|
---|
| 806 |
|
---|
| 807 | move.w #6,COL(a7) | put column on stack
|
---|
[8325447] | 808 | jsr vputa | reset column
|
---|
[4f508e6] | 809 |
|
---|
[3370595] | 810 | srs13a: btst #1,_vrbw13+1 | variable 2 ?
|
---|
[4f508e6] | 811 | beq srs13b | jump if not
|
---|
| 812 |
|
---|
| 813 | move.w #15,COL(a7) | put column on stack
|
---|
[8325447] | 814 | jsr vputa | reset column
|
---|
[4f508e6] | 815 |
|
---|
[3370595] | 816 | srs13b: btst #2,_vrbw13+1 | variable 3 ?
|
---|
[4f508e6] | 817 | beq srs13c | jump if not
|
---|
| 818 |
|
---|
| 819 | move.w #24,COL(a7) | put column on stack
|
---|
[8325447] | 820 | jsr vputa | reset column
|
---|
[4f508e6] | 821 |
|
---|
[3370595] | 822 | srs13c: btst #3,_vrbw13+1 | variable 4 ?
|
---|
[4f508e6] | 823 | beq srs13d | jump if not
|
---|
| 824 |
|
---|
| 825 | move.w #33,COL(a7) | put column on stack
|
---|
[8325447] | 826 | jsr vputa | reset column
|
---|
[4f508e6] | 827 |
|
---|
[3370595] | 828 | srs13d: btst #4,_vrbw13+1 | variable 5 ?
|
---|
[4f508e6] | 829 | beq srs13e | jump if not
|
---|
| 830 |
|
---|
| 831 | move.w #42,COL(a7) | put column on stack
|
---|
[8325447] | 832 | jsr vputa | reset column
|
---|
[4f508e6] | 833 |
|
---|
[3370595] | 834 | srs13e: btst #5,_vrbw13+1 | variable 6 ?
|
---|
[4f508e6] | 835 | beq srs13x | jump if not
|
---|
| 836 |
|
---|
| 837 | move.w #51,COL(a7) | put column on stack
|
---|
[8325447] | 838 | jsr vputa | reset column
|
---|
[4f508e6] | 839 |
|
---|
[3370595] | 840 | srs13x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 841 |
|
---|
[f40a309] | 842 | .page
|
---|
[4f508e6] | 843 |
|
---|
| 844 | | analog value
|
---|
| 845 | | ------------
|
---|
| 846 | srs14: btst #14,d0 | analog value ?
|
---|
| 847 | beq srs15 | jump if not
|
---|
| 848 |
|
---|
| 849 | move.w #AT12,ATR(a7) | put attribute on stack
|
---|
| 850 | move.w #7,ROW(a7) | put row on stack
|
---|
[3370595] | 851 | btst #0,_vrbw14+1 | variable 1 ?
|
---|
[4f508e6] | 852 | beq srs14a | jump if not
|
---|
| 853 |
|
---|
| 854 | move.w #8,COL(a7) | put 1st column on stack
|
---|
[8325447] | 855 | jsr vputa | reset first column
|
---|
[4f508e6] | 856 | move.w #9,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 857 | jsr vputa | reset second column
|
---|
[4f508e6] | 858 | move.w #10,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 859 | jsr vputa | reset third column
|
---|
[4f508e6] | 860 | move.w #11,COL(a7) | put 4th column on stack
|
---|
[8325447] | 861 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 862 | move.w #12,COL(a7) | put 5th column on stack
|
---|
[8325447] | 863 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 864 |
|
---|
[3370595] | 865 | srs14a: btst #1,_vrbw14+1 | variable 2 ?
|
---|
[4f508e6] | 866 | beq srs14b | jump if not
|
---|
| 867 |
|
---|
| 868 | move.w #17,COL(a7) | put 1st column on stack
|
---|
[8325447] | 869 | jsr vputa | reset first column
|
---|
[4f508e6] | 870 | move.w #18,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 871 | jsr vputa | reset second column
|
---|
[4f508e6] | 872 | move.w #19,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 873 | jsr vputa | reset third column
|
---|
[4f508e6] | 874 | move.w #20,COL(a7) | put 4th column on stack
|
---|
[8325447] | 875 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 876 | move.w #21,COL(a7) | put 5th column on stack
|
---|
[8325447] | 877 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 878 |
|
---|
[f40a309] | 879 | .page
|
---|
[4f508e6] | 880 |
|
---|
[3370595] | 881 | srs14b: btst #2,_vrbw14+1 | variable 3 ?
|
---|
[4f508e6] | 882 | beq srs14c | jump if not
|
---|
| 883 |
|
---|
| 884 | move.w #26,COL(a7) | put 1st column on stack
|
---|
[8325447] | 885 | jsr vputa | reset first column
|
---|
[4f508e6] | 886 | move.w #27,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 887 | jsr vputa | reset second column
|
---|
[4f508e6] | 888 | move.w #28,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 889 | jsr vputa | reset third column
|
---|
[4f508e6] | 890 | move.w #29,COL(a7) | put 4th column on stack
|
---|
[8325447] | 891 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 892 | move.w #30,COL(a7) | put 5th column on stack
|
---|
[8325447] | 893 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 894 |
|
---|
[3370595] | 895 | srs14c: btst #3,_vrbw14+1 | variable 4 ?
|
---|
[4f508e6] | 896 | beq srs14d | jump if not
|
---|
| 897 |
|
---|
| 898 | move.w #35,COL(a7) | put 1st column on stack
|
---|
[8325447] | 899 | jsr vputa | reset first column
|
---|
[4f508e6] | 900 | move.w #36,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 901 | jsr vputa | reset second column
|
---|
[4f508e6] | 902 | move.w #37,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 903 | jsr vputa | reset third column
|
---|
[4f508e6] | 904 | move.w #38,COL(a7) | put 4th column on stack
|
---|
[8325447] | 905 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 906 | move.w #39,COL(a7) | put 5th column on stack
|
---|
[8325447] | 907 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 908 |
|
---|
[f40a309] | 909 | .page
|
---|
[4f508e6] | 910 |
|
---|
[3370595] | 911 | srs14d: btst #4,_vrbw14+1 | variable 5 ?
|
---|
[4f508e6] | 912 | beq srs14e | jump if not
|
---|
| 913 |
|
---|
| 914 | move.w #44,COL(a7) | put 1st column on stack
|
---|
[8325447] | 915 | jsr vputa | reset first column
|
---|
[4f508e6] | 916 | move.w #45,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 917 | jsr vputa | reset second column
|
---|
[4f508e6] | 918 | move.w #46,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 919 | jsr vputa | reset third column
|
---|
[4f508e6] | 920 | move.w #47,COL(a7) | put 4th column on stack
|
---|
[8325447] | 921 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 922 | move.w #48,COL(a7) | put 5th column on stack
|
---|
[8325447] | 923 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 924 |
|
---|
[3370595] | 925 | srs14e: btst #5,_vrbw14+1 | variable 6 ?
|
---|
[4f508e6] | 926 | beq srs14x | jump if not
|
---|
| 927 |
|
---|
| 928 | move.w #53,COL(a7) | put 1st column on stack
|
---|
[8325447] | 929 | jsr vputa | reset first column
|
---|
[4f508e6] | 930 | move.w #54,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 931 | jsr vputa | reset second column
|
---|
[4f508e6] | 932 | move.w #55,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 933 | jsr vputa | reset third column
|
---|
[4f508e6] | 934 | move.w #56,COL(a7) | put 4th column on stack
|
---|
[8325447] | 935 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 936 | move.w #57,COL(a7) | put 5th column on stack
|
---|
[8325447] | 937 | jsr vputa | reset fifth column
|
---|
[4f508e6] | 938 |
|
---|
[3370595] | 939 | srs14x: move.w _vrcw,d0 | restore _vrcw to d0
|
---|
[4f508e6] | 940 |
|
---|
[f40a309] | 941 | .page
|
---|
[4f508e6] | 942 |
|
---|
| 943 | | stop/next
|
---|
| 944 | | ---------
|
---|
| 945 | srs15: btst #15,d0 | stop/next ?
|
---|
| 946 | beq srs16 | jump if not
|
---|
| 947 |
|
---|
[3370595] | 948 | btst #0,_vrbw15 | stop ?
|
---|
[4f508e6] | 949 | beq srs15a | jump if not
|
---|
| 950 |
|
---|
| 951 | move.w #AT08,ATR(a7) | put attribute on stack
|
---|
| 952 | move.w #1,ROW(a7) | put row on stack
|
---|
| 953 | move.w #40,COL(a7) | put 1st column on stack
|
---|
[8325447] | 954 | jsr vputa | reset first column
|
---|
[4f508e6] | 955 | move.w #41,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 956 | jsr vputa | reset second column
|
---|
[4f508e6] | 957 | move.w #42,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 958 | jsr vputa | reset third column
|
---|
[4f508e6] | 959 | move.w #43,COL(a7) | put 4th column on stack
|
---|
[8325447] | 960 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 961 |
|
---|
[3370595] | 962 | srs15a: btst #1,_vrbw15 | next ?
|
---|
[4f508e6] | 963 | beq srs16 | jump if not
|
---|
| 964 |
|
---|
| 965 | move.w #AT08,ATR(a7) | put attribute on stack
|
---|
| 966 | move.w #1,ROW(a7) | put row on stack
|
---|
| 967 | move.w #45,COL(a7) | put 1st column on stack
|
---|
[8325447] | 968 | jsr vputa | reset first column
|
---|
[4f508e6] | 969 | move.w #46,COL(a7) | put 2nd column on stack
|
---|
[8325447] | 970 | jsr vputa | reset second column
|
---|
[4f508e6] | 971 | move.w #47,COL(a7) | put 3rd column on stack
|
---|
[8325447] | 972 | jsr vputa | reset third column
|
---|
[4f508e6] | 973 | move.w #48,COL(a7) | put 4th column on stack
|
---|
[8325447] | 974 | jsr vputa | reset fourth column
|
---|
[4f508e6] | 975 |
|
---|
| 976 | srs16: add.l #10,a7 | clean up stack
|
---|
| 977 | bra srsexit | done
|
---|
| 978 |
|
---|
[f40a309] | 979 | .page
|
---|
[4f508e6] | 980 |
|
---|
[f40a309] | 981 | .bss
|
---|
[4f508e6] | 982 |
|
---|
[8325447] | 983 | | local copies of vrcw, vrbw08..vrbw15
|
---|
[4f508e6] | 984 |
|
---|
[3370595] | 985 | _vrcw: .ds.w 1
|
---|
| 986 | _vrbw08: .ds.w 1
|
---|
| 987 | _vrbw09: .ds.w 1
|
---|
| 988 | _vrbw10: .ds.w 1
|
---|
| 989 | _vrbw11: .ds.w 1
|
---|
| 990 | _vrbw12: .ds.w 1
|
---|
| 991 | _vrbw13: .ds.w 1
|
---|
| 992 | _vrbw14: .ds.w 1
|
---|
| 993 | _vrbw15: .ds.w 1
|
---|
[4f508e6] | 994 |
|
---|
[f40a309] | 995 | .end
|
---|