home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1993 July
/
64er_Magazin_93-07_1993_Markt__Technik_de_Side_A.d64
/
listing4
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
2KB
|
46 lines
10 ;** filter mcp **
12 :
16 filter ldx trigger ; stimme, die den filter moduliert, in x
26 lda filton:beq filt2 ; "filter aus ? ja, dann ende !
28 inc filtzae ; zeit fuer richtungswechsel erhoehen.
30 lda filtri:bne filtdw ; je nach richtung verzweigen...
31 :
32 filtup lda filtzae:cmp uptime,x ; "filter up-time vorbei ?
34 beq filtup2 ; ja, dann nach 'filtup2'.
36 lda ffreq:clc:adc levelup,x ; filterfrequenz um 'levelup' erhoehen.
38 lda wrap,x:beq filtup3 ; "uebertrag der frequenz erlaubt ?
39 bcs filt2 ; nein, dann [128]e !
40 filtup3 sta f[184]q:jmp filt2 ; ja, dann neue [184]quenz setzen und [128]e.
42 filtup2 ldy #1:sty filtri ; richtung auf '[138]terzaeh[195]'...
44 dey:dey:sty filtzae ; ...und die zeit zuruecksetzen.
46 lda startri,x ; je nach startrichtung testen...
48 bne ftest:jmp filt2 ; ...ob die modulati[145] neu gestart werden soll.[128]e.
49 :
50 filtdw lda filtzae:cmp dwtime,x ; das selbe nochmal...
52 beq filtdw2 ; ...aber fuers [138]terzaeh[195] !
54 lda f[184]q:sec:sbc leveldw,x
56 lda wrap,x:beq filtdw3
58 bcc filt2 ; unterlauf der [184]quenz testen
60 filtdw3 sta f[184]q:jmp filt2
62 filtdw2 ldy #0:sty filtri ; filterrichtung auf 'hochzaeh[195]'.
64 dey:sty filtzae
66 lda startri,x:bne filt2
67 :
68 ftest lda nochmal,x:bne filt2 ; testen, ob modulati[145] nochmal.
70 lda #0:sta fil[164]n ; nein, dann filter[171]effekt [182]chalten.
72 filt2 rts
79 :
80 trigger .byt 0 ; stimmen[171]nr., v[145] der die parameter genommen werden.
82 fil[164]n .byt 0 ; filter[171]effekt an ([178]1) oder aus ([178]0)
84 f[184]q .byt 0 ; filter[184]quenz (wird in sid geschrieben)
86 filtri .byt 0 ; richtung der modulati[145].
88 filtzae .byt 0 ; zaehler fuer die dauer einer schwingung.
90 uptime .byt 0,0,0 ; dauer des 'hochzaeh[195]s' (effekt[171]parameter)
92 dwtime .byt 0,0,0 ; dauer des '[138]terzaeh[195]s' (effekt[171]parameter)
94 levelup .byt 0,0,0 ; staerke der modulati[145] bei 'hoch' (param.)
96 leveldw .byt 0,0,0 ; staerke der modulati[145] bei '[138]ter' (param.)
98 wrap .byt 0,0,0 ; uebertrag erlaubt ([178]0) oder nicht ([178]1) (param.)
100 startri .byt 0,0,0 ; richtung, bei der gestartet wird (hoch oder [138]ter)
102 nochmal .byt 0,0,0 ; wiederholung ein[173]aus.
104 :