One ROM – Praxisbeispiel: Bank-Switching im C64

One ROM – Praxis: Vom Kernal-Turm zum sauberen Bank-Switching im C64

Manchmal stolpert man über alte Projekte und denkt sich:
👉 „Das war damals eine gute Idee… aber heute würde ich das anders machen.“

Genau so ging es mir mit meinem allerersten Commodore 64.


Der Ausgangszustand: „So hat man das damals gemacht“

Mein erster C64 ist… sagen wir mal… „gewachsen“ 😄

Verbaut sind:

  • Reset-Taster
  • 2 Schalter für Reset-Routing:
    • nur Floppy
    • nur C64
    • beide
    • keiner
  • 4-fach Drehschalter für bis zu 4 Kernals
  • zweifarbige LED zur Statusanzeige

👉 Ja, genau so hat man das damals gemacht.


Innenleben: Der berüchtigte „Kernal-Turm“

Im Inneren sieht es entsprechend aus:
  • mehrere EPROMs übereinander
  • viel Verdrahtung
  • unterschiedliche CS-Leitungen
  • mechanisch… sagen wir: herausfordernd

👉 Und natürlich:
Eine Litze hat sich mal wieder gelöst 🙄


Ziel: Weniger Chaos, gleiche Funktion

Was wollte ich erreichen?

  • mehrere Kernals behalten
  • weniger Verdrahtung
  • stabilerer Aufbau
  • einfachere Umschaltung

👉 Und natürlich:
Ein guter Grund, One ROM einzusetzen 😄


Lösung: One ROM + Dynamic Bank Switching

Ich habe mich für folgendes Setup entschieden:
  • One ROM 24 als Ersatz für mehrere ROMs
  • Dynamic Bank Switching für mehrere Kernals
  • Umschaltung über nur zwei Leitungen (X1, X2)

👉 Ergebnis:

  • deutlich weniger Kabel
  • keine gestapelten EPROMs mehr
  • sauberer und robuster Aufbau

Der große Unterschied zur alten Lösung

Früher:

  • 3× CS-Leitungen hin
  • 1× CS zurück
  • +5V und GND separat
  • komplexe Verdrahtung

Heute:

  • +5V
  • GND
  • X1
  • X2

👉 Fertig.


Nebenbei optimiert: LED-Ansteuerung

Ein netter Nebeneffekt:

  • die 5V-Leitung konnte ich gleich für die Dual-LED nutzen
  • weniger zusätzliche Verdrahtung nötig

👉 Die „gefährlichen“ Header-Pins für 5V/GND sind hier tatsächlich sinnvoll eingesetzt


Dynamic Bank Switching – unterschätzt, aber genial

Was mich überrascht hat:

👉 Ich habe kaum Beispiele dafür im Web oder Studio gefunden

Dabei ist das extrem praktisch:

  • mehrere ROMs gleichzeitig verfügbar
  • Umschaltung ohne Reflash
  • keine Neustart-Prozedur nötig

👉 Perfekt für:

  • verschiedene Kernals
  • SpeedDOS / FastDOS
  • Tests und Experimente

Meine Konfiguration

Hier meine verwendete Device-Konfiguration:

{
   "$schema": "https://images.onerom.org/configs/schema.json",
   "version": 1,
   "description": "Mandatory description about this config",
   "detail": "Extra detail about ths configuration",
   "notes": "Notes that appear after the list of sets",
   "rom_sets": [
       {
           "type": "banked",
           "description": "Multiple C64 ROMs",
           "roms": [
               {
                   "file": "http://www.zimmers.net/anonftp/pub/cbm/firmware/computers/c64/kernal.901227-03.bin",
                   "description": "C64 Kernal ROM, 901227-03",
                   "type": "2364",
                   "cs1": "active_low"
               },
               {
                   "description": "Speed Dos",
                   "file": "C:/Xgpro/UserData/c64_speed_dos.bin",
                   "type": "2364",
                   "cs1": "active_low"
               },
               {
                   "description": "Fast Dos",
                   "file": "C:/Xgpro/UserData/c64_fast_dos.bin",
                   "type": "2364",
                   "cs1": "active_low"
               }
           ]
       }
   ]
}

👉 Damit habe ich aktuell drei Kernals zur Auswahl.


Noch nicht perfekt (ehrlich bleiben 😄)

Ein paar Dinge würde ich beim nächsten Mal besser machen:

  • sauberere Farbkodierung (rot/schwarz wäre schöner)
  • weniger „fliegende“ Verdrahtung
  • stabilere Steckverbindungen

👉 Aber hey – es funktioniert 👍


Fazit

Der Umbau hat sich absolut gelohnt:

  • deutlich weniger Chaos
  • stabilerer Aufbau
  • flexiblere Nutzung
  • weniger Leitungen

👉 Und vor allem:
Kein EPROM-Turm mehr 😄


Persönliches Fazit

Ja, man kann sowas auch ohne One ROM bauen.

Aber:

👉 Mit One ROM macht es einfach mehr Spaß.

Und genau darum geht’s bei solchen Projekten.


Ausblick

Mögliche nächste Schritte:

  • mehr als 3 Kernals
  • externe Umschalter
  • bessere mechanische Integration

Autor: obbi, Mitglied des VzEkC e. V.

Dieser Beitrag wurde unter Hardware abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

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