ZX Spectrum

Ein arabisches Toast Rack

Dieses Mal habe ich eine echte Kuriosität für euch. 🙂

Es ist ein ZX Spectrum 128K. Er wurde von Sinclair und dessen spanischem Distributor Investrónica entworfen und war ein großes Upgrade des ZX Spectrum 48K. Zu dieser Zeit war das 48K-Modell mit seinem begrenzten RAM und dem einfachen Sound-Beeper ziemlich veraltet, und Sinclair hatte nichts in der Hand, um mit dem Commodore 64 zu konkurrieren, der in immer mehr Haushalten an Boden gewann.

Das 128K-Modell verfügt über 128K RAM (was auch Double Buffering ermöglichte), einen AY-3-8912 Soundchip, einen RGB-Monitoranschluss, eine serielle Schnittstelle und einen optionalen externen Ziffernblock. Hardware-Sprites fehlen jedoch nach wie vor. Auf der Softwareseite bietet es ein stark verbessertes BASIC.

Die Form des markanten Kühlkörpers auf der rechten Seite des Gehäuses gab der Maschine ihren Spitznamen: “Toast Rack” (Toastständer).

Das Modell wurde zuerst in Spanien verkauft, da Sinclair UK noch eine große Anzahl unverkaufter 48K-Modelle in ihren Lagern hatte. Letztendlich konnte es Sinclair nicht vor dem Bankrott retten, aber das 128K-Modell war sicherlich sehr attraktiv für den neuen Eigentümer Amstrad. Heute ist das Toast Rack ein begehrtes Objekt für jeden ernsthaften Sinclair-Sammler. (Wenn du mehr über die Geschichte des ZX Spectrum 128K lesen möchtest, gibt es einen großartigen Beitrag auf 21twice.com!)

Was dieses spezielle Modell so kurios macht, ist, dass es sich um eine arabische Modifikation handelt. 😀 Es gibt Aufkleber mit arabischen Buchstaben auf der Tastatur, und auf der Vorderseite befindet sich ein Schalter, um zwischen dem originalen 128K-ROM und einer arabischen Version des 48K-ROMs zu wählen.

Mein erster Gedanke war, dass dies eine aufwendige DIY-Modifikation ist. Aber dann fand ich einen Thread in einem Sinclair-Forum. Dort steht, dass Matsico, eine Sinclair/Amstrad-Agentur in Ägypten, diese Modelle produziert hat. Ich konnte jedoch keine weiteren Informationen darüber finden, daher weiß ich nicht, ob sie tatsächlich in nennenswerten Mengen verkauft oder nur als Machbarkeitsstudie oder Werbegeschenk hergestellt wurden.

Was sie alle gemeinsam haben, ist der Schalter an der Vorderseite und ein EPROM, das auf das ROM gelötet ist. Die einzige bekannte Ausnahme fand ich in einem Video von ByteDelight über einen ZX Spectrum +3, bei dem das ROM über ein separates Boot-Menü ausgewählt werden konnte.

Restaurierung

Ein erster Diagnoselauf zeigte, dass das Board einwandfrei funktionierte. Die einzigen Probleme waren massive Bildstörungen und ein fast unhörbarer Ton vom AY-Chip.

Beide Probleme sind bekannte Fehler bei diesem Modell. Ein Blogartikel von Adam’s Vintage Computer Restorations befasst sich damit.

Zuerst habe ich alle Elektrolytkondensatoren durch hochwertige ersetzt. Das mache ich bei allen Retro-Maschinen, unabhängig von ihrem Alter und ihrer Seltenheit. Ich versuche jedoch mein Bestes, um die “Retro-Optik” beizubehalten, zum Beispiel durch die Verwendung axialer Kondensatoren in der klassischen blauen Farbe.

Um die Bildqualität zu verbessern, habe ich einen 47µF-Elektrolytkondensator für C28 verwendet (das Original war 22µF) und C7 und C8 durch 1µF-MLCCs ersetzt. Ich hätte auch C126 neu verdrahten können, wie im Blogartikel erwähnt, um die Bildqualität noch weiter zu verbessern, aber ich habe beschlossen, das aufzuschieben.

Um die Lautstärke des AY-Soundchips zu erhöhen (damit er einen ähnlichen Pegel wie der Beeper hat), habe ich R115 durch einen 1,65kΩ-Widerstand ersetzt.

Der 7805-Spannungsregler ist für 1A ausgelegt und arbeitet beim 128K an seiner Belastungsgrenze. Das ist der Grund für den großen Kühlkörper auf der rechten Seite. Ich habe ihn durch einen 78S05 ersetzt, der ein direkter Ersatz ist, für 2A ausgelegt ist und deutlich kühler bleibt.

Hier hatte ich Glück, denn in der Vergangenheit hatte bereits jemand den 7805 durch einen LM1085 ersetzt. Dieser ist sogar für 3A ausgelegt, hat aber eine andere Pin-Belegung. Wenn ich ihn blind ersetzt hätte, hätte das die Maschine zerstört. Man sollte immer auf böse Überraschungen vorbereitet sein, wenn man alte Maschinen restauriert, an denen der Vorbesitzer bereits herumgebastelt hat!

Ich habe auch das Gehäuse gereinigt (obwohl es bereits in einem sehr sauberen Zustand war). Der Vorbesitzer hatte die Tastaturmembran bereits ersetzt, aber die zusätzlichen Tasten funktionierten dort nicht, also habe ich sie durch eine neue Membran einer bekanntermaßen guten Marke ersetzt.

Der nächste Diagnoselauf zeigte, dass alle Tests immer noch grün waren. Auch die Bildstörungen waren größtenteils verschwunden (bis auf ein paar minimale Jailbars, mit denen ich leben kann), und der AY-Sound ist viel lauter.

Je nach Position des Schalters bootet das System entweder in das originale ZX Spectrum 128K-Startmenü oder zeigt einen arabischen Boot-Prompt. In der arabischen Version wurde das gesamte BASIC modifiziert, wobei alle Texte auf Arabisch sind und von rechts nach links geschrieben werden. Leider kann ich es nicht lesen.

Ein kurzer Test mit dem Dandanator-Modul zeigte ebenfalls, dass Spiele einwandfrei funktionieren. Der obligatorische Teil der Restaurierung ist abgeschlossen!

Freestyle-Restaurierung

Es gab noch zwei Dinge, die mir nicht gefielen.

Erstens war da der ROM-Stack. Die ursprüngliche Lösung schaltete die Vcc-Pins der ROMs um, sodass einer der Chips immer stromlos, aber weiterhin mit dem Adress- und Datenbus verbunden war. Ehrlich gesagt war ich überrascht, dass das überhaupt funktionierte.

Wie dem auch sei, ich habe das Sandwich durch ein einzelnes 27C512 EPROM ersetzt. In der unteren Hälfte des Speichers habe ich das arabische ROM (zweimal hintereinander) gebrannt, und in der oberen Hälfte habe ich das originale 128K-ROM gebrannt. Danach habe ich den Schalter so modifiziert, dass er die A15-Adressleitung (Pin 1) entweder auf GND oder Vcc zieht. Auf diese Weise wird das EPROM immer mit Strom versorgt und das gewünschte Betriebssystem wird über eine Adressleitung ausgewählt. Ich habe auch die originale arabische ROM-Version 1 auf die letzte Version 3.1 aktualisiert, die ich im Netz finden konnte.

Natürlich werde ich den ROM-Stack behalten. Hauptsächlich aus Lizenzgründen, aber auch, damit die ursprüngliche Lösung auf Wunsch wiederhergestellt werden kann.

Mir gefiel auch die Optik des nackten Schalters an der Vorderseite nicht, also habe ich eine kleine Schalterkappe in 3D gedruckt, die auch die Schrauben abdeckt.

Es gibt noch ein paar weitere Dinge, die getan werden könnten:

  • Ich könnte C126 (wie im obigen Blogartikel von Adam erwähnt) neu verdrahten, um das Audiosignal vom RGB-Ausgang zu entfernen.
  • Aufgrund eines Fehlers im originalen PAL10H8 stürzt das System ab, sobald die Portadresse $7FFD gelesen wird. Es gibt einen Fix, der auch einen “Regen”-Effekt entfernt, der durch Refresh-Daten auf dem Bus verursacht wird.
  • Die originale ULA kann durch eine vLA128 ersetzt werden, als Ersatz bei Defekt, oder wenn das wertvolle Originalteil konserviert werden soll. Dafür müsste ich aber den Sockel austauschen.
  • Dave Curran hat ein Reverse Engineering des Ziffernblocks durchgeführt. Ein ambitionierter Bastler könnte eine DIY-Replik des Ziffernblocks herstellen.
Einen ZX Dandanator Mini bauen

Der Hauptweg, um Software in den ZX Spectrum zu laden, war über Audiokassetten. Es gab Diskettenlaufwerk-Erweiterungen und Sinclairs proprietäre Microdrive-Lösung, aber Audiokassetten waren billig und allgegenwärtig, und Kassettenrekorder damals in praktisch jedem Haushalt zu finden.

