home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C64'er
/
C64'er.iso
/
87xx
/
8705.d64
/
lightp.-irq
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-03-30
|
2KB
|
99 lines
0 SYS32768:.OPT P,OO:*= $C0DF
1 .TIT "LIGHTPEN/JOYSTICK-IRQ"
2 .PAG 255
3 VIC = $D000
4 FLAG = $9B
5 IRQALT = $EA31
7 MASK = $D01A
8 REQUEST = $D019
9 ;
10 ;INITIALISIERUNG
11 ;===============
12 ;
13 SEI ;INTERRRUPT VERHINDERN
14 LDA #<IRQNEU
15 LDX #>IRQNEU
16 STA $0314 ;IRQ-VEKTOR AUF NEUE
17 STX $0315 ;ROUTINE SETZEN
18 LDA #00 ;FLAG FUER TEXT
19 STA FLAG ;SETZEN
20 LDA #<$6000
21 STA $71
22 LDA #>$6000 ;GRAFIKSCHIRM
23 STA $72
24 LDA #00 ;AB $6000
25 LDX #32
26 L1 TAY ;LOESCHEN
27 L2 STA ($71),Y
28 INY
29 BNE L2
30 INC $72:DEX
31 BNE L1
32 LDA #<$4400 ;VIDEORAM AB
33 STA $71
34 LDA #>$4400 ;$4400 MIT FARBE
35 STA $72
36 LDA #110 ;FUELLEN- PUNKT-
37 LDX #04
38 L3 LDY #00 ;FARE HELLBLAU,
39 L4 STA ($71),Y
40 INY ;HINTERGRUND BLAU
41 BNE L4
42 INC $72:DEX
43 BNE L3
46 LDA #%10001000 ;IRQ DURCH LIGHTPEN/
47 STA MASK ;JOYSTICK FESTLEGEN
48 CLI ;IRQ FREIGEBEN
49 RTS
50 ;
51 ;NEUE INTERRUPTROUTINE
52 ;=====================
53 ;
54 IRQNEU LDA REQUEST ;IRQ-REGISTER
55 STA REQUEST ;LOESCHEN
56 BMI RASTER ;ZUM RASTER - IRQ
57 ;
58 ;TIMER-INTERRUPT
59 ;===============
60 ;
61 LDA $DC0D ;IRQ-REG. LOESCHEN
62 CLI ;IRQ ZULASSEN
63 JMP IRQALT ;TIMER-IRQ-ROUTINE
64 ;
65 ;RASTERZEILEN-INTERRUPT
66 ;======================
67 ;
70 RASTER LDA FLAG ;HGR ODER TEXT
71 CMP #00
72 BEQ HGR ;GRAFIK EINSCHALTEN
73 ;
74 ;AUF TEXTSCHIRM SCHALTEN
75 ;=======================
76 ;
77 LDA #%00011011
78 STA VIC+17 ;GRAFIK AUSSCHALTEN
79 LDA #%11001000 ;MULTICOLOR
80 STA VIC+22 ;AUSSCHALTEN
81 LDA #%00010101 ;ZEICHENSATZ AUF
82 STA VIC+24 ;GROSSCHRIFT
83 LDA #%10010111 ;16 K-VERSCHIEBUNG
84 STA $DD00 ;DES ADRESSRAUMES
85 LDA #00 ;FLAG AUF HGR
86 STA FLAG ;SCHALTEN
87 JMP $EA7E ;IRQ BEENDEN
88 ;
89 ;AUF GRAFIKSCHIRM SCHALTEN
90 ;=========================
91 ;
92 HGR LDA #%10111011
93 STA VIC+17 ;GRAFIK EINSCHALTEN
94 LDA #%11001000
95 STA VIC+22 ;MULTICOLOR AUS
96 LDA #%00011101
97 STA VIC+24 ;VIDEORAM NACH $4400
98 LDA #%10010110 ;16K-VERSCHIEBUNG
99 STA $DD00 ;DES ADRESSRAUMES
100 LDA #01 ;FLAG AUF TEXT
101 STA FLAG ;SCHALTEN
102 JMP $EA7E ;IRQ BEENDEN