Musikkursus: Teil I
Der SID
-Sound Interface Device-
Bevor wir uns mit der Theorie des SID's
befassen, und auf die einzelnen Register
und Besonderheiten eingehen, wollen wir
Ihnen eine Übersicht über den SID und
dessen Struktur geben.
Der SID ist ein hochentwickelter, elek-
tronischer Musiksynthesizer. Er verfügt
über drei Oszillatoren (Stimmen), die
vollständig adressierbar sind. Jede der
drei Stimmen verfügt über eine eigene
Hüllkurve (ADSR). Filter, Synchronisa-
tion, Ringmodulation, weißes Rauschen,
sowie die Pulswellenbreite (Rechteck-
welle) sind nahezu frei einstellbar. Der
Frequenzgang der einzelnen Stimmen be-
trägt 0-4 Khz, welches einem Spektrum
von sieben Oktaven gleichkommt. Eine
Oktave besteht aus zwölf Halbtönen.<
z.B C-Cis-D-Dis-E-F-Fis-G-Gis-A-Ais-H<
Die Einzelnen Register des SID :<
$D400 (54272) Freq. Stimme 1(lowbyte)<
$D401 (54273) " " " " 1(highbyte)<
$D402 (54274) Pulswellenbreite low<
$D403 (54275) " " high<
$D404 (54276) Wellenform/Kurvenform<
$D405 (54277) Attack/Decay <
$D406 (54278) Sustain/Release<
----------------------------------------
Cutoffwert<
$D415 (54293) Filter Lowbyte<
$D416 (54294) Filter Highbyte<
$D417 (54295) Highbyte:Filterresonanz<
Lowbyte:<
0000 = kein Filter<
0001 = Stimme 1 Filtern<
0010 = " " 2 " "<
0100 = " " 3 " "<
1000 = Audioeingang<
$D418 (54296) Highbyte: Filtermodi<
0001 = Tiefpaßfilter<
0010 = Bandpaßfilter<
0100 = Hochpaßfilter<
0101 = Notchfilter<
Lowbyte:<
Lautstärke $x0-$xf<
----------------------------------------
Generator (Stimme) 1<
Frequenz Low/High ($D400/01)<
Zusammen stellen diese Register einen
16-Bit-Wert dar. Die Tonhöhe kann ohne
wahrnehmbare Schritte durchgestimmt
werden. Die Frequenzwerte der einzelnen
Töne können Sie dem Handbuch des C-64
entnehmem. Die Frequenztabelle des COMP-
TECH wird in diesem Musikkurs erschei-
nen, ist aber nur relevant für dieje-
nigen unter Ihnen, die gerne eine eigene
Musikroutine programmieren möchten.<
Pulswellenbreite Low/High ($D402/03)<
Der SID verwaltet bei diesem Register
einen 12-Bit-Wert. Bit 4-7 von PW(High)
werden nicht genutzt. Die Pulswellen-
breite erzielt nur einen hörbaren
Effekt wenn eine oder mehrere Rechteck-
wellen verwendet werden.<
----------------------------------------
Waveregister ($D404)
Dieses Register enthält 8 Kontrollbits.<
1.Das Gate Bit: (Bit 0)<
Das Gatebit steuert den Hüllkurvengene-
rator. Wird das Gatebit auf 1 gesetzt,
beginnt der Attack/Decay/Sustain Zyklus.
Wird es auf 0 gesetzt, beginnt der Re-
lease Zyklus.<
2.Das Synchronisations Bit (Bit 1)<
Setzt man diese Bit auf 1, wird die
Frequenz der Stimme(1) mit der Frequenz
der Stimme(3) synchronisiert.
Also nochmal Stimme(1) mit Stimme(3)
" " (2) mit " " (1)<
" " (3) mit " " (2)<
Wenn die Synchronisation funktionieren
soll, muß die Frequenz des Sekundäros-
zillators kleiner als die des Primäros-
zillators sein.<
3.Das Ringmodulations Bit (Bit 2)<
Wenn dieses Bit 1 gesetzt ist, wird der
Dreieckgenerator der Stimme (1) durch
eine mit Frequenz 1 und 3 ringmodulierte
Spannung ersetzt. Dieses wird meistens
für "FX" in einem Spiel verwendet. Die
Prioritäten sind gleich der Synchronisa-
tion.<
4.Das Test Bit (Bit 3)<
Dieses Bit ist für unsere Zwecke nicht
relevant.<
5. (Bit 4)<
Dieses Bit schaltet den Dreieckgenerator
ein.<
6. (Bit 5)<
Dieses Bit schaltet den Sägezahngene-
rator ein.
7. (Bit 6)<
Dieses Bit schaltet den Rechteckgene-
rator ein. Wenn Sie die Rechteckwelle
wählen, eröffnen sich Ihnen sehr große
Klangmöglichkeiten. Diese reichen vom
hellen bis zum schrillen Klang. Mit dem
Compotech haben Sie nahezu alle Ein-
griffsmöglichkeiten auf die Pulswellen-
breite. Zum Beispiel der Pulssweep, wel-
cher wohl die besten Klänge auf dem C-64
erzeugen kann.
8. (Bit 7)
Mit diesem Bit schalten Sie den Rausch-
generator ein. Rauschen verwendet man im
allgemeinen für Wind, Explosionen,
Meeresbrandungen oder ähnliche Effekte.
Rauschen in Kombination mit einer an-
deren Kurvenform ist nicht möglich.
Hier noch einmal die verschiedenen Kur-
venformen. Die Werte in den Klammern
entsprechen den Werten des Comptech Edi-
tors unter Waveform 1/2.
1.)Dreieckkurve ($1x)
2.)Sägezahnkurve ($2x)
3.)Rechteckkurve ($4x)
4.)Rauschen ($8x)
x = Kontrollbits (siehe oben!)
Kombinationen diverser Kurvenformen sind
grundsätzlich möglich, jedoch nicht auf
jedem C-64'er zu hören.
Die Beste Kombination wäre wohl:
5.)Dreieck+Rechteckkurve ($5x)
Hierbei haben sie wieder Zugriff auf die
Pulswellenbreite.
Eine andere Möglichkeit komplexe Kurven-
formen zu erzeugen, besteht darin,
mehrere Wellenformen hintereinander zu
schalten (Comptech).
----------------------------------------
Attack/Decay ($D405)
Das Highnibble steht für 16 verschie-
dene Anstiegszeiten (Attack). Jene be-
stimmen wie schnell der Ausgang auf die
eingestellte Lautstärke anschwillt. Das
Lownibble steht dementsprechend für 16
mögliche Abschwellzeiten (Decay). Diese
Zeit gibt an, wie schnell die Lautstärke
auf den Haltepegel (Sustain) abfällt.
Sustain/Release ($D406)
Das Highnibble wählt einen von 16 mög-
lichen Halte-(Sustain) Pegeln. Dieser
Pegel wird solange gehalten, wie das
Gatebit gesetzt ist.
Mit dem Lownibble können Sie eine der
16 Ausklingarten auswählen (Release).
Durch geschicktes setzen und löschen
des Gatebit's ist es möglich komplexe
Amplitudenverläufe zu erstellen
(Amplituden LFO).
Mögliche Anstiegszeiten.
Anstiegszeit: 2 ms - 8 sek.
Abfallzeit : 6 ms - 24 sek.
Sustainpegel: 0 - maximale Lautstärke
Ausklingzeit: 6 ms - 24 sek.
----------------------------------------
Die Filter:
Eck-, bzw. Mittenfrequenz : 30 Hz-12 kHz
Abfall: 12 dB/Oktave
Tiefpaß,Bandpaß,Hochpaß,Notchfilter
Filter Cutoffwert ($D415/$D416)
Beide Register zusammen ergeben eine
11 Bit-Zahl.(Bit 3-7 des Registers $D415
werden vom SID nicht genutzt).
Diese 11 Bit-Zahl bestimmt die Mitten-
bzw.Eckfrequenz. Die Frequenz kann von
30 Hz bis 12 kHz eingestellt werden.
Filter Resonanz ($D417)
Die Bits 0-3 dieses Registers legen
fest, welcher Oszillator gefiltert wird.
Die Bits 4-7 bestimmen die Resonanz des
Filters. Man kann hiermit die Frequenzen
in der Nähe der Eckfrequenzen anheben.
Resultat ist ein schärferer Klang.
Es können 16 verschiedene Einstellungen
vorgenommen werden.
Lautstärke/Filtermodus ($D418)
Bit 4 schaltet den Tiefpaßfilter ein.
Das heißt, alle Frequenzen oberhalb der
Eckfrequenz werden mit 12 dB/Oktave
abgeschwächt, so daß volle Klänge ent-
stehen.
Bit 5 schaltet den Bandpaßfilter ein.
Alle Frequenzen unter- und oberhalb der
Mittelfrequenz werden mit 6 dB/Okatve
abgeschwächt. Offene, sehr dünne Klänge
entstehen.
Bit 6 schaltet den Hochpaßfilter ein.
Dieses ergibt blechernde Klänge.
Der Notchfilter nimmt eine besondere
Position ein. Er wird erreicht durch die
Kombination von Tiefpaßfilter mit dem
Hochpaßfilter.
Lautstärke:
Bit 0-3:
Hiermit können Sie die Gesamtlautstärke
des SID einstellen. Von 1 (leise) bis
15/$0f(laut).Bei 0 ist der Ausgang stumm
----------------------------------------
Besondere Register des SID wären viel-
leicht noch die Register $D41B/$D41C.
$D41B / Random.
Dieses Register erlaubt dem SID, die
oberen 8 Bits des Ausgangs der dritten
Stimme zu lesen. Die Art der Zufalls-
zahlen können Sie durch die Wahl der
Kurvenform bestimmen.
Beim Sägezahn haben Sie einen immer-
währenden Anstieg von 0-255.
Dreieck ergibt eine Steigerung von
0-255, um dann von 255 wieder auf 0 zu
fallen. Beim Rechteck springt die Zahl
zwischen 0 und 255 hin und her. Das Rau-
schen erzeugt eine Reihe von Zufalls-
zahlen.Sinnvoll wäre dieses Register zur
Steuerung von Modulationen.
$D41C (ENV 3)
Im Prinzip funktioniert dieses Register
wie $D41B,es wird jedoch der Ausgang des
Hüllkurvengenerators 3 gelesen.
Wir hoffen, daß wir Ihnen einen kleinen
Einblick in die Struktur des SID geben
konnten. Dem einen oder anderen wird es
vieleicht ein wenig trocken oder zu
theoretisch vorgekommen sein. Um jedoch
effektiv Arbeiten zu können, kommt man
um die Theorie nicht herum. Selbst wir,
die Verfasser dieses Textes, mußten bei
einigen Registern lange überlegen und
ausprobieren, um es Ihnen so einfach wie
möglich zu erklären. Die technischen
Daten haben wir bewußt hinzugefügt.
Einige unter Ihnen Arbeiten sicherlich
mit Homekeyboards oder Synthesizern, und
für diejenigen wird es interessant sein,
etwas über den technischen Aspekt zu er-
fahren. In der COMPTEC Anleitung können
Sie alles über die Einstellungen des
Editors, und dessen Bedienung nachlesen.
Wir hoffen, daß Sie Interesse an diesem
Musikkurs gefunden haben, und würden uns
freuen, Sie nächstes Mal wieder dabei zu
wissen.
Ihr X-ample Team.