Operating Systems Development Series

Operating Systems Development - Scan
Codes
by Mike, 2008

This series is intended to demonstrate and teach operating system
development from the ground up.

Introduction
This is a resource that lists all of the scan codes.
There are three defined scan code sets for the keybord controller.

Original XT Scan Code Set

Scan Code Set

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

A

1E

9E

9

0A

8A

[

1A

9A

B

30

B0

`

29

89

INSERT

E0,52

E0,D2

C

2E

AE

-

0C

8C

HOME

E0,47

E0,97

D

20

A0

=

0D

8D

PG UP

E0,49

E0,C9

E

12

92

\

2B

AB

DELETE

E0,53

E0,D3

F

21

A1

BKSP

0E

8E

END

E0,4F

E0,CF

G

22

A2

SPACE

39

B9

PG DN

E0,51

E0,D1

H

23

A3

TAB

0F

8F

U ARROW

E0,48

E0,C8

I

17

97

CAPS

3A

BA

L ARROW

E0,4B

E0,CB

J

24

A4

L SHFT

2A

AA

D ARROW

E0,50

E0,D0

K

25

A5

L CTRL

1D

9D

R ARROW

E0,4D

E0,CD

L

26

A6

L GUI

E0,5B

E0,DB

NUM

45

C5

M

32

B2

L ALT

38

B8

KP /

E0,35

E0,B5

N

31

B1

R SHFT

36

B6

KP *

37

B7

O

18

98

R CTRL

E0,1D

E0,9D

KP -

4A

CA

P

19

99

R GUI

E0,5C

E0,DC

KP +

4E

CE

Q

10

90

R ALT

E0,38

E0,B8

KP EN

E0,1C

E0,9C

R

13

93

APPS

E0,5D

E0,DD

KP .

53

D3

S

1F

9F

ENTER

1C

9C

KP 0

52

D2

T

14

94

ESC

01

81

KP 1

4F

CF

U

16

96

F1

3B

BB

KP 2

50

D0

V

2F

AF

F2

3C

BC

KP 3

51

D1

W

11

91

F3

3D

BD

KP 4

4B

CB

X

2D

AD

F4

3E

BE

KP 5

4C

CC

Y

15

95

F5

3F

BF

KP 6

4D

CD

Z

2C

AC

F6

40

C0

KP 7

47

C7

0

0B

8B

F7

41

C1

KP 8

48

C8

1

02

82

F8

42

C2

KP 9

49

C9

2

03

83

F9

43

C3

]

1B

9B

3

04

84

F10

44

C4

;

27

A7

4

05

85

F11

57

D7

'

28

A8

5

06

86

F12

58

D8

,

33

B3

6

07

87

PRNT
SCRN

E0,2A,
E0,37

E0,B7,
E0,AA

.

34

B4

7

08

88

SCROLL

46

C6

/

35

B5

8

09

89

PAUSE

E1,1D,45
E1,9D,C5

-NONE-

ACPI Scan Codes

Key

Make Code

Break Code

Power

E0, 5E

E0, DE

Sleep

E0, 5F

E0, DF

Wake

E0, 63

E0, E3

Windows Multimedia Scan Codes

Key

Make Code

Break Code

Next Track

E0, 19

E0, 99

Previous Track

E0, 10

E0, 90

Stop

E0, 24

E0, A4

Play/Pause

E0, 22

E0, A2

Mute

E0, 20

E0, A0

Volume Up

E0, 30

E0, B0

Volume Down

E0, 2E

E0, AE

Media Select

E0, 6D

E0, ED

E-Mail

E0, 6C

E0, EC

Calculator

E0, 21

E0, A1

My Computer

E0, 6B

E0, EB

WWW Search

E0, 65

E0, E5

WWW Home

E0, 32

E0, B2

WWW Back

E0, 6A

E0, EA

WWW Forward

E0, 69

E0, E9

WWW Stop

E0, 68

E0, E8

WWW Refresh

E0, 67

E0, E7

WWW Favorites

E0, 66

E0, E6

Default Scan Code Set for Modern Keyboards

Scan Code Set

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

A

1C

F0,1C

9

46

F0,46

[

54

FO,54

B

32

F0,32

`

0E

F0,0E

INSERT

E0,70

E0,F0,70

C

21

F0,21

-

4E

F0,4E

HOME

E0,6C

E0,F0,6C

D

23

F0,23

=

55

FO,55

PG UP

E0,7D

E0,F0,7D

E

24

F0,24

\

5D

F0,5D

DELETE

E0,71

E0,F0,71

F

2B

F0,2B

BKSP

66

F0,66

END

E0,69

E0,F0,69

G

34

F0,34

SPACE

29

F0,29

PG DN

E0,7A

E0,F0,7A

H

33

F0,33

TAB

0D

F0,0D

U ARROW

E0,75

E0,F0,75

I

43

F0,43

CAPS

58

F0,58

L ARROW

E0,6B

E0,F0,6B

J

3B

F0,3B

L SHFT

12

FO,12

D ARROW

E0,72

E0,F0,72

K

42

F0,42

L CTRL

14

FO,14

R ARROW

E0,74

E0,F0,74

L

4B

F0,4B

L GUI

E0,1F

E0,F0,1F

NUM

77

F0,77

M

3A

F0,3A

L ALT

11

F0,11

KP /

E0,4A

E0,F0,4A

N

31

F0,31

R SHFT

59

F0,59

KP *

7C

F0,7C

O

44

F0,44

R CTRL

E0,14

E0,F0,14

KP -

7B

F0,7B

P

4D

F0,4D

R GUI

E0,27

E0,F0,27

KP +

79

F0,79

Q

15

F0,15

R ALT

E0,11

E0,F0,11

KP EN

E0,5A

E0,F0,5A

R

2D

F0,2D

APPS

E0,2F

E0,F0,2F

KP .

71

F0,71

S

1B

F0,1B

ENTER

5A

F0,5A

KP 0

70

F0,70

T

2C

F0,2C

ESC

76

F0,76

KP 1

69

F0,69

U

3C

F0,3C

F1

05

F0,05

KP 2

72

F0,72

V

2A

F0,2A

F2

06

F0,06

KP 3

7A

F0,7A

W

1D

F0,1D

F3

04

F0,04

KP 4

6B

F0,6B

X

22

F0,22

F4

0C

F0,0C

KP 5

73

F0,73

Y

35

F0,35

F5

03

F0,03

KP 6

74

F0,74

Z

1A

F0,1A

F6

0B

F0,0B

KP 7

6C

F0,6C

0

45

F0,45

F7

83

F0,83

KP 8

75

F0,75

1

16

F0,16

F8

0A

F0,0A

KP 9

7D

F0,7D

2

1E

F0,1E

F9

01

F0,01

]

