Bally’s

 

AS 2518-51

“Computer Sound Module”

 

AS 2518-56

“Sounds Plus Module”

 

AS 2518-57

“Vocalizer Board”

 

THEORY OF OPERATION

&

   TROUBLESHOOTING 

 

Copyright 2021 by Holger Stallmann (holli8123) 

REV 1.7 vom 27.05.2025                 

 

Dieses Dokument inkl. der Abbildungen ist urheberrechtlich geschützt.

Eine vollständige oder auszugsweise Vervielfältigung, Bearbeitung, Verbreitung und jede Art der Verwertung außerhalb der Grenzen des Urheberrechtes bedürfen der schriftlichen Zustimmung des jeweiligen Autors bzw. Erstellers. 

Downloads und Kopien dieser Seite sind nur für den privaten, nicht kommerziellen Gebrauch gestattet.


Einführung

Mit dem Computer Sound Module AS 2518-51 brachte Bally im Jahr 1980 sein erstes, durch einen Mikroprozessor gesteuertes und mit einem Synthesizer-Chip ausgestattetes Soundmodul auf den Markt, was die Erzeugung von harmonisch klingenden, sowie komplexeren Tönen und Geräuschen ermöglichte. Zudem war damit erstmals das Abspielen eines Hintergrundsounds möglich. Das Sounds Plus Module AS 2518-56 wurde auf Basis des AS 2518-51 entwickelt. Dort wurde eine Schnittstelle implementiert, über die durch eine Anschaltung eines Vocalizer-Boards (AS 2518-57) zusätzlich eine Sprachausgabe ermöglicht wurde. Diese Kombination aus einem AS 2518-56 und dem AS 2518-57 wurde in den Modellen XENON und den ersten FLASH GORDON eingesetzt. Bei letzterem wurde diese Kombination im Laufe der Produktion durch ein Squawk & Talk Modul AS 2518-61 ersetzt. Das AS 2518-56 ist technisch und damit auch von den Anschlüssen aufwärtskompatibel zum AS 2518-51 und kann als dessen Ersatz dienen. Dazu wurden Brücken (Jumper) vorgesehen, über die auch ein Betrieb ohne angeschaltetes Vocalizer-Board eingestellt werden kann. Jedoch ist durch die abweichenden Boardabmessungen und die Lage der Befestigungslöcher eine direkte Montage auf den Befestigungsschienen des AS 2518-51 nicht möglich.

Blockschaltbild AS-2518-51, AS-2518-56

Folgende Abbildung zeigt die einzelnen Funktionsblöcke, die im folgenden Artikel weiter in ihre einzelnen Bestandteile zerlegt und näher betrachtet werden.

 

  • Spannungsversorgung 
  • Ansteuerung durch die MPU 
  • Digitalteil mit CPU, ROM, RAM, Adressdekodierung und Synthesizer
  • Audioteil mit den Komponenten zur Signalaufbereitung und Signalverstärkung
  • Mono-Endstufe mit angeschaltetem Lautsprecher
  • Schnittstelle beim AS 2518-56 zur Anschaltung eines Vocalizer-Boards (AS 2518-57) 

Es wird empfohlen, die Schaltpläne (Schematics) des Bally AS-2518-51 / -56 / -57 sowie ein Board bzw. dessen Abbildung bereitzuhalten, um die nachfolgenden Beschreibungen besser nachvollziehen zu können. 

Zusätzlich wird auf folgende Dokumente verwiesen, die zum Teil auch als Grundlage für die Beschreibungen im folgenden Artikel hergenommen wurden: 

  • Bally FO 560-3 „Electronic Pinball Games Repair Procedures“
  • Bally AS-2518-51 / AS-2518-56 / AS-2518-57 schematics
  • Motorola MC6802 / MC6808 / MC6810 / MC6821 datasheets
  • Yamaha AY-3-8910 datasheet
  • Motorola MC3417 Adaptive Delta Modulator

Begriffsbestimmungen

MPU   =         6800 Prozessor auf dem Rechnerboard des Flippers 

CPU   =         680x Prozessor auf Position U3 des Soundboards

SB      =         Soundboard (AS 2518-51, AS 2518-56)

RAM   =         6510 Random Access Memory (Schreib- / Lesespeicher)

ROM   =         Read only Memory (nur Lesespeicher)

PIA     =         6820 / 6821 Peripheral Interface Adapter

PSG   =         Programmable Sound Generator AY-3-8910

Schreibweisen

Signale, die im aktivierten Zustand High-Pegel führen:  normale Schreibweise z.B. CA2

Signale, die im aktivierten Zustand Low-Pegel führen: mit vorangestelltem Schrägstrich z.B. /RESET


Übersicht der Geräte mit einem AS 2518-51 oder AS 2518-56

* nur in der Early Production, die Kombination aus AS 2518-56 und Vocalizer-Board wurde im Verlauf der Produktion durch das Squawk & Talk Board AS 2518-61 ersetzt


IC-Übersicht des Digitalteils

Für die Sounderzeugung sind im Digitalteil des Computer Sound Modul AS 2518-51 / -56 fünf relevante ICs vorhanden. 

  • U1   - Yamaha AY-3-8910 PSG (Programmable Sound Generator) IC 
  • U2   - 6820 oder 6821 PIA
  • U3   - Motorola 6802 or 6808 8-bit Microprocessor *  
  • U4   - Game specific Sound-ROM
  • U10 - 6810 RAM (nur in Verbindung mit einem 6808 Mikroprozessor – bei Verwendung eines 6802 Mikroprozessor und gesetztem Jumper „A“ bleibt der Sockel leer).

Wie bei vielen Soundboards dieser Generation kann auch beim AS 2518-51 und AS 2518-56 entweder ein Motorola 6802 oder ein Motorola 6808 Mikroprozessor bestückt werden. Der 6802 Prozessor beinhaltet bereits ein 128 Byte NMOS RAM, das durch ein High-Pegel am RE-Pin (RAM enable) des Prozessors aktiviert wird. Dazu wird RE über den Jumper „A“  mit /RESET verbunden. /RESET führt High-Pegel während des Normalbetriebes. Liegt der RE-Pin eines 6802 auf Low-Pegel (über Jumper „B“ wird RE mit GND verbunden) oder es wird ein 6808 eingesetzt, wird von einem bestückten 6810 RAM IC auf Position U10 des Computer Sound Modul ausgegangen und entsprechend adressiert.


680x Adressbereiche

Der 6802 bzw. 6808 Mikroprozessor verwaltet einen Adressbereich von 64kB. Dieser Adressbereich ist auf dem Computer Sound Modul wie folgt aufgeteilt:  

$0000-$007F            ”Page Zero” RAM

Wie bereits erklärt, entweder als interner Bestandteil der CPU (6802 + Jumper „A“) oder als separates 6810 RAM auf Position U10 (6808 oder 6802 + Jumper „B“).  

$0080-$0083            PIA 6820 auf Position U2  

kontrolliert den Programmable Sound Generator (PSG) AY-3-8910 und dessen Kommunikation mit der MPU. Dadurch benötigt der PSG keinen eigenen Adressbereich.    

$1000-$FFFF           ROM

Es können die originalen, maskenprogrammierten ROMs des Herstellers mit der Typenbezeichnung 9316 (2kB = 2048 Bytes) oder 4732 (4kB = 4096 Bytes) eingesetzt werden. Darüber hinaus besteht die Möglichkeit, EPROMs mit einer Größe von 2kB (2716) oder 4kB (2532) einzusetzen. Beim AS 2518-56 besteht zudem die Möglichkeit ein 2732 einsetzen zu können.

Drahtbrücken-Kombinationen für verschiedene (EP)ROM-Typen

Die Datei für das Sound-ROM auf der gesockelten Position U4 ist modellspezifisch und hat je nach Flippermodell eine Größe von 2kB oder 4kB. Entsprechend können 2kB oder 4kB (EP)ROMs zum Einsatz kommen. Die Größe des verwendeten (EP)ROM ist für eine 2kB Sounddatei allerdings nicht auf ein 2kB (EP)ROM beschränkt. Es können auch Typen mit einem Speichervolumen von 4kB zum Einsatz kommen, wobei sich die 2kB Daten in der oberen Hälfte eines 4kB (EP)ROM befinden müssen. Bei einem AS 2518-56 im FLASH GORDON und XENON werden ebenfalls 4kB unterstützt und dort auch genutzt. Der verwendete (EP)ROM-Typ wird mittels Drahtbrücken (Jumper) eingestellt.

Jumper-Stellungen für die ROM-Adressierung bei einem AS 2518-51:

Jumper C gesetzt (2kB):    9316 ROM oder 2516 EPROM oder 2716 EPROM     

Jumper D gesetzt (4kB):    4732 ROM oder 2532 EPROM     

Der Einsatz eines 2732 EPROM für eine 4kB Sounddatei (Grand Slam, Goldball) ist nicht vorgesehen und somit nicht durch Jumper auswählbar. Dazu wäre einen Eingriff in die Leiterbahnführung des AS 2518-51 notwendig, allerdings kann eine 2kB Sounddatei in den oberen 2kB Bereich eines 2732 EPROM gebrannt werden. Dieses Variante ist kompatibel zu einem 2516 / 2716 EPROM.


Jumper-Stellungen für die ROM-Adressierung bei einem AS 2518-56:

Das später entwickelte Sound Plus Modul AS 2518-56 ist abwärtskompatibel zum Computer Sound Module AS 2518-51. Neben den bereits dort einsetzbaren (EP)ROMs ist bei dem Board zusätzlich der Einsatz eines 4kB 2732 EPROM möglich:

Jumper C gesetzt:               9316 ROM oder 2716 EPROM oder 2732 EPROM

Jumper D gesetzt:               4732 ROM oder 2532 EPROM     

Jumper E gesetzt:               9316 ROM oder 2516 EPROM oder 4732 ROM oder 2532 EPROM 

Jumper F gesetzt:               2732 EPROM           

Die Funktion der Jumper G, H und J für die Betriebsarten mit und ohne einem AS 2518-57 Vocalizer Board werden an späterer Stelle erklärt.

Spannungsversorgung

+5 Volt und +12 Volt Versorgung:

Die stabilisierte +5 Volt zur Versorgung der digitalen Logik und des Filters um U8 wird vom Solenoid Driver / Voltage Regulator Board (SDB A3) an J1 Pin 5 gegen Masse J1 Pin 6 bereitgestellt. Als Spannungsquelle für die +12V Versorgung des Boards dient die ungeregelte +11,9V Versorgung, die ebenfalls durch das SDB an J1 Pin 10 (Unreg +5V) gegen J1 Pin 6 (Unreg +5V Return) bereitgestellt werden. Die +12 Volt werden über die Diode CR1 entkoppelt und auf den hochkapazitiven Kondensator C15 (4700µ/25V) geleitet. Dieser glättet die Spannung, um unerwünschte Wechselspannungsanteile herauszufiltern damit sie zur Versorgung der Mono-Endstufe TDA2002 (U9) verwenden werden kann.   

