open-axiom repository from github
%!IBM Personal Pageprinter (4216) Adapter Program V1.0
%%DocumentFonts: Times-Roman
%%Creator: Axiom
%%CreationDate: today
%%Pages: 1
%%processing (hard) limit: 250 pts or 500 values for the operand stack.
%%EndComments
%------------------------------- prologue -------------------------------%
%-------------------------- support procedures --------------------------%
%--------- first create user dictionary with 100 entries max ------------%
% (number can be changed to accomodate definitions) %
100 dict begin %% using 100 entries in top level dictionary
/FontHeight 12 def
/inch
{ 72 mul }
def
% yVal and hVal are necessary because the Xwindow display origin
% is at the upper left corner, while the postscript display
% origin is at the lower left hand corner.
/yVal %% get Y value -- make upper left corner origin
{ maxY sub abs } %% maxY is viewWindow height
def
/hVal %% get H value -- used for displaying title text
{ maxH sub abs } %% maxH is viewWindow height+titleWindow height
def
% loads in the font
/loadFont
{ /Times-Roman findfont FontHeight scalefont setfont }
def
% draws a rectangle with input operand:
% height
% width
% notice that this function does not "draw" or ink the rectangle.
/drawRect
{ 1 index 1 add 0 rlineto %% draw first side
0 exch 1 add neg rlineto %% draw second side
1 add neg 0 rlineto %% draw third side
closepath } %% draw fourth side
def
% create a rectangle with input operand in the view window:
% y
% x
% height
% width
% notice that this function does not "draw" or ink the rectangle.
/rectangle
{ yVal moveto %% set currentpoint for line
drawRect } %% draws the rectangle
def
% These are global variables that every draw procedure uses
% THe operand should be as follows:
% viewWindow width
% viewWindow height
% title height
/setDim
{ /maxX exch def %% width of display
/maxY exch def %% height of display
/titleH exch def %% height of title
/maxH maxY titleH add def %% height of display + title
} def
%-------------------------- major procedures --------------------------%
/title %% draws a rectangle around the title of picture
{ gsave
newpath
moveto %% lower left of title
titleH 1 add 0 exch rlineto %% draw first side
1 add 0 rlineto %% draw second side
1 add neg 0 exch rlineto
begin installGC stroke end %% draw third side
grestore }
def
/drawFrame %% draw display frame
{ gsave
newpath
maxX maxY 0 0 rectangle
begin installGC stroke end
grestore }
def
% updates the foreground color of existing graphics-context dictionary:
% foreground color
% dictionary name
/setForeground
{ /FGcolor exch put }
def
% updates the background color of existing graphics-context dictionary:
% background color
% dictionary name
/setBackground
{ /BGcolor exch put }
def
% updates the line width, line style, cap style, join style of
% existing graphics-context dictionary:
% dictionary name
% join style
% cap style
% line width
/setLineAttributes
{ begin
/JoinStyle exch def
/CapStyle exch def
/LineWidth exch def
end }
def
% creates a graphics context dictionary with the following information:
% /dictionary name
% foreground color
% background color
% line width
% cap style
% join style
% this creates different graphical contexts for different drawing functions.
/makeDict
{ 5 dict 2 copy def begin pop %% with dict name on top of stack
/FGcolor exch def %% define drawing attributes
/BGcolor exch def %% not heavily used
/LineWidth exch def
/CapStyle exch def
/JoinStyle exch def
end }
def
% makes the current dictionary attributes effective
% this function takes the values in the current dictionary to set the context
% these are the values currently being used: foreground, cap, join, and width
/installGC
{
FGcolor currentgray ne
{FGcolor setgray} if %% foreground color
CapStyle currentlinecap ne
{CapStyle setlinecap} if %% cap style
JoinStyle currentlinejoin ne
{JoinStyle setlinejoin} if %% join style
LineWidth currentlinewidth ne
{LineWidth setlinewidth} if } %% line width
def
% operand stack configuration in order to use psDrawLine:
% psDrawLine
% y0
% x0
% y1
% x1
% graphics-context dictionary
% this draws a line from (x0, y0) to (x1, y1).
/psDrawLine
{ gsave
newpath
yVal moveto
yVal lineto
begin installGC stroke end
grestore }
def
% operand stack configuration in order to use psFillArc:
% psFillArc
% y center of rectangle
% x center of rectangle
% angle2
% angle1
% width
% height
% y
% x
% graphics-context dictionary
% this draws and fills an arc whose origin is at x, y, and whose width
% and height specifies the rectangle which encases the arc.
% Origin is at upper left corner of rectangle.
% This function uses "scale" to make cricles and ellipses.
/psFillArc
{ gsave
newpath
yVal moveto
/sfactor 4 index 4 index div def
1 sfactor scale
6 5 roll %% x on top of stack
3 index 2 div add %% define x origin
6 5 roll %% y on top of stack
6 5 roll %% h on top of stack
2 div add yVal sfactor div %% define y origin
5 4 roll %% w on top of stack
2 div %% define radius
5 3 roll %% a1 a2 now on top
1 index add
arcn %% draw clockwise arc
begin installGC fill end %% fills with foreground color
grestore }
def
%-------------------------- script --------------------------%
% 1 inch 1 inch translate
mark %% mark bottom of our stack
0 0 1
1072693248 0 /globalGC1 makeDict
0 0 1
1072693248 0 /globalGC2 makeDict
0 0 1
1072693248 0 /trashGC makeDict
0 0 1
1072693248 0 /globGC makeDict
0 0 1
1072693248 0 /anotherGC makeDict
0 0 1
1072693248 0 /graphGC makeDict
0 0 1
1072693248 0 /unitGC makeDict
gsave % save graphics state for clipping path
24 259 256 setDim
maxX maxY 0 0 rectangle clip % set clip path
globalGC1 256 129 0 129 psDrawLine
globalGC1 127 259 127 0 psDrawLine
globalGC1 213 243 3 3 0 360 214 244 psFillArc
globalGC1 214 244 214 244 psDrawLine
globalGC1 213 243 3 3 0 360 214 244 psFillArc
globalGC1 214 213 214 244 psDrawLine
globalGC1 213 212 3 3 0 360 214 213 psFillArc
globalGC1 214 192 214 213 psDrawLine
globalGC1 213 191 3 3 0 360 214 192 psFillArc
globalGC1 214 171 214 192 psDrawLine
globalGC1 213 170 3 3 0 360 214 171 psFillArc
globalGC1 214 160 214 171 psDrawLine
globalGC1 213 159 3 3 0 360 214 160 psFillArc
globalGC1 214 150 214 160 psDrawLine
globalGC1 213 149 3 3 0 360 214 150 psFillArc
globalGC1 214 145 214 150 psDrawLine
globalGC1 213 144 3 3 0 360 214 145 psFillArc
globalGC1 215 139 214 145 psDrawLine
globalGC1 214 138 3 3 0 360 215 139 psFillArc
globalGC1 215 137 215 139 psDrawLine
globalGC1 214 136 3 3 0 360 215 137 psFillArc
globalGC1 216 134 215 137 psDrawLine
globalGC1 215 133 3 3 0 360 216 134 psFillArc
globalGC1 216 133 216 134 psDrawLine
globalGC1 215 132 3 3 0 360 216 133 psFillArc
globalGC1 217 132 216 133 psDrawLine
globalGC1 216 131 3 3 0 360 217 132 psFillArc
globalGC1 219 131 217 132 psDrawLine
globalGC1 218 130 3 3 0 360 219 131 psFillArc
globalGC1 221 130 219 131 psDrawLine
globalGC1 220 129 3 3 0 360 221 130 psFillArc
globalGC1 223 130 221 130 psDrawLine
globalGC1 222 129 3 3 0 360 223 130 psFillArc
globalGC1 228 129 223 130 psDrawLine
globalGC1 227 128 3 3 0 360 228 129 psFillArc
globalGC1 233 129 228 129 psDrawLine
globalGC1 232 128 3 3 0 360 233 129 psFillArc
globalGC1 238 129 233 129 psDrawLine
globalGC1 237 128 3 3 0 360 238 129 psFillArc
globalGC1 243 129 238 129 psDrawLine
globalGC1 242 128 3 3 0 360 243 129 psFillArc
globalGC1 155 243 3 3 0 360 156 244 psFillArc
globalGC1 156 244 156 244 psDrawLine
globalGC1 155 243 3 3 0 360 156 244 psFillArc
globalGC1 156 213 156 244 psDrawLine
globalGC1 155 212 3 3 0 360 156 213 psFillArc
globalGC1 156 192 156 213 psDrawLine
globalGC1 155 191 3 3 0 360 156 192 psFillArc
globalGC1 157 171 156 192 psDrawLine
globalGC1 156 170 3 3 0 360 157 171 psFillArc
globalGC1 157 160 157 171 psDrawLine
globalGC1 156 159 3 3 0 360 157 160 psFillArc
globalGC1 157 150 157 160 psDrawLine
globalGC1 156 149 3 3 0 360 157 150 psFillArc
globalGC1 157 145 157 150 psDrawLine
globalGC1 156 144 3 3 0 360 157 145 psFillArc
globalGC1 157 139 157 145 psDrawLine
globalGC1 156 138 3 3 0 360 157 139 psFillArc
globalGC1 157 137 157 139 psDrawLine
globalGC1 156 136 3 3 0 360 157 137 psFillArc
globalGC1 158 134 157 137 psDrawLine
globalGC1 157 133 3 3 0 360 158 134 psFillArc
globalGC1 159 133 158 134 psDrawLine
globalGC1 158 132 3 3 0 360 159 133 psFillArc
globalGC1 160 132 159 133 psDrawLine
globalGC1 159 131 3 3 0 360 160 132 psFillArc
globalGC1 161 131 160 132 psDrawLine
globalGC1 160 130 3 3 0 360 161 131 psFillArc
globalGC1 163 130 161 131 psDrawLine
globalGC1 162 129 3 3 0 360 163 130 psFillArc
globalGC1 166 130 163 130 psDrawLine
globalGC1 165 129 3 3 0 360 166 130 psFillArc
globalGC1 171 129 166 130 psDrawLine
globalGC1 170 128 3 3 0 360 171 129 psFillArc
globalGC1 175 129 171 129 psDrawLine
globalGC1 174 128 3 3 0 360 175 129 psFillArc
globalGC1 180 129 175 129 psDrawLine
globalGC1 179 128 3 3 0 360 180 129 psFillArc
globalGC1 185 129 180 129 psDrawLine
globalGC1 184 128 3 3 0 360 185 129 psFillArc
globalGC1 190 129 185 129 psDrawLine
globalGC1 189 128 3 3 0 360 190 129 psFillArc
globalGC1 195 129 190 129 psDrawLine
globalGC1 194 128 3 3 0 360 195 129 psFillArc
globalGC1 199 128 195 129 psDrawLine
globalGC1 198 127 3 3 0 360 199 128 psFillArc
globalGC1 204 128 199 128 psDrawLine
globalGC1 203 127 3 3 0 360 204 128 psFillArc
globalGC1 207 128 204 128 psDrawLine
globalGC1 206 127 3 3 0 360 207 128 psFillArc
globalGC1 209 127 207 128 psDrawLine
globalGC1 208 126 3 3 0 360 209 127 psFillArc
globalGC1 210 126 209 127 psDrawLine
globalGC1 209 125 3 3 0 360 210 126 psFillArc
globalGC1 211 125 210 126 psDrawLine
globalGC1 210 124 3 3 0 360 211 125 psFillArc
globalGC1 212 124 211 125 psDrawLine
globalGC1 211 123 3 3 0 360 212 124 psFillArc
globalGC1 213 121 212 124 psDrawLine
globalGC1 212 120 3 3 0 360 213 121 psFillArc
globalGC1 213 119 213 121 psDrawLine
globalGC1 212 118 3 3 0 360 213 119 psFillArc
globalGC1 213 113 213 119 psDrawLine
globalGC1 212 112 3 3 0 360 213 113 psFillArc
globalGC1 213 108 213 113 psDrawLine
globalGC1 212 107 3 3 0 360 213 108 psFillArc
globalGC1 214 98 213 108 psDrawLine
globalGC1 213 97 3 3 0 360 214 98 psFillArc
globalGC1 214 87 214 98 psDrawLine
globalGC1 213 86 3 3 0 360 214 87 psFillArc
globalGC1 214 66 214 87 psDrawLine
globalGC1 213 65 3 3 0 360 214 66 psFillArc
globalGC1 214 45 214 66 psDrawLine
globalGC1 213 44 3 3 0 360 214 45 psFillArc
globalGC1 214 14 214 45 psDrawLine
globalGC1 213 13 3 3 0 360 214 14 psFillArc
globalGC1 98 243 3 3 0 360 99 244 psFillArc
globalGC1 99 244 99 244 psDrawLine
globalGC1 98 243 3 3 0 360 99 244 psFillArc
globalGC1 99 213 99 244 psDrawLine
globalGC1 98 212 3 3 0 360 99 213 psFillArc
globalGC1 99 192 99 213 psDrawLine
globalGC1 98 191 3 3 0 360 99 192 psFillArc
globalGC1 99 171 99 192 psDrawLine
globalGC1 98 170 3 3 0 360 99 171 psFillArc
globalGC1 99 160 99 171 psDrawLine
globalGC1 98 159 3 3 0 360 99 160 psFillArc
globalGC1 99 150 99 160 psDrawLine
globalGC1 98 149 3 3 0 360 99 150 psFillArc
globalGC1 99 145 99 150 psDrawLine
globalGC1 98 144 3 3 0 360 99 145 psFillArc
globalGC1 100 139 99 145 psDrawLine
globalGC1 99 138 3 3 0 360 100 139 psFillArc
globalGC1 100 137 100 139 psDrawLine
globalGC1 99 136 3 3 0 360 100 137 psFillArc
globalGC1 101 134 100 137 psDrawLine
globalGC1 100 133 3 3 0 360 101 134 psFillArc
globalGC1 101 133 101 134 psDrawLine
globalGC1 100 132 3 3 0 360 101 133 psFillArc
globalGC1 102 132 101 133 psDrawLine
globalGC1 101 131 3 3 0 360 102 132 psFillArc
globalGC1 104 131 102 132 psDrawLine
globalGC1 103 130 3 3 0 360 104 131 psFillArc
globalGC1 106 130 104 131 psDrawLine
globalGC1 105 129 3 3 0 360 106 130 psFillArc
globalGC1 108 130 106 130 psDrawLine
globalGC1 107 129 3 3 0 360 108 130 psFillArc
globalGC1 113 129 108 130 psDrawLine
globalGC1 112 128 3 3 0 360 113 129 psFillArc
globalGC1 118 129 113 129 psDrawLine
globalGC1 117 128 3 3 0 360 118 129 psFillArc
globalGC1 123 129 118 129 psDrawLine
globalGC1 122 128 3 3 0 360 123 129 psFillArc
globalGC1 127 129 123 129 psDrawLine
globalGC1 126 128 3 3 0 360 127 129 psFillArc
globalGC1 132 129 127 129 psDrawLine
globalGC1 131 128 3 3 0 360 132 129 psFillArc
globalGC1 137 129 132 129 psDrawLine
globalGC1 136 128 3 3 0 360 137 129 psFillArc
globalGC1 142 128 137 129 psDrawLine
globalGC1 141 127 3 3 0 360 142 128 psFillArc
globalGC1 147 128 142 128 psDrawLine
globalGC1 146 127 3 3 0 360 147 128 psFillArc
globalGC1 149 128 147 128 psDrawLine
globalGC1 148 127 3 3 0 360 149 128 psFillArc
globalGC1 151 127 149 128 psDrawLine
globalGC1 150 126 3 3 0 360 151 127 psFillArc
globalGC1 153 126 151 127 psDrawLine
globalGC1 152 125 3 3 0 360 153 126 psFillArc
globalGC1 154 125 153 126 psDrawLine
globalGC1 153 124 3 3 0 360 154 125 psFillArc
globalGC1 154 124 154 125 psDrawLine
globalGC1 153 123 3 3 0 360 154 124 psFillArc
globalGC1 155 121 154 124 psDrawLine
globalGC1 154 120 3 3 0 360 155 121 psFillArc
globalGC1 155 119 155 121 psDrawLine
globalGC1 154 118 3 3 0 360 155 119 psFillArc
globalGC1 156 113 155 119 psDrawLine
globalGC1 155 112 3 3 0 360 156 113 psFillArc
globalGC1 156 108 156 113 psDrawLine
globalGC1 155 107 3 3 0 360 156 108 psFillArc
globalGC1 156 98 156 108 psDrawLine
globalGC1 155 97 3 3 0 360 156 98 psFillArc
globalGC1 156 87 156 98 psDrawLine
globalGC1 155 86 3 3 0 360 156 87 psFillArc
globalGC1 156 66 156 87 psDrawLine
globalGC1 155 65 3 3 0 360 156 66 psFillArc
globalGC1 156 45 156 66 psDrawLine
globalGC1 155 44 3 3 0 360 156 45 psFillArc
globalGC1 156 14 156 45 psDrawLine
globalGC1 155 13 3 3 0 360 156 14 psFillArc
globalGC1 40 243 3 3 0 360 41 244 psFillArc
globalGC1 41 244 41 244 psDrawLine
globalGC1 40 243 3 3 0 360 41 244 psFillArc
globalGC1 41 213 41 244 psDrawLine
globalGC1 40 212 3 3 0 360 41 213 psFillArc
globalGC1 41 192 41 213 psDrawLine
globalGC1 40 191 3 3 0 360 41 192 psFillArc
globalGC1 41 171 41 192 psDrawLine
globalGC1 40 170 3 3 0 360 41 171 psFillArc
globalGC1 41 160 41 171 psDrawLine
globalGC1 40 159 3 3 0 360 41 160 psFillArc
globalGC1 42 150 41 160 psDrawLine
globalGC1 41 149 3 3 0 360 42 150 psFillArc
globalGC1 42 145 42 150 psDrawLine
globalGC1 41 144 3 3 0 360 42 145 psFillArc
globalGC1 42 139 42 145 psDrawLine
globalGC1 41 138 3 3 0 360 42 139 psFillArc
globalGC1 42 137 42 139 psDrawLine
globalGC1 41 136 3 3 0 360 42 137 psFillArc
globalGC1 43 134 42 137 psDrawLine
globalGC1 42 133 3 3 0 360 43 134 psFillArc
globalGC1 44 133 43 134 psDrawLine
globalGC1 43 132 3 3 0 360 44 133 psFillArc
globalGC1 45 132 44 133 psDrawLine
globalGC1 44 131 3 3 0 360 45 132 psFillArc
globalGC1 46 131 45 132 psDrawLine
globalGC1 45 130 3 3 0 360 46 131 psFillArc
globalGC1 48 130 46 131 psDrawLine
globalGC1 47 129 3 3 0 360 48 130 psFillArc
globalGC1 51 130 48 130 psDrawLine
globalGC1 50 129 3 3 0 360 51 130 psFillArc
globalGC1 56 129 51 130 psDrawLine
globalGC1 55 128 3 3 0 360 56 129 psFillArc
globalGC1 60 129 56 129 psDrawLine
globalGC1 59 128 3 3 0 360 60 129 psFillArc
globalGC1 65 129 60 129 psDrawLine
globalGC1 64 128 3 3 0 360 65 129 psFillArc
globalGC1 70 129 65 129 psDrawLine
globalGC1 69 128 3 3 0 360 70 129 psFillArc
globalGC1 75 129 70 129 psDrawLine
globalGC1 74 128 3 3 0 360 75 129 psFillArc
globalGC1 80 129 75 129 psDrawLine
globalGC1 79 128 3 3 0 360 80 129 psFillArc
globalGC1 84 128 80 129 psDrawLine
globalGC1 83 127 3 3 0 360 84 128 psFillArc
globalGC1 89 128 84 128 psDrawLine
globalGC1 88 127 3 3 0 360 89 128 psFillArc
globalGC1 92 128 89 128 psDrawLine
globalGC1 91 127 3 3 0 360 92 128 psFillArc
globalGC1 94 127 92 128 psDrawLine
globalGC1 93 126 3 3 0 360 94 127 psFillArc
globalGC1 95 126 94 127 psDrawLine
globalGC1 94 125 3 3 0 360 95 126 psFillArc
globalGC1 96 125 95 126 psDrawLine
globalGC1 95 124 3 3 0 360 96 125 psFillArc
globalGC1 97 124 96 125 psDrawLine
globalGC1 96 123 3 3 0 360 97 124 psFillArc
globalGC1 97 121 97 124 psDrawLine
globalGC1 96 120 3 3 0 360 97 121 psFillArc
globalGC1 98 119 97 121 psDrawLine
globalGC1 97 118 3 3 0 360 98 119 psFillArc
globalGC1 98 113 98 119 psDrawLine
globalGC1 97 112 3 3 0 360 98 113 psFillArc
globalGC1 98 108 98 113 psDrawLine
globalGC1 97 107 3 3 0 360 98 108 psFillArc
globalGC1 98 98 98 108 psDrawLine
globalGC1 97 97 3 3 0 360 98 98 psFillArc
globalGC1 98 87 98 98 psDrawLine
globalGC1 97 86 3 3 0 360 98 87 psFillArc
globalGC1 99 66 98 87 psDrawLine
globalGC1 98 65 3 3 0 360 99 66 psFillArc
globalGC1 99 45 99 66 psDrawLine
globalGC1 98 44 3 3 0 360 99 45 psFillArc
globalGC1 99 14 99 45 psDrawLine
globalGC1 98 13 3 3 0 360 99 14 psFillArc
globalGC1 11 128 3 3 0 360 12 129 psFillArc
globalGC1 12 129 12 129 psDrawLine
globalGC1 11 128 3 3 0 360 12 129 psFillArc
globalGC1 17 129 12 129 psDrawLine
globalGC1 16 128 3 3 0 360 17 129 psFillArc
globalGC1 22 129 17 129 psDrawLine
globalGC1 21 128 3 3 0 360 22 129 psFillArc
globalGC1 27 128 22 129 psDrawLine
globalGC1 26 127 3 3 0 360 27 128 psFillArc
globalGC1 32 128 27 128 psDrawLine
globalGC1 31 127 3 3 0 360 32 128 psFillArc
globalGC1 34 128 32 128 psDrawLine
globalGC1 33 127 3 3 0 360 34 128 psFillArc
globalGC1 36 127 34 128 psDrawLine
globalGC1 35 126 3 3 0 360 36 127 psFillArc
globalGC1 38 126 36 127 psDrawLine
globalGC1 37 125 3 3 0 360 38 126 psFillArc
globalGC1 39 125 38 126 psDrawLine
globalGC1 38 124 3 3 0 360 39 125 psFillArc
globalGC1 39 124 39 125 psDrawLine
globalGC1 38 123 3 3 0 360 39 124 psFillArc
globalGC1 40 121 39 124 psDrawLine
globalGC1 39 120 3 3 0 360 40 121 psFillArc
globalGC1 40 119 40 121 psDrawLine
globalGC1 39 118 3 3 0 360 40 119 psFillArc
globalGC1 41 113 40 119 psDrawLine
globalGC1 40 112 3 3 0 360 41 113 psFillArc
globalGC1 41 108 41 113 psDrawLine
globalGC1 40 107 3 3 0 360 41 108 psFillArc
globalGC1 41 98 41 108 psDrawLine
globalGC1 40 97 3 3 0 360 41 98 psFillArc
globalGC1 41 87 41 98 psDrawLine
globalGC1 40 86 3 3 0 360 41 87 psFillArc
globalGC1 41 66 41 87 psDrawLine
globalGC1 40 65 3 3 0 360 41 66 psFillArc
globalGC1 41 45 41 66 psDrawLine
globalGC1 40 44 3 3 0 360 41 45 psFillArc
globalGC1 41 14 41 45 psDrawLine
globalGC1 40 13 3 3 0 360 41 14 psFillArc
grestore % restore graphics state
cleartomark %% clearing operand stack
end %% pops mainDict from dictionary stack
showpage
%-------------------------- end --------------------------%