/****************************************************************************
 *
 * Purpose: Reset the keyboard from line mode to character mode and
 *          suppress the echo when a key is entered. This allow the
 *          program to get a character without the user pressing ENTER.
 *
 *          This is for UNIX systems. DOS users have getch and getche.
 *          Unix programers can also use curses.
 *
 * Author:  M.J. Leslie.
 * Date:    30-Mar-97
 *
 ****************************************************************************/

void SetKeyboard  (void);
void ResetKeyboard(void);

main()
{
    char          Characters[1024];
    int           Inc=0;

    memset(Characters, 0, 1024);
  
    printf("Press a load of characters (q=exit)\n");

    SetKeyboard();

    for(Inc = 0; (Characters[Inc] = getchar()) != 'q'; Inc++);
  
    ResetKeyboard();

    printf("You Pressed %s\n", Characters);
}

/* Set the keyboard. */

void SetKeyboard(void)
{
    system("stty raw -echo");
}

/* Return the keyboard to its original state. If this is not called
 * before the program ends, the keyboard will remain in its reconfigured
 * state.
 */

void ResetKeyboard(void)
{
    system("stty -raw echo");
}