Der größte Nachteil war, dass es unkomfortabel war. Kassetten waren langsam. Es dauerte mehrere Minuten, bis ein Spiel geladen war. Wenn man eine “Sammlung” von mehreren Spielen auf einer Kassette hatte, musste man sie zuerst an die richtige Stelle spulen. Als ich meinen Amiga mit Diskettenlaufwerk bekam, habe ich nie wirklich auf diese Zeiten zurückgeblickt, in denen ich Audiokassetten verwenden musste.

Heute besitze ich ein paar ZX Spectrums, aber ich habe keinen Kassettenrekorder mehr. Um Software in den Rechner zu laden, verwende ich normalerweise die Kopfhörerbuchse meines PCs und tzxplay. Aber es gibt einen eleganteren Weg. Der ZX Dandanator Mini von Dandare ist eine Erweiterung mit 512KB Flash-Speicher, in dem man seine absoluten Lieblingsspiele speichern kann. Ein Boot-Menü erlaubt es, eines dieser Spiele auszuwählen, das sofort in den Speicher geladen wird. Er bietet außerdem einen Kempston-kompatiblen Joystick-Anschluss.

Als ich anfing, meinen ZX Dandanator Mini zu bauen, stellte ich fest, dass die Dokumentation des Projekts ein paar Fragen offenließ. Ich hoffe, mein umfassender Blogartikel wird anderen helfen, ihren eigenen zu bauen.

Teile

Glücklicherweise ist die Stückliste des Dandanator ziemlich kurz, und alle Komponenten sind leicht zu finden, vielleicht mit Ausnahme der Randsteckleiste.

  • 1x GAL 22V10 (+ DIP20 Sockel)
  • 1x PIC 16F1826-I/P (+ DIP18 Sockel)
  • 1x SST 39SF040 Flash ROM (+ PLCC32 Sockel)
  • 1x 1N4148 (TH)
  • 2x 10kΩ Widerstände (TH)
  • 5x 100nF Keramikkondensatoren (TH)
  • 1x D-Sub Stecker, 9-polig männlich, abgewinkelt, Europa-Bauform (z.B. dieser hier)
  • 2x Stiftleisten, 2-polig
  • 1x Jumper
  • 2x 6 mm Taster (17 mm hoch, wenn du das 3D-gedruckte Gehäuse verwendest)
  • 1x Platine (Gerber-Dateien sind hier)
  • 1x ZX Spectrum Randsteckleiste (zu finden in Retro-Shops, Online-Marktplätzen oder einfach DIY)
  • 1x 3D-gedrucktes Gehäuse (optional)

Man braucht einen Programmer, der in der Lage ist, den PIC, das GAL und das Flash-ROM zu flashen (z.B. XGecu TL-866II Plus mit PLCC32 Adapter). Ich empfehle außerdem eine gute PLCC-Zieh-Zange.

Klassische GALs werden nicht mehr produziert, können aber immer noch als NOS-Teile auf Online-Marktplätzen gefunden werden. Ein Ersatz, der noch produziert wird, ist der Atmel ATF22V10C-10PU. Wenn man diesen verwendet, braucht man auch ein 3,3kΩ 6-Pin Widerstandsnetzwerk. Mehr dazu unten.

Zusammenbau

Der Zusammenbau ist unkompliziert. Man fängt mit den flachsten Komponenten an und arbeitet sich zu den höchsten vor. Es gibt keine SMD-Komponenten, daher sollte selbst ein Lötanfänger keine Probleme haben.

Stelle sicher, dass die Sockel richtig ausgerichtet sind. Leider gibt es auf dem Bestückungsdruck keine Markierungen für Pin 1 der beiden DIP-Sockel. Sie sollten mit den Kerben in der Nähe der Taster ausgerichtet werden, wie auf meinem Foto zu sehen. Der PLCC-Sockel sollte mit dem Umriss auf dem Bestückungsdruck übereinstimmen.

Die Randsteckleiste ist normalerweise dafür gedacht, aufrecht eingelötet zu werden, nicht an die Kante der Platine, also musst du zuerst die Pins nach innen biegen. Wenn dies richtig gemacht ist, sollte die Randsteckleiste zentriert sitzen und alle Pins sollten die Pads der Platine berühren. Achte auch darauf, den Anschluss auf die richtige Seite der Platine zu löten, das ist die mit den kurzen Pads. Der Anschluss auf der anderen Seite ist für weitere Erweiterungen gedacht, wie z.B. ein Joystick-Interface, aber man kannt sogar mehrere Dandanatoren zusammenstecken.

Wenn du beabsichtigst, das 3D-gedruckte Gehäuse zu verwenden, lass eine Lücke von etwa 2 mm zwischen der Platinenkante und dem Stecker.

