Embeddable Linux Kernel Subset auf dem NuXT

Da ich mich schon länger mit zwei PCs der 16 Bit x86 XT-Klasse beschäftige, – über das originale Schätzchen von IBM hatte ich aber bisher noch gar nicht geschrieben – kam ein Kollege vor ein paar Wochen mit dem Link zum ‚Embeddable Linux Kernel Subset‘ (kurz: ELKS) auf mich zu. ELKS ist relativ kurz gesagt in Projekt, das einen frühen Fork des Linux-Betriebssystems für Systeme mit Intel IA16-Architektur (16-Bit-Prozessoren: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 und kompatible) bereitstellt. in Projekt, das einen frühen Fork des Linux-Betriebssystems für Systeme mit Intel IA16-Architektur (16-Bit-Prozessoren: 8086, 8088, 80188, 80186, 80286, NEC V20, V30 und kompatible) bereitstellt. Unterstützt werden Netzwerk, Grafik, ia16-elf-gcc, OpenWatcom C und ein eigener nativer C-Compiler, sowie die Installation auf Festplatten mit den FAT-Dateisystemen MINIX und MSDOS. Die Bitte war, auch auf der historischen Hardware-Klasse neben dem üblichen DOS auch ein für die Zeit der Architektur unüblich ein Linux zu betreiben.
Schnell habe ich mir von der GitHub-Projektseite das heruntergeladene, 1,44 MB große Floppy-Image auf eine Diskette kopiert, um es auf meinem NuXT mit NEC V20 Prozessor und 640 KiB RAM starten zu können. Die Installation auf ein durch eine CompactFlash Karte dargestelltes Festplattenlaufwerk hatte ich nicht mehr hinbekommen. Da auch bereits im Gegensatz zu den 360 und 720 KB Disketten-Images das vollständige Subset auf der 1,44 MB Variante Platz findet und die Diskette erfolgreich gebootet war, war somit die Machbarkeitsstudie mit dem derzeitigen ELKS in Version 0.8.1 erfolgreich abgeschlossen.

Jetzt am Wochenende hatte mich der Ehrgeiz aber erneut gepackt, und ich wollte es nicht unversucht lassen. Direkt bei dem erneuten ersten Versuch hat es geklappt und ich konnte das ELKS von der echten, 1,44 MB großen Diskette auf eine übrige 256 Megabyte große CompactFlash Karte installieren. Allerdings empfand ich zum einen die Formatierung der CF-Karte mit dem Minix-Dateisystem als nicht optimal, zum anderen hielt ich die 256 MB Karte grundlegend für zu groß. Irgendwo hatte ich schließlich noch eine ungenutzte 64 MB Karte, die mir in Bezug auf die Speichergröße für die Rechenleistung der XTs geeigneter erschien. Nur mit dem Versuch, die Installation von Diskette auf CF-Karte in Vernünftig durchzuführen, wurde zum Drama!:
Ich bekam sowohl beim Ausführen der Programme zur Bearbeitung und Formatierung des Zielmediums, als auch beim Kopieren der einzelnen Dateien des Subsets von Quell- auf Zielmedium Lese- und Schreibfehler. Ist die ganze Blockstruktur so empfindlich für Disketten? Ich habe also unterschiedliche 3,5″ HDD Disketten, anderer USB-Diskettenlaufwerke für meinen Internet-fähigen Computer, sowie ein anderes internes Diskettenlaufwerk für den XT ausprobiert, aber ohne Besserung. Auch das Ausprobieren der Images auf FAT32- statt der Minix Dateisystembasis ergab keinen Unterschied. Die Alternative war dann das stupide Kopieren der vorgefertigten Harddisk Images von der Projekt-Download-Seite. Das Problem dabei: sowohl die Images mit MBR, als auch ohne, ließen sich nicht booten, da das Boot-Flag in der Image-Geometrie fehlte. Nach stundenlangem Probieren hatte ich schließlich erst wieder Erfolg, nach dem ich mir unter einem Windows Computer einen USB-Stick für mehrere Floppy-Images erstellt und das entsprechende 1,44 MB Image hineingeladen hatte. Dies bedeutete aber auch, dass ich den NuXT einen Floppy-Emulator nur für diesen Zweck einbauen musste. Nur für den einen Zweck, das ELKS von einer „Diskette“ auf eine CF-Karte zu installieren, bedeutet dies sehr viel Bastelei. Ausführen der Festplattenprogramme und Kopieren der Dateien von USB-Stick verliefen dann ohne nennenswerten Lese- und Schreibfehlern.

Quelle: https://frankfurt.social/@sommteck/115091257215484879 (eigner Mastodon Feed)
ELKS Installation mit NuXT Versuchsaufbau

