The Pedigree Project
0.1
|
Public Member Functions | |
virtual void | initialise () |
virtual void | setDebugState (bool enableDebugMode) |
virtual bool | getDebugState () |
virtual char | getChar () |
virtual char | getCharNonBlock () |
virtual Character | getCharacter () |
virtual Character | getCharacterNonBlock () |
virtual bool | shift () |
virtual bool | ctrl () |
virtual bool | alt () |
virtual bool | capsLock () |
Public Member Functions inherited from Keyboard | |
virtual char | getLedState () |
virtual void | setLedState (char state) |
Private Member Functions | |
PPCKeyboard (const PPCKeyboard &) | |
PPCKeyboard & | operator= (const PPCKeyboard &) |
Private Attributes | |
OFHandle | m_Dev |
Additional Inherited Members | |
Public Types inherited from Keyboard | |
enum | KeyFlags { Special = 1ULL << 63, Ctrl = 1ULL << 62, Shift = 1ULL << 61, Alt = 1ULL << 60, AltGr = 1ULL << 59, Special = 1ULL << 63, Ctrl = 1ULL << 62, Shift = 1ULL << 61, Alt = 1ULL << 60, AltGr = 1ULL << 59 } |
enum | KeyboardLeds { ScrollLock = 1 << 0, NumLock = 1 << 1, CapsLock = 1 << 2, Led1 = 1 << 3, Led2 = 1 << 4, Led3 = 1 << 5, Led4 = 1 << 6, Led5 = 1 << 7 } |
Bit numbers follow the same format as the PS/2 keyboard LED byte. More... | |
enum | KeyFlags { Special = 1ULL << 63, Ctrl = 1ULL << 62, Shift = 1ULL << 61, Alt = 1ULL << 60, AltGr = 1ULL << 59, Special = 1ULL << 63, Ctrl = 1ULL << 62, Shift = 1ULL << 61, Alt = 1ULL << 60, AltGr = 1ULL << 59 } |
Definition at line 27 of file kernel/machine/ppc_common/Keyboard.h.
|
inlinevirtual |
Definition at line 93 of file kernel/machine/ppc_common/Keyboard.h.
|
inlinevirtual |
Definition at line 101 of file kernel/machine/ppc_common/Keyboard.h.
|
inlinevirtual |
Definition at line 85 of file kernel/machine/ppc_common/Keyboard.h.
|
virtual |
Retrieves a character from the keyboard. Blocking I/O.
Implements Keyboard.
Definition at line 38 of file ppc_common/Keyboard.cc.
References OpenFirmware::instance().
|
virtual |
Retrieves a character from the keyboard in special descriptor format. Blocking I/O.
Definition at line 84 of file ppc_common/Keyboard.cc.
References X86Keyboard::getChar().
|
virtual |
Retrieves a character from the keyboard in special descriptor format. Nonblocking I/O.
Definition at line 95 of file ppc_common/Keyboard.cc.
References X86Keyboard::getCharNonBlock().
|
virtual |
Retrieves a character from the keyboard. Non blocking I/O.
Implements Keyboard.
Definition at line 60 of file ppc_common/Keyboard.cc.
References OpenFirmware::instance().
|
virtual |
Initialises the device.
Implements Keyboard.
Definition at line 30 of file ppc_common/Keyboard.cc.
References OpenFirmware::instance().
|
virtual |
Sets the state of the device. When debugging, it is unwise to rely on interrupt- driven I/O, however in normal use polling is extremely slow and CPU-intensive.
The debugger therefore will set the device to "debug state" by calling this function with the argument "true". In "debug state", any buffered input will be discarded, the device's interrupt masked, and the device will rely on polling only. This will be the default state.
When the device is set to "normal state" by calling this function with the argument "false", interrupts may be used, along with buffered input, and it is recommended that during blocking I/O a Semaphore is used to signal incoming interrupts, so that the blocked thread may go to sleep.
Implements Keyboard.
Definition at line 106 of file ppc_common/Keyboard.cc.
|
inlinevirtual |
Definition at line 77 of file kernel/machine/ppc_common/Keyboard.h.
|
private |
Our keyboard device.
Definition at line 111 of file kernel/machine/ppc_common/Keyboard.h.