Die genannten Spannungen liegen an folgenden Testpunkten an:

+12 Volt         an TP1   (Toleranz +/- 2.5 VDC, max. Wechselspannungsanteil 0.1 VAC)

+5 Volt           an TP2   (Toleranz +/- 0.25 VDC)*   

GND              an TP3  

Eine Überprüfung dieser Spannungen mittels eines Digital-Multimeters sollte die erste Maßnahme sein, wenn das Sound-Board keine Töne bzw. Geräusche produziert. 

Auszug aus dem Stromlaufplan für die +5 Volt und +12Volt Spannungsversorgung

Die Unreg. +5V Return Leitung ist auf den Sound-Boards nicht mit der Boardmasse (GND) verbunden. Der zentrale Massepunkt befindet sich auf dem Solenoid Driver / Voltage Regulator Board A3, mit dem auch die Boardmasse (GND) über J1 Pin 6 verbunden ist. Bei einer Unterbrechung der vom SDB kommenden Unreg. +5V Return Leitung arbeitet das Soundboard, allerdings ist die Siebung der Versorgungsspannung für die Endstufe durch den Kondensator C15 nicht mehr gegeben, was zu einem überlagerten Brummen im Lautsprecher führen kann. Ob beide Verbindungen zum SDB bestehen, kann mit einer Widerstandsmessung bzw. Durchgangsprüfung zwischen TP3 (GND) und dem – Pol von C15 ermittelt werden. Eine überlagerte Wechselspannung kann zwischen TP3 und dem +Pol von C15 gemessen werden. Deren Wert soll 0.1 VAC nicht übersteigen.

HINWEIS: *

Der im Schaltplan am TP2 (+5VDC) angegebene Toleranzbereich von +/- 2.5 VDC, was einem Spannungsbereich zwischen +2.5 VDC bis +7.5 VDC entspräche, ist ein Druckfehler und somit falsch. Liegt an TP2 eine Spannung von < 4.75 VDC an, würden die digitalen Logik ICs nicht mehr korrekt arbeiten. Bei einer Spannung von > 5.3 VDC besteht bereits die Gefahr, dass sie einen irreversiblen Schaden nehmen. Eine maximale Toleranz von +/- 0.25V, was einem Spannungsbereich zwischen +4.75 VDC …. +5.25 VDC entspricht, ist hinnehmbar.

Resetschaltung

Nach dem Einschalten bzw. Anlegen der Versorgungsspannung wird mit Hilfe der Reset-Schaltung ein definierter und somit stabiler Ausgangszustand für die CPU, den PIA und den PSG erzeugt. Die Reset-Schaltung beim AS 2518-56 besteht aus zwei NAND-Gattern mit Schmitt-Trigger Eingängen (U6). Unmittelbar nach dem Einschalten liegt an Pin 2 von U6 Low-Pegel. Durch die Invertierung führt Pin 3 High-Pegel, welcher durch das 2. Gatter von U6 nochmal invertiert wird und damit die /Reset-Leitung an Pin 4 auf Low-Pegel schaltet, was die genannten Komponenten daran hindert, ihre Funktion aufzunehmen. Der Kondensator C12 wird nun über den Widerstand R20 geladen. Wird der Schwellenwert am Pin2 von U6 erreicht, schaltet Pin 3 auf Low-Pegel und die /Reset-Leitung an Pin 4 wechselt durch die nachfolgende Invertierung auf High-Pegel. Nun kann die CPU mit der Abarbeitung des Programmablaufes beginnen. Der Resetvorgang dauert ca. 150ms. Beim AS 2518-51 werden NAND-Gatter ohne Schmitt-Trigger Eingänge verwendet. Dort gibt es keine definierte Schaltschwelle. Der Pegelwechsel an deren Ausgängen findet statt, wenn die, für CMOS-Gatter definierten Werte für High und Low erreicht wurden.

Auszug aus dem Stromlaufplan (Komponenten der Reset-Schaltung)
Zum Überprüfen der Reset-Schaltung kann der Pegel am Pin 4 von U6 gemessen werden. Im Eingeschalteten Zustand muss dort ein High-Pegel zu messen sein. Nach dem Aus- und wieder Einschalten liegt dort ein Low-Pegel an, der nach ca. 150ms auf High wechselt. 


Takterzeugung

Auszug aus dem Stromlaufplan (Komponenten für die Takterzeugung)


Die Taktsignale können mit Hilfe eins Oszilloskops am TP5 sichtbar gemessen werden. Die Frequenz beträgt 895 KHZ, was 1/4 der Frequenz des Schwingquarzes X1 mit 3.58 Mhz entspricht. Steht kein Oszilloskop zur Verfügung, kann mit Hilfe eines Digital-Voltmeters die Spannung am TP5 gemessen werden. Durch das Impuls- / Pausenverhältnisses von 1:1 beträgt die zu erwartende Spannung an TP5 ca. +2.5 VDC. Ist an Pin 37 (E) keine oder eine stark abweichende Spannung messbar, können ein defekter Schwingquarz (Y1), defekte Kondensatoren (C18, C19), eine defekte CPU oder Kontaktprobleme (Sockel, Lötstellen) die Fehlerursache sein.  


Adressdekodierung beim AS 2518-51:

Die Adressdekodierung für die einzelnen digitalen Komponenten wird mittels direkter Adressierung durch die Adressleitungen des Prozessors und mit Hilfe eines NAND-Gatters, das Bestandteil von U6 ist, realisiert und ist somit recht trivial ausgelegt. 

Die nachstehende Tabelle zeigt die Zustände der Adressleitungen während einer Adressierung des RAM, PIA und Sound-ROM. Die jeweilige Auswahl ergibt sich aus den Zuständen der gelb markierten Adressleitungen. Der Programmable Sound Generator AY-3-8910 (U1) ist zu langsam, um direkt mit dem Prozessor zu kommunizieren. Diese Aufgabe übernimmt der PIA U2. Der AY-3-8910 belegt daher keine eigenen Adressen innerhalb des Adressraumes des Prozessors.

Der Prozessor greift nach dem Einschalten und Ablauf des Reset-Timer auf die Adressen FFFEh und FFFFh zu, an denen sich die Startadresse des abzuarbeitenden Programmes befinden muss. Da die drei oberen Adressleitungen A13 - A15 bei der Adressdekodierung nicht berücksichtigt werden, ist der Adressraum für das ROM quasi 15x (bei einem 2k-ROM) bzw. 7x (bei einem 4k ROM) im theoretisch adressierbaren Bereich von A13 - A15 gespiegelt und deckt somit die beiden notwendigen Startadressen ab. Somit ergibt sich für das ROM ein Gesamtadressraum von 1000h – FFFFh.

Reset-Timing:

Das gleiche gilt für die Startadressen der Interrupt-Routinen, die sich ebenfalls im Adressbereich FFFxh befinden müssen.

Adressierung nach dem Einschalten:

Adressdekodierung beim AS 2518-56

Für den Einsatz des AS 2518-56 als AS 2518-51 gelten die o.a. Tabellen, da die Sound-ROMs für Geräte mit einem AS 2518-51 diese Adressdekodierung zu Grunde legen. Für diese Betriebsart sind die Jumper G und H einzulegen und der Jumper J sowie der Kondensator C27 zu entfernen. 

Beim Einsatz als AS 2518-56 in Verbindung mit einem AS 2518-57 Vocalizer Board sind die Jumper G und H zu entfernen und der Jumper J ist einzulegen. Der Kondensator C27 ist erforderlich. Dadurch ergeben sich andere Anforderungen an die Adressdekodierung: 

Beim Betrieb mit einem Vocalizer-Board und eingelegtem Jumper J erfolgt die Adressdekodierung für das Sound-ROM U4 auf dem, über J3 verbundenen Vocalizer-Board. Dort werden die Adressleitungen A12 - A15 des Adressbusses zusammen mit dem VMA Signal der CPU durch U13 (74LS30) logisch NAND verknüpft. Führen diese Leitungen einen High-Pegel, liegt an der Memory Enable Leitung am Ausgang von U13 (Pin 8) ein Low und die /CS Leitung des Sound-ROM auf dem AS 2518-56 wird über den eingelegten Jumper ‚J’ freigegeben.

Auszug aus dem Stromlaufplan des Vocalizer-Boards

Der Jumper ‚E‘ ist generell nicht gesetzt und wurde im Laufe der Produktion auf dem Board auch nicht mehr als solcher gekennzeichnet. Pin 2 liegt daher ständig über R26 auf High-Pegel. Somit werden im Prinzip nur die Adressleitungen A12 – A15 und VMA berücksichtig und miteinander NAND-verknüpft.

Hinweis: Ist das AS 2518-56 in dieser Betriebsart nicht mit dem Vocalizer-Board verbunden oder auf dem Vocalizer-Board besteht ein Fehler im Bereich der Spannungsversorgung oder Adressdekodierung um U13, dann hat das AS 2518-56 durch die fehlende Adressierung für U4 keinerlei Funktion. 

Sowohl beim XENON als auch beim early FLASH GORDON wurde auf dem AS 2518-56 jeweils ein Sound-ROM mit einer Kapazität von 4kB eingesetzt. Dadurch ergeben sich dort folgende Adressbereiche:

Da sich der Adressbereich des ROM im oberen 4kB Bereich des Adressraumes befindet, ist sichergestellt, dass nach dem Einschalten die beiden Adressen FFFEh und FFFFh mit der Startadresse des Programmes sowie die Startadressen der Interrupt-Routinen gelesen werden können.

Troubleshooting:

Nach dem Anlegen der Versorgungsspannung und Wechsel der /Reset-Leitung nach High greift der Prozessor auf die Adressen FFFEh und FFFFh zu, wo sich bei korrekter Adressdekodierung die beiden letzten Speicherstellen des (EP)ROM befinden und beginnt mit der Programmabarbeitung. Der PIA wird mit den, für den normalen Betrieb notwendigen Daten initialisiert und es wird eine verschachtelte Schleife mit 50 x 125288 cycles durchlaufen, um den langsameren Bootvorgang der MPU abzuwarten. Während dieser Zeit (etwa 7 Sekunden) findet eine Aktivität auf der VMA Leitung statt, die eine mittlere Spannung von ca. 2.5 VDC an TP4 erzeugt.  Nach Ablauf dieser Zeit stoppt der Programmablauf, da ein Wait for Interrupt aufgerufen wird und VMA an TP4 fällt auf 0 VDC ab. Nun ist das Soundboard bereit, Sound-Interrupts vom MPU-Board zu empfangen und die, über die Sound Select Leitungen angeforderten Audio- bzw. Sprachsignale zu generieren. Bei einigen Modellen initiiert die MPU nach einem erfolgreichen Bootvorgang bereits einen kurzen Testsound.  Wird während der sieben Sekunden dauernden Wartezeit der rote Testknopf gedrückt, wird die Schleife unterbrochen und je nach Modell ein Ton oder eine Soundsequenz abgespielt. Anschließend wird der Wait for Interrupt aufgerufen, ohne die Schleife fortzusetzen und VMA an TP4 fällt entsprechend früher auf 0 VDC ab. 

