source: thomson/code/3rdparty/sources2-hcl/HCL Megademo/MEGASHOW.ASM@ ceffc47

main
Last change on this file since ceffc47 was ceffc47, checked in by Adrien Destugues <pulkomandy@…>, 10 years ago

Add that collection of 3rdparty source I had lying on my disk for some time...

git-svn-id: svn://localhost/thomson@51 85ae3b6b-dc8f-4344-a89d-598714f2e4e5

  • Property mode set to 100644
File size: 9.9 KB
Line 
1 ********************
2 * *
3 * INTRODUCTION *
4 * *
5 * AU MEGASHOW1 HCL *
6 * *
7 ********************
8
9
10ECRAN EQU $DD74
11TEXTE EQU $8A00
12FONTE EQU $8FC8
13MASK EQU $9100
14DIR EQU $98
15Z EQU $80
16ZZ EQU DIR*256+Z
17PISTE1 EQU 56
18
19
20 ORG ZZ
21 FCB $B0,0,$B0,0,1
22 FDB TEXTE,20,0,$200,$200,$4000
23 FCB 200,0,120,0,1,255,1,0
24 FDB 0,0,PISTE1
25 FCB 0
26G ORCC #80
27 LDA #$E7
28 EXG A,DP
29 STA RDP+1
30 STS RDP-2
31 LDD #32
32 STA <$DB
33 STA <$DA
34 DECB
35 BNE *-3
36 STA <$E5
37 LDX #$A000
38 STD ,X++
39 CMPX #$E000
40 BNE *-5
41 LDX #COOPER+368
42 STX $616B
43 LDD #$FF0E
44 STA $6249
45 STB $616D
46 INCB
47 STB <$E5
48 LDD #$100
49 STD $61D6
50 LDD #$FF45
51 STA $6288
52 JSR $EC0C
53 LDD #$2104
54 STD <$DC
55 LDD #$1102
56 STB <$DB
57 STA <$DA
58 STA <$DA
59 CLRA
60 STA <$E5
61
62SYNCRO LDD #$20E7
63 TFR B,DP
64 LDX #ZZ+9
65 BITA <$E7
66 BEQ *-2
67 BITA <$E7
68 BNE *-2
69 STA ,X+
70 MUL
71 MUL
72 MUL
73 MUL
74 LDA ,-X
75 BITA <$E7
76 BEQ *-10
77 MUL
78 MUL
79 MUL
80 MUL
81 MUL
82 TST <$E7
83 BMI *-7
84 MUL
85 MUL
86 MUL
87 MUL
88 MUL
89 TST <$E7
90 BPL *-7
91 MUL
92 MUL
93 NOP
94 LDX #$421
95 LDA #4
96 STA <$DB
97
98 LDU #COOPER
99COOP PULU D
100 STD REP+1
101 ADDD #$555
102 STD REP+8
103REP LDD #0
104 STB <$DA
105 STA <$DA
106 LDD #0
107 STB <$DA
108 STA <$DA
109 STX <$DB
110 LDD 1,U
111 CMPU #COOPER+2*184
112 BNE COOP
113
114 LDB #DIR
115 TFR B,DP
116 LDA $E7CC
117 ANDA #15
118 CMPA #15
119 BEQ JOY1
120 LDB <Z+11
121 BITA #4 ouest 1
122 BNE PO1
123 CMPB #0
124 BEQ PE1
125 DECB
126 BNE *+4
127 STB <Z+10
128PO1 BITA #8 est 1
129 BNE PE1-2
130 CMPB #8
131 BEQ *+3
132 INCB
133 STB <Z+11
134PE1 LDB <Z+13
135 BITA #2 sud 1
136 BNE PS1
137 CMPB #0
138 BEQ PN1
139 DECB
140 BNE *+4
141 STB <Z+12
142PS1 BITA #1 nord1
143 BNE PN1-2
144 CMPB #8
145 BEQ *+3
146 INCB
147 STB <Z+13
148PN1 BRA SPOT
149
150JOY1 LDA $E7CC
151 LDB <Z+21
152 BITA #64 ouest 2
153 BNE PO2
154 CMPB #0
155 BEQ PO2
156 DECB
157 BNE *+4
158 STB <Z+20
159PO2 BITA #128 est 2
160 BNE PE2-2
161 CMPB #8
162 BEQ *+3
163 INCB
164 STB <Z+21
165PE2 LDB <Z+23
166 BITA #32 sud 2
167 BNE PS2
168 CMPB #0
169 BEQ SPOT
170 DECB
171 BNE *+4
172 STB <Z+22
173PS2 BITA #16 nord 2
174 BNE SPOT-2
175 CMPB #8
176 BEQ *+3
177 INCB
178 STB <Z+23
179
180SPOT LDU #MASK-10
181 PULU X,Y,S
182 LDU <Z
183 LDA #5
184 PSHU S,Y,X
185 LEAU 46,U
186 PSHU S,Y,X
187 LEAU 46,U
188 PSHU S,Y,X
189 LEAU 46,U
190 PSHU S,Y,X
191 LEAU 46,U
192 PSHU S,Y,X
193 LEAU 46,U
194 PSHU S,Y,X
195 LEAU 46,U
196 PSHU S,Y,X
197 LEAU 46,U
198 PSHU S,Y,X
199 LEAU 46,U
200 DECA
201 BNE *-41
202 LDU <Z+2
203 LDA #5
204 PSHU S,Y,X
205 LEAU 46,U
206 PSHU S,Y,X
207 LEAU 46,U
208 PSHU S,Y,X
209 LEAU 46,U
210 PSHU S,Y,X
211 LEAU 46,U
212 PSHU S,Y,X
213 LEAU 46,U
214 PSHU S,Y,X
215 LEAU 46,U
216 PSHU S,Y,X
217 LEAU 46,U
218 PSHU S,Y,X
219 LEAU 46,U
220 DECA
221 BNE *-41
222
223 LDX #ECRAN
224 LDU #ZZ+24
225 LDA #5
226SCROL ASL ,U+
227 ROL 19,X
228 ROL 18,X
229 ROL 17,X
230 ROL 16,X
231 ROL 15,X
232 ROL 14,X
233 ROL 13,X
234 ROL 12,X
235 ROL 11,X
236 ROL 10,X
237 ROL 9,X
238 ROL 8,X
239 ROL 7,X
240 ROL 6,X
241 ROL 5,X
242 ROL 4,X
243 ROL 3,X
244 ROL 2,X
245 ROL 1,X
246 ROL ,X
247 ROL -1,X
248 ROL -2,X
249 ROL -3,X
250 ROL -4,X
251 ROL -5,X
252 ROL -6,X
253 ROL -7,X
254 ROL -8,X
255 ROL -9,X
256 ROL -10,X
257 ROL -11,X
258 ROL -12,X
259 ROL -13,X
260 ROL -14,X
261 ROL -15,X
262 ROL -16,X
263 ROL -17,X
264 ROL -18,X
265 ROL -19,X
266 ROL -20,X
267 LEAX 40,X
268 DECA
269 BNE SCROL
270 DEC <Z+4
271 BNE JOIN
272
273 LDX <Z+5
274 LDA ,X+
275 BNE *+5
276 LDX #TEXTE
277 STX <Z+5
278 LDB #5
279 MUL
280 LDU #FONTE
281 LEAS D,U
282 PULS B,X,Y
283 LDU #ZZ+29
284 PSHU Y,X,B
285 LDA #8
286 STA <Z+4
287
288JOIN LDX <Z+7 abcisse
289 LDD <Z+10
290 TSTA
291 BEQ *+3
292 NEGB
293 LEAX D,X
294 CMPX #327
295 BLO *+6
296 LDX #327
297 COMA
298 CMPX #48
299 BHI *+6
300 LDX #48
301 COMA
302 STA <Z+10
303 STX <Z+7
304
305 LDX <Z+14 ordonnée
306 LDD <Z+12
307 TSTA
308 BEQ *+3
309 NEGB
310 LEAX D,X
311 CMPX #188
312 BLO *+6
313 LDX #188
314 COMA
315 CMPX #32
316 BGT *+6
317 LDX #32
318 COMA
319 STA <Z+12
320 STX <Z+14
321
322 LDA <Z+15 adresse écran
323 LDB #40
324 MUL
325 LDX #$9B00
326 LEAX D,X
327 LDD <Z+7
328 ASRA
329 RORB
330 LSRB
331 LSRB
332 ABX
333 STX <Z
334
335 LDA <Z+8 adresse du masque
336 ANDA #7
337 LDB #240
338 MUL
339 LDU #MASK
340 LEAU D,U
341
342 LDA #10
343 LEAS ,X
344SPOT1 PULU X,Y,B,DP
345 PSHS B,DP,Y,X
346 LEAS 46,S
347 PULU X,Y,B,DP
348 PSHS B,DP,Y,X
349 LEAS 46,S
350 PULU X,Y,B,DP
351 PSHS B,DP,Y,X
352 LEAS 46,S
353 PULU X,Y,B,DP
354 PSHS B,DP,Y,X
355 LEAS 46,S
356 DECA
357 BNE SPOT1
358
359 LDA #DIR
360 TFR A,DP
361 LDX <Z+16 abcisse 2
362 LDD <Z+20
363 TSTA
364 BEQ *+3
365 NEGB
366 LEAX D,X
367 CMPX #327
368 BLO *+6
369 LDX #327
370 COMA
371 CMPX #48
372 BGT *+6
373 LDX #48
374 COMA
375 STA <Z+20
376 STX <Z+16
377
378 LDX <Z+18 ordonnée 2
379 LDD <Z+22
380 TSTA
381 BEQ *+3
382 NEGB
383 LEAX D,X
384 CMPX #192
385 BLO *+6
386 LDX #192
387 COMA
388 CMPX #32
389 BGT *+6
390 LDX #32
391 COMA
392 STA <Z+22
393 STX <Z+18
394
395 LDA <Z+19 adresse écran 2
396 LDB #40
397 MUL
398 LDX #$9B00
399 LEAX D,X
400 LDD <Z+16
401 ASRA
402 RORB
403 LSRB
404 LSRB
405 ABX
406 STX <Z+2
407
408 LDA <Z+17 adresse masque 2
409 ANDA #7
410 LDB #240
411 MUL
412 LDU #MASK
413 LEAU D,U
414
415 LEAS -4,X
416 LDX #20
417SPOT2 PULU D
418 ORA -2,S
419 ORB -1,S
420 STD -2,S
421 PULU D
422 ORA ,S
423 ORB 1,S
424 STD ,S
425 PULU D
426 ORA 2,S
427 ORB 3,S
428 STD 2,S
429 LEAS 40,S
430 PULU D
431 ORA -2,S
432 ORB -1,S
433 STD -2,S
434 PULU D
435 ORA ,S
436 ORB 1,S
437 STD ,S
438 PULU D
439 ORA 2,S
440 ORB 3,S
441 STD 2,S
442 LEAS 40,S
443 LEAX -1,X
444 BNE SPOT2
445 LDB $E7CD
446 BITB #64
447 LBNE SYNCRO
448
449 LDD #32
450 STA $E7DB
451 STA $E7DA
452 DECB
453 BNE *-4
454 LDD #$7B00
455 STD $E7DC
456 LDS #ZZ+24
457
458SANFIN LDA #2
459 STA $E7E5
460 BSR READ
461 LDA #$80
462 STA <$DD
463 LDA #3
464 STA $E7E5
465 BSR READ
466 LDA #$C0
467 STA <$DD
468 BRA SANFIN
469
470READ LDA #$60
471 TFR A,DP
472 LDU #ZZ+29
473 LDX #$A000
474 STX <$4F
475 LDA #2
476 LDB 2,U
477 STD <$48
478 LDA 1,U
479 LDB #1
480 STD <$4B
481
482 LDA #$A0 buffer
483 LDB #1 secteur
484 LDX ,U piste
485
486CHARGE TST $E7C8
487 BNE RDP-4
488 JSR $E004
489 BCS CHARGE
490 INCB
491 CMPB #17
492 BNE GOON+2
493 LDB #1
494 LEAX 1,X
495 CMPX #80
496 BNE GOON
497 LDX #0
498 LDB 2,U
499 EORB #1
500 BNE *+3
501 LDX #PISTE1
502 STB 2,U
503GOON STX <$4A
504 STB <$4C
505 INCA
506 STA <$4F
507 CMPA #$E0
508 BNE CHARGE
509
510 STX ,U
511 LDB #$E7
512 TFR B,DP
513WAIT LDA <$CD
514 BITA #64
515 BNE RDP-8
516 LDA #32
517 BITA <$E7
518 BEQ *-2
519 BITA <$E7
520 BNE *-2
521 PSHS A
522 MUL
523 MUL
524 MUL
525 MUL
526 PULS A
527 BITA <$E7
528 BEQ *-10
529 MUL
530 MUL
531 MUL
532 MUL
533 MUL
534 TST <$E7
535 BPL *-7
536 MUL
537 MUL
538 MUL
539 MUL
540 MUL
541 TST <$E7
542 BMI *-7
543 LDA #160
544 TST ,X+
545 ABX
546 DECA
547 BNE *-4
548 STA <$DB
549 LDX #$DF40
550PALS LDD ,X++
551 STB <$DA
552 STA <$DA
553 CMPX #$DF60
554 BNE PALS
555 RTS
556 TST <$C8
557 BEQ WAIT
558
559 LDS #0
560RDP LDA #0
561 TFR A,DP
562 CLR $E7DD
563 CLR $E7DC
564 LDA #255
565 LDX #COLORS
566 JSR $EC00
567 RTS
568
569 FDB 0,0
570COLORS FDB 0,15,240,255,3840,3855
571 FDB 4080,4095,1911,826,931
572 FDB 938,2611,2618,3815,123
573COOPER
574 END
Note: See TracBrowser for help on using the repository browser.