[comp.os.minix] term.dif for new tty driver

hannam@elec.uq.oz (Andrew Hannam) (10/12/88)

This is a diff file for term.c for the new tty driver. The one supplied
with the tty driver didn't handle flow control properly in some cases
because it used RAW mode. Sorry about the diff, but I'm still missing
sections of patch 11 and corresponding programs.
	Please reply by mail (atleast for the next week or so) as we have
been unable to recieve overseas news for the last three weeks. This will
hopefully be fixed soon and I will catch up on any comments posted about
the new tty driver.
	hannam@elec.uq.oz
***************************************************************************
40a41
> struct tchars tchars1, tchars2, tchars = { -1, -1, 021, 023, -1, -1};
71a73
>   ioctl(modem, TIOCGETC, &tchars1);
109a112
>   ioctl(modem, TIOCSETC, &tchars);
114c117,118
<   sgtty.sg_flags = RAW | parity;
---
>   	/* Use CBREAK instead of RAW so that RX xonxoff works */
>   sgtty.sg_flags = CBREAK | parity;
118,121c122,127
<   ioctl(0, TIOCGETP, &sgtty);
<   sgsave2 = sgtty;		/* modem parameters */
<   sgtty.sg_flags = (sgtty.sg_flags&(ANYP|EVENP|ODDP|NONEP)) | RAW;
<   ioctl(0, TIOCSETP, &sgtty);
---
>   ioctl(0, TIOCGETC, &tchars2);
>   ioctl(0, TIOCGETP, &sgtty);
>   sgsave2 = sgtty;		/* modem parameters */
>   sgtty.sg_flags = (sgtty.sg_flags&(ANYP|EVENP|ODDP|NONEP)) | CBREAK;
>   ioctl(0, TIOCSETP, &sgtty);
>   ioctl(0, TIOCSETC, &tchars);
183,184c189,192
<   ioctl(modem, TIOCSETP, &sgsave1);
<   ioctl(modem, TIOCSETM, &modsave1);
---
>   ioctl(modem, TIOCSETC, &tchars1);
>   ioctl(modem, TIOCSETP, &sgsave1);
>   ioctl(modem, TIOCSETM, &modsave1);
>   ioctl(0, TIOCSETC, &tchars2);