Code: Select all
// функция 2 получить код нажатой клавиши
bool kos_GetKey( Byte &keyCode )
{
Dword result;
//
__asm
{
push edx
getkey:
mov eax,2 ; Gluk
int 0x40
cmp eax,1
jne getkeyi
mov ah,dh
jmp getkeyii
getkeyi:
mov dh,ah ; Gluk
jmp getkey
getkeyii:
pop edx
mov result, eax
}
//
keyCode = result >> 8;
//
return ( result & 0xFF ) == 0;
}
Поэтому в данном случае должно быть либо две функции
bool GetKeyStatus и Byte GetKeyCode (надеюсь правильно написал для СИ)
либо одной процедурой GetKey (bool Status ,Byte KeyCode) (надеюсь правильно написал для СИ) где Status и KeyCode могут быть использованный как для входных и возвращающихся данных из процедуры.
Считаю нормальным возврат из функции в виде структуры (записи) содержащей в себе поля Status и KeyCode, но в данном случае, это неудобно да и не нужно! Не тот случай!