Der Yamaha YM3812, auch bekannt als OPL2 (OPL ist eine Abkürzung für FM Operator Type-L), ist ein von der Yamaha Corporation hergestellter Soundchip bzw. integrierter Schaltkreis. Er fand eine weite Verbreitung in Soundkarten für den IBM-PC, z. B. AdLib und Soundblaster.
Beschreibung
BearbeitenDer Soundchip YM3812 (OPL2) ist abwärtskompatibel zum YM3526 (OPL1), der in Soundkarten für MSX-Computer Verwendung fand. Gegenüber dem Vorgänger wurden nur drei neue Wellenformen hinzugefügt. Eine erweiterte Version des OPL2, der OPL3 alias YMF262, fand seinen Einsatz ab der Soundblaster Pro 2 und weitere Verbreitung in deren Nachfolgern wie der Soundblaster 16. Er unterstützt Stereosounds und kann in verschiedenen Modi bis zu sechs Stimmen mit vier Operatoren erzeugen, außerdem wurden noch einmal vier Wellenformen hinzugefügt. Weiterhin gibt es noch den OPL4, er ist abwärtskompatibel zu OPL3 und OPL2, wurde aber um Wavetable-Synthese erweitert.
Die Schaltung hatte 244 verschiedene Register zum Beschreiben. Sie kann neunstimmigen Sound ausgeben, jede Stimme („Kanal“) erzeugt durch zwei Oszillatoren. Jeder Oszillator kann Sinuskurven produzieren, welche in drei andere Wellenformen verwandelt werden können – der negative Anteil der Schwingung kann stummgeschaltet oder invertiert und auch Pseudo-Sägezahnschwingungen (1⁄4 Sinusschwingung aufwärts mit stummen Bereichen dazwischen) konnten erzeugt werden. Diese ungewöhnliche Art, Wellenformen zu erzeugen, geben dem YM3812 einen charakteristischen Klang. Jeder der Wellen-Generatoren hat seinen eigenen ADSR-Hüllkurvengenerator. Seine Hauptfunktion, Töne zu erzeugen, ist die frequenzmodulierte Synthese – wobei pro Kanal einer der beiden Oszillatoren den anderen moduliert.
Übersicht der Register eines Kanals
BearbeitenFür den gesamten Kanal
Bearbeiten- Hauptfrequenz (10 Bit)
- Octave (3 Bit)
- Note an/aus
- Synthese-Modus (FM oder einfach additiv)
- Rückkopplung (0–7, wobei sich der Modulator selbst moduliert)
Für jeden der beiden Oszillatoren
Bearbeiten- Frequenz-Faktor (kann auf 1⁄2, 1 bis 10, 12 oder 15 gesetzt werden)
- Wellenform (Sinus, Halbsinus, Sinus-Betrag oder Säge-Sinus)
- Lautstärke (0–63)
- Attack, Decay, Sustain, Release (je 4 Bit, logarithmisch)
- Tremolo (an oder aus)
- Vibrato (an oder aus)
- Sustain (an oder aus)
- Hüllkurven-Skalierung pro Taste (an oder aus)
- Lautstärke-Skalierung pro Taste (0–3)
Parameter für den gesamten Chip
Bearbeiten- Vibrato depth
- Tremolo depth
- Schlagzeug-Modus (benutzt drei Kanäle, um fünf Schlagzeugtöne zu erzeugen)
- Composite Speech Mode (alle Operatoren stehen gleichzeitig zur Verfügung; vorgesehen für Sprachsynthese, wurde aber praktisch nie genutzt und ist (als einzige Inkompatibilität) im OPL3 nicht enthalten)
Technische Daten
BearbeitenOPL 2
Bearbeiten- 9 Tonspuren (Channels) oder 6 Tonspuren + 5 Tonspuren Schlaginstrumente
- 2 Oszillatoren pro Tonspur
- Frequenzmodulation und Additive Modulation
- 4 verschiedene Waveforms (Sinus, Dreieck, Sägezahn, ?)
- 1 Hüllkurvengenerator pro Oszillator (ADSR) mit 4 Bit Genauigkeit pro Wert
- Vibrato, Tremolo und Sustain
- Mono
OPL 3
Bearbeiten- 18 Tonspuren oder 12 Tonspuren + 5 Tonspuren Schlaginstrumente
- 2 Oszillatoren pro Tonspur, unter Verwendung von 12 Tonspuren zusammengefasst zu 6 Tonspuren auch 4 Oszillatoren pro Tonspur
- Frequenzmodulation und Additive Modulation
- 4 verschiedene Waveforms (Sinus, Dreieck, Sägezahn, Rechteck)
- 1 Hüllkurvengenerator pro Oszillator (ADSR) mit 4 Bit Genauigkeit pro Wert
- Vibrato, Tremolo und Sustain
- Stereo
Weblinks
Bearbeiten- Programming the AdLib/Sound Blaster FM Music Chips ( vom 16. Juli 2011 im Internet Archive) (1992)
- YM3812 (OPL2) Datasheet