home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Professional / OS2PRO194.ISO / os2 / prgramer / unix / emx / test / read_kbd.c < prev    next >
Encoding:
C/C++ Source or Header  |  1992-10-24  |  741 b   |  44 lines

  1. /* read_kbd.c (emx+gcc) */
  2.  
  3. #include <stdio.h>
  4. #include <stdlib.h>
  5.  
  6. static void volatile usage (void)
  7. {
  8.   fputs ("Usage: read_kbd <echo> <wait> <sig>\n", stderr);
  9.   exit (1);
  10. }
  11.  
  12.  
  13. static int bool_arg (const char *arg)
  14. {
  15.   if (strcmp (arg, "0") == 0)
  16.     return (0);
  17.   else if (strcmp (arg, "1") == 0)
  18.     return (1);
  19.   else
  20.     usage ();
  21. }
  22.  
  23.  
  24. int main (int argc, char *argv[])
  25. {
  26.   int echo, wait, sig;
  27.   int c;
  28.  
  29.   if (argc != 4)
  30.     usage ();
  31.   echo = bool_arg (argv[1]);
  32.   wait = bool_arg (argv[2]);
  33.   sig = bool_arg (argv[3]);
  34.   do
  35.     {
  36.       c = _read_kbd (echo, wait, sig);
  37.       if (c < 0)
  38.         printf (".");
  39.       else
  40.         printf (" %.2x ", c);
  41.     } while (c != 0x1b);
  42.   return (0);
  43. }
  44.