5B

F0,5B

3

26

F0,26

F10

09

F0,09

;

4C

F0,4C

4

25

F0,25

F11

78

F0,78

'

52

F0,52

5

2E

F0,2E

F12

07

F0,07

,

41

F0,41

6

36

F0,36

PRNT
SCRN

E0,12,
E0,7C

E0,F0,
7C,E0,

F0,12

.

49

F0,49

7

3D

F0,3D

SCROLL

7E

F0,7E

/

4A

F0,4A

8

3E

F0,3E

PAUSE

E1,14,77,
E1,F0,14,

F0,77

-NONE-

ACPI Scan Codes

Key

Make Code

Break Code

Power

E0, 37

E0, F0, 37

Sleep

E0, 3F

E0, F0, 3F

Wake

E0, 5E

E0, F0, 5E

Windows Multimedia Scan Codes

Key

Make Code

Break Code

Next Track

E0, 4D

E0, F0, 4D

Previous Track

E0, 15

E0, F0, 15

Stop

E0, 3B

E0, F0, 3B

Play/Pause

E0, 34

E0, F0, 34

Mute

E0, 23

E0, F0, 23

Volume Up

E0, 32

E0, F0, 32

Volume Down

E0, 21

E0, F0, 21

Media Select

E0, 50

E0, F0, 50

