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.