view srogue/bsdtty.c @ 215:1b73a8641b37

rogue4: fix most GCC5 warnings. Converting all function definitions to ANSI style accounts for most of the change. This has exposed other problems, such as daemons not actually being their stated type, that will require more careful solutions.
author John "Elwin" Edwards
date Wed, 27 Jan 2016 19:41:05 -0500
parents 2128c7dc8a40
children
line wrap: on
line source

/*
 * Super-Rogue
 * Copyright (C) 1984 Robert D. Kindelberger
 * All rights reserved.
 *
 * See the file LICENSE.TXT for full copyright and licensing information.
 */

#include "rogue.h"

extern	bool NONL;

raw()
{
/*
	VERSION 5.0
	_tty.c_lflag &= ~ICANON;
	_tty.c_cc[VMIN] = 1;
	_tty.c_cc[VTIME] = 255;
	_tty.c_oflag &= ~OPOST;
*/
	_rawmode = TRUE;
	_tty.sg_flags |= CBREAK;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


noraw()
{
/*
	VERSION 5.0
	_tty.c_lflag |= ICANON;
	_tty.c_cc[VMIN] = _res_flg.c_cc[VMIN];
	_tty.c_cc[VTIME] = _res_flg.c_cc[VTIME];
	_tty.c_oflag |= OPOST;
*/
	_rawmode = FALSE;
	_tty.sg_flags &= ~CBREAK;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


crmode()
{
/*
	VERSION 5.0
	_tty.c_lflag &= ~ICANON;
	_tty.c_oflag |= ONLCR;
	_tty.c_cc[VMIN] = 1;
	_tty.c_cc[VTIME]=255;
*/
	_rawmode = TRUE;
	_tty.sg_flags |= (CBREAK | CRMOD);
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


nocrmode()
{
/*
	_tty.c_lflag |= ICANON;
	_tty.c_cc[VMIN]=_res_flg.c_cc[VMIN];
	_tty.c_cc[VTIME]=_res_flg.c_cc[VTIME];
*/
	_rawmode = FALSE;
	_tty.sg_flags &= ~CBREAK;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


echo()
{
	_tty.sg_flags |= ECHO;
	_echoit=TRUE;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}

noecho()
{
	_tty.sg_flags &= ~ECHO;
	_echoit = FALSE;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


nl()
{
/*
	VERSION 5.0
	_tty.c_iflag |= ICRNL;
	_tty.c_oflag |= ONLCR;
*/
	_tty.sg_flags |= CRMOD;
	NONL = TRUE;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}


nonl()
{
/*
	VERSION 5.0
	_tty.c_iflag &= ~ICRNL;
	_tty.c_oflag &= ~ONLCR;
*/
	_tty.sg_flags &= ~CRMOD;
	NONL = FALSE;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}

savetty()
{
	ioctl(_tty_ch, TIOCGETP, &_tty);
	_res_flg = _tty;
}

resetty()
{
	_tty = _res_flg;
	ioctl(_tty_ch, TIOCSETN, &_tty);
}