1 /* Hello, Emacs, this is -*-C-*-
2 * $Id: aed.trm,v 1.14 2006/07/21 02:35:45 sfeam Exp $
6 /* GNUPLOT - aed.trm */
9 * Copyright 1990 - 1993, 1998, 2004
11 * Permission to use, copy, and distribute this software and its
12 * documentation for any purpose with or without fee is hereby granted,
13 * provided that the above copyright notice appear in all copies and
14 * that both that copyright notice and this permission notice appear
15 * in supporting documentation.
17 * Permission to modify the software is granted, but not the right to
18 * distribute the complete modified source code. Modifications are to
19 * be distributed as patches to the released version. Permission to
20 * distribute binaries produced by compiling modified sources is granted,
22 * 1. distribute the corresponding source modifications from the
23 * released version in the form of a patch file along with the binaries,
24 * 2. add special version identification to distinguish your version
25 * in addition to the base release version number,
26 * 3. provide your name and address as the primary contact for the
27 * support of your modified version, and
28 * 4. retain our contact information in regard to use of the base
30 * Permission to distribute the released version of the source code along
31 * with corresponding source modifications in the form of a patch file is
32 * granted with same provisions 2 through 4 for binary distributions.
34 * This software is provided "as is" without express or implied warranty
35 * to the extent permitted by applicable law.
39 * This file is included by ../term.c.
41 * This terminal driver supports:
45 * Colin Kelley, Thomas Williams, Russell Lang
47 * send your comments or suggestions to (gnuplot-info@lists.sourceforge.net).
52 * adapted to the new terminal layout by Stefan Bodewig (Dez. 1995)
63 TERM_PUBLIC void AED_init __PROTO((void));
64 TERM_PUBLIC void AED_graphics __PROTO((void));
65 TERM_PUBLIC void AED_text __PROTO((void));
66 TERM_PUBLIC void AED_linetype __PROTO((int linetype));
67 TERM_PUBLIC void AED_move __PROTO((unsigned int x, unsigned int y));
68 TERM_PUBLIC void AED_vector __PROTO((unsigned int x, unsigned int y));
69 TERM_PUBLIC void AED_put_text __PROTO((unsigned int x, unsigned int y, const char *str));
70 TERM_PUBLIC void AED_reset __PROTO((void));
80 /* slightly different for AED 512 */
84 #ifndef TERM_PROTO_ONLY
87 #define AED_XLAST (AED_XMAX - 1)
88 #define AED_YLAST (AED_YMAX - 1)
90 #define AED5_XLAST (AED5_XMAX - 1)
95 fputs("\033SEN3DDDN.SEC.7.SCT.0.1.80.80.90.SBC.0.AAV2.MOV.0.9.CHR.0.FFD", gpoutfile);
100 4. Set Backround Color Table Entry
101 5. Set Backround Color
102 6. Move to Bottom Lefthand Corner
103 7. Anti-Alias Vectors
111 fputs("\033FFD\033", gpoutfile);
118 fputs("\033MOV.0.9.SEC.7.XXX", gpoutfile);
124 AED_linetype(int linetype)
126 static int color[2 + 9] = { 7, 1, 6, 2, 3, 5, 1, 6, 2, 3, 5 };
127 static int type[2 + 9] = { 85, 85, 255, 255, 255, 255, 255, 85, 85, 85, 85 };
134 fprintf(gpoutfile, "\
138 color[linetype + 2]);
144 AED_move(unsigned int x, unsigned int y)
146 fprintf(gpoutfile, "\033MOV%d.%d.", x, y);
151 AED_vector(unsigned int x, unsigned int y)
153 fprintf(gpoutfile, "\033DVA%d.%d.", x, y);
158 AED_put_text(unsigned int x, unsigned int y, const char *str)
160 AED_move(x, y - AED_VCHAR / 2 + 2);
161 fprintf(gpoutfile, "\033XXX%s\033", str);
165 #define hxt (AED_HTIC/2)
166 #define hyt (AED_VTIC/2)
171 fputs("\033SCT0.1.0.0.0.SBC.0.FFD", gpoutfile);
174 #endif /* TERM_BODY */
177 TERM_TABLE_START(aed512_driver)
178 "aed512", "AED 512 Terminal",
179 AED5_XMAX, AED_YMAX, AED_VCHAR, AED_HCHAR,
180 AED_VTIC, AED_HTIC, options_null, AED_init, AED_reset,
181 AED_text, null_scale, AED_graphics, AED_move, AED_vector,
182 AED_linetype, AED_put_text, null_text_angle,
183 null_justify_text, do_point, do_arrow, set_font_null
184 TERM_TABLE_END(aed512_driver)
187 #define LAST_TERM aed512_driver
189 TERM_TABLE_START(aed767_driver)
190 "aed767", "AED 767 Terminal",
191 AED_XMAX, AED_YMAX, AED_VCHAR, AED_HCHAR,
192 AED_VTIC, AED_HTIC, options_null, AED_init, AED_reset,
193 AED_text, null_scale, AED_graphics, AED_move, AED_vector,
194 AED_linetype, AED_put_text, null_text_angle,
195 null_justify_text, do_point, do_arrow, set_font_null
196 TERM_TABLE_END(aed767_driver)
199 #define LAST_TERM aed767_driver
201 #endif /* TERM_TABLE */
202 #endif /* TERM_PROTO_ONLY */
207 "?commands set terminal aed767",
208 "?set terminal aed767",
213 "?commands set terminal aed512",
214 "?set terminal aed512",
219 " The `aed512` and `aed767` terminal drivers support AED graphics terminals.",
220 " The two drivers differ only in their horizontal ranges, which are 512 and",
221 " 768 pixels, respectively. Their vertical range is 575 pixels. There are",
222 " no options for these drivers."