E-Mail

E0, 48

E0, F0, 48

Calculator

E0, 2B

E0, F0, 2B

My Computer

E0, 40

E0, F0, 40

WWW Search

E0, 10

E0, F0, 10

WWW Home

E0, 3A

E0, F0, 3A

WWW Back

E0, 38

E0, F0, 38

WWW Forward

E0, 30

E0, F0, 30

WWW Stop

E0, 28

E0, F0, 28

WWW Refresh

E0, 20

E0, F0, 20

WWW Favorites

E0, 18

E0, F0, 18

PS/2 Scan Code Set for AT Motherboards

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

-----

KEY

MAKE

BREAK

A

1C

F0,1C

9

46

F0,46

[

54

F0,54

B

32

F0,32

`

0E

F0,0E

INSERT

67

F0,67

C

21

F0,21

-

4E

F0,4E

HOME

6E

F0,6E

D

23

F0,23

=

55

F0,55

PG UP

6F

F0,6F

E

24

F0,24

\

5C

F0,5C

DELETE

64

F0,64

F

2B

F0,2B

BKSP

66

F0,66

END

65

F0,65

G

34

F0,34

SPACE

29

F0,29

PG DN

6D

F0,6D

H

33

F0,33

TAB

0D

F0,0D

U ARROW

63

F0,63

I

43

F0,48

CAPS

14

F0,14

L ARROW

61

F0,61

J

3B

F0,3B

L SHFT

12

F0,12

D ARROW

60

F0,60

K

42

F0,42

L CTRL

11

F0,11

R ARROW

6A

F0,6A

L

4B

F0,4B

L WIN

8B

F0,8B

NUM

76

F0,76

M

3A

F0,3A

L ALT

19

F0,19

KP /

4A

F0,4A

N

31

F0,31

R SHFT

59

F0,59

KP *

7E

F0,7E

O

44

F0,44

R CTRL

58

F0,58

KP -

4E

F0,4E

P

4D

F0,4D

R WIN

8C

F0,8C

KP +

7C

F0,7C

Q

15

F0,15

R ALT

39

F0,39

KP EN

79

F0,79

R

2D

F0,2D

APPS

8D

F0,8D

KP .

71

F0,71

S

1B

F0,1B

ENTER

5A

F0,5A

KP 0

70

F0,70

T

2C

F0,2C

ESC

08

F0,08

KP 1

69

F0,69

U

3C

F0,3C

F1

07

F0,07

KP 2

72

F0,72

V

2A

F0,2A

F2

0F

F0,0F

KP 3

7A

F0,7A

W

1D

F0,1D

F3

17

F0,17

KP 4

6B

F0,6B

X

22

F0,22

F4

1F

F0,1F

KP 5

73

F0,73

Y

35

F0,35

F5

27

F0,27

KP 6

74

F0,74

Z

1A

F0,1A

F6

2F

F0,2F

KP 7

6C

F0,6C

0

45

F0,45

F7

37

F0,37

KP 8

75

F0,75

1

16

F0,16

F8

3F

F0,3F

KP 9

7D

F0,7D

2

1E

F0,1E

F9

47

F0,47

]

5B

F0,5B

3

26

F0,26

F10

4F

F0,4F

;

4C

F0,4C

4

25

F0,25

F11

56

F0,56

'

52

F0,52

5

2E

F0,2E

F12

5E

F0,5E

,

41

F0,41

6

36

F0,36

PRNT
SCRN

57

F0,57

.

49

F0,49

3D

F0,3D

SCROLL

5F

F0,5F

/

4A

F0,4A

8

3E

F0,3E

PAUSE

62

F0,62

Conclusion

Until next time,

~Mike ();
BrokenThorn Entertainment. Currently developing
EvolutionEngine and MicroOS Operating System.

Questions or comments? Feel free to Contact me.