version 1.1, 1997/05/21 20:40:09
|
version 1.17, 2012/05/02 22:35:01
|
Line 1
|
Line 1
|
/* Input driver header |
/* Input driver header |
|
|
Copyright (C) 1995 Free Software Foundation, Inc. |
Copyright (C) 1995,1996,1997,1998,1999,2003,2007 Free Software Foundation, Inc. |
|
|
This file is part of Gforth. |
This file is part of Gforth. |
|
|
Gforth is free software; you can redistribute it and/or |
Gforth is free software; you can redistribute it and/or |
modify it under the terms of the GNU General Public License |
modify it under the terms of the GNU General Public License |
as published by the Free Software Foundation; either version 2 |
as published by the Free Software Foundation, either version 3 |
of the License, or (at your option) any later version. |
of the License, or (at your option) any later version. |
|
|
This program is distributed in the hope that it will be useful, |
This program is distributed in the hope that it will be useful, |
Line 15
|
Line 15
|
GNU General Public License for more details. |
GNU General Public License for more details. |
|
|
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
along with this program; if not, write to the Free Software |
along with this program; if not, see http://www.gnu.org/licenses/. |
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
|
*/ |
*/ |
|
|
#include <setjmp.h> |
#include <setjmp.h> |
|
|
extern jmp_buf throw_jmp_buf; |
extern PER_THREAD jmp_buf * throw_jmp_handler; |
|
|
#ifdef MSDOS |
#if defined(MSDOS) || defined(SHARC) |
# define prep_terminal() |
# define prep_terminal() |
# define deprep_terminal() |
# define deprep_terminal() |
# include <conio.h> |
# include <conio.h> |
|
|
# define key() getch() |
# define key(stdin) getch() |
# define key_query FLAG(kbhit()) |
# define key_query(stdin) FLAG(kbhit()) |
#else |
#else |
unsigned char getkey(FILE *); |
Cell getkey(FILE *); |
long key_avail(FILE *); |
long key_avail(FILE *); |
void prep_terminal(); |
void prep_terminal(void); |
void deprep_terminal(); |
void deprep_terminal(void); |
void get_winsize(void); |
void get_winsize(void); |
|
|
# define key() getkey(stdin) |
# define key(stdin) getkey(stdin) |
# define key_query -(!!key_avail(stdin)) /* !! FLAG(...)? - anton */ |
# define key_query(stdin) FLAG(!!key_avail(stdin)) |
/* flag was originally wrong -- lennart */ |
/* FLAG only negates, key_avail may return the number available */ |
#endif |
#endif |
|
|
void install_signal_handlers(void); |
|
extern UCell rows, cols; |
extern UCell rows, cols; |
extern int terminal_prepped; |
extern int terminal_prepped; |