xref: /csrg-svn/old/lib2648/printg.c (revision 11487)
1*11487Sralph /*	printg.c	4.1	83/03/09	*/
2*11487Sralph 
3*11487Sralph #include "2648.h"
4*11487Sralph 
5*11487Sralph printg()
6*11487Sralph {
7*11487Sralph 	int oldvid = _video;
8*11487Sralph 	int c, c2;
9*11487Sralph 
10*11487Sralph 	if (oldvid==INVERSE)
11*11487Sralph 		togvid();
12*11487Sralph 	sync();
13*11487Sralph 	escseq(NONE);
14*11487Sralph 	outstr("\33&p4d5u0C");
15*11487Sralph 	outchar('\21');	/* test handshaking fix */
16*11487Sralph 
17*11487Sralph 	/*
18*11487Sralph 	 * The terminal sometimes sends back S<cr> or F<cr>.
19*11487Sralph 	 * Ignore them.
20*11487Sralph 	 */
21*11487Sralph 	fflush(stdout);
22*11487Sralph 	c = getchar();
23*11487Sralph 	if (c=='F' || c=='S') {
24*11487Sralph 		c2 = getchar();
25*11487Sralph 		if (c2 != '\r' && c2 != '\n')
26*11487Sralph 			ungetc(c2, stdin);
27*11487Sralph 	} else {
28*11487Sralph 		ungetc(c, stdin);
29*11487Sralph 	}
30*11487Sralph 
31*11487Sralph 	if (oldvid==INVERSE)
32*11487Sralph 		togvid();
33*11487Sralph }
34