Weder auf dem AS 2518-51 noch auf dem AS 2528-56 ist ein Selbsttest nach dem Einschalten implementiert, was letztendlich durch eine fehlende LED zur Anzeige eines etwaigen Fehlers erkennbar ist. Auch der, auf dem Board vorhandene Test-Switch bewirkt keine direkte Überprüfung der digitalen Komponenten, sondern startet bei einigen Geräten bzw. je nach eingesetzter ROM-Version lediglich die Ausgabe eines einzelnen Tones bzw. einer Soundsequenz, woraus zu schließen ist, dass zumindest die Funktion der tonerzeugenden Komponenten auf dem Board gegeben ist.   Ein einfacher, wenn auch nicht vollständiger Test für die Ansteuerung durch die MPU kann über den Soundtest im Servicemenü (Step 04) bzw. durch setzen einer der Optionen „with Background“ im Step 18 des Servicemenüs durchgeführt werden. Im Testschritt 04 wird i.d.R. der „Game-Over“-Sound und über den Menüpunkt 18 nach dem Spielstart ein Hintergrundsound abgespielt. Ist das der Fall, kann zumindest von einem intaktem Soundboard ausgegangen werden, sofern alle Töne erzeugt werden und zum Gerät passen.

Es kann jedoch vorkommen, dass die Töne nicht hundert prozentig zum Spielablauf passen, was unter Umständen nicht sofort bemerkt wird, da sich die Sounds bei einigen Geräten bis auf ein paar kleine Abweichungen ähneln. Eine gar nicht so seltene Ursache dafür ist, dass sich ein falsches Sound-ROM auf dem Sound-Board befindet, wenn ein (Vor-) Besitzer das komplette Board getauscht und dabei nicht darauf geachtet hat, dass die ROM-Version des Austauschboards zu seinem Gerät passt.  Sofern noch ein Original-ROM auf dem Board gesteckt ist, kann anhand der dort aufgedruckten E-Nummer die ROM-Version bestimmt und mit der Tabelle weiter oben verglichen werden. Wurde das Original-ROM in der Vergangenheit bereits gegen ein selbst gebranntes EPROM getauscht und darauf nicht die E-Nummer bzw. der Flippertyp vermerkt, bleibt eigentlich nur, den EPROM Inhalt mit der Sounddatei des Gerätes (z.B. aus der IPDB) oder die Töne auditiv mit einem Gerät, bei dem man sich sicher ist, dass dort das korrekte ROM eingesetzt ist, zu vergleichen. 

Eine Unterbrechung einer der Sound-Select Leitungen durch z.B. einen (teil-)defekten U5 kann ebenfalls zu falschen, nicht zum Spielablauf passenden Tönen und zum Fehlen mehrerer Töne führen.  

Sind weder im Spiel, noch im Soundtest des Testmenüs jedoch nach dem Drücken des Test-Switch bei einem unterstützenden Sound-ROM Töne zu hören, kann erstmal von einem intakten Digital- und Analogteil für die eigentliche Sounderzeugung ausgegangen werden. 

In beiden genannten Fällen sollte die Ansteuerung seitens der MPU und die Aufbereitung der Steuersignale auf dem Soundboard überprüft werden. 

Die Vorgehensweise wird im Kapitel „Adressierung durch die MPU“ näher erklärt. 

Sind weder im Spiel, noch im Soundtest des Testmenüs der MPU und nach dem Drücken des Test-Switch bei einem unterstützenden Sound-ROM Töne zu hören, sollten als erste Maßnahme die Rahmenbedingungen geprüft werden. Dazu zählen die Spannungsversorgung, die Reset-Schaltung und die Takterzeugung, die bereits in den vorherigen Kapiteln erklärt wurden.

Als nächste Maßnahme gilt es herauszufinden, ob der Fehler im Digital- oder Analogteil zu suchen ist. Wegen der fehlenden Selbsttestroutine zur Überprüfung der digitalen Komponenten können die in der F.O. 560-3 beschriebenen Prüfungen angewandt werden. 

Hinweis: Um die Fehlersuche zu vereinfachen und ein defektes ROM schnell zu erkennen ist der Einsatz eines Sound-ROM hilfreich, das nach Druck auf den Testswitch wissentlich eine Tonausgabe unterstützt. Alternativ gibt es auf pinwiki ein Test-ROM mit einem Test-Sound, der bei Druck auf den Test-Switch erzeugt wird. Die 2kB große Datei wird in ein 2716 EPROM gebrannt und die Jumper entsprechend gesetzt:

https://www.pinwiki.com/wiki/images/f/f1/Beep.zip 

Nachdem die Spannungsversorgung, die Reset-Schaltung und das Vorhandensein des Taktsignales überprüft wurden, wird die Spannung am TP4 gemessen. Diese muss im Ruhezustand (keine Soundausgabe) 0 VDC und während einer Soundausgabe etwa 2,5 VDC betragen.   

Ist das der Fall, sollte als nächstes die Spannung im AC-Messbereich am TP6 gemessen werden. Dort beträgt die Spannung im Ruhezustand 0 VAC (keine Soundausgabe) und während der Soundausgabe etwa 0.3 VAC. Zur Prüfung an diesem TP und im weiteren Verlauf des analogen Weges ist der Einsatz eines Signalverfolgers Mittel der Wahl. Eine genaue Beschreibung zu dessen Einsatz ist dem Anhang 1 zu entnehmen.

Beträgt die Gleichspannung am TP4 während einer zu erwartenden Soundausgabe 0 VDC oder im Ruhezustand deutlich über 0 VDC, sollten als nächstes folgende Komponenten geprüft werden: 

Kontrolle der Jumper, ob diese passend zum eingesetzten ROM Typ gesetzt sind. Das Sound-ROM U4 sollte durch ein wissentlich funktionierendes Sound-ROM ersetzt werden. Bleibt der Fehler, ist die Konnektivität der Bus-Signale, die Versorgungsspannung sowie der Sockel für U4 und dessen Lötstellen zu prüfen.

Überprüfen des RAM (U10). Wird als CPU (U3) ein 6808 oder ein 6802 mit bestücktem U10 verwendet, bietet sich ein Quertausch mit einem funktionierenden RAM, z.B. U7 von / auf der MPU an, da die MPU nach dem Einschalten einen Selbsttest durchführt, den ein defekter U10 vom Sound-Board dort im Testschritt 2 nicht bestehen würde. Besteht das RAM den Selbsttestschritt auf der MPU, ist die Konnektivität der Bus-Signale, die Versorgungsspannung sowie der Sockel für U10 und dessen Lötstellen zu prüfen. 

Wird als CPU auf dem Sound-Board ein 6802 verwendet und U10 ist nicht bestückt, dann kann unter Umständen folgender Workaround helfen:  

Auftrennen von Jumper ‚A‘ (internal RAM) und Einlegen von Jumper ‚B‘ (external RAM) und stecken eines 6810 RAM in Position U10.

Sollte nun nach erneutem Sound-Test, ein Sound zu hören sein, ist der interne RAM des 6802 fehlerhaft bzw. es liegt ein Fehler in dessen interner Architektur vor.

Im Umkehrschluss kann auch ein 6808 gegen einen 6802 getauscht und das externe RAM U10 entfernt werden. In diesem Fall ist dann Jumper ‚B‘ zu entfernen und Jumper ‚A‘ zu setzen. 

Hintergrund: Es spielt keine Rolle, ob sich das RAM physikalisch in der CPU oder extern auf Position U10 befindet, solange vom Betriebssystem der Adressbereich in der Page Zero angesprochen werden kann. Die Auswahl der internen oder externen Adressierung des RAM durch die CPU erfolgt abhängig von den beiden Jumpern ‚A‘ und ‚B‘. 

Beträgt die Gleichspannung an TP4 im Ruhezustand 0 VDC und während der Soundausführung etwa 2,5 VDC, ist eine Überprüfung des PIA U2 mit Hilfe eines Quertausches mit dem PIA U10 der MPU sinnvoll. Die MPU führt nach dem Einschalten einen Selbsttest durch. Ein defekter PIA auf der Position U10 der MPU würde den Testschritt 4 nicht bestehen, was über die LED auf der MPU signalisiert würde. Besteht der PIA den Selbsttest auf der MPU und die MPU steuert über diesen PIA fehlerfrei die Switch-Matrix, Displays und die Lampen, wären als nächstes die Verbindungen zwischen dem PIA und dem PSG (U1) zu prüfen.

Sind diese Verbindungen in Ordnung, bleibt nur der Tausch des PSG U1

Prüfung der digitalen Komponenten mit Hilfe von Leon Borres Test-ROM

Eine komfortable und einfache Prüfung der Adressdekodierung für das ROM U4, den PIA U2 (incl. einer Funktionsprüfung dessen Ports), sowie einen RAM-Test für U10 bzw. des internen Zero-Page RAM einer 6802 CPU als U3 gestattet das Test-ROM von Leon Borre (R.I.P).

Auf pinwiki stehen 2 Varianten zum Download bereit: 

Das 2kB Binärfile kann auch zweimal hintereinander in die jeweils 2kB großen Speicherbereiche eines 2532 EPROM gebrannt werden. Mittels der Jumper C und D (AS 2518-51) bzw. C,D,E und F (AS 2518-56) ist der verwendete EPROM-Typ einzustellen.  Wird ein AS 2518-56 mit Hilfe des Test-ROM geprüft, ist folgendes zu beachten:

  • Das AS 2518-56 muss im AS 2518-51 Mode betrieben werden. Dazu werden neben den Jumpern für den verwendeten ROM-Typ die Jumper G und H eingelegt und der Jumper J sowie der Kondensator C27 entfernt.  
  • Das Vocalizer-Board sollte nicht mit dem AS-2518-56 verbunden werden.

Wenn die CPU funktioniert, die Jumper entsprechend eingestellt sind und die Adressdekodierung korrekt arbeitet, beginnt der Test sofort, nachdem die Versorgungsspannungen angelegt wurden.  Arbeitet auch der PIA korrekt, findet sofort nach dem Einschalten ein kontinuierlicher Pegelwechsel im Sekundentakt auf den Portleitungen PA0-7, PB0-7, CA2 und CB2 des PIA statt. Eine Überprüfung kann mit Hilfe eines Logic-Probes, oder im einfachsten Fall mit Hilfe einer LED mit einem 470 Ohm Vorwiderstand an allen genannten Portleitungen des PIA und an den mit diesen verbundenen Leitungen des PSG erfolgen.

Die Kathode der LED wird dazu mit dem GND-Testpunkt TP3 verbunden und die Anode über den genannten Vorwiderstand an die zu prüfende Portleitung gehalten. 

Leons Test-ROM beinhaltet zudem einen RAM-Test. Dazu wird während des Blinkens des Logic-Probes bzw. der Test-LED der rote Testswitch auf dem Soundboard gedrückt. Die LED verharrt daraufhin in ihrem aktuellen Zustand und beginnt bei intaktem RAM U10 bzw. des internen Zero-Page RAM in U3 nach ca. 2 Sekunden wieder zu blinken. Wird während des RAM-Tests ein Fehler festgestellt, bleibt das Blinken der Test-LED aus und sie behält den vorherigen Zustand (dauernd „AN“ oder „AUS“).