Einige der Pads sind nahe an der Randsteckleiste auf der Rückseite. Es passiert leicht, beim Löten ein paar Tropfen Lot auf die Pads zu kleckern. Mit einem Stück Kapton-Klebeband kann man sie leicht schützen.

Ein Problem mit dem ATF22V10C ist, dass er keine internen Pull-Ups an den Eingängen hat. Das bedeutet, dass die Eingänge floaten, wenn kein Joystick angeschlossen ist. Das führt zu Problemen. Auf meinem System wurde immer sofort das erste Spiel in der Liste gestartet, wenn kein Joystick angeschlossen war. Eine mögliche Lösung ist, ein Widerstandsnetzwerk auf die Unterseite zu löten. Die Widerstände werden mit Pin 8, 9, 10, 11 und 13 des ATF22V10C verbunden. Der gemeinsame Bus wird mit Pin 24 verbunden. Achte darauf, benachbarte Pins nicht zu verbinden oder kurzzuschließen.

Dieses Problem sollte mit dem ATF22V10B nicht auftreten, aber zum Zeitpunkt des Schreibens war diese Variante entweder ausverkauft oder absurd teuer.

Obwohl dieses Problem bei älteren GALs wahrscheinlich nicht auftritt, empfehlen die Hersteller dennoch, Eingangs-Pins nicht offen zu lassen. Meiner Meinung nach hätten die Pull-Up-Widerstände ein Teil des Dandanator-Designs sein müssen.

Im letzten Schritt reinigt man die Platine und überprüft sie auf Lötbrücken und andere Fehler. Ein Kurzschluss kann den Stromwandler im Inneren des ZX Spectrum zerstören, was relativ schwierig zu reparieren ist.

Der “Joystick”-Jumper ist dafür da, den Joystick-Port zu aktivieren. er sollte geschlossen werden, wenn kein anderes Joystick-Interface verwendet wird. Der “Serial Pins”-Jumper scheint für die In-Circuit-Programmierung gedacht zu sein und sollte nicht geschlossen werden. (Es geht nichts kaputt, wenn du sie versehentlich schließt, aber dann ist es so, als würdest du den Joystick permanent nach rechts drücken.)

Wenn der Zusammenbau abgeschlossen ist, ist der nächste Schritt, die Chips zu programmieren. Sie werden alle unterschiedlich programmiert.

Die Chips flashen

  • GAL: Die Fusemap kann hier heruntergeladen werden. Wenn du ein ATF22V10 und den XGecu Programmer verwendest, stelle sicher, dass du die (UES) Variante als Chiptyp auswählst.
  • PIC: Eine initiale Firmware kann hier heruntergeladen werden. Ich habe versucht, sie mit der minipro Software zu flashen, aber das ergab keinen funktionierenden PIC. Letztendlich habe ich die Original-Software von XGecu verwendet.
  • Flash ROM: Das Flash-ROM enthält die Spiele und auch Pokes. Die Image-Datei wird durch ein ROM Assembler Tool generiert.

Der ROM Assembler ist in Java geschrieben, läuft also auf jedem modernen Betriebssystem. Wenn du dich mit Java auskennst, kannst du die neueste Version leicht selbst aus dem Quellcode kompilieren. Du kannst auch eine jar-Datei von der Dandanator Download-Seite herunterladen und sie mit dem Befehl java -jar dandanator-mini-*.jar ausführen.

Die GUI des ROM Assemblers ist ziemlich selbsterklärend. Du kannst einfach TAP-, SNA-, Z80- und POK-Dateien deiner Lieblingsspiele per Drag&Drop hineinziehen, bis der Flash-Speicher voll ist. In den Einstellungen kannst du die Schriftart und Sprache ändern und auch ein individuelles Hintergrundbild verwenden.

Viele Spiele finden sich bei World of Spectrum. Eine umfangreiche Sammlung von POK-Dateien gibt es hier.

Wenn du deine Lieblingsspiele zusammengestellt hast, erstelle ein ROM-Image und schreibe es auf das Flash-ROM.

Spielen wir!

Der Dandanator wird an den Erweiterungsport des ZX Spectrum angeschlossen. Denke daran, den Computer zuerst vom Strom zu trennen.

Schalte nun deinen Speccy ein und drücke den rechten Knopf am Dandanator, um das Hauptmenü zu erreichen.

Du kannst ein Spiel auswählen, entweder indem du den Joystick benutzt oder die entsprechende Taste drückst, dann die anzuwendenden Pokes auswählst und schließlich das Spiel startest.

