blob: 59c89a9589a227af7846b40190a4a5146f175b79 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <Library/UefiBootServicesTableLib.h>
#include <Library/UefiLib.h>
EFI_STATUS
EFIAPI
UefiMain (
IN EFI_HANDLE ImageHandle,
IN EFI_SYSTEM_TABLE *SystemTable
)
{
UINTN Index;
EFI_INPUT_KEY Key;
Print(L"Try to guess the secret symbol!\n");
Print(L"To quit press 'q'\n");
while(TRUE) {
gBS->WaitForEvent(1, &(gST->ConIn->WaitForKey), &Index);
gST->ConIn->ReadKeyStroke(gST->ConIn, &Key);
Print(L"ScanCode = %04x, UnicodeChar = %04x (%c)\n", Key.ScanCode, Key.UnicodeChar, Key.UnicodeChar);
if (Key.UnicodeChar == 'k') {
Print(L"Correct!\n");
break;
} else if (Key.UnicodeChar == 'q') {
Print(L"Bye!\n");
break;
} else {
Print(L"Wrong!\n");
}
}
gST->ConIn->Reset(gST->ConIn, FALSE);
return EFI_SUCCESS;
}
|