/kernel/trunk/arch/ia64/src/ski/ski.c |
---|
65,13 → 65,14 |
if (ch == '\n') ski_putchar('\r'); |
} |
/** Display character on debug console |
/** Ask debug console if a key was pressed. |
* |
* Use SSC (Simulator System Call) to |
* get character from debug console. |
* Non blocking HW call |
* @return Returns ascii code of pressed key or 0 if no key pressed |
* |
* This call is non-blocking. |
* |
* @return ASCII code of pressed key or 0 if no key pressed. |
*/ |
__s32 ski_getchar(void) |
{ |
/kernel/trunk/arch/ia64/src/drivers/keyboard.c |
---|
1,6 → 1,4 |
/* |
* Copyright (C) 2003 Josef Cejka |
* Copyright (C) 2005 Jakub Jermar |
* Copyright (C) 2005 Jakub Vana |
* All rights reserved. |
* |
46,10 → 44,8 |
.suspend = keyboard_disable |
}; |
bool kb_disable; |
int kb_disable; |
/** Initialize keyboard subsystem. */ |
void keyboard_init(void) |
{ |
58,26 → 54,29 |
kb_disable = false; |
} |
/** Process keyboard interrupt. */ |
/** Ask keyboard if a key was pressed. */ |
void poll_keyboard(void) |
{ |
if(kb_disable) return; |
char ch; |
if (kb_disable) |
return; |
ch = ski_getchar(); |
if(ch=='\r') ch='\n'; |
if(ch) chardev_push_character(&kbrd, ch); |
if(ch == '\r') |
ch = '\n'; |
if (ch) |
chardev_push_character(&kbrd, ch); |
} |
/* Called from getc(). */ |
void keyboard_enable(void) |
{ |
kb_disable=false; |
kb_disable = false; |
} |
/* Called from getc(). */ |
void keyboard_disable(void) |
{ |
kb_disable=true; |
kb_disable = true; |
} |
/kernel/trunk/arch/ia32/src/smp/apic.c |
---|
43,7 → 43,7 |
* Advanced Programmable Interrupt Controller for SMP systems. |
* Tested on: |
* Bochs 2.0.2 - Bochs 2.2 with 2-8 CPUs |
* Simics 2.0.28 - Simics 2.2.19 2-8 CPUs |
* Simics 2.0.28 - Simics 2.2.19 2-15 CPUs |
* VMware Workstation 5.5 with 2 CPUs |
* ASUS P/I-P65UP5 + ASUS C-P55T2D REV. 1.41 with 2x 200Mhz Pentium CPUs |
* ASUS PCH-DL with 2x 3000Mhz Pentium 4 Xeon (HT) CPUs |