Coherent 3.0 (3.2 mit Update) für 286er

  • Habe mal (virtuell) mit Coherent 3.2 herumgespielt. Man kann das auch "from scratch" via Disketteninstallation (4 Disketten) und ein paar Update-Floppies machen, habe ich mir aber geschenkt, weil Udo Munk bedankenswerter Weise eine "fertige" PCem/86Box Festplatte (entpackt 68MByte, gepackt ~16MByte, Link: autometer.de) bereits zum Download anbietet.

    Ein bisschen tricky, weil das Festplattenimage erstmal keine Hilfestellung zur Konfiguration von 86Box bietet, aber ein paar Versuche und man hat's dann herausgefunden.

    Ich habe einen emulierten Compaq Portable II für das Testen genutzt, weil ich auch vorhabe, das Ganze auf meinem physisch vorhandenen Compaq Portable II dann auszuprobieren.

    Sinnvoll ist es, auf jeden Fall ein bisschen Extended Memory verfügbar zu haben, da es mit dem 286er auch genutzt werden kann.

    Ein 386er würde Coherent 3.x nicht vollständig ausnutzen, weil die Version kein "virtual mode" nutzt/nur Features vom 80286 "kennt".


    Erste Hürde war das Einrichten des korrekten Plattentyps sowohl in 86Box als auch im emulierten Compaq Rechner.


    Hier 86Box:

    Der Compaq Portable II hat übrigens eine sehr spezielle CGA Karte, die wohl auch eine Monochrome-Karte emulieren kann (daher die abgebildete Wahl)


    Und im emulierten Compaq mindestens den Plattentyp:


    Dann (wenn der emulierte Rechner kein 161/162 Fehler mehr anzeigt) kann man loslegen mit dem Booten:

    Hier ist wichtig "coherent" nach dem Fragezeichen einzugeben - mir momentan nicht klar warum das nicht "automatisch" geht, aber auf jeden Fall funktioniert's genau so.


    Die weiteren Bootmeldungen machen dann kurzzeitig glücklich (weil es ein Zeichen ist, dass alles funktioniert) - der Bootvorgang dauert übrigens wegen dem "fsck" der Volumens /dev/root und /dev/at0b etwas:

    Das altbekannte "root" kann dann folgen, ohne Passwort. Was auffällt - wenn man irgendwelche anderen Tasten drückt (bspw. Funktionstasten, Ctrl-Alt-ESC, Cursor usw.) während das Coherent bootet, wird die Eingabe damit negativ beeinflusst und reagiert u.U. nicht mehr (also: keine Tasten unnötig drücken).


    Erstmal ist mir aufgefallen, dass es den Befehl "uname" gar nicht gibt. Die Wurzeln des Systems sind wohl eher in UNIX V7 denn im etwas später folgenden SYSTEM V zu suchen.

    Andere "bash" Befehle bspw. gehen natürlich auch nicht. Ist schon recht rudimentär, man könnte aber viel "nachrüsten".

    Schön ist, dass es Contribution Disks gibt, die zusätzliche Programme (-> Gnu C bspw.) bieten, damit werde ich noch experimentieren und hier berichten.


    Ich habe mit 86Box noch nicht hinbekommen, wie man ein serielles Terminal (mein Host-Rechner hat eine serielle Schnittstelle) durchreichen/nutzen kann, kommt noch.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Danke für die Beschreibung Peter z80.eu , Coherent Unix auf einem 286 waren bei mir auch die ersten Schritte in Unix und mit Unix auf einem eigenen PC !

    Ich werde Deine Aktivitäten hier weiter mit großem Interesse verfolgen !

  • P.S.: Deutsche Tastatur nutzen geht irgendwie gar nicht... ob's am gewählten Compaq Portable II liegt, weiß ich nicht:


    Wenn man 'kbdinstall' eingibt, kommt erwartungsgemäß ein Menü:

    Mit 'Leertaste' kann man zwei Schritte nach unten gehen, und 'Enter' drücken, aber dann folgt eine merkwürdige Fehlermeldung:


    Ist ärgerlich, weil man dann natürlich immer sich vertippt wg. falscher (US-)Tastenwahl ...

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • In Bezug auf mein Kommentar zur nicht ladbaren deutschen Tastatur findet man auf https://www.autometer.de/unix4fun/coherent/coh_pcem.html einen Hinweis:


    The more advanced keyboard drivers for COHERENT supporting loadable
    keyboard tables and/or virtual consoles won't work with PCem. These
    drivers use keyboard scancode set 3 and this is not implemented correctly
    in PCem.


    Der danach folgende weitere Satz "The kernel will stop because of a not working keyboard with a
    diagnose code in the upper right corner of the screen.
    " kann ich nicht in 86Box nachvollziehen.


    Ob Coherent 3.x in VMWare Workstation Player oder VirtualBox laufen würde, bezweifle ich. Vielleicht mit (dem alten) VirtualPC ...

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • Ok, inzwischen habe ich folgendes herausgefunden:


    Im Coherent 3.x-Kernel selbst, der auf dem Wurzelverzeichnis als ca. 70KB große Datei liegt, ist die Tastaturtabelle (das berühmte 'qwertyuiop' usw.) zu finden.

    Meine Versuche, mit einem modifizierten IBM AT BIOS (wo ich bspw. y und z testweise getauscht hatte) die deutsche Tastatur direkt bedienen zu können, haben gezeigt, das Coherent 3.x noch nicht mal die BIOS Interrupts für die Tastatur nutzt.

    Stattdessen werden direkt die I/O Ports genutzt, und die Scancode-Tastaturtabelle ist wie bereits erwähnt auch im Kernel enthalten.


    Also mit fdformat /dev/fha0 (für ein 5.25" Laufwerk, also einer 1.2MB Diskette) eine leere Diskette vorbereitet und als nächstes das Dateisystem darauf installiert, nämlich mit mkfs /devfha0 2400. Jetzt schnell noch ein Mount-Point kreiert (mkdir /floppy; mount /dev/fha0 /floppy) und den Kernel draufkopiert (cp /coherent /floppy). Die letzte Tat ist, die besagte Tabelle zu patchen und wieder auf das Wurzelverzeichnis zu schreiben. Bin noch am Ausprobieren, aber die ersten Versuche mit dem Tausch von 'z' und 'y' sind schon mal erfolgreich gewesen.

    "The biggest communication problem is we do not listen to understand. We listen to reply." - Stephen Covey


    Webseite und Blog ist immer noch - seit fast 20 Jahren - online.

  • So, erfolgreich den Coherent 3.2 Kernel eingedeutscht, was die Tastatur angeht. Damit kann man arbeiten ;)



    Um den gepatchten Kernel einzuspielen, muss auf dem Wurzelverzeichnis der Maschine ein "floppy" Verzeichnis erstellt sein.

    Dann das Diskettenimage von dieser Mail (modified-coherent-kernel-unix-floppy.zip) herunterladen, entpacken, und entweder in die virtuelle Maschine als Diskette "einhängen" oder auf eine echte Diskette sektorenweise (mit rawimage bspw.) schreiben.

    Die folgenden Kommandos eingeben:


    Danach kann ein "shutdown" Befehl mit folgendem "sync" eingegeben werden, und ein Neuboot via "reboot" kann folgen (Diskette herausnehmen).


    Ich werde jetzt erstmal ohne weitere Beiträge weitermachen, so mit der deutschen Tastatur ist es halt einfacher, mit der virtuellen Maschine weitere Dinge auszuprobieren.


    P.S.: Das rote ! (deutsche Tastatur '<' uns '>') oben in der Tabelle kann ich nicht patchen, der Scancode der Taste scheint auf der US-Tastatur nicht zu existieren.