X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=ld45_start_nothing;a=blobdiff_plain;f=src%2Fkeyb.asm;h=b953474240785f3840f0b86f45f084c5cc719454;hp=d9fdd4eb8e41f75f889e6d341adba3ed73096aee;hb=033d820931e5930051b9df6a0c4a8183aa9299ee;hpb=e89f229506bcd5962dc6a7a6a07e5aab2fa7f7c5 diff --git a/src/keyb.asm b/src/keyb.asm index d9fdd4e..b953474 100644 --- a/src/keyb.asm +++ b/src/keyb.asm @@ -41,15 +41,11 @@ kbintr: and bl, 07fh add ebx, keystate - ; determine if it's a press or release - test al, 80h - jz .press - ; key release - mov byte [ebx], 0 - jmp .eoi -.press: ; key press - mov byte [ebx], 1 - + ; determine if it's a press or release (high bit set on release) + rol al, 1 + and al, 1 + xor al, 1 + mov byte [ebx], al .eoi: cli end_of_irq KB_IRQ