robert@longs.LANCE.ColoState.Edu (Robert D. Thompson) (06/22/91)
Thank you Matt Zufelt (cs499mz@cc.suu.edu) for sending this program back to
me. This is the grob printer I mentioned yesterday. Please read the
comments in the code before running. As I said it has been a long time
since we wrote this thing so if you have any questions, please don't expect
an immediate reply.
Hope this helps out...
-Robert
%%HP: T(3)A(R)F(.);
@ ROTATE: This program was written By Robert Craeger and Robert Thompson
@
@
@ In the hopes of being able to print GROBS that were too long to fit into
@ the 166 dot requirement of the printer, the program below was written. This
@ program will rotate a GROB and print it vertically on the IR printer that
@ so many of us wish we had. :-)
@
@ Unfortunately, this program is slow (Not *really* slow but slow
@ nevertheless) A future version is planed that will be entirely in
@ m-code. (6/21/91: sorry haven't had the time to learn M-CODE :-( )
@
@ Please send any remarks to:
@
@ robert@longs.LANCE.ColoState.Edu
@ or
@ rc943406@longs.LANCE.ColoState.Edu
@
@ REMARKS:
@ Remember to set the appropriate modes on your 48 when using
@ the old printer. OLDPRT SHOULD NOT BE ENABLED! for the old printer
@
@ PSEUDOBENCHMARK:
@ This program takes approximatly 1.5 Minutes on a 50x63 GROB
@
@ BUGS:
@ This program needs an inane amount of memory to run!
DIR
ROTATE
\<< HEX STRIP
OVER 2 / FLOOR 83 -
NEG 27 CHR 4 PICK 3
PICK + CHR + SWAP 1
SWAP
START 0 CHR +
NEXT \-> x y
str pad
\<< 8 STWS 0 x
8 / FLOOR 1 -
FOR h h 2 *
1 + \-> cnst
\<< pad y 1
- 0
FOR i
"#" str i x * 4 /
cnst + DUP 1 + SUB
+ STR\-> RR RR RR RR
B\->R CHR + -1
STEP PR1
\>> DROP
NEXT
\>>
\>>
STRIP
\<< DUP SIZE B\->R
SWAP B\->R 8 / CEIL 8
* SWAP ROT \->STR 1 3
START DUP " "
POS 1 + OVER SIZE
SUB
NEXT
\>>
END
[End of file]