Amiga 600 RAM-Erweiterung mit Echtzeituhr

Einleitung

Meine RAM-Erweiterung vom A600 hat schlapp gemacht. Und bevor ich wieder eine alte und gebrauchte Erweiterung ranschaffe wollte ich lieber irgendwas Neues ranholen. Die günstigen RAM-Erweiterungen scheinen alle irgendwie keine Echtzeituhr zu haben – anscheinend gibt es das Feature nur bei den teureren Varianten.

Na gut, also hab ich selbst eine zusammengefummelt. Die Gerber-Dateien stelle ich mit der CC BY-NC 3.0 DE-Lizenz zur Verfügung – also Verwendung bitte nur mit Namen (steht winzig auf der Platine, und bitte nicht kommerziell verwursten, danke! 🙂 )

Infos sammeln

Als Grundlage habe ich erst mal meine alte RAM-Erweiterung untersucht. Bauteile habe ich allesamt entfernt, um die Leitungen verfolgen zu können. Das Ding war durch einen Batterieschaden ohnehin recht wackelig im Betrieb und wurde beim Starten häufig nicht erkannt.
An sich recht simpel – die RAM-Bausteine werden einfach in den RAM-Bus vom Amiga eingebunden, die Echtzeituhr bekommt ihren Takt von einem externen Uhrenquarz und damit die Uhrzeit beim Abschalten des Geräts nicht verloren geht steht ein Akku bereit. Dieser wird während des Betriebs geladen und entlädt sich langsam, wenn man den Amiga wieder abschaltet. Blöderweise neigen die Akkus zum Auslaufen, wenn sie tiefenentladen wurden und fressen mit ihrer Säure die Leitungen von der Erweiterung an. Ich werde deswegen auf eine “No Leak”-Batterie setzen.

Planung

Als nächstes habe ich den Expansionsport vom Amiga 600 angesehen:

Recht selbsterklärend – die DRD(aten) und BDRA(dress)-Leitungen des RAM-Bus vom Amiga werden bis an den Expansionsport durchgeschliffen. Daran müssten sich neue RAM-ICs hängen lassen. Im Amiga sind ab Werk 256Kx16-ICs verbaut, die werde ich auf meine Erweiterung auch nehmen.

Als nächstes habe ich mir den Schaltkreis der Uhr angesehen. Die wird ebenso an den Expansionsport geklemmt, an den A(dress)- und D(aten)-BUS für die RTC.

Dann habe ich geschaut welche Pins des Uhren-ICs (MSM6242B) auf der alten Platine noch mit dem Amiga verbunden waren und glich es mit dem Datenblatt ab:
Zur Erklärung:
Grün – bereits bekannt und verdrahtet
Rot – Mit dem Expansionsport verbunden

Bei der Gelegenheit habe ich auch bemerkt dass es eine platzsparende 24-pin PSOP-Variante vom IC gibt, super. Die werde ich einsetzen.

Aus einer Amiga-Datenbank habe ich dann noch diesen Schaltplan geangelt, damit waren dann keine Fragen mehr offen:
Den Teil der Stromversorgung habe ich allerdings verworfen und anders gemacht – schließlich wollte ich keinen Akku einsetzen und brauchte die 12V deswegen auch nicht. Laut Datenblatt funktioniert der Uhren-IC bis 2.0V, also reicht in dem Fall auch eine normale 3V-Knopfzelle.
Die Umschaltung zwischen Spannung vom Amiga im eingeschaltetem Betrieb und der Spannung der Batterie habe ich mit zwei Schottky-Dioden realisiert (BAT54C). Damit der Wechsel der beiden Stromversorgungen unterbrechungsfrei funktioniert ist noch ein schmucker Panasonic Low-ESR-Kondensator verbaut.

Und so schaut der Schaltplan aus:
Keine Sorge, am Ende gibt es den Schaltplan und alles andere noch als Vektorgrafiken 🙂

Platine planen, Bauteile finden

Die Platine wollte ich so kompakt die möglich hinbekommen, deswegen habe ich primär auf SMD gesetzt. Bei einem Passtest in die Trapdoor stellte sich allerdings heraus dass mehr als ausreichend Platz vorhanden ist.
Die Suche nach einer Buchse gestaltete sich schwerer als erwartet, letztendlich blieb nur eine einzige Option – der Adafruit 3342. Leider gewinkelt und die Pins sind in vier Reihen auf der Platine angeordnet. Unpraktisch, aber machbar. Da der Winkel der Buchse ziemlich viel Platz wegnahm blieb mir am Ende nichts anderes übrig als die Platine kopfüber zu entwerfen. Bilder dazu kommen gleich, dann versteht ihr was ich meine 🙂
Beim RAM habe ich wie geplant denselben Typen genommen wie den der Amiga-Platine. Den günstigsten den ich finden konnte war in einem SOJ-Package.. das mag ich zwar nicht gerne verlöten, aber Geiz ist geil 😉
Statt die Batterie fest mit Lötfahnen mit der Platine zu vereinen habe ich einen flachen SMD-2032-Batteriehalter genommen.
Die Bauteile habe ich allesamt von mouser.com, bis auf den Uhren-IC und RAM. Die habe ich aus der Bucht.

Platine fertigen und Zusammenbauen

Und so sehen die Platinen aus, wenn sie vom Hersteller zurückkommen, mit Einbuchtungen bei der Batterie um die Platine leichter aus dem Expansionsport ziehen zu können:
Ich beschrifte immer ganz gerne alle Bauteile 🙂 Dadurch dürfte sich eine Reparatur ziemlich vereinfachen. Auf der Rückseite noch mal der Hinweis für die “Kopfüber”-Montage:
Und so schaut dann auch schon die fertige Platine aus:
Es bietet sich immer an, die flachen Bauteile zuerst und die hohen zuletzt zu verbauen.
Den Quarz habe ich mit einem grünen Kupferlackdraht festgezurrt. Ich hatte keinen Draht zur

Hand der in die Bohrungen passt. Hält aber trotzdem super.

Die Batterie müsste – mit großzügigen Abzügen für Kondensator und IC – über drei Jahre halten.
Im Amiga steckt die Platine dann folgendermaßen:

Nachwort

Um die RAM-Erweiterung zu testen reicht es in der shell der workbench “avail” abzusetzen. In der “Maximum”-Spalte sollten dann die vollen 2MB erscheinen.

Die Zeit lässt sich mit dem Kommando date setzen, zum Beispiel: “date 01-Nov-98 14:10“. Danach nicht vergessen die Uhrzeit an den Uhren-IC zu senden, das funktioniert mit “setclock save

Download

Download Schaltplan + Gerbers

Hier kann man die Platinen auch direkt bei oshpark besorgen: https://oshpark.com/shared_projects/G0D5QyWy

Ein Gedanke zu „Amiga 600 RAM-Erweiterung mit Echtzeituhr

  1. oli

    Hallo, vielen Dank erst mal. Ich habe das Board nachgebaut. Speicher wird erkannt, aber bei setclock save wird die Uhr nicht gefunden. Einziger Unterschied bei mir, der Oki ist ein epson RTC62423. Der sollte baugleich sein. Könnte es daran liegen? cu oli

    Antworten

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

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