Ist die Prüfung der PIA-Ports und der RAM-Test i.O., kann davon ausgegangen werden, dass die Rahmenbedingungen (Spannungen, Reset-Leitung, Takt) gegeben sind und die CPU, die Adressdekodierung für das ROM, das RAM und der PIA fehlerfrei arbeiten. Liegt nun nach Einsatz eines wissentlich intakten Sound-ROMs kein analoges Signal am TP6, wäre der PSG U1 zu tauschen.

Treten keine Signalwechsel an den PIA-Ports auf, sind als erstes die Rahmenbedingungen (Spannungen, Reset-Leitung, Takt, Jumper) zu prüfen. Sind diese gegeben, empfiehlt sich ein Quertausch des PIA und des RAM mit U10 und U7 auf der MPU. Arbeiten diese auf der MPU, sind die Versorgungsspannungen am ROM, RAM und PIA sowie deren Bussignale auf Konnektivität zu prüfen. Letztendlich bleibt als Fehlerquelle noch U6. 


Bus Associated Signals

Die nachstehende Tabelle zeigt die Bus-Signale der CPU und der direkt mit diesen verbundenen Punkten. Abhängig von dem Ergebnis der Messungen und / oder Leons Test-ROM können die Verbindungen zwischen den betroffenen Komponenten mit Hilfe eines DMM im Durchgangstest auf Konnektivität oder Berührungen untereinander überprüft werden. Ebenso ist eine Überprüfung im Betrieb mittels eines Logic-Probe hilfreich. An allen in einer Reihe der Tabelle angegebenen Punkten liegt das gleiche Signal bzw. zeitgleich dessen Pegel. Die Klammern geben die beteiligten Jumper an. Farben: blau nur beim AS 2518-51, rot nur beim AS 2518-56, schwarz beide

Die nicht aufgeführten Verbindungen zwischen den IC ohne CPU-Bezug können dem Schaltplan entnommen werden und sollten im Fehlerfall ebenfalls auf Konnektivität bzw. Berührung untereinander geprüft werden. Das gilt auch für die Spannungsversorgung der einzelnen IC.  

Hinweis: Die Verbindungen sollten immer direkt von oben am jeweiligen IC-Anschluss geprüft werden, damit die IC-Sockel und deren Lötstellen in der Überprüfung enthalten sind.

Adressierung durch die MPU

Damit die MPU das Sound-Board ansprechen und notwendige Steuerinformationen übermitteln sowie die zu generierenden Soundsignale anfordern kann, generiert sie über die Sound Interrupt Leitung (J1 Pin 8) einen L-H Wechsel. Dieser Impuls wird dem CA1 Pin des PIA U2 zugeführt. Der PIA teilt der CPU per Interrupt mit, dass nun seitens der MPU die Adressierungsdaten für die Sound- / Sprachgenerierung an den Sound Select Leitungen bereitgestellt werden. Es stehen sechs Sound Select Leitungen an J1 (Pins 1,2,3,4,12,13) zur Verfügung. Von diesen sechs Leitungen werden jedoch nur die Leitungen A – E verwendet, was einer Auswahlmöglichkeit zwischen 32 möglichen Steuer-, Sound- sowie beim AS 2518-56 mit Vocalizer auch Sprachkombinationen ermöglicht. Die 6. Leitung mit der Bezeichnung ‚Spare‘ (J1 Pin 13) wurde von den Bally-Entwicklern wahrscheinlich als Reserve für eine spätere Erweiterung des Adressraumes auf 64 mögliche Kombinationen vorgesehen, was jedoch so nie umgesetzt wurde. 

Die direkte Adressierung mittels 5 Bits wurde im Laufe der Produktion auf eine 8 Bit Adressierung erweitert. Dazu werden 2 x 4 Bit (= 2 Nibbles) nach Erzeugung eines Sound-Interrupts innerhalb eines fest vorgegebenen Timings über die Sound-Select Leitungen A-D an das Soundboard gelegt. Das ist bei Geräten mit 7-stelligen Player Displays der Fall, da dort die Sound Select E zur Ansteuerung der siebten Digit Enable Leitung verwendet wurde und somit nicht mehr für die Soundauswahl zur Verfügung stand. 

Wurde eine ungültige, nicht verwertbare Information empfangen, wird diese verworfen. Ansonsten wird die Information zur Einstellung des Soundboards sowie zur Generierung des Soundeffektes weiterverarbeitet. Es erfolgt keine Quittierung (z.B. in Form eines Acknowledge) zurück zur MPU ob eine gültige, ungültige oder keine Information erhalten wurde.

Wichtig zu wissen ist die Tatsache, dass auf diesem Weg keine Sound- oder Sprachdaten von der MPU zum Sound-Board gelangen, sondern nur die Adressen der Aktionen, Töne, Geräusche sowie Voice-Fragmente (nur AS 2518-56 + Vocalizer), die auf den Soundboards erzeugt werden. Dadurch beschränkt sich die Kommunikation zwischen der MPU und dem Sound-Board auf ein Minimum. 

Auszug aus dem Stromlaufplan mit der Schnittstelle zur MPU.

Die an J1 ankommenden Sound Select Signale werden über je eine invertierende Treiberstufe von U5 geführt und direkt an den PSG U1 geleitet und dort verarbeitet. 

Hinweis: Die Sound Select Leitungen A – D werden durch die PB0 bis PB4 Pins und die Sound-Interrupt Leitung durch CB2 des PIA U11 auf dem MPU-Board gesteuert. Diese Pins steuern gleichzeitig die Spulentreiber für die momentary solenoids auf dem Solenoid Driver Board. Führt die Sound-Interrupt Leitung Low-Signal, wird das Solenoid Driver Board angesprochen. Nur bei einem Low/High Wechsel wird das Sound-Board adressiert. Die Steuerung der Spulen hat Priorität. Liegt zeitgleich eine Anforderung an das Solenoid-Driver-Board zur Aktivierung einer Momentary Solenoid an, wird eine Soundanforderung unterdrückt bzw. im Nachgang gestellt..

Das zeigt auch der Verdrahtungsplan der Geräte, in dem ein AS 2518-51 (-56) zum Einsatz kommt. Die Signalleitungen von der MPU A4 J4 Pins 1,2,3,4,10 verlaufen zum Sound-Board A8 J1 Pins 1,2,3,4,8 und 12 und von dort weiter zum SDB A3 J4 Pins 6,5,4,3,7. Wichtig in diesem Zusammenhang ist zu wissen, dass bei einem Fehler an einer oder mehrerer dieser fünf Leitungen zwischen MPU und dem Sound-Board nicht nur die Adressierung des Sound-Boards, sondern gleichzeitig auch die Spulenadressierung fehlerhaft wäre. 

Die korrekte Verbindung zwischen MPU und Sound-Board lässt sich mit einer Widerstandsmessung feststellen. Dazu wird im spannungsfreien Zustand der Widerstand der Sound-Select Leitungen zwischen deren Pin am PIA U11 auf der MPU und deren jeweiligen Eingangspin von U5 auf dem Soundboard gemessen. Jede Sound-Select Leitung wird über einen Widerstand auf der MPU, den dortigen Steckverbinder und dem Kabelbaum zum Sound-Board geführt, um dort wieder über den Steckverbinder und einem Widerstand zu U5 zu gelangen. Bei der Sound-Interrupt Leitung wird der Widerstand zwischen Pin 19 des PIAs U11 auf der MPU und dem CA1-Pin (40) am PIA U2 auf dem Soundboard gemessen.

Für die Sound-Select Leitungen A – D und der Sound-Interrupt Leitung ergibt sich bedingt durch die beiden Widerstände ein Streckenwiderstand von jeweils 10,47 KOhm, bei der Sound-Select Leitung E beträgt dieser 11,2 KOhm.

Die Funktion von U5 kann mittels eines Logic-Probes ermittelt werden. Am Ausgang eines invertierenden Buffers muss der invertierte Pegel vom dazu gehörenden Eingang erscheinen. Liegt z.B. am Eingang U5-7 ein Low-Pegel, führt der Ausgang U5-6 einen High-Pegel und umgekehrt.

Hinweis: Die Beschaltung der Gatter von U5 sind beim AS 2518-51 und AS 2518-56 unterschiedlich. Die letzten Spalte der Tabelle zeigt die Eingangspins der Gatter beim AS 2518-56 in roter Schrift.

Auszug aus dem Verdrahtungsplan für den Stecker J1 vom Sound-Board

Es ist ersichtlich, dass die Sound-Interrupt Leitung und die Sound Select Leitungen A – D von der MPU kommen und zum SDB weitergeführt werden. Die Sound Select Leitung E endet am Sound-Board. Die vorgesehene 6. Sound Select Leitung (Spare) ist am Stecker J1 Pin 13 des Sound-Board nicht verdrahtet und mit N/U bezeichnet.

Prinzip der Soundgenerierung beim AS 2518-51 und AS 2518-56

Erhält die CPU seitens des PIA eine Interrupt Anforderung, liest sie über dessen I/O Port A die Nummer der von der MPU angeforderten Sound- oder Voice-Anforderung aus dem I/O-Register des AY-3-8910 (PSG). In der Regel gilt, dass die Sounds im Rahmen eines unmaskierten Interrupts verarbeitet werden. Das bedeutet, dass ein neu angeforderter Sound einen aktuell sich in der Wiedergabe befindlichen Sound unterbrechen kann. Voice-Anforderungen (beim AS 2518-56) und einige Soundanforderungen werden jedoch im Rahmen eines maskierten Interrupts verarbeitet, was deren Unterbrechung durch einen, während deren Abarbeitung auftretenden, neuen Interrupt verhindert. 

Die Sound-Nummern 0 bis 4 werden jeweils über eine eigene, im 6800-Assemblercode geschriebene Routine abgehandelt. Bei diesen Nummern kann es sich neben Sounds auch um Befehle zur Steuerung des SB handeln, z.B. Steuerung des Background Sound oder alle Sounds OFF.. Würde diese Methode jedoch für die Generierung aller Töne und Melodien angewandt, würde das gerade bei den 2kB ROMs den dort zur Verfügung stehenden Speicherplatz sprengen. Um die Sounds mit den Nummern > 4 zu generieren, wurde deshalb eine Routine geschrieben, die mittels eigener Befehle die erforderlichen Parameter an die Register des PSG übermittelt. Jedem Befehl ist dazu eine eigene Sub-Routine zugeordnet. Das ist vom Prinzip her mit einem Basic-Interpreter vergleichbar, wie er in Home-Computern verwendet wurde. Ein Basic-Programm besteht aus einzelnen Befehlen (Anweisungen) und deren Parameter, die nacheinander durch den Interpreter abgearbeitet werden. Beim Sound-Board gibt es insgesamt 16 interne Anweisungen (00h-0Fh). Jede Anweisung besteht aus ihrer zugeordneten Nummer und optional bis zu 3 möglichen Datenfeldern, die Parameter für die PSG-Register und / oder deren Verarbeitung enthalten. Die zur Generierung eines Sounds benötigten Anweisungen werden tabellarisch im Sound-ROM vorgehalten und bei einer Anforderung step by step durch den Interpreter abgearbeitet. Eine Anweisung kann neben den Werten für die Register des PSG auch damit im Zusammenhang stehende, arithmetische Operationen, bedingte sowie nicht bedingte Sprünge innerhalb der Befehlstabelle oder Verzweigungen zu Unterprogrammen samt einer Rückkehr durchführen. Dazu verfügt der Interpreter über einen eigenen Stack und einen, von dem des Prozessors unabhängigen Programmzähler. Neben dem geringeren Speicherplatz hatte dieses Prinzip den Vorteil, dass sich die Anpassung der Töne und Geräusche für ein neues Flippermodell lediglich auf die notwendigen Änderungen in den Befehlstabellen beschränkte. 

