1: /*
2: * Copyright (c) 1980 Regents of the University of California.
3: * All rights reserved. The Berkeley software License Agreement
4: * specifies the terms and conditions for redistribution.
5: */
6:
7: #ifndef lint
8: static char sccsid[] = "@(#)linemod.c 5.1 (Berkeley) 5/7/85";
9: #endif not lint
10:
11: #include "gigi.h"
12:
13: linemod( line )
14: char *line;
15: {
16: /*
17: * Note that the bit patterns could be compacted using the
18: * repeat field conventions. They aren't for clarity.
19: * Examples of almost identical packed patterns are in the
20: * comments.
21: * If linemod is changed really often, a ~15% savings
22: * could be achieved.
23: */
24: if ( *(line) == 's' ) {
25: if ( *(++line) == 'o' ) {
26: /*
27: * solid mode 1
28: */
29: printf( "W(P1)" );
30: return;
31: }
32: else if ( *(line) == 'h' ) {
33: /*
34: * shortdashed mode 4
35: * printf( "W(P000111)" );
36: */
37: printf( "W(P00011100)" );
38: return;
39: }
40: }
41: else if ( *(line) == 'd' ) {
42: if ( *(++line) == 'o' && *(++line) == 't' ) {
43: if ( *(++line) == 't' ) {
44: /*
45: * dotted mode 2
46: * printf( "W(P00001)" );
47: */
48: printf( "W(P10000000)" );
49: return;
50: }
51: else if ( *(line) == 'd' ) {
52: /*
53: * dotdashed mode 3
54: * printf( "W(P0110010)" );
55: */
56: printf( "W(P10001100)" );
57: return;
58: }
59: }
60: }
61: else if ( *(line) == 'l' ) {
62: /*
63: * longdashed mode 5
64: * printf( "W(P11100)" );
65: */
66: printf( "W(P11111100)" );
67: return;
68: }
69: printf( "W(P1)" ); /* default to solid */
70: return;
71: }
Defined functions
Defined variables
sccsid
defined in line
8;
never used