C64 Ersatz PLA auf 27C512 Eprom Basis

Von Joachim Nemetz (Jogi) und Jens Schönfeld

Der hier beschriebene Adapter basiert auf der Arbeit von Jens Schönfeld, dem Geschäftsführer der Individual Computers GmbH. Im August 1994 hat er als Zwischenschritt zur Logikanalyse des PLA-Chips einen Adapter gebaut, der das Auslesen mit einem Eprom-Programmiergerät ermöglichte. Die entstandene Datei wurde im Z-Netz (einem Vorläufer der Internet-Foren) veröffentlicht. Es gab zahlreiche Anläufe zur Analyse von anderen Leuten, jedoch war es wieder Jens Schönfeld, der im Sommer 2002 die Logik-Gleichungen der C64-PLA veröffentlichte. Sie sind im Funet-Archiv zu finden, das sowohl kostenlos online, als auch als CD im Handel erhältlich ist. Dort sind auch weitere Eprom-Dateien zu finden, die mit diesem Adapter angefertigt wurden, denn Commodore hat den Logik-Chip 82S100 in vielen Computertypen eingesetzt - immer mit unterschiedlicher Programmierung.

Der vorgestellte Adapter nutzt die Datei, die einmal als Zwischenschritt gedacht war nun als Quelle für eine Ersatzschaltung. Dabei wird ausser Acht gelassen, dass ein Eprom als Logik-Ersatz eigentlich nicht geeignet ist. Während der Zugriffszeit von typischerweise bis zu 120ns (also gut einem Viertel des CPU-Zyklus des C64) ist der Zustand der acht Ausgangsleitungen nicht garantiert. Unter Umständen kann es vorkommen, dass zwei oder gar noch mehr Bausteine des C64 die Freigabe bekommen, den Datenbus des C64 zu benutzen. In den meisten Fällen geht das gut, jedoch sind Langzeitschäden nicht auszuschließen. Die Eprom-Schaltung sollte demnach nur als Übergang oder zur Diagnose eingesetzt werden. Für eine dauerhafte Lösung ist dringend der Bau einer Ersatzschaltung auf Basis eines programmierbaren Logik-Chips angeraten.


Wenn der C64 (Ur-Modell Bj. 82-84) den Geist aufgibt ist zu 90% die PLA platt. Der Baustein hat die Bezeichnung 906114, bzw. 82S100. Abhilfe schafft die "Bastel-PLA" die aus einer Adapterplatine und einem 64K EPROM besteht.

Benötigt wird dazu ein Eprom 27C512-45ns wobei bei mir 120ns, 150ns, 200ns und 255ns ohne sichtbare Probleme liefen im C64 wie auch im 8296 + 8296-D also einfach Testen, eine Adapterplatine oder ein freiverlöteter Adaptersockel und natürlich die passenden Daten 27512.zip.

Bild der Verbindungen:

Das sollte sich auch 'fliegend' mit Zwischensockel aufbauen lassen:

Dazu folgende Erklärungen:

In den Sockel des C64 Boards kommt ein Zwischensockel (normaler IC DIL28 Sockel). An den PIN's: 10, 19, 20, 22 wird ein isoliertes Kabel/Litze angelötet, sodaß man das andere Ende dann später an die abgebogenen Kontakte des 27512 Eproms löten kann. Dann kommt das programmierte! 27512 Eprom auf den Zwischensockel, wobei am Eprom die Pin's: 1, 10, 19, 20, 22 zur Seite gebogen werden, sodaß sie keinen Kontakt mit dem Zwischensockel haben! Dann werden verbunden:
Zwischensockel <-> Eprom
10 <-> 19
19 <-> 20+22
20 <-> 10
22 <-> 1

Hier ein Aufbau.

1. Vier Kabel ca. 5cm am Präzisionssockel anlöten an Pin: 10, 19, 20, 22.

2. Dann ein 27C512 mit den korrekten Daten brennen.
Dann PIN 1, 10, 19, 20, 22 abbiegen, sodaß sie keinen Kontakt zum Sockel haben!.

3. Die 4 Kabel wie oben ausgeführt mit dem Eprom-Pins verbinden:
Sockel -> Eprom
10 -> 19
19 -> 20+22
20 -> 10
22 -> 1