Das folgende Flussdiagramm zeigt den Ablauf auf dem AS 2518-51 und AS 2518-56:

Nach dem Einschalten initialisiert die CPU den PIA. Die CPU wartet auf einen Interrupt, der von der MPU bei einer Soundanforderung über die Sound-Interrupt Leitung generiert wird. Die angeforderte Soundnummer wird über die Sound-Select Leitungen eingelesen und bewertet. Ist die Soundnummer <= 4, werden für diese Anforderung explizit geschriebene Assemblerroutinen abgearbeitet, die z.B. direkt die Register des PSG beschreiben und die Soundausgabe starten. Ist die Soundnummer > 4, wird die Steuerung dem Interpreter übergeben, der anhand der Einträge in der, dem Sound zugeordneten Befehlstabelle die Parametrisierung und Steuerung des PSG übernimmt.

Erzeugung des Backgroundsounds

Im Verlauf der Produktion wurden zwei Varianten zur Erzeugung des Backgroundsounds angewendet:

1. Kontinuierliche Anforderung:

Nach dem Kugelauswurf fordert die MPU in regelmäßigen Abständen eine Soundsequenz an. Die Abstände entsprechen dabei der Länge der Soundsequenz. Die einzelnen Soundsequenzen ergeben aneinandergereit den Backgroundsound.

Beispiel Rolling Stones:

Die MPU sendet ca. alle 600ms die Adresse für diese Soundsequenz. 

Wird währenddessen ein anderer Sound, z.B. infolge einer Kontaktbetätigung, angefordert, wird dessen Adresse übertragen und im Anschluss die kontinuierlichen Anforderungen für den Backgroundsound fortgesetzt.

Diese Art der Erzeugung des Backgroundsounds wurde bei den Geräten mit 6-stelligen Displays und Einstellung der Soundoptionen über die DIP-Schalter auf der MPU angewendet.


2. Einmalige Anforderung

Bei den späteren Geräten mit 7-stelligen Displays und Einstellung der Soundoptionen über das Servicemenü (Menüpunkt 18), erfolgt eine einmalige Anforderung des Backgroundsounds nach dem Kugelauswurf. Die Fortsetzung nach einer Unterbrechung durch einen anderen Sound erfolgt bei diesen Geräten durch das Soundboard selber. Um einen Backgroundsound z.B. bei einem Kugelverlust zu stoppen, sendet die MPU  in dem Fall ein Stop-Befehl.Da es bei diesen Geräten keine Sound-E Leitung mehr gibt, hat sich die Adressierung geändert. Die MPU sendet die Adressen für Befehle, einzelne Töne und einfache Soundsequenzen nicht mehr als eine Information über 5 Bit, sondern in der Form von zwei aufeinanderfolgenden 4 Bit Infomationen (Nibbles) innerhalb eines fest vorgegebenen Timings. Das Prinzip wurde bei den folgenden Soundboards (S&T, Cheap Squeak) übernommen und wird in deren Theory of Operations im Detail erklärt.


Prinzip der Sprachgenerierung beim AS 2518-56 mit Vocalizer

Auch die, von der MPU angeforderten Voice-Fragmente werden durch, im 6800-Assemblercode geschriebene Routinen verarbeitet, die sich im erweiterten Adressraum auf dem Vocalizer-Board befinden. Die Adressen der einzelnen Voice-Fragmente befinden sich ebenfalls innerhalb des durch die MPU adressierbaren Bereiches. Sie sind mit je einer Startadresse und der Anzahl der, ab dieser Startadresse für dieses Fragment zu verarbeitenden Bytes aus den ROMs des Vocalizer-Boards versehen. Die Routine liest die Voice Daten Byte für Byte aus den ROMs und wandelt diese in einen seriellen Datenstrom, den sie zusammen mit einem dazu synchronen Taktsignal wieder zum Vocalizer Board sendet. Dort erfolgt die Demodulation zu einem analogen Sprachsignal. Dieses wird zum AS 2518-56 geleitet und der sich darauf befindlichen Endstufe zugeführt. 

Der programmierbare Sound Generator (PSG) AY-3-8910

Mit Hilfe des PSG werden softwaregesteuert die für diese Generation typischen Töne, Geräusche und Melodien erzeugt. Wie bereits erwähnt wird der PSG über den PIA U2 von der CPU gesteuert. Die CPU liest und beschreibt über Port A des PIA die 16 genutzten internen Register des PSG. 

Die 16 internen Register des PSG AY-3-8910:

Da beim AS 2518-51 und AS 2518-56 nur Port A genutzt wird, sind die Portleitungen IOB0 bis IOB7 nicht verbunden, was im Schaltplan durch N/C gekennzeichnet ist.

Die Adressierung der Register sowie das Übertragen deren Inhalte werden über den Datenbus des PSG (D0 – D7), der mit Port A (PA0 - PA7) des PIA U2 verbunden ist, durchgeführt. Mit den Signalen BC1 (PB0 vom PIA) und BDIR (PB1 vom PIA) wird gesteuert, ob die Daten an PA0 - PA7 Adressinformationen oder Registerinhalte darstellen und ob ein Schreib- oder Lesezugriff erfolgt. Der /RST Eingang ist mit der /Reset Leitung der CPU verbunden und sorgt für einen definierten Ausgangszustand nach dem Einschalten. Über den TTL-kompatiblen CLK Eingang, der mit der Taktleitung ‚E‘ der CPU verbunden ist, erhält der PSG seinen Referenztakt zur Steuerung der internen Synthesizer.  

Fordert die MPU einen Sound an, gelangen die Sound Select Informationen über je einen invertierenden Buffer von U5 an die I/O Pins des PSG. Diese I/O Pins werden im Register 14 des PSG gepuffert und dort von der CPU über den PIA U2 ausgelesen. Diese 8 Bit sind keine direkten Sounddaten, sondern eine von 32 möglichen Adressen, anhand deren die CPU die zugeordneten Aktionen zur Sounderzeugung ausführt. Diese Aktionen und notwendigen Daten zur Soundgenerierung sind im Sound-ROM hinterlegt, werden dort ausgelesen und generieren die Daten für den PSG. Diese werden über den nun als Ausgang deklarierten Port A des PIA U2 in die Register des PSG geschrieben. Anhand dieser Werte generiert der PSG durch die drei, im PSG enthaltenen und unabhängig voneinander arbeitenden Synthesizer A, B und C die Töne bzw. Geräusche. Die drei Synthesizer-Ausgänge liefern an den Pins 1,4 und 38 rechteckförmige Analogsignale, die durch Parallelschaltung ein Summensignal bilden. Dieses Summensignal ist an TP6 messbar. Durch leichtes Verbiegen der Pins 1,4 und 38 können diese aus der Fassung genommen und einzeln mit Hilfe eines Signalverfolgers auf vorhandene Signale geprüft werden. Die Funktion des PSG lässt sich aber am besten durch Quertausch mit einem wissentlich funktionierenden PSG von einem intakten Board prüfen, da es keine Auflistung gibt, welche der drei Synthesizer wann einen Ton generieren. Da Rechtecksignale recht hart klingen, wird das Ausgangssignal des PSG über C1 zu einem Tiefpassfilter mit einer Grenzfrequenz von 3,5 kHz und einer Dämpfung von 12 dB / Oktave geleitet. Das Tiefpassfilter wird mit einem der vier Verstärker von U8 (LM3900) und dessen Beschaltung gebildet. Die Grenzfrequenz kann von der CPU über den CB2 Pin vom PIA U2 durch die Ansteuerung von Q1 auf 200 Hz reduziert werden, um spezielle Soundeffekte mit niedrigen Frequenzen erzeugen zu können. Ein durch einen Defekt kurzgeschlossener Q1 würde einen durchweg dumpfen Klang erzeugen und ein nicht durchsteuernder Q1 ausschließlich hohe Töne. Das gefilterte und nun harmonischer klingende Soundsignal steht an Pin 4 von U8 zur Verfügung.

Auszug aus dem Stromlaufplan: Tiefpassfilter für das Audiosignal des PSG

Lautstärkeregelung und Endstufe (Amplifier)

Folgende Abbildung zeigt die Schaltung der Audioendstufe um den TDA2002 (U9). Das Soundsignal gelangt vom Lautstärketrimmer kommend über C5 auf den nicht invertierenden Eingang von U9. Das von U9 verstärkte Soundsignal wird über den Spannungsteiler R7 / R8 und über C7 auf den invertierenden Eingang von U9 zurückgekoppelt und gleichzeitig über C8 an J2 Pin 2 in Verbindung mit J2 Pin 1 zum Anschluss des 8 Ohm Lautsprechers bereitgestellt. C9 und R9 bilden ein so genanntes Boucherot- oder Snubber-Glied zur Verhinderung von wilden HF-Schwingungen am Ausgang von U9. Der Auszug stammt von einem AS-2518-56. Im Gegensatz zum AS2518-51 besteht bei diesem Board zusätzlich die Möglichkeit, ein vom Vocalizer-Board AS2518-57 generiertes, analoges Sprachsignal einzuspeisen. Das Sprachsignal gelangt über R28 zum Trimmpotentiometer für dessen Lautstärkeeinstellung und wird über R29 und C25 ebenfalls auf den nicht invertierenden Eingang von U9 geleitet, wo es auf das, über C5 kommende Soundsignal trifft. Beim AS 2518-51 ist daher der rot umrandete Bereich nicht vorhanden.

Auszug aus dem Stromlaufplan: Die Audio-Endstufe

Das AS 2518-57 “Vocalizer Board”

Spannungsversorgung

Auf dem Vocalizer-Board wird eine Versorgungsspannung von +5V benötigt. Diese wird mittels eines +5V Spannungsreglers aus den Unreg. +5V (ca. 12V) gewonnen und ist am TP2 gegen TP1 (GND) messbar. Unreg +5V wird über die Pins 33 (34) und Unreg +5V Return über die Pins 29 (30) von J1 vom Soundboard zur Verfügung bereitgestellt. Unreg. +5V Return ist auch auf dem Vocalizer-Board nicht mit der Board-Masse (GND) verbunden, welche über die Pins 39 und 40 zum Vocalizer-Board gelangt. Diese Verbindung ist wiederrum auf dem SDB A3. Ob beide Verbindungen zum SDB bestehen, kann mit einer Widerstandsmessung bzw. Durchgangsprüfung zwischen TP1 und dem – Pol von C25 ermittelt werden.