Ich werde mal abwarten, bis eine neuere Version als die aktuelle 0.8.1 zur Verfügung steht. Vielleicht wurden dann die vorgefertigten Harddisk Images mit einem Boot-Flag nachgebessert. Weitere Konfiguration, sowie Optimierungen werde ich mal separat behandeln. Hoffentlich dann mit den Eindrücken des eigenen IBM XT PCs. Hier nur die Kurzanleitung zur Installation von Floppy auf eine 64 Megabyte CompactFlash-Karte.

fdisk /dev/hda
  • n → neue Partition /dev/hda1 über das ganze Speichermedium
  • b → bootable Flag setzen
  • w → schreiben, dann q zum Verlassen
mkfs /dev/hda1 60000     # MINIX v1 erstellen
sys -M /dev/hda1         # ELKS + Bootloader installieren
echo "##" > /bootopts
echo "root=hda1" >> /bootopts
sync; shutdown -r

Links:

nGlide

In den erst kürzlich veröffentlichten Videos ‚PCI GeForce FX 5500‘, ‚Overlooked High Performance Windows 98 Retro GPU: GeForce 6600 GT‘ und ‚E8600 Windows 98‘ hat Phillip auf seinem YouTube-Kanal PhilsComputerLab fast schon nur beiläufig erwähnt, dass er für seine Retro Computer Builds neben dem regulären Grafiktreiber der verbauten Grafikkarten auch nGlide zusätzlich installiert. nGlide ist ein 3dfx Voodoo Glide Wrapper. Damit können Spiele gespielt werden, die für die 3dfx Glide API entwickelt wurden, ohne tatsächlich eine 3ffx Voodoo-Grafikkarte zu benötigen. Alle drei API-Versionen werden unterstützt: Glide 2.11 (glide.dll), Glide 2.60 (glide2x.dll) und Glide 3.10 (glide3x.dll). nGlide emuliert lediglich die Glide-Umgebung mit Direct3D und Vulkan. Der Glide Wrapper unterstützt auch hochauflösende Modi. – So die Beschreibung auf der Webseite von ZEUS-Software. Dass es die Glide-Wrapper gibt, ist bisher irgendwie an mir vorbeigegangen, aber neben nGlide gibt es seit sie schon einige Jahre. Hatte ich mir in den letzten beiden Jahren doch die Mühe gemacht, für die in meiner Sammlung enthalten Spiele, die als einzige 3D-Hardwarebeschleunigung Glide unterstützen, ein authentisches 400 Megahertz Pentium 2 System aus Scrapyard-Teilen plus auf eBay gekaufter Creative Voodoo 2 Karte zusammenzubauen. Man könnte jetzt sagen: „Das Geld für eine gebrauchte Voodoo (Beschleuniger) Grafikkarte hätte man sich eigentlich sparen können!“ – Nur so einfach ist die Kiste dann aber doch nicht! Ein Glide-Wrapper ersetzt in einem zeitgenössischen System auf Basis von Pentium 2, Pentium 3 oder einem AMD-Äquivalent nicht den richtigen 3dfx Hardware-Beschleuniger. Da die Wrapper eine Hardware-Ebene in Software nachbilden, braucht es einen entsprechend leistungsfähige 2,0 Gigahertz Prozessor. Im Gegensatz zu anderen verfügbaren Wrappern, die ich sowieso nicht ausprobiert habe, ist nGlide Software-seitig auch mit Windows XP und einer DirectX 9.0 Grafikkarte kompatibel. Es gibt auch das Gerücht, dass nGlide auch unter Windows 98 zum Laufen gebracht wurde, was bezüglich des Alters des Betriebssystems noch eine Stufe authentischer ist, werde es aber selber nicht ausprobieren.

Bezüglich des Mehrwertes der verfügbaren, kompatiblen Spiele muss ich aber deutlich differenzieren. Für viele PC-Spiele aus den Jahren 1996, 1997 und 1998, die durch nGlide unterstützt werden, ist dieses eine echte Alternative. Dies betrifft Titel wie Tomb Raider 1 oder Hexen 2, da es seinerzeit als ernstzunehmenden 3D-Beschleuniger nur die auf die Glide-API basierenden Karten mit Voodoo Chips gab. Das 1996 erschienene Tomb Raider besitze ich zwar nicht in meiner Sammlung, möchte es aber dennoch erwähnt habe, da es noch zu deren Glide-beschleunigten Titel zählt, die nicht unter Windows, sondern stattdessen unter MS-DOS ausgeführt wurden. Für nGlide ist hierfür also noch die Emulations-Ebene mit DOSBox nötig. Dasselbe gilt für das in der ersten Auflage ebenso für MS-DOS veröffentlichte Grand Theft Auto. Die im Jahr 1998 erschienen Titel ‚Popolous 3 – The Beginning‘, sowie das „Ur-“ Unreal sind zu meinem Leidwesen nicht mit nGlide kompatibel. Aus der Unreal-Reihe braucht es dann schon das im Jahr 1999 erschiene Unreal Gold oder Unreal Tournament. Bezüglich Popolous 3 von Bullfrog wäre ich darauf angewiesen, einen anderen Wrapper auszuprobieren, wenn ich nicht im Besitz der originalen Voodoo 2 Karte von Creative wäre. (Anmerkung: Es gibt einen Patch, der Software Rendering mit Direct 3D ermöglicht, lief unter Windows 7 aber nicht wirklich zuverlässig.) Ab 1999 wurden aber auch zunehmend mit Titeln wie Quake 3 Arena veröffentlicht, die als alternative 3D-Rendering API OpenGL anboten, oder wie bereits mit UT99 erwähnt, zunehmend mit Direct 3D ein besseres Software-Rendering anboten. Mit den von mir gespielten Titeln ‚Star Treck: Voyager – Elite Force‘ und Daikatana – beide im Jahr 2000 erschienen – konnte ich keinen optisch-qualitativen Unterschied ausmachen.

