source: thomson/code/3rdparty/sources5-hmel/TO-GRAPH/GRAPH-PR.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 100755
File size: 21.5 KB
Line 
1 TITLE TO-GRAPH: Programme princ.
2* ---------------------------------
3 PAGE
4
5****************************************
6* *
7* TO-GRAPH *
8* *
9* Programme principal *
10* *
11****************************************
12
13DEBUT EQU *
14
15* Initialisations
16*---------------------------------------
17
18* Pile
19 LDS #PILE
20
21* Initialisation DOS sur zone réservée
22* (5 disques 2 fichiers)
23 LDD #$7000
24 STD SECBUF
25 ADDD #256
26 STD FATPTR
27 LDA #5
28 LDB #166
29 MUL
30 ADDD FATPTR
31 TFR D,X
32 LDY #5
33 LDA #2
34 LDB #FCBINI
35 JSR EXTRA
36
37* DP sur zone tiroir (rapidité max !!!)
38 LDD #MANTIR
39 TFR A,DP
40
41* Vérification RAM disponible
42 LDA MAXBK
43 DECA ->nb bank disp.
44 CMPA #11
45 BGE OKRAM ->
46 LDB #FF 'Out of memory'
47 JSR PUTC
48 LDX #MOUT
49BOUT LDB ,X+
50 BEQ BOUT1
51 JSR PUTC
52 BRA BOUT ->
53BOUT1 JSR GETC
54 TSTB
55 BEQ BOUT1 ->
56 JMP MENU ->>>>>>
57
58* Car. utilisateurs
59OKRAM LDD #CARUSR
60 STD USERAF
61
62* Outil courant
63 LDA #POINTS
64 STA OUTIL
65 LDA #1
66 STA TLIGN
67 LDA #TCN
68 STA TCAR
69
70* Etat courant de l'outil
71 LDA #POINTE
72 STA ETAOUT
73 CLR COPALB pas copie album
74
75* Tortue standard
76 LDA #$FF
77 STA STDTOR
78
79* Motif courant
80 LDX #CARMOT damier
81 LDY #MOTREM
82 LEAY 8*13,Y
83BRZMOT LDA ,Y+
84 STA ,X+
85 CMPX #MOTIF
86 BNE BRZMOT ->
87 LDB #$FF plein
88BFFMOT STB ,X+
89 CMPX #PLEIN
90 BNE BFFMOT ->
91
92* Visualisation
93 LDB #RESETW
94 JSR EXTRA
95
96 LDB #ESC 80 col
97 JSR PUTC
98 LDB #$5B
99 JSR PUTC
100
101 LDD MEMC0
102 CMPD #$FFFF
103 BNE SUIXY0 ->
104 LDA $E7E6 autorise écritur
105 ORA #$40 cartouche
106 STA $E7E6
107 LDA #0 mémo coul. 0
108 LDX #$FFFF
109 LDY #0
110 JSR SETP
111 STX MEMC0
112 LDA #1 mémo coul. 1
113 LDX #$FFFF
114 LDY #0
115 JSR SETP
116 STX MEMC1
117 LDA $E7E6 interdit écritur
118 ANDA #$BF cartouche
119 STA $E7E6
120
121 LDA #1 nouv coul. 1
122 LDX #0
123 LDY MEMC0
124 JSR SETP
125 LDA #8 nouv.coul. 0
126 LDX #$FFFF
127 LDY #0
128 JSR SETP
129 LDA #0
130 TFR X,Y
131 LDX #0
132 JSR SETP
133 BRA SUIXY0 ->
134
135MEMC0 FDB $FFFF mémo palette
136MEMC1 FDB $FFFF
137
138* Bank RAM
139SUIXY0 LDA #BKTIR
140 STA BANKC
141
142* Pas de tiroir ni de loupe ni d'album
143* courant ni de dessin courant
144 CLR FLGTIR
145 CLR FLGLOU
146 LDD #0
147 STD ALBCOU
148 STD DESCOU
149 STD DESCOU+2
150 STD DESCOU+4
151 STD DESCOU+6
152
153* Coefficient réel de passage point
154* écran -> point imprimante
155 LDX #ASCCOE
156 LDY #ZONTRA
157BVERRA LDA ,X+
158 STA ,Y+
159 BNE BVERRA ->
160 LDY #ZONTRA
161 LDB #EXTFIN
162 JSR EXTRA
163 LDX #COEFMU
164 LDB #MOVMF
165 JSR EXTRA
166
167* Tortue du mode caractère
168 LDY #TORTXT
169 LDB #INITOR
170 JSR EXTRA
171 CLR TXTX+2
172 CLR TXTY+2
173 CLR FLGTXT
174 CLR CLITXT
175
176* Position de l'écran dans la feuille et
177* déplacement de celle-ci dans ses banks
178 LDD #0
179 STD <ADF
180 CLR <CLDECR
181 CLR <RGDECR
182
183* Chien de garde par IT timer
184 JSR INIDOG
185
186* Fenêtrage
187 LDX #ZONFEN
188 LDA #PBKPIL
189 LDB #DBKPIL
190 TFR D,U
191 LDA #NOIR
192 LDB #GRIS
193 JSR FENINI
194
195* Activation Fenêtre principale
196*---------------------------------------
197
198 LDX #FENPR
199 LDD #0
200 JSR FENRPL
201
202 JSR AFFOPT Options courantes
203
204 JSR VISASB Visu ascenceurs
205 JSR VISASD
206
207 LDX #FENTIT Titre
208 LDD #$0606
209 JSR FENOUV
210
211 JSR RAZF raz feuille
212 JSR INIALB chargement albums
213
214 CLRB
215 JSR FENFER
216
217 JSR FENACT
218
219* Attente principale
220*---------------------------------------
221
222EXEC1 LDU #PILFEN mémo retour FEN
223 JSR FEN
224 PSHU CC,D,X,Y
225EXEC10 CMPB #$90
226 LBEQ XFICH ->
227 CMPB #$91
228 LBEQ XTIROI ->
229 CMPB #$92
230 LBEQ XCADRA ->
231 CMPB #$93
232 LBEQ XALBU ->
233 CMPB #$94
234 LBEQ XIMPR ->
235 CMPB #$98
236 LBEQ XALBUF ->
237 CMPB #$0F
238 LBEQ XOUTI ->
239 CMPB #$10
240 LBEQ XMOTI ->
241 CMPB #$14
242 LBEQ XCTLIG ->
243 CMPB #$15
244 LBEQ XCTCAR ->
245 CMPB #$05
246 LBEQ XRAZ ->
247 CMPB #$11
248 LBEQ XRET ->
249 CMPB #BS
250 LBEQ XSCG ->
251 CMPB #HT
252 LBEQ XSCD ->
253 CMPB #VT
254 LBEQ XSCH ->
255 CMPB #LF
256 LBEQ XSCB ->
257 CMPB #$80+BS
258 LBEQ XPG ->
259 CMPB #$80+HT
260 LBEQ XPD ->
261 CMPB #$80+VT
262 LBEQ XPH ->
263 CMPB #$80+LF
264 LBEQ XPB ->
265 CMPB #INS
266 LBEQ XINS ->
267 CMPB #$80
268 LBEQ XASCH ->
269 CMPB #$81
270 LBEQ XASCV ->
271
272***----------------------------------***
273*** Gestion des tracés
274***----------------------------------***
275
276EXEC3 LDA ETAOUT
277 CMPA #POINTE
278 LBNE XTIRE ->
279
280 LDA REGCC #Etat pointage
281 TFR A,CC
282 LBCC EXEC4 pas clic ->
283 LDX #$0104 clic !
284 LDY #$174A
285 JSR SOUDAN
286 LBCC EXEC1 pas dans écran >
287 JSR PTOUT // pointage
288 LBRA EXEC7 ->
289
290EXEC4 LDX #$0104
291 LDY #$174A
292 JSR SOUDAN
293 LBCS EXEC5 dans écran ->
294
295 TST STDTOR -hors écran-----
296 LBNE EXEC7 tortue ok ->
297 JSR FENDES
298 JSR TRAMAX tortue std
299 LDA #$FF
300 STA STDTOR
301 CLRA
302 CLRB
303 JSR FENTOR
304 JSR FENACT
305 LBRA EXEC7 ->
306
307EXEC5 TST STDTOR -dans écran-----
308 LBEQ EXEC7 tortue ok ->
309 JSR FENDES
310 JSR TRAMIN
311 CLR STDTOR
312 LDA OUTIL
313 CMPA #CARACT
314 BEQ EXEC61 ASCII ->
315 CMPA #COLLER
316 BEQ EXEC60 COLLER ->
317 LDX #TORPT pointage
318 LDB #LTORPT -> croix fixe
319 LDA #1
320 JSR FENTOR
321 JSR FENACT
322 LBRA EXEC7 ->
323
324EXEC60 JSR TORCOL tortue fixe
325 BRA EXEC69 selon tiroir
326
327EXEC61 LDB TCAR ASCII
328 SUBB #TCN -> rect. fixe
329 PSHS B
330 LSLB
331 ADDB ,S+
332 LDX #TABTOR
333 ABX
334 LDB 2,X
335 LDX ,X
336 LDA #1
337 JSR FENTOR
338EXEC69 JSR FENACT
339
340EXEC7 LDA OUTIL
341 CMPA #LOUPE
342 LBEQ EXEC80 ->
343 CMPA #CARACT
344 BEQ EXEC75 ->
345 CMPA #COLLER
346 BEQ EXEC71 ->
347 TST COPALB
348 BNE EXEC70 ->
349 LBRA EXEC1 ->
350
351* Copie à partir album
352
353EXEC70 LDA REGCC
354 TFR A,CC
355 BEQ EXEC7A ->
356 LDA REGB
357 CMPA #FF
358 LBNE EXEC1 ->
359EXEC7A JSR RAZOUT fin copie album
360EXEC7B JSR LPIN
361 BEQ EXEC7B ->
362 LBRA EXEC1 ->
363
364* Visu temporaire tiroir
365
366EXEC71 LDA REGCC
367 TFR A,CC
368 LBNE EXEC1 ->
369 JSR TMPTIR
370 LBRA EXEC1 ->
371
372* Visu caractère en dynamique ...
373
374EXEC75 LDX #$0104
375 LDY #$174A
376 JSR SOUDAN
377 LBCC EXEC1 hors écran ->
378 LDB REGB
379 LBEQ EXEC1 ->
380 CMPB #1
381 BNE EXEC8 ->
382 LDX #CARMOT ctA=>motif cour.
383 LDY #TXTMOT
384BCOPT0 LDD ,X++
385 STD ,Y++
386 CMPX #MOTIF
387 BNE BCOPT0 ->
388 BRA EXEC9 ->
389EXEC8 LDY #TXTMOT en mode pointage
390 JSR XTRMOT dynamiquee
391 LBCC EXEC1 ->
392EXEC9 JSR FENDES visu car.
393 LDX REGX
394 LDY REGY
395 JSR EXPCAR
396 JSR FENACT
397 LBRA EXEC1 ->
398
399* Visualisation loupe si déplac.
400
401EXEC80 LDA FLGLOU
402 BEQ EXEC81 ->
403 CMPA #2
404 LBEQ EXEC1 ->
405 TST REGA
406 LBEQ EXEC1 ->
407EXEC81 JSR VISLOU
408 LBRA EXEC1 ->
409
410XTIRE LDA REGCC
411 TFR A,CC
412 BEQ ABANTI abandon ->
413 LDB REGB
414 CMPB #FF
415 BEQ ABANTI abandon ->
416 LDA REGCC
417 TFR A,CC
418 BCS XTIRE6 clic ->
419 LDA OUTIL
420 CMPA #CARACT
421 BEQ XTIRE4 saisie car. ->
422 LDX #$0104 # tracé
423 LDY #$174A
424 JSR SOUDAN
425 LBCC EXEC1 hors écran ->
426 TST REGA
427 BNE XTIRE5 mouvement ->
428 LBRA EXEC1 ->
429XTIRE4 TST REGB # mode caract.
430 LBEQ EXEC1 rien frappé ->
431
432XTIRE5 JSR TIROUT // tracé avant
433 LBRA EXEC1 -> clic
434
435XTIRE6 JSR DESOUT // dessin après
436 LBRA EXEC1 -> clic
437
438ABANTI EQU * abandon
439 LDA COPALB RAZ et clic droi
440 PSHS A ne fait que
441 CLR COPALB abandon partiel
442* si copie album
443 JSR RAZOUT
444 PULS A
445 STA COPALB
446ABANT0 JSR LPIN
447 BEQ ABANT0 ->
448 LBRA EXEC1 ->
449
450
451*** INS = fonction page pour le scroll
452XINS JSR FEN
453 LDU #PILFEN mémo retour FEN
454 PSHU CC,D,X,Y
455 TSTB
456 BEQ XINS ->
457 CMPB #BS
458 LBEQ XPG ->
459 CMPB #HT
460 LBEQ XPD ->
461 CMPB #VT
462 LBEQ XPH ->
463 CMPB #LF
464 LBEQ XPB ->
465 CMPB #RS
466 LBEQ XRS ->
467 CMPB #FF
468 LBEQ XFF ->
469 LBRA EXEC10 ->
470
471*** Sélection taille lignes
472XCTLIG EQU *
473 JSR TRAMAX
474 LDA OUTIL
475 CMPA #CARACT
476 BNE XCTLI0 ->
477 LDA ETAOUT
478 CMPA #TIRE
479 BNE XCTLI0 ->
480 LDX #$0104
481 LDY #$174A
482 JSR SOUDAN
483 BCC XCTLI0 pas dans écran >
484 JSR TRAMIN
485
486XCTLI0 JSR FENDES
487 JSR TRAMIN
488 JSR INVLIG
489 INC TLIGN
490 LDA TLIGN
491 CMPA #4
492 BLT XCTLI1 ->
493 LDA #1
494 STA TLIGN
495XCTLI1 JSR INVLIG
496 JSR TRAMAX
497 JSR AFFOPT
498
499 LBRA XCTCL ->
500
501*** Sélection taille caractères
502XCTCAR EQU *
503 JSR TRAMAX
504 LDA OUTIL
505 CMPA #CARACT
506 BNE XCTCA0 ->
507 LDA ETAOUT
508 CMPA #TIRE
509 BNE XCTCA0 ->
510 LDX #$0104
511 LDY #$174A
512 JSR SOUDAN
513 BCC XCTCA0 pas dans écran >
514 JSR TRAMIN
515
516XCTCA0 JSR FENDES
517 JSR EFFCAR
518 INC TCAR
519 LDA TCAR
520 CMPA #TCDT
521 BLE XCTCA1 ->
522 LDA #TCN
523XCTCA1 STA TCAR
524 JSR AFFCAR
525 JSR TRAMAX
526 JSR AFFOPT
527
528XCTCL LDA OUTIL
529 CMPA #CARACT
530 BNE XCTCA2 ->
531 LDA ETAOUT
532 CMPA #TIRE
533 BEQ XCTCA3 souris std ->
534* BRA XCTCA4 souris car ->
535
536XCTCA2 LDX #$0104
537 LDY #$174A
538 JSR SOUDAN
539 BCS XCTCA4 dans écran ->
540
541XCTCA3 JSR TRAMAX
542 JSR FENACT
543 LBRA EXEC1 ->
544XCTCA4 JSR TRAMIN
545 JSR FENACT
546 LBRA EXEC1 ->
547
548*** Sélection FICHIER
549XFICH EQU *
550 JSR RAZOUT
551 JSR SPFICH
552 TSTB
553 LBEQ EXEC1 ->
554 LBRA EXEC10 ->
555
556*** Sélection TIROIR (F2)
557XTIROI EQU *
558 JSR RAZOUT
559 JSR SPTIRO
560 TSTB
561 LBEQ EXEC1 ->
562 LBRA EXEC10 ->
563
564*** Sélection CADRAGE (F3)
565XCADRA EQU *
566 JSR RAZOUT
567 LBSR FENDES
568 LBSR SAUVE
569
570 CLRA
571 JSR SPCADR
572 BNE XCADRX
573 TSTB
574 LBEQ EXEC1 ->
575 LBRA EXEC10 ->
576XCADRX CLRB
577 JSR FENFER
578 JSR RESTAU
579 JSR FENACT
580 LBRA EXEC1 ->
581
582*** Sélection ALBUMS (F4)
583XALBU EQU *
584 LDD ALBCOU
585 BEQ XALBU2 ->
586 LDU #100
587XALBU1 JSR FEN
588 CMPB #$93
589 LBEQ XALBUF double F4 ->
590 LEAU -1,U
591 CMPU #0
592 BNE XALBU1 ->
593
594XALBU2 JSR RAZOUT
595 JSR SPALBU
596 TSTB
597 LBEQ EXEC1 ->
598 LBRA EXEC10 ->
599
600*** Sélection IMPRESSION (F5)
601XIMPR EQU *
602 JSR RAZOUT
603 JSR SPIMPR
604 TSTB
605 LBEQ EXEC1 ->
606 LBRA EXEC10 ->
607
608*** Sélection OUTILS (ctrl) O
609XOUTI EQU *
610 JSR RAZOUT
611 JSR SPOUTI
612 TSTB
613 LBEQ EXEC1 ->
614 LBRA EXEC10 ->
615
616*** Sélection MOTIFS (ctrl) P
617XMOTI EQU *
618 JSR RAZOUT
619 JSR SPMOTI
620 TSTB
621 LBEQ EXEC1 ->
622 LBRA EXEC10 ->
623
624*** Sélection EFFACEMENT (DEL)
625XRAZ EQU *
626 PSHS B
627 JSR RAZOUT
628 PULS B
629 JSR SPRAZ
630 TSTB
631 LBEQ EXEC1 ->
632 LBRA EXEC10 ->
633
634*** Sélection RETOUR (ctrl) Q
635XRET EQU *
636 JSR RAZOUT
637 JSR FENDES
638 JSR RESTAU
639 JSR FENACT
640 LBRA EXEC1 ->
641
642*** Sélection scroll G (BS)
643XSCG EQU *
644 TST FLGTXT
645 LBEQ XSCGS scroll ->
646
647 LDX TXTX mode caractère
648 LEAX -8,X
649 LDA TCAR
650 CMPA #TCN
651 BEQ XSCGT0 ->
652 CMPA #TCDH
653 BEQ XSCGT0 ->
654 LEAX -8,X
655 CMPX #16
656 BLE XSCGT2 ->
657 BRA XSCGT1 ->
658XSCGT0 CMPX #24
659 BLE XSCGT2 ->
660XSCGT1 STX TXTX
661 LBRA VITCAR ->
662XSCGT2 LDB #7
663 JSR PUTC
664 LBRA EXEC1 ->
665
666XSCGS LDA CLDECR
667 LBEQ EXEC1 au bout ->
668 JSR RAZOUT
669 JSR FENDES
670 JSR SAUVE
671 DEC CLDECR
672 JSR RESTAU
673 JSR VISASB
674 JSR FENACT
675 LBRA EXEC1 ->
676
677*** Sélection scroll D (HT)
678XSCD EQU *
679 TST FLGTXT
680 LBEQ XSCDS scroll ->
681
682 LDX TXTX mode caractère
683 LEAX 8,X
684 LDA TCAR
685 CMPA #TCN
686 BEQ XSCDT0 ->
687 CMPA #TCDH
688 BEQ XSCDT0 ->
689 LEAX 8,X
690XSCDT0 CMPX #623
691 BCC XSCDT1 ->
692 STX TXTX
693 LBRA VITCAR ->
694XSCDT1 LDB #7
695 JSR PUTC
696 LBRA EXEC1 ->
697
698XSCDS LDA CLDECR
699 CMPA #23
700 LBGE EXEC1 au bout ->
701 JSR RAZOUT
702 JSR FENDES
703 JSR SAUVE
704 INC CLDECR
705 JSR RESTAU
706 JSR VISASB
707 JSR FENACT
708 LBRA EXEC1 ->
709
710*** Sélection scroll H (VT)
711XSCH EQU *
712 TST FLGTXT
713 LBEQ XSCHS scroll ->
714
715 LDY TXTY mode caractère
716 LEAY -8,Y
717 LDA TCAR
718 CMPA #TCN
719 BEQ XSCHT0 ->
720 CMPA #TCDL
721 BEQ XSCHT0 ->
722 LEAY -8,Y
723XSCHT0 CMPY #8
724 BLT XSCHT1 ->
725 STY TXTY
726 LBRA VITCAR ->
727XSCHT1 LDB #7
728 JSR PUTC
729 LBRA EXEC1 ->
730
731XSCHS LDA RGDECR
732 LBEQ EXEC1 au bout ->
733 JSR RAZOUT
734 JSR FENDES
735 JSR SAUVE
736 DEC RGDECR
737 JSR RESTAU
738 JSR VISASD
739 JSR FENACT
740 LBRA EXEC1 ->
741
742*** Sélection scroll B (LF)
743XSCB EQU *
744 TST FLGTXT
745 LBEQ XSCBS scroll ->
746
747 LDY TXTY mode caractère
748 LEAY 8,Y
749 LDA TCAR
750 CMPA #TCN
751 BEQ XSCBT0 ->
752 CMPA #TCDL
753 BEQ XSCBT0 ->
754 LEAY 8,Y
755 CMPY #207
756 BGE XSCBT2 ->
757 BRA XSCBT1 ->
758XSCBT0 CMPY #199
759 BGE XSCBT2 ->
760XSCBT1 STY TXTY
761 LBRA VITCAR ->
762XSCBT2 LDB #7
763 JSR PUTC
764 LBRA EXEC1 ->
765
766XSCBS LDA RGDECR
767 CMPA #79
768 LBGE EXEC1 au bout ->
769 JSR RAZOUT
770 JSR FENDES
771 JSR SAUVE
772 INC RGDECR
773 JSR RESTAU
774 JSR VISASD
775 JSR FENACT
776 LBRA EXEC1 ->
777
778*** Sélection page G (INS+BS)
779XPG EQU *
780 TST FLGTXT
781 LBEQ XPGS scroll ->
782
783 LDX #32 mode caractère
784 STX TXTX
785 LBRA VITCAR ->
786
787XPGS LDA CLDECR
788 LBEQ EXEC1 au bout ->
789 JSR RAZOUT
790 JSR FENDES
791 JSR SAUVE
792 CLR CLDECR
793 JSR RESTAU
794 JSR VISASB
795 JSR FENACT
796 LBRA EXEC1 ->
797
798*** Sélection page D (INS+HT)
799XPD EQU *
800 TST FLGTXT
801 LBEQ XPDS scroll ->
802
803 LDX #616 mode caractère
804 LDA TCAR
805 CMPA #TCN
806 BEQ XPDT0 ->
807 CMPA #TCDH
808 BEQ XPDT0 ->
809 LDX #608
810XPDT0 STX TXTX
811 LBRA VITCAR ->
812
813XPDS LDA CLDECR
814 CMPA #23
815 LBGE EXEC1 au bout ->
816 JSR RAZOUT
817 JSR FENDES
818 JSR SAUVE
819 LDA #23
820 STA CLDECR
821 JSR RESTAU
822 JSR VISASB
823 JSR FENACT
824 LBRA EXEC1 ->
825
826*** Sélection page H (INS+VT)
827XPH EQU *
828 TST FLGTXT
829 LBEQ XPHS scroll ->
830
831 LDY #15 mode caractère
832 LDA TCAR
833 CMPA #TCN
834 BEQ XPHT0 ->
835 CMPA #TCDL
836 BEQ XPHT0 ->
837 LDY #23
838XPHT0 STY TXTY
839 LBRA VITCAR ->
840
841XPHS LDA RGDECR
842 LBEQ EXEC1 au bout ->
843 JSR RAZOUT
844 JSR FENDES
845 JSR SAUVE
846 LDA RGDECR
847 SUBA #20
848 BGE XPHS0 ->
849 CLRA
850XPHS0 STA RGDECR
851 JSR RESTAU
852 JSR VISASD
853 JSR FENACT
854 LBRA EXEC1 ->
855
856*** Sélection page B (INS+LF)
857XPB EQU *
858 TST FLGTXT
859 LBEQ XPBS scroll ->
860
861 LDY #191 mode caractère
862 STY TXTY
863 LBRA VITCAR ->
864
865XPBS LDA RGDECR
866 CMPA #79
867 LBGE EXEC1 au bout ->
868 JSR RAZOUT
869 JSR FENDES
870 JSR SAUVE
871 LDA RGDECR
872 ADDA #20
873 CMPA #79
874 BLE XPBS0 ->
875 LDA #79
876XPBS0 STA RGDECR
877 JSR RESTAU
878 JSR VISASD
879 JSR FENACT
880 LBRA EXEC1 ->
881
882*** Sélection haut d'écran (ctrl)T
883XRS EQU *
884 TST FLGTXT
885 LBNE EXEC3 mode caract. ->
886
887 TST CLDECR
888 BNE XRRS0 ->
889 TST RGDECR
890 BNE XRRS0 ->
891 LBRA EXEC1 au bout ->
892XRRS0 JSR RAZOUT
893 JSR FENDES
894 JSR SAUVE
895 CLR CLDECR
896 CLR RGDECR
897 JSR RESTAU
898 JSR VISASD
899 JSR VISASB
900 JSR FENACT
901 LBRA EXEC1 ->
902
903*** Sélection bas d'écran (ctrl)B
904XFF EQU *
905 TST FLGTXT
906 LBNE EXEC3 mode caract. ->
907
908 LDA CLDECR
909 CMPA #23
910 BNE XFFS0 ->
911 LDA RGDECR
912 CMPA #79
913 BNE XFFS0 ->
914 LBRA EXEC1 au bout ->
915XFFS0 JSR RAZOUT
916 JSR FENDES
917 JSR SAUVE
918 LDA #23
919 STA CLDECR
920 LDA #79
921 STA RGDECR
922 JSR RESTAU
923 JSR VISASD
924 JSR VISASB
925 JSR FENACT
926 LBRA EXEC1 ->
927
928*** Clic dans ascenseur horizontal
929XASCH LDD REGX
930 SUBD #12*8
931 LSRA
932 RORB
933 LSRA
934 RORB
935 LSRB
936 SUBB #15
937 BPL XASCH0 ->
938 CLRB
939XASCH0 CMPB #23
940 BLE XASCH1 ->
941 LDB #23
942XASCH1 CMPB CLDECR
943 LBEQ EXEC1 ->
944 PSHS B
945 JSR RAZOUT
946 JSR FENDES
947 JSR SAUVE
948 PULS B
949 STB CLDECR
950 JSR VISASB
951 JSR RESTAU
952 JSR FENACT
953 LBRA EXEC1 ->
954
955*** Clic dans ascenseur vertical
956XASCV LDD REGY
957 SUBB #4*8
958 LSRB
959 LSRB
960 LSRB
961 SUBB #2
962 BPL XASCV0 ->
963 CLRB
964XASCV0 LDA #6
965 MUL
966 CMPD #79
967 BLE XASCV1 ->
968 LDD #79
969XASCV1 CMPB RGDECR
970 LBEQ EXEC1 ->
971 PSHS B
972 JSR RAZOUT
973 JSR FENDES
974 JSR SAUVE
975 PULS B
976 STB RGDECR
977 JSR VISASD
978 JSR RESTAU
979 JSR FENACT
980 LBRA EXEC1 ->
981
982*** Visu nouvelle tortue caractère
983VITCAR JSR FENDES
984 JSR TRAMIN
985 LDY #TORTXT
986 LDB #MOVE
987 JSR EXTRA
988 JSR TRAMAX pour tortue sour
989 JSR FENACT
990 LBRA EXEC1 ->
991
992*** Sélection copie album courant (F9)
993*** (ou double F4)
994XALBUF JSR RAZOUT
995 LDX ALBCOU
996 LBEQ EXEC1 pas alb. cour ->
997
998* Nb: posit. bank car CODE maintient un
999* pseudo bank courant
1000
1001 PSHS X
1002 LDB #ESC tour magenta
1003 JSR PUTC
1004 LDB #$65
1005 JSR PUTC
1006
1007 JSR FENDES
1008 JSR SAUVE
1009 JSR TRAMIN fixe écran trav
1010
1011 LDA OUTIL outil "copier"
1012 STA COPAOU temporaire
1013 LDA #$FF
1014 STA COPALB
1015 LDA #COUCOP
1016 STA OUTIL
1017 JSR AFFOPT
1018 PULS X
1019
1020 LDD #$A002
1021 STD DEBZON
1022 LDA BANKC mémo
1023 LDB 8,X
1024 STB BANKC
1025 DECB
1026 STB DEBZON+2
1027 LDB #$FF
1028 STB PUTFLG
1029 LDB #5
1030 STB X0COD
1031 LDB #1
1032 STB Y0COD
1033 LDB #CODE
1034 JSR EXTRA
1035 STA BANKC
1036
1037 JSR TRAMAX
1038 JSR FENACT
1039 LBRA EXEC1 ->
Note: See TracBrowser for help on using the repository browser.