Retro-Chips selbst gemacht: Historische Hardware in FPGAs nachbilden

Stage HUFF
Till Harbaum
Retro-Computing ist heute die Domäne der bekannten Software-Emulatoren. Aber auch die ursprüngliche Hardware selbst kann und sollte dokumentiert und konserviert werden. Ich zeige, was es damit auf sich hat und wie man daheim mit moderatem Einsatz einen ganzen Retro-Computer nachbaut. Mit Hilfe von rekonfigurierbaren Chips klappt das auch weitgehend ohne Löten oder die allgegenwärtigen Arduinos und Raspberry-Pis.
Der Begriff Maker ist inzwischen eng mit den Arduinos und dem Raspberry-Pi verbunden. Auch wenn es um den Erhalt historischer Systeme geht sind Nachbauten in Form von Emulatoren auf Raspi-Basis ganz vorne dabei. Das ist verständlich, wenn man sieht wie preisgünstig diese Geräte sind, wie viele entsprechende Retro-Projekte es gibt und wie einsteigerfreundlich sie sich meistens nutzen lassen. Aber neben der klassischen Software gibt es mehr zu erhalten: Die historische Hardware lässt sich leider nicht mal eben auf einen USB-Stick kopieren. Und mit den alten Geräten geht auch das Wissen dahinter verloren und die oft eleganten oder trickreichen Lösungen, die in der Anfangszeit nötig waren, um bezahlbare Hardware mit einfachsten Mitteln zu bauen. Ich zeige, wie sich wesentliche Aspekte der Systeme mit Hilfe von konfigurierbarer Hardware erhalten und auf elegante Weise dokumentieren lassen. Ich zeige Euch, wie man mit geringem Materialeinsatz aber viel Neugierde Retro-Systeme in FPGA-Chips wieder zum Leben erweckt. Was braucht man? Wo bekommt man es her? Und wie wird daraus ein Heimcomputer der 80er? Das zeige ich unter anderem am konkreten Beispiel des NanoMig, der Nachbildung eines Commodore Amiga Homecomputer, dessen gesamte Hardware sich in einem modernen FPGA unterbringen lässt ... ganz ohne Arduino- oder Raspberry-Pi-Unterbau. FPGA-Retrocomputing ist in den letzten zehn Jahren populär geworden. Auch das von mir vor gut zehn Jahren entworfene MiST-Board aber vor allem das darauf folgende MiSTer-Projekt hatten ihren Anteil daran. Diese Systeme werden oft als etwas fortschrittlichere Emulatoren (miss-)verstanden, hinter ihnen steckt aber vor allem eine als rekonfigurierbare FPGA-Hardware bezeichnete recht ungewöhnliche Technik abseits üblicher CPUs, Speicher- und Peripheriebausteine. Auf die Geschichte und Hintergründe werde ich nur kurz eingehen. In diesem Vortrag soll es um die Praxis gehen. Ich werde beschreiben, was man an Hard- und an Software für die ersten Schritte auf dem Weg zur Wiederbelebung von Retro-Hardware benötigt. Wie es sich für Open-Source gehört muss man auch hier nicht das Rad immer wieder neu erfinden. So wie die damaligen Computer viele Gemeinsamkeiten hatten, so sind auch in ihren FPGA-Nachbauten viele Komponenten wiederverwendbar. Aber wie wird aus einem realen Chip überhaupt etwas, das einen realen FPGA-Baustein zu gleichem Verhalten animiert? Wie wird die Logik beschrieben? Was lässt sich aus alten Hardwareunterlagen direkt übernehmen? Was lässt sich in FPGAs (leider) nicht mehr direkt realisieren? Schließlich wird es darum gehen, wie man ein solches Projekt überhaupt angeht. Natürlich sind Klassiker wie der Commodore C64 oder der Amiga die verlockendsten Ziele für solche Vorhaben. Für die ersten Schritte eignen sich aber vor allem viele der einfacheren Maschinen oder sogar selbst erdachte Geräte. Ganz ohne Lötkolben verkabelt man sich den eigenen Retro-Computer und spätestens wenn der erste eigene Videochip das erste Testbild auf den VGA-Bildschirm bringt wird klar: Das ist kein Arduino. Der Umgang mit konfigurierbare Hardware ist nicht unbedingt komplizierter als die Arbeit mit Arduino und Co. Aber sie ist fundamental anders. Viele Denkmuster, die erfahrenen Programmierern in Fleisch und Blut übergegangen sind, lassen sich nicht auf Hardware übertragen oder sind, wie sich zeigen wird, sogar irreführend. Und wie debuggt man überhaupt einen selbstgebauten Chip? Und was wird aus Fernseher und Floppy-Diskette, die damals zwingendes Zubehör waren? Und wenn selbst der Mikroprozessor Teil der Konfiguration ist, dann kann man natürlich beliebige Änderungen vornehmen. Fehlte Dir damals dieser eine Befehl, der alles revolutioniert hätte? Hätte der Atari ST den Amiga ausgestochen, wenn er Hardware-Sprites unterstützt hätte? Probier es aus! Konfigurierbare Hardware bedeutet auch, dass alles veränderbar ist. Ein Dual-Core C64? Ein ZX81 mit Tonausgabe und Farbdarstellung? Warum nicht gleich der eigene 8-Bit-Wunschcomputer? Und wem das alles noch viel zu einfach erscheint, der erfährt schließlich, wie er mit Hilfe von Platinenproduktion in Fernost und dem heimischen 3D-Drucker nicht nur Software und Hardware erhält, sondern gleich die ganze Maschine noch einmal zum Leben erweckt. Am Ende meines kleinen Vortrags werdet ihr wissen, wie ihr Euer eigenes Retro-Projekt für kleines Budget startet und vielleicht mithelft, das Wissen hinter der ursprünglichen Hardware zu erhalten. Ihr lernt, wie man die ein oder andere Maschine wieder in einer Form erlebbar macht, die über die übliche Softwareemulation auf einem PC hinausgeht.

