source: thomson/code/3rdparty/sources2-hcl/SCROLLER.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: 11.5 KB
Line 
1****************************************
2* *
3* MEGASCROLLER BY DOCTOR LO FROM HCL *
4* *
5****************************************
6* Taille 42*6
7
8PALETS EQU TEXTE-224
9TEXTE EQU $7800
10TAMP EQU $9E60
11FONTES EQU $9F08
12RAMA EQU $DF18-42*40
13RAMB EQU RAMA-$2000
14DIR EQU $9E
15Z EQU $58
16ZZ EQU DIR*256+Z
17
18
19 ORG $9800
20G ORCC #80
21 LDA #$E7
22 EXG A,DP
23 STA RDP+1
24 STS RDP-2
25
26 LDU #ZZ
27 CLR ,U+
28 LDD #TEXTE
29 STD ,U++
30 LDA #6
31 STA ,U
32 LDX #TAMP
33 CLR ,X+
34 CMPX #$A000
35 BNE *-5
36 LDY #COLORS-14
37 LDU #PALETS
38 LDX #15
39 LDA #16
40 STA ZZ
41 LDD ,Y++
42 BEQ *+13
43 STX ,U++
44 DEC ZZ
45 BEQ *-14
46 LEAX D,X
47 BRA *-9
48
49 LDA #$21
50 STA <$DC
51 LDA #2
52 STA <$E5
53 LDD #0
54 LDX #$A000
55 STD ,X++
56 CMPX #$E000
57 BNE *-5
58 INC <$E5
59 STD ,--X
60 CMPX #$A000
61 BNE *-5
62 LDA #128
63 STA <$DD
64 LDB #2
65 LDA #32
66 BITA $E7E7
67 BEQ *-3
68 BITA $E7E7
69 BNE *-3
70 TST [D,X]
71 TST [D,X]
72 TST [D,X]
73 TST [D,X]
74 ABX
75 BITA $E7E7
76 BEQ *-12
77 TST <$E7
78 BPL *-2
79 TST <$E7
80 BMI *-2
81
82 LDX #311*64/16
83 TST ,U+
84 LEAX -1,X
85 BNE *-4
86
87 MUL
88 MUL
89 MUL
90 LDA #DIR
91 TFR A,DP
92 TST ,U++
93
94DEBUT LDX #RAMA+160
95 LDU #TAMP
96 LDA #6
97 STA <Z
98COPYA PULU D
99 STA -120,X
100 STB -80,X
101 PULU D
102 STA -40,X
103 STB ,X
104 PULU D
105 STA 40,X
106 STB 80,X
107 PULU A
108 STA 120,X
109 LEAX 280,X
110 DEC <Z
111 BNE COPYA
112
113 LDA #42
114 STA <Z
115 LDU #RAMA+1
116SCROLA PULU D,X,Y,S
117 LEAU -1,U
118 PSHU S,Y,X,D
119 LEAU 9,U
120 FDB $3776,$335F,$3676,$3349
121 FDB $3776,$335F,$3676,$3349
122 FDB $3776,$335F,$3676,$3349
123 FDB $3776,$335F,$3676,$3349
124 DEC <Z
125 BNE SCROLA
126 CLR RAMA+42*40
127
128 LDX #RAMB+160
129 LDU #TAMP+42
130 LDA #6
131 STA <Z
132COPYB PULU D
133 STA -120,X
134 STB -80,X
135 PULU D
136 STA -40,X
137 STB ,X
138 PULU D
139 STA 40,X
140 STB 80,X
141 PULU A
142 STA 120,X
143 LEAX 280,X
144 DEC <Z
145 BNE COPYB
146
147 LDA #42
148 STA <Z
149 LDU #RAMB+1
150SCROLB PULU D,X,Y,S
151 LEAU -1,U
152 PSHU S,Y,X,D
153 LEAU 9,U
154 FDB $3776,$335F,$3676,$3349
155 FDB $3776,$335F,$3676,$3349
156 FDB $3776,$335F,$3676,$3349
157 FDB $3776,$335F,$3676,$3349
158 DEC <Z
159 BNE SCROLB
160 CLR RAMB+42*40
161
162BANK LDA #4
163 STA $E7E5
164 LDU #FONTES
165 LDX <Z+1
166 LDA <Z+3
167 CMPA #6
168 BEQ *+6
169 TST D,X
170 BRA *+7
171 LEAX 0,X * 1,X
172 CLRA
173 TST <Z+3 * CLR
174 LDB #84
175 MUL
176 LEAU D,U
177 TST <Z+3 * INC
178 LDA ,X
179 BRA *+9 * BPL
180 LDY #XCEPT-2
181 NEGA
182 JMP [A,Y]
183 LDB #30
184COGIT2 DECB * label COGITO
185 BNE *-1
186 LDX <Z+1 * STX
187 LDB #252
188 MUL
189 LEAS D,U
190 LDU #TAMP+84
191 FCC /5>6>5>6>/
192 JMP TEMPO
193 LDB #40
194 DECB
195 BNE *-1
196BCKTEM LDX #PALETS
197 LDD #$24E7
198 STA ZZ
199 TFR B,DP
200
201FBUF LDD ,X++
202 STD *+8
203 LDB #6
204 STB <$DB
205 LDD #0
206 STB <$DA
207 STA <$DA
208RPF6 CMPX #PALETS+72
209 BEQ *+4
210 BRA *+5
211RPD6 LDX #PALETS
212 MUL
213 NOP
214 DEC ZZ
215 BNE FBUF
216 LDA <$C8
217 BEQ *+5
218 JMP RDP-4
219 FCC /5>6>5>6>5>6>5>6>5>6>/
220 FCC /5>6>5>6>5>6>5>6>5>6>/
221 NOP
222 NOP
223 LDD #$300+DIR * #$200+DIR
224 STA $E7E5
225 TFR B,DP
226REVIT JMP *+3 * DEBUT
227 LDA #192
228 STA $E7DD
229 LDX #RAMA+160
230 LDU #TAMP+84
231 LDA #6
232 STA <Z
233COPYA2 PULU D
234 STA -120,X
235 STB -80,X
236 PULU D
237 STA -40,X
238 STB ,X
239 PULU D
240 STA 40,X
241 STB 80,X
242 PULU A
243 STA 120,X
244 LEAX 280,X
245 DEC <Z
246 BNE COPYA2
247
248 LDA #42
249 STA <Z
250 LDU #RAMA+1
251SCRLA2 PULU D,X,Y,S
252 LEAU -1,U
253 PSHU S,Y,X,D
254 LEAU 9,U
255 FDB $3776,$335F,$3676,$3349
256 FDB $3776,$335F,$3676,$3349
257 FDB $3776,$335F,$3676,$3349
258 FDB $3776,$335F,$3676,$3349
259 DEC <Z
260 BNE SCRLA2
261 CLR RAMA+42*40
262
263 LDX #RAMB+160
264 LDU #TAMP+126
265 LDA #6
266 STA <Z
267COPYB2 PULU D
268 STA -120,X
269 STB -80,X
270 PULU D
271 STA -40,X
272 STB ,X
273 PULU D
274 STA 40,X
275 STB 80,X
276 PULU A
277 STA 120,X
278 LEAX 280,X
279 DEC <Z
280 BNE COPYB2
281
282 LDA #42
283 STA <Z
284 LDU #RAMB+1
285SCRLB2 PULU D,X,Y,S
286 LEAU -1,U
287 PSHU S,Y,X,D
288 LEAU 9,U
289 FDB $3776,$335F,$3676,$3349
290 FDB $3776,$335F,$3676,$3349
291 FDB $3776,$335F,$3676,$3349
292 FDB $3776,$335F,$3676,$3349
293 DEC <Z
294 BNE SCRLB2
295 CLR RAMB+42*40
296
297BANK2 LDA #5
298 STA $E7E5
299 LDU #FONTES
300 LDX <Z+1
301 LDA <Z+3
302 CMPA #6
303 BEQ *+6
304 TST D,X
305 BRA *+7
306 LEAX 1,X
307 CLRA
308 CLR <Z+3
309 LDB #84
310 MUL
311 LEAU D,U
312 INC <Z+3
313 LDA ,X
314 BPL *+9
315 LDY #XCEPT-2
316 NEGA
317 JMP [A,Y]
318 LDB #30
319COGITO DECB
320 BNE *-1
321 STX <Z+1
322 LDB #252
323 MUL
324 LEAS D,U
325 LDU #TAMP+168
326 FCC /5>6>5>6>/
327 LDD #40
328 DECB
329 BNE *-1
330BCKTM2 LDX #PALETS
331 LDD #$24E7
332 STA ZZ
333 TFR B,DP
334
335FBUF2 LDD ,X++
336 STD *+8
337 LDB #6
338 STB <$DB
339 LDD #0
340 STB <$DA
341 STA <$DA
342RPF5 CMPX #PALETS+72
343 BEQ *+4
344 BRA *+5
345RPD5 LDX #PALETS
346 MUL
347 NOP
348 DEC ZZ
349 BNE FBUF2
350 FCC /5>6>5>6>5>6>5>6>5>6>/
351 FCC /5>6>5>6>5>6>5>6>5>6>/
352 LDA #128
353 STA $E7DD
354 NOP
355 NOP
356 LDD #$200+DIR
357 STA $E7E5
358 TFR B,DP
359 JMP DEBUT
360
361TEMPO JMP BCKTEM-5
362ROT LDX BCKTEM+1
363 LEAX 2,X
364 CMPX RPF1+1
365 BEQ *+4
366 BRA *+5
367RPD4 LDX #PALETS
368 STX BCKTEM+1
369 LEAX 2,X
370 CMPX RPF1+1
371 BEQ *+4
372 BRA *+5
373RPD3 LDX #PALETS
374 STX BCKTM2+1
375 LDD #29
376 JMP BCKTEM-3
377
378ONROT LDD #ROT
379 STD BCKTEM-7
380 LEAX 1,X
381 LDA ,X
382 LDB #22
383 LBRA RENVOI
384OFROT LDD #TEMPO
385 STD BCKTEM-7
386 LDD BCKTM2+1
387 STD BCKTEM+1
388 LEAX 1,X
389 LDD ,X
390 NOP
391 LDB #19
392 LBRA RENVOI
393WAIT LDY 1,X
394 STX <Z+1
395 LDX BCKTEM+1
396 STX W2-19
397W1 LDD BCKTEM-7
398 LDX W2-19
399 CMPD #ROT
400 BEQ *+5
401 NOP
402 BRA *+4
403 LEAX 1,X
404RPF2 CMPX #PALETS+72
405 BEQ *+4
406 BRA *+5
407RPD2 LDX #PALETS
408 STX W2-19
409 LDB #0
410 LDB #66
411 DECB
412 BNE *-1
413 LDX #PALETS
414 TFR X,D
415 ANDB #254
416 TFR D,X
417 LDD #$24E7
418 STA ZZ
419 TFR B,DP
420 STX BCKTEM+1
421W2 LDD ,X++
422 STD *+8
423 LDB #6
424 STB <$DB
425 LDD #0
426 STB <$DA
427 STA <$DA
428RPF1 CMPX #PALETS+72
429 BEQ *+4
430 BRA *+5
431RPD1 LDX #PALETS
432 MUL
433 NOP
434 DEC ZZ
435 BNE W2
436 TST <$C8
437 BEQ *+5
438 JMP RDP-4
439 LDX #2152
440 LEAX -1,X
441 BNE *-2
442 TST ,X+
443 TST ,X+
444 LEAY -1,Y
445 BNE W1
446 LDD #DIR
447 TFR B,DP
448 LDX W2-19
449 LDD BCKTEM-7
450 CMPD #ROT
451 BEQ *+5
452 NOP
453 BRA *+4
454 LEAX 2,X
455 STX BCKTM2+1
456 LDX <Z+1
457 LEAX 3,X
458 LDA ,X
459 LDB #10
460 LBRA RENVOI
461FIN LDX #TEXTE
462 LDD ,X
463 LDB #24
464 LBRA RENVOI
465BANK4 LEAX 1,X
466 LDD #$405
467 STA BANK+1
468 STB BANK2+1
469 LDD ,X
470 LDB #21
471 LBRA RENVOI
472BANK6 LEAX 1,X
473 LDD #$607
474 STA BANK+1
475 STB BANK2+1
476 LDD ,X
477 LDB #21
478 LBRA RENVOI
479TEINTS LDD 1,X
480 LEAX 3,X
481 STX RPD1+1
482 STX RPD2+1
483 STX RPD3+1
484 STX RPD4+1
485 STX RPD5+1
486 STX RPD6+1
487 STX BCKTM2+1
488 STX BCKTEM+1
489 LEAX D,X
490 STX RPF1+1
491 STX RPF2+1
492 STX RPF5+1
493 STX RPF6+1
494 BRA *+2
495 LDA ,X
496 LDB #6
497 LBRA RENVOI
498SPEED8 LEAX 1,X
499 LDD #DEBUT
500 STD REVIT+1
501 LDD #$29F
502 STA REVIT-7
503 STB COGIT2+3
504 LDD #COGIT2
505 STD RENVOI+1
506 LDD #$10F
507 STA BANK+21
508 STB BANK+23
509 LDD #$C2A
510 STA BANK+30
511 STB BANK+34
512 LDD #$2000
513 STD RPD1+24
514 LDA #$84
515 STA RPD1+27
516 LDD #$6D83
517 STD RPD2+6
518 LDA #2
519 STA RPF2-1
520 LDA ,X
521 LDB #7
522 JMP COGITO
523SPEED4 LEAX 1,X
524 LDD #REVIT+3
525 STD REVIT+1
526 LDD #$39E
527 STA REVIT-7
528 STB COGIT2+3
529 LDD #COGITO
530 STD RENVOI+1
531 LDD #13
532 STA BANK+21
533 STB BANK+23
534 LDD #$D20
535 STA BANK+30
536 STB BANK+34
537 LDD #$6D80
538 STD RPD1+24
539 STD RPD1+26
540 LDD #$C600
541 STD RPD2+6
542 LDA #1
543 STA RPF2-1
544 INC $E7E5
545 LDD ,X
546 LDB #7
547 JMP COGITO
548RELIEF LDA #2
549 STA $E7DB
550 LDD 1,X
551 STB $E7DA
552 STA $E7DA
553 LDD 3,X
554 STB $E7DA
555 STA $E7DA
556 LEAX 5,X
557 LDA ,X
558 LDB #16
559 LBRA RENVOI
560SPEPAL LDD 1,X
561 STD RPD1+1
562 STD RPD2+1
563 STD RPD3+1
564 STD RPD4+1
565 STD RPD5+1
566 STD RPD6+1
567 STD BCKTM2+1
568 STD BCKTEM+1
569 LDD 3,X
570 STD RPF1+1
571 STD RPF2+1
572 STD RPF5+1
573 STD RPF6+1
574 LEAX 5,X
575 LDA ,X
576 LDB #7
577 LBRA RENVOI
578
579XCEPT FDB FIN,ONROT,OFROT,WAIT
580 FDB BANK4,BANK6,TEINTS
581 FDB SPEED8,SPEED4,RELIEF
582 FDB SPEPAL
583
584RENVOI JMP COGITO
585
586 LDS #0
587RDP LDA #0
588 TFR A,DP
589 CLR $E7DD
590 CLR $E7DC
591 LDA #255
592 LDX #COLORS
593 JSR $EC00
594 RTS
595
596 FDB $0010,$FFFF,$0100,$FFF0
597 FDB $0001,$0010,$FEF0
598COLORS FDB 0,15,240,255,3840,3855
599 FDB 4080,4095,1911,826,931
600 FDB 938,2611,2618,3815,123
601
602 END
Note: See TracBrowser for help on using the repository browser.