source: thomson/code/3rdparty/sources2-hcl/SCROLL++.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: 2.6 KB
Line 
1****************************************
2* Scrolling segment par segment. *
3* D'une taille conséquente. *
4* *
5* Je pourrais gagner un peu de temps *
6* CPU en faisant du code généré, mais *
7* quoi ! On n'est pas des bêtes... *
8****************************************
9
10SIZE EQU HAUT*LONG/4
11FONTE EQU $0000-SIZE*2
12RAMA EQU $DF18-HAUT*40
13HAUT EQU 112 multiple de 8 !
14LONG EQU 5 segments par CHR$
15DIR EQU $9F } début buffer
16Z EQU 0 } à accès direct
17CARTOU EQU 15 page $0000-$3FFF
18ZZ EQU DIR*256+Z
19
20 ORG DIR*256+Z
21 FDB 1,TEXTE,FONTE
22
23 ORG $9800
24G ORCC #80
25 LDD $E7E5
26 PSHS D,DP
27 LDA #DIR
28 TFR A,DP
29 STS RDP+2
30 CLR $E7E5
31 CLR $E7C5
32
33SYNCRO TST $E7E7
34 BPL *-3
35 TST $E7E7
36 BMI *-3
37
38 LDD #8
39 STA $E7DB pour voir le temps
40 STB $E7DA CPU qu'il reste.
41 STA $E7DA
42
43 LDX #RAMA+160
44 LDU <Z+4
45 LDA #HAUT/8
46 STA <Z
47COPYA PULU D
48 STA -120,X
49 STB -80,X
50 PULU D
51 STA -40,X
52 STB ,X
53 PULU D
54 STA 40,X
55 STB 80,X
56 PULU D
57 STA 120,X
58 STB 160,X
59 LEAX 280,X
60 DEC <Z
61 BNE COPYA
62 PULU D
63 STU <Z+4
64
65 TFR DP,A
66 STA <Z+6
67 LDA #HAUT/2
68 STA ZZ
69 LDU #RAMA+1
70 LDS #RAMA+8
71SCROLA PULU CC,A,B,DP,X,Y
72 PSHS Y,X,DP,B,A,CC
73 LEAS 16,S
74 FDB $373F,$343F,$32E8,$1037
75 FDB $3F34,$3F32,$E810
76 FDB $373F,$343F,$32E8,$1037
77 FDB $3F34,$3F32,$E810
78 FDB $373F,$343F,$32E8,$1037
79 FDB $3F34,$3F32,$E810
80 FDB $373F,$343F,$32E8,$1037
81 FDB $3F34,$3F32,$E810
82 FDB $373F,$343F,$32E8
83 FCB 16
84 DEC ZZ
85 BNE SCROLA
86 CLR RAMA+HAUT*40
87
88 LDA ZZ+6
89 TFR A,DP
90
91 LDD #0
92 STA $E7DB pour voir le temps
93 STB $E7DA CPU qu'il reste.
94 STA $E7DA
95
96 TST $E7C8
97 BNE RDP
98 DEC <Z+1
99 LBNE SYNCRO
100
101 LDA #LONG
102 STA <Z+1
103 LDX <Z+2 lettre suivante
104 LDA ,X+
105 BNE *+7
106 LDX #TEXTE
107 LDA ,X+
108 LDU #FONTE
109 LDB #SIZE
110 ASLA
111 MUL
112 LEAU D,U
113 STU <Z+4
114 STX <Z+2
115 JMP SYNCRO
116
117RDP LDS #0
118 PULS D,DP
119 STD $E7E5
120 SWI
121TEXTE FCB 1,2,3,4,5,6,7,8,9,0
122
123 END
Note: See TracBrowser for help on using the repository browser.