Wer die Geschichte der Grafikarten und 3D-Beschleunigern vor etwa 25 Jahren ein wenig mitverfolgt hat, hat ja mitbekommen, wie der Chip-Hersteller nVidia mit der TNT(2) Reihe deutlich an das Know-How der 3dfx-Chips aufgeholt, sowie letztendlich mit der Markteinführung der GeForce 256-Reihe, die dann auch technologisch deutlich überlegen war, vollständig den Rang abgelaufen hat. Der Rest ist dann nur noch Geschichte. nVidia hat im Jahr 2001 den Konkurrenten 3dfx aufgekauft und deren Marke liquidiert.

Links:

Kleine Versuche mit Linux auf dem Desktop

In meinem ThinkPad T420 hatte ich neben der originalen, klassischen Festplatte vor vier noch den mSATA Slot mit einer entstehenden SSD bestückt für ein zusätzliches Linux, habe sie dann aber bis jetzt nicht gebraucht. Na ja, da hatte mal wieder Leistung auf Vorrat gekauft.
Aus Lust und Laune, sowie genügend Zeit heraus habe ich vor knapp einem Monat es in Angriff genommen und auf die SSD wieder ein aktuelles Debian Linux frisch installiert. Diesmal wollte ich aber die vollständige Linux-Installation mit einem Logical Volume Manager (LVM) und LUKS verschlüsselt haben. Um aber jetzt wie bei einer früheren Debian-Installation zu vermeiden, dass die letzte (physische) Partition – diese war ohne LVM – nicht wieder mit einem unvollständigen Cluster abgeschlossen wird, bei der sich dann das System über ein fehlerhaftes Dateisystem beschwert, habe ich die Partitionierung im geführten Modus, „gesamtes Medium verwenden“, „LVM-verschlüsselt“, im Debian-Installer gewählt. Ich wurde aber während des Partitionierungsvorgang insofern enttäuscht, als ich kein Einfluss auf die Größen sämtlicher Partition hatte. Abgesehen von der unverschlüsselten /boot Partion mit Bootloader, Bootmanager und Kernel, die für mich mit einer Größe von gut 500 Megabyte erst einmal passabel erscheint, wurde die Swap-Partion mit einem Gigabyte, meine separate /home-Partition mit 224 Gigabyte, sowie die Partition für die restliche Dateisystemstruktur ab der Wurzel mit 30 Gigabyte bemessen. Ich persönlich hätte aber für Swap gerne mehrere Gigabyte, im Zweifel bis 8, und auf alle Fälle für die Partition mit der Wurzel zumindest die 50 Gigabyte gehabt. (Die Partition innerhalb des Volume Groups werden richtiger weiße Logical Volumes genannt!) Ich beließ es also erst einmal dabei, weil ich wusste, dass sich die Logical Volumes einem Physical Volume sich auch noch nachträglich bearbeiten lassen.
Bei der Installation des Debians ist mir auch bei der Wahl der grafischen Oberfläche aufgefallen, dass es neben Gnome jetzt auch neu Gnome-Flashback gibt. Als alter Liebhaber von Gnome 2 hätte ich es eigentlich dem Mate-Desktop vorziehen und mal ausprobieren sollen. Aber die Macht der Gewohnheit siegte wieder mit dem Mate-Desktop.