Additional information

Live Stream https://streaming.media.ccc.de/38c3/huff
Type Talk 40 (30min +10 Q&A)
Language German

More sessions

12/27/24
Aaron Schlitt
Stage YELL
Exploring the security of the new iPhone Mirroring feature as well as the current threat model of the iOS ecosystem
12/27/24
captain-maramo
Stage YELL
Das neue Gesetz über die Selbstbestimmung in Bezug auf den Geschlechtseintrag (SBGG) ist da und Menschen können endlich unkompliziert ihren Geschlechtseintrag und ihre Vornamen ändern lassen. Doch der Weg dahin ist nicht einfach. Kommt mit auf eine Roadshow gespickt mit Tipps und Erfahrungen, damit ihr eurer Ziel einfacher erreicht.
12/27/24
WillCrash
Stage YELL
In a world of centralized internet control, building your own mesh network isn't just a technical challenge—it's digital independence. This beginner-friendly guide walks through creating resilient mesh networks using accessible hardware like LoRa and ESP devices. From antenna selection to node placement strategy, learn how to build networks that operate independently of traditional infrastructure.
12/27/24
Swantje Lange
Stage YELL
End-users in cellular networks are at risk of connecting to fake base stations, and we show that mitigations pushed in 5G are insufficient.
12/27/24
derMicha
Stage YELL
Im Rahmen eines vom Prototype Fund geförderten Projektes entstand zusammen mit 4 Schulen die Open Source Software BinBa. Diese Software wurde in enger Zusammenarbeit mit den Schulen konzipiert, umgesetzt und in Betrieb genommen. In dem Talk soll der Weg über die Finanzierung mit Hilfe des Prototyp Funds, die Softwareentwicklung zusammen mit den LehrerInnen und SchülerInnen also auch die Inbetriebnahme beleuchtet werden.
12/27/24
RoteHilfe
Stage YELL
Staatliche Repression aufgrund der Teilnahme an Demonstrationen oder wegen anderer politischer Tätigkeiten gehören zur leidigen Erfahrung von Aktivist*innen. Wir geben Tipps und diskutieren, wie man mit einigen, typisch auftretenden Situationen bzw. Repressionsmaßnahmen umgehen kann.
12/27/24
Alvar C.H. Freude
Stage YELL
Wenn Sicherheitsforscher und Hacker Datenlecks direkt dem dafür Verantwortlichen melden, setzen sich u.U. strafrechtlichem Risiko aus oder werden auch mal schlicht ignoriert. Stattdessen kann es in der Praxis aber auch sinnvoll sein, die Möglichkeiten der DS-GVO und die Befugnisse der Datenschutz-Aufsichtsbehörden zu nutzen, um Sicherheitslücken schnell zu schließen.