Wenn du den Dandanator zum ersten Mal verwendest, solltest du den Speccy ausschalten, dann beide Tasten gedrückt zu halten und ihn wieder einschalten. Der Dandanator flasht danach die neueste Firmware-Version auf den PIC.

Der rechte Knopf bringt dich immer zurück ins Hauptmenü. Der Rechner muss nicht mehr zurückgesetzt werden.

ZX Spectrum Plus-Reparatur

Werfen wir diesmal einen Blick ins Innere eines ZX Spectrum Plus. Es ist im Grunde dasselbe wie ein ZX Spectrum, aber mit einer (etwas) besseren Tastatur und einem Reset-Knopf. Diese Maschine sorgte allerdings für einige Überraschungen.

Die erste Überraschung war, dass anstelle einer Seriennummer das Wort “Upgraded” auf dem Gehäuse aufgedruckt war. Daneben befand sich ein (beschädigtes) Garantiesiegel von Sinclair Deutschland. Es war mir völlig neu, dass Sinclair tatsächlich Upgrade-Pakete für den ZX Spectrum verkauft hatte.

Im Gehäuse fand ich ein Issue-Two-Board, was bei einem ZX Spectrum Plus ein seltener Anblick ist. Aus einem offensichtlichen Grund: Der Issue-Two-Kühlkörper ist zu groß für das Plus-Gehäuse, weshalb das Board etwas in das Gehäuse gequetscht war.

Da ich den 7805 sowieso durch einen DC/DC-Wandler ersetzen wollte, würde dieser hässliche Anblick des verdrehten Kühlkörpers bald behoben sein.

Ich stellte außerdem fest, dass die Tastaturfolie über die Jahre spröde geworden war und durch eine moderne Replik ersetzt werden musste.

Technischer Check

Das Allererste, was ich mache, ist der Composite Mod. Es braucht nur ein Stück Draht und ein paar Minuten am Lötkolben. Es lohnt sich immer, die Zeit zu investieren, selbst wenn sich der Speccy später als irreparabel kaputt herausstellen sollte. Ein erster Check zeigte den Startbildschirm, also schien zunächst alles in Ordnung zu sein.

Aber dann schloss ich das Diagnosemodul an, und der Ärger begann.

Die Diagnose meldete, dass alle acht unteren RAM-Chips defekt waren. Die LEDs am Modul zeigten, dass die -5V- und 12V-Stromleitungen ausgefallen waren. Ein Voltmeter bestätigte, dass -5V ganz fehlte und auf der 12V-Leitung nur 7V anlagen. Der Spannungswandler schien also defekt zu sein. Seltsam fand ich: Als ich das Diagnosemodul abzog, startete das System wieder, obwohl beide Spannungen immer noch fehlten.

Ich überprüfte die Spule, aber sie hatte keinen Kurzschluss zwischen den Wicklungen. Also tauschte ich die üblichen Verdächtigen eines defekten Spannungswandlers aus: TR4, D15 und D16. Ich ersetzte auch wie geplant den 7805 durch einen DC/DC-Wandler und erneuerte alle Elektrolytkondensatoren. Die -5V und 12V waren danach in Ordnung, und alle Diagnosetests wurden bestanden.

Aber jetzt hatte der Bildschirm plötzlich einen starken Grünstich, die Farben waren blass, und es gab sichtbare horizontale Linien.

Auf Issue-Two-Boards gibt es zwei Potis zur Kalibrierung des Weißabgleichs. Man muss nur ein Oszilloskop an die Composite-Leitung anschließen und dann beide Potis so einstellen, bis das Signalrauschen auf ein Minimum reduziert ist. Ich habe es jedoch nur geschafft, den Grünstich ein bisschen zu verbessern. Ganz verschwand es nicht. Auch die störenden horizontalen Linien blieben. Das war das Beste, was ich aus dem Signal herausholen konnte.

Warum war der Weißabgleich perfekt, bevor ich den Spannungswandler repariert habe? Ich fand heraus, dass die 12V für die Erzeugung des Farbsignals notwendig sind. Als der Spannungswandler defekt war, fehlten die 12V, und so wurde das Bild in einem perfekten Schwarzweiß dargestellt. Da der Startbildschirm keine Farben verwendet, sah er auf den ersten Blick korrekt aus. Nachdem ich die 12V reparierte, wurde das Farbsignal wieder erzeugt, und das Bild bekam einen Farbstich.

Ich hatte zuerst die ULA in Verdacht, aber das Problem blieb bestehen, als ich sie gegen eine funktionierende austauschte. Dann tauschte ich den LM1889N. Die seltsamen horizontalen Linien verschwanden danach. Die Farben wurden auch etwas besser, aber immer noch nicht perfekt.