Auszug aus dem Stromlaufplan

Die Unreg. +5V gelangen von J1 Pin 33 (34) über die Dioden CR1 – CR3 zum Eingang des +5V Spannungsreglers Q1. Die geregelten +5V am Ausgang des Spannungsreglers sind an TP2 gegen TP1 (GND) messbar. Ansonsten sollte als erstes gemessen werden, ob an den Anschlüssen von C18 ca. 10V anliegen. Ist das nicht der Fall, sollten die Dioden CR1 – CR3 geprüft werden. Anode CR1 gegen TP1: ca. +12V, Anode CR2 gegen TP1 ca. 11,3V, Anode CR3 gegen TP1 ca. 10,6V. Je nach Messergebnis lässt sich so der Defekt bestimmen. 

Die Leistungsaufnahme des Vocalizer-Boards ist bei Verwendung der Original-ROMs mit ca. 7 Watt relativ hoch, so dass die drei Dioden und der Spannungsregler im Normalbetrieb sehr heiß werden, was letztendlich deren Lebensdauer verkürzen kann.

Drahtbrücken-Kombinationen für verschiedene (EP)ROM-Typen:

Jede der Positionen U1 – U7 besitzt vier Jumper (A – D), mit denen der (EP)ROM Typ bzw. dessen Größe eingestellt werden kann. Die Einstellung erfolgt somit für jede Position individuell, so dass ein Mischbetrieb möglich ist.

Jumper A & D gesetzt         :           9316 ROM, 2716 EPROM (wurden nicht verwendet)

Jumper B & D gesetzt         :           9332 ROM, 2532 EPROM (Lieferzustand)

Jumper A & C gesetzt         :           2732 EPROM (Alternative beim ROM-Tausch)

Für den Steckplatz U8 ist keine Anpassungsmöglichkeit vorgesehen worden.


Adressdekodierung auf dem AS 2518-57 (Vocalizer-Board)

Die Adressdekodierung für die acht ROM-Steckplätze U1 bis U8 und der damit verbundenen Erweiterung des ROM-Bereiches auf max. 32kB (incl. U4) wird mittels eines 32x8 Bit PROM mit der internen Part-Nummer E720-44 realisiert. Dessen Programmierung ist so ausgelegt, dass die 16 möglichen Werte, die mit den Adressleitungen A11 – A14 abgebildet werden können, zusammen mit einem High-Pegel auf der Adressleitung A15 jeweils nur eine der acht Datenleitungen (DO1 – DO8 = E1 – E8) auf einen Low-Pegel legen, wenn gleichzeitig der Datenbus mittels eines Low-Pegels auf der /VMA Leitung am /CS Eingang freigegeben ist. Jede Leitung des Datenbusses ist mit dem /Select-Eingang Pin 20 des zugeordneten (EP)ROMs verbunden. 

Auszug aus dem Stromlaufplan: Adressdekodierung für die (EP)ROMs

U9 ist ein programmierter 74188A oder alternativ ein 82S23. Die beiden Adressleitungen A11 und A15 der CPU sind am Eingang des Vocalizer-Boards direkt nach J1 jeweils über zwei hintereinander geschaltete, invertierende Buffer von U12 geführt und im weiteren Verlauf als A11B und A15B gekennzeichnet. Das 32x8 PROM besitzt open collector Ausgänge an seinem Datenbus. Aus diesem Grund sind die Pull-Up Widerstände R17 bis R24 verbaut. 

Auszüge aus dem Stromlaufplan: 

Am linken Beispiel (U1) ist ersichtlich, dass dessen /Select-Eingang Pin 20 mit der Leitung E1 vom PROM für die Adressdekodierung verbunden ist. Der /Select-Eingang von U2 ist dann mit E2 verbunden, U3 mit E3 … Das setzt sich bis U8 so fort. Über die Jumper A – D wird für jede Position von U1 – U7 der verbaute EPROM-Typ und damit auch dessen Größe festgelegt. 

Mitte: U8 besitzt keine Jumper, um den ROM-Typ einstellen zu können. Durch die feste Verdrahtung des Pin 21 nach +5V und Pin 18 nach GND entspricht das den eingelegten Jumpern ‚A‘ & ‚D‘ bei U1 – U7, so dass dort nur ein 9316 ROM oder 2716 EPROM eingesetzt werden kann. 

Das rechte Bild zeigt die doppelte Invertierung der Adressleitungen A11 zu A11B und A15 zu A15B

Durch die erweiterte Adressierung ist der Speicherbereich nicht mehr auf die 4 kB des Sound-ROM U4 beschränkt und bietet genügend Platz für die Voice-Daten. Auch das eigentliche Programm und ggf. auch Sounddaten für den VSP wurden über den, in U4 zur Verfügung stehenden Speicherbereich erweitert und Teile davon in den ROM-Bereich des Vocalizer-Boards „ausgelagert“. Das lässt sich zum einen durch das Ergebnis einer Disassemblierung der ROM-Inhalte von U1 und U2 des XENON ROM-Satzes, sowie durch den Umstand vermuten, dass ohne U1 und / oder U2 auf dem Vocalizer-Board weder die Sound- noch die Sprachgenerierung nach dem Drücken des Test-Switches funktioniert. Entfernt man jedoch ein ROM aus dem Bereich U3 - U7, werden durch die fehlenden Daten für die darin enthaltenen Voice-Fragmente lediglich undefinierte Geräusche abgespielt.

Die Binärdatei für das PROM U9 wurde anscheinend nicht veröffentlicht, lässt sich aber recht einfach rekonstruieren:

Laut der untenstehenden Tabelle dürfen E1 bis E8 nur einen Low-Pegel annehmen, wenn A15 einen High-Pegel führt d.h. im Umkehrschluss liegen E1 bis E8 auf High-Pegel, wenn A15 einen Low-Pegel führt. Somit ergibt sich für die ersten 16 Bytes des PROMs der Wert 11111111b bzw. FFh.

Sowohl beim early FLASH GORDON als auch beim XENON wurden ausschließlich 4kB ROMs verwendet. Dazu muss die Adressleitung A11 des verwendeten (EP)ROM zur direkten Adressierung der 4kB über die Jumper ‚B‘ oder ‚C‘ mit A11B verbunden sein. Dadurch ergeben sich im oberen 16 Bit Bereich des PROM acht aufeinander folgende Wertepaare mit jeweils dem gleichen Wert, von denen jedes die Umsetzung des Binärwertes von A12 – A14 auf die acht Datenleitungen E1 bis E8 enthält und zwar jeweils für A11B = High und A11B = Low. Dadurch wird gewährleistet, dass sowohl 4kB als auch 2kB (EP)ROMs sauber adressiert werden, auch wenn A11B dazu nicht zwingend ausgewertet werden müsste. Haben also A14, A13 und A12 den Wert „000“, darf am Datenbus des PROMs unabhängig vom Pegel an A11B nur E1 Low führen, was jeweils dem Wert 11111110b bzw. FEh entspräche. Haben A14, A13 und A12 den Wert „001“, darf nur E2 einen Low-Pegel führen. Das entspräche dem Wert 11111101b bzw. FDh.

Das komplette Binärfile für das 32 Byte PROM sieht dann so aus:

Adresse 00h – 0Fh: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 

Adresse 10h – 1Fh: FE FE FD FD FB FB F7 F7 EF EF DF DF BF BF 7F 7F

Neue und somit unprogrammierte 74188 oder 82S23 sind mittlerweile rar. Zudem ist ein (E)PROM-Brenner notwendig, der diese PROMs brennen kann. Alternativ kann ein EPROM (z.B. 2716) mit den Binärwerten programmiert und dessen benötigte Anschlüsse auf den Sockel von U9 adaptiert werden. Eine weitere Möglichkeit wäre z.B. der Einsatz eines 3 aus 8 Decoder / Demultiplexer (74LS138). Da wie bereits erwähnt A11B nicht zwingend berücksichtigt werden muss, können mittels A14 - A12 dessen invertierte Ausgangsleitungen und mittels A15 dessen Freigabe gesteuert werden. Dieser benötigt zwar auch eine Adaptierung auf die Anschlüsse des Sockels von U9, dafür aber keine Programmierung.   

Für die Adressbereiche der ROMs auf dem Vocalizer-Board ergibt sich nun folgende Tabelle:

Vergleicht man den Adressbereich von U8 mit dem vom U4 auf dem AS 2518-56, wird man feststellen, dass sich beide Bereiche überschneiden. Da die Adressdekodierung für U4 auf dem AS2518-56 unabhängig vom PROM U9 durch das 8fach-NAND Gatter U13 durchgeführt wird, kann der ROM-Steckplatz für U8 nicht gleichzeitig mit einem gesteckten U4 genutzt werden, da es sonst zu einem Adressenkonflikt kommen würde. Aus diesem Grund sind beim early FLASH GORDON und beim XENON auf dem Vocalizer-Board nur die ROMs U1 bis U7 bestückt. Theoretisch könnte auf U8 ein (EP)ROM gesteckt werden, wenn U4 auf dem AS 2518-56 entfallen würde. Wie bereits erwähnt, wäre jedoch dessen Größe durch die feste Verdrahtung der Pins 18 und 21 auf 2kB begrenzt. Somit wären die 4kB Sound-ROMs für den early FLASH GORDON und XENON dort nicht vollständig adressierbar

Bus Associated Signals auf dem Vocalizer-Board

Die nachstehende Tabelle zeigt die Verbindungen der Bus-Signale der CPU auf dem AS 2518-56 und den, über die Steckverbindung J3 (AS 2518-56) und J1 (Vocalizer-Board) direkt mit diesen verbundenen Punkten. Diese Verbindungen können zwischen den Komponenten mit Hilfe eines DMM im Durchgangstest auf Konnektivität oder Berührungen untereinander überprüft werden. Ebenso ist eine Überprüfung im Betrieb mittels eines Logic-Probes hilfreich. An allen in einer Reihe der Tabelle angegebenen Punkten liegt das gleiche Signal bzw. zeitgleich dessen Pegel. Eine Ausnahme bildet U12 auf dem Vocalizer. Da dieser mit je 2 seiner invertierenden Buffer in die A11 und A15 Leitungen geschleift ist, enden A11 und A15 eingangsseitig an U12 und werden von dort als neue Signale A11B und A15B fortgesetzt. Das gleiche gilt für die VMA Leitung, in deren Verlauf ein invertierender Buffer von U12 geschleift ist und /VMA generiert. Die nicht aufgeführten Verbindungen zwischen den IC ohne CPU-Bezug können dem Schaltplan entnommen werden und sollten im Fehlerfall ebenfalls auf Konnektivität bzw. Berührung untereinander geprüft werden. Das gilt auch für die Spannungsversorgung der einzelnen IC. Alle Verbindungen sollten immer direkt von oben am jeweiligen IC-Anschluss geprüft werden, damit die IC-Sockel und deren Lötstellen in der Überprüfung enthalten sind.