Letzte Woche habe mich dann nun hingesetzt um zu Versuchen, dass ich das /home-Volume soweit verkleinere, damit ich das Volume für / um 20 Gigabyte und auch das Swap-Volume etwas vergrößern kann. Allerdings habe ich das Vorhaben nach einer Weile wieder abgebrochen, weil während meiner Suche über die im System enthaltene Online-Dokumentation ich keine entsprechenden Programmbefehle finden konnte, die mir die aktuellen Größen der Logical Volumes und freien Speicherplatz der Volume Group anzeigen können, nachdem ich Commandline-Befehle zum Verkleinern des 224 Gigabyte großen /home-Volumes bereits abgesetzt hatte. Im Nachhinein wäre vielleicht der Artikel über Logical Volume Manager im deutschsprachigem Ubuntuusers-Wiki hilfreich gewesen. Stattdessen habe ich dann die Möglichkeit gesehen, bei einer Neuinstallation des Debian-Linux’s die Partitionierung des verschlüsselten LVMs händisch vorzunehmen und als Desktop-Envoirement eben nicht den Mate-Desktop, sondern mal Gnome-Flashback zu Verwenden. – Gesagt, getan!
Ich habe mir schon fast die Hände gerieben gehabt, mit der Vorstellung ein vollständiges Desktop-Envoirement von Gnome 2 nach dem ersten Boot-Vorgang wiederzufinden. Aber auch hier wurde ich wieder enttäuscht! Der Displaymanager mit dem Login-Dialog war der von Gnome 3. Letztendlich ist Gnome-Flashback ein vollständiges Gnome in GTK+ 3, nur mit dem alten GnomePanel von Gnome 2 ohne dynamischen Desktop-Elementen. Klar ist es möglich, das Design der Fensterelemente zusätzlich im Nachhinein so anzupassen, dass es wieder mehr nach Gnome 2 aussieht, aber am Ende bleibt es Gnome 3, welches mehr Ressourcen als der Mate-Desktop für mein altes ThinkPad T420 benötigt und auch aus ein paar mehr Paketen zusammen gebaut ist. – Also alles zum dritten mal wieder neu und mit manuellem LVM-Einrichten zurück zum Mate-Desktop.
Was mir aber bei der manuellen Einrichtung der Logical Volumes aufgefallen ist, dass bei der geführten Partitionierung der Debian-Installer für die unverschlüsselte Boot-Partition das alte ext2-Dateisystem verwendet. Das hatte mich seinerzeit schon gewundert, aber gut! Bei der manuellen Partitionierung quittierte mit der Installer die Auswahl von ext2, dass ich doch bitte ein moderneres Linux-Dateisystem verwenden sollte. Ich habe mich erst einmal mit ext3 begnügt. – Ehrlich gesagt hätte ich aber auch direkt ext4 nehmen sollen.

Abgesehen von den dargestellten Erkenntnissen oben, wurde mir von einer Person das Commandline-Tool tldr wie im Sinn von ‚too long; didn’t read‘ empfohlen, mit welchen es möglich ist, quer durch alle Manual-Pages nach Begriffen suchen zu können, um herauszufinden, welche Dokumente sich mit dem Schlagwort auch befassen. Dieses werde ich auch auf alle Mac’s wie MacPorts mal installieren.

Links:

(Keine) Spuren im Netz

Am kommenden Dienstag, dem 18. April 2023 lädt der Chaos Computer Club Frankfurt ab 19:00 Uhr zum Themenabend „(Keine) Spuren im Netz“ ein. Neben zwei kleinen Vorträgen über ‚Digitale Identität‘ und ‚Digitale Selbstverteidigung‘ gibt es auch ein Workshop-Angebot zum Mitmachen. Stationen werden unter anderen „Alternative Browser installieren“, „Datenschutzfreundliche Browser-Einstellungen“ und „Werbe-Blocker installieren“ sein.
Der Veranstaltungsort wird das Hackquarter des CCC-FFM in der Häuser Gasse 2 in 60487 Frankfurt am Main sein. Das Mitbringen eigener Endgeräte wie Smartphones oder Laptops ist aber für das Mitmachen bei den Workshops Voraussetzung.

Links:

Norton Editor von 5,25″ Diskette

Ein Arbeitskollege hatte beim Aufräumen zu Hause noch den Norton Editor von Symantec in der Version 2.0 für den PC aus dem Jahr 1990 gefunden. Sicherlich hatte er ihn auch in dieser Zeit Anfang der 1990er Jahre gekauft. Da er die nun inzwischen historische Software in der Boxed-Version nicht mehr benötigt, hat er sie unserem kleinen IT-Service Computer-Museum auf der Arbeit überlassen.
Von der 3,5″ Diskette hatten wir noch ein Image gemacht, daher konnten wir sagen, dass sie noch funktionierte. Die 5,25″ Diskette stattdessen benötigte er nie, da er nie selber ein entsprechendes Laufwerk besaß. Ich meine mich aber zu erinnern, dass er sagte, dass es ihn dennoch interessieren würde, ob sie noch funktioniert. Deswegen habe ich sie auf meinen NuXT PC mal ausgelesen und so selber den Norton Editor von Symantec ein wenig ausprobiert.

Direktlink

Links: