home *** CD-ROM | disk | FTP | other *** search
- From: clewis@ecicrl.UUCP (Chris Lewis)
- Newsgroups: comp.sources.bugs,alt.sources,comp.text
- Subject: Psroff 2.0 Patch 3
- Message-ID: <882@ecicrl.UUCP>
- Date: 12 Oct 90 19:42:42 GMT
-
- Archive-name: psroff2.0/Patch.03
- Submitted-by: clewis@ecicrl.uucp
-
- (Did it work Peter? ;-)
-
- This is official patch 03 for Psroff 2.0.
- Please apply it by:
- cd <psroff source directory>
- patch -N -p < <this file>
-
- Then rebuild all of psroff.
-
- Amongst some minor bug fixes, this patch introduces some Ditroff drawing
- emulation stuff. If you pipe ditroff source through "catconv"
- and then into psroff, psroff will attempt to emulate the \D drawing
- codes. Eg:
-
- pic foo | catconv | psroff
-
- For this to work, INSPECIAL should be defined in defs.h, and you have to
- have Perl to run catconv (probably R3).
-
- Notes:
- - splines (\D'~) aren't implemented for postscript
- - nothing is implemented for HPPCL
- - ditroff output is completely supported (eg: tpscript).
- - This hasn't been tested very well and some \D'...'
- may fool "catconv". Further, beyond a certain complexity,
- the backend (troff2ps) misses some of the sequences....
- Simple PIC stuff appears to work, manual \D'...' do too.
-
- Don't bother telling me that catconv/ditroff drawing code doesn't
- work completely - I know that, but fixes and code would be very
- welcome - eg: postscript spline code or more reliable special
- sequence recognition.
-
- It's hard for me to work on this because I have no access to ANY
- printers at the moment.
-
- Followups have been directed to comp.text because I don't get
- c.s.b or a.s at the moment.
-
- ./lib/ps.lib Drawing code assists
- ./README Slight fixups
- ./debug.c bcopy fix.
- ./ps.c drawing code.
- ./utils/pk2sfp.c standalone compile (released in alt.sources)
- ./utils/psxlate.c so compilers with "const" strings don't die.
- ./utils/catconv.S new utility (see above)
- ./defs.h PL3, drawing code, BCOPYLIB
- ./dt.c drawing code
- ./dt.h drawing code
- ./ps.h drawing code
- ./psroff.S accidentally hard-coded /usr/lib/font fix.
-
- *** /tmp/PATCHold/./lib/ps.lib Fri Oct 12 14:32:47 1990
- --- ./lib/ps.lib Fri Oct 12 14:32:49 1990
- ***************
- *** 9,15 ****
- % Module: ps.lib
- % Author: Chris Lewis
- % Specs: Predefinitions for PostScript
- ! %ident @(#)ps.lib: 2.1 Copyright 90/07/18 16:52:37 Chris Lewis"
-
- /Y { 3 1 roll dup /CurY exch def moveto show } bind def
- /X { exch CurY moveto show } bind def
- --- 9,15 ----
- % Module: ps.lib
- % Author: Chris Lewis
- % Specs: Predefinitions for PostScript
- ! %ident @(#)ps.lib: 2.2 Copyright 90/10/12 13:15:42 Chris Lewis"
-
- /Y { 3 1 roll dup /CurY exch def moveto show } bind def
- /X { exch CurY moveto show } bind def
- ***************
- *** 405,410 ****
- --- 405,444 ----
- } def end
- /BracketFont BracketFontDict definefont pop
-
- + /Ellipse {
- + /Yaxis exch 2 div def
- + /Xaxis exch 2 div def
- + currentpoint exch Xaxis add exch
- + /savematrix matrix currentmatrix def
- + translate
- + Xaxis Yaxis scale
- + 1 0 moveto
- + 0 0 1 0 360 arc
- + savematrix setmatrix
- + %currentpoint exch Xaxis 2 mul add exch moveto
- + } bind def
- +
- + /Arc {
- + /eY exch def
- + /eX exch def
- + /cY exch def
- + /cX exch def
- + currentpoint cY add exch cX add exch % center x y
- + cY dup mul cX dup mul add sqrt % radius
- + cY neg cX neg atan % ang1
- + eY eX atan % ang2
- + % 5 copy
- + % ( ) cvs print
- + % ( ) print
- + % ( ) cvs print
- + % ( ) print
- + % ( ) cvs print
- + % ( ) print
- + % ( ) cvs print
- + % ( ) print
- + % ( ) cvs print
- + arc
- + } bind def
-
- % This macro is invoked by ShowPage to display the current form.
- % Usually redefined to point at a form loaded by an include
- *** /tmp/PATCHold/./README Fri Oct 12 14:33:00 1990
- --- ./README Fri Oct 12 14:33:03 1990
- ***************
- *** 1,4 ****
- ! PSROFF RELEASE 2.0 README 2.1 90/07/18
-
- May 14, 1990
- Chris Lewis
- --- 1,4 ----
- ! PSROFF RELEASE 2.0 README 2.2 90/08/30
-
- May 14, 1990
- Chris Lewis
- ***************
- *** 319,331 ****
- .sR. Further, ".tm" has been redefined to make use of the
- .sR facility.
-
- ! - troff2 has 8-font troff support, but:
-
- a) it's never been tested.
- b) I'm no longer convinced that the cat.5 man page is
- correct on how the decoding works.
-
- ! - troff2 has BSDHACK support (one of the tilt opcodes being
- replaced by an opcode to multiply the next vertical motion
- by 64), but this has not been tested. I never heard of it
- before til I saw it in Froyen's troff2lj source. This cannot
- --- 319,331 ----
- .sR. Further, ".tm" has been redefined to make use of the
- .sR facility.
-
- ! - psroff has 8-font troff support, but:
-
- a) it's never been tested.
- b) I'm no longer convinced that the cat.5 man page is
- correct on how the decoding works.
-
- ! - psroff has BSDHACK support (one of the tilt opcodes being
- replaced by an opcode to multiply the next vertical motion
- by 64), but this has not been tested. I never heard of it
- before til I saw it in Froyen's troff2lj source. This cannot
- ***************
- *** 391,397 ****
- With Laserjet driving:
-
- MDLF max # downloaded fonts supported per page.
- ! PRELOAD # fonts statically downloaded
- SFP enables SFP's with incremental font downloading.
- Needs INCR.
- INCR enable incremental font downloading. Needs PARTIAL.
- --- 391,398 ----
- With Laserjet driving:
-
- MDLF max # downloaded fonts supported per page.
- ! LJ+ have this as 16. Later models support more.
- ! PRELOAD # fonts statically downloaded.
- SFP enables SFP's with incremental font downloading.
- Needs INCR.
- INCR enable incremental font downloading. Needs PARTIAL.
- ***************
- *** 567,573 ****
- The most important thing to remember is that you cannot extend
- the CAT's character sets without modifying troff - unlike ditroff
- where you can add them by changing the makedev files. This
- ! is how you do install overrides:
-
- - Put in a map override in the appropriate *.fonts file that
- emits the character you want in place of a character you
- --- 568,574 ----
- The most important thing to remember is that you cannot extend
- the CAT's character sets without modifying troff - unlike ditroff
- where you can add them by changing the makedev files. This
- ! is how you do overrides:
-
- - Put in a map override in the appropriate *.fonts file that
- emits the character you want in place of a character you
- ***************
- *** 582,588 ****
-
- <troffchar> N|S|n <sequence> <x adjust> <y adjust> <scale>
-
- ! x adjust, y adjust, scale default to 0, 0 and 0 respectively.
- x and y adjust are multiplied by .01, then the pointsize
- and of the output driver to give the shift factor in
- 1/resolution units. Scale allows you to change the size
- --- 583,589 ----
-
- <troffchar> N|S|n <sequence> <x adjust> <y adjust> <scale>
-
- ! x adjust, y adjust, scale default to 0, 0 and 100 respectively.
- x and y adjust are multiplied by .01, then the pointsize
- and of the output driver to give the shift factor in
- 1/resolution units. Scale allows you to change the size
- *** /tmp/PATCHold/./debug.c Fri Oct 12 14:33:18 1990
- --- ./debug.c Fri Oct 12 14:33:19 1990
- ***************
- *** 2,8 ****
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)debug.c: 2.2 Copyright 90/08/08 13:14:09 Chris Lewis";
- #endif
-
- #ifdef DEBUG
- --- 2,8 ----
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)debug.c: 2.3 Copyright 90/10/01 14:41:07 Chris Lewis";
- #endif
-
- #ifdef DEBUG
- ***************
- *** 115,132 ****
- }
-
- #ifdef BCOPY
- /* "slowish" routines when you don't have memcpy and friends
- */
- bcopy(from, to, len)
- register char *from, *to;
- ! register int n; {
- ! while(n--)
- *to++ = *from++;
- }
- bzero(array, len)
- register char *array;
- ! register int len; {
- ! while(n--)
- *array++ = '\0';
- }
- #endif
- --- 115,137 ----
- }
-
- #ifdef BCOPY
- + #ifndef BCOPYLIB
- /* "slowish" routines when you don't have memcpy and friends
- */
- bcopy(from, to, len)
- register char *from, *to;
- ! register int len;
- ! {
- ! while(len--)
- *to++ = *from++;
- }
- +
- bzero(array, len)
- register char *array;
- ! register int len;
- ! {
- ! while(len--)
- *array++ = '\0';
- }
- + #endif BCOPYLIB
- #endif
- *** /tmp/PATCHold/./ps.c Fri Oct 12 14:33:35 1990
- --- ./ps.c Fri Oct 12 14:33:37 1990
- ***************
- *** 18,24 ****
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)ps.c: 2.1 Copyright 90/07/18 16:47:36 Chris Lewis";
- #endif
-
- /* ps.c will generate some additional "print" commands to cause
- --- 18,24 ----
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)ps.c: 2.2 Copyright 90/10/12 13:09:32 Chris Lewis";
- #endif
-
- /* ps.c will generate some additional "print" commands to cause
- ***************
- *** 358,363 ****
- --- 358,365 ----
- }
- }
-
- + int indraw = 0;
- +
- psChar(x, y, font, points, troffChar, sequence)
- int x, y;
- int font, points, troffChar;
- ***************
- *** 370,375 ****
- --- 372,398 ----
- doPageStart();
- }
-
- + if (font < 0) {
- + #ifdef TRY
- + if (!indraw) {
- + #endif
- + printf("newpath\n");
- + emitnum(nx);
- + putchar(' ');
- + emitnum(ny);
- + printf(" moveto\n");
- + indraw = 1;
- + #ifdef TRY
- + }
- + #endif
- + return;
- + #ifdef TRY
- + } else if (indraw) {
- + printf("stroke\n");
- + indraw = 0;
- + #endif
- + }
- +
- charCount++;
-
- DBP((D_BEND,"BEFORE (troffChar,x,y,font,points) = (%d,%d,%d,%d,%d)\n",
- ***************
- *** 556,559 ****
- --- 579,676 ----
- #endif
- }
-
- + #ifdef INSPECIAL
- + psDraw(origX, origY, s)
- + int origX, origY;
- + register char *s; {
- + register int opcode, ctindex = 0, temp, neg;
- + /*static int curDX = -1, curDY = -1;*/
- + short int numbers[100];
- +
- + DBP((D_CAT, "psDraw: (%d,%d): %s\n", origX, origY, s));
- + /* Special invocation to get the newpath/moveto done */
- + psChar(origX, origY, -1, -1, (char*) NULL, (char*) NULL);
- + while(*s && isspace(*s)) s++;
- + opcode = *s;
- + neg = 1;
- + for (;*s;s++) {
- + if (isspace(*s))
- + continue;
- + else if (*s == '\\')
- + s += 3;
- + else if (*s == '-')
- + neg = -1;
- + else if (!isdigit(*s))
- + continue;
- + else {
- + temp = *s - '0';
- + while(isdigit(*(s+1)))
- + temp = temp * 10 + (*++s - '0');
- + numbers[ctindex++] = neg * temp;
- + neg = 1;
- + }
- + }
- + switch(opcode) {
- + case 'l':
- + DBP((D_CAT, "drawline: %d, %d\n", numbers[0], numbers[1]));
- + emitnum((int) numbers[0]);
- + putchar(' ');
- + emitnum((int) -numbers[1]);
- + printf(" rlineto\n");
- + break;
- + case 'a':
- + for (temp = 0; temp < 4; temp++) {
- + emitnum((int) ((temp % 2) ? -numbers[temp]: numbers[temp]));
- + putchar(' ');
- + }
- + printf("Arc\n");
- + break;
- + case 'c':
- + numbers[1] = numbers[0];
- + case 'e':
- + DBP((D_CAT, "drawellipse: %d, %d\n", numbers[0], numbers[1]));
- + emitnum((int) numbers[0]);
- + putchar(' ');
- + emitnum((int) numbers[1]);
- + printf(" Ellipse\n");
- + break;
- + case '~':
- + if (ctindex < 4) {
- + fprintf(stderr, "%s: too few points to spline: %s\n",
- + progname, s);
- + break;
- + }
- + fprintf(stderr, "%s: Don't support splines yet\n", progname);
- + /* Some of the following is inspired from tpscript.
- + First convert to RELATIVE to the starting point.
- + Further, There's a bug in PIC that returns negatively one
- + unit LESS than it went forward - fudge it here */
- + for (temp = 2; temp < ctindex; temp++) {
- + if (numbers[temp] < 0)
- + numbers[temp]--;
- + numbers[temp] += numbers[temp-2];
- + }
- + if (ctindex == 4) {
- + emitnum((int) numbers[0] / 2);
- + putchar(' ');
- + emitnum((int) -numbers[1] / 2);
- + putchar(' ');
- + emitnum((int) (numbers[0] + numbers[2]) / 2);
- + putchar(' ');
- + emitnum((int) -(numbers[1] + numbers[3])/ 2);
- + putchar(' ');
- + emitnum((int) numbers[2]);
- + putchar(' ');
- + emitnum((int) -numbers[3]);
- + printf(" rcurveto\n");
- + }
- + break;
- + default:
- + fprintf(stderr, "%s: invalid draw code %c\n", progname, opcode);
- + indraw = 0;
- + break;
- + }
- + printf("stroke\n");
- + }
- + #endif
- #endif /* PS */
- *** /tmp/PATCHold/./utils/pk2sfp.c Fri Oct 12 14:33:49 1990
- --- ./utils/pk2sfp.c Fri Oct 12 14:33:50 1990
- ***************
- *** 1,4 ****
- ! /* Copyright 1985, 1986, 1987, 1988 90/07/18 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- --- 1,4 ----
- ! /* Copyright 1985, 1986, 1987, 1988 90/09/17 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- ***************
- *** 13,19 ****
-
- #ifndef lint
- static char SCCSID[] =
- ! "@(#)pk2sfp.c 2.1 Copyright 90/07/18 16:49:44 Chris Lewis";
- #endif
-
- #include "defs.h"
- --- 13,19 ----
-
- #ifndef lint
- static char SCCSID[] =
- ! "@(#)pk2sfp.c 2.2 Copyright 90/09/17 10:50:03 Chris Lewis";
- #endif
-
- #include "defs.h"
- ***************
- *** 43,48 ****
- --- 43,49 ----
-
- char *progname;
-
- + #ifdef PARTIAL
- extern struct enctab encNormal[], encSymbol[];
-
- needchar(font, character)
- ***************
- *** 67,72 ****
- --- 68,80 ----
-
- return(0);
- }
- + #else
- + needchar(font, character)
- + int font;
- + long character; {
- + return(1);
- + }
- + #endif
-
- main(argc, argv)
- int argc;
- *** /tmp/PATCHold/./utils/psxlate.c Fri Oct 12 14:33:57 1990
- --- ./utils/psxlate.c Fri Oct 12 14:33:58 1990
- ***************
- *** 13,19 ****
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)psxlate.c: 2.1 Copyright 90/07/18 16:49:52 Chris Lewis";
- #endif
-
- #include "defs.h"
- --- 13,19 ----
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)psxlate.c: 2.2 Copyright 90/10/12 13:12:11 Chris Lewis";
- #endif
-
- #include "defs.h"
- ***************
- *** 39,45 ****
- struct headers *comments;
- } pageidx[MAXPAGE];
-
- ! char *tmp = "/tmp/psxXXXXXX";
- int page = 0;
- char *progname;
- int debug, verbose;
- --- 39,45 ----
- struct headers *comments;
- } pageidx[MAXPAGE];
-
- ! char tmp[] = {"/tmp/psxXXXXXX"};
- int page = 0;
- char *progname;
- int debug, verbose;
- *** /tmp/PATCHold/./utils/catconv.S Fri Oct 12 14:34:06 1990
- --- ./utils/catconv.S Fri Oct 12 14:34:12 1990
- ***************
- *** 0 ****
- --- 1,89 ----
- + #! /usr/lbin/perl
- + eval "exec /usr/lbin/perl -S $0 $*"
- + if $running_under_some_shell;
- + # This does a very simpleminded conversion of ditroff-only-isms
- + # (such as graphics) into something handleable by psroff.
- + # Copyright 1990 Chris Lewis, All Rights Reserved.
- + # You can do anything you want with this provided that it is
- + # not for profit and this notice remains intact.
- + # 1.1 90/10/12
- + $inpic = 0;
- + print(".de lf\n");
- + print(".mk\n");
- + print("..\n");
- +
- + while($line = <STDIN>) {
- + chop($line);
- + if ($line =~ /^\.PS/) {
- + $inpic = 1;
- + print "$line\n";
- + next;
- + }
- + if ($line =~ /^\.PE/) {
- + $inpic = 0;
- + print "$line\n";
- + next;
- + }
- + if ($inpic && ($line eq '.sp -1')) {
- + printf(".rt\n");
- + next;
- + }
- + if ($line =~ /\\D'/) {
- + $newline = do process($line);
- + print "$newline\n";
- + } else {
- + print "$line\n";
- + }
- + }
- +
- + sub process {
- + local($line, $newline, $pre, $opcode, $arglist) = ($_[0]);
- + # printf("in process: $line\n");
- + $predefs = '';
- + $index = 0;
- + while($line =~ /\\D'\s*(.)\s*([^']+)'/) {
- + ($pre, $line, $opcode, $arglist) = ($`, $', $1, $2);
- + # print("pre: $pre\nline: $line\nopcode: $opcode\narglist: $arglist\n");
- + $newline .= $pre;
- + $newargs = '';
- + $newy = '';
- + $newx = '';
- + @args = split(/[ \t]+/, $arglist);
- + for ($i = 0; $i <= $#args; $i++) {
- + $arg = $args[$i];
- + if ($arg =~ '-') {
- + $arg = "0$arg";
- + }
- + $predefs .= ".nr .$index $arg\n";
- + $newargs .= "\\(ts\\n(.$index";
- + if ($opcode eq '~') {
- + if ($i % 2) {
- + $newy .= "+\\n(.$index";
- + } else {
- + $newx .= "+\\n(.$index";
- + }
- + }
- + $index++;
- + }
- + $newline .= "\\ka\\o'\\(bs\\(bs'D$opcode$newargs\\(bs\\h'|\\nau";
- + # Reposition...
- + if ($opcode eq 'l') {
- + $newline .= sprintf("+\\n(.%du'\\v'\\n(.%du'",
- + $index - 2, $index -1);
- + } elsif ($opcode eq 'c') {
- + $newline .= sprintf("+\\n(.%du'", $index - 1);
- + } elsif ($opcode eq 'e') {
- + $newline .= sprintf("+\\n(.%du'", $index - 2);
- + } elsif ($opcode eq '~') {
- + $newy = substr($newy, 1, 9999);
- + $newline .= "$newx'\\v'$newy'";
- + } else {
- + $newline .= "'";
- + }
- + if ($line) {
- + $newline .= "\\\n";
- + }
- + }
- + $newline .= $line;
- + return("$predefs$newline");
- + }
- *** /tmp/PATCHold/./defs.h Fri Oct 12 14:34:20 1990
- --- ./defs.h Fri Oct 12 14:34:22 1990
- ***************
- *** 1,4 ****
- ! /* Copyright 1988, 1989 15:04:07 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- --- 1,4 ----
- ! /* Copyright 1988, 1989 13:38:22 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- ***************
- *** 6,18 ****
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: defs.h 2.3 90/08/29 15:04:07
- Author: Chris Lewis
- Specs: Main header file - contains some customization
- */
-
- /* Official Release and Patch level: */
- ! #define T2VERSION "@(#)PSROFF Copyright 90/08/29 Chris Lewis - R2 P2"
-
- #ifndef LIBDIR
- /* Don't touch this */
- --- 6,18 ----
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: defs.h 2.7 90/10/12 13:38:22
- Author: Chris Lewis
- Specs: Main header file - contains some customization
- */
-
- /* Official Release and Patch level: */
- ! #define T2VERSION "@(#)PSROFF Copyright 90/10/12 Chris Lewis - R2 P3"
-
- #ifndef LIBDIR
- /* Don't touch this */
- ***************
- *** 30,35 ****
- --- 30,38 ----
- #undef BCOPY /* Define if you don't have memcpy and friends - eg:
- oldish BSD systems */
-
- + #undef BCOPYLIB /* Define if BCOPY is defined and you have */
- + /* a bcopy in the library */
- +
- #undef UNSIGNEDCHAR /* Define if chars are unsigned on your machine */
-
- /* The name of a routine that can be called thusly:
- ***************
- *** 45,50 ****
- --- 48,56 ----
-
- #define VFPRINTF vfprintf
-
- + /* If you have the stand-alone pk2sfp distribution, do not touch
- + anything from here on */
- +
- /* Font width file configuration:
-
- - If HEADERSIZE defined, use that many bytes as a prefix to the
- ***************
- *** 157,162 ****
- --- 163,170 ----
- #define DEFYOFF 0 /* Default page vertical offset. See README/TROUBLE/
- psroff(1) -Y options too */
-
- + #define INSPECIAL /* enables ditroff graphics capability */
- +
- /* Edit no more .... */
-
- #define MAXDLFONTS (MDLF - PRELOAD) /* # fonts troff2ps can download */
- ***************
- *** 375,377 ****
- --- 383,390 ----
- extern char *mustmalloc();
-
- extern char *version, *shortversion;
- +
- + #ifdef ALONE
- + #undef PARTIAL
- + #undef INCR
- + #endif
- *** /tmp/PATCHold/./dt.c Fri Oct 12 14:34:31 1990
- --- ./dt.c Fri Oct 12 14:34:33 1990
- ***************
- *** 15,21 ****
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)dt.c: 2.1 Copyright 90/07/18 16:51:27 Chris Lewis";
- #endif
-
- /* These two tables are always included so that we have the
- --- 15,21 ----
-
- #ifndef lint
- static char SCCSid[] =
- ! "@(#)dt.c: 2.2 Copyright 90/10/12 13:09:25 Chris Lewis";
- #endif
-
- /* These two tables are always included so that we have the
- ***************
- *** 413,418 ****
- --- 413,419 ----
- else
- printf("c%s\n", sequence);
- }
- + lastXPos = nx;
- #ifdef NOTYET
- }
- #endif
- ***************
- *** 466,470 ****
- --- 467,502 ----
- printf("x trailer\n");
- printf("x stop\n");
- }
- +
- + #ifdef INSPECIAL
- + dtDraw(origX, origY, s)
- + int origX, origY;
- + register char *s; {
- + register int temp, t2;
- + DBP((D_CAT, "dtDraw: (%d,%d): %s\n", origX, origY, s));
- + printf("H%d\n", TROFF2DTX(origX));
- + printf("V%d\n", TROFF2DTY(origY));
- + putchar('D');
- + putchar(*s);
- + s++;
- + /* We just pass these thru, scaling them to output resolution */
- + for (;*s;s++) {
- + if (isspace(*s))
- + putchar(' ');
- + else if (!isdigit(*s))
- + putchar(*s);
- + else {
- + temp = *s - '0';
- + while(isdigit(*(s+1))) {
- + temp = temp * 10 + (*++s - '0');
- + }
- + t2 = temp * dtresolution / TROFFRESOLUTION;
- + DBP((D_CAT, "dtDraw (scale): %d -> %d\n", temp, t2));
- + printf("%d", t2);
- + }
- + }
- + putchar('\n');
- + }
- + #endif
-
- #endif /* DT */
- *** /tmp/PATCHold/./dt.h Fri Oct 12 14:34:41 1990
- --- ./dt.h Fri Oct 12 14:34:42 1990
- ***************
- *** 1,4 ****
- ! /* Copyright 1985, 1986, 1987, 1988 16:51:29 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- --- 1,4 ----
- ! /* Copyright 1985, 1986, 1987, 1988 13:09:46 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- ***************
- *** 6,12 ****
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: dt.h 2.1 90/07/18
- Author: Chris Lewis
- Specs: Ditroff driver definitions
- Hacked from ps.h
- --- 6,12 ----
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: dt.h 2.2 90/10/12
- Author: Chris Lewis
- Specs: Ditroff driver definitions
- Hacked from ps.h
- ***************
- *** 21,27 ****
- /* 11" paper length */
- #define TROFF2DTY(y) ((((long) (y)+pageyoffset)*dtresolution)/TROFFRESOLUTION)
-
- ! extern int dtProlog(), dtEpilog(), dtChar(), dtPage(), dtPassthru();
-
- #ifdef DT
- extern struct troff2befont dtSymFont[], dtStdFont[];
- --- 21,27 ----
- /* 11" paper length */
- #define TROFF2DTY(y) ((((long) (y)+pageyoffset)*dtresolution)/TROFFRESOLUTION)
-
- ! extern int dtProlog(), dtEpilog(), dtChar(), dtPage(), dtPassthru(), dtDraw();
-
- #ifdef DT
- extern struct troff2befont dtSymFont[], dtStdFont[];
- *** /tmp/PATCHold/./ps.h Fri Oct 12 14:34:49 1990
- --- ./ps.h Fri Oct 12 14:34:50 1990
- ***************
- *** 1,4 ****
- ! /* Copyright 1985, 1986, 1987, 1988 16:51:42 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- --- 1,4 ----
- ! /* Copyright 1985, 1986, 1987, 1988 13:09:42 Chris Lewis
- All Rights Reserved
-
- Permission to copy and further distribute is freely given provided
- ***************
- *** 6,12 ****
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: ps.h 2.1 90/07/18
- Author: Chris Lewis
- Specs: PostScript Driver definitions
- */
- --- 6,12 ----
- sold for profit.
-
- Project: Generic Troff drivers
- ! Module: ps.h 2.2 90/10/12
- Author: Chris Lewis
- Specs: PostScript Driver definitions
- */
- ***************
- *** 30,36 ****
- #define EMITPS printf
-
- /* Entry points: */
- ! extern int psProlog(), psEpilog(), psChar(), psPage(),
- psOverlay(), psXlate();
-
- extern struct troff2befont psSymFont[], psStdFont[];
- --- 30,36 ----
- #define EMITPS printf
-
- /* Entry points: */
- ! extern int psProlog(), psEpilog(), psChar(), psPage(),psDraw(),
- psOverlay(), psXlate();
-
- extern struct troff2befont psSymFont[], psStdFont[];
- *** /tmp/PATCHold/./psroff.S Fri Oct 12 14:35:07 1990
- --- ./psroff.S Fri Oct 12 14:35:10 1990
- ***************
- *** 11,17 ****
- # Author: Chris Lewis
- # Specs: troff driver
- #
- ! #ident "@(#)psroff.sh: 2.1 Copyright 90/07/18 16:51:55 Chris Lewis"
-
- LIBDIR="%%LIBDIR%%"
- FONTDIR="%%FONTDIR%%"
- --- 11,17 ----
- # Author: Chris Lewis
- # Specs: troff driver
- #
- ! #ident "@(#)psroff.sh: 2.2 Copyright 90/10/01 14:41:16 Chris Lewis"
-
- LIBDIR="%%LIBDIR%%"
- FONTDIR="%%FONTDIR%%"
- ***************
- *** 221,227 ****
- ) >&2
- fi
-
- ! if [ -n "$widtharg" -a ! -d /usr/lib/font/$width ]
- then
- echo "$0: troff doesn't have width tables ($width) for $type printer" >&2
- echo "Please see the README and gfnttab for creating them" >&2
- --- 221,227 ----
- ) >&2
- fi
-
- ! if [ -n "$widtharg" -a ! -d %%FONTDIR%%/$width ]
- then
- echo "$0: troff doesn't have width tables ($width) for $type printer" >&2
- echo "Please see the README and gfnttab for creating them" >&2
- --
- Chris Lewis, Phone: TBA
- UUCP: uunet!utai!lsuc!ecicrl!clewis
- Moderator of the Ferret Mailing List (ferret-request@eci386)
- Psroff mailing list (psroff-request@eci386)
-