home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Power-Programmierung
/
CD1.mdf
/
pascal
/
library
/
dos
/
t_power
/
kbddemo.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1988-02-23
|
1KB
|
51 lines
{
Demonstration of EnhKbd unit. See the comments within that unit
for more information.
}
{$R-,S-}
program Kbd;
uses
EnhKbd,
Dos;
const
Digits : array[0..$F] of Char = '0123456789ABCDEF';
var
KW : Word;
function HexW(W : Word) : string;
{-Return hex string for word}
begin
HexW[0] := #4;
HexW[1] := Digits[hi(W) shr 4];
HexW[2] := Digits[hi(W) and $F];
HexW[3] := Digits[lo(W) shr 4];
HexW[4] := Digits[lo(W) and $F];
end;
function ReadKeyWord : Word;
{-Return ASCII code in low byte, scan code in high byte}
var
Regs : registers;
begin
with Regs do begin
ah := $0;
intr($16, Regs);
ReadKeyWord := ax;
end;
end;
begin
WriteLn('Enhanced keyboard? ', HasEnhancedKbd);
WriteLn('Press keys to see scan words.');
WriteLn('Press Enter to quit, Ctrl-Enter to toggle enhanced keys');
repeat
KW := ReadKeyWord;
WriteLn(HexW(KW));
if KW = $1C0A then
EnableEnhanced := not EnableEnhanced;
until lo(KW) = 13;
end.