forked from KolibriOS/kolibrios
Fix for r.4588
git-svn-id: svn://kolibrios.org@4612 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
feb4d70501
commit
f6f7a854c7
@ -151,7 +151,8 @@
|
||||
Возвращаемое значение:
|
||||
* если буфер пуст, возвращается eax=1
|
||||
* если буфер непуст, то возвращается al=0, ah=код нажатой клавиши,
|
||||
биты 16-23 содержат сканкод нажатой клавиши,
|
||||
биты 16-23 содержат сканкод нажатой клавиши в режиме ASCII,
|
||||
в режме сканкодов биты обнулены.
|
||||
биты 23-31 обнулены
|
||||
* если есть "горячая клавиша", то возвращается
|
||||
al=2, ah=сканкод нажатой клавиши (0 для управляющих клавиш),
|
||||
|
@ -149,7 +149,8 @@ Returned value:
|
||||
* if the buffer is empty, function returns eax=1
|
||||
* if the buffer is not empty, function returns al=0,
|
||||
ah=code of the pressed key,
|
||||
bits 16-23 = contain scancode for pressed key,
|
||||
bits 16-23 = contain scancode for pressed key in ASCII mode,
|
||||
in the scancodes mode this bits cleared.
|
||||
bits 23-31 = zero
|
||||
* if there is "hotkey", function returns al=2,
|
||||
ah=scancode of the pressed key (0 for control keys),
|
||||
|
@ -492,7 +492,14 @@ send_scancode:
|
||||
mov [KEY_COUNT+eax], bl ; actually KEY_BUFF + EAX - 1
|
||||
; store original scancode
|
||||
add eax, 120+2
|
||||
mov [KEY_COUNT+eax], ch ; actually KEY_BUFF + EAX - 1
|
||||
push ecx
|
||||
cmp [keyboard_mode], 0; return from keymap
|
||||
je @f
|
||||
|
||||
xor ch, ch
|
||||
@@:
|
||||
mov [KEY_COUNT+eax], ch ; actually KEY_BUFF + EAX - 1
|
||||
pop ecx
|
||||
sub eax, 120+2
|
||||
.exit.irq1:
|
||||
ret
|
||||
|
Loading…
Reference in New Issue
Block a user