ureadkey - Returns the next unicode character from the keyboard buffer. Allegro
game programming library.
int ureadkey(int *scancode);
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 http://www.unicode.org/.
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 mapping.