mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
- Refactor keyboard support to match serial. Now reading a key and waiting for a key are two things.
- Implement KbHit Firmware routine. - It is now possible to interact with FreeLDR using the keyboard. svn path=/trunk/; revision=45416
This commit is contained in:
@@ -21,8 +21,8 @@ LlbFwPutChar(INT Ch)
|
||||
BOOLEAN
|
||||
LlbFwKbHit(VOID)
|
||||
{
|
||||
/* Not yet implemented */
|
||||
return FALSE;
|
||||
/* Check RX buffer */
|
||||
return LlbHwKbdReady();
|
||||
}
|
||||
|
||||
INT
|
||||
|
||||
@@ -115,19 +115,17 @@ LlbHwKbdSend(IN ULONG Value)
|
||||
WRITE_REGISTER_UCHAR(PL050_KMIDATA, Value);
|
||||
}
|
||||
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
LlbHwKbdReady(VOID)
|
||||
{
|
||||
return READ_REGISTER_UCHAR(PL050_KMISTAT) & KMISTAT_RXFULL;
|
||||
}
|
||||
|
||||
INT
|
||||
NTAPI
|
||||
LlbHwKbdRead(VOID)
|
||||
{
|
||||
ULONG Status;
|
||||
|
||||
/* Wait for ready signal */
|
||||
do
|
||||
{
|
||||
/* Read TX buffer state */
|
||||
Status = READ_REGISTER_UCHAR(PL050_KMISTAT);
|
||||
} while (!(Status & KMISTAT_RXFULL));
|
||||
|
||||
/* Read current data on keyboard */
|
||||
return READ_REGISTER_UCHAR(PL050_KMIDATA);
|
||||
}
|
||||
|
||||
@@ -92,6 +92,12 @@ LlbHwKbdSend(
|
||||
IN ULONG Value
|
||||
);
|
||||
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
LlbHwKbdReady(
|
||||
VOID
|
||||
);
|
||||
|
||||
INT
|
||||
NTAPI
|
||||
LlbHwKbdRead(
|
||||
|
||||
Reference in New Issue
Block a user