亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sysdep.c

?? ncurses-5.4 需要的就來下把 一定會有用的哦
?? C
字號:
/*** Copyright (C) 1991, 1997 Free Software Foundation, Inc.** ** This file is part of TACK.** ** TACK is free software; you can redistribute it and/or modify** it under the terms of the GNU General Public License as published by** the Free Software Foundation; either version 2, or (at your option)** any later version.** ** TACK is distributed in the hope that it will be useful,** but WITHOUT ANY WARRANTY; without even the implied warranty of** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the** GNU General Public License for more details.** ** You should have received a copy of the GNU General Public License** along with TACK; see the file COPYING.  If not, write to** the Free Software Foundation, Inc., 59 Temple Place - Suite 330,** Boston, MA 02111-1307, USA.*//* * Operating system dependent functions.  We assume the POSIX API. * Note: on strict-POSIX systems (including BSD/OS) the select_delay_type * global has no effect. */#include <signal.h>	/* include before curses.h to work around glibc bug */#include <tack.h>#include <term.h>#include <errno.h>#if defined(__BEOS__)#undef false#undef true#include <OS.h>#endif#if HAVE_SELECT#if HAVE_SYS_TIME_H && HAVE_SYS_TIME_SELECT#include <sys/time.h>#endif#if HAVE_SYS_SELECT_H#include <sys/select.h>#endif#endifMODULE_ID("$Id: sysdep.c,v 1.11 2002/04/21 19:40:43 tom Exp $")#if DECL_ERRNOextern int errno;#endif#ifdef TERMIOS#define PUT_TTY(fd, buf) tcsetattr(fd, TCSAFLUSH, buf)#else#define PUT_TTY(fd, buf) stty(fd, buf)#endif/* globals */int tty_frame_size;		/* asynch frame size times 2 */unsigned long tty_baud_rate;	/* baud rate - bits per second */int not_a_tty;			/* TRUE if output is not a tty (i.e. pipe) */int nodelay_read;		/* TRUE if NDELAY is set */#ifdef TERMIOS#define TTY_IS_NOECHO	!(new_modes.c_lflag & ECHO)#define TTY_IS_OUT_TRANS (new_modes.c_oflag & OPOST)#define TTY_IS_CHAR_MODE !(new_modes.c_lflag & ICANON)#define TTY_WAS_CS8 ((old_modes.c_cflag & CSIZE) == CS8)#define TTY_WAS_XON_XOFF (old_modes.c_iflag & (IXON|IXOFF))#else#define TTY_IS_NOECHO	!(new_modes.sg_flags & (ECHO))#define TTY_IS_OUT_TRANS (new_modes.sg_flags & (CRMOD))#define TTY_IS_CHAR_MODE (new_modes.sg_flags & (RAW|CBREAK))#define TTY_WAS_CS8	 (old_modes.sg_flags & (PASS8))#define TTY_WAS_XON_XOFF (old_modes.sg_flags & (TANDEM|MDMBUF|DECCTQ))#endifstatic TTY old_modes, new_modes;void catchsig(void);/* * These are a sneaky way of conditionalizing bit unsets so strict-POSIX * systems won't see them. */#ifndef XCASE#define XCASE	0#endif#ifndef OLCUC#define OLCUC	0#endif#ifndef IUCLC#define IUCLC	0#endif#ifndef TABDLY#define	TABDLY	0#endif#ifndef IXANY#define	IXANY	0#endifvoidtty_raw(int minch GCC_UNUSED, int mask){				/* set tty to raw noecho */	new_modes = old_modes;#ifdef TERMIOS#if HAVE_SELECT	new_modes.c_cc[VMIN] = 1;#else	new_modes.c_cc[VMIN] = minch;#endif	new_modes.c_cc[VTIME] = 2;	new_modes.c_lflag &=		~(ISIG | ICANON | XCASE | ECHO | ECHOE | ECHOK | ECHONL);#ifdef LOBLK	new_modes.c_lflag &= ~LOBLK;#endif	new_modes.c_oflag &= ~(OPOST | OLCUC | TABDLY);	if (mask == ALLOW_PARITY) {		new_modes.c_cflag &= ~(CSIZE | PARENB | HUPCL);		new_modes.c_cflag |= CS8;	}	new_modes.c_iflag &=		~(IGNBRK | BRKINT | IGNPAR | PARMRK | INPCK | ISTRIP | INLCR | IGNCR | ICRNL |		IUCLC | IXON | IXANY | IXOFF);#else	new_modes.sg_flags |= RAW;#endif	if (not_a_tty)		return;	PUT_TTY(fileno(stdin), &new_modes);}void tty_set(void){				/* set tty to special modes */	new_modes = old_modes;#ifdef TERMIOS	new_modes.c_cc[VMIN] = 1;	new_modes.c_cc[VTIME] = 1;	new_modes.c_lflag &= ~(ISIG | ICANON | ECHO | ECHOE | ECHOK | ECHONL);#if defined(ONLCR) && defined(OCRNL) && defined(ONLRET) && defined(OFILL)	new_modes.c_oflag &= ~(ONLCR | OCRNL | ONLRET | OFILL);#else	new_modes.c_oflag &= ~(OPOST);#endif	if (char_mask == ALLOW_PARITY)		new_modes.c_iflag &= ~ISTRIP;	switch (select_xon_xoff) {	case 0:		new_modes.c_iflag &= ~(IXON | IXOFF);		break;	case 1:#if defined(sequent) && sequent		/* the sequent System V emulation is broken */		new_modes = old_modes;		new_modes.c_cc[VEOL] = 6;	/* control F  (ACK) */#endif		new_modes.c_iflag |= IXON | IXOFF;		break;	}	switch (select_delay_type) {	case 0:#ifdef NLDLY		new_modes.c_oflag &=			~(NLDLY | CRDLY | TABDLY | BSDLY | VTDLY | FFDLY);#endif	/* NLDLY */		break;	case 1:#ifdef NLDLY		new_modes.c_oflag &=			~(NLDLY | CRDLY | TABDLY | BSDLY | VTDLY | FFDLY);#endif	/* NLDLY */#ifdef NL1		new_modes.c_oflag |= NL1 | CR2;#endif	/* NL1 */		break;	}	if (!(new_modes.c_oflag & ~OPOST))		new_modes.c_oflag &= ~OPOST;#else	new_modes.sg_flags |= RAW;	if (not_a_tty)		return;#endif	PUT_TTY(fileno(stdin), &new_modes);}void tty_reset(void){				/* reset the tty to the original modes */	fflush(stdout);	if (not_a_tty)		return;	PUT_TTY(fileno(stdin), &old_modes);}void tty_init(void){				/* ATT terminal init */#if defined(F_GETFL) && defined(O_NDELAY)	int flags;	flags = fcntl(fileno(stdin), F_GETFL, 0);	nodelay_read = flags & O_NDELAY;#else	nodelay_read = FALSE;#endif	not_a_tty = FALSE;	if (GET_TTY(fileno(stdin), &old_modes) == -1) {		if (errno == ENOTTY) {			tty_frame_size = 20;			not_a_tty = TRUE;			return;		}		printf("tcgetattr error: %d\n", errno);		exit(1);	}	/* if TAB3 is set then setterm() wipes out tabs (ht) */	new_modes = old_modes;#ifdef TERMIOS#ifdef TABDLY	new_modes.c_oflag &= ~TABDLY;#endif	/* TABDLY */#endif	if (PUT_TTY(fileno(stdin), &new_modes) == -1) {		printf("tcsetattr error: %d\n", errno);		exit(1);	}#ifdef sequent	/* the sequent ATT emulation is broken soooo. */	old_modes.c_cflag &= ~(CSIZE | CSTOPB);	old_modes.c_cflag |= CS7 | PARENB;#endif	catchsig();#ifdef TERMIOS	switch (old_modes.c_cflag & CSIZE) {#if defined(CS5) && (CS5 != 0)	case CS5:		tty_frame_size = 10;		break;#endif#if defined(CS6) && (CS6 != 0)	case CS6:		tty_frame_size = 12;		break;#endif#if defined(CS7) && (CS7 != 0)	case CS7:		tty_frame_size = 14;		break;#endif#if defined(CS8) && (CS8 != 0)	case CS8:		tty_frame_size = 16;		break;#endif	}	tty_frame_size += 2 +		((old_modes.c_cflag & PARENB) ? 2 : 0) +		((old_modes.c_cflag & CSTOPB) ? 4 : 2);#else	tty_frame_size = 6 +		(old_modes.sg_flags & PASS8) ? 16 : 14;#endif}/***	stty_query(question)****	Does the current driver settings have this property?*/intstty_query(int q){	switch (q) {		case TTY_NOECHO:		return TTY_IS_NOECHO;	case TTY_OUT_TRANS:		return TTY_IS_OUT_TRANS;	case TTY_CHAR_MODE:		return TTY_IS_CHAR_MODE;	}	return (-1);}/***	initial_stty_query(question)****	Did the initial driver settings have this property?*/intinitial_stty_query(int q){	switch (q) {	case TTY_8_BIT:		return TTY_WAS_CS8;	case TTY_XON_XOFF:		return TTY_WAS_XON_XOFF;	}	return (-1);}#if HAVE_SELECT && defined(FD_ZERO)static intchar_ready(void){	int n;	fd_set ifds;	struct timeval tv;	FD_ZERO(&ifds);	FD_SET(fileno(stdin), &ifds);	tv.tv_sec = 0;	tv.tv_usec = 200000;	n = select(fileno(stdin)+1, &ifds, NULL, NULL, &tv);	return (n != 0);}#else#ifdef FIONREADintchar_ready(void){	int i, j;	/* the following loop has to be tuned for each computer */	for (j = 0; j < 1000; j++) {		ioctl(fileno(stdin), FIONREAD, &i);		if (i)			return i;	}	return i;}#else#if defined(__BEOS__)intchar_ready(void){	int n = 0;	int howmany = ioctl(0, 'ichr', &n);	return (howmany >= 0 && n > 0);}#else#define char_ready() 1#endif#endif#endif/***	spin_flush()****	Wait for the input stream to stop.**	Throw away all input characters.*/voidspin_flush(void){	unsigned char buf[64];	fflush(stdout);	event_start(TIME_FLUSH);	/* start the timer */	do {		if (char_ready()) {			(void) read(fileno(stdin), &buf, sizeof(buf));		}	} while (event_time(TIME_FLUSH) < 400000);}/***	read_key(input-buffer, length-of-buffer)****	read one function key from the input stream.**	A null character is converted to 0x80.*/void read_key(char *buf, int max){	int got, ask, i, l;	char *s;	*buf = '\0';	s = buf;	fflush(stdout);	/* ATT unix may return 0 or 1, Berkeley Unix should be 1 */	while (read(fileno(stdin), s, 1) == 0);	++s;	--max;	while (max > 0 && (ask = char_ready())) {		if (ask > max) {			ask = max;		}		if ((got = read(fileno(stdin), s, ask))) {			s += got;		} else {			break;		}		max -= got;	}	*s = '\0';	l = s - buf;	for (s = buf, i = 0; i < l; i++) {		if ((*s & 0x7f) == 0) {			/* convert nulls to 0x80 */			*(unsigned char *)s = 128;		} else {			/* strip high order bits (if any) */			*s &= char_mask;		}	}}void ignoresig(void){	/* ignore signals */	signal(SIGINT, SIG_IGN);	signal(SIGHUP, SIG_IGN);	signal(SIGQUIT, SIG_IGN);	signal(SIGTERM, SIG_IGN);	signal(SIGALRM, SIG_IGN);} /*    onintr( )  is the interrupt handling routine onintr turns off interrupts while doing    clean-up  onintr always exits fatally */static RETSIGTYPE onintr(int sig GCC_UNUSED){	ignoresig();	tty_reset();	exit(1);} /*    catchsig( )  set up to field interrupts (via function onintr( )) so that if interrupted    we can restore the correct terminal modes  catchsig simply returns */void catchsig(void){	if ((signal(SIGINT, SIG_IGN)) == SIG_DFL)		signal(SIGINT, onintr);	if ((signal(SIGHUP, SIG_IGN)) == SIG_DFL)		signal(SIGHUP, onintr);	if ((signal(SIGQUIT, SIG_IGN)) == SIG_DFL)		signal(SIGQUIT, onintr);	if ((signal(SIGTERM, SIG_IGN)) == SIG_DFL)		signal(SIGTERM, onintr);}/***	alarm_event(sig)****	Come here for an alarm event*/static voidalarm_event(	int sig GCC_UNUSED){	no_alarm_event = 0;}/***	set_alarm_clock(seconds)****	Set the alarm clock to fire in <seconds>*/voidset_alarm_clock(	int seconds){	signal(SIGALRM, alarm_event);	no_alarm_event = 1;	(void) alarm(seconds);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
洋洋成人永久网站入口| 激情六月婷婷久久| 另类小说综合欧美亚洲| 久久精品久久精品| 粉嫩av亚洲一区二区图片| 国产成人一区在线| aaa亚洲精品| 欧美精选在线播放| 久久精品视频一区| 亚洲乱码日产精品bd| 91精品国产91热久久久做人人 | 91蜜桃传媒精品久久久一区二区| 亚洲欧洲av一区二区三区久久| 99精品在线免费| 亚洲大片免费看| 国产天堂亚洲国产碰碰| 91在线高清观看| 亚洲欧美另类图片小说| 日韩一级免费观看| 欧美在线观看一区| 色欧美片视频在线观看| 国产在线乱码一区二区三区| 亚洲va欧美va人人爽| 亚洲视频在线一区| 久久久99精品免费观看不卡| 成人国产免费视频| 国产乱码字幕精品高清av| 欧美高清在线视频| 欧美成人女星排名| 日韩免费在线观看| 久久久久国产精品免费免费搜索| 欧美大尺度电影在线| 日韩西西人体444www| 欧美精品在线一区二区| 欧美色网站导航| 欧美综合一区二区| 在线不卡一区二区| 精品久久久久av影院| 久久在线观看免费| 欧美videos大乳护士334| 91福利国产精品| 91成人国产精品| 在线成人午夜影院| 日韩欧美电影在线| 久久婷婷色综合| 亚洲欧洲av另类| 亚洲无人区一区| 日本伊人色综合网| 国产中文一区二区三区| 国产成人啪免费观看软件| www.色精品| 91精品国产手机| 亚洲视频在线观看三级| 首页欧美精品中文字幕| 粉嫩av一区二区三区粉嫩| 欧美电影在哪看比较好| 国产片一区二区| 极品美女销魂一区二区三区| 色综合中文综合网| 91麻豆免费看片| 4hu四虎永久在线影院成人| 亚洲精品一区二区三区影院| 日韩伦理电影网| 激情综合网激情| 在线不卡中文字幕播放| 亚洲免费在线观看视频| 91在线观看高清| 国产精品卡一卡二| 国产精品538一区二区在线| 欧美日韩精品一区二区在线播放| 国产精品成人一区二区艾草| 麻豆精品一区二区| xnxx国产精品| 国产99久久久国产精品潘金网站| 91精品国产色综合久久不卡电影| 国产日韩欧美高清在线| 免费精品视频在线| 777a∨成人精品桃花网| 亚洲自拍与偷拍| 欧美一区二区大片| 国产精品影视在线| 国产精品久久免费看| 91美女福利视频| 亚洲高清中文字幕| 欧美日韩不卡一区二区| 男人操女人的视频在线观看欧美| 欧美一区二区三区在| 麻豆免费精品视频| 国产视频一区二区在线| 成人妖精视频yjsp地址| 亚洲精品水蜜桃| 欧美videofree性高清杂交| 国产伦精品一区二区三区免费| 久久久久亚洲蜜桃| 成人精品小蝌蚪| 看片的网站亚洲| 一区二区三区中文字幕| 欧美一区二区在线观看| 国产高清不卡一区二区| 亚洲欧洲性图库| 欧美美女网站色| av电影在线观看不卡| 美脚の诱脚舐め脚责91| 亚洲欧美激情一区二区| 精品国产乱码久久久久久蜜臀| 91丨国产丨九色丨pron| 激情久久五月天| 国产一区二区视频在线| 麻豆91精品91久久久的内涵| 亚洲欧美日韩国产另类专区| 久久精品人人做| 欧美日韩中文字幕一区二区| 成人性生交大片免费看中文网站| 中文字幕综合网| 久久久久一区二区三区四区| 日韩欧美一二区| 欧美一三区三区四区免费在线看| 奇米精品一区二区三区在线观看 | 日韩精品一区二区三区四区 | 一区二区三区中文字幕| 国产日韩三级在线| 亚洲国产岛国毛片在线| 国产视频一区在线观看| 国产欧美日韩在线| 国产精品天天看| 亚洲人123区| 亚洲精品视频在线看| 亚洲图片欧美一区| 日韩在线卡一卡二| 加勒比av一区二区| 欧美伊人久久久久久久久影院| 欧美日韩精品一区二区天天拍小说| 欧美日韩一区在线观看| 欧美乱妇一区二区三区不卡视频| 日韩欧美一区二区视频| 久久久亚洲欧洲日产国码αv| 久久亚洲一区二区三区明星换脸| 久久久久久久综合狠狠综合| 欧美一区二区精品久久911| 亚洲精品一区二区三区香蕉 | 国产精品高潮久久久久无| 亚洲电影一级黄| 国产成都精品91一区二区三| 91一区二区三区在线播放| 欧美福利电影网| 国产精品传媒入口麻豆| 国产成人在线视频播放| 777色狠狠一区二区三区| 中文一区二区完整视频在线观看| 亚洲一区二区三区自拍| 不卡视频在线看| 26uuu国产一区二区三区| 午夜精品久久久| 欧美亚洲愉拍一区二区| 一区二区三区四区视频精品免费| 黄色资源网久久资源365| 欧美色成人综合| 欧美国产一区在线| 麻豆免费看一区二区三区| 欧美天堂亚洲电影院在线播放| 亚洲国产一区二区三区| 欧美在线播放高清精品| 亚洲一区二区三区中文字幕在线| 国产成人综合精品三级| 日韩欧美国产一区二区在线播放| 亚洲国产日日夜夜| 欧美一区二区在线播放| 亚洲国产一区二区视频| 99r精品视频| 亚洲成av人影院| 精品国产乱码久久久久久图片| 国产一区二三区好的| 91麻豆精品国产91久久久使用方法 | 欧美电影免费观看高清完整版在| 视频在线观看一区二区三区| 7799精品视频| 国产盗摄精品一区二区三区在线| 久久久久99精品一区| 91免费视频大全| 日本网站在线观看一区二区三区| 日韩亚洲欧美高清| 久久久久久麻豆| 91色九色蝌蚪| 国产一区二区福利| 亚洲丶国产丶欧美一区二区三区| 精品国产乱码91久久久久久网站| 国v精品久久久网| 久久草av在线| 亚洲成av人片| 日韩美女啊v在线免费观看| 欧美一区二区三区思思人| 91麻豆蜜桃一区二区三区| 捆绑变态av一区二区三区| 一区二区三区.www| 欧美极品另类videosde| 欧美一级搡bbbb搡bbbb| 欧美三级视频在线| 欧洲精品一区二区三区在线观看| 国产 日韩 欧美大片| 国产激情视频一区二区三区欧美|