Spracherzeugung auf dem AS 2518-57 Vocalizer-Board

Das Vocalizer-Board erzeugt die Sprachsignale mit Hilfe des Motorola MC3517, einem „Continuously Variable Slope Delta Modulator / Demodulator” (CVSD), der sich auf Position U10 befindet. Im Folgenden wird sehr vereinfacht auf das Prinzip der Delta-Modulation eingegangen. Die genaue Funktionsweise der Modulation eines analogen Signales über einen digitalen Bitstrom in Bytes bzw. die Demodulation dieser Bytes zurück in ein analoges Signal ist insbesondere durch Maßnahmen zur Erkennung und Behandlung von Bitfehlern und der dynamischen Anpassung der Schrittweite bei einem CVSD wesentlich komplexer. 

Bei der Delta Modulation wird jeweils nur die Richtung der Signaländerung von einem Pegelwert zum nächsten zwischen zwei Takten eines Clock Signals erfasst. Dazu wird das analoge Signal in gleichmäßigen Abständen abgetastet, gespeichert und mit dem vorherigen Wert verglichen. Ist der zweite Abtastwert größer als der erste, erzeugt der Deltamodulator eine logische ‚1‘, ist der zweite Wert kleiner als der erste, erzeugt er eine logische ‚0‘ und bei einer gleichbleibenden Amplitude einen Wechsel von ‚1‘ nach ‚0' bzw. umgekehrt. Die Rasterung der Y-Achse (Pegel) ist dabei nicht linear. Dadurch erfolgt im unteren Pegelbereich, in dem die meisten Änderungen im Verlauf eines Audiosignales auftreten, eine feinere Abstufung bei der Abtastung als im oberen Pegelbereich mit wenigen auftretenden Peaks. Dieses Prinzip ist der Abtastung für die Analog- / Digitalwandlung nach dem PCM-Verfahren nachempfunden. Das bei der Modulation entstandene, digitale Bitmuster wird in 8 Bit Blöcken (= 1 Byte) in den Voice-ROMs des Vocalizer-Boards zur Spracherzeugung vorgehalten. 

Um das Sprachsignal zu rekonstruieren, werden die dazu benötigten Daten byteweise aus dem Voice-ROMs gelesen und bitweise mit der gleichen Taktfrequenz, wie sie bei der Modulation verwendet wurde, zum Demodulator gesendet. Dieser rekonstruiert ausgehend von einem Referenzwert und anhand der folgenden Richtungsbits sowie den vorgegebenen Pegeltabellen das analoge Sprachsignal. Da ein Bit erst nach einer Bewertung der nachfolgenden Bits in einen Spannungswert gewandelt werden kann, ergibt sich eine Verzögerung bei der Wandlung, die aber ggf. nur bei einer Modulation mit anschließender direkter Übertragung und Demodulation in Echtzeit zu berücksichtigen wäre.

Im Vergleich zu einer A/D-Wandlung nach dem PCM-Verfahren liegt der Vorteil bei der Delta-Modulation in der wesentlich reduzierten Datenmenge, was sich auf den, zur Speicherung notwendigen Speicherplatz (= ROM-Bereich) auswirkt. Beim PCM-Verfahren wird ein Sprachsignal in der Regel mit einer Frequenz von 8 KHz abgetastet und bei jeder Abtastung in einen 8-Bit Digitalwert gewandelt. Dadurch ergibt sich ein Datenvolumen von 64 kb = 8 kB pro Sekunde. Die Delta-Modulation codiert mit 1 Bit pro Abtastung, so dass ein mit 8 KHz abgetastetes Audiosignal ein Datenvolumen von 8 kb = 1 kB pro Sekunde erzeugt. Generell gilt: Je höher die Taktfrequenz bei der Abtastung im Rahmen der Modulation ist, desto höher ist die Qualität des, aus diesen Daten wieder zurückgewonnen Signales. Daher wird bei der Delta-Modulation mit einer höheren Abtastrate gearbeitet. Durch die zeitlich recht kurzen Voice-Fragmente ergibt sich trotzdem eine Datenmenge, die sich in den ROMs auf dem Vocalizer-Board unterbringen lässt. 

Die bei der Delta-Modulation erreichbare Qualität des demodulierten Signales ist nicht zuletzt wegen des relativ niedrigen Signal- / Rauschabstandes etwas schlechter als bei einem, zu einem analogen Signal rückgewandelten PCM-Signal. Dennoch wird beim Vocalizer-Board eine gute Qualität erreicht. 

Die Voice-Daten werden in den ROMs auf dem Vocalizer-Board vorgehalten und bei Bedarf von der CPU auf dem AS 2518-56 gelesen und über den PB7 Port des PIA U2 in Form eines seriellen Bitstromes über die Digital Input Leitung zurück zum Vocalizer-Board an den CVSD zur Rekonstruktion des Voice-Signals gesendet. Der Bitstrom ist an TP4 messbar.  

Gleichzeitig erzeugt die CPU das zum Bitstrom synchrone Taktsignal am PB6 Port des PIA. Auch dieses Signal wird über die Speech- Clock Leitung zum CVSD auf dem Vocalizer-Board geleitet und ist dort an TP5 messbar. 

Das vom CVSD erzeugte analoge Ausgangssignal steht an dessen Pin 7 zur weiteren Verarbeitung bereit. Die Umwandlung der Sprachdaten durch den CVSD hat einen unerwünschten Nebeneffekt zur Folge: „Digital Conversion Noise“. Dabei handelt es sich um Oberwellen, die durch die fehlenden weichen Übergänge zwischen den einzelnen Spannungswerten der rekonstruierten Signalkurve entstehen. Um diese Oberwellen zu dämpfen und dadurch ein „kurvigeres“, weniger Oberwellen behaftetes Signal zu erhalten, wird das Ausgangssignal des CVSD zu einem mehrstufigen Tiefpassfilter / Vorverstärker geleitet, die aus dem vierfach Operationsverstärker MC3403 (U11) und dessen Beschaltung aufgebaut ist. Das gefilterte und nun harmonischer klingende Sprachsignal steht am TP3 zur Verfügung und wird über J1 Pin 28 zur Endstufe des AS 2518-56 geleitet.

Der Auszug aus dem Stromlaufplan des Vocalizer-Boards zeigt rechts den, als Demodulator arbeitenden CVSD MC3417 (U10) und links davon die Filter- / Verstärkerschaltung um den MC3403 (U11)

Am Beispiel des XENON wurden in der englischen Sprachversion folgende Voice-Fragmente mit Hilfe der Delta-Modulation digitalisiert und in den ROMs des Vocalizer-Boards zur Spracherzeugung vorgehalten:

  1. "XENON"              Roboterstimme, männlich 
  2. "XENON"              Höhere Qualität, weiblich 
  3. "Aaaah"                weiblich, erotisch klingend 
  4. "Aah!"                   weiblich 
  5. "Oow!"                  männlich 
  6. "Enter XENON"    männlich 
  7. "Two"                    weiblich 
  8. "Welcome To"       weiblich 
  9. "XENON"              weiblich 
  10. "Try"                     weiblich 
  11. "Me Again"           weiblich 
  12. "Tube Shot"          weiblich 
  13. "One"                   weiblich 
  14. "Exit"                    weiblich 

Je nach gewünschter Sprachsequenz wird die Sprachausgabe aus einem oder mehreren, hintereinander folgenden Fragmenten zusammengesetzt. Die MPU fordert somit jedes Fragment einzeln an:

Münzeinwurf:                     „Aaaah“                                         =        Fragment 3                           Beim Start des Multiball:    "XENON - Exit one - Exit two"      =        Fragment 9+14+13+14+7

Der Test-Switch

Sowohl auf dem AS 2518-51 als auch auf dem AS 2518-56 befindet sich jeweils am oberen Rand der Test-Switch SW1. Vorausgesetzt das Board befindet sich nach dem Einschalten in einem betriebsbereiten Zustand, wird bei einigen Geräten nach Drücken des Test-Switch unabhängig von einer Ansteuerung durch die MPU ein Ton oder eine Soundsequenz erzeugt. Bei einigen Sound-ROMs wechselt dieser Testsound nach jedem Druck auf den Switch. Beim AS2518-56 mit Vocalizer-Board kommen werden die Sprachsequenzen sowie eine Soundsequenz abgespielt. Eine unangenehme Eigenschaft kann nach dem Druck auf den Switch auftreten: Der Switch schaltet direkt GND auf den /NMI-Eingang der CPU. Eine Entprellung wurde seitens der Entwickler nicht getroffen, was zur Folge haben kann, dass die CPU bei einem mehrere Jahrzehnte alten Switch bei einem Druck durch die fehlende Entprellung mehrfaches Drücken erkennt. Jedes Mal, wenn die CPU die Interrupt-Anforderung über den /NMI-Pin erhält, werden die Registerinhalte in einen internen Stack gesichert, der Interrupt ausgeführt – also der Testsound abgespielt – und danach die Registerinhalte zurück geschrieben. Erkennt die CPU mehrere /NMI-Anforderungen, werden auch entsprechend oft die Registerinhalte gesichert. Da der Stack nur eine begrenzte Größe aufweist, kann es zu einem Stack-Overflow kommen, der eine Blockade der CPU und damit des Sound-Boards zur Folge haben kann, was nur durch Aus- und wieder Einschalten zu beheben ist. Wichtig zu wissen ist, dass es sich bei diesem sehr selten auftretenden Phänomen mehr um einen Designfehler und nicht um einen Defekt an den elektronischen Komponenten handelt. 


Kondensatoren

Einige Dokumentationen empfehlen als erste Maßnahme zur Fehlerbehebung von Soundproblemen häufig einen Tausch der Elektrolyt-Kondensatoren. Einige Ersatzteilhändler haben die Kondensatoren daher als Komplettset oder Rebuild-Kit in ihrem Angebot. Aber nicht immer ist der Verursacher einer Fehlfunktion ein gealterter, ausgetrockneter Elektrolytkondensator. Schon gar nicht ist er die Ursache für zeitweise auftretende Sound-Probleme. Entweder er funktioniert oder funktioniert halt nicht. Ein Defekt der hochkapazitiven Kondensatoren ist auch nach mittlerweile über 30 Jahren recht selten. Deren vorsorglicher Tausch ist daher in den meisten Fällen überflüssig. Kondensatoren mit kleiner Kapazität (1µF) sind eher vom Austrocknen betroffen. Auf dem AS 2518-51 und AS 2518-56 gibt es nur einen Elektrolyt-Kondensator, der in der analogen Signalleitung zwischen den Soundausgängen des PSG und der nachgeschalteten Filter- und Verstärkerstufe liegt. Ein Ausfall dieses Elektrolyt-Kondensators und der Kondensatoren C1 und C25 (nur AS 2518-56) ist mit einem Oszilloskop oder Signalverfolger / -injektor recht schnell zu erkennen. Typische Fehlerbilder: Kein Signaldurchgang oder ein verzerrtes und / oder zu leises Signal. Nachfolgende Tabelle stellt die möglichen Fehlerbilder bei defekten Elektrolyt-Kondensatoren dar:

