Returns the next unicode character from the keyboard buffer.
Returns the next character from the keyboard buffer, in Unicode format.
If the buffer is empty, it waits until a key is pressed. You can see if
there are queued keypresses with keypressed(). The return value contains
the Unicode value of the key, and if not NULL, the pointer argument will
be set to the scancode. Unlike readkey(), this function is able to return
character values greater than 255. Example:
int val, scancode;
val = ureadkey(&scancode);
if (val == 0x00F1)
allegro_message("You pressed n with tilde\n");
if (val == 0x00DF)
allegro_message("You pressed sharp s\n");
You should be able to find Unicode character maps at
. Remember that on DOS you must specify a custom
keyboard map (like those found in `keyboard.dat') usually with the help of
a configuration file specifying the language mapping (keyboard variable in
system section of `allegro.cfg'), or you will get the default US keyboard
The following threads each have code containing this keyword:
Note: You can click on the numbers to jump directly to the posts that reference this page.
The following projects include source code containing this keyword: