IPB
ЛогинПароль:

> Модуль клавиатуры
Dark
сообщение 27.12.2004 3:40
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 408
Пол: Мужской

Репутация: -  3  +


Модуль клавиатуры
UNIT Keyboard;

                                INTERFACE

function MKeyPressed:boolean;
function MReadKey:byte;
function MReadKeyP:byte;
procedure ClBuf;

const
  {Скан-коды наиболее часто используемых клавиш}
  Esc=1;
  _1 = 2;
  _2 = 3;
  _3 = 4;
  _4 = 5;
  _5 = 6;
  _6 = 7;
  _7 = 8;
  _8 = 9;
  _9 = 10;
  _0 = 11;
  Minus=12;
  Equal=13;
  BackSpace=14;

  Tab=15;
  Enter=28;
  Space=57;

  Up=72;
  Down=80;
  Left=75;
  Right=77;

  Ins=82;
  Del=83;

  F1=59;
  F2=60;
  F3=61;
  F4=62;
  F5=63;
  F6=64;
  F7=65;
  F8=66;
  F9=67;
  F10=68;

  Page_Up = 73;
  Page_Down = 81;

  _Home = 71;
  _End = 79;

  Alt_Q = 16;
  Alt_W = 17;
  Alt_E = 18;
  Alt_R = 19;
  Alt_T = 20;
  Alt_Y = 21;
  Alt_U = 22;
  Alt_I = 23;
  Alt_O = 24;
  Alt_P = 25;

  Alt_A = 30;
  Alt_S = 31;
  Alt_D = 32;
  Alt_F = 33;
  Alt_G = 34;
  Alt_H = 35;
  Alt_J = 36;
  Alt_K = 37;
  Alt_L = 38;
  Alt_Z = 44;
  Alt_X = 45;
  Alt_C = 46;
  Alt_V = 47;
  Alt_B = 48;
  Alt_N = 49;
  Alt_M = 50;

  Gray_Plus  = 78;
  Gray_Minus = 74;


                                IMPLEMENTATION

function MKeyPressed:boolean;
 begin
  asm
   mov @Result,0
   xor ax,ax
   inc ah
   int 16h
   jz @end   mov @Result,1
@end:
  end;
 end;

function MReadKey:byte;
 begin
  asm
   mov @Result,0
   xor ax,ax
   inc ah
   int 16h
   jz @end   xor ax,ax
   int 16h
   mov @Result,ah
@end:
  end;
 end;

function MReadKeyP:byte;
 begin
  asm
   mov @Result,0
   xor ax,ax
   int 16h
   mov @Result,ah
  end
 end;

procedure ClBuf;
 var
   b1:Byte absolute $0040:$001A;
   b2:Byte absolute $0040:$001C;
 begin
  b2:=b1;
 end;

end.
{
Esc=1;	I=23;  Z=44;  F7=65;
1=2;  O=24;  X=45;  F8=66;
2=3;  P=25;  C=46;  F9=67;
3=4;
4=5;  [=26;  V=47;  F10=68;
5=6;  ]=27;  B=48;
6=7;  Enter=28; N=49;
7=8;  Ctrl=29; M=50;  Num_Lock=69;
8=9;  A=30;  ,=51; Scroll_Lock=70;
9=10;  S=31;  .=52; Home=71;
0=11;  D=32;  /=53; Up=72;
-=12;  F=33;  Правый Shift=54; PgUp=73;
=13;  G=34;  Print Screen=55; Серый -=74;
Backspace=14;  H=35; Alt=56; Left=75;
Tab=15; J=36;  Space=57; 5 на цифр. клав.=76;
Q=16;  K=37;  Caps_Lock=58; Right=77;
W=17;  L=38;  F1=59; Серый +=78;
E=18; ; =39;  F2=60; End=79;
R=19;  Апостроф=40; F3=61; Down=80;
T=20;  ~=41;  F4=62; PgDn=81;
Y=21;  Левый Shift=42; F5=63; Ins=82;
U=22;  \=43;  F6=64; Del=83;

}


--------------------
- Где я?
- Во тьме.
- В какой тьме?
- Во тьме твоего мозга.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия 28.07.2025 6:45
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"