source: thomson/code/3rdparty/sources2-hcl/FabMonitor/INST4000.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.1 KB
Line 
1****************************************
2* Installation de FAB-Monitor v3.1 *
3****************************************
4
5E EQU 27 code ESC
6F EQU 31 code US
7G EQU 22 code ACC
8ISCHDC EQU $002A CMPB #CHRDEC
9ZZZAD1 EQU $0003 LDX #RESET+3
10ZZZAD2 EQU $000B STB >RESET+15
11ZZZAD3 EQU $0033 JMP >RESET+16
12ZZZBK1 EQU $0162 LDB #FABBNK+1
13LEN EQU $D4
14
15 ORG $4000
16
17BUFFER FCB 0,5,6,'Z-64,$5F,$EC
18ZZZZA1
19RSTMSG FCB F,$4C,$49
20 FCC "Installation termin"
21 FCB G,$42
22 FCC "ee !"
23 FCB F,$4F,$49
24 FCC "Appuyez sur une touche"
25 FCB F,$50,$43
26 FCC "pour revenir "
27 FCB G,$41
28 FCC "a la page d'ent"
29 FCB G,$43
30 FCC "ete..."
31ZZZZA2 FCB 0
32
33COPY LDU BUFFER+4
34 CMPU #$6000
35 BHS ZONOK installe simple
36 LDA $E7E5
37 CLR $E7E5 installe en RAM-A
38 LEAU $6000,U et en RAM-B de la
39 BSR ZONOK mémoire-écran
40 LDU BUFFER+4
41 LEAU $8000,U
42 BSR ZONOK
43 STA $E7E5
44 RTS
45
46ZONOK LDX #RESET installe en RAM-B
47 LDB ,X+
48 STB ,U+
49 CMPX #ENDPRG
50 BNE *-7
51 RTS
52
53RESET FCB $6F,$8C,$0C CLR EXEC+2,PCR
54MYGETC PSHS DP,B,A,CC
55 LDA $E7E6 sauve cartouche
56FABBNK LDB #$60
57 STB $E7E6 FAB-Mon3.1 visible
58EXEC JMP >$0020
59 STA <$E6
60 PULS CC,A,B,DP,PC
61ENDPRG
62
63
64 JSR PRINTU
65GETADR LDD #$408
66 JSR $E803
67 DECA
68 BNE *-4
69 LDB #$11
70 JSR $E803
71 JSR HDIGIT
72 ASLB
73 ASLB
74 ASLB
75 ASLB
76 PSHS B
77 JSR HDIGIT
78 ADDB ,S
79 STB ,S
80 JSR HDIGIT
81 ASLB
82 ASLB
83 ASLB
84 ASLB
85 PSHS B
86 JSR HDIGIT
87 ADDB ,S
88 STB ,S
89 PULS A,B
90 EXG A,B
91 TFR D,X
92 CMPX #$4000
93 BLO GETADR
94 CMPX #$DFEC
95 BHI GETADR
96 LDB #$14
97 JMP $E803
98
99ZZZZB1
100ISITOK FCB F,$54,$47
101 FCC "Appuyez sur 'ENT' pour "
102 FCC "valider, ou 'STOP' po"
103 FCC "ur changer les param"
104 FCB G,$41
105 FCC "etres."
106 FCB 0,12,F,$4C,$49
107 FCC "Chargement en cours..."
108ZZZZB2 FCB 0
109
110RILBEG LDX #$6200
111 STU ,X++
112 CMPX #$6A00
113 BNE *-5
114
115 LDY #BUFFER
116 LDA $607F installation
117 LBEQ NOWLOD automatique (opt1)
118 LDA $618C
119 INCA
120 STA ,Y bank maximum
121 LDU #MAXBK1
122 JSR ATOHEX
123 LDU #MAXBK2
124 JSR ATOHEX
125START LDU #PGEONE
126 JSR PRINTU
127 LDD #$5FEC
128 STD 4,Y
129OPTION JSR $E806
130 CMPB #'1
131 BNE *+13
132 LDD #$0506
133 STD 1,Y
134 LDA #'Z-64
135 STA 3,Y
136 BRA CNFIRM
137 CMPB #'2
138 BNE *+13
139 LDD #$090A
140 STD 1,Y
141 LDA #'Z-64
142 STA 3,Y
143 BRA CNFIRM
144 CMPB #'3
145 BNE OPTION
146 LDD #$2E2E+$A5A5
147 STD INDIRE
148 STD INDIRE+2
149 STD BANK1
150 STD BANK2
151 LDB #0+$A5
152 STD CHRDEC
153 LDU #ECRAN2
154 JSR GETADR-3
155 STX 4,Y
156 JSR GETBNK-3
157 STA 1,Y
158 JSR PRINTU
159 JSR GETBNK
160 CMPA 1,Y
161 BEQ *-5
162 STA 2,Y
163 JSR PRINTU
164 JSR $E806
165 BEQ *-3
166 STB 3,Y
167CNFIRM JSR SHOVAL
168 LDU #ECRAN2
169 LDX #PRINTU
170 JSR ,X
171 JSR ,X
172 JSR ,X
173 JSR ,X
174 LDU #ISITOK
175 JSR PRINTU
176GETOK JSR $E806
177 CMPB #2
178 LBEQ START
179 CMPB #13
180 BNE GETOK
181 JSR PRINTU
182 JMP NOWLOD
183
184ZZZZC1
185ECRAN2 FCB 12,F,$48,$41
186 FCC "Redirection [4000-DFEC]:"
187L0 FCC " ...."
188 FCB 0,F,$4A,$41
189 FCC "BANK du code de FAB-Mon "
190L1 FCC "[02-1F]: .."
191 FCB 0,F,$4C,$41
192 FCC "BANK de sauvegarde "
193 FCB G,$42
194L2 FCC "ecran [02-1F]: .."
195 FCB 0,F,$4E,$41
196 FCC "Caract"
197 FCB G,$41
198 FCC "ere d"
199 FCB G,$42
200L3 FCC "eclencheur: CNT-Z"
201ZZZZC2 FCB 0
202
203
204NOWLOD ORCC #80
205 LDA $E7E6
206 PSHS A
207 LDB #$60
208 ADDB 1,Y
209 STB $E7E6
210 STB FABBNK+1
211
212********************* début TRACKLOADER
213
214 PSHS CC,DP,A,B,X,Y,U
215 JSR $E09D
216 LDD #$0200 lecture face 0
217 STD <$48
218 LDD #$0101 piste 1, secteur 1
219 STD <$4B
220 LDU #$0000 buffer = 0
221
222TRACK JSR $E452 positionne piste
223 LDD #$9F40
224 STA 7,X séparateur
225 STB 1,X taille,face,précom
226
227 LDA <$4C
228SECTOR STA 5,X
229 LDA #$0A config= ($FF/$0A)
230 STA 4,X
231 LDA #$A1 on veut lire $A1
232 STA 3,X
233 LDB #$1B sync-détection ON
234 STB ,X lecture secteur
235
236 LDB ,X prêt pour cette
237 BITB #2 opération dite
238 BEQ *-4 "intelligente" ?
239 LDB 3,X
240GETSYN LDB ,X lecture des 4 mots
241 BPL *-2
242 LDB 3,X de synchro :
243 CMPB #$72
244 BNE GETSYN A1/horloge/0A/72
245
246 LDY #512
247READ LDB ,X
248 BPL *-2
249 LDB 3,X lecture du champ
250 STB ,U+
251 LEAY -1,Y des SIZE données
252 BNE READ
253
254 LDB ,X
255 BITB #8 opération finie ?
256 BEQ *-4
257 CLR ,X
258 CMPU #$4000 fin lecture ?
259 BEQ THEEND
260
261 LDA <$4C secteur suivant
262 INCA
263 STA <$4C
264 CMPA #11
265 BNE SECTOR
266 LDA #1
267 STA <$4C
268 INC <$4B
269 BRA TRACK
270
271THEEND JSR $E0B9
272 PULS CC,DP,A,B,X,Y,U
273
274*********************** fin TRACKLOADER
275
276 LDD BUFFER+2
277 STA >ZZZBK1+1
278 STB >ISCHDC+1
279 LDX BUFFER+4
280 LEAX 3,X
281 STX >ZZZAD1+1
282 LEAX 12,X
283 STX >ZZZAD2+1
284 LEAX 1,X
285 STX >ZZZAD3+1
286 LDD >$600A
287 LDY #0
288GOODGT LDX ,Y+
289 CMPX #$4B55
290 BNE *+6
291 LEAY -1,Y
292 STD ,Y++
293 CMPY #$4000
294 BLO GOODGT
295 PULS A
296 STA $E7E6
297FINFIN JSR COPY
298 LDX BUFFER+4
299 STX $6089
300 LDA #$7E
301 STA $6088
302 LDA $607F
303 BEQ EXPLOD
304 LDU #RSTMSG
305 JSR PRINTU
306 JSR $E806
307 BCC *-3
308EXPLOD JMP $FDC8
309
310 JSR PRINTU
311GETBNK LDB #8
312 JSR $E803
313 JSR $E803
314 LDB #$11
315 JSR $E803
316 JSR HDIGIT
317 ASLB
318 ASLB
319 ASLB
320 ASLB
321 PSHS B
322 JSR HDIGIT
323 ADDB ,S
324 STB ,S
325 PULS A
326 CMPA #2
327 BLO GETBNK
328 CMPA ,Y
329 BHI GETBNK
330 LDB #$14
331 JMP $E803
332
333HDIGIT JSR $E806
334 CMPB #'0
335 BLO HDIGIT
336 CMPB #'F
337 BHI HDIGIT
338 CMPB #'9
339 BHI *+8
340 JSR $E803
341 SUBB #'0
342 RTS
343 CMPB #'A
344 BLO HDIGIT
345 JSR $E803
346 SUBB #'0+7
347 RTS
348
349PRINTU LDB ,U+
350 SUBB #$A5 @
351 JSR $E803
352 BNE *-7
353 RTS
354
355SHOVAL LDA 4,Y
356 LDU #INDIRE
357 JSR ATOHEX
358 LDA 5,Y
359 JSR ATOHEX
360 LDA 1,Y
361 LDU #BANK1
362 JSR ATOHEX
363 LDA 2,Y
364 LDU #BANK2
365 JSR ATOHEX
366 LDA 3,Y
367 LDU #CHRDEC
368 CMPA #32
369 BHS IFCHD2
370 LDD #$434E+$A5A5 "CNT-" @
371 STD ,U++
372 LDD #$542D+$A5A5 @
373 STD ,U++
374 LDA 3,Y
375 ADDA #64
376 BRA PRTCHR
377IFCHD2 CMPA #$9A
378 BLO IFCHD3
379 LDD #$5041+$A5A5 "PAD-" @
380 STD ,U++
381 LDD #$442D+$A5A5 @
382 STD ,U++
383 LDA 3,Y
384 SUBA #$6A
385 BRA PRTCHR
386IFCHD3 CMPA #$80
387 BLO PRTCHR
388 LDD #$464E+$A5A5 "FNC-" @
389 STD ,U++
390 LDD #$432D+$A5A5 @
391 STD ,U++
392 LDA 3,Y
393 SUBA #$5F
394 CMPA #'9
395 BLS PRTCHR
396 LDA #'A
397PRTCHR CLRB
398 ADDD #$A5A5 @
399 STD ,U++
400 RTS
401
402ATOHEX PSHS X,A
403 LDX #HEXA
404 LSRA
405 LSRA
406 LSRA
407 LSRA
408 LDA A,X
409 ADDA #$A5 @
410 STA ,U+
411 LDA ,S
412 ANDA #15
413 LDA A,X
414 ADDA #$A5 @
415 STA ,U+
416 PULS A,X,PC
417HEXA FCC "0123456789ABCDEF"
418
419ZZZZD1
420PGEONE FCB 12,F,$49,$48
421 FCC "1.Installation en BANK 5"
422 FCC "/6"
423 FCB F,$4A,$4A
424 FCC "(BASIC, Applications...)"
425 FCB F,$4D,$48
426 FCC "2.Installation en BANK 9"
427 FCC "/A"
428 FCB F,$4E,$4A
429 FCC "(Jeux, D"
430 FCB G,$42
431 FCC "emos...)"
432 FCB F,$51,$48
433 FCC _3.Installation "manuelle_
434 FCB '"
435ZZZZD2 FCB 0
436ZZZEND
437
438INDIRE EQU L0+1
439MAXBK1 EQU L1+4
440BANK1 EQU L1+9
441MAXBK2 EQU L2+10
442BANK2 EQU L2+15
443CHRDEC EQU L3+12
444
445 END
Note: See TracBrowser for help on using the repository browser.