X-Git-Url: http://git.maemo.org/git/?p=gnuplot;a=blobdiff_plain;f=term%2Faed.trm;fp=term%2Faed.trm;h=01c7ac6ee4f0513c7c9f06b5d17ef4e8a6f99168;hp=0000000000000000000000000000000000000000;hb=39ec1247a71f61152a4a7f502a30f06a3896c5da;hpb=06be459be4f5f6a7c6ff878e84f355fb2575caa8 diff --git a/term/aed.trm b/term/aed.trm new file mode 100644 index 0000000..01c7ac6 --- /dev/null +++ b/term/aed.trm @@ -0,0 +1,224 @@ +/* Hello, Emacs, this is -*-C-*- + * $Id: aed.trm,v 1.14 2006/07/21 02:35:45 sfeam Exp $ + * + */ + +/* GNUPLOT - aed.trm */ + +/*[ + * Copyright 1990 - 1993, 1998, 2004 + * + * Permission to use, copy, and distribute this software and its + * documentation for any purpose with or without fee is hereby granted, + * provided that the above copyright notice appear in all copies and + * that both that copyright notice and this permission notice appear + * in supporting documentation. + * + * Permission to modify the software is granted, but not the right to + * distribute the complete modified source code. Modifications are to + * be distributed as patches to the released version. Permission to + * distribute binaries produced by compiling modified sources is granted, + * provided you + * 1. distribute the corresponding source modifications from the + * released version in the form of a patch file along with the binaries, + * 2. add special version identification to distinguish your version + * in addition to the base release version number, + * 3. provide your name and address as the primary contact for the + * support of your modified version, and + * 4. retain our contact information in regard to use of the base + * software. + * Permission to distribute the released version of the source code along + * with corresponding source modifications in the form of a patch file is + * granted with same provisions 2 through 4 for binary distributions. + * + * This software is provided "as is" without express or implied warranty + * to the extent permitted by applicable law. +]*/ + +/* + * This file is included by ../term.c. + * + * This terminal driver supports: + * AED terminals + * + * AUTHORS + * Colin Kelley, Thomas Williams, Russell Lang + * + * send your comments or suggestions to (gnuplot-info@lists.sourceforge.net). + * + */ + +/* + * adapted to the new terminal layout by Stefan Bodewig (Dez. 1995) + */ + +#include "driver.h" + +#ifdef TERM_REGISTER +register_term(aed512) +register_term(aed767) +#endif + +#ifdef TERM_PROTO +TERM_PUBLIC void AED_init __PROTO((void)); +TERM_PUBLIC void AED_graphics __PROTO((void)); +TERM_PUBLIC void AED_text __PROTO((void)); +TERM_PUBLIC void AED_linetype __PROTO((int linetype)); +TERM_PUBLIC void AED_move __PROTO((unsigned int x, unsigned int y)); +TERM_PUBLIC void AED_vector __PROTO((unsigned int x, unsigned int y)); +TERM_PUBLIC void AED_put_text __PROTO((unsigned int x, unsigned int y, const char *str)); +TERM_PUBLIC void AED_reset __PROTO((void)); + +#define AED_XMAX 768 +#define AED_YMAX 575 + +#define AED_VCHAR 13 +#define AED_HCHAR 8 +#define AED_VTIC 8 +#define AED_HTIC 7 + +/* slightly different for AED 512 */ +#define AED5_XMAX 512 +#endif + +#ifndef TERM_PROTO_ONLY +#ifdef TERM_BODY + +#define AED_XLAST (AED_XMAX - 1) +#define AED_YLAST (AED_YMAX - 1) + +#define AED5_XLAST (AED5_XMAX - 1) + +TERM_PUBLIC void +AED_init() +{ + fputs("\033SEN3DDDN.SEC.7.SCT.0.1.80.80.90.SBC.0.AAV2.MOV.0.9.CHR.0.FFD", gpoutfile); +/* 2 3 4 5 7 6 1 + 1. Clear Screen + 2. Set Encoding + 3. Set Default Color + 4. Set Backround Color Table Entry + 5. Set Backround Color + 6. Move to Bottom Lefthand Corner + 7. Anti-Alias Vectors +*/ +} + + +TERM_PUBLIC void +AED_graphics() +{ + fputs("\033FFD\033", gpoutfile); +} + + +TERM_PUBLIC void +AED_text() +{ + fputs("\033MOV.0.9.SEC.7.XXX", gpoutfile); +} + + + +TERM_PUBLIC void +AED_linetype(int linetype) +{ + static int color[2 + 9] = { 7, 1, 6, 2, 3, 5, 1, 6, 2, 3, 5 }; + static int type[2 + 9] = { 85, 85, 255, 255, 255, 255, 255, 85, 85, 85, 85 }; + + if (linetype <= -3) + return; + if (linetype >= 10) + linetype %= 10; + + fprintf(gpoutfile, "\ +\033SLS%d.255.\ +\033SEC%d.", + type[linetype + 2], + color[linetype + 2]); +} + + + +TERM_PUBLIC void +AED_move(unsigned int x, unsigned int y) +{ + fprintf(gpoutfile, "\033MOV%d.%d.", x, y); +} + + +TERM_PUBLIC void +AED_vector(unsigned int x, unsigned int y) +{ + fprintf(gpoutfile, "\033DVA%d.%d.", x, y); +} + + +TERM_PUBLIC void +AED_put_text(unsigned int x, unsigned int y, const char *str) +{ + AED_move(x, y - AED_VCHAR / 2 + 2); + fprintf(gpoutfile, "\033XXX%s\033", str); +} + + +#define hxt (AED_HTIC/2) +#define hyt (AED_VTIC/2) + +TERM_PUBLIC void +AED_reset() +{ + fputs("\033SCT0.1.0.0.0.SBC.0.FFD", gpoutfile); +} + +#endif /* TERM_BODY */ + +#ifdef TERM_TABLE +TERM_TABLE_START(aed512_driver) + "aed512", "AED 512 Terminal", + AED5_XMAX, AED_YMAX, AED_VCHAR, AED_HCHAR, + AED_VTIC, AED_HTIC, options_null, AED_init, AED_reset, + AED_text, null_scale, AED_graphics, AED_move, AED_vector, + AED_linetype, AED_put_text, null_text_angle, + null_justify_text, do_point, do_arrow, set_font_null +TERM_TABLE_END(aed512_driver) + +#undef LAST_TERM +#define LAST_TERM aed512_driver + +TERM_TABLE_START(aed767_driver) + "aed767", "AED 767 Terminal", + AED_XMAX, AED_YMAX, AED_VCHAR, AED_HCHAR, + AED_VTIC, AED_HTIC, options_null, AED_init, AED_reset, + AED_text, null_scale, AED_graphics, AED_move, AED_vector, + AED_linetype, AED_put_text, null_text_angle, + null_justify_text, do_point, do_arrow, set_font_null +TERM_TABLE_END(aed767_driver) + +#undef LAST_TERM +#define LAST_TERM aed767_driver + +#endif /* TERM_TABLE */ +#endif /* TERM_PROTO_ONLY */ + +#ifdef TERM_HELP +START_HELP(aed767) +"1 aed767", +"?commands set terminal aed767", +"?set terminal aed767", +"?set term aed767", +"?terminal aed767", +"?term aed767", +"?aed767", +"?commands set terminal aed512", +"?set terminal aed512", +"?set term aed512", +"?terminal aed512", +"?term aed512", +"?aed512", +" The `aed512` and `aed767` terminal drivers support AED graphics terminals.", +" The two drivers differ only in their horizontal ranges, which are 512 and", +" 768 pixels, respectively. Their vertical range is 575 pixels. There are", +" no options for these drivers." +END_HELP(aed767) +#endif