|
Packit |
0986c0 |
/* Hello, Emacs, this is -*-C-*-
|
|
Packit |
0986c0 |
* $Id: epson.trm,v 1.27 2015/03/24 18:49:11 sfeam Exp $
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
*/
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* GNUPLOT - epson.trm */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/*[
|
|
Packit |
0986c0 |
* Copyright 1990 - 1993, 1998, 2004
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* Permission to use, copy, and distribute this software and its
|
|
Packit |
0986c0 |
* documentation for any purpose with or without fee is hereby granted,
|
|
Packit |
0986c0 |
* provided that the above copyright notice appear in all copies and
|
|
Packit |
0986c0 |
* that both that copyright notice and this permission notice appear
|
|
Packit |
0986c0 |
* in supporting documentation.
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* Permission to modify the software is granted, but not the right to
|
|
Packit |
0986c0 |
* distribute the complete modified source code. Modifications are to
|
|
Packit |
0986c0 |
* be distributed as patches to the released version. Permission to
|
|
Packit |
0986c0 |
* distribute binaries produced by compiling modified sources is granted,
|
|
Packit |
0986c0 |
* provided you
|
|
Packit |
0986c0 |
* 1. distribute the corresponding source modifications from the
|
|
Packit |
0986c0 |
* released version in the form of a patch file along with the binaries,
|
|
Packit |
0986c0 |
* 2. add special version identification to distinguish your version
|
|
Packit |
0986c0 |
* in addition to the base release version number,
|
|
Packit |
0986c0 |
* 3. provide your name and address as the primary contact for the
|
|
Packit |
0986c0 |
* support of your modified version, and
|
|
Packit |
0986c0 |
* 4. retain our contact information in regard to use of the base
|
|
Packit |
0986c0 |
* software.
|
|
Packit |
0986c0 |
* Permission to distribute the released version of the source code along
|
|
Packit |
0986c0 |
* with corresponding source modifications in the form of a patch file is
|
|
Packit |
0986c0 |
* granted with same provisions 2 through 4 for binary distributions.
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* This software is provided "as is" without express or implied warranty
|
|
Packit |
0986c0 |
* to the extent permitted by applicable law.
|
|
Packit |
0986c0 |
]*/
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/*
|
|
Packit |
0986c0 |
* This file is included by ../term.c.
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* This terminal driver supports:
|
|
Packit |
0986c0 |
* epson_lx800, nec_cp6, starc,
|
|
Packit |
0986c0 |
* epson_60dpi, tandy_60dpi
|
|
Packit |
0986c0 |
* epson_180dpi
|
|
Packit |
0986c0 |
* dpu414
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* AUTHORS
|
|
Packit |
0986c0 |
* Russell Lang
|
|
Packit |
0986c0 |
* William Wilson
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
* send your comments or suggestions to (gnuplot-info@lists.sourceforge.net).
|
|
Packit |
0986c0 |
*
|
|
Packit |
0986c0 |
*/
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/*
|
|
Packit |
0986c0 |
* adapted to the new terminal layout by Stefan Bodewig (1995)
|
|
Packit |
0986c0 |
*/
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#include "driver.h"
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TERM_REGISTER
|
|
Packit |
0986c0 |
#ifdef EPS180
|
|
Packit |
0986c0 |
register_term(epson_180dpi)
|
|
Packit |
0986c0 |
#endif /* EPS180 */
|
|
Packit |
0986c0 |
#ifdef EPS60
|
|
Packit |
0986c0 |
register_term(epson_60dpi)
|
|
Packit |
0986c0 |
#endif /* EPS60 */
|
|
Packit |
0986c0 |
#ifdef EPSONP
|
|
Packit |
0986c0 |
register_term(epson_lx800)
|
|
Packit |
0986c0 |
#endif /* EPSONP */
|
|
Packit |
0986c0 |
#ifdef NEC
|
|
Packit |
0986c0 |
register_term(nec_cp6)
|
|
Packit |
0986c0 |
#endif /* NEC */
|
|
Packit |
0986c0 |
#ifdef OKIDATA
|
|
Packit |
0986c0 |
register_term(okidata)
|
|
Packit |
0986c0 |
#endif /* OKIDATA */
|
|
Packit |
0986c0 |
#ifdef STARC
|
|
Packit |
0986c0 |
register_term(starc)
|
|
Packit |
0986c0 |
#endif /* STARC */
|
|
Packit |
0986c0 |
#ifdef TANDY60
|
|
Packit |
0986c0 |
register_term(tandy_60dpi)
|
|
Packit |
0986c0 |
#endif /* TANDY60 */
|
|
Packit |
0986c0 |
#ifdef DPU414
|
|
Packit |
0986c0 |
register_term(dpu414)
|
|
Packit |
0986c0 |
#endif /* DPU414 */
|
|
Packit |
0986c0 |
#endif /* TERM_REGISTER */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TERM_PROTO
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPSON_reset __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#if defined(EPS180) || defined(EPS60) || defined(EPSONP) || defined(TANDY60) || defined(OKIDATA)
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPSON_init __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#if defined(EPS60) || defined(EPSONP) || defined(TANDY60) || defined(OKIDATA)
|
|
Packit |
0986c0 |
#define EPSONVCHAR FNT5X9_VCHAR
|
|
Packit |
0986c0 |
#define EPSONHCHAR FNT5X9_HCHAR
|
|
Packit |
0986c0 |
#define EPSONVTIC 6
|
|
Packit |
0986c0 |
#define EPSONHTIC 6
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPSONP
|
|
Packit |
0986c0 |
#define EPSONXMAX 512
|
|
Packit |
0986c0 |
#define EPSONYMAX 384
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPSON_graphics __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPSON_text __PROTO((void));
|
|
Packit |
0986c0 |
#endif /* EPSONP */
|
|
Packit |
0986c0 |
#endif /* four drivers */
|
|
Packit |
0986c0 |
#endif /* all five */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPS180
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPS180_graphics __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPS180_text __PROTO((void));
|
|
Packit |
0986c0 |
#define EPSON180VCHAR FNT13X25_VCHAR
|
|
Packit |
0986c0 |
#define EPSON180HCHAR FNT13X25_HCHAR
|
|
Packit |
0986c0 |
#define EPSON180VTIC 18
|
|
Packit |
0986c0 |
#define EPSON180HTIC 18
|
|
Packit |
0986c0 |
/* make the total dimensions 8 inches by 6 inches */
|
|
Packit |
0986c0 |
#define EPS180XMAX 1260
|
|
Packit |
0986c0 |
#define EPS180YMAX 1080
|
|
Packit |
0986c0 |
#endif /* EPS180 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#if defined(EPS60) || defined(TANDY60) || defined(OKIDATA)
|
|
Packit |
0986c0 |
/* make the total dimensions 8 inches by 5 inches */
|
|
Packit |
0986c0 |
#define EPS60XMAX 480
|
|
Packit |
0986c0 |
#define EPS60YMAX 360
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPS60_graphics __PROTO((void));
|
|
Packit |
0986c0 |
#ifdef TANDY60
|
|
Packit |
0986c0 |
TERM_PUBLIC void TANDY60_text __PROTO((void));
|
|
Packit |
0986c0 |
#endif /* TANDY60 */
|
|
Packit |
0986c0 |
#ifdef OKIDATA
|
|
Packit |
0986c0 |
TERM_PUBLIC void OKIDATA_text __PROTO((void));
|
|
Packit |
0986c0 |
#endif /* OKIDATA */
|
|
Packit |
0986c0 |
#ifdef EPS60
|
|
Packit |
0986c0 |
TERM_PUBLIC void EPS60_text __PROTO((void));
|
|
Packit |
0986c0 |
#endif /* EPS60 */
|
|
Packit |
0986c0 |
#endif /* all three */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef NEC
|
|
Packit |
0986c0 |
TERM_PUBLIC void NEC_options __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void NEC_init __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void NEC_graphics __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void NEC_text __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void NEC_linetype __PROTO((int linetype));
|
|
Packit |
0986c0 |
#define NECXMAX 400
|
|
Packit |
0986c0 |
#define NECYMAX 320
|
|
Packit |
0986c0 |
#define NECVCHAR FNT5X9_VCHAR
|
|
Packit |
0986c0 |
#define NECHCHAR FNT5X9_HCHAR
|
|
Packit |
0986c0 |
#define NECVTIC 6
|
|
Packit |
0986c0 |
#define NECHTIC 6
|
|
Packit |
0986c0 |
#endif /* NEC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef STARC
|
|
Packit |
0986c0 |
TERM_PUBLIC void STARC_init __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void STARC_graphics __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void STARC_text __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void STARC_linetype __PROTO((int linetype));
|
|
Packit |
0986c0 |
#define STARCXMAX 512
|
|
Packit |
0986c0 |
#define STARCYMAX 384
|
|
Packit |
0986c0 |
#define STARCVCHAR FNT5X9_VCHAR
|
|
Packit |
0986c0 |
#define STARCHCHAR FNT5X9_HCHAR
|
|
Packit |
0986c0 |
#define STARCVTIC 6
|
|
Packit |
0986c0 |
#define STARCHTIC 6
|
|
Packit |
0986c0 |
#endif /* STARC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef DPU414
|
|
Packit |
0986c0 |
TERM_PUBLIC void DPU414_options __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void DPU414_init __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void DPU414_graphics __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void DPU414_text __PROTO((void));
|
|
Packit |
0986c0 |
TERM_PUBLIC void DPU414_setfont __PROTO((void));
|
|
Packit |
0986c0 |
#define DPU414XMAX (640)
|
|
Packit |
0986c0 |
#define DPU414YMAX (480)
|
|
Packit |
0986c0 |
#define DPU414VCHAR FNT5X9_VCHAR
|
|
Packit |
0986c0 |
#define DPU414HCHAR FNT5X9_HCHAR
|
|
Packit |
0986c0 |
#define DPU414VTIC FNT5X9_HBITS
|
|
Packit |
0986c0 |
#define DPU414HTIC FNT5X9_HBITS
|
|
Packit |
0986c0 |
#endif /* DPU414 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* TERM_PROTO */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifndef TERM_PROTO_ONLY
|
|
Packit |
0986c0 |
#ifdef TERM_BODY
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPSON_reset()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
#ifdef VMS
|
|
Packit |
0986c0 |
fflush_binary();
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPSONP
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* The following epson lx800 driver uses generic bit mapped graphics
|
|
Packit |
0986c0 |
routines to build up a bit map in memory. */
|
|
Packit |
0986c0 |
/* by Russell Lang, rjl@monu1.cc.monash.edu.au */
|
|
Packit |
0986c0 |
/* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
|
|
Packit |
0986c0 |
/* EPSON_init changes gpoutfile to binary mode on PC's */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void epson_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#define EPSONXLAST (EPSONXMAX - 1)
|
|
Packit |
0986c0 |
#define EPSONYLAST (EPSONYMAX - 1)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPSON_init()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPSON_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
b_charsize(FNT5X9);
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (EPSONXMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (EPSONYMAX * ysize), 1);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPSON_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
epson_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for epson_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
epson_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
register unsigned int x;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
/* select plotter graphics mode (square pixels) */
|
|
Packit |
0986c0 |
fputs("\033J\030", gpoutfile); /* line feed 8/72" = 8 dots */
|
|
Packit |
0986c0 |
fputs("\r\033*\005", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* EPSONP */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* The following NEC CP6 Pinwriter driver uses generic bit mapped graphics
|
|
Packit |
0986c0 |
routines to build up a bit map in memory. */
|
|
Packit |
0986c0 |
/* by Russell Lang, rjl@monu1.cc.monash.edu.au */
|
|
Packit |
0986c0 |
/* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
|
|
Packit |
0986c0 |
/* NEC_init changes gpoutfile to binary mode for PC's */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* Add a Monochrome NEC printer (for faster speed and line types) jdc */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef NEC
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void nec_dump __PROTO((void));
|
|
Packit |
0986c0 |
static void nec_draft_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#define NECXLAST (NECXMAX - 1)
|
|
Packit |
0986c0 |
#define NECYLAST (NECYMAX - 1)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
|
|
Packit |
0986c0 |
static unsigned int neccolor[] = { 1, 8, 4, 2, 10, 12, 6, 14 };
|
|
Packit |
0986c0 |
static unsigned int necpcolor[] = { 0, 2, 1, 4 };
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static int NECmode;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
enum NEC_id { NEC_MONOCHROME, NEC_COLOR, NEC_DRAFT, NEC_OTHER };
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static struct gen_table NEC_opts[] =
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
{ "m$onochrome", NEC_MONOCHROME },
|
|
Packit |
0986c0 |
{ "c$olor", NEC_COLOR },
|
|
Packit |
0986c0 |
{ "c$olour", NEC_COLOR },
|
|
Packit |
0986c0 |
{ "d$raft", NEC_DRAFT },
|
|
Packit |
0986c0 |
{ NULL, NEC_OTHER }
|
|
Packit |
0986c0 |
};
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
NEC_options()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
/* default */
|
|
Packit |
0986c0 |
if (END_OF_COMMAND) {
|
|
Packit |
0986c0 |
strcpy(term_options, "monochrome");
|
|
Packit |
0986c0 |
NECmode = 'm';
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
while (!END_OF_COMMAND) {
|
|
Packit |
0986c0 |
switch(lookup_table(&NEC_opts[0],c_token)) {
|
|
Packit |
0986c0 |
case NEC_MONOCHROME:
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
strcpy(term_options, "monochrome");
|
|
Packit |
0986c0 |
NECmode = 'm';
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case NEC_COLOR:
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
strcpy(term_options, "color");
|
|
Packit |
0986c0 |
NECmode = 'c';
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case NEC_DRAFT:
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
strcpy(term_options, "draft");
|
|
Packit |
0986c0 |
NECmode = 'd';
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case NEC_OTHER:
|
|
Packit |
0986c0 |
default:
|
|
Packit |
0986c0 |
/* FIXME - not the most sensible thing to do */
|
|
Packit |
0986c0 |
/* error, but since the terminal is already set, default to mono */
|
|
Packit |
0986c0 |
strcpy(term_options, "monochrome");
|
|
Packit |
0986c0 |
NECmode = 'm';
|
|
Packit |
0986c0 |
int_error(c_token, "modes: color, monochrome, draft");
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
NEC_init()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
NEC_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
b_charsize(FNT5X9);
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (NECXMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (NECYMAX * ysize), (NECmode == 'c' ? 4 : 1));
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
NEC_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
if (NECmode == 'd') {
|
|
Packit |
0986c0 |
nec_draft_dump();
|
|
Packit |
0986c0 |
} else {
|
|
Packit |
0986c0 |
nec_dump();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
NEC_linetype(int linetype)
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
if (NECmode == 'c') {
|
|
Packit |
0986c0 |
if (linetype >= 6)
|
|
Packit |
0986c0 |
linetype %= 6;
|
|
Packit |
0986c0 |
b_setvalue(neccolor[linetype + 2]);
|
|
Packit |
0986c0 |
} else {
|
|
Packit |
0986c0 |
b_setlinetype(linetype);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for nec_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
nec_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
unsigned int x;
|
|
Packit |
0986c0 |
unsigned int plane, offset;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
unsigned int column8;
|
|
Packit |
0986c0 |
unsigned long column24;
|
|
Packit |
0986c0 |
char column3, column2, column1;
|
|
Packit |
0986c0 |
fputs("\033P\033l\005", gpoutfile); /* 10cpi, left margin 5 char */
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
fputs("\033J\030", gpoutfile); /* 24/180" line feed */
|
|
Packit |
0986c0 |
for (plane = 0; plane < b_planes; plane++) {
|
|
Packit |
0986c0 |
offset = plane * b_psize;
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
/* select colour for plane */
|
|
Packit |
0986c0 |
fputs("\033r", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) necpcolor[plane], gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
/* select plotter graphics mode (square pixels) */
|
|
Packit |
0986c0 |
fputs("\r\033*\047", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) ((b_xsize * 3) % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) ((b_xsize * 3) / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
column8 = (unsigned int) (*((*b_p)[j + offset] + x));
|
|
Packit |
0986c0 |
column24 = 0;
|
|
Packit |
0986c0 |
if (column8 & 0x01)
|
|
Packit |
0986c0 |
column24 |= (long) 0x000007;
|
|
Packit |
0986c0 |
if (column8 & 0x02)
|
|
Packit |
0986c0 |
column24 |= (long) 0x000038;
|
|
Packit |
0986c0 |
if (column8 & 0x04)
|
|
Packit |
0986c0 |
column24 |= (long) 0x0001c0;
|
|
Packit |
0986c0 |
if (column8 & 0x08)
|
|
Packit |
0986c0 |
column24 |= (long) 0x000e00;
|
|
Packit |
0986c0 |
if (column8 & 0x10)
|
|
Packit |
0986c0 |
column24 |= (long) 0x007000;
|
|
Packit |
0986c0 |
if (column8 & 0x20)
|
|
Packit |
0986c0 |
column24 |= (long) 0x038000;
|
|
Packit |
0986c0 |
if (column8 & 0x40)
|
|
Packit |
0986c0 |
column24 |= (long) 0x1c0000;
|
|
Packit |
0986c0 |
if (column8 & 0x80)
|
|
Packit |
0986c0 |
column24 |= (long) 0xe00000;
|
|
Packit |
0986c0 |
column1 = (char) (column24 & (long) 0xff);
|
|
Packit |
0986c0 |
column2 = (char) ((column24 >> 8) & (long) 0xff);
|
|
Packit |
0986c0 |
column3 = (char) ((column24 >> 16) & (long) 0xff);
|
|
Packit |
0986c0 |
(void) fputc(column3, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column2, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column1, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column3, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column2, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column1, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column3, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column2, gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc(column1, gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fputs("\r\033l", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile); /* set left margin to 0 */
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033r");
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile); /* set color to black */
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
#ifdef VMS
|
|
Packit |
0986c0 |
fflush_binary();
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for nec_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
nec_draft_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
unsigned int x;
|
|
Packit |
0986c0 |
unsigned int plane, offset;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
fputs("\033P\033l\005\r", gpoutfile); /* 10cpi, left margin 5 char */
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
fputs("\033J\030", gpoutfile); /* 24/180" line feed */
|
|
Packit |
0986c0 |
for (plane = 0; plane < b_planes; plane++) {
|
|
Packit |
0986c0 |
offset = plane * b_psize;
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
/* select colour for plane */
|
|
Packit |
0986c0 |
fputs("\033r", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) necpcolor[plane], gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
/* select plotter graphics mode (square pixels) */
|
|
Packit |
0986c0 |
fputs("\r\033*", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j + offset] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fputs("\r\033l", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile); /* set left margin to 0 */
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
fputs("\033r", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile); /* set color to black */
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", gpoutfile);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* NEC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef STARC
|
|
Packit |
0986c0 |
/* The following Star color driver uses generic bit mapped graphics
|
|
Packit |
0986c0 |
routines to build up a bit map in memory. */
|
|
Packit |
0986c0 |
/* Star Color changes made by William Wilson, wew@naucse.cse.nau.edu */
|
|
Packit |
0986c0 |
/* On PC, print using 'copy file /b lpt1:', do NOT use 'print' */
|
|
Packit |
0986c0 |
/* STARC_init changes gpoutfile to binary mode on PC's */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void STARC_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#define STARCXLAST (STARCXMAX - 1)
|
|
Packit |
0986c0 |
#define STARCYLAST (STARCYMAX - 1)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* plane 0=black, 1=cyan(blue), 2=magenta(red), 3=yellow */
|
|
Packit |
0986c0 |
static unsigned int STARCcolor[] = { 1, 8, 4, 2, 10, 12, 6, 14 };
|
|
Packit |
0986c0 |
static unsigned int STARCpcolor[] = { 0, 2, 1, 4 };
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
STARC_init()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
STARC_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
b_charsize(FNT5X9);
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (STARCXMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (STARCYMAX * ysize), 4);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
STARC_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
STARC_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
STARC_linetype(int linetype)
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
if (linetype >= 6)
|
|
Packit |
0986c0 |
linetype %= 6;
|
|
Packit |
0986c0 |
b_setvalue(STARCcolor[linetype + 2]);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for STARC_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
STARC_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
unsigned int x;
|
|
Packit |
0986c0 |
unsigned int plane, offset;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
fputs("\033J\030", gpoutfile); /* line feed 8/72" = 8 dots */
|
|
Packit |
0986c0 |
for (plane = 0; plane < b_planes; plane++) {
|
|
Packit |
0986c0 |
offset = plane * b_psize;
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
/* select colour for plane */
|
|
Packit |
0986c0 |
fputs("\033r", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) STARCpcolor[plane], gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
/* select plotter graphics mode (square pixels) */
|
|
Packit |
0986c0 |
fputs("\r\033*\005", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j + offset] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
if (b_planes > 1) {
|
|
Packit |
0986c0 |
fputs("\033r", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc('\0', gpoutfile); /* set color to black */
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* STARC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPS180
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void eps180_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#define EPS180XLAST (EPS180XMAX - 1)
|
|
Packit |
0986c0 |
#define EPS180YLAST (EPS180YMAX - 1)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPS180_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
b_charsize(FNT13X25);
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (EPS180XMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (EPS180YMAX * ysize), 1);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPS180_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
eps180_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for eps180_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
eps180_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
register unsigned int x;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* reset, set line spacing to 24/180", and move left margin */
|
|
Packit |
0986c0 |
fputs("\033@\033+\060\033l\005", gpoutfile);
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0;) {
|
|
Packit |
0986c0 |
/* select printer graphics mode '39' */
|
|
Packit |
0986c0 |
fputs("\r\n\033*'", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j] + x)), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j - 1] + x)), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j - 2] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
j -= 3;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fputs("\r\n\033@\r\n", gpoutfile); /* reset printer */
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* EPS180 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPS60
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void eps60_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#define EPS60XLAST (EPS60XMAX - 1)
|
|
Packit |
0986c0 |
#define EPS60YLAST (EPS60YMAX - 1)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPS60_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
b_charsize(FNT5X9);
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (EPS60XMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (EPS60YMAX * ysize), 1);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
EPS60_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
eps60_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for eps60_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
eps60_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
register unsigned int x;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c\030", '3'); /* set line spacing 24/216" = 8 dots */
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
/* select printer graphics mode 'K' */
|
|
Packit |
0986c0 |
fputs("\r\n\033K", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c\044\r\n", '3'); /* set line spacing 36/216" = 1/6" */
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* EPS60 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TANDY60
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* The only difference between TANDY60 and EPS60 is the inclusion
|
|
Packit |
0986c0 |
of codes to swap the Tandy printer into IBM mode and back
|
|
Packit |
0986c0 |
into Tandy mode. For a Tandy already in IBM mode, use EPS60. */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
TANDY60_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Inserting Tandy/IBM mode conversion codes\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
/* Switch to IBM mode, and leave 3 inches above the plot so as
|
|
Packit |
0986c0 |
to get rough vertical centring on the page. Perform the
|
|
Packit |
0986c0 |
centring by setting 1" line feeds and issuing 3 of them. */
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033!\033%c%c\n\n\n", '3', 216);
|
|
Packit |
0986c0 |
eps60_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
/* A form feed must be sent before switching back to Tandy mode,
|
|
Packit |
0986c0 |
or else the form setting will be messed up. */
|
|
Packit |
0986c0 |
fputs("\f\033!", gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* TANDY60 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef OKIDATA
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void okidata_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
OKIDATA_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
okidata_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static int OKIDATAbitrev_tbl[] =
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
0x00, 0x80, 0x40, 0xc0, 0x20, 0xa0, 0x60, 0xe0,
|
|
Packit |
0986c0 |
0x10, 0x90, 0x50, 0xd0, 0x30, 0xb0, 0x70, 0xf0,
|
|
Packit |
0986c0 |
0x08, 0x88, 0x48, 0xc8, 0x28, 0xa8, 0x68, 0xe8,
|
|
Packit |
0986c0 |
0x18, 0x98, 0x58, 0xd8, 0x38, 0xb8, 0x78, 0xf8,
|
|
Packit |
0986c0 |
0x04, 0x84, 0x44, 0xc4, 0x24, 0xa4, 0x64, 0xe4,
|
|
Packit |
0986c0 |
0x14, 0x94, 0x54, 0xd4, 0x34, 0xb4, 0x74, 0xf4,
|
|
Packit |
0986c0 |
0x0c, 0x8c, 0x4c, 0xcc, 0x2c, 0xac, 0x6c, 0xec,
|
|
Packit |
0986c0 |
0x1c, 0x9c, 0x5c, 0xdc, 0x3c, 0xbc, 0x7c, 0xfc,
|
|
Packit |
0986c0 |
0x02, 0x82, 0x42, 0xc2, 0x22, 0xa2, 0x62, 0xe2,
|
|
Packit |
0986c0 |
0x12, 0x92, 0x52, 0xd2, 0x32, 0xb2, 0x72, 0xf2,
|
|
Packit |
0986c0 |
0x0a, 0x8a, 0x4a, 0xca, 0x2a, 0xaa, 0x6a, 0xea,
|
|
Packit |
0986c0 |
0x1a, 0x9a, 0x5a, 0xda, 0x3a, 0xba, 0x7a, 0xfa,
|
|
Packit |
0986c0 |
0x06, 0x86, 0x46, 0xc6, 0x26, 0xa6, 0x66, 0xe6,
|
|
Packit |
0986c0 |
0x16, 0x96, 0x56, 0xd6, 0x36, 0xb6, 0x76, 0xf6,
|
|
Packit |
0986c0 |
0x0e, 0x8e, 0x4e, 0xce, 0x2e, 0xae, 0x6e, 0xee,
|
|
Packit |
0986c0 |
0x1e, 0x9e, 0x5e, 0xde, 0x3e, 0xbe, 0x7e, 0xfe,
|
|
Packit |
0986c0 |
0x01, 0x81, 0x41, 0xc1, 0x21, 0xa1, 0x61, 0xe1,
|
|
Packit |
0986c0 |
0x11, 0x91, 0x51, 0xd1, 0x31, 0xb1, 0x71, 0xf1,
|
|
Packit |
0986c0 |
0x09, 0x89, 0x49, 0xc9, 0x29, 0xa9, 0x69, 0xe9,
|
|
Packit |
0986c0 |
0x19, 0x99, 0x59, 0xd9, 0x39, 0xb9, 0x79, 0xf9,
|
|
Packit |
0986c0 |
0x05, 0x85, 0x45, 0xc5, 0x25, 0xa5, 0x65, 0xe5,
|
|
Packit |
0986c0 |
0x15, 0x95, 0x55, 0xd5, 0x35, 0xb5, 0x75, 0xf5,
|
|
Packit |
0986c0 |
0x0d, 0x8d, 0x4d, 0xcd, 0x2d, 0xad, 0x6d, 0xed,
|
|
Packit |
0986c0 |
0x1d, 0x9d, 0x5d, 0xdd, 0x3d, 0xbd, 0x7d, 0xfd,
|
|
Packit |
0986c0 |
0x03, 0x83, 0x43, 0xc3, 0x23, 0xa3, 0x63, 0xe3,
|
|
Packit |
0986c0 |
0x13, 0x93, 0x53, 0xd3, 0x33, 0xb3, 0x73, 0xf3,
|
|
Packit |
0986c0 |
0x0b, 0x8b, 0x4b, 0xcb, 0x2b, 0xab, 0x6b, 0xeb,
|
|
Packit |
0986c0 |
0x1b, 0x9b, 0x5b, 0xdb, 0x3b, 0xbb, 0x7b, 0xfb,
|
|
Packit |
0986c0 |
0x07, 0x87, 0x47, 0xc7, 0x27, 0xa7, 0x67, 0xe7,
|
|
Packit |
0986c0 |
0x17, 0x97, 0x57, 0xd7, 0x37, 0xb7, 0x77, 0xf7,
|
|
Packit |
0986c0 |
0x0f, 0x8f, 0x4f, 0xcf, 0x2f, 0xaf, 0x6f, 0xef,
|
|
Packit |
0986c0 |
0x1f, 0x9f, 0x5f, 0xdf, 0x3f, 0xbf, 0x7f, 0xff
|
|
Packit |
0986c0 |
};
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* output file must be binary mode for okidata_dump */
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
okidata_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
register unsigned int x;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
char cur_char;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* set line spacing 16/144" = 8 dots, turn on single density
|
|
Packit |
0986c0 |
* graphics mode: */
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c%c\020\033*eP:\003", '%', '9');
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
fputs("\003\016", gpoutfile);
|
|
Packit |
0986c0 |
/* (void) fputc((char)(b_xsize%256),gpoutfile); */
|
|
Packit |
0986c0 |
/* (void) fputc((char)(b_xsize/256),gpoutfile); */
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
if ((cur_char = (char)
|
|
Packit |
0986c0 |
(OKIDATAbitrev_tbl[(int) (*((*b_p)[j] + x))])) == '\003') {
|
|
Packit |
0986c0 |
fputs("\003\003", gpoutfile);
|
|
Packit |
0986c0 |
} else {
|
|
Packit |
0986c0 |
(void) fputc((char) cur_char, gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\003\002\033%c%c\030\r\n", '%', '9'); /* Turned off graphics mode: set line spacing 24/144" = 1/6" */
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* OKIDATA */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef DPU414
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void DPU414_dump __PROTO((void));
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static int DPU414_font = 2; /* medium font */
|
|
Packit |
0986c0 |
static int DPU414_quality = 1; /* normal */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
enum DPU414_id {
|
|
Packit |
0986c0 |
DPU414_SMALL, DPU414_MEDIUM, DPU414_LARGE,
|
|
Packit |
0986c0 |
DPU414_NORMAL, DPU414_DRAFT,
|
|
Packit |
0986c0 |
DPU414_OTHER
|
|
Packit |
0986c0 |
};
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static struct gen_table DPU414_opts[] =
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
{ "s$mall", DPU414_SMALL },
|
|
Packit |
0986c0 |
{ "m$edium", DPU414_MEDIUM },
|
|
Packit |
0986c0 |
{ "l$arge", DPU414_LARGE },
|
|
Packit |
0986c0 |
{ "n$ormal", DPU414_NORMAL },
|
|
Packit |
0986c0 |
{ "d$raft", DPU414_DRAFT },
|
|
Packit |
0986c0 |
{ NULL, DPU414_OTHER }
|
|
Packit |
0986c0 |
};
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
DPU414_options()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
DPU414_font = 2;
|
|
Packit |
0986c0 |
DPU414_quality = 1;
|
|
Packit |
0986c0 |
term_options[0] = NUL;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
while (!END_OF_COMMAND) {
|
|
Packit |
0986c0 |
switch(lookup_table(&DPU414_opts[0],c_token)) {
|
|
Packit |
0986c0 |
case DPU414_SMALL:
|
|
Packit |
0986c0 |
DPU414_font = 1;
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case DPU414_MEDIUM:
|
|
Packit |
0986c0 |
DPU414_font = 2;
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case DPU414_LARGE:
|
|
Packit |
0986c0 |
DPU414_font = 3;
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case DPU414_NORMAL:
|
|
Packit |
0986c0 |
DPU414_quality = 1;
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case DPU414_DRAFT:
|
|
Packit |
0986c0 |
DPU414_quality = 2;
|
|
Packit |
0986c0 |
c_token++;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case DPU414_OTHER:
|
|
Packit |
0986c0 |
default:
|
|
Packit |
0986c0 |
/* reset to default, since term is already set */
|
|
Packit |
0986c0 |
DPU414_font = 2;
|
|
Packit |
0986c0 |
DPU414_quality = 1;
|
|
Packit |
0986c0 |
int_error(c_token, "expecting: {small, medium, large} {normal, draft}");
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
term->v_tic = (term->xmax < term->ymax) ? term->xmax/100 : term->ymax/100;
|
|
Packit |
0986c0 |
if (term->v_tic < 1)
|
|
Packit |
0986c0 |
term->v_tic = 1;
|
|
Packit |
0986c0 |
term->h_tic = term->v_tic;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
/* setup options string */
|
|
Packit |
0986c0 |
switch (DPU414_font) {
|
|
Packit |
0986c0 |
case 1:
|
|
Packit |
0986c0 |
strcat(term_options, "small");
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 2:
|
|
Packit |
0986c0 |
strcat(term_options, "medium");
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 3:
|
|
Packit |
0986c0 |
strcat(term_options, "large");
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
switch (DPU414_quality) {
|
|
Packit |
0986c0 |
case 1:
|
|
Packit |
0986c0 |
strcat(term_options, " normal");
|
|
Packit |
0986c0 |
term->xmax = DPU414XMAX;
|
|
Packit |
0986c0 |
term->ymax = DPU414YMAX;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 2:
|
|
Packit |
0986c0 |
strcat(term_options, " draft");
|
|
Packit |
0986c0 |
term->xmax = DPU414XMAX / 2;
|
|
Packit |
0986c0 |
term->ymax = DPU414YMAX / 2;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
DPU414_init()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
DPU414_setfont();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
DPU414_setfont()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
switch (DPU414_font) {
|
|
Packit |
0986c0 |
case 1:
|
|
Packit |
0986c0 |
b_charsize(FNT5X9);
|
|
Packit |
0986c0 |
term->v_char = FNT5X9_VCHAR;
|
|
Packit |
0986c0 |
term->h_char = FNT5X9_HCHAR;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 2:
|
|
Packit |
0986c0 |
b_charsize(FNT9X17);
|
|
Packit |
0986c0 |
term->v_char = FNT9X17_VCHAR;
|
|
Packit |
0986c0 |
term->h_char = FNT9X17_HCHAR;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 3:
|
|
Packit |
0986c0 |
b_charsize(FNT13X25);
|
|
Packit |
0986c0 |
term->v_char = FNT13X25_VCHAR;
|
|
Packit |
0986c0 |
term->h_char = FNT13X25_HCHAR;
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
DPU414_graphics()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
switch (DPU414_quality) {
|
|
Packit |
0986c0 |
case 1:
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (DPU414XMAX * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (DPU414YMAX * ysize), 1);
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 2:
|
|
Packit |
0986c0 |
term->xmax = DPU414XMAX / 2;
|
|
Packit |
0986c0 |
term->ymax = DPU414YMAX / 2;
|
|
Packit |
0986c0 |
b_makebitmap((unsigned int) (DPU414XMAX / 2 * xsize),
|
|
Packit |
0986c0 |
(unsigned int) (DPU414YMAX / 2 * ysize), 1);
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
TERM_PUBLIC void
|
|
Packit |
0986c0 |
DPU414_text()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
DPU414_dump();
|
|
Packit |
0986c0 |
b_freebitmap();
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
static void
|
|
Packit |
0986c0 |
DPU414_dump()
|
|
Packit |
0986c0 |
{
|
|
Packit |
0986c0 |
register unsigned int x;
|
|
Packit |
0986c0 |
int j;
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
fputs("\r", gpoutfile); /* carriage return */
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c", 'U'); /* unidirectional printing */
|
|
Packit |
0986c0 |
(void) fputc((char) 0, gpoutfile);
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
switch (DPU414_quality) {
|
|
Packit |
0986c0 |
case 1:
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j-=2) {
|
|
Packit |
0986c0 |
/* select 120-dpi, emulated 16-pin printer graphics mode */
|
|
Packit |
0986c0 |
/* in reality it's 640/(89.6mm/25.4mm) = 181 dpi = appr. 180 dpi */
|
|
Packit |
0986c0 |
fputs("\033^\001", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j] + x)), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j-1] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c\x10\r", 'J'); /* advance 16 halfdots, carriage return */
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
case 2:
|
|
Packit |
0986c0 |
for (j = (b_ysize / 8) - 1; j >= 0; j--) {
|
|
Packit |
0986c0 |
/* select 60-dpi, 8-pin printer graphics mode */
|
|
Packit |
0986c0 |
/* in reality it's 320/(89.6mm/25.4mm) = 91 dpi = appr. 90 dpi */
|
|
Packit |
0986c0 |
fputs("\033K", gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize % 256), gpoutfile);
|
|
Packit |
0986c0 |
(void) fputc((char) (b_xsize / 256), gpoutfile);
|
|
Packit |
0986c0 |
for (x = 0; x < b_xsize; x++) {
|
|
Packit |
0986c0 |
(void) fputc((char) (*((*b_p)[j] + x)), gpoutfile);
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fprintf(gpoutfile, "\033%c\x10\r", 'J'); /* advance 16 halfdots, carriage return */
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
break;
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
fputs("\r\n\033@\r\n", gpoutfile); /* reset printer */
|
|
Packit |
0986c0 |
#ifdef PC
|
|
Packit |
0986c0 |
fputs("Print using: COPY /B\n", stderr);
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
}
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* DPU414 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* TERM_BODY */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TERM_TABLE
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPS180
|
|
Packit |
0986c0 |
TERM_TABLE_START(epson180_driver)
|
|
Packit |
0986c0 |
"epson_180dpi", "Epson LQ-style 180-dot per inch (24 pin) printers",
|
|
Packit |
0986c0 |
EPS180XMAX, EPS180YMAX, EPSON180VCHAR, EPSON180HCHAR,
|
|
Packit |
0986c0 |
EPSON180VTIC, EPSON180HTIC, options_null, EPSON_init, EPSON_reset,
|
|
Packit |
0986c0 |
EPS180_text, null_scale, EPS180_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, do_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(epson180_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM epson180_driver
|
|
Packit |
0986c0 |
#endif /* EPS180 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPS60
|
|
Packit |
0986c0 |
TERM_TABLE_START(epson60_driver)
|
|
Packit |
0986c0 |
"epson_60dpi", "Epson-style 60-dot per inch printers",
|
|
Packit |
0986c0 |
EPS60XMAX, EPS60YMAX, EPSONVCHAR, EPSONHCHAR,
|
|
Packit |
0986c0 |
EPSONVTIC, EPSONHTIC, options_null, EPSON_init, EPSON_reset,
|
|
Packit |
0986c0 |
EPS60_text, null_scale, EPS60_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, do_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(epson60_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM epson60_driver
|
|
Packit |
0986c0 |
#endif /* EPS60 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef EPSONP
|
|
Packit |
0986c0 |
TERM_TABLE_START(epsonlx_driver)
|
|
Packit |
0986c0 |
"epson_lx800", "Epson LX-800, Star NL-10, NX-1000, PROPRINTER ...",
|
|
Packit |
0986c0 |
EPSONXMAX, EPSONYMAX, EPSONVCHAR, EPSONHCHAR,
|
|
Packit |
0986c0 |
EPSONVTIC, EPSONHTIC, options_null, EPSON_init, EPSON_reset,
|
|
Packit |
0986c0 |
EPSON_text, null_scale, EPSON_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, line_and_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(epsonlx_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM epsonlx_driver
|
|
Packit |
0986c0 |
#endif /* EPSONP */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef NEC
|
|
Packit |
0986c0 |
TERM_TABLE_START(nec_driver)
|
|
Packit |
0986c0 |
"nec_cp6", "NEC printer CP6, Epson LQ-800 [monochrome color draft]",
|
|
Packit |
0986c0 |
NECXMAX, NECYMAX, NECVCHAR, NECHCHAR,
|
|
Packit |
0986c0 |
NECVTIC, NECHTIC, NEC_options, NEC_init, EPSON_reset,
|
|
Packit |
0986c0 |
NEC_text, null_scale, NEC_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
NEC_linetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, line_and_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(nec_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM nec_driver
|
|
Packit |
0986c0 |
#endif /* NEC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef OKIDATA
|
|
Packit |
0986c0 |
TERM_TABLE_START(okidata_driver)
|
|
Packit |
0986c0 |
"okidata", "OKIDATA 320/321 Standard",
|
|
Packit |
0986c0 |
EPS60XMAX, EPS60YMAX, EPSONVCHAR, EPSONHCHAR,
|
|
Packit |
0986c0 |
EPSONVTIC, EPSONHTIC, options_null, EPSON_init, EPSON_reset,
|
|
Packit |
0986c0 |
OKIDATA_text, null_scale, EPS60_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, do_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(okidata_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM okidata_driver
|
|
Packit |
0986c0 |
#endif /* OKIDATA */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef STARC
|
|
Packit |
0986c0 |
TERM_TABLE_START(starc_driver)
|
|
Packit |
0986c0 |
"starc", "Star Color Printer",
|
|
Packit |
0986c0 |
STARCXMAX, STARCYMAX, STARCVCHAR, STARCHCHAR,
|
|
Packit |
0986c0 |
STARCVTIC, STARCHTIC, options_null, STARC_init, EPSON_reset,
|
|
Packit |
0986c0 |
STARC_text, null_scale, STARC_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
STARC_linetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, line_and_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(starc_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM starc_driver
|
|
Packit |
0986c0 |
#endif /* STARC */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TANDY60
|
|
Packit |
0986c0 |
TERM_TABLE_START(tandy60_driver)
|
|
Packit |
0986c0 |
"tandy_60dpi", "Tandy DMP-130 series 60-dot per inch graphics",
|
|
Packit |
0986c0 |
EPS60XMAX, EPS60YMAX, EPSONVCHAR, EPSONHCHAR,
|
|
Packit |
0986c0 |
EPSONVTIC, EPSONHTIC, options_null, EPSON_init, EPSON_reset,
|
|
Packit |
0986c0 |
TANDY60_text, null_scale, EPS60_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, do_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(tandy60_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM tandy60_driver
|
|
Packit |
0986c0 |
#endif /* TANDY60 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef DPU414
|
|
Packit |
0986c0 |
TERM_TABLE_START(dpu414_driver)
|
|
Packit |
0986c0 |
"dpu414", "Seiko DPU-414 thermal printer [small medium large]",
|
|
Packit |
0986c0 |
DPU414XMAX, DPU414YMAX, DPU414VCHAR, DPU414HCHAR,
|
|
Packit |
0986c0 |
DPU414VTIC, DPU414HTIC, DPU414_options, DPU414_init, EPSON_reset,
|
|
Packit |
0986c0 |
DPU414_text, null_scale, DPU414_graphics, b_move, b_vector,
|
|
Packit |
0986c0 |
b_setlinetype, b_put_text, b_text_angle,
|
|
Packit |
0986c0 |
null_justify_text, line_and_point, do_arrow, set_font_null, 0, TERM_BINARY,
|
|
Packit |
0986c0 |
0, 0, b_boxfill
|
|
Packit |
0986c0 |
TERM_TABLE_END(dpu414_driver)
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#undef LAST_TERM
|
|
Packit |
0986c0 |
#define LAST_TERM dpu414_driver
|
|
Packit |
0986c0 |
#endif /* DPU414 */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#endif /* TERM_TABLE */
|
|
Packit |
0986c0 |
#endif /* TERM_PROTO_ONLY */
|
|
Packit |
0986c0 |
|
|
Packit |
0986c0 |
#ifdef TERM_HELP
|
|
Packit |
0986c0 |
START_HELP(epson_180dpi)
|
|
Packit |
0986c0 |
"1 epson_180dpi",
|
|
Packit |
0986c0 |
"?commands set terminal epson_180dpi",
|
|
Packit |
0986c0 |
"?set terminal epson_180dpi",
|
|
Packit |
0986c0 |
"?set term epson_180dpi",
|
|
Packit |
0986c0 |
"?terminal epson_180dpi",
|
|
Packit |
0986c0 |
"?term epson_180dpi",
|
|
Packit |
0986c0 |
"?epson_180dpi",
|
|
Packit |
0986c0 |
"?commands set terminal epson_60dpi",
|
|
Packit |
0986c0 |
"?set terminal epson_60dpi",
|
|
Packit |
0986c0 |
"?set term epson_60dpi",
|
|
Packit |
0986c0 |
"?terminal epson_60dpi",
|
|
Packit |
0986c0 |
"?term epson_60dpi",
|
|
Packit |
0986c0 |
"?epson_60dpi",
|
|
Packit |
0986c0 |
"?commands set terminal epson_lx800",
|
|
Packit |
0986c0 |
"?set terminal epson_lx800",
|
|
Packit |
0986c0 |
"?set term epson_lx800",
|
|
Packit |
0986c0 |
"?terminal epson_lx800",
|
|
Packit |
0986c0 |
"?term epson_lx800",
|
|
Packit |
0986c0 |
"?epson_lx800",
|
|
Packit |
0986c0 |
"?commands set terminal nec_cp6",
|
|
Packit |
0986c0 |
"?set terminal nec_cp6",
|
|
Packit |
0986c0 |
"?set term nec_cp6",
|
|
Packit |
0986c0 |
"?terminal nec_cp6",
|
|
Packit |
0986c0 |
"?term nec_cp6",
|
|
Packit |
0986c0 |
"?nec_cp6",
|
|
Packit |
0986c0 |
"?commands set terminal okidata",
|
|
Packit |
0986c0 |
"?set terminal okidata",
|
|
Packit |
0986c0 |
"?set term okidata",
|
|
Packit |
0986c0 |
"?terminal okidata",
|
|
Packit |
0986c0 |
"?term okidata",
|
|
Packit |
0986c0 |
"?okidata",
|
|
Packit |
0986c0 |
"?commands set terminal starc",
|
|
Packit |
0986c0 |
"?set terminal starc",
|
|
Packit |
0986c0 |
"?set term starc",
|
|
Packit |
0986c0 |
"?terminal starc",
|
|
Packit |
0986c0 |
"?term starc",
|
|
Packit |
0986c0 |
"?starc",
|
|
Packit |
0986c0 |
"?commands set terminal tandy_60dpi",
|
|
Packit |
0986c0 |
"?set terminal tandy_60dpi",
|
|
Packit |
0986c0 |
"?set term tandy_60dpi",
|
|
Packit |
0986c0 |
"?terminal tandy_60dpi",
|
|
Packit |
0986c0 |
"?term tandy_60dpi",
|
|
Packit |
0986c0 |
"?tandy_60dpi",
|
|
Packit |
0986c0 |
"?commands set terminal dpu414",
|
|
Packit |
0986c0 |
"?set terminal dpu414",
|
|
Packit |
0986c0 |
"?set term dpu414",
|
|
Packit |
0986c0 |
"?terminal dpu414",
|
|
Packit |
0986c0 |
"?term dpu414",
|
|
Packit |
0986c0 |
"?dpu414",
|
|
Packit |
0986c0 |
" Note: only available if gnuplot is configured --with-bitmap-terminals.",
|
|
Packit |
0986c0 |
" This driver supports a family of Epson printers and derivatives.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" `epson_180dpi` and `epson_60dpi` are drivers for Epson LQ-style 24-pin",
|
|
Packit |
0986c0 |
" printers with resolutions of 180 and 60 dots per inch, respectively.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" `epson_lx800` is a generic 9-pin driver appropriate for printers like the",
|
|
Packit |
0986c0 |
" Epson LX-800, the Star NL-10 and NX-1000, the PROPRINTER, and so forth.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" `nec_cp6` is generic 24-pin driver that can be used for printers like the",
|
|
Packit |
0986c0 |
" NEC CP6 and the Epson LQ-800.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" The `okidata` driver supports the 9-pin OKIDATA 320/321 Standard printers.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" The `starc` driver is for the Star Color Printer.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" The `tandy_60dpi` driver is for the Tandy DMP-130 series of 9-pin, 60-dpi",
|
|
Packit |
0986c0 |
" printers.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" The `dpu414` driver is for the Seiko DPU-414 thermal printer.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" `nec_cp6` has the options:",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" Syntax:",
|
|
Packit |
0986c0 |
" set terminal nec_cp6 {monochrome | colour | draft}",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" which defaults to monochrome.",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" `dpu414` has the options:",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" Syntax:",
|
|
Packit |
0986c0 |
" set terminal dpu414 {small | medium | large} {normal | draft}",
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" which defaults to medium (=font size) and normal.",
|
|
Packit |
0986c0 |
" Preferred combinations are `medium normal` and `small draft`.",
|
|
Packit |
0986c0 |
#ifdef MSDOS
|
|
Packit |
0986c0 |
"",
|
|
Packit |
0986c0 |
" With each of these drivers, a binary copy is required on a PC to print.",
|
|
Packit |
0986c0 |
" Do not use `print`---use instead `copy file /b lpt1:`.",
|
|
Packit |
0986c0 |
#endif
|
|
Packit |
0986c0 |
""
|
|
Packit |
0986c0 |
END_HELP(epson_180dpi)
|
|
Packit |
0986c0 |
#endif /* TERM_HELP */
|