- Implement KbHit Firmware routine.
- It is now possible to interact with FreeLDR using the keyboard.
svn path=/trunk/; revision=45416
BOOLEAN
LlbFwKbHit(VOID)
{
- /* Not yet implemented */
- return FALSE;
+ /* Check RX buffer */
+ return LlbHwKbdReady();
}
INT
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);
}
IN ULONG Value
);
+BOOLEAN
+NTAPI
+LlbHwKbdReady(
+ VOID
+);
+
INT
NTAPI
LlbHwKbdRead(