Die Potis konnten immer noch kein sauberes Weiß wiederherstellen. Dann stellte ich fest, dass VR1 nicht wirklich gut funktionierte und das Signal beim Drehen knisterte. Also ersetzte ich es durch eines von Piher, das gerade so passte, weil es gekapselt war. Danach konnte ich das Signal endlich so kalibrieren, dass es ein minimales Rauschen aufwies.

Das Ergebnis war ein Bild mit perfektem Weißabgleich, bei dem die einzigen grünen Dinge die bestandenen Diagnosetests waren.

Testweise baute ich den vorherigen LM1889N wieder ein, und die Farbprobleme sowie die horizontalen Linien kamen zurück. Das Problem mit dem grünen Bildschirm war also eine Kombination aus einem defekten LM1889N und einem defekten Poti.

Der Hardware-Teil ist fertig. Schauen wir uns als Nächstes die Tastatur an.

Die Tastatur

Die Tastatur des ZX Spectrum Plus ist etwas speziell. Auf der Anschlussseite gibt es keinen Unterschied zur Tastatur des ZX Spectrum. Allerdings hat der ZX Spectrum Plus einige weitere Spezialtasten, wie Cursortasten oder eine dedizierte Löschtaste. Diese Tasten müssen zwei gleichzeitige Tastendrücke in der richtigen Reihenfolge ausführen. Das wird durch zwei miteinander verbundene Folienlagen realisiert. Ein Tastendruck schließt dann die Kontakte auf beiden Lagen.

Diese Lagen sind am oberen Ende der Folienanschlüsse miteinander verbunden. Es ist also wichtig, dort genau zu arbeiten und darauf zu achten, dass die Lagen richtig ausgerichtet und sicher unter den Halterungen befestigt sind. Die Schrauben sollten jedoch nicht zu fest angezogen werden. Das Plastik ist immerhin fast 40 Jahre alt. 😉

Nach ein wenig Putzen konnte ich die Maschine dann wieder zusammenbauen.

Und das war’s. Jetzt habe ich endlich auch einen ZX Spectrum Plus in meiner Sammlung.

Neuer ZX Spectrum 48K

Ich bekam die Platine eines Sinclair ZX Spectrum. Es musste vorher ein ZX Spectrum Plus Modell gewesen sein, da ein Reset-Kabel daran befestigt war. Auf der Platine klebten auch ein paar Etiketten, die die Funktion der Bauteile erklärten, vielleicht zu Bildungszwecken.

Ich versuchte, eine Diagnose laufen zu lassen, aber das Modul startete nicht einmal und die D0-LED blieb dauerhaft dunkel. Irgendwo auf dem Datenbus musste ein Kurzschluss vorhanden sein. Aber anstatt ihn zu beheben, plane ich sowieso, mir einen komplett neuen ZX Spectrum zu bauen. Ich möchte dabei so viele neue Bauteile verwenden wie möglich. Nur die ULA, die CPU, der LM1889N, die Spule und die RAM-Chips werden wiederverwendet.

Also entfernte ich zuerst diese wertvollen Komponenten. Die leere Originalplatine war danach ein trauriger Anblick. Die Aussicht, dass daraus ein nagelneuer Speccy entstehen wird, machte es weniger schmerzhaft.

Die ULA habe ich bereits in einem anderen Speccy überprüft, sie war in Ordnung. Von den 16 RAM-Chips waren leider nur noch 9 funktionsfähig. Das war viel weniger, als ich gehofft hatte. Ich habe noch ein paar dieser alten RAM-Chips auf Lager, aber sie sind knapp und wertvoll.

Eine neue Platine

Die neue Replika-Platine stammt von PABB und kann bei PCBWay bestellt werden.

Für die benötigten Bauteile habe ich eine Stückliste zusammengestellt. Sie enthält so viele neue Komponenten, wie ich finden konnte, aber einige seltene Teile werden schon lange nicht mehr produziert. Man findet sie immer noch als NOS-Teile auf Online-Marktplätzen, teilweise gibt es auch Ersatztypen oder Nachbauten (wie die Retroleum Nebula oder vRetro vLA82).

Es gibt vier Drahtbrücken, die den Typ der oberen RAM-Chips und die Marke des ROM-Chip-Herstellers bestimmen. Die richtige Konfiguration findet man ebenfalls in meiner Stückliste.

Anstelle des Modulators entschied ich mich, einen S-Video-Mod und eine 3D-gedruckte Grundplatte zu verwenden. Eine weitaus simplere Alternative wäre, einen Cinch-Anschluss an COMP und GND zu löten und ihn als Composite-Ausgang zu verwenden.

