Keyboard Controller — Änderungen 10545 → 11088

Zeile 329: Zeile 329:
 
   
 
   
 
     // Status-Variablen fuer das Behandeln von e0- und e1-Scancodes
 
     // Status-Variablen fuer das Behandeln von e0- und e1-Scancodes
−
     static int    e0_code = 1;
+
     static int    e0_code = 0;
 
     // Wird auf 1 gesetzt, sobald e1 gelesen wurde, und auf 2, sobald das erste
 
     // Wird auf 1 gesetzt, sobald e1 gelesen wurde, und auf 2, sobald das erste
 
     // Datenbyte gelesen wurde
 
     // Datenbyte gelesen wurde
Zeile 345: Zeile 345:
 
         break_code = 0;
 
         break_code = 0;
 
         scancode &= ~0x80;
 
         scancode &= ~0x80;
−
return;
 
 
     }
 
     }
 
   
 
   
Zeile 351: Zeile 350:
 
         // Fake shift abfangen und ignorieren
 
         // Fake shift abfangen und ignorieren
 
         if ((scancode == 0x2A) || (scancode == 0x36)) {
 
         if ((scancode == 0x2A) || (scancode == 0x36)) {
−
             e0_code = 1;
+
             e0_code = 0;
 
             return;
 
             return;
 
         }
 
         }
 
   
 
   
 
         keycode = translate_scancode(1, scancode);
 
         keycode = translate_scancode(1, scancode);
−
         e0_code = 1;
+
         e0_code = 0;
 
     } else if (e1_code == 2) {
 
     } else if (e1_code == 2) {
 
         // Fertiger e1-Scancode
 
         // Fertiger e1-Scancode
Zeile 369: Zeile 368:
 
     } else if (scancode == 0xE0) {
 
     } else if (scancode == 0xE0) {
 
         // Anfang eines e0-Codes
 
         // Anfang eines e0-Codes
−
         e0_code = 0;
+
         e0_code = 1;
 
     } else if (scancode == 0xE1) {
 
     } else if (scancode == 0xE1) {
 
         // Anfang eines e1-Codes
 
         // Anfang eines e1-Codes