Test results from the Win32 crt unit (from FPC 3.0.2), run under 32-bit Windows 7, US keyboard:

Ctrl in the table means: Ctrl or Ctrl+Shift
Alt in the table means: Alt or Alt+Shift or Alt+Ctrl or Alt+Ctrl+Shift

key                |  -  |Shift|Ctrl |Alt  |NumLk|NumLk|NumLk|NumLk|
                   |     |     |     |     |     |Shift|Ctrl |Alt  |
-------------------+-----+-----+-----+-----+-----+-----+-----+-----+
Esc                |27 0 |27 0 |*WIN*|*WIN*|27 0 |27 0 |*WIN*|*WIN*|
F1                 |0 59 |0 84 |0 94 |0 104|0 59 |0 84 |0 94 |0 104|
F2                 |0 60 |0 85 |0 95 |0 105|0 60 |0 85 |0 95 |0 105|
F3                 |0 61 |0 86 |0 96 |0 106|0 61 |0 86 |0 96 |0 106|
F4                 |0 62 |0 87 |0 97 |0 107|0 62 |0 87 |0 97 |0 107|
F5                 |0 63 |0 88 |0 98 |0 108|0 63 |0 88 |0 98 |0 108|
F6                 |0 64 |0 89 |0 99 |0 109|0 64 |0 89 |0 99 |0 109|
F7                 |0 65 |0 90 |0 100|0 110|0 65 |0 90 |0 100|0 110|
F8                 |0 66 |0 91 |0 101|0 111|0 66 |0 91 |0 101|0 111|
F9                 |0 67 |0 92 |0 102|0 112|0 67 |0 92 |0 102|0 112|
F10                |0 68 |0 93 |0 103|0 113|0 68 |0 93 |0 103|0 113|
F11                |0 133|0 135|0 137|0 139|0 133|0 135|0 137|0 139|
F12                |0 134|0 136|0 138|0 140|0 134|0 136|0 138|0 140|
Print Screen/SysRq |     |     |     |     |     |     |     |     |
Scroll Lock        |     |     |*BRK*|     |     |     |*BRK*|     |
Pause/Break        |     |     |*BRK*|     |     |     |*BRK*|     |
`                  |96 0 |126 0|0 41 |0 41 |96 0 |126 0|0 41 |0 41 |
1                  |49 0 |33 0 |0 2  |0 120|49 0 |33 0 |0 2  |0 120|
2                  |50 0 |64 0 |0 3  |0 121|50 0 |64 0 |0 3  |0 121|
3                  |51 0 |35 0 |0 4  |0 122|51 0 |35 0 |0 4  |0 122|
4                  |52 0 |36 0 |0 5  |0 123|52 0 |36 0 |0 5  |0 123|
5                  |53 0 |37 0 |0 6  |0 124|53 0 |37 0 |0 6  |0 124|
6                  |54 0 |94 0 |0 7  |0 125|54 0 |94 0 |0 7  |0 125|
7                  |55 0 |38 0 |0 8  |0 126|55 0 |38 0 |0 8  |0 126|
8                  |56 0 |42 0 |0 9  |0 127|56 0 |42 0 |0 9  |0 127|
9                  |57 0 |40 0 |0 10 |0 128|57 0 |40 0 |0 10 |0 128|
0                  |48 0 |41 0 |0 11 |0 129|48 0 |41 0 |0 11 |0 129|
-                  |45 0 |95 0 |0 12 |0 130|45 0 |95 0 |0 12 |0 130|
=                  |61 0 |43 0 |0 13 |0 131|61 0 |43 0 |0 13 |0 131|
<- Backspace       |8 0  |8 0  |127 0|0 14 |8 0  |8 0  |127 0|0 14 |
Tab                |9 0  |0 15 |0 148|*WIN*|9 0  |0 15 |0 148|*WIN*|
q                  |113 0|81 0 |17 0 |0 16 |113 0|81 0 |17 0 |0 16 |
w                  |119 0|87 0 |23 0 |0 17 |119 0|87 0 |23 0 |0 17 |
e                  |101 0|69 0 |5 0  |0 18 |101 0|69 0 |5 0  |0 18 |
r                  |114 0|82 0 |18 0 |0 19 |114 0|82 0 |18 0 |0 19 |
t                  |116 0|84 0 |20 0 |0 20 |116 0|84 0 |20 0 |0 20 |
y                  |121 0|89 0 |25 0 |0 21 |121 0|89 0 |25 0 |0 21 |
u                  |117 0|85 0 |21 0 |0 22 |117 0|85 0 |21 0 |0 22 |
i                  |105 0|73 0 |9 0  |0 23 |105 0|73 0 |9 0  |0 23 |
o                  |111 0|79 0 |15 0 |0 24 |111 0|79 0 |15 0 |0 24 |
p                  |112 0|80 0 |16 0 |0 25 |112 0|80 0 |16 0 |0 25 |
[                  |91 0 |123 0|27 0 |0 26 |91 0 |123 0|27 0 |0 26 |
]                  |93 0 |125 0|29 0 |0 27 |93 0 |125 0|29 0 |0 27 |
\                  |92 0 |124 0|28 0 |0 43 |92 0 |124 0|28 0 |0 43 |
Caps Lock          |     |     |     |     |     |     |     |     |
a                  |97 0 |65 0 |1 0  |0 30 |97 0 |65 0 |1 0  |0 30 |
s                  |115 0|83 0 |PAUSE|0 31 |115 0|83 0 |PAUSE|0 31 |
d                  |100 0|68 0 |4 0  |0 32 |100 0|68 0 |4 0  |0 32 |
f                  |102 0|70 0 |6 0  |0 33 |102 0|70 0 |6 0  |0 33 |
g                  |103 0|71 0 |7 0  |0 34 |103 0|71 0 |7 0  |0 34 |
h                  |104 0|72 0 |8 0  |0 35 |104 0|72 0 |8 0  |0 35 |
j                  |106 0|74 0 |10 0 |0 36 |106 0|74 0 |10 0 |0 36 |
k                  |107 0|75 0 |11 0 |0 37 |107 0|75 0 |11 0 |0 37 |
l                  |108 0|76 0 |12 0 |0 38 |108 0|76 0 |12 0 |0 38 |
;                  |59 0 |58 0 |0 39 |0 39 |59 0 |58 0 |0 39 |0 39 |
'                  |39 0 |34 0 |0 40 |0 40 |39 0 |34 0 |0 40 |0 40 |
Enter              |13 0 |13 0 |10 0 |*WIN*|13 0 |13 0 |10 0 |*WIN*|
Left Shift         |     |     |     |     |     |     |     |     |
z                  |122 0|90 0 |26 0 |0 44 |122 0|90 0 |26 0 |0 44 |
x                  |120 0|88 0 |24 0 |0 45 |120 0|88 0 |24 0 |0 45 |
c                  |99 0 |67 0 |*BRK*|0 46 |99 0 |67 0 |*BRK*|0 46 |
v                  |118 0|86 0 |22 0 |0 47 |118 0|86 0 |22 0 |0 47 |
b                  |98 0 |66 0 |2 0  |0 48 |98 0 |66 0 |2 0  |0 48 |
n                  |110 0|78 0 |14 0 |0 49 |110 0|78 0 |14 0 |0 49 |
m                  |109 0|77 0 |13 0 |0 50 |109 0|77 0 |13 0 |0 50 |
,                  |44 0 |60 0 |0 51 |0 51 |44 0 |60 0 |0 51 |0 51 |
.                  |46 0 |62 0 |0 52 |0 52 |46 0 |62 0 |0 52 |0 52 |
/                  |47 0 |63 0 |0 149|0 164|47 0 |63 0 |0 149|0 164|
Right Shift        |     |     |     |     |     |     |     |     |
Left Ctrl          |     |     |     |     |     |     |     |     |
Left Alt           |     |     |     |     |     |     |     |     |
Space              |32 0 |32 0 |32 0 |*WIN*|32 0 |32 0 |32 0 |*WIN*|
Right Alt          |     |     |     |     |     |     |     |     |
Right Ctrl         |     |     |     |     |     |     |     |     |
Insert             |0 82 |0 82 |0 146|NUMSC|0 82 |0 82 |0 146|NUMSC|
Delete             |0 83 |0 83 |0 147|0 163|0 83 |0 83 |0 147|0 163|
Home               |0 71 |0 71 |0 119|NUMSC|0 71 |0 71 |0 119|NUMSC|
End                |0 79 |0 79 |0 117|NUMSC|0 79 |0 79 |0 117|NUMSC|
Page Up            |0 73 |0 73 |0 132|NUMSC|0 73 |0 73 |0 132|NUMSC|
Page Down          |0 81 |0 81 |0 118|NUMSC|0 81 |0 81 |0 118|NUMSC|
Up Arrow           |0 72 |0 72 |0 141|NUMSC|0 72 |0 72 |0 141|NUMSC|
Left Arrow         |0 75 |0 75 |0 115|NUMSC|0 75 |0 75 |0 115|NUMSC|
Right Arrow        |0 77 |0 77 |0 116|NUMSC|0 77 |0 77 |0 116|NUMSC|
Down Arrow         |0 80 |0 80 |0 145|NUMSC|0 80 |0 80 |0 145|NUMSC|
Num Lock           |     |     |     |     |     |     |     |     |
Num /              |0 53 |0 53 |0 149|0 164|0 53 |0 53 |0 149|0 164|
Num *              |42 0 |42 0 |0 150|0 55 |42 0 |42 0 |0 150|0 55 |
Num -              |45 0 |45 0 |0 142|0 74 |45 0 |45 0 |0 142|0 74 |
Num +              |43 0 |43 0 |0 78 |0 78 |43 0 |43 0 |0 78 |0 78 |
Num Enter          |13 0 |13 0 |10 0 |*WIN*|13 0 |13 0 |10 0 |*WIN*|
Num 0/Ins          |0 82 |0 82 |0 146|NUMSC|48 0 |0 82 |0 146|NUMSC|
Num ./Del          |0 83 |0 83 |0 147|0 163|46 0 |0 83 |0 147|0 163|
Num 1/End          |0 79 |0 79 |0 117|NUMSC|49 0 |0 79 |0 117|NUMSC|
Num 2/Down Arrow   |0 80 |0 80 |0 145|NUMSC|50 0 |0 80 |0 145|NUMSC|
Num 3/PgDn         |0 81 |0 81 |0 118|NUMSC|51 0 |0 81 |0 118|NUMSC|
Num 4/Left Arrow   |0 75 |0 75 |0 115|NUMSC|52 0 |0 75 |0 115|NUMSC|
Num 5              |0 76 |0 76 |0 143|NUMSC|53 0 |0 76 |0 143|NUMSC|
Num 6/Right Arrow  |0 77 |0 77 |0 116|NUMSC|54 0 |0 77 |0 116|NUMSC|
Num 7/Home         |0 71 |0 71 |0 119|NUMSC|55 0 |0 71 |0 119|NUMSC|
Num 8/Up Arrow     |0 72 |0 72 |0 141|NUMSC|56 0 |0 72 |0 141|NUMSC|
Num 9/PgUp         |0 73 |0 73 |0 132|NUMSC|57 0 |0 73 |0 132|NUMSC|


Special:
  Ctrl+Shift+6: 30 0
  Ctrl+Shift+-: 31 0
  Ctrl+Shift+Backspace: 0 14
  Ctrl+Shift+Space: 0 57
  Alt+Ctrl+Space: 0 57
  Alt+Ctrl+Shift+Space: 0 57
  Alt+Ctrl+Enter: 0 166
  Alt+Ctrl+Shift+Enter: 0 166

*WIN* = Windows special key
*BRK* = Ctrl+Break
NUMSC = Numeric ASCII entry
