Keyboard Treiber DE
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Keyboard Treiber DE
Hallo,
im Zusammenhang mit dem Aufbau eines VT100 Terminals für CP/M sitze ich seit zwei Tagen an einem deutschen Keyboardtreiber hier aus dem Forum (keyboard_1252.spin)
Ist alles soweit kein Problem, nur die Zeichen die mit R-ALT (Alt Gr) aufgerufen werden kommen fehlerhaft („@²³{[]}\“). Soweit ich den Code nun auseinandergenommen habe, wird die Routine die den Scancode für R-Alt+Zeichen aus der Tabelle holt nicht angesprungen (Bitmuster in Testbefehl stimmt nicht überein). Setze ich ein anderes Bitmuster z.B. R-SHFT dafür ein, kommen die Zeichen richtig. Hat jemand dieses Problem schon mal gehabt oder kenn jemand eine Lösung dafür?
Gruß Joe
im Zusammenhang mit dem Aufbau eines VT100 Terminals für CP/M sitze ich seit zwei Tagen an einem deutschen Keyboardtreiber hier aus dem Forum (keyboard_1252.spin)
Ist alles soweit kein Problem, nur die Zeichen die mit R-ALT (Alt Gr) aufgerufen werden kommen fehlerhaft („@²³{[]}\“). Soweit ich den Code nun auseinandergenommen habe, wird die Routine die den Scancode für R-Alt+Zeichen aus der Tabelle holt nicht angesprungen (Bitmuster in Testbefehl stimmt nicht überein). Setze ich ein anderes Bitmuster z.B. R-SHFT dafür ein, kommen die Zeichen richtig. Hat jemand dieses Problem schon mal gehabt oder kenn jemand eine Lösung dafür?
Gruß Joe
- PIC18F2550
- Beiträge: 2851
- Registriert: Fr 30. Sep 2011, 13:08
Re: Keyboard Treiber DE
Hi und herzlich willkommen.
Nimm mal den Treiber aus dem WIKI.
Ich habe mich hauptsächlich um die deutschen Zeichensatz gekümmert.
Nimm mal den Treiber aus dem WIKI.
Ich habe mich hauptsächlich um die deutschen Zeichensatz gekümmert.
Gruß
PIC18F2550
drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
PIC18F2550
drone265/278
Barbarus hic ergo sum, quia non intellegor ulli.
Ein Barbar bin ich hier, da ich von keinem verstanden werde.
ʎɐqǝ ıǝq ɹnʇɐʇsɐʇ ǝuıǝ ɹǝpǝıʍ ǝıu ǝɟnɐʞ ɥɔı ´uuɐɯ ɥo
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Keyboard Treiber DE
@Feinmechaniker: Hol dir mal die aktuelle TriOS Version für den Hive. Dort findest du im Verzeichnis "lib" den Treiber "bel-keyb.spin" mit welchem die gesamte deutsche Belegung inklusive der rechten AltGR-Taste funktioniert. Das Handling kannst du dir im Bellatrix-Code anschauen, oder einfach hier fragen... 

