|
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
klausthal
Anmeldungsdatum: 05.04.2009 Beiträge: 4
|
Verfasst am: 05.04.2009, 19:51 Titel: keyboard buffer poken, TSR |
|
|
Hi, liebe Basic-Gemeinde!
also, ich habe mal vor Zeiten eine 8-Finger-Tastatur gebastelt, die über die serielle Schnittstelle mit einem selbstgehäkelten QB45 Editor unter DOS zusammenarbeitet. Der Editor kann aber nur Texte der maximalen Größe 40kbyte bearbeiten, auch kam ich nie zur Programmierung von Blockoperationen, da ist das Projekt halt ein wenig eingeschlafen.
Jetzt kam mir die Idee, einen vorhandenen DOS-Editor, nämlich QEDIT, mit einem kleinen TSR zusammen arbeiten zu lassen. Es gibt ja TSR-Hilfsprogramme, die einen Basic-code als Hintergrundprogramm ins Memory laden. Ich habe einen Basic-code gefunden, der Text in den keyboard-buffer pokt. Diesen Code würde ich (zusammen mit der Umwandlung der Zeichen aus der 8Finger-Tastatur) memoryresident machen.
Aber funktioniert das ganze? Wie geht die Kontrollübergabe zwischen dem TSR und QEDIT vonstatten? Was muss ich beachten? - (übrigens arbeite ich mit DOS unter Windows xp, und die Verfügbarkeit der seriellen Schnittsstelle ist etwas unsicher, aber das ist hier nicht der Hauptpunkt).
Schon mal schönen Dank für eure Antworten von
klausthal |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 05.04.2009, 20:04 Titel: |
|
|
Hallo,
wenn das ganze Projekt ohnehin auf Windows XP laufen soll, warum setzt du dann die Tastaturabfrage nicht einfach als Windows-Software (z.B. in FreeBASIC) um? Ein Windows-Programm kann die Schnittstelle wahrscheinlich ohnehin viel komplikationsfreier ansprechen als ein DOS-Programm aus ntvdm heraus. Zudem könnte es die Tastatureingaben per WinAPI für alle Windowsprogramme - egal, ob Notepad, EDIT.COM oder MS Word - verfügbar machen.
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
klausthal
Anmeldungsdatum: 05.04.2009 Beiträge: 4
|
Verfasst am: 05.04.2009, 21:29 Titel: |
|
|
hi, Sebastian,
vielen Dank für deine schnelle Antwort. Ehe ich mich mit der ganzen Windos-Problematik auseinandersetze, warte ich noch, ob nicht doch DOS-Lösungen angeboten werden.
Gruß
klausthal |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
klausthal
Anmeldungsdatum: 05.04.2009 Beiträge: 4
|
Verfasst am: 06.04.2009, 08:29 Titel: |
|
|
Sehr schön. Im Prinzip habe ich die benötigten Programmteile ja selbst, und sie funktionieren auch. Meine grundsätzliche Frage ist, wie und ob die Kontrollübergabe funktioniert. Wenn QEDIT (oder ein anderer Editor) und das TSR geladen sind, muß doch die Kontrolle vom TSR zum QEDIT und wieder zurück übergeben werden. Also: ein character kommt von der seriellen Schnittstelle, wird vom TSR empfangen und per Tabelle umgesetzt, dann in den keyboard buffer gepokt. Und nun? wacht jetzt QEDIT aus seinen Träumen auf, empfängt den character, verarbeitet ihn und gibt die Kontrolle an das TSR zurück? Oder läuft QEDIT nicht vielmehr in seiner keyboard Abfrage-Schleife weiter, so dass das TSR gar nicht mehr zum Zuge kommt und keine Chance mehr hat, einen weiteren character aus der seriellen Schnittstelle zu holen?
klausthal |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
klausthal
Anmeldungsdatum: 05.04.2009 Beiträge: 4
|
Verfasst am: 06.04.2009, 13:14 Titel: |
|
|
Hi, Sebastian,
wenn ich mich erst noch in die Eigenheiten von Widows einarbeiten muss, so werde ich nie fertig. Deshalb versuche ich es lieber erst mal unter DOS. Wenn ich dann von der Tastatur überzeugt bin, kann ich mir vorstellen, dass ich aus lauter Begeisterung den Schritt nach Windows wage.
Dir, Sebastian, danke ich jedenfalls für deine Hilfe und wünsche allen einen schönen Tag. Happy programming!
Euer
klausthal |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|