root/gameio.c
/* [<][>][^][v][top][bottom][index][help] */
DEFINITIONS
This source file includes following definitions.
- signal_handler
- set_signalhandlers
- gameioinit
- gameioread
- gameiopost
- gameioclear
- gameiorefresh
- gameioput
- gameiousleep
1 /* gameio.c */
2
3 #include<stdio.h>
4 #include <termios.h>
5 #include <unistd.h>
6 #include <sys/signal.h>
7 #include <stdlib.h>
8 #include <curses.h>
9
10 static WINDOW *win;
11
12 static void signal_handler(int unused)
13 {
14 printf("handler\n");
15 endwin();
16 exit(EXIT_SUCCESS);
17 }
18
19 static void set_signalhandlers(void)
20 {
21 signal(SIGHUP, signal_handler);
22 signal(SIGINT, signal_handler);
23 signal(SIGILL, signal_handler);
24 signal(SIGTERM,signal_handler);
25 signal(SIGQUIT,signal_handler);
26 }
27
28 void gameioinit(void){
29 set_signalhandlers();
30 win = initscr();
31 nodelay(win,TRUE);
32 cbreak();
33 noecho();
34 }
35
36 int gameioread(){
37 int ret = getch();
38 if (ret <=0){
39 return 0;
40 }else{
41 return ret;
42 }
43 }
44
45 void gameiopost(void){
46 nocbreak();
47 echo();
48 endwin();
49 }
50
51 void gameioclear(){
52 clear();
53 }
54
55 void gameiorefresh(void){
56 refresh();
57 }
58
59 void gameioput(int x, int y, char ch){
60 mvaddch(y,x,ch);
61 }
62
63 void gameiousleep(int t){
64 usleep(t);
65 }