Функції АН=00 - 02h переривання 16h BIOS покладені в основу функції bioskey() бібліотеки Turbo С. Далі слідує опис цієї функції.

#include <bios.h>
int
bioskey (int cmd)

повертається в залежності від значення в cmd до функцій АН=00 - 02h переривання 16h. Що повертається функцією значення повторює значення регістру АХ при виході з переривання.,

Наведемо приклад використання bioskey(2) для визначення стану шіфт - і тригерных клавіш. Вихід з програми відбувається при натиску символьного клавіші 'q\

/*L7_7. C*/:

#include <bios.h>
#include
<conio.h>
#include
<stdio.h>

 void main(void){
  char
BIOS_key_cur, BIOS_key_old, BIOS_key;
  char
* icons[]={"Right Shift:",”LeftShift:", "Ctrl   :",”Alt    :", "ScrollLock:",”NumLock:", "CapsLock:”,  "Ins   :",NULL};
};
int
index = 0, x, y;
clrscr
(); //Початкове формування екрану.
 while
(icons[index]) puts(icons[index++]);
 BIOS_key_old=
bioskey(2);
 BIOS_key_old
=~BIOS_key_old;//iнверсія бiтiв
//Цикл очікування нажапшя
будь-який клавіші
 while
(!((bioskey(1) & 0xff00)== 0х1000)){
 y=1;
 BIOS_key_cur=BIOS_key=bioskey
(2);
//цикл інтерпритації
бітів байту стану
for
( index=0; index<8; index++){
  x=14;gotoxy
(x,y);
  if
((BIOS_key&0x01)!=(BIOS_key_old&0x01))
    if
(BIOS_key&0x01){
      textattr
(BLACK |(LIGHTGRAY<<4));
      cputs
(“включена”);
    }
  else
{
    textattr
(LIGHTGRAY |(BLACK <<4));
    cputs
(“виключена”);
  }
  BIOS_key>>=1; BIOS_key_old>>=1; y++;
}
 BIOS_key_old=BIOS_key_cur
;
}