source: thomson/code/3rdparty/sources3-lambinet/Map convert/MAP-TRA0.ASM@ c552dd6

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

Fix filenames for windows compatibility.

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

  • Property mode set to 100644
File size: 5.8 KB
Line 
1*************** MAP>TRA0 ***************
2* *
3* TRANSCODEUR D'IMAGES TO.MAP > TRAMES *
4* *
5* par Michel SAINT-BRIANT * 15/03/1992 *
6* *
7* (c) A.S.C.I. Copyright 1992 *
8* *
9****************************************
10
11* TRANSCODAGE D'UNE IMAGE THOMSON EN UNE
12* IMAGE TYPE TO7/70 40 COL DE 16 TRAMES
13* CHOISIES PARMI 65
14
15 ORG $9800
16
17 PSHS A,B,CC,DP,X,Y,U
18
19 LDA $605F TYPE DE CONSOLE
20 LSLA
21 STA TYPE
22
23* ETABLISSEMENT DE LA TABLE DES GRIS
24
25 LDU #PALET+32
26 LDA #15
27LIPAL LDX #$FFFF
28 LDY #0
29 JSR $EC00
30 STX ,--U
31 DECA
32 BPL LIPAL
33
34 LDX #PALET
35 LDY #TABGRI
36NOUPAL LDD ,X
37 BITA #$10
38 BNE CALGRI
39 COMA
40 COMB
41 STD ,X
42CALGRI CLRA
43 ANDB #$F0
44 LSRB
45 LSRB
46 TFR D,U
47 LDD ,X++
48 ANDA #$0F
49 LEAU A,U
50 ANDB #$0F
51 LSLB
52 LEAU B,U
53 TFR U,D
54 STB ,Y+
55 CMPX #PALET+32
56 BLO NOUPAL
57
58* CALCUL DES TRAMES EN FONCTION DE L'IN-
59* TENSITE LUMINEUSE DANS TABGRI
60* 16 TRAMES CHOISIES PARMI 65
61
62 LDU #TABGRI
63 LDX #TRAME
64 LDY #TRAINI
65 LDB #16
66NOUTRA LDA #105
67 SUBA ,U+
68 PSHS A,B,X,U
69 LDB #158
70 MUL
71 ANDA #$7C
72 LEAU A,Y
73 LDB #4
74TRA0 LDA ,U
75 LSLA
76 LSLA
77 LSLA
78 LSLA
79 ORA ,U+
80 STA 4,X
81 STA ,X+
82 DECB
83 BNE TRA0
84 LDA ,S
85 ANDA #3
86 BEQ FINTRA
87 LDB #3
88TRA1 LDA B,U
89 LSLA
90 LSLA
91 LSLA
92 LSLA
93 ORA B,X
94 STA B,X
95 DECB
96 BPL TRA1
97 LEAX -4,X
98 LDA ,S
99 ANDA #3
100 CMPA #2
101 BLO FINTRA
102 LDB #3
103TRA2 LDA B,U
104 ORA B,X
105 STA B,X
106 DECB
107 BPL TRA2
108 LEAX 4,X
109 LDA ,S
110 ANDA #3
111 CMPA #3
112 BLO FINTRA
113 LDB #3
114TRA3 LDA B,U
115 ORA B,X
116 STA B,X
117 DECB
118 BPL TRA3
119FINTRA PULS A,B,X,U
120 LEAX 8,X
121 DECB
122 BNE NOUTRA
123
124* RECOPIE DE L'IMAGE EN $A000/$DFFF
125* EN ENTRELACE
126
127 LDB #$14
128 JSR $E803
129 LDA $E7C3
130 ORA #$01
131 STA $E7C3
132 LDX #$4000
133 LDY #$A000
134COPEC0 LDD ,X++
135 STA ,Y++
136 STB ,Y++
137 CMPX #$5F40
138 BLO COPEC0
139 LDA $E7C3
140 ANDA #$FE
141 STA $E7C3
142 LDX #$4000
143 LDY #$A001
144COPEC1 LDD ,X++
145 STA ,Y++
146 STB ,Y++
147 CMPX #$5F40
148 BLO COPEC1
149
150 LDX #$A000
151 LDY #TRAME
152 LDD #$2807
153 STA COLON
154 STB LIGNE
155
156NEWOCT LDD #$8000
157 PSHS B,A
158 TST TYPE
159 LBEQ MODTO7
160 BMI MODB16
161
162MODBM4 CLRA
163 ASL ,X
164 ROLA
165 ASL 1,X
166 ROLA
167 LSLA
168 LSLA
169 LSLA
170 LEAU A,Y
171 LDA LIGNE
172 LDA A,U
173 ANDA ,S
174 ORA 1,S
175 STA 1,S
176 LSR ,S
177 BNE MODBM4
178 LBRA FINMOD
179
180MODTO7 LDA 1,X
181 BITA #$40
182 BEQ OCTET0
183 ANDA #$38
184 BRA OCTET1
185OCTET0 ORA #$40
186OCTET1 ANDA #$78
187 STA FORM0+1
188 LDA 1,X
189 ANDA #$07
190 TST 1,X
191 BMI OCTET2
192 ORA #$08
193OCTET2 LSLA
194 LSLA
195 LSLA
196 STA FOND0+1
197FORM0 LDA #$00
198 ASL ,X
199 BCS POINT0
200FOND0 LDA #$00
201POINT0 LEAU A,Y
202 LDA LIGNE
203 LDA A,U
204 ANDA ,S
205 ORA 1,S
206 STA 1,S
207 LSR ,S
208 BNE FORM0
209 BRA FINMOD
210
211MODB16 LDA ,X
212 ANDA #$F0
213 LSRA
214 LEAU A,Y
215 LDA LIGNE
216 LDA A,U
217 ANDA #$C0
218 ORA 1,S
219 STA 1,S
220 LDA ,X
221 ANDA #$0F
222 LSLA
223 LSLA
224 LSLA
225 LEAU A,Y
226 LDA LIGNE
227 LDA A,U
228 ANDA #$30
229 ORA 1,S
230 STA 1,S
231 LDA 1,X
232 ANDA #$F0
233 LSRA
234 LEAU A,Y
235 LDA LIGNE
236 LDA A,U
237 ANDA #$0C
238 ORA 1,S
239 STA 1,S
240 LDA 1,X
241 ANDA #$0F
242 LSLA
243 LSLA
244 LSLA
245 LEAU A,Y
246 LDA LIGNE
247 LDA A,U
248 ANDA #$03
249 ORA 1,S
250
251FINMOD STA ,X++
252 PULS A,B
253 CMPX #$DE80
254 BHS AFFTO
255 DEC COLON
256 LBNE NEWOCT
257 LDA #$28
258 STA COLON
259 DEC LIGNE
260 LBPL NEWOCT
261 LDA #7
262 STA LIGNE
263 LBRA NEWOCT
264
265AFFTO LDB #$1B
266 JSR $E803
267 LDB #$5A
268 JSR $E803
269 LDB #$1B
270 JSR $E803
271 LDB #$40
272 JSR $E803
273 LDB #$1B
274 JSR $E803
275 LDB #$57
276 JSR $E803
277 LDB #$0C
278 JSR $E803
279 LDB #$14
280 JSR $E803
281 LDX #PALORI
282 LDA #$FF
283 JSR $EC00
284 LDX #$A000
285 LDY #$4000
286 LDA $E7C3
287 ORA #1
288 STA $E7C3
289RESULT LDA ,X++
290 LDB ,X++
291 STD ,Y++
292 CMPX #$DE80
293 BLO RESULT
294
295FIN PULS A,B,DP,CC,X,Y,U,PC
296
297LIGNE FCB 0
298COLON FCB 0
299
300PALET RMB 32
301TABGRI RMB 16
302
303PALORI FDB 0,15,240,255,3840,3855
304 FDB 4080,4095,1911,826,931,938
305 FDB 2611,2618,3815,123
306TYPE FCB 0
307TRAINI FCB 0,0,0,0,0,0,8,0
308 FCB 2,0,8,0,2,0,10,0
309 FCB 10,0,10,0,10,0,10,4
310 FCB 10,1,10,4,10,1,10,5
311 FCB 10,5,10,5,10,5,14,5
312 FCB 11,5,14,5,11,5,15,5
313 FCB 15,5,15,5,15,5,15,13
314 FCB 15,7,15,13,15,7,15,15
315 FCB 15,15,15,15
316TRAME RMB 16*8
317
318 END
Note: See TracBrowser for help on using the repository browser.