git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Correctness in ATA driver
[tpg/acess2.git]
/
Kernel
/
drv
/
kb.c
diff --git
a/Kernel/drv/kb.c
b/Kernel/drv/kb.c
index
f6a7313
..
6577882
100644
(file)
--- a/
Kernel/drv/kb.c
+++ b/
Kernel/drv/kb.c
@@
-64,6
+64,7
@@
int KB_Install(char **Arguments)
temp = inb(0x61);
outb(0x61, temp | 0x80);
outb(0x61, temp & 0x7F);
temp = inb(0x61);
outb(0x61, temp | 0x80);
outb(0x61, temp & 0x7F);
+ inb(0x60); // Clear keyboard buffer
IRQ_AddHandler(1, KB_IRQHandler);
DevFS_AddDevice( &gKB_DevInfo );
IRQ_AddHandler(1, KB_IRQHandler);
DevFS_AddDevice( &gKB_DevInfo );
@@
-81,17
+82,16
@@
void KB_IRQHandler()
Uint32 ch;
// int keyNum;
Uint32 ch;
// int keyNum;
- //if( inportb(0x64) & 0x20 ) return;
+ // Check port 0x64 to tell if this is from the aux port
+ //if( inb(0x64) & 0x20 ) return;
scancode = inb(0x60); // Read from the keyboard's data buffer
//Log_Debug("Keyboard", "scancode = %02x", scancode);
scancode = inb(0x60); // Read from the keyboard's data buffer
//Log_Debug("Keyboard", "scancode = %02x", scancode);
- //Log("KB_IRQHandler: scancode = 0x%02x", scancode);
-
// Ignore ACKs
if(scancode == 0xFA) {
// Ignore ACKs
if(scancode == 0xFA) {
- // Oh man! This is ana
chic (I'm leaving it here to represent the
- // mess that Acess once was)
+ // Oh man! This is ana
rchic (I'm leaving it here to represent
+ //
the
mess that Acess once was)
//kb_lastChar = KB_ACK;
return;
}
//kb_lastChar = KB_ACK;
return;
}
UCC
git Repository :: git.ucc.asn.au