Hack, Make & Break

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

Type Talk 40 (30min +10 Q&A)
Language German

More sessions

12/27/24
Hack, Make & Break
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
Hack, Make & Break
zeno
Stage HUFF
A field guide to dumping and reverse engineering a bare-metal U-Boot binary, including all the good stuff like funky hardware setups, UART logs, a locked bootloader and unknown base addresses.
12/27/24
Hack, Make & Break
altf4
Stage HUFF
Everyone kind of forgot about DNS. How does it work, how to claim it back and why?
12/27/24
Hack, Make & Break
Daniel Dakhno
Stage HUFF
How to remote-control (and build) the weirdest devices with Bluetooth Low Energy and no programming.
12/28/24
Hack, Make & Break
Yoshinari Nishiki
Stage HUFF
In this talk, an advocate of (un)making, Yoshinari Nishiki, dives into the historical foundation of the concept. Starting from the Maker movement, transitioning to Critical Making, evolving into unmaking, and culminating in (un)making, Yoshinari emphasizes a process defined by the deliberate absence of production, where (un)making itself embodies the act of not producing. Unmaking is a newly emerged term in the fields of HCI and design that references the idea of unlearning. In unmaking, ...
12/28/24
Hack, Make & Break
Stage YELL
In Zeiten, in denen digitale Bildung immer wichtiger wird, bleiben viele Schulen hinter den aktuellen Anforderungen zurück. Ein Ansatz, um das zu ändern, ist der MakerSpace – ein offener Raum, in dem Schüler:innen kreativ arbeiten und selbstständig Projekte umsetzen können. An unserer Schule nutzen wir 3D-Drucker, Lasercutter und andere Technologien, die sowohl für private Projekte als auch im Unterricht eingesetzt werden. Damit haben wir die Möglichkeit, eigene Ideen zu verwirklichen ...
12/28/24
Hack, Make & Break
Davis DeWitt
Stage HUFF
Look behind the scenes with filmmaker, inventor, and former Mythbuster Davis DeWitt and learn how Hollywood hackers combine prototyping and art to bring movie magic to life! Through real-world examples, this talk will explore the unique challenges of creating builds for the entertainment industry, from designing prototypes to filming the final sequence and everything in between.