Abschließend darf der Hinweis auf mögliche Kontaktprobleme zwischen den Platinensteckern und den Stiftleisten nicht fehlen. Nachlassender Kontaktdruck, Schmutz, Nikotin- bzw. Teerablagerungen und Korrosion sind nach der langen Zeit häufig die Ursache für zeitweise und damit relativ schwer einzugrenzende Fehler. Auch die Qualität der Lötstellen lässt im Laufe der Jahre nach. In diesem Fall ist ein Austausch der Stiftleisten und Platinenstecker (Crimpkontakte) empfehlenswert. 

Das gleiche gilt je nach Soundboard für den bzw. die beiden, in offener Bauweise ausgeführten 1kOhm Trimmer für die Lautstärkeregelung. Ist eine Nachregelung mit Unterbrechungen und Störgeräuschen verbunden, wird deren Austausch gegen eine geschlossene Bauweise empfohlen. 


Anhang 1: Fehlersuche im Analogteil mit Hilfe eines Signalverfolgers / -injektors


Beispiel 1: kein Sound, Sprache funktioniert  

Als erste Maßnahme gilt es zu prüfen, ob der Fehler im Digital- oder Analogteil des Boards zu suchen ist. Dazu wird das Gerät in den Zustand versetzt, in dem normalerweise Sound erzeugt wird. Das kann am einfachsten durch Aktivierung des Soundtests im Testmenü oder des Background-Sound im Testmenü (Step 18 auf 03) und starten eines Spieles erfolgen. Auch die Betätigung von Kontakten hat in der Regel einen Sound zur Folge.

Im nachfolgenden Ausschnitt des Stromlaufplanes eines AS 2518-56 sind die Prüfpunkte zum Testen beider Signalquellen angegeben.


Der Masseanschluss des Signalverfolgers wird mit GND (TP3) des Sound-Boards verbunden.
Die Verstärkung des Signalverfolgers wird auf minimal gesetzt und die Prüfspitze an TP6 (Prüfpunkt 1) gehalten. An TP6 tritt das analoge Signal als erstes auf. Die Verstärkung wird langsam erhöht und dabei geprüft, ob das Soundsignal hörbar wird. Ist dies nicht der Fall, wäre zu prüfen, ob die Voraussetzungen zur Erzeugung eines Soundsignals erfüllt sind. Ist das der Fall, wäre die Prüfung an dieser Stelle schon vorbei und der Fehler im Digitalteil der Schaltung zu suchen.
Ansonsten wird die Prüfung Step byStep an den einzelnen Prüfpunktenfortgesetzt.
Nehmen wir an, der Kondensator C1 wäre defekt. Dann wäre an Prüfpunkt 2 ein Signal hörbar, an Prüfpunkt 3 wäre kein Signal oder ein im Vergleich zu Prüfpunkt 2 sehr leises oder qualitativ schlechteres Signal zu hören. Es bedarf etwas Erfahrung, das Ergebnis am Prüfpunkt 5, den Ausgang von U8 zu bewerten, da bei der Filterstufe das Ausgangssignal schwächer als das Eingangssignal an Prüfpunkt 4 sein kann und somit kein Fehler wäre. Generell kann man sagen: Ist am Eingang der Stufe ein Signal vorhanden und am Ausgang keins oder ein im Vergleich zum Eingang wesentlich lauteres, ist der LM3900 bzw. dessen Beschaltung sehr verdächtig.
Ab Prüfpunkt 6 kann übrigens so auch die Funktion des Volume Reglers für den Sound überprüft werden. Je nach Stellung des Volume Reglers ändert sich dann die Lautstärke vom Signalverfolger.

Beispiel 2: keine Sprache, Sound funktioniert  

Als erste Maßnahme gilt es zu prüfen, ob der Fehler auf dem Soundboard oder dem Vocalizer-Board zu suchen ist. Dazu wird der Flipper in den Zustand versetzt, in dem normalerweise Sprache erzeugt wird. In der Regel kann eine Sprachausgabe durch Drücken des roten Testswitch erzwungen werden. Der Masseanschluss des Signalverfolgers wird mit GND (TP3) des Sound-Boards verbunden. Die Verstärkung wird auf minimal eingestellt und die Prüfspitze an TP1 (Prüfpunkt 1) gehalten, an dort das analoge Sprachsignal als erstes auf dem Soundboard auftritt. Die Verstärkung wird nun langsam erhöht und dabei geprüft, ob das Sprachsignal hörbar wird. Ist dies nicht der Fall, wäre die Prüfung auf dem Soundboard an dieser Stelle schon vorbei und die Fehlersuche am TP3 des Vocalizer-Boards und von dort aus in Richtung des Pin 7 von U10 fortzusetzen. Ansonsten wird die Prüfung Step by Step wie oben beschrieben an den einzelnen Prüfpunkten fortgesetzt. Ab Prüfpunkt 2 kann auch in diesem Kreis die Funktion des Volume Reglers für die Sprache überprüft werden. Je nach Stellung des Speech-Control Regler ändert sich dann die Lautstärke vom Signalverfolger.    

 

Beispiel 3: keine Sprache, kein Sound  

Hier wird als erstes geprüft, ob beide Einzelsignale an Prüfpunkt 7 anliegen. Ist das der Fall, kann mit etwas Vorsicht auch die Funktion des TDA2002 (U9) geprüft werden. Dazu ist die Verstärkung des Signalverfolgers auf minimal einzustellen. Beim kurzen Antippen der Prüfpunkte 1 und 2 ist bei intaktem U9 das verstärkte Signal sehr laut im Lautsprecher des Signalverfolgers hörbar. Das Signal klingt allerdings auch bei einer niedrig eingestellten Verstärkung am Signalverfolger sehr übersteuert.  

 

Prüfung der Signalwege mit Hilfe eines Signalinjektors

Eine weitere Möglichkeit zur Überprüfung der Signalwege ist der Einsatz eines Signalinjektors. Dieses Prüfgerät erzeugt ein, in der Amplitude regelbares Signal im hörbaren Frequenzbereich, dass an den o.g. Prüfpunkten in den Signalweg eingespeist (injiziert) und über den angeschlossenen Lautsprecher hörbar wird. Zur Prüfung wird der Masseanschluss des Signalinjektors mit dem TP3 (GND) verbunden. Die Amplitude wird auf minimal eingestellt und das Signal mittels der Prüfspitze beginnend am letzten Prüfpunkt vor dem TDA2002 (U9) eingespeist. Ist das Prüfsignal im Lautsprecher hörbar, wird der zu prüfende Signalweg rückwärts in Richtung Signalquelle geprüft, in dem das Prüfsignal nacheinander an den oben im Schaltplan markierten Prüfpunkten eingespeist wird. Dabei ist jeweils die Amplitude etwas anzupassen. Ist das Signal an einem Prüfpunkt hörbar und an dem davor liegenden Prüfpunkt nicht, liegt der Fehler zwischen diesen beiden Prüfpunkten. 

Die Prüfung ist auch in Kombination mit einem Signalverfolger möglich. Dazu wird der Signalverfolger mit einem Prüfpunkt verbunden, der sich nach einem Prüfpunkt befindet, an dem das Signal des Signalinjektors eingespeist wird. 

Steht kein Signalinjektor zur Verfügung, lässt sich die Funktion der Signalwege ggf. auch „quick and dirty“ überprüfen. Dazu berührt man mit einem Finger die Anschlüsse der sich in den Signalwegen befindlichen Kondensatoren C1, C5 und C25, was im Lautsprecher zu einem mehr oder weniger intensiven Netzbrummen führen kann. Diese Methode stellt allerdings nur einen groben Funktionstest dar und lässt keine Aussage über die Signalqualität zu.

Anhang 2: Fehlersuche auf der Werkbank

Um das Sound-Board AS 2518-51 oder AS 2518-56 alleine oder letzteres in Kombination mit dem Vocalizer-Board auf der Werkbank zu testen, werden +12 Volt und +5 Volt benötigt. Dazu eignet sich ein PC-Netzteil, das diese beiden Spannungen bereitstellt. Die +12V liegen an dem gelben Draht, Pin 10 des 20-poligen Steckers des PC-Netzteils an. Dieser wird bei einem AS 2518-51 mit TP1 des Sound-Boards verbunden. Ein AS 2518-56 mit angestecktem Vocalizer Board muss über J1 Pin 10 mit 12V versorgt werden. Die +5 Volt liegen an den roten Drähten, z.B. an Pin 20 des 20-poligen Steckers an. Dieser wird mit TP2 des Sound-Boards verbunden. GND liegt an den schwarzen Drähten des 20-poligen Steckers. Einer dieser Drähte wird mit TP3 des Sound-Boards verbunden. Damit das Netzteil nach dem Anlegen der Netzspannung die Ausgangsspannungen liefert, muss es über die grüne Steuerleitung (PS_ON) Steckers eingeschaltet werden, in dem diese Leitung mit Masse (schwarz) verbunden wird. Dazu müssten bei einem 20 poligen Mainboard-Stecker Pin 14 mit z.B. Pin 15 gebrückt werden. Es sollte selbstverständlich sein, beide Spannungen vor dem Verbinden mit dem Sound-Board zu prüfen. Ein fehlerhaftes Netzteil oder eine, an den falschen Punkten des Steckers abgegriffene oder am Sound-Board falsch angelegte Spannung können zu einem Schaden am Sound-Board führen.

Hinweis: Manche PC-Netzteile benötigen auf dem +5V Ausgang eine Mindestlast, damit sie auf dem +12V Ausgang eine stabile Spannung bereitstellen.

Nach dem Einschalten der Netzspannung beginnt das Sound-Board mit dem Bootvorgang und ist im Idealfall danach in Betrieb. Wird an J2 ein Lautsprecher angeschlossen, ist nach dem Drücken des Testknopfes ein Testsound zu hören, sofern das vom eingesetzten ROM unterstützt wird. Durch die fehlende Verbindung der Unreg. +5V Return Leitung zu einem zentralen Massepunkt ist evtl. ein überlagertes Brummen zu hören. Bootet das Board nicht oder nicht vollständig, lassen sich auf der Werkbank recht bequem die, in den vorherigen Kapiteln beschriebenen Messungen und Tests im Digitalteil des Sound-Boards durchführen. Bootet das Board vollständig, können Fehler im Analogteil durch Messungen und Tests nach Drücken des Testknopfes bzw. geeigneter Ansteuerung über die Sound-Select und Sound Interrupt Leitungen mit Hilfe eines Signalverfolgers auf dem Weg vom PSG bis zur Endstufe durchgeführt werden. Alternativ ist eine Überprüfung vom Ausgang des PSG bis zur Endstufe auch mit Hilfe eines Signalinjektors möglich. 


You like this work?