summaryrefslogtreecommitdiff
path: root/reference/C/CONTRIB/SNIP/getkey.c
blob: 65bf913da757d2bfa2cffbe47ce6c93603f9aa64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/*
**  Originally published as part of the MicroFirm Function Library
**
**  Copyright 1986, S.E. Margison
**  Copyright 1989-92, Robert B.Stout
**
**  Subset version released to the public domain, 1990
*/

#include <conio.h>

int getkey(void)
{
      int i;

      switch (i = (int)getch())
      {
      case 0xe0:
#ifdef MSDOS
            return i;
#endif
      case 0:
            return 256 + (int)getch();
      default:
            return i;
      }
}