73 lines
1.7 KiB
C
Executable File
73 lines
1.7 KiB
C
Executable File
/* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */
|
|
/* All Rights Reserved */
|
|
|
|
/* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */
|
|
/* The copyright notice above does not evidence any */
|
|
/* actual or intended publication of such source code. */
|
|
|
|
#ident "@(#)open.c 1.5 92/07/14 SMI" /* SVr4.0 1.3 */
|
|
|
|
#include <termio.h>
|
|
#include <signal.h>
|
|
/* gsi plotting output routines */
|
|
# define DOWN 012
|
|
# define UP 013
|
|
# define LEFT 010
|
|
# define RIGHT 040
|
|
# define BEL 007
|
|
# define ACK 006
|
|
#define PLOTIN 063
|
|
#define PLOTOUT 064
|
|
# define CR 015
|
|
# define FF 014
|
|
# define VERTRESP 48
|
|
# define HORZRESP 60.
|
|
# define HORZRES 6.
|
|
# define VERTRES 8.
|
|
/* vert and horiz spacing */
|
|
#define ESC 033
|
|
#define RS 036
|
|
#define US 037
|
|
#define HT 011
|
|
/* down is line feed, up is reverse line feed,
|
|
left is backspace, right is space. 48 points per inch
|
|
vertically, 60 horizontally */
|
|
|
|
int xnow, ynow;
|
|
struct termio ITTY,PTTY;
|
|
int OUTF;
|
|
float HEIGHT = 6.0, WIDTH = 6.0, OFFSET = 0.0;
|
|
int xscale, xoffset, yscale;
|
|
float botx = 0., boty = 0., obotx = 0., oboty = 0.;
|
|
float scalex = 1., scaley = 1.;
|
|
|
|
openpl ()
|
|
{
|
|
void reset();
|
|
xnow = ynow = 0;
|
|
OUTF = 1;
|
|
printf("\r");
|
|
ioctl(OUTF, TCGETA, &ITTY);
|
|
signal (SIGINT, reset);
|
|
PTTY = ITTY;
|
|
PTTY.c_oflag &= ~(ONLCR|OCRNL|ONOCR|ONLRET);
|
|
PTTY.c_cflag |= CSTOPB;
|
|
ioctl(OUTF, TCSETAW,&PTTY);
|
|
/* set vert and horiz spacing to 6 and 10 */
|
|
putchar(ESC); /* set vert spacing to 6 lpi */
|
|
putchar(RS);
|
|
putchar(HT);
|
|
putchar(ESC); /* set horiz spacing to 10 cpi */
|
|
putchar(US);
|
|
putchar(CR);
|
|
/* initialize constants */
|
|
xscale = 4096./(HORZRESP * WIDTH);
|
|
yscale = 4096 /(VERTRESP * HEIGHT);
|
|
xoffset = OFFSET * HORZRESP;
|
|
return;
|
|
}
|
|
|
|
openvt(){
|
|
openpl();
|
|
}
|