Mini HowTo: C64 LUnix

Auch für den Commodore 64 existiert ein UNIX-Betriebssystem beziehungsweise eine Unix-ähnliche Variante. Das Betriebssystem LUnix ist vergleichsweise kompakt und passt auf eine einzige Diskette. Eine Speichererweiterung wird nicht benötigt. Obwohl LUnix im Vergleich zu einem modernen Linux-System über einen reduzierten Funktionsumfang verfügt, sind ein TCP-Stack sowie einige Netzwerk-Tools enthalten, die die Verbindung zu anderen Rechnern ermöglichen. Darüber hinaus ist LUnix mit der Super-CPU kompatibel und unterstützt die REU-Speichererweiterung.

Was wird benötigt?
  • C64 mit Diskettenlaufwerk oder C64-Emulator
  • Lunix

Versionen

Das LUnix-Projekt existiert seit 24 Jahren, die Entwicklung scheint jedoch eingestellt worden zu sein. Die letzte veröffentlichte Version ist 0.21. Es existiert zwar eine nicht fertiggestellte Version pre 0.22, diese muss jedoch kompiliert werden. Die einzige Binärversion, die ich gefunden habe (siehe hier), wurde mit IDE64-Unterstützung kompiliert. Da die meisten von uns vermutlich keine IDE64-Hardware verwenden und diese LUnix-Version ohne entsprechende Hardware mit einem Kernel-Panic abstürzt, ist sie für uns weniger interessant. Daher greife ich an dieser Stelle auf die Version 0.21 stable zurück. Wir laden daher die Datei „lunix-c64.d64.gz“ herunter: sourceforge.net.

Der erste Start

Nach dem Entpacken der Datei wird die D64-Datei mit einem Emulator, beispielsweise VICE64, geladen. LUnix ist kompatibel mit der SD2IEC, daher kann dieses verwendet werden, wenn das Betriebssystem auf einem echten C64 getestet werden soll. Der übliche Befehl „LOAD“*“,8,1“ startet das Betriebssystem. Nach einer etwas längeren Ladezeit wird die LUnix Shell angezeigt, in der Befehle eingegeben werden können.


Durch Betätigen der Taste F3 wird ein zweites Terminal geöffnet. Um dort ebenfalls die Shell verwenden zu können, ist der Befehl „l sh“ (kurz für „load shell“) einzugeben.


Mithilfe der Tasten F1 und F3 kann nun zwischen beiden Programmen gewechselt werden. Dies kann auch durch die Tastenkombination SHIFT+Commodore-Taste erreicht werden.

Die Befehle

Unix bietet eine Vielzahl von Befehlen. Diese lassen sich durch Auflisten des Inhalts der Diskette (Befehl DIR) finden. Dort befindet sich für jeden Befehl eine HTML-Datei mit einer kurzen Beschreibung. Der Inhalt der jeweiligen HTML-Datei wird mit dem Befehl more angezeigt. Beispiel:

more uname.html


An dieser Stelle werden lediglich einige Befehle erwähnt. Es wird davon ausgegangen, dass die Shell (l sh) geladen wurde. Wie in einer Linux-Shell üblich, werden mit den Cursortasten nach oben und unten die zuletzt eingegebenen Befehle angezeigt. Dies erspart eine Menge Tipparbeit. Eine Auto-Complete-Funktion (Commodore-Taste) ist ebenfalls verfügbar.

Befehl: ls oder dir
Funktion: Listet den Inhalt der Diskette im Laufwerk 8 auf.
/disk9/ls hingegen den Inhalt der Diskette im Laufwerk 9.

Befehl: ps
Funktion: Zeigt die aktuell ausgeführten Prozesse an

Befehl: cp
Funktion: Kopiert eine Datei
Syntax: cp [Quell-Datei] [Ziel-Datei]
Beispiel: cp testdatei /disk9/

Befehl: rm
Funktion: Löscht eine Datei
Syntax: rm [Ziel-Datei]
Beispiel: rm /disk9/Datei

Befehl: uname
Funktion: Zeigt Informationen über das System an
Syntax: uname [Parameter]
Beispiel: uname -m

Eine serielle Verbindung aufbauen

Eine weitere Eigenschaft von LUnix ist die Netzwerkunterstützung. Es sind bereits diverse Befehle für die Konnektivität im Paket enthalten. In diesem Beispiel wird testweise eine serielle Verbindung zu einem PC hergestellt. Hierfür wird am C64 eine RS232-Schnittstelle benötigt. In diesem Fall handelt es sich um ein REX RS-232 9626 Interface.


Dieses Modul ist über ein Nullmodemkabel mit meinem Mac verbunden, funktioniert jedoch selbstverständlich auch mit jedem Windows- oder Linux-Rechner. Beachte, dass beide Rechner ausgeschaltet sein müssen, wenn das Modul oder das Kabel angeschlossen wird.

Auf dem Commodore 64 wird zunächst der Treiber für das RS232-Modul geladen. Dies geschieht durch Eingabe des Befehls „rs232std“. Im Anschluss muss das Terminal geladen werden: „232term“. Die Baudrate kann frei gewählt werden.


Am PC muss ebenfalls ein Terminal mit der gleichen Baudrate geöffnet werden. In diesem Fall wird das Mac-Tool „Serial Tools“ verwendet. Nach erfolgreicher Verbindung kann eine Testnachricht an den C64 gesendet werden. Dies funktioniert auch in umgekehrter Richtung.