nach etwa 7 Jahren Pause habe ich mal wieder den Weg zurueck zu PureBasic gefunden. RSBasic hat mich gestern auf eine interessante Idee gebracht: Er verwendet unter Windows eine separate Tastatur fuer Shortcuts. Das moechte ich jetzt unter Linux mit PureBasic umsetzen.
Ich habe schon rausgefunden wie man die Tastatureingaben direkt aus dem Device File liest und verhindert dass der X Server darauf reagiert. Also habe ich mal versucht in PB das Device File mit ReadFile zu oeffen und Bytes rauszulesen. Laut einem Blogartikel ist jedes Keyboard Event 24 Byte lang. Allerdings scheint PB mit den Read* Funktionen auf mehr Bytes zu warten.
Beispiel:
Code: Alles auswählen
EnableExplicit
ReadFile(0, "/dev/input/event12")
Define *memory = AllocateMemory(24)
ReadData(0, *memory, 24)
Debug PeekS(*memory, 16) ; timestamp
Debug PeekW(*memory + 16); type
Debug PeekW(*memory + 18); code
Debug PeekL(*memory + 20); value
Mit dem Python Script aus dem Blogartikel funktioniert das Auslesen problemlos.
Hat jemand eine Idee was ich falsch mache?