LINE-BY-LINE EXPLANATION OF EXAMPLE PROGRAM 6:
Lines(s) | Description |
---|---|
10 | Set S to beginning of sound chip. |
20 | Clear all sound chip locations. |
30 | Set high pulse width for voice 1. |
40 | Set Attack/Decay for voice 1 (A=2, D=9). Set Sustain/Release for voice 1 (S=5, R=9). |
50 | Set low frequency for voice 3. |
60 | Set triangle waveform for voice 3. |
70 | Set volume 15, turn off audio output of voice 3. |
80 | Read frequency and duration of note. |
90 | If frequency equals zero, stop. |
100 | POKE start pulse waveform control voice 1. |
110 | Start timing loop for duration. |
120 | Get new frequency using oscillator 3 output. |
130 | Get high and low frequency. |
140 | POKE high and low frequency for voice 1. |
150 | End of timing loop. |
160 | POKE stop pulse waveform control voice 1. |
170 | Go back for next note. |
500-550 | Frequencies and durations for song, |
560 | Zeros signal end of song. |
A wide variety of sound effects can also be achieved using dynamic effects. For example, the following siren program dynamically changes the frequency output of oscillator 1 when it's based on the output of oscillator 3's triangular wave:
This page has been created by Sami Rautiainen. | |
Read the small print. | Last updated February 10, 2002. |