Hobby-Programmierer lieben Herausforderungen. Linux zum Laufen bringen, nun ja, irgendetwas ist eine Herausforderung, die viele für unwiderstehlich halten. Das neueste Beispiel besteht darin, es auf dem legendären Commodore 64 zum Laufen zu bringen. Es auf einem Mac zum Laufen zu bringen ist eine Sache, aber dasselbe auf einem 40 Jahre alten Computer mit 64 KB Arbeitsspeicher zu tun, eine ganz andere.
Entwickler Onno Kortmann (über Schrägstrich) verwendete Semu, einen einfachen RISCV32-Emulator, und kompilierte ihn mit llvm-mos, sodass der Code auf dem MOS Technologies 6502-Prozessor des C64 ausgeführt werden konnte. Es muss darauf hingewiesen werden, dass dies über einen Emulator und nicht auf echter Hardware geschah, obwohl es nur eine Frage der Zeit ist, bis dies geschieht.
Mit dem VICE Commodore-Emulator aktivierte Kortmann den „Warp-Modus“, der die ersten Startmeldungen innerhalb weniger Minuten anzeigte, obwohl dies auf einer echten Maschine viel länger dauern würde. Der Screenshot unten hat im Warp-Modus einige Stunden gedauert, was bedeutet, dass ein echter C64 eine Woche oder länger braucht, um Linux vollständig zu starten.
Der ursprüngliche Commodore 64 hatte nur 64 KB Arbeitsspeicher und die Ausführung eines leichten Betriebssystems ist ohne die Verwendung einer RAM-Erweiterungseinheit einfach nicht möglich. Kortmann gibt nicht an, welche REU er verwendet hat, aber C64-REUs waren mit bis zu 512 KB oder satten 0,5 MB Speicher erhältlich. Auch der MOS-Technologie-Prozessor des C64, der mit etwa 1 MHz läuft, ist nicht gerade das, was man als Geschwindigkeitsdämon bezeichnen würde.
Kortmann glaubt, dass es viel Raum für Verbesserungen gibt und sagt, dass eine Beschleunigung um das Zehnfache möglich sei. Angesichts der Einschränkungen der C64-Hardware können Sie jedoch selbst bei einer 10-fachen Beschleunigung nicht damit rechnen, dass nach Abschluss der Startsequenz viel Software ausgeführt wird. So etwas hat kaum einen Sinn, außer den Beweis zu erbringen, dass es machbar ist. Das macht es jedoch nicht weniger cool.
Wenn Sie möchten, finden Sie den Code und die Anweisungen unter Kortmanns Github-Seite. Ich bin mir nicht sicher, ob irgendjemand außer den masochistischsten oder gelangweiltesten Programmierern die Herausforderung annehmen würde, aber an diejenigen, die es tun: Respekt!
Ist Linux auf einem C64 praktisch? Nicht im Geringsten. Aber es ist auf jeden Fall eine beeindruckende Leistung, die Fans eines der größten Computer aller Zeiten zu schätzen wissen werden.