NEO2-Tastaturlayout für DOS

  • Hi zusammen,


    Eine Sache, die mir immer die Suppe des Retrocomputings etwas versalzen hat, ist, dass ich seit etlichen Jahren mit dem NEO2 Tastaturlayout tippe, das für alle modernen Systeme (Linux, Windows) verfügbar ist, nur eben nicht für DOS. Und da mit QWERZ zu tippen ist mir einfach zu unbequem.


    Einen einfachen KEYB-Treiber zu schreiben, der wie das "Original" sich in Interrupt 15 hängt, dort alle Tasten übersetzt und ans BIOS entsprechende INT16 Aufrufe weitergibt, ist leider nicht ohne weiteres möglich:

    Beim INT15 kommen nur die Tastenanschläge an, keine Scancodes und keine Key Up Events. Da jedoch beim NEO Layout die CAPS-LOCK-Taste und auch die #-Taste (linke neben Return) hier Umschalttasten für eine andere Tastaturebene sind, reicht das nicht. Für eine eigene "Shift"-Taste für eine andere Ebene brauch ich auch die Key Up Events.


    Mein erster Wurf war jetzt, das SeaBIOS, das von QEMU und co verwendet wird, umzuhacken. Das klappt wunderbar, ist aber etwas unschön und unflexibel, da das z.B. nicht auf echter Hardware läuft. Mein nächster Schritt wird sein, mich direkt in INT9 (IRQ1) zu hängen, das BIOS zu umschiffen da alles selbst machen (Port 60h lesen, HW Interrupt im PIC acknowledgen...). Mein Code würde dann selbst die Keyboardflags für Shift, Ctrl, Alte etc in den BDAs setzen, um möglichst die Kompatibilität mit anderer Software zu wahren, für normale Tastenanschläge aber eben entsprechende INT16 Aufrufe erzeugen.


    Würde das ganze als TSR (ähnlich von KEYB) machen, sowie als Option ROM, um konventionellen Speicher zu sparen ;)


    Hat sonst jemand so etwas schonmal gemacht oder versucht? Sieht wer Probleme, wenn ich dem BIOS die "Macht" über INT9 entziehe, obwohl ich brav alle BDAs richtig setze und meine Keypresses als INT16 Aufrufe weiterreiche?


    Gruß Flo

    RetroRechner #1: Pentium 166 MMX / 64 MB RAM / 3Dfx Voodoo2 / SB AWE64 Value / 3COM 3C905B

    RetroRechner #2: Commell LV650 AMD GEODE 233 MHz Mini-ITX / 16 MB RAM / miese Onboard-Soundkarte

  • Wäre auch in "Hardware" machbar.


    Für PS/2 würde ein kleiner AVR schon ausreichen.

    Dann funktioniert es mit jedem Betriebsystem unabhängig von Treibern.


    Mit Neo 2 könnte ich nicht schreiben, würde wahnsinnig werden

    :whistling:

    совок

  • Das ist eine gute Idee, darauf komme ich zurück, wenn alles andere nicht klappt ;-).

    Hab auch schon mit den Leuten im NEO2 IRC darüber geredet, viele nutzen da auch frei programmierbare Tastaturen.


    Also mir ging es so, dass es zwar am Anfang Pain war, es zu lernen. Aber jetzt will ich es nicht mehr missen :D

    RetroRechner #1: Pentium 166 MMX / 64 MB RAM / 3Dfx Voodoo2 / SB AWE64 Value / 3COM 3C905B

    RetroRechner #2: Commell LV650 AMD GEODE 233 MHz Mini-ITX / 16 MB RAM / miese Onboard-Soundkarte

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!