bb6b2dcd |
1 | /* $Id$ */\r |
2 | /***************************************************************\r |
3 | ** I/O subsystem for PForth for WIN32 systems.\r |
4 | **\r |
5 | ** Author: Phil Burk\r |
6 | ** Copyright 1994 3DO, Phil Burk, Larry Polansky, David Rosenboom\r |
7 | **\r |
8 | ** The pForth software code is dedicated to the public domain,\r |
9 | ** and any third party may reproduce, distribute and modify\r |
10 | ** the pForth software code or any derivative works thereof\r |
11 | ** without any compensation or license. The pForth software\r |
12 | ** code is provided on an "as is" basis without any warranty\r |
13 | ** of any kind, including, without limitation, the implied\r |
14 | ** warranties of merchantability and fitness for a particular\r |
15 | ** purpose and their equivalents under the laws of any jurisdiction.\r |
16 | **\r |
17 | ****************************************************************\r |
18 | ** 941004 PLB Extracted IO calls from pforth_main.c\r |
19 | ***************************************************************/\r |
20 | \r |
21 | #include "../pf_all.h"\r |
22 | \r |
23 | #include <conio.h>\r |
24 | \r |
25 | /* Use console mode I/O so that KEY and ?TERMINAL will work. */\r |
26 | #if WIN32\r |
27 | int sdTerminalOut( char c )\r |
28 | {\r |
29 | return _putch((char)(c));\r |
30 | }\r |
31 | \r |
32 | /* Needed cuz _getch() does not echo. */\r |
33 | int sdTerminalEcho( char c )\r |
34 | {\r |
35 | return _putch((char)(c));\r |
36 | }\r |
37 | \r |
38 | int sdTerminalIn( void )\r |
39 | {\r |
40 | return _getch();\r |
41 | }\r |
42 | \r |
43 | int sdQueryTerminal( void )\r |
44 | {\r |
45 | return _kbhit();\r |
46 | }\r |
47 | \r |
48 | int sdTerminalFlush( void )\r |
49 | {\r |
50 | #ifdef PF_NO_FILEIO\r |
51 | return -1;\r |
52 | #else\r |
53 | return fflush(PF_STDOUT);\r |
54 | #endif\r |
55 | }\r |
56 | \r |
57 | void sdTerminalInit( void )\r |
58 | {\r |
59 | }\r |
60 | \r |
61 | void sdTerminalTerm( void )\r |
62 | {\r |
63 | }\r |
64 | #endif\r |