One ROM – Praxisbeispiel: Zwei Firmware-Versionen in einem Retro-System
Nach den bisherigen Grundlagen und den Custom Images schauen wir uns diesmal ein konkretes Beispiel aus der Praxis an.
👉 Ziel: Zwei unterschiedliche ROM-Inhalte in einem Gerät nutzen – umschaltbar per Hardware
Das ist einer der Fälle, in denen One ROM seine Stärken voll ausspielt.
Ausgangssituation
Viele Retro-Systeme (z. B. alte Computer, Steuerungen oder Spielekonsolen) arbeiten mit fest verbauten ROMs.
Typische Probleme:
- Original-ROM ist schwer zu bekommen
- EPROMs müssen gebrannt werden
- mehrere Versionen lassen sich nur umständlich testen
👉 Genau hier kommt One ROM ins Spiel.
Ziel des Projekts
In diesem Beispiel wollen wir:
- Original-Firmware behalten
- modifizierte Firmware testen
- zwischen beiden Versionen umschalten können
Und das Ganze ohne EPROM-Brenner.
Benötigte Hardware
- One ROM (Fire oder Ice – je nach Aufbau)
- Zielsystem mit gesockeltem ROM
- optional: Jumper oder Schalter für Umschaltung
Vorbereitung der ROM-Dateien
- Original-ROM
→ ausgelesen oder aus dem Netz - Modifiziertes ROM
→ gepatcht / angepasst
Wichtig:
- beide müssen die gleiche Größe haben
- typischerweise .bin-Dateien
👉 Falls die Größe nicht passt, kannst du sie mit Tools einfach anpassen (padding).
Custom Image erstellen
Jetzt geht’s ins Web-Interface: https://onerom.org/web/
Schritt 1: Verbinden
- One ROM anschließen
- „Connect“ klicken
Schritt 2: Custom Image auswählen
Im Bereich Programming → Custom Image wechseln.
Schritt 3: ROM-Slots belegen
- Slot 0 → Original-ROM
- Slot 1 → modifiziertes ROM
Beide bekommen:
- gleiche Größe
- gleiche Adresszuordnung
Schritt 4: Umschaltung konfigurieren
Jetzt kommt der spannende Teil.
Du definierst, wie zwischen den ROMs gewechselt wird:
- über einen GPIO-Pin
- oder eine Steuerleitung (z. B. Axx / CS)
👉 Einfachste Variante:
Ein Pin wird als „Select“ verwendet:
- LOW → Slot 0
- HIGH → Slot 1
Schritt 5: Flashen
- „Program“ klicken
- warten, bis „Erasing“ und „Programming“ durch sind
👉 Fertig.
Einbau ins Zielsystem
Jetzt wird das One ROM wie ein normales ROM eingesetzt:
- in den Sockel stecken
- auf richtige Ausrichtung achten (!)
Falls du einen Umschalter nutzt:
- Schalter zwischen GND und Signalpin
- ggf. Pull-Up/Pull-Down beachten
Testlauf
Beim Einschalten kannst du jetzt testen:
- Stellung 1 → Original-Firmware
- Stellung 2 → modifizierte Version
👉 Das Umschalten funktioniert je nach System sogar im laufenden Betrieb – aber vorsichtig testen!
Typische Anwendungen
Dieses Setup ist extrem vielseitig:
- Debug vs. Release-Firmware
- verschiedene Software-Versionen
- Sprachversionen
- Test- und Experimentierumgebungen
Häufige Fehler
❌ System startet nicht
- falscher ROM-Typ eingestellt
- Adressleitungen passen nicht
❌ falsche Inhalte
- ROM falsch zugeordnet
- Image nicht korrekt erstellt
❌ Umschaltung funktioniert nicht
- falscher Pin gewählt
- kein sauberer Pegel
👉 Tipp: Erst mit nur einem ROM testen, dann erweitern.
Erfahrung aus der Praxis
Gerade beim Experimentieren ist das ein riesiger Vorteil:
Früher:
- EPROM brennen
- einsetzen
- testen
- wieder rausnehmen
- EPROM mit UV-Löschgerät löschen
Heute:
- im Browser klicken
- flashen
- fertig
👉 Das spart enorm Zeit – und schont die Hardware.
Fazit
Dieses Beispiel zeigt sehr gut, warum One ROM so interessant ist:
- ersetzt mehrere EPROMs gleichzeitig
- ermöglicht schnelles Testen
- reduziert Hardware-Aufwand
Und das alles mit einem kleinen Board und einem Browser.
Ausblick
Mögliche nächste Themen:
- Mehr als zwei ROMs (Bank-Switching)
- komplexe Mapping-Strategien
- Timing-Probleme und Lösungen
- konkrete Systeme (z. B. C64, Arcade-Boards, etc.)