2,16 → 2,16 |
|
key: |
mov ecx,1 |
mcall 66,3 |
mcall 66,3 ; Get status of the control keys |
mov [shi],eax |
xor ebx,ebx |
test al,0x03 |
test al,0x03 ; Left or right shift |
jz @f |
or ebx,KM_SHIFT |
@@: test al,0x0C |
@@: test al,0x0C ; Left or right control |
jz @f |
or ebx,KM_CTRL |
@@: test al,0x30 |
@@: test al,0x10 ; Left alt |
jz @f |
or ebx,KM_ALT |
@@: mov edx,ebx |
82,6 → 82,12 |
dec ecx |
.no_caps_lock: |
;-------------------------------------- |
; alt gr pressed? |
test [shi], 0x00000020 |
jz .no_alt_gr |
mov ecx, 3 |
.no_alt_gr: |
;-------------------------------------- |
push eax |
mcall 26,2,,key1 |
pop eax |