Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

Ist mein Tastaturtreiber überhaupt legitiem ?

Hi,

ich wollt fragen ob mein in C++ geschriebener Tastaturtreiber überhaupt legitiem ist:

#include "multitask.h"

int main()
{
    CreateProcess();
    int CAPSLOCK = 0;
    int *SEND;                   
    int *ASCII = (int*)  0x000010; //Tastatur-Zwischenablage
    int *KEY_PORT = (int*) 0x0060; 
    int SCANNCODE;
    while(1)
    {
    SCANNCODE = KEY_PORT[0];
    if(SCANNCODE == 0x58)//CAPSLOCK
    {
       while(SCANNCODE == 0xF0){SCANNCODE = KEY_PORT[0];}
       if(CAPSLOCK = 0){CAPSLOCK = 1;}
       if(CAPSLOCK = 1){CAPSLOCK = 0;}
    }
    //Buchstabe A
    if(SCANNCODE == 0x1C)
    {
       if(CAPSLOCK == 0)
       {
          while(1)
          {
             SCANNCODE = KEY_PORT[0];
             *SEND = 0x61;
             *SEND = *ASCII;
             if(SCANNCODE = 0xF0)
             {
                break;
             }
          }
       }
       else if(CAPSLOCK == 1)
       {
          while(1)
          {
             SCANNCODE = KEY_PORT[0];
             *SEND = 0x41;
             *SEND = *ASCII;
             if(SCANNCODE = 0xF0)
             {
                break;
             }
          }
       }
    }
    //Taste ENTER
    if(SCANNCODE == 0x5A)
    {
       while(1)
       {
          SCANNCODE = KEY_PORT[0];
          *SEND = 0x10;
          *SEND = *ASCII;
          if(SCANNCODE = 0xF0)
          {
             break;
          }
       }
       break;
    }
    }
    CloseProcess();
}
Erklärung:
Als erstes wird vom I/O Hardware Port 0x0060 der Scanncode der einzelnen Tasten gelesen und dann an eine art Tastaturzwischenablage der ASCII Wert geschickt.
Natürlich ließt und schickt der Treiber nicht nur 'A' 'ENTER' und 'CAPSLOCK'.  ;D
Problem:
Nur das Problem eben ist. Das der ASCII Code nur Buchstaben zaheln und einpaar Sonderzeichen umfasst. Aber weit nicht alle Tasten wie z.B. ENTER, CAPSLOCK usw.

Soll ich jetzt einen eigenen Zeichensatz benutzen oder wie ??
Und meine eigentliche Frage ist eben: Ist das überhaupt für ein Tastaturtreiber legitiem ??

MFG
TOMEK 

Antworten zu Ist mein Tastaturtreiber überhaupt legitiem ?:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Ich hab mal ein eigenen TastaturCode zusammengestellt damit ALLE Tasten damit umfasst werden !

Zur Liste

MFG
TOMEK

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

? ist es vermessen, nach dem tieferen Sinn der Aktion zu fragen ?

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button
Sinn der "Aktion":

Ich programmiere grad ein kleines Betriebssystem.
Zitat
Es soll KEINE Konkurenz zu Microsoft oder Linux sein oder ähnichem. Das wäre ** Netiquette! ** und es dient nur zu Übungszwecken um sein Wissen in sachen Programmierung und Hardware zu erweitern.
Und um irgendeine sinnvole eingabe hinzukriegen MUSS ich eben ein Tastaturtreiber schreiben.

MFG
TOMEK 

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Bravo, gratuliere!

• das = der Nachwuchs auf den wir stolz sein dürfen!

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hi,

;D *freu*

MFG
TOMEK


« Addieren mit VB[ASM] RAM und PORTS (Protected Mode - Real Mode) »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
C++
C++ ist eine von der ISO standardisierte Programmiersprache und eine erweiterte Form von C zur objektorientierten, generischen und prozeduralen Programmierung. Weitestgeh...

Quellcode
Ein Quellcode, auch als Quelltext bekannt, bezeichnet einen unkompilierten Programm-Code einer Software. Der Quellcode ist meist in einer der verbreiteten Programmierspra...

Unicode
Ein Unicode ist ein "Einheitsschlüssel", der als internationaler Standard gilt. Unicode ist ein digitaler Zeichensatz zur Darstellung von weitestgehend jedem Schrift...