DS:DX = keyboard map with 128 bytes

 

corresponded to numeric and alphabetic

 

ASCII code table; a NULL for

 

defining

unused key.

 

CX = 0x80 (table length for 128 bytes)

Returned Values:

None

 

void TD_key_map(unsigned char *str)

{

regs.h.ah=0x1E;

regs.h.bh=1;

regs.x.cx=0x80; segregs.ds = FP_SEG(str); regs.x.dx = FP_OFF(str); int86x(0x21,®s,®s,&segregs);

}

ASCII code corresponded to scan code in Numeric mode

Numeric keyboard layout

F1

F5

1

2

3

??

*

 

 

 

 

 

 

 

 

F2

F6

4

5

6

??

?

 

 

 

F3

F7

7

8

9

??

?

 

 

 

F4

SHIFT

[C]

0

[E]

??

 

 

 

 

 

 

 

 

 

ASCII code [Scan code]

86

8A

31

32

33

[23]

[1B]

[13]

[0B]

[03]

 

 

 

 

 

87

8B

34

35

36

[22]

[1A]

[12]

[0A]

[02]

 

 

 

 

 

88

8C

37

38

39

[21]

[19]

[11]

[09]

[01]

 

 

 

 

 

89

1F

08

30

0D

[20]

[18]

[10]

[08]

[00]

 

 

 

 

 

Figure 3-1 ASCII code vs. scan code cross reference table (numeric mode)

3-45

Page 46
Image 46
Unitech MR350MKII manual Ascii code corresponded to scan code in Numeric mode