Nach viel Lötarbeit war der Zusammenbau fast abgeschlossen. Aber bevor ich die wertvollen Chips einsetzen würde, überprüfte ich zuerst, ob alle drei Spannungen (+5V, +12V, -5V) vorhanden und innerhalb der Toleranz lagen.

Der S-Video-Mod tritt an die Stelle des originalen Modulators, wird aber nicht eingelötet, sondern von zwei Schrauben gehalten. Die Schrauben sorgen auch für die Masseverbindung, dürfen also nicht aus Kunststoff sein. Drei Drähte verbinden die Platine dann mit +5V und dem Composite-Signal als Luma. Das Chroma-Signal wird an das positive Ende von C65 angeschlossen. Dieser muss vorher entfernt werden, damit sich die Luma- und Chroma-Signale nicht mischen.

Danach war die neue Platine endlich fertig und bereit für einen ersten Test.

Bugfixing

Aber leider sah ich das hier, als ich den Computer zum ersten Mal einschaltete.

Die Diagnose zeigte keine Aktivität auf den CPU-Bus-Steuerleitungen. Mein Verdacht bestätigte sich, als ich den Takteingang der CPU mit einem Oszilloskop überprüfte. Es war nur eine flache Linie zu sehen:

Der CPU-Takt wird von der ULA generiert, aber dort war das Taktsignal vorhanden.

Ein Blick in den Schaltplan zeigt, dass sich zwischen dem ULA-Taktausgang und dem CPU-Takteingang der Transistor TR3 befindet, wahrscheinlich zur Verstärkung des Signals. Seltsamerweise war das Signal rechts von R24, der direkt mit dem Taktausgang verbunden ist, noch vorhanden. Links von R24 (dort mit der Basis des Transistors verbunden) fehlte das Signal aber. Als ich TR3 entfernte, erschien das Taktsignal auch dort, also musste TR3 die Ursache sein.

Nach einer längeren Suche fand ich heraus, dass der Spectrum bei dem für TR3 verwendeten Typ sehr wählerisch ist. Der originale ZTX313 wird nicht mehr hergestellt, also verwendete ich zuerst einen BC548, der an anderen Stellen ein Ersatztyp sein sollte. Für TR3 ist der einzige empfohlene Ersatztyp jedoch der MPS2369, der mittlerweile auch schon schwer zu bekommen ist. Mit diesem Typ war das Taktsignal aber endlich in Ordnung (cyan: ULA-Taktausgang, gelb: CPU-Takteingang).

Zu meiner Freude startete der neue Spectrum dann auch und zeigte den berühmten Startbildschirm.

Als nächsten Schritt führte ich eine vollständige Diagnose durch. Nun bekam ich den Fehler, dass das M1-Signal fehlte.

Das M1-Signal wird von der CPU generiert und zeigt den ersten von vier Maschinenzyklen an, in dem der nächste Befehl eingelesen wird. Der Spectrum selbst nutzt das M1-Signal nicht, aber ein paar Erweiterungen wie das ZX Interface 1 benötigen es.

Nach dem Austausch der CPU wurden schließlich alle Diagnoseprüfungen bestanden.

Letztendlich konnte ich vom alten ZX Spectrum also nur die ULA, das ROM, den LM1888N und die Spule wiederverwenden. Ich hatte auch auf die RAM-Chips und die CPU gehofft, aber mit denen hatte ich weniger Glück.

Testlauf

Egal, endlich war es Zeit für einen Testlauf. Ich schloss den neuen Speccy an meinen Computer an und nutzte tzxplay, um mein Lieblingsspiel Starquake zu laden. Es lud und lief einwandfrei. Auch die Bildqualität des S-Video-Ausgangs ist hervorragend, aus diesem alten Design kann man vermutlich nicht noch mehr herausholen. Nur der ZX Spectrum Next hat mit seinem nativen, pixel-perfekten HDMI-Ausgang eine noch bessere Qualität.

Ich bekam die originale Platine ohne Gehäuse. Aber zum Glück gibt es Replika-Gehäuse, Tastaturmatten, Membrane und Frontplatten auf dem Markt, womit man sich ein brandneues Äußeres zusammenbauen kann. Natürlich wählte ich ein transparentes Gehäuse, damit man das schöne schwarze Mainboard von außen bewundern kann. Naja, zumindest ein wenig.

Und das ist er nun, ein ZX Spectrum in praktisch neuem Zustand.

ZX Spectrum "Portugal"

