xref: /csrg-svn/lib/libplot/hp2648/linemod.c (revision 19975)
1*19975Sdist /*
2*19975Sdist  * Copyright (c) 1980 Regents of the University of California.
3*19975Sdist  * All rights reserved.  The Berkeley software License Agreement
4*19975Sdist  * specifies the terms and conditions for redistribution.
5*19975Sdist  */
6*19975Sdist 
715454Sralph #ifndef lint
8*19975Sdist static char sccsid[] = "@(#)linemod.c	5.1 (Berkeley) 05/07/85";
9*19975Sdist #endif not lint
1015454Sralph 
1115454Sralph #include "hp2648.h"
1215454Sralph 
1315454Sralph linemod( line )
1415454Sralph char	*line;
1515454Sralph {
1615454Sralph 	putchar('Z');
1715454Sralph 	handshake();
1815454Sralph 	putchar(ESC);
1915454Sralph 	putchar(GRAPHIC);
2015454Sralph 	putchar(MODE);
2115454Sralph 	if ( *(line) == 's' ) {
2215454Sralph 		if ( *(++line) == 'o' ) {
2315454Sralph 			/*
2415454Sralph 			 * solid mode 1
2515454Sralph 			 */
2615454Sralph 			putchar( '1' );
2715454Sralph 			putchar( 'b' );
2815454Sralph 			goto done;
2915454Sralph 		}
3015454Sralph 		else if ( *(line) == 'h' ) {
3115454Sralph 			/*
3215454Sralph 			 * shortdashed mode 4
3315454Sralph 			 */
3415454Sralph 			putchar( '6' );
3515454Sralph 			putchar( 'b' );
3615454Sralph 			goto done;
3715454Sralph 		}
3815454Sralph 	}
3915454Sralph 	else if ( *(line) == 'd' ) {
4015454Sralph 		if ( *(++line) == 'o' && *(++line) == 't' ) {
4115454Sralph 			if ( *(++line) == 't' ) {
4215454Sralph 				/*
4315454Sralph 				 * dotted mode 2
4415454Sralph 				 */
4515454Sralph 				putchar( '7' );
4615454Sralph 				putchar( 'b' );
4715454Sralph 				goto done;
4815454Sralph 			}
4915454Sralph 			else if ( *(line) == 'd' ) {
5015454Sralph 				/*
5115454Sralph 				 * dotdashed mode 3
5215454Sralph 				 */
5315454Sralph 				putchar( '8' );
5415454Sralph 				putchar( 'b' );
5515454Sralph 				goto done;
5615454Sralph 			}
5715454Sralph 		}
5815454Sralph 	}
5915454Sralph 	else if ( *(line) == 'l' ) {
6015454Sralph 		/*
6115454Sralph 		 * longdashed mode 5
6215454Sralph 		 */
6315454Sralph 		putchar( '5' );
6415454Sralph 		putchar( 'b' );
6515454Sralph 		goto done;
6615454Sralph 	}
6715454Sralph 	putchar( '1' );				/* default to solid */
6815454Sralph 	putchar( 'b' );				/* default to solid */
6915454Sralph done:
7015454Sralph 	putchar( 'Z' );
7115454Sralph 	handshake();
7215454Sralph 	putchar(ESC);
7315454Sralph 	putchar(GRAPHIC);
7415454Sralph 	putchar(PLOT);
7515454Sralph 	putchar(BINARY);
7615454Sralph 	buffcount = 4;
7715454Sralph 	return;
7815454Sralph }
79