Avance Logic ALS100 Plus+ PnP OPL3 Soundkarte für PC/104

Ich baue gerade einen kleinen PC/104*-Rechner für DOS-Spiele und musste feststellen, dass es kaum Soundkarten dafür gibt. Also habe ich selbst eine gebaut.

*= PC/104 – Wikipedia, eine Formspezifikation

Um möglichst viele Spiele mit der Karte abdecken zu können habe ich eine Weile nach einem möglichst vielseitigen IC gesucht. Am Ende bin ich beim Avance Logic ALS100 Plus+ gelandet. Der IC ist ordentlich dokumentiert, was den Designprozess erheblich vereinfacht hat.

Kleiner Abriss über die Features:

Kompatibilität
• Adlib
• Alle Sound Blaster Pro Anwendungen
• Alle Sound Blaster 16 Anwendungen
• MPU-401 UART MIDI
• PC Speaker
• Sound Blaster ADPCM
• Yamaha OPL3 FM Synthesizer

Das deckt alle Spiele ab, an denen ich erstmal interessiert bin. Der PC-Speaker wird vom IC in den Soundausgang geschleift, das ist praktisch!

Hardwarespezifikationen
• Software-konfigurierbarer DMA (0, 1, 3)
• Software-konfigurierbarer Interrupt (5, 7, 9, 10, 11)
• PC/104 ISA Plug and Play bus interface
• DMA interface mitFIFO
• Enhanced Game port
• 8-bit oder 16-bit Stereo Digital Audio von 4 kHz bis 48 kHz
• 3D Sound Effect Prozessor
• FM/wavetable synthesese via OPL3
• Wavetable connector
• Stereo Line-Out

Design und Entwicklung

Wenn du nur für die Designfiles hier bist und keine Lust auf meine Fehler beim Design hast, dann scrolle einfach ganz bis zum Ende des Artikels 🙂

Für die Maße hab ich mir einfach die Spezifikation des PC/104-Konsortiums geladen: PC/104 – PC/104 ConsortiumPC/104 Consortium (pc104.org)

Dann habe ich die Anwendungsempfehlungen von ALS für den IC genommen und um Rauschunterdrückung ergänzt.

Erster Fehler:

Dumm gelaufen, der ICist größer als ein normalerPQFP-100 (10% größer, wenn mans genau nimmt). Mist. Ich habe versucht die Beinchen zu kürzen, aber das ist in die Hose gegangen. Hab mir dann Zähneknirschend neue Platinen machen lassen.

Zweiter Fehler:

Wer jetzt dachte dass ich vom ersten Fehler gelernt hätte – falsch gedacht. Der OPL-3 ist ebenfalls breiter als ein normaler SOIC-24! Dieses mal konnte ich die Beinchen einfach kürzen und weitermachen, puh (auf dem Bild habe ich den Chip zur Veranschaulichung nach unten geschoben).

Dritter Fehler:

8bit- und 16bit-Audio und PC-Speaker gingen auf Anhieb, aber die FM-Synthese war Müll. Rhythmisch müllig. Ein Blick auf den Schaltplan genügte, um den zugegeben recht blöden Fehler zu finden:

Die Adressleitungen waren vertauscht! Schnell an der Platine Leitungen durchtrennt und Leitungen getauscht, schon ging die Synthese. Notiz für die nächste Platinenrevision gemacht.

Vierter (vorhergesehener) Fehler:

Beim Test des Wavetable-Boards konnte man ein leichets Brummen hören. Das lag daran, dass die Soundkarte getrennte digital/analog Masseflächen hat, die an einem Punkt zusammengeführt werden. Allerdings macht das Wavetable-Tochterboard das auch, also gab es eine kleine Erdschleife. Das hatte ich schon abgesehen und einfach meine Brücke entfernt (zu sehen im nächsten Bild).

Wo wir gerade beim Wavetable sind, das hier sind seine maximalen Maße:

Hier noch ein Bild vom Versuchsaufbau. Zu sehen: Ein PL3-Clone mit gefixten Adressleitungen und ein DreamBlaster X2:

Downloads

Done!

Gerber: Download
Schaltplan: Download
iBOM: Download
Treiber: Download
kicad symbol und Footprint vom PC/104-Board: Download
BOM* mit Links zu mouser.com: Download

*= Nicht auf der BOM:
• PC104-Connector, gibt es auf mouser.com
• OPL3, aktuell noch NOS von verschiedenen Anbietern zu haben
• ALS100 Plus+, leider seit ein paar Dekaden nicht mehr in Produktion, muss man wohl oder übel von einer anderen Soundkarte holen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.