1*0Sstevel@tonic-gate# 2*0Sstevel@tonic-gate# CDDL HEADER START 3*0Sstevel@tonic-gate# 4*0Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5*0Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only 6*0Sstevel@tonic-gate# (the "License"). You may not use this file except in compliance 7*0Sstevel@tonic-gate# with the License. 8*0Sstevel@tonic-gate# 9*0Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*0Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 11*0Sstevel@tonic-gate# See the License for the specific language governing permissions 12*0Sstevel@tonic-gate# and limitations under the License. 13*0Sstevel@tonic-gate# 14*0Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 15*0Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*0Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 17*0Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 18*0Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 19*0Sstevel@tonic-gate# 20*0Sstevel@tonic-gate# CDDL HEADER END 21*0Sstevel@tonic-gate# 22*0Sstevel@tonic-gate# 23*0Sstevel@tonic-gate# Copyright 1993 Sun Microsystems, Inc. All rights reserved. 24*0Sstevel@tonic-gate# Use is subject to license terms. 25*0Sstevel@tonic-gate# 26*0Sstevel@tonic-gate 27*0Sstevel@tonic-gate# Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T 28*0Sstevel@tonic-gate# All Rights Reserved 29*0Sstevel@tonic-gate 30*0Sstevel@tonic-gate#ident "%Z%%M% %I% %E% SMI" 31*0Sstevel@tonic-gate 32*0Sstevel@tonic-gate###################################################################### 33*0Sstevel@tonic-gate# 34*0Sstevel@tonic-gate# Generic entry for the C.Itoh 8510 printer and emulations: 35*0Sstevel@tonic-gate# 36*0Sstevel@tonic-gate 37*0Sstevel@tonic-gatecitoh+basic, 38*0Sstevel@tonic-gate 39*0Sstevel@tonic-gate# The 8510 I use only allows 79 columns! 40*0Sstevel@tonic-gate cols#79, 41*0Sstevel@tonic-gate 42*0Sstevel@tonic-gate lines#66, 43*0Sstevel@tonic-gate it#8, 44*0Sstevel@tonic-gate 45*0Sstevel@tonic-gate orc#1, 46*0Sstevel@tonic-gate orhi#10, 47*0Sstevel@tonic-gate orl#24, 48*0Sstevel@tonic-gate orvi#144, 49*0Sstevel@tonic-gate 50*0Sstevel@tonic-gate cr=\r, 51*0Sstevel@tonic-gate cud1=\n, 52*0Sstevel@tonic-gate cuf1=\s, 53*0Sstevel@tonic-gate ff=\f, 54*0Sstevel@tonic-gate ht=\t, 55*0Sstevel@tonic-gate 56*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t\EN%e%p1%{12}%=%t\EE%e%p1%{16}%=%p1%{17}%=%O%t\EQ%;, 57*0Sstevel@tonic-gate cvr=%?%p1%{0}%>%p1%{100}%<%&%t\ET%p1%02d%;, 58*0Sstevel@tonic-gate 59*0Sstevel@tonic-gate is1=^Q^X, 60*0Sstevel@tonic-gate is2=\Ec1\Ev66., 61*0Sstevel@tonic-gate 62*0Sstevel@tonic-gate smso=\E!, 63*0Sstevel@tonic-gate rmso=\E", 64*0Sstevel@tonic-gate smul=\EX, 65*0Sstevel@tonic-gate rmul=\EY, 66*0Sstevel@tonic-gate bold=\E!, 67*0Sstevel@tonic-gate ssubm=\Es2, 68*0Sstevel@tonic-gate rsubm=\Es0, 69*0Sstevel@tonic-gate ssupm=\Es1, 70*0Sstevel@tonic-gate rsupm=\Es0, 71*0Sstevel@tonic-gate swidm=^N, 72*0Sstevel@tonic-gate rwidm=^O, 73*0Sstevel@tonic-gate sgr0=\E"\EY\Es0^O, 74*0Sstevel@tonic-gate sgr=%?%p1%p6%|%t\E!%e\E"%;%?%p2%t\EX%e\EY%;, 75*0Sstevel@tonic-gate 76*0Sstevel@tonic-gate rep=\ER%p2%03d%p1%c, 77*0Sstevel@tonic-gate 78*0Sstevel@tonic-gate snlq=\Em2, 79*0Sstevel@tonic-gate snrmq=\Em1, 80*0Sstevel@tonic-gate sdrfq=\Em0, 81*0Sstevel@tonic-gate 82*0Sstevel@tonic-gate smglp=\EL%p1%03d, 83*0Sstevel@tonic-gate smgrp=\E/%{1}%p1%+%03d, 84*0Sstevel@tonic-gate 85*0Sstevel@tonic-gate slines=\Ev%p1%02d., 86*0Sstevel@tonic-gate u9=\Ev%p1%02d., 87*0Sstevel@tonic-gate 88*0Sstevel@tonic-gatecitoh+low, 89*0Sstevel@tonic-gate 90*0Sstevel@tonic-gate npins#8, 91*0Sstevel@tonic-gate spinv#68, 92*0Sstevel@tonic-gate spinh#136, 93*0Sstevel@tonic-gate 94*0Sstevel@tonic-gate porder=8\,7\,6\,5\,4\,3\,2\,1;0, 95*0Sstevel@tonic-gate 96*0Sstevel@tonic-gate sbim=\ES%p1%04d, 97*0Sstevel@tonic-gate 98*0Sstevel@tonic-gate birep=\EV%p2%04d%p3%c, 99*0Sstevel@tonic-gate 100*0Sstevel@tonic-gate bitwin#1, 101*0Sstevel@tonic-gate bitype#1, 102*0Sstevel@tonic-gate 103*0Sstevel@tonic-gate# Set the line spacing to 17/144 inch to get (almost) 68 dots 104*0Sstevel@tonic-gate# per inch vertically (8 * 144/17). 105*0Sstevel@tonic-gate# Set the character spacing to compressed (1/17 inch or 17 106*0Sstevel@tonic-gate# characters per inch); at 136 dots per inch horizontally this 107*0Sstevel@tonic-gate# means 8 dots per character. 108*0Sstevel@tonic-gate# Set the left margin at the left edge of the image. 109*0Sstevel@tonic-gate# The C.Itoh doesn't have parameterized vertical motion, 110*0Sstevel@tonic-gate# so we simulate it with linefeeds. Assume we never need 111*0Sstevel@tonic-gate# to move more than 63 lines (at 17/144 LPI). 112*0Sstevel@tonic-gate# Set uni-directional motion; bi-directional causes a wavy 113*0Sstevel@tonic-gate# image. 114*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\ET17\EQ\EL%p1%{8}%/%03d%p2%{8}%/%Py%?%gy%{31}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{32}%-%Py%;%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\E>%;, 115*0Sstevel@tonic-gate 116*0Sstevel@tonic-gate endbi=\EA\EP\EL001\E<, 117*0Sstevel@tonic-gate 118*0Sstevel@tonic-gate binel=\n\r\EL%p1%{8}%/%03d, 119*0Sstevel@tonic-gate 120*0Sstevel@tonic-gate###################################################################### 121*0Sstevel@tonic-gate# 122*0Sstevel@tonic-gate# Specific printers: 123*0Sstevel@tonic-gate# 124*0Sstevel@tonic-gate 125*0Sstevel@tonic-gatecitoh|8510|C.Itoh 8510 printer, 126*0Sstevel@tonic-gate 127*0Sstevel@tonic-gate bufsz#1024, 128*0Sstevel@tonic-gate cps#120, 129*0Sstevel@tonic-gate 130*0Sstevel@tonic-gate use=citoh+basic, use=citoh+low, 131*0Sstevel@tonic-gate 132*0Sstevel@tonic-gate###################################################################### 133*0Sstevel@tonic-gate# 134*0Sstevel@tonic-gate# Generic entry for the daisy wheel printers and emulations: 135*0Sstevel@tonic-gate# 136*0Sstevel@tonic-gate 137*0Sstevel@tonic-gate# 138*0Sstevel@tonic-gate# Basic capabilities: 139*0Sstevel@tonic-gate# 140*0Sstevel@tonic-gatedaisy+basic, 141*0Sstevel@tonic-gate 142*0Sstevel@tonic-gate daisy, 143*0Sstevel@tonic-gate 144*0Sstevel@tonic-gate cols#132, 145*0Sstevel@tonic-gate lines#66, 146*0Sstevel@tonic-gate 147*0Sstevel@tonic-gate orc#12, 148*0Sstevel@tonic-gate orhi#120, 149*0Sstevel@tonic-gate orl#8, 150*0Sstevel@tonic-gate orvi#48, 151*0Sstevel@tonic-gate 152*0Sstevel@tonic-gate cr=^M, 153*0Sstevel@tonic-gate cud1=^J, 154*0Sstevel@tonic-gate cuf1=\s, 155*0Sstevel@tonic-gate ff=^L, 156*0Sstevel@tonic-gate ht=^I, 157*0Sstevel@tonic-gate hpa=%?%p1%{100}%<%t\EC%p1%02d%e%p1%{110}%<%t\ECA%p1%{100}%-%d%e%p1%{120}%<%t\ECB%p1%{110}%-%d%e%p1%{130}%<%t\ECC%p1%{120}%-%d%e%p1%{140}%<%t\ECD%p1%{130}%-%d%e%p1%{150}%<%t\ECE%p1%{140}%-%d%e%p1%{160}%<%t\ECF%p1%{150}%-%d%;, 158*0Sstevel@tonic-gate vpa=%?%p1%{100}%<%t\EP%p1%02d%e%p1%{110}%<%t\EPA%p1%{100}%-%d%e%p1%{120}%<%t\EPB%p1%{110}%-%d%e%p1%{130}%<%t\EPC%p1%{120}%-%d%e%p1%{140}%<%t\EPD%p1%{130}%-%d%e%p1%{150}%<%t\EPE%p1%{140}%-%d%e%p1%{160}%<%t\EPF%p1%{150}%-%d%;, 159*0Sstevel@tonic-gate 160*0Sstevel@tonic-gate chr=%?%p1%{100}%<%t\EE%p1%02d%e%p1%{110}%<%t\EEA%p1%{100}%-%d%e%p1%{120}%<%t\EEB%p1%{110}%-%d%e%p1%{130}%<%t\EEC%p1%{120}%-%d%e%p1%{140}%<%t\EED%p1%{130}%-%d%e%p1%{150}%<%t\EEE%p1%{140}%-%d%e%p1%{160}%<%t\EEF%p1%{150}%-%d%;, 161*0Sstevel@tonic-gate cvr=%?%p1%{100}%<%t\EL%p1%02d%e%p1%{110}%<%t\ELA%p1%{100}%-%d%e%p1%{120}%<%t\ELB%p1%{110}%-%d%e%p1%{130}%<%t\ELC%p1%{120}%-%d%e%p1%{140}%<%t\ELD%p1%{130}%-%d%e%p1%{150}%<%t\ELE%p1%{140}%-%d%e%p1%{160}%<%t\ELF%p1%{150}%-%d%;, 162*0Sstevel@tonic-gate 163*0Sstevel@tonic-gate is2=\E\rP\EW\E.\EL08\EE12\E%\E<, 164*0Sstevel@tonic-gate 165*0Sstevel@tonic-gate smso=\EQ, 166*0Sstevel@tonic-gate rmso=\ER, 167*0Sstevel@tonic-gate smul=\EI, 168*0Sstevel@tonic-gate rmul=\EJ, 169*0Sstevel@tonic-gate bold=\EKd, 170*0Sstevel@tonic-gate sshm=\EQ, 171*0Sstevel@tonic-gate rshm=\ER, 172*0Sstevel@tonic-gate sgr0=\ER\EM\EJ, 173*0Sstevel@tonic-gate sgr=%?%p1%t\EQ%e\ER%;%?%p2%t\EI%e\EJ%;%?%p6%t\EKd%e\EM%;, 174*0Sstevel@tonic-gate 175*0Sstevel@tonic-gate smgb=\E-, 176*0Sstevel@tonic-gate smgl=\E9, 177*0Sstevel@tonic-gate smgr=\E0, 178*0Sstevel@tonic-gate smgt=\E+, 179*0Sstevel@tonic-gate 180*0Sstevel@tonic-gate slines=\EF%p1%02d, 181*0Sstevel@tonic-gate u9=\EF%p1%02d, 182*0Sstevel@tonic-gate 183*0Sstevel@tonic-gate# 184*0Sstevel@tonic-gate# Graphics capabilities: 185*0Sstevel@tonic-gate# 186*0Sstevel@tonic-gatedaisy+lowres, 187*0Sstevel@tonic-gate 188*0Sstevel@tonic-gate# 189*0Sstevel@tonic-gate# We could use the graphics on/graphics off control sequences 190*0Sstevel@tonic-gate# (ESC G/ESC 4) but for these problems: 191*0Sstevel@tonic-gate# 192*0Sstevel@tonic-gate# - graphics mode gets turned off when a \r is received; 193*0Sstevel@tonic-gate# - printing a character doesn't cause motion, which 194*0Sstevel@tonic-gate# means that each ``cell'' must be followed by a space; 195*0Sstevel@tonic-gate# - to get the best aspect ratio, three horizontal dots 196*0Sstevel@tonic-gate# must be sent per ``cell'' (using the ESC 3 graphics mode 197*0Sstevel@tonic-gate# (1/60 instead of 1/120) alleviates this problem but 198*0Sstevel@tonic-gate# gives a worse aspect ratio). 199*0Sstevel@tonic-gate# 200*0Sstevel@tonic-gate# So instead we set the HMI and VMI to 1/40 and 1/48 inch, 201*0Sstevel@tonic-gate# respectively. 202*0Sstevel@tonic-gate# 203*0Sstevel@tonic-gate npins#1, 204*0Sstevel@tonic-gate spinv#48, 205*0Sstevel@tonic-gate spinh#40, 206*0Sstevel@tonic-gate 207*0Sstevel@tonic-gate porder=o\,o\,o\,o\,1\,1\,1\,o;32, 208*0Sstevel@tonic-gate 209*0Sstevel@tonic-gate bitwin#1, 210*0Sstevel@tonic-gate bitype#1, 211*0Sstevel@tonic-gate 212*0Sstevel@tonic-gate birep=%?%p3%{32}%=%t\EH%p2%{3}%*%Px%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c%;, 213*0Sstevel@tonic-gate 214*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 215*0Sstevel@tonic-gate# maybe not in the first column.) 216*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\EL01\EE03%p1%{3}%*%Px\r\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c\EV%p2%{256}%/%{64}%+%c%p2%{256}%m%{16}%/%{64}%+%c%p2%{16}%m%{64}%+%c\E>%;, 217*0Sstevel@tonic-gate 218*0Sstevel@tonic-gate endbi=\EL08\EE12\E<, 219*0Sstevel@tonic-gate 220*0Sstevel@tonic-gate binel=\n\r%p1%{3}%*%Px\EH%gx%{256}%/%{64}%+%c%gx%{256}%m%{16}%/%{64}%+%c%gx%{16}%m%{64}%+%c, 221*0Sstevel@tonic-gate 222*0Sstevel@tonic-gate###################################################################### 223*0Sstevel@tonic-gate# 224*0Sstevel@tonic-gate# Specific printers: 225*0Sstevel@tonic-gate# 226*0Sstevel@tonic-gate 227*0Sstevel@tonic-gatedaisy, 228*0Sstevel@tonic-gate 229*0Sstevel@tonic-gate use=daisy+basic, use=daisy+lowres, 230*0Sstevel@tonic-gate 231*0Sstevel@tonic-gatequme|sprint11|Qume Sprint 11, 232*0Sstevel@tonic-gate 233*0Sstevel@tonic-gate bufsz#500, 234*0Sstevel@tonic-gate cps#55, 235*0Sstevel@tonic-gate 236*0Sstevel@tonic-gate use=daisy, 237*0Sstevel@tonic-gate 238*0Sstevel@tonic-gate###################################################################### 239*0Sstevel@tonic-gate# 240*0Sstevel@tonic-gate# Generic entries for the various DEC printers and emulations. 241*0Sstevel@tonic-gate# 242*0Sstevel@tonic-gate# The dec+... entries are really for any ANSI X3.64 printer, 243*0Sstevel@tonic-gate# but "ansi" is already used for terminals. It would be more 244*0Sstevel@tonic-gate# work to do "use=ansi" because there are too many screen 245*0Sstevel@tonic-gate# oriented caps that would have to be removed. 246*0Sstevel@tonic-gate# 247*0Sstevel@tonic-gate 248*0Sstevel@tonic-gate# 249*0Sstevel@tonic-gate# Basic capabilities: 250*0Sstevel@tonic-gate# 251*0Sstevel@tonic-gatedec+basic, 252*0Sstevel@tonic-gate 253*0Sstevel@tonic-gate cols#132, 254*0Sstevel@tonic-gate lines#66, 255*0Sstevel@tonic-gate it#8, 256*0Sstevel@tonic-gate 257*0Sstevel@tonic-gate cpix, 258*0Sstevel@tonic-gate orc#1, 259*0Sstevel@tonic-gate orhi#10, 260*0Sstevel@tonic-gate orl#2, 261*0Sstevel@tonic-gate orvi#12, 262*0Sstevel@tonic-gate 263*0Sstevel@tonic-gate# 264*0Sstevel@tonic-gate# FIX? Are xhpa and xvpa really needed? 265*0Sstevel@tonic-gate xhpa, 266*0Sstevel@tonic-gate xvpa, 267*0Sstevel@tonic-gate 268*0Sstevel@tonic-gate cr=^M, 269*0Sstevel@tonic-gate ff=^L, 270*0Sstevel@tonic-gate ht=^I, 271*0Sstevel@tonic-gate cud1=^J, 272*0Sstevel@tonic-gate cuf1=\s, 273*0Sstevel@tonic-gate cuu1=\EM, 274*0Sstevel@tonic-gate cud=\E[%p1%de, 275*0Sstevel@tonic-gate cuf=\E[%p1%da, 276*0Sstevel@tonic-gate hpa=\E[%p1%d`, 277*0Sstevel@tonic-gate vpa=\E[%p1%dd, 278*0Sstevel@tonic-gate nel=\EE, 279*0Sstevel@tonic-gate 280*0Sstevel@tonic-gate is1=\Ec, 281*0Sstevel@tonic-gate is2=\E[20l, 282*0Sstevel@tonic-gate 283*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t\E[w%e%p1%{12}%=%t\E[2w%e%p1%{5}%=%t\E[5w%e%p1%{13}%=%p1%{14}%=%O%t\E[3w%e%p1%{16}%=%p1%{17}%=%O%t\E[4w%e%p1%{6}%=%t\E[6w%e%p1%{7}%=%t\E[7w%e%p1%{8}%=%t\E[8w%;, 284*0Sstevel@tonic-gate lpi=%?%p1%{2}%=%t\E[4z%e%p1%{3}%=%t\E[5z%e%p1%{4}%=%t\E[6z%e%p1%{6}%=%t\E[z%e%p1%{8}%=%t\E[2z%e%p1%{12}%=%t\E[3z%;, 285*0Sstevel@tonic-gate 286*0Sstevel@tonic-gate csnm=%?%p1%{0}%=%tusascii%e%p1%{1}%=%tenglish%e%p1%{2}%=%tfinnish%e%p1%{3}%=%tjapanese%e%p1%{4}%=%tnorwegian%e%p1%{5}%=%tswedish%e%p1%{6}%=%tgermanic%e%p1%{7}%=%tfrench%e%p1%{8}%=%tcanadian_french%e%p1%{9}%=%titalian%e%p1%{10}%=%tspanish%e%p1%{11}%=%tline%e%p1%{12}%=%tsecurity%e%p1%{13}%=%tebcdic%e%p1%{14}%=%tapl%e%p1%{15}%=%tmosaic%;, 287*0Sstevel@tonic-gate scs=%?%p1%{0}%=%t\E(B%e%p1%{1}%=%t\E(A%e%p1%{2}%=%t\E(C%e%p1%{3}%=%t\E(D%e%p1%{4}%=%t\E(E%e%p1%{5}%=%t\E(H%e%p1%{6}%=%t\E(K%e%p1%{7}%=%t\E(R%e%p1%{8}%=%t\E(Q%e%p1%{9}%=%t\E(Y%e%p1%{10}%=%t\E(Z%e%p1%{11}%=%t\E(0%e%p1%{12}%=%t\E(1%e%p1%{13}%=%t\E(3%e%p1%{14}%=%t\E(8%e%p1%{15}%=%t\E(}%;, 288*0Sstevel@tonic-gate 289*0Sstevel@tonic-gate sshm=\E[5m, 290*0Sstevel@tonic-gate rshm=\E[m, 291*0Sstevel@tonic-gate 292*0Sstevel@tonic-gate smgtp=\E[%p1%dr, 293*0Sstevel@tonic-gate smgbp=\E[;%p1%dr, 294*0Sstevel@tonic-gate smglp=\E[%{1}%p1%+%ds, 295*0Sstevel@tonic-gate smgrp=\E[;%{1}%p1%+%ds, 296*0Sstevel@tonic-gate 297*0Sstevel@tonic-gate slines=\E[%p1%dt, 298*0Sstevel@tonic-gate u9=\E[%p1%dt, 299*0Sstevel@tonic-gate 300*0Sstevel@tonic-gate# 301*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 6-pin): 302*0Sstevel@tonic-gate# 303*0Sstevel@tonic-gatedec+low, 304*0Sstevel@tonic-gate 305*0Sstevel@tonic-gate npins#6, 306*0Sstevel@tonic-gate spinv#72, 307*0Sstevel@tonic-gate spinh#75, 308*0Sstevel@tonic-gate 309*0Sstevel@tonic-gate porder=o\,o\,6\,5\,4\,3\,2\,1;63, 310*0Sstevel@tonic-gate 311*0Sstevel@tonic-gate bitwin#1, 312*0Sstevel@tonic-gate bitype#1, 313*0Sstevel@tonic-gate 314*0Sstevel@tonic-gate birep=!%p2%d%p3%c, 315*0Sstevel@tonic-gate 316*0Sstevel@tonic-gate# X is in 1/75 increments; set char spacing to 1/16.7 317*0Sstevel@tonic-gate# increments to allow us to get close; column is X*16.7/75. 318*0Sstevel@tonic-gate# Y is in 1/72 increments; set line spacing to 1/12 319*0Sstevel@tonic-gate# increments to allow us to get close; line is Y/6. 320*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP0q%;, 321*0Sstevel@tonic-gate 322*0Sstevel@tonic-gate endbi=^X, 323*0Sstevel@tonic-gate 324*0Sstevel@tonic-gate binel=-, 325*0Sstevel@tonic-gate 326*0Sstevel@tonic-gate bicr=$, 327*0Sstevel@tonic-gate 328*0Sstevel@tonic-gate###################################################################### 329*0Sstevel@tonic-gate# 330*0Sstevel@tonic-gate# Specific printers: 331*0Sstevel@tonic-gate# 332*0Sstevel@tonic-gate 333*0Sstevel@tonic-gatela100|DEC LA100 Printer, 334*0Sstevel@tonic-gate 335*0Sstevel@tonic-gate use=dec+basic, use=dec+low, 336*0Sstevel@tonic-gate 337*0Sstevel@tonic-gateln03|DEC LN03 Laser Printer, 338*0Sstevel@tonic-gate 339*0Sstevel@tonic-gate# I'm guessing here. I think the ln03 can scale up to 6. 340*0Sstevel@tonic-gate# X is in 1/75 increments; set char spacing to 1/16.7 341*0Sstevel@tonic-gate# increments to allow us to get close; column is X*16.7/75. 342*0Sstevel@tonic-gate# Y is in 1/72 increments; set line spacing to 1/12 343*0Sstevel@tonic-gate# increments to allow us to get close; line is Y/6. 344*0Sstevel@tonic-gate defbi=%?%p5%{0}%>%p5%{7}%<%&%t\E[4w\E[%p1%{167}%*%{750}%/%d`\E[w\E[3z\E[%p2%{6}%/%dd\E[z\EP9;0;%p5%dq"1;1%;, 345*0Sstevel@tonic-gate 346*0Sstevel@tonic-gate use=dec+basic, use=dec+low, 347*0Sstevel@tonic-gate 348*0Sstevel@tonic-gate###################################################################### 349*0Sstevel@tonic-gate# 350*0Sstevel@tonic-gate# Epson LQ-2500 351*0Sstevel@tonic-gate# 352*0Sstevel@tonic-gate 353*0Sstevel@tonic-gate# 354*0Sstevel@tonic-gate# Basic capabilities: 355*0Sstevel@tonic-gate# 356*0Sstevel@tonic-gateep2500+basic, 357*0Sstevel@tonic-gate 358*0Sstevel@tonic-gate cols#136, 359*0Sstevel@tonic-gate lines#66, 360*0Sstevel@tonic-gate it#8, 361*0Sstevel@tonic-gate 362*0Sstevel@tonic-gate cpix, 363*0Sstevel@tonic-gate orc#6, 364*0Sstevel@tonic-gate orhi#60, 365*0Sstevel@tonic-gate orl#30, 366*0Sstevel@tonic-gate orvi#180, 367*0Sstevel@tonic-gate 368*0Sstevel@tonic-gate cr=^M, 369*0Sstevel@tonic-gate cud1=^J, 370*0Sstevel@tonic-gate cuf1=\s, 371*0Sstevel@tonic-gate cub1=\b, 372*0Sstevel@tonic-gate ff=^L, 373*0Sstevel@tonic-gate ht=^I, 374*0Sstevel@tonic-gate 375*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t^R\EP%e%p1%{12}%=%t^R\EM%e%p1%{20}%=%t^O\EM%e%p1%{17}%=%t^O\EP%;, 376*0Sstevel@tonic-gate cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, 377*0Sstevel@tonic-gate 378*0Sstevel@tonic-gate is1=^Q^X, 379*0Sstevel@tonic-gate is2=\E@\E%0\EO, 380*0Sstevel@tonic-gate 381*0Sstevel@tonic-gate csnm=%?%p1%{0}%=%tcharacter_set_1%e%p1%{1}%=%tcharacter_set_2%e%p1%{2}%=%tusa%e%p1%{3}%=%tfrench%e%p1%{4}%=%tgerman%e%p1%{5}%=%tuk%e%p1%{6}%=%tdanish1%e%p1%{7}%=%tswedish%e%p1%{8}%=%titalian%e%p1%{9}%=%tspanish1%e%p1%{10}%=%tjapanese%e%p1%{11}%=%tnorwegian%e%p1%{12}%=%tdanish2%e%p1%{13}%=%tspanish2%e%p1%{14}%=%tlatin_american%;, 382*0Sstevel@tonic-gate scs=%?%p1%{0}%=%t\E7%e%p1%{1}%=%t\E6%e%p1%{1}%>%p1%{15}%<%&%t\ER%p1%{126}%+%c%; 383*0Sstevel@tonic-gate 384*0Sstevel@tonic-gate smso=\EE, 385*0Sstevel@tonic-gate rmso=\EF, 386*0Sstevel@tonic-gate smul=\E-1, 387*0Sstevel@tonic-gate rmul=\E-0, 388*0Sstevel@tonic-gate bold=\EG, 389*0Sstevel@tonic-gate sshm=\EE, 390*0Sstevel@tonic-gate rshm=\EF, 391*0Sstevel@tonic-gate ssubm=\ES1, 392*0Sstevel@tonic-gate rsubm=\ET, 393*0Sstevel@tonic-gate ssupm=\ES0, 394*0Sstevel@tonic-gate rsupm=\ET, 395*0Sstevel@tonic-gate swidm=\EW1, 396*0Sstevel@tonic-gate rwidm=\EW0, 397*0Sstevel@tonic-gate sitm=\E4, 398*0Sstevel@tonic-gate ritm=\E5, 399*0Sstevel@tonic-gate sgr0=\EF\E-0\EH\ET\EW0\E5, 400*0Sstevel@tonic-gate sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;, 401*0Sstevel@tonic-gate 402*0Sstevel@tonic-gate# 403*0Sstevel@tonic-gate# For now we can't set the margin in the first (0th) column 404*0Sstevel@tonic-gate# due to limitations in the Curses code. This should be changed 405*0Sstevel@tonic-gate# in the future. For now, shift right 1. Note that the right 406*0Sstevel@tonic-gate# margin is the last USEABLE column in Terminfo, but is 1 407*0Sstevel@tonic-gate# PAST that for the Epson. 408*0Sstevel@tonic-gate smglp=%?%p1%{256}%<%t\El%p1%{1}%+%c%;, 409*0Sstevel@tonic-gate smgrp=%?%p1%{256}%<%t\EQ%p1%{2}%+%c%;, 410*0Sstevel@tonic-gate 411*0Sstevel@tonic-gate slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, 412*0Sstevel@tonic-gate u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, 413*0Sstevel@tonic-gate 414*0Sstevel@tonic-gate snrmq=\Ex0, 415*0Sstevel@tonic-gate snlq=\Ex1, 416*0Sstevel@tonic-gate 417*0Sstevel@tonic-gate# 418*0Sstevel@tonic-gate# Graphics capabilities: 419*0Sstevel@tonic-gate# 420*0Sstevel@tonic-gateep2500+low, 421*0Sstevel@tonic-gate 422*0Sstevel@tonic-gate npins#8, 423*0Sstevel@tonic-gate spinv#60, 424*0Sstevel@tonic-gate spinh#60, 425*0Sstevel@tonic-gate 426*0Sstevel@tonic-gate porder=1\,2\,3\,4\,5\,6\,7\,8;0, 427*0Sstevel@tonic-gate 428*0Sstevel@tonic-gate sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, 429*0Sstevel@tonic-gate 430*0Sstevel@tonic-gate bitwin#1, 431*0Sstevel@tonic-gate bitype#1, 432*0Sstevel@tonic-gate 433*0Sstevel@tonic-gate# Set the line spacing to 8/60 inch (7.5 lines per inch) 434*0Sstevel@tonic-gate# to get 60 dots per inch vertically (7.5 lines/" * 8 pins/line). 435*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 436*0Sstevel@tonic-gate# per inch); at 60 dots per inch horizontally this means 6 437*0Sstevel@tonic-gate# dots per character. 438*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 439*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 440*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 441*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 442*0Sstevel@tonic-gate# maybe not in the first column.) 443*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, 444*0Sstevel@tonic-gate 445*0Sstevel@tonic-gate endbi=\E3\036, 446*0Sstevel@tonic-gate 447*0Sstevel@tonic-gate binel=\n\r\t, 448*0Sstevel@tonic-gate 449*0Sstevel@tonic-gate bicr=\r\t, 450*0Sstevel@tonic-gate 451*0Sstevel@tonic-gate# 452*0Sstevel@tonic-gate# Graphics capabilities: 453*0Sstevel@tonic-gate# 454*0Sstevel@tonic-gateep2500+high, 455*0Sstevel@tonic-gate 456*0Sstevel@tonic-gate npins#24, 457*0Sstevel@tonic-gate spinv#180, 458*0Sstevel@tonic-gate spinh#180, 459*0Sstevel@tonic-gate 460*0Sstevel@tonic-gate porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, 461*0Sstevel@tonic-gate 462*0Sstevel@tonic-gate sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, 463*0Sstevel@tonic-gate 464*0Sstevel@tonic-gate# Set the line spacing to 8/60 inch (7.5 lines per inch) 465*0Sstevel@tonic-gate# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). 466*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 467*0Sstevel@tonic-gate# per inch); at 180 dots per inch horizontally this means 18 468*0Sstevel@tonic-gate# dots per character. 469*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 470*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 471*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 472*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 473*0Sstevel@tonic-gate# maybe not in the first column.) 474*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\E3\030^R\EP\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, 475*0Sstevel@tonic-gate 476*0Sstevel@tonic-gate use=ep2500+low, 477*0Sstevel@tonic-gate 478*0Sstevel@tonic-gate# 479*0Sstevel@tonic-gate# Color capability: 480*0Sstevel@tonic-gate# 481*0Sstevel@tonic-gateep2500+color, 482*0Sstevel@tonic-gate 483*0Sstevel@tonic-gate colors#3, 484*0Sstevel@tonic-gate 485*0Sstevel@tonic-gate setcolor=%?%p1%{0}%=%t\Er0%;%?%p1%{1}%=%t\Er2%;%?%p1%{2}%=%t\Er1%;%?%p1%{3}%=%t\Er4%;, 486*0Sstevel@tonic-gate 487*0Sstevel@tonic-gate colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, 488*0Sstevel@tonic-gate 489*0Sstevel@tonic-gate###################################################################### 490*0Sstevel@tonic-gate# 491*0Sstevel@tonic-gate# Specific printers: 492*0Sstevel@tonic-gate# 493*0Sstevel@tonic-gate 494*0Sstevel@tonic-gateepson2500|Epson LQ-2500; low resolution, 495*0Sstevel@tonic-gate 496*0Sstevel@tonic-gate use=ep2500+basic, use=ep2500+low, use=ep2500+color, 497*0Sstevel@tonic-gate 498*0Sstevel@tonic-gateepson2500-hi|Epson LQ-2500; high resolution, 499*0Sstevel@tonic-gate 500*0Sstevel@tonic-gate use=ep2500+basic, use=ep2500+high, use=ep2500+color, 501*0Sstevel@tonic-gate 502*0Sstevel@tonic-gateepson2500-80|Epson LQ-2500; low resolution; 80-col, 503*0Sstevel@tonic-gate 504*0Sstevel@tonic-gate cols#80, 505*0Sstevel@tonic-gate use=ep2500+basic, use=ep2500+low, use=ep2500+color, 506*0Sstevel@tonic-gate 507*0Sstevel@tonic-gateepson2500-hi80|Epson LQ-2500; high resolution; 80-col, 508*0Sstevel@tonic-gate 509*0Sstevel@tonic-gate cols#80, 510*0Sstevel@tonic-gate use=ep2500+basic, use=ep2500+high, use=ep2500+color, 511*0Sstevel@tonic-gate 512*0Sstevel@tonic-gate###################################################################### 513*0Sstevel@tonic-gate# 514*0Sstevel@tonic-gate# Generic entry for the HP Laserjet printers and emulations: 515*0Sstevel@tonic-gate# 516*0Sstevel@tonic-gate 517*0Sstevel@tonic-gate# 518*0Sstevel@tonic-gate# Basic capabilities: 519*0Sstevel@tonic-gate# 520*0Sstevel@tonic-gatehplaser+basic, 521*0Sstevel@tonic-gate 522*0Sstevel@tonic-gate cols#80, 523*0Sstevel@tonic-gate lines#60, 524*0Sstevel@tonic-gate 525*0Sstevel@tonic-gate orc#12, 526*0Sstevel@tonic-gate orhi#120, 527*0Sstevel@tonic-gate orl#8, 528*0Sstevel@tonic-gate orvi#48, 529*0Sstevel@tonic-gate 530*0Sstevel@tonic-gate cr=^M, 531*0Sstevel@tonic-gate cud1=^J, 532*0Sstevel@tonic-gate cuf1=\s, 533*0Sstevel@tonic-gate cud=\E&a+%p1%dR, 534*0Sstevel@tonic-gate cuf=\E&a+%p1%dC, 535*0Sstevel@tonic-gate ff=^L, 536*0Sstevel@tonic-gate hpa=\E&a%p1%dC, 537*0Sstevel@tonic-gate vpa=\E&a%p1%dR, 538*0Sstevel@tonic-gate 539*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t\E&k0S%e%p1%{17}%=%t\E&k2S%;, 540*0Sstevel@tonic-gate chr=%?%p1%{0}%>%p1%{127}%<%t\E&k%p1%dH%;, 541*0Sstevel@tonic-gate cvr=%?%p1%{0}%>%p1%{127}%<%t\E&l%p1%dC%;, 542*0Sstevel@tonic-gate lpi=%?%p1%{1}%=%t\E&l1D%e%p1%{2}%=%t\E&l2D%e%p1%{3}%=%t\E&l3D%e%p1%{4}%=%t\E&l4D%e%p1%{6}%=%t\E&l6D%e%p1%{8}%=%t\E&l8D%e%p1%{12}%=%t\E&l12D%e%p1%{16}%=%t\E&l16D%e%p1%{24}%=%t\E&l24D%e%p1%{48}%=%t\E&l48D%;, 543*0Sstevel@tonic-gate 544*0Sstevel@tonic-gate# Reset printer and set how EOL is handled. 545*0Sstevel@tonic-gate# \E&k0G is cr=cr, lf=lf, ff=ff 546*0Sstevel@tonic-gate# \E&k1G is cr=cr+lf, lf=lf, ff=ff 547*0Sstevel@tonic-gate# \E&k2G is cr=cr, lf=cr+lf, ff=cr+ff (this is what UNIX uses) 548*0Sstevel@tonic-gate# \E&k3G is cr=cr+lf, lf=cr+lf, ff=cr+ff 549*0Sstevel@tonic-gate 550*0Sstevel@tonic-gate is2=\EE\E&k2G, 551*0Sstevel@tonic-gate mgc=\E9, 552*0Sstevel@tonic-gate 553*0Sstevel@tonic-gate rmul=\E&d\100, 554*0Sstevel@tonic-gate ritm=\E(s0S, 555*0Sstevel@tonic-gate smul=\E&dD, 556*0Sstevel@tonic-gate sitm=\E(s1S, 557*0Sstevel@tonic-gate smgtp=\E&l%p1%{1}%+%dE, 558*0Sstevel@tonic-gate smgbp=\E&l%p1%{1}%+%dF, 559*0Sstevel@tonic-gate smglp=\E&a%p1%dL, 560*0Sstevel@tonic-gate smgrp=\E&a%p1%dM, 561*0Sstevel@tonic-gate 562*0Sstevel@tonic-gate#Set top margin at +2 offset 563*0Sstevel@tonic-gate smgtp=\E&l%p1%dE, 564*0Sstevel@tonic-gate 565*0Sstevel@tonic-gate#Set page length 566*0Sstevel@tonic-gate slines=\E&l%p1P, 567*0Sstevel@tonic-gate u9=\E&l%p1P, 568*0Sstevel@tonic-gate 569*0Sstevel@tonic-gate# 570*0Sstevel@tonic-gate# Graphics capabilities: 571*0Sstevel@tonic-gate# 572*0Sstevel@tonic-gatehplaser+high, 573*0Sstevel@tonic-gate 574*0Sstevel@tonic-gate npins#8, 575*0Sstevel@tonic-gate spinv#300, 576*0Sstevel@tonic-gate spinh#300, 577*0Sstevel@tonic-gate 578*0Sstevel@tonic-gate porder=1\,2\,3\,4\,5\,6\,7\,8;0, 579*0Sstevel@tonic-gate 580*0Sstevel@tonic-gate sbim=\E*b%p1%dW, 581*0Sstevel@tonic-gate 582*0Sstevel@tonic-gate bitwin#1, 583*0Sstevel@tonic-gate bitype#2, 584*0Sstevel@tonic-gate 585*0Sstevel@tonic-gate# X (or Y) * scale * 12/5 == pos in decipoints (12/5 == 720/300) 586*0Sstevel@tonic-gate defbi=%?%p5%{0}%>%p5%{5}%<%&%t\E&a%p1%p5%*%{12}%*%{5}%/%dH\E&a%p2%p5%*%{12}%*%{5}%/%dV\E*t%{300}%p5%/%dR\E*r1A%;, 587*0Sstevel@tonic-gate 588*0Sstevel@tonic-gate endbi=\E*rB, 589*0Sstevel@tonic-gate 590*0Sstevel@tonic-gate###################################################################### 591*0Sstevel@tonic-gate# 592*0Sstevel@tonic-gate# Specific printers: 593*0Sstevel@tonic-gate# 594*0Sstevel@tonic-gate 595*0Sstevel@tonic-gatehplaserjet|hplaser|HP Laserjet I, 596*0Sstevel@tonic-gate 597*0Sstevel@tonic-gate use=hplaser+basic, use=hplaser+high, 598*0Sstevel@tonic-gate 599*0Sstevel@tonic-gate###################################################################### 600*0Sstevel@tonic-gate# 601*0Sstevel@tonic-gate# Generic entries for the various IBM printers and emulations. 602*0Sstevel@tonic-gate# 603*0Sstevel@tonic-gate 604*0Sstevel@tonic-gate################################### 605*0Sstevel@tonic-gate# 606*0Sstevel@tonic-gate# IBM Graphics 607*0Sstevel@tonic-gate# 608*0Sstevel@tonic-gate 609*0Sstevel@tonic-gate# 610*0Sstevel@tonic-gate# Basic capabilities: 611*0Sstevel@tonic-gate# 612*0Sstevel@tonic-gateibmg+basic, 613*0Sstevel@tonic-gate 614*0Sstevel@tonic-gate cols#80, 615*0Sstevel@tonic-gate lines#66, 616*0Sstevel@tonic-gate it#8, 617*0Sstevel@tonic-gate 618*0Sstevel@tonic-gate cpix, 619*0Sstevel@tonic-gate orc#1, 620*0Sstevel@tonic-gate orhi#10, 621*0Sstevel@tonic-gate orl#12, 622*0Sstevel@tonic-gate orvi#72, 623*0Sstevel@tonic-gate 624*0Sstevel@tonic-gate cr=^M, 625*0Sstevel@tonic-gate ff=^L, 626*0Sstevel@tonic-gate ht=^I, 627*0Sstevel@tonic-gate cud1=^J, 628*0Sstevel@tonic-gate cuf1=\s, 629*0Sstevel@tonic-gate 630*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t^R%e%p1%{16}%=%p1%{17}%=%O%t^O%;, 631*0Sstevel@tonic-gate cvr=%?%p1%{0}%>%p1%{256}%<%&%t\EA%p1%c\E2%;, 632*0Sstevel@tonic-gate 633*0Sstevel@tonic-gate is1=^X, 634*0Sstevel@tonic-gate is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO, 635*0Sstevel@tonic-gate 636*0Sstevel@tonic-gate csnm=%?%p1%{0}%=%p1%{1}%=%O%tcharacter_set_1%e%p1%{2}%=%tcharacter_set_2%;, 637*0Sstevel@tonic-gate scs=%?%p1%{0}%=%p1%{1}%=%O%t\E7%e%p1%{2}%=%t\E6%;, 638*0Sstevel@tonic-gate 639*0Sstevel@tonic-gate smso=\EE, 640*0Sstevel@tonic-gate rmso=\EF, 641*0Sstevel@tonic-gate smul=\E-1, 642*0Sstevel@tonic-gate rmul=\E-0, 643*0Sstevel@tonic-gate bold=\EG, 644*0Sstevel@tonic-gate smacs=\E6, 645*0Sstevel@tonic-gate rmacs=\E7, 646*0Sstevel@tonic-gate sshm=\EE, 647*0Sstevel@tonic-gate rshm=\EF, 648*0Sstevel@tonic-gate ssubm=\ES1, 649*0Sstevel@tonic-gate rsubm=\ET, 650*0Sstevel@tonic-gate ssupm=\ES0, 651*0Sstevel@tonic-gate rsupm=\ET, 652*0Sstevel@tonic-gate swidm=\EW1, 653*0Sstevel@tonic-gate rwidm=\EW0, 654*0Sstevel@tonic-gate sgr0=\EF\E-0\EH\E7\ET\EW0, 655*0Sstevel@tonic-gate sgr=%?%p1%t\EE%e\EF%;%?%p2%t\E-1%e\E-0%;%?%p6%t\EG%e\EH%;%?%p9%t\E6%e\E7%;, 656*0Sstevel@tonic-gate 657*0Sstevel@tonic-gate slines=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, 658*0Sstevel@tonic-gate u9=%?%p1%{0}%>%p1%{128}%<%&%t\EC%p1%c%;, 659*0Sstevel@tonic-gate 660*0Sstevel@tonic-gate# 661*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 9-pin): 662*0Sstevel@tonic-gate# 663*0Sstevel@tonic-gateibmg+low, 664*0Sstevel@tonic-gate 665*0Sstevel@tonic-gate npins#8, 666*0Sstevel@tonic-gate spinv#72, 667*0Sstevel@tonic-gate spinh#60, 668*0Sstevel@tonic-gate 669*0Sstevel@tonic-gate porder=1\,2\,3\,4\,5\,6\,7\,8;0, 670*0Sstevel@tonic-gate 671*0Sstevel@tonic-gate sbim=\EK%p1%{256}%m%c%p1%{256}%/%c, 672*0Sstevel@tonic-gate 673*0Sstevel@tonic-gate bitwin#1, 674*0Sstevel@tonic-gate bitype#1, 675*0Sstevel@tonic-gate 676*0Sstevel@tonic-gate# Set the line spacing to 8/72 inch (9 lines per inch) 677*0Sstevel@tonic-gate# to get 72 dots per inch vertically (9 lines/inch * 8 pins/line). 678*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 679*0Sstevel@tonic-gate# per inch); at 60 dots per inch horizontally this means 6 680*0Sstevel@tonic-gate# dots per character. 681*0Sstevel@tonic-gate# The IBM Graphics doesn't have parameterized motion, 682*0Sstevel@tonic-gate# so we simulate it with linefeeds and spaces. 683*0Sstevel@tonic-gate# Assume we never need to move across more than 63 colums 684*0Sstevel@tonic-gate# or down more than 31 lines. 685*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 686*0Sstevel@tonic-gate# maybe not in the first column.) 687*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\EA\010\E2^R%p2%{8}%/%Py%?%gy%{15}%>%t\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n%gy%{16}%-%Py%;%?%gy%{7}%>%t\n\n\n\n\n\n\n\n%gy%{8}%-%Py%;%?%gy%{3}%>%t\n\n\n\n%gy%{4}%-%Py%;%?%gy%{1}%>%t\n\n%gy%{2}%-%Py%;%?%gy%{0}%>%t\n%;\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;%;, 688*0Sstevel@tonic-gate 689*0Sstevel@tonic-gate endbi=\EA\014\E2, 690*0Sstevel@tonic-gate 691*0Sstevel@tonic-gate binel=\n\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, 692*0Sstevel@tonic-gate 693*0Sstevel@tonic-gate bicr=\r%p1%{6}%/%Px%?%gx%{31}%>%t %gx%{32}%-%Px%;%?%gx%{15}%>%t %gx%{16}%-%Px%;%?%gx%{7}%>%t %gx%{8}%-%Px%;%?%gx%{3}%>%t %gx%{4}%-%Px%;%?%gx%{1}%>%t %gx%{2}%-%Px%;%?%gx%{0}%>%t %;, 694*0Sstevel@tonic-gate 695*0Sstevel@tonic-gate################################### 696*0Sstevel@tonic-gate# 697*0Sstevel@tonic-gate# IBM Color 698*0Sstevel@tonic-gate# 699*0Sstevel@tonic-gate 700*0Sstevel@tonic-gate# 701*0Sstevel@tonic-gate# Basic capabilities: 702*0Sstevel@tonic-gate# 703*0Sstevel@tonic-gateibmc+basic, 704*0Sstevel@tonic-gate 705*0Sstevel@tonic-gate cub1=\b, 706*0Sstevel@tonic-gate 707*0Sstevel@tonic-gate is1=^Q^X, 708*0Sstevel@tonic-gate is2=^R\EA\014\E2\EF\EH\EW0\ET\E-0\E7\EO\ER\E50\EM0\EX^A\210\Eb\ECB, 709*0Sstevel@tonic-gate 710*0Sstevel@tonic-gate smglp=\EX%p1%{1}%+%c%p2%{1}%+%c, 711*0Sstevel@tonic-gate 712*0Sstevel@tonic-gate use=ibmg+basic, 713*0Sstevel@tonic-gate 714*0Sstevel@tonic-gate# 715*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 9-pin, 5:6 aspect ratio): 716*0Sstevel@tonic-gate# 717*0Sstevel@tonic-gateibmc+low+5x6, 718*0Sstevel@tonic-gate 719*0Sstevel@tonic-gate spinv#84, 720*0Sstevel@tonic-gate spinh#70, 721*0Sstevel@tonic-gate 722*0Sstevel@tonic-gate# Set 5:6 aspect ratio. 723*0Sstevel@tonic-gate# Set the line spacing to 7/72 inch (10.29 lines per inch) 724*0Sstevel@tonic-gate# to get approximately 84 dots per inch vertically 725*0Sstevel@tonic-gate# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). 726*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 727*0Sstevel@tonic-gate# per inch); at 70 dots per inch horizontally this means 7 728*0Sstevel@tonic-gate# dots per character. 729*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 730*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 731*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 732*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 733*0Sstevel@tonic-gate# maybe not in the first column.) 734*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\En^B\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{7}%/%c$<>\013\r\t%;, 735*0Sstevel@tonic-gate 736*0Sstevel@tonic-gate binel=\n\r\t, 737*0Sstevel@tonic-gate 738*0Sstevel@tonic-gate bicr=\r\t, 739*0Sstevel@tonic-gate 740*0Sstevel@tonic-gate use=ibmg+low, 741*0Sstevel@tonic-gate 742*0Sstevel@tonic-gate# 743*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 9-pin, 1:1 aspect ratio): 744*0Sstevel@tonic-gate# 745*0Sstevel@tonic-gateibmc+low+1x1, 746*0Sstevel@tonic-gate 747*0Sstevel@tonic-gate spinh#84, 748*0Sstevel@tonic-gate 749*0Sstevel@tonic-gate# Set 1:1 aspect ratio. 750*0Sstevel@tonic-gate# Set the line spacing to 7/72 inch (10.29 lines per inch) 751*0Sstevel@tonic-gate# to get approximately 84 dots per inch vertically 752*0Sstevel@tonic-gate# (10.29 lines/inch * 8 pins/line equals 82.28 dots per inch). 753*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 754*0Sstevel@tonic-gate# per inch); at 84 dots per inch horizontally this means 8.4 755*0Sstevel@tonic-gate# dots per character. 756*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 757*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 758*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 759*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 760*0Sstevel@tonic-gate# maybe not in the first column.) 761*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\En^A\E1^R\EB%p2%{8}%/%c$<>\ED%p1%{10}%*%{84}%/%c$<>\013\r\t%;, 762*0Sstevel@tonic-gate 763*0Sstevel@tonic-gate use=ibmc+low+5x6, 764*0Sstevel@tonic-gate 765*0Sstevel@tonic-gate# 766*0Sstevel@tonic-gate# Color capability: 767*0Sstevel@tonic-gate# 768*0Sstevel@tonic-gateibmc+color, 769*0Sstevel@tonic-gate 770*0Sstevel@tonic-gate colors#3, 771*0Sstevel@tonic-gate 772*0Sstevel@tonic-gate setcolor=%?%p1%{0}%=%t\Eb%;%?%p1%{1}%=%t\Ec%;%?%p1%{2}%=%t\Em%;%?%p1%{3}%=%t\Ey%;, 773*0Sstevel@tonic-gate 774*0Sstevel@tonic-gate colornm=%?%p1%{0}%=%tblack%;%?%p1%{1}%=%tcyan%;%?%p1%{2}%=%tmagenta%;%?%p1%{3}%=%tyellow%;%?%p1%{4}%=%torange=yellow+magenta%;%?%p1%{5}%=%tgreen=yellow+cyan%;%?%p1%{6}%=%tviolet=magenta+cyan%;%?%p1%{7}%=%tbrown=magenta+black%;, 775*0Sstevel@tonic-gate 776*0Sstevel@tonic-gate################################### 777*0Sstevel@tonic-gate# 778*0Sstevel@tonic-gate# IBM Proprinter XL: 779*0Sstevel@tonic-gate# 780*0Sstevel@tonic-gate# This printer appears to be a superset of the IBM Graphics 781*0Sstevel@tonic-gate# and IBM Color printers, with a 24-wire printhead. The entry 782*0Sstevel@tonic-gate# below uses the full capabilities of the superset and printhead. 783*0Sstevel@tonic-gate# The printer has an Alternate Graphics Mode (AGM) that changes 784*0Sstevel@tonic-gate# the vertical resolution from 1/216" to 1/180", and the graphics 785*0Sstevel@tonic-gate# aspect ratio from 5:6 to 1:1. HOWEVER, there does not appear to 786*0Sstevel@tonic-gate# be a control sequence that switches into this mode--it must be 787*0Sstevel@tonic-gate# done by hand! 788*0Sstevel@tonic-gate# 789*0Sstevel@tonic-gate 790*0Sstevel@tonic-gate# 791*0Sstevel@tonic-gate# Basic capabilities (printer not in AGM): 792*0Sstevel@tonic-gate# 793*0Sstevel@tonic-gateibmxl+basic, 794*0Sstevel@tonic-gate 795*0Sstevel@tonic-gate orc#12, 796*0Sstevel@tonic-gate orhi#120, 797*0Sstevel@tonic-gate orl#36, 798*0Sstevel@tonic-gate orvi#216, 799*0Sstevel@tonic-gate 800*0Sstevel@tonic-gate cub1=\b, 801*0Sstevel@tonic-gate 802*0Sstevel@tonic-gate cpi=%?%p1%{10}%=%t^R%e%p1%{12}%=%t\E:%e%p1%{17}%=%t^O%;, 803*0Sstevel@tonic-gate cvr=%?%p1%{0}%>%p1%{256}%<%&%t\E3%p1%c%;, 804*0Sstevel@tonic-gate 805*0Sstevel@tonic-gate is1=^Q^X, 806*0Sstevel@tonic-gate is2=^R\EP0\EA\014\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, 807*0Sstevel@tonic-gate is3=\EX\001\120, 808*0Sstevel@tonic-gate 809*0Sstevel@tonic-gate use=ibmg+basic, 810*0Sstevel@tonic-gate 811*0Sstevel@tonic-gate# 812*0Sstevel@tonic-gate# Basic capabilities (printer in AGM): 813*0Sstevel@tonic-gate# 814*0Sstevel@tonic-gateibmxlagm+basic, 815*0Sstevel@tonic-gate 816*0Sstevel@tonic-gate orl#30, 817*0Sstevel@tonic-gate orvi#180, 818*0Sstevel@tonic-gate 819*0Sstevel@tonic-gate is2=^R\EP0\EA\012\E2\EC\102\EO\ER\Eb\E50\EF\EH\EW0\ET\E-0\E_0\E7, 820*0Sstevel@tonic-gate 821*0Sstevel@tonic-gate use=ibmxl+basic, 822*0Sstevel@tonic-gate 823*0Sstevel@tonic-gate# 824*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 8-pin, 5:6 aspect ratio): 825*0Sstevel@tonic-gate# 826*0Sstevel@tonic-gateibmxl+low+5x6, 827*0Sstevel@tonic-gate 828*0Sstevel@tonic-gate spinv#72, 829*0Sstevel@tonic-gate spinh#60, 830*0Sstevel@tonic-gate 831*0Sstevel@tonic-gate# Set the line spacing to 8/72 inch (9 lines per inch) 832*0Sstevel@tonic-gate# to get 72 dots per inch vertically (9 lines/" * 8 pins/line). 833*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 834*0Sstevel@tonic-gate# per inch); at 60 dots per inch horizontally this means 6 835*0Sstevel@tonic-gate# dots per character. 836*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 837*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 838*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 839*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 840*0Sstevel@tonic-gate# maybe not in the first column.) 841*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{8}%/%c$<>\ED%p1%{6}%/%c$<>\013\r\t%;, 842*0Sstevel@tonic-gate 843*0Sstevel@tonic-gate use=ibmc+low+5x6, 844*0Sstevel@tonic-gate 845*0Sstevel@tonic-gate# 846*0Sstevel@tonic-gate# Graphics capabilities (low resolution, 8-pin, 1:1 aspect ratio): 847*0Sstevel@tonic-gate# 848*0Sstevel@tonic-gateibmxl+low+1x1, 849*0Sstevel@tonic-gate 850*0Sstevel@tonic-gate spinv#60, 851*0Sstevel@tonic-gate 852*0Sstevel@tonic-gate# In AGM the "defbi" cap from ibmxl+low+5x6 will work. The 853*0Sstevel@tonic-gate# line spacing will be 8/60 inch to get 60 dots per inch, using 854*0Sstevel@tonic-gate# the same control sequence. 855*0Sstevel@tonic-gate 856*0Sstevel@tonic-gate use=ibmxl+low+5x6, 857*0Sstevel@tonic-gate 858*0Sstevel@tonic-gate# 859*0Sstevel@tonic-gate# Graphics capabilities (high resolution, 24-pin, 5:6 aspect ratio): 860*0Sstevel@tonic-gate# 861*0Sstevel@tonic-gate# This doesn't work as the pin spacing doesn't get set to 862*0Sstevel@tonic-gate# 1/216 inch, but stays at 1/180 inch, even out of AGM. 863*0Sstevel@tonic-gate# 864*0Sstevel@tonic-gate 865*0Sstevel@tonic-gate# 866*0Sstevel@tonic-gate# Graphics capabilities (high resolution, 24-pin, 1:1 aspect ratio): 867*0Sstevel@tonic-gate# 868*0Sstevel@tonic-gateibmxl+high+1x1, 869*0Sstevel@tonic-gate 870*0Sstevel@tonic-gate npins#24, 871*0Sstevel@tonic-gate spinv#180, 872*0Sstevel@tonic-gate spinh#180, 873*0Sstevel@tonic-gate 874*0Sstevel@tonic-gate porder=1\,2\,3\,4\,5\,6\,7\,8\,9\,10\,11\,12\,13\,14\,15\,16\,17\,18\,19\,20\,21\,22\,23\,24;0, 875*0Sstevel@tonic-gate 876*0Sstevel@tonic-gate sbim=\E*\047%p1%{256}%m%c%p1%{256}%/%c, 877*0Sstevel@tonic-gate 878*0Sstevel@tonic-gate# Set the line spacing to 8/60 inch (7.5 lines per inch) 879*0Sstevel@tonic-gate# to get 180 dots per inch vertically (7.5 lines/" * 24 pins/line). 880*0Sstevel@tonic-gate# This requires the printer or emulation in Alternate Graphics Mode. 881*0Sstevel@tonic-gate# Set the character spacing to pica (1/10 inch or 10 characters 882*0Sstevel@tonic-gate# per inch); at 180 dots per inch horizontally this means 18 883*0Sstevel@tonic-gate# dots per character. 884*0Sstevel@tonic-gate# Set vertical and horizontal tab stops at the upper left corner 885*0Sstevel@tonic-gate# of the image, then tab to the upper left corner. 886*0Sstevel@tonic-gate# Note: $<> is a true null (only works with special Curses routine). 887*0Sstevel@tonic-gate# THIS ASSUMES WE START AT THE TOP OF THE PAGE! (although 888*0Sstevel@tonic-gate# maybe not in the first column.) 889*0Sstevel@tonic-gate defbi=%?%p5%{1}%=%t\EA\010\E2^R\EB%p2%{24}%/%c$<>\ED%p1%{18}%/%c$<>\013\r\t%;, 890*0Sstevel@tonic-gate 891*0Sstevel@tonic-gate use=ibmc+low+5x6, 892*0Sstevel@tonic-gate 893*0Sstevel@tonic-gate###################################################################### 894*0Sstevel@tonic-gate# 895*0Sstevel@tonic-gate# Specific printers: 896*0Sstevel@tonic-gate# 897*0Sstevel@tonic-gate 898*0Sstevel@tonic-gateibmgraphics|ibmproprinter|proprinter|IBM Graphics printer, 899*0Sstevel@tonic-gate 900*0Sstevel@tonic-gate use=ibmg+basic, use=ibmg+low, 901*0Sstevel@tonic-gate 902*0Sstevel@tonic-gateibmcolor|IBM Color printer; 5:6 aspect ratio, 903*0Sstevel@tonic-gate 904*0Sstevel@tonic-gate use=ibmc+basic, use=ibmc+low+5x6, use=ibmc+color, 905*0Sstevel@tonic-gate 906*0Sstevel@tonic-gateibmcolor-1x1|IBM Color printer; 1:1 aspect ratio, 907*0Sstevel@tonic-gate 908*0Sstevel@tonic-gate use=ibmc+basic, use=ibmc+low+1x1, use=ibmc+color, 909*0Sstevel@tonic-gate 910*0Sstevel@tonic-gateibmxl|IBM Proprinter XL; 5:6 aspect ratio; low resolution, 911*0Sstevel@tonic-gate 912*0Sstevel@tonic-gate cols#136, 913*0Sstevel@tonic-gate is3=\EX\001\210, 914*0Sstevel@tonic-gate use=ibmxl+basic, use=ibmxl+low+5x6, use=ibmc+color, 915*0Sstevel@tonic-gate 916*0Sstevel@tonic-gateibmxl-1x1|IBM Proprinter XL in AGM; 1:1 aspect ratio; low resolution, 917*0Sstevel@tonic-gate 918*0Sstevel@tonic-gate cols#136, 919*0Sstevel@tonic-gate is3=\EX\001\210, 920*0Sstevel@tonic-gate use=ibmxlagm+basic, use=ibmxl+low+1x1, use=ibmc+color, 921*0Sstevel@tonic-gate 922*0Sstevel@tonic-gateibmxl-1x1-hi|IBM Proprinter XL in AGM; 1:1 aspect ratio; high resolution, 923*0Sstevel@tonic-gate 924*0Sstevel@tonic-gate cols#136, 925*0Sstevel@tonic-gate is3=\EX\001\210, 926*0Sstevel@tonic-gate use=ibmxlagm+basic, use=ibmxl+high+1x1, use=ibmc+color, 927*0Sstevel@tonic-gate 928*0Sstevel@tonic-gateibmxl-80|IBM Proprinter XL; 5:6 aspect ratio; low resolution; 80-col, 929*0Sstevel@tonic-gate 930*0Sstevel@tonic-gate use=ibmxl+basic, use=ibmxl+low+5x6, use=ibmc+color, 931*0Sstevel@tonic-gate 932*0Sstevel@tonic-gateibmxl-1x1-80|IBM Proprinter XL in AGM; 1:1 aspect ratio; low res; 80-col, 933*0Sstevel@tonic-gate 934*0Sstevel@tonic-gate use=ibmxlagm+basic, use=ibmxl+low+1x1, use=ibmc+color, 935*0Sstevel@tonic-gate 936*0Sstevel@tonic-gateibmxl-1x1-hi80|IBM Proprinter XL in AGM; 1:1 aspect ratio; high res; 80-col, 937*0Sstevel@tonic-gate 938*0Sstevel@tonic-gate use=ibmxlagm+basic, use=ibmxl+high+1x1, use=ibmc+color, 939*0Sstevel@tonic-gate 940*0Sstevel@tonic-gate############################################################## 941*0Sstevel@tonic-gate# 942*0Sstevel@tonic-gate# HP plotter: 943*0Sstevel@tonic-gate# 944*0Sstevel@tonic-gate 945*0Sstevel@tonic-gate7550|hp7550|HP7550|Hewlett Packard 7550A, 946*0Sstevel@tonic-gate bufsz#5000, 947*0Sstevel@tonic-gate is2=.@5000;2:.I81;;17:.NO;19:.P;1:.(, 948