Und noch ein Speccy, den ich zu einem guten Preis kaufen konnte. Der Verkäufer sagte, er sei “ungetestet”, aber ich behaupte, dass er sehr wohl wusste, dass er kaputt war. Für mich ist das in Ordnung, da ich diese Dinger hauptsächlich wegen des Reparaturspaßes kaufe. 😁

Der Computer war in einem traurigen Zustand, als ich ihn bekam. Bemerkenswert ist, dass die Maschine “in Portugal zusammengebaut” wurde. Das sehe ich zum ersten Mal, und um ehrlich zu sein, war das einer der Gründe, warum ich ihn haben wollte. Nach den sehr wenigen Informationen, die ich im Internet gefunden habe, waren diese Maschinen für den portugiesischen und südamerikanischen Markt bestimmt, aber einige von ihnen schafften es auch nach Großbritannien und in andere europäische Länder.

Die Frontblende war stark verbogen und ein Anschluss der Tastaturmembran war abgebrochen. Es scheint, dass der Vorbesitzer versucht hat, die Membran auszutauschen, aber nicht in der Lage war, die Frontblende zu entfernen.

Das ist der erste Hinweis darauf, dass die Maschine nicht “ungetestet” war, sondern einem verpfuschten Reparaturversuch unterzogen wurde.

Den zweiten Hinweis bekam ich, als ich versuchte, die Maschine einzuschalten, aber feststellte, dass sie komplett tot war und alle Spannungen fehlten. Die 5V werden von einem 7805 Spannungsregler erzeugt. Er hätte einfach an Altersschwäche sterben können. Aber in Anbetracht des anderen Hinweises vermute ich eher, dass der Vorbesitzer versucht hat, diese Maschine mit einem Standard-9V-Netzteil zu betreiben. Dieses hat eine umgekehrte Polarität, was den 7805 sofort zerstört und normalerweise die unteren RAM-Chips und andere Komponenten beschädigt.

Schauen wir uns mal das Innere an. Darin befindet sich ein Issue 6A Board, welches die letzte Revision der Platine ist. Aber ansonsten gab es keine Überraschungen. Wie auch immer, es ist das erste Issue 6A Board, das ich besitze, also bin ich froh, es zu haben.

Der 7805-Regler ist definitiv kaputt, aber ich hätte ihn ohnehin durch einen Traco Power DC/DC-Wandler ersetzt. Nachdem ich ihn ausgetauscht hatte, war die 5V-Leitung wieder da. Zu meiner Überraschung waren auch die 12V- und -5V-Leitungen wieder da, also gab es zumindest keine weiteren Schäden am Netzteil.

Ich habe meinen üblichen Composite-Mod durchgeführt. Dann schloss ich den Computer an meinen Monitor an und schaltete ihn ein, um herauszufinden, was noch kaputt ist. Zu meiner Überraschung erschien der Startbildschirm, und das Diag-ROM stellte außerdem fest, dass alle RAM-Chips funktionieren.

Okay, so viel zu dem “Reparaturspaß”, auf den ich gehofft hatte. Andererseits hat dieses Board einen zweiten Custom-Chip, den ZX8401, auch bekannt als ZXMUX-Chip. Wenn er beschädigt gewesen wäre, wäre die Reparatur viel schwieriger gewesen. Allerdings nicht unmöglich, da der ZXMUX durch ein paar Standard-SMD-Chips simuliert werden kann.

Nun, da der Speccy repariert war, fuhr ich damit fort, die Elektrolytkondensatoren auszutauschen. Ich fand und reparierte auch viele kalte Lötstellen an den unteren RAM-Chips. Die Überholung der Platine war danach abgeschlossen.

Schauen wir uns das Gehäuse an. Der Membrananschluss war kaputt, aber zum Glück gibt es in Retro-Shops neue Membranen. Der Vorbesitzer hat versucht, die Frontblende zu entfernen, die meistens an das Gehäuse geklebt ist. Meistens, aber nicht hier. Bei diesem Computer wurde die Frontblende nur durch vier Klammern an Ort und Stelle gehalten. Alles, was man hätte tun müssen, wäre diese Klammern zu öffnen und die Frontblende dann ganz leicht abzuziehen.

Leider war die originale Frontblende durch den verpfuschten Reparaturversuch zu stark verbogen, um noch gerettet werden zu können. Sie hatte auch einige sichtbare Kratzer. Ich hätte sie gerne gerettet, habe mich aber entschieden, sie stattdessen durch eine neue zu ersetzen. Dieses Mal habe ich eine metallisch rote Frontblende genommen, die so heiß aussieht wie ein Sonnenuntergang in Portugal. 😉

Und da ist er, ein weiterer ZX Spectrum für meine Sammlung.