Section courante

A propos

Section administrative du site

_BIOS_KEYBRD

Clavier par le BIOS
QuickC bios.h

Syntaxe

unsigned _bios_keybrd(unsigned cmd);

Paramètres

Nom Description
cmd Ce paramètre permet d'indiquer le numéro de la fonction à appeler

Description

Cette fonction permet d'appeler une fonction de l'interruption 16h du BIOS permettant la gestion du clavier.

Exemple

Voici un exemple permettant de demander l'état des touches spéciales à l'aide de cette fonction :

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <bios.h>
  4.      
  5. int main() {
  6.  int HotKey = _bios_keybrd(0x02);
  7.  printf("Shift de droite : ");
  8.  if(HotKey & 1 == 1) {
  9.   printf("Enfoncé\n");
  10.  } else {
  11.   printf("Relaché\n");
  12.  }
  13.  printf("Shift de gauche : ");
  14.  if(HotKey & 2 == 2) {
  15.   printf("Enfoncé\n");
  16.  } else {
  17.   printf("Relaché\n");
  18.  }
  19.  printf("Ctrl : ");
  20.  if(HotKey & 4 == 4) {
  21.   printf("Enfoncé\n");
  22.  } else {
  23.   printf("Relaché\n");
  24.  }
  25.  printf("Alt : ");
  26.  if(HotKey & 8 == 8) {
  27.   printf("Enfoncé\n");
  28.  } else {
  29.   printf("Relaché\n");
  30.  }
  31.  printf("ScrollLock : ");
  32.  if(HotKey & 16 == 16) {
  33.   printf("Activé\n");
  34.  } else {
  35.   printf("Désactivé\n");
  36.  }
  37.  printf("NumLock : ");
  38.  if(HotKey & 32 == 32) {
  39.   printf("Activé\n");
  40.  } else {
  41.   printf("Désactivé\n");
  42.  }
  43.  printf("CapsLock : ");
  44.  if(HotKey & 64 == 64) {
  45.   printf("Activé\n");
  46.  } else {
  47.   printf("Désactivé\n");
  48.  }
  49.  printf("Insert : ");
  50.  if(HotKey & 128 == 128) {
  51.   printf("Activé\n");
  52.  } else {
  53.   printf("Désactivé\n");
  54.  }
  55. }

Voir également

Langage de programmation - Assembleur 80x86 - Interruption 16h: Gestionnaire clavier

Dernière mise à jour : Dimanche, le 28 juin 2015