"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: Keyboard Treiber DE
Danke, Super, das ging ja richtig schnell!
Leider ist damit das Problem nicht behoben. Ich habe auch den Treiber aus der aktuellen TriOS Version versuchsweise getestet. Immer das gleiche Problem. Die R-Alt Routine wird nicht angesprungen. Nun vermutete ich schon fast eine exotische Tastatur, doch eine zweite Tastatur zeigt den gleichen Fehler. Ich hab mal das Codefragment anhegängt.
Wenn ich ALR-R drücke ist y bei mir #%11000000
'Translate scan-codes with characters from "table_alt_r"
'
'
' test y,#%11000000 wz 'get ALT-R (AltGr) into nz
{test with CTRL-R} test y,#%00001000 wz 'get CTRL-R into nz
'original test y,#%00100000 wz 'get ALR-R into nz
if_nz mov data,data_s 'reload scancode
if_nz call #look_alt_r 'translate by table_alt_r
Leider ist damit das Problem nicht behoben. Ich habe auch den Treiber aus der aktuellen TriOS Version versuchsweise getestet. Immer das gleiche Problem. Die R-Alt Routine wird nicht angesprungen. Nun vermutete ich schon fast eine exotische Tastatur, doch eine zweite Tastatur zeigt den gleichen Fehler. Ich hab mal das Codefragment anhegängt.
Wenn ich ALR-R drücke ist y bei mir #%11000000
'Translate scan-codes with characters from "table_alt_r"
'
'
' test y,#%11000000 wz 'get ALT-R (AltGr) into nz
{test with CTRL-R} test y,#%00001000 wz 'get CTRL-R into nz
'original test y,#%00100000 wz 'get ALR-R into nz
if_nz mov data,data_s 'reload scancode
if_nz call #look_alt_r 'translate by table_alt_r
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Keyboard Treiber DE
Ich hab es nur ganz praktisch getestet: Sowohl in der Kommandozeile von TriOS, als auch in mental (verwendet den gleichen Treiber) kann ich Zeichen wie {[]} problemlos per Tastatur eingeben.
Hmm, mal zum Verständnis: du hast einen einzelnen Propellerchip, welchen du mit Keyboard und VGA-Monitor als Terminal für einen CP/M-Rechner verwenden möchtest?
Hmm, mal zum Verständnis: du hast einen einzelnen Propellerchip, welchen du mit Keyboard und VGA-Monitor als Terminal für einen CP/M-Rechner verwenden möchtest?
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: Keyboard Treiber DE
Ja, richtig. Es gibt nur einen einzigen Propeller-Chip mit simpler Standardbeschaltung der das VT100 Terminal nachbildet. Ich könnte den Code auch mal zusenden. Mein Schwerpunkt liegt ja mehr auf CP/M oder AVR, mit dem Propeller tue ich mich noch schwer.
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Keyboard Treiber DE
Jo, pack doch mal ein Archiv mit dem Code hier in den Fred, ist ja durchaus ein interessantes Thema. Im Prinzip kann ich das gut mit dem Hive testen, wird halt nur der Bellatrix-Chip genutzt.
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: Keyboard Treiber DE
Danke für die Hilfe!
Hier der Code. Die Software stellt derzeit ein VT100 Terminal mit 115200 Baud 8N1 bereit. Es ist erst ein Anfang, viele der zukünfig geplanten ESC Sequenzen sind noch nicht implementiert, doch das CP/M läßt sich schon damit bedienen. Im Keyboard Treiber (Keyb-DE) habe ich an der Stelle {Translate scan-codes with characters from "table_alt_r"} versucht den Fehler zu finden, möglicherweise dilletantisch
Vielleicht findet ihr den Fehler sofort und ich hab wieder was gelernt 
Hier der Code. Die Software stellt derzeit ein VT100 Terminal mit 115200 Baud 8N1 bereit. Es ist erst ein Anfang, viele der zukünfig geplanten ESC Sequenzen sind noch nicht implementiert, doch das CP/M läßt sich schon damit bedienen. Im Keyboard Treiber (Keyb-DE) habe ich an der Stelle {Translate scan-codes with characters from "table_alt_r"} versucht den Fehler zu finden, möglicherweise dilletantisch


- Dateianhänge
-
- VT100_V04.zip
- (44.13 KiB) 603-mal heruntergeladen
- drohne235
- Administrator
- Beiträge: 2284
- Registriert: So 24. Mai 2009, 10:35
- Wohnort: Lutherstadt Wittenberg
- Kontaktdaten:
Re: Keyboard Treiber DE
Hab jetzt deinen Code noch nicht genau angeschaut, aber zufällig gerade ein kleinen Democode zusammengeschrieben.
belterm0 - gibt Zeichencode und Zeichen aus
belterm1 - gibt nur Zeichen aus
belterm2 - gibt Zeichen zusätzlich mit 115200 Baud an der Seriellen aus
Die Pins für Keyboard und VGA musst du anpassen. In allen Fällen funktioniert dabei die komplette Tastaturbelegung. Vielleicht wird dir da schon sichtbar, wo der Fehler sitzt.
Edit (siehe zweites Archiv): Zumindest in der angehängten Testversion von deinem VT100-Code mit meinem Keyboardtreiber kommt über die Serielle die gesamte Tastaturbelegung --> der Keyboardtreiber von TriOS/mental liefert also erstmal den passenden Zeichencode. Jetzt mal schauen wo er im Terminalcode verschwindet...
belterm0 - gibt Zeichencode und Zeichen aus
belterm1 - gibt nur Zeichen aus
belterm2 - gibt Zeichen zusätzlich mit 115200 Baud an der Seriellen aus
Die Pins für Keyboard und VGA musst du anpassen. In allen Fällen funktioniert dabei die komplette Tastaturbelegung. Vielleicht wird dir da schon sichtbar, wo der Fehler sitzt.
Edit (siehe zweites Archiv): Zumindest in der angehängten Testversion von deinem VT100-Code mit meinem Keyboardtreiber kommt über die Serielle die gesamte Tastaturbelegung --> der Keyboardtreiber von TriOS/mental liefert also erstmal den passenden Zeichencode. Jetzt mal schauen wo er im Terminalcode verschwindet...

- Dateianhänge
-
- VT100_V04_test1.rar
- (50.89 KiB) 568-mal heruntergeladen
-
- term.rar
- (19.54 KiB) 607-mal heruntergeladen
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford
-
- Beiträge: 18
- Registriert: Mi 27. Mär 2013, 12:05
Re: Keyboard Treiber DE
Danke!
Lustige VGA-Auflösung
ABER die Tastatur geht nun. Jetzt kann ich ja mal in Ruhe meinen Fehler suchen. Ich berichte dann später von meinem Ergebnis.
Außerdem: Ich bin wirklich beeindruckt von der im Hive-Projekt geleisteten Arbeit. Mal sehen was sich in Bezug von CP/M noch daraus entwickelt.
Lustige VGA-Auflösung

Außerdem: Ich bin wirklich beeindruckt von der im Hive-Projekt geleisteten Arbeit. Mal sehen was sich in Bezug von CP/M noch daraus entwickelt.