bionic (3) readkey.3alleg4.gz

Provided by: allegro4-doc_4.4.2-10_all bug

NAME

       readkey - Returns the next character from the keyboard buffer. Allegro game programming library.

SYNOPSIS

       #include <allegro.h>

       int readkey();

DESCRIPTION

       Returns  the  next  character from the keyboard buffer, in ASCII format. If the buffer is empty, it waits
       until a key is pressed. You can see if there are queued keypresses with keypressed().

       The low byte of the return value contains the ASCII code of the key, and the high byte the scancode.  The
       scancode  remains  the  same  whatever the state of the shift, ctrl and alt keys, while the ASCII code is
       affected by shift and ctrl in the normal way (shift changes case, ctrl+letter gives the position of  that
       letter  in  the  alphabet,  eg. ctrl+A = 1, ctrl+B = 2, etc). Pressing alt+key returns only the scancode,
       with a zero ASCII code in the low byte. For example:

          int val;
          ...
          val = readkey();
          if ((val & 0xff) == 'd')     /* by ASCII code */
             allegro_message("You pressed 'd'\n");

          if ((val >> 8) == KEY_SPACE) /* by scancode */
             allegro_message("You pressed Space\n");

          if ((val & 0xff) == 3)       /* ctrl+letter */
             allegro_message("You pressed Control+C\n");

          if (val == (KEY_X << 8))     /* alt+letter */
             allegro_message("You pressed Alt+X\n");

       This function cannot return character values greater than 255. If you need to  read  Unicode  input,  use
       ureadkey() instead.

SEE ALSO

       install_keyboard(3alleg4),       ureadkey(3alleg4),      keypressed(3alleg4),      clear_keybuf(3alleg4),
       simulate_keypress(3alleg4)