@Marker(Device, LPT) @Comment{ Device definition file for standard ASCII line printers, which have underscore characters and are 132 columns wide. } @Declare(GenericDevice="LPT", DeviceTitle="Line Printer", FinalName="lpt") @Declare(Driver LPT, Hunits 1 Inch, Hraster 10, Vunits 1 Inch, Vraster 6) @Declare(Barecr Available, BareLF Available) @Declare(UnderLine Available, UnderScoreCharacter="_") @Declare(PaperLength 66, Paperwidth 132, ScriptPush=Yes) @Define(noop) @Define[C, Capitalized On, TabExport] @Define(R, UnderLine Off, Capitalized Off, OverStruck 0, TabExport) @Define(I, UnderLine Alphanumerics, Capitalized Off, TabExport) @Define(P, Use I) @Define[b, use i] @Define(T, Use R) @Define(U, UnderLine NonBlank, TabExport) @Define(UN, UnderLine Alphanumerics, TabExport) @Define(UX, UnderLine All, TabExport) @Define(W, Spaces NoBreak, TabExport) @equate(G=noop, -=noop, +=noop) @Define(Text, Fill, Justification, Spaces Compact, Break, WidestBlank 3, BlankLines Break) @Define[InLine=Text, Break Off] @Define(Multiple, Indent 0) @Define[Verbatim, Above 1, Below 1, BlankLines Kept, Break, Continue, NoFill, Spaces Kept, Spacing 1, Unnumbered] @Define(Format, Break, Continue, NoFill, Spaces Kept, Above 1, Below 1, BlankLines Kept, Spacing 1, Justification Off) @Define[Insert, Above 1, Below 1, Break, BlankLines Kept, Continue, LeftMargin +4, RightMargin +4, Spacing 1] @Define[Centre, Above 1, AfterEntry "@TabClear", Below 1, BlankLines Kept, Break, Centred, Continue, LeftMargin 0, RightMargin 0, Spaces Kept, Spacing 1, TabExport False] @Define[Center=Centre] @Define(FlushRight=Centre, FlushRight) @Define(FlushLeft=Format, LeftMargin 0) @Define(MajorHeading, Hyphenation Off, Use Centre, Continue Off, Use B, Use C, Need 1 Inch, TabExport False) @Define(Heading, Hyphenation Off, Use Centre, Continue Off, Use B, Use C, Need 0.8 Inch, TabExport False) @Define(SubHeading, Hyphenation Off, Use Insert, Indent 0, LeftMargin 0, Continue Off, Use UX, Need 0.7 Inch, TabExport False) @Define(Display, Use Insert, NoFill, Use R, Group, BlankLines Kept, Spaces Kept, TabExport False) @Define(Example, Use Insert, NoFill, Spaces Kept, Group, BlankLines Kept) @Define(FileExample, Break, CRBreak, LeftMargin 16, Justification Off, Spaces Kept, LeadingSpaces Kept, Fill, BlankLines Kept, Indent -10, Spacing 1, Spread 0, Above 1, Below 1) @Define( OutputExample=Verbatim, LeftMargin 2) @Define( InputExample=Verbatim, LeftMargin 2) @Define(ProgramExample=Example) @Define(Itemize, Break, Continue, Fill, LeftMargin +5, Indent -5, RightMargin 5, Numbered <- @, * >, NumberLocation lfr, Spaces Compact, BlankLines Break, Spacing 1, Above 1, Below 1, Spread 1) @Define[Itemise=Itemize] @Define(Enumerate, Use Itemize, LeftMargin +6, Indent -6, Numbered <@1. @, @a. @, @i. >, Referenced <@1@, @a@, @i>) @Define[Description, Above 1, Below 1, Break, Continue, Fill, Indent -16, LeftMargin +16, Spaces Compact, Spacing 1, UnNumbered] @Define(Quotation, Use Insert, Fill, Use R, BlankLines Break, Spaces Compact, TabExport False, Indent 3) @Define[Verse, CrBreak, Fill, Indent -3, Justification Off, LeadingSpaces Kept, LeftMargin +8, Spaces Kept, Spread 0, TabExport False, Use Insert, Use R] @Define(HeadFoot, AfterEntry "@Tabclear ", Capitalized Off, FaceCode R, Indent 0, OverStruck 0, Break After, Below 0, Justification Off, LeadingSpaces Ignored, LeftMargin 0, NoFill, RightMargin 0, Spaces Compact, UnderLine Off) @comment[ Only one font for LPT, but all FaceCodes Defined for GP300 are given dummy values. This in order to suppress annoying error messages when processing GP300 files through LPT for draft purposes. ] @DefineFont(CharDef, R="CHARDEF", G="CHARDEF", T="CHARDEF", F="CHARDEF", U="CHARDEF", S="CHARDEF", B="CHARDEF", M="CHARDEF", I="CHARDEF", A="CHARDEF", D="CHARDEF", E="CHARDEF", H="CHARDEF", J="CHARDEF", K="CHARDEF", L="CHARDEF", N="CHARDEF", O="CHARDEF", P="CHARDEF", Q="CHARDEF", V="CHARDEF", W="CHARDEF", X="CHARDEF", Y="CHARDEF", Z="CHARDEF") @TextForm(Need="@Begin{noop, Need @Parm[Text]}@End{noop}") @Form[Fraction="@Parm(Top)/@Parm(Bottom)"] @Counter(Page, Numbered <@1>, Referenced <@1>, Init 0) @Marker(Device, GP300) @Comment{ Device definition for Philips GP 300 Printer. } @Declare(GenericDevice="GP300", DeviceTitle="Philips GP 300", FinalName="pgp") @Declare(Driver GP300, Hunits 1 Inch, Hraster 10, Vunits 1 Inch, Vraster 6) @Comment( The horizontal raster info is not used. The vertical info is involved only in the placement of Headings within Margins and should affect only the precision with which they are so placed. ) @Declare(OverStrike Available, Barecr Available, BareLF Available) @Declare(UnderLine Available, Backspace Available) @Declare(PaperLength 11.1 Inches, Paperwidth 7.5 Inches, ScriptPush=no) @Comment(The length is actually 11.6 and the width 8.25, but the device has its hardware top and left margins set to .5 and .75 respectively. Our global Margins in the MAKE file must take this into account as well.) @Define(noop) @Define(B, FaceCode B, TabExport) @Define[C, Capitalized On, FaceCode S, TabExport] @Define(R, FaceCode R, UnderLine Off, Capitalized Off, OverStruck 0, TabExport) @Define(I, FaceCode I, TabExport) @Define[M, FaceCode M, TabExport] @Define(P, Use I, OverStruck 1, TabExport) @Define(G, FaceCode G, TabExport) @Define(T, FaceCode E) @Define(U, UnderLine NonBlank, TabExport) @Define(UN, UnderLine Alphanumerics, TabExport) @Define(UX, UnderLine All, TabExport) @Define[FA, Use R, FaceCode Z] @Define(+, FaceCode S, Script +1, TabExport, Hyphenation Off, HyphenBreak Off) @Define(-=+, Script -1) @Define(W, Spaces NoBreak, TabExport) @Define(Text, Fill, Justification, Spaces Compact, Break, WidestBlank 3, FaceCode R, BlankLines Break, Spacing 1.25) @Define[InLine=Text, Break Off] @Define(Multiple, Indent 0) @Define[Verbatim, Above 1, Below 1, BlankLines Kept, Break, Continue, FaceCode U, NoFill, Spaces Kept, Spacing 1, Unnumbered] @Define(Format, Break, Continue, NoFill, Spaces Kept, Above 1, Below 1, BlankLines Kept, Spacing 1, Justification Off) @Define[Insert, Above 1, Below 1, Break, BlankLines Kept, Continue, LeftMargin +4, RightMargin +4, Spacing 1] @Define[Centre, Above 1, AfterEntry "@TabClear", Below 1, BlankLines Kept, Break, Centred, Continue, LeftMargin 0, RightMargin 0, Spaces Kept, Spacing 1, TabExport False] @Define[Center=Centre] @Define(FlushRight=Centre, FlushRight) @Define(FlushLeft=Format, LeftMargin 0) @Define(MajorHeading, Hyphenation Off, Capitalized, Use Centre, Continue Off, FaceCode B, Need 1 Inch, TabExport False) @Define(Heading, Hyphenation Off, Capitalized, Use Centre, Continue Off, FaceCode R, Need 0.8 Inch, TabExport False) @Define(SubHeading, Hyphenation Off, Use Insert, Indent 0, LeftMargin 0, Continue Off, Use UX, Need 0.7 Inch, TabExport False) @Define(Display, Use Insert, NoFill, Use R, Group, BlankLines Kept, Spaces Kept, TabExport False) @Define(Example, Use Insert, NoFill, Spaces Kept, Group, BlankLines Kept, FaceCode T) @Define(FileExample, Break, CRBreak, LeftMargin 16, Justification Off, FaceCode T, Spaces Kept, LeadingSpaces Kept, Fill, BlankLines Kept, Indent -10, Spacing 1, Spread 0, Above 1, Below 1) @Define( OutputExample=Verbatim, LeftMargin 2, FaceCode F) @Define( InputExample=Verbatim, LeftMargin 2, FaceCode T) @Define(ProgramExample=Example, FaceCode U) @Define(Itemize, Break, Continue, Fill, LeftMargin +5, Indent -5, RightMargin 5, Numbered <- @, * >, NumberLocation lfr, Spaces Compact, BlankLines Break, Spacing 1, Above 1, Below 1, Spread 1) @Define[Itemise=Itemize] @Define(Enumerate, Use Itemize, LeftMargin +6, Indent -6, Numbered <@1. @, @a. @, @i. >, Referenced <@1@, @a@, @i>) @Define[Description, Above 1, Below 1, Break, Continue, Fill, Indent -16, LeftMargin +16, Spaces Compact, Spacing 1, UnNumbered] @Define(Quotation, Use Insert, Fill, Use R, BlankLines Break, Spaces Compact, TabExport False, Indent 3) @Define[Verse, CrBreak, Fill, Indent -3, Justification Off, LeadingSpaces Kept, LeftMargin +8, Spaces Kept, Spread 0, TabExport False, Use Insert, Use R] @Define(HeadFoot, AfterEntry "@Tabclear ", Capitalized Off, FaceCode R, Indent 0, OverStruck 0, Break After, Below 0, Justification Off, LeadingSpaces Ignored, LeftMargin 0, NoFill, RightMargin 0, Spaces Compact, UnderLine Off) @DefineFont(Chardef, R="CHARDEF") @DefineFont(BodyFont, R="GOTHICPS", G="GREEKPS", T="GOTHIC10", F="COURIER12", U="GOTHIC12", S="MICRO12", B="GOTHICBOLDPS", M="MATHSPS", I="ITALICPS", A="GOTHICBOLD12", D="GOTHICBOLD10", E="COURIER10", H="COURIERPS", J="MICRO10", K="MICRO15", L="ORATOR12", N="ORATOR10", O="ORATORPS", P="ITALIC12", Q="DATA10", V="ITALIC10", W="GREEK12", X="GREEK10", Y="MATHS12", Z="MATHS10") @DefineFont(FrenchFont, R="GOTHICPS", G="GREEKPS", T="GOTHIC10", F="COURIER12", U="GOTHIC12", S="MICRO12", B="GOTHICBOLDPS", M="MATHSPS", I="ITALICPS", A="GOTHICBOLD12", D="GOTHICBOLD10", E="COURIER10", H="COURIERPS", J="MICRO10", K="MICRO15", L="ORATOR12", N="ORATOR10", O="ORATORPS", P="ITALIC12", Q="DATA10", V="ITALIC10", W="GREEK12", X="GREEK10", Y="MATHS12", Z="MATHS10") @Comment(the above typecase assignments follow scribe conventions for R, G, T, F, U, S, B, I and M more or less. The remainder simply make all the fonts except Data12 and Data15 Available on whatever FaceCodes are left. C, conventionally small capitals, is not used.) @TextForm(Need="@Begin{noop, Need @Parm[Text]}@End{noop}") @Form[Fraction="@!@-{@Parm(Bottom)}@/@+{@&_}@/@+{@Parm(Top)}"] @Counter(Page, Numbered <@1>, Referenced <@1>, Init 0) @Marker(Device, X2700) @Comment{ Device definition for Xerox 2700 Laser printer. } @Declare(GenericDevice="X2700", DeviceTitle="Xerox 2700", FinalName="x2700") @Declare(Driver X2700, Hunits 1 Inch, Hraster 10, Vunits 1 Inch, Vraster 6) @Comment( The horizontal raster info is not used. The vertical info is involved only in the placement of Headings within Margins and should affect only the precision with which they are so placed. ) @Declare(Overstrike Available, Barecr Available, UnderLine Available) @Declare(PaperLength 11.5 Inches, Paperwidth 8.25 Inches) @Define(noop) @Define(B, FaceCode B, TabExport) @Define[B6, FaceCode C, OverStruck 1] @Define[B12, FaceCode K] @Define[B14, FaceCode L, OverStruck 1] @Define[C, Capitalized On, FaceCode C, TabExport] @Define(G, FaceCode G, TabExport) @Define(I, FaceCode R, UnderLine Alphanumerics, Capitalized Off, TabExport) @Define[M, FaceCode M, Capitalized Off, TabExport] @Define(P, FaceCode B, UnderLine Alphanumerics, Capitalized Off, TabExport) @Define(R, FaceCode R, UnderLine Off, Capitalized Off, OverStruck 0, TabExport) @Define[R6, FaceCode C, UnderLine Off, OverStruck 0, TabExport] @Define[R14, FaceCode L, UnderLine Off, OverStruck 0, TabExport] @Define[T, FaceCode T] @Define(U, UnderLine NonBlank, TabExport) @Define(UN, UnderLine Alphanumerics, TabExport) @Define(UX, UnderLine All, TabExport) @Define(+, FaceCode C, Script +1, TabExport, Hyphenation Off, HyphenBreak Off) @Define(-=+, Script -1) @Define(W, Spaces NoBreak, TabExport) @Define(Text, Fill, Justification, Spaces Compact, Break, WidestBlank 3, BlankLines Break) @Define[InLine=Text, Break Off] @Define(Multiple, Indent 0) @Define[Verbatim, Above 1, Below 1, BlankLines Kept, Break, Continue, FaceCode T, NoFill, Spaces Kept, Spacing 1, Unnumbered] @Define(Format, Break, Continue, NoFill, Spaces Kept, Above 1, Below 1, BlankLines Kept, Spacing 1, Justification Off) @Define[Insert, Above 1, Below 1, Break, BlankLines Kept, Continue, LeftMargin +4, RightMargin +4, Spacing 1] @Define[Centre, Above 1, AfterEntry "@TabClear", Below 1, BlankLines Kept, Break, Centred, Continue, LeftMargin 0, RightMargin 0, Spaces Kept, Spacing 1, TabExport False] @Define[Center=Centre] @Define(FlushRight=Centre, FlushRight) @Define(FlushLeft=Format, LeftMargin 0) @Define(MajorHeading, Hyphenation Off, Capitalized, Use Centre, Continue Off, Use B14, Need 1 Inch, TabExport False) @Define(Heading, Hyphenation Off, Capitalized, Use Centre, Continue Off, Use B12, Need 0.8 Inch, TabExport False) @Define(SubHeading, Hyphenation Off, Capitalized, Use Centre, Continue Off, Use B, Need 0.7 Inch, TabExport False) @Define(Display, Use Insert, NoFill, Use R, Group, BlankLines Kept, Spaces Kept, TabExport False) @Define(Example, Use Insert, NoFill, Spaces Kept, Group, BlankLines Kept, FaceCode T) @Define(FileExample, Break, CRBreak, LeftMargin 16, Justification Off, FaceCode T, Spaces Kept, LeadingSpaces Kept, Fill, BlankLines Kept, Indent -10, Spacing 1, Spread 0, Above 1, Below 1) @Define( OutputExample=Verbatim, LeftMargin 2, FaceCode F) @Define( InputExample=Verbatim, LeftMargin 2, FaceCode F) @Define(ProgramExample=Example, FaceCode T) @Define(Itemize, Break, Continue, Fill, LeftMargin +5, Indent -5, RightMargin 5, Numbered <- @, * >, NumberLocation lfr, Spaces Compact, BlankLines Break, Spacing 1, Above 1, Below 1, Spread 1) @Define[Itemise=Itemize] @Define(Enumerate, Use Itemize, LeftMargin +6, Indent -6, Numbered <@1. @, @a. @, @i. >, Referenced <@1@, @a@, @i>) @Define[Description, Above 1, Below 1, Break, Continue, Fill, Indent -16, LeftMargin +16, Spaces Compact, Spacing 1, UnNumbered] @Define(Quotation, Use Insert, Fill, Use R, BlankLines Break, Spaces Compact, TabExport False, Indent 3) @Define[Verse, CrBreak, Fill, Indent -3, Justification Off, LeadingSpaces Kept, LeftMargin +8, Spaces Kept, Spread 0, TabExport False, Use Insert, Use R] @Define(HeadFoot, AfterEntry "@Tabclear ", Capitalized Off, FaceCode R, Indent 0, OverStruck 0, Break After, Below 0, Justification Off, LeadingSpaces Ignored, LeftMargin 0, NoFill, RightMargin 0, Spaces Compact, UnderLine Off) @DefineFont(Chardef, R="CHARDEF") @DefineFont(BodyFont, B="KOSMOS10BP", C="KOSMOS6P", G="GREEK10", I="KOSMOS10P", K="KOSMOS12BP", L="KOSMOS14P", M="MATHS10", P="KOSMOS10BP", R="KOSMOS10P", T="TITAN12P") @Comment(the above typecase assignments follow conventions for R, S, B, T, G and M. K and L simply make the additional machine fonts Available.) @TextForm(Need="@Begin{noop, Need @Parm[Text]}@End{noop}") @Form[Fraction="@!@-{@Parm(Bottom)}@/@+{@&_}@/@+{@Parm(Top)}"] @Counter(Page, Numbered <@1>, Referenced <@1>, Init 0) @Comment( ===========================================================================FILE ) @Marker(Device, FILE) @Comment{ Device definition for unpaged file. The non-pageing is implemented in the code for driver=File, as is underline ignoring, so apart from the critical 'driver' keyword, this is substantially the same as device LPT. } @Declare(GenericDevice="FILE", DeviceTitle="File", FinalName="File") @Declare(Driver FILE, Hunits 1 Inch, Hraster 10, Vunits 1 Inch, Vraster 6) @Declare(Barecr available, BareLF available) @Declare(Underline Available, UnderScoreCharacter="_") @Declare(PaperLength 66, Paperwidth 80, ScriptPush=Yes) @Define(noop) @Define(C, Capitalized, TabExport) @Define(R, Underline Off, Capitalized Off, OverStruck 0, TabExport) @Define(I, Underline Alphanumerics, Capitalized Off, TabExport) @Define(U, Underline NonBlank, TabExport) @Define(UN, Underline Alphanumerics, TabExport) @Define(UX, Underline All, TabExport) @Define(W, Spaces NoBreak, TabExport) @equate(T=R, B=R, P=I, G=noop, -=noop, +=noop) @Define(Text, Fill, Justification, Spaces Compact, Break, WidestBlank 3, BlankLines Break) @Define[InLine=Text, Break Off] @Define(Multiple, Indent 0) @Define[Verbatim, Above 1, Below 1, BlankLines Kept, Break, Continue, NoFill, Spaces Kept, Spacing 1, Unnumbered] @Define(Format, Break, Continue, NoFill, Spaces Kept, Above 1, Below 1, BlankLines Kept, Spacing 1, Justification Off) @Define[Insert, Above 1, Below 1, Break, BlankLines Kept, Continue, LeftMargin +4, RightMargin +4, Spacing 1] @Define[Centre, Above 1, AfterEntry "@TabClear", Below 1, BlankLines Kept, Break, Centred, Continue, LeftMargin 0, RightMargin 0, Spaces Kept, Spacing 1, TabExport False] @Define(Flushright=Centre, FlushRight) @Define(FlushLeft=Format, LeftMargin 0) @Define(MajorHeading, Hyphenation Off, Use Centre, Continue Off, Use B, Use C, Need 1 Inch, TabExport False) @Define(Heading, Hyphenation Off, Use Centre, Continue Off, Use B, Use C, Need 0.8 Inch, TabExport False) @Define(SubHeading, Hyphenation Off, Use Insert, Indent 0, LeftMargin 0, Continue Off, Use UX, Need 0.7 Inch, TabExport False) @Define(Display, Use Insert, NoFill, Use R, Group, BlankLines Kept, Spaces Kept, TabExport False) @Define(Example, Use Insert, NoFill, Spaces Kept, Group, BlankLines Kept) @Define(FileExample, Break, CRBreak, LeftMargin 16, Justification Off, Spaces Kept, LeadingSpaces Kept, Fill, BlankLines Kept, Indent -10, Spacing 1, Spread 0, Above 1, Below 1) @Define( OutputExample=Verbatim, LeftMargin 2) @Define( InputExample=Verbatim, LeftMargin 2) @Define(ProgramExample=Example) @Define(Itemize, Break, Continue, Fill, LeftMargin +5, Indent -5, RightMargin 5, Numbered <- @, * >, NumberLocation lfr, Spaces Compact, BlankLines Break, Spacing 1, Above 1, Below 1, Spread 1) @Equate(Itemise=itemize) @Define(Enumerate, Use Itemize, LeftMargin +6, Indent -6, Numbered <@1. @, @a. @, @i. >, Referenced <@1@, @a@, @i>) @Define[Description, Above 1, Below 1, Break, Continue, Fill, Indent -16, LeftMargin +16, Spaces Compact, Spacing 1, UnNumbered] @Define(Quotation, Use Insert, Fill, Use R, BlankLines Break, Spaces Compact, TabExport False, Indent 3) @Define[Verse, CrBreak, Fill, Indent -3, Justification Off, LeadingSpaces Kept, LeftMargin +8, Spaces Kept, Spread 0, TabExport False, Use Insert, Use R] @Define(HeadFoot, AfterEntry "@Tabclear ", Capitalized Off, FaceCode r, Indent 0, OverStruck 0, Break After, Below 0, Justification Off, LeadingSpaces Ignored, LeftMargin 0, NoFill, RightMargin 0, Spaces Compact, UnderLine Off) @DefineFont[CharDef, R="CHARDEF", G="CHARDEF", T="CHARDEF", F="CHARDEF", U="CHARDEF", S="CHARDEF", B="CHARDEF", M="CHARDEF", I="CHARDEF", A="CHARDEF", D="CHARDEF", E="CHARDEF", H="CHARDEF", J="CHARDEF", K="CHARDEF", L="CHARDEF", N="CHARDEF", O="CHARDEF", P="CHARDEF", Q="CHARDEF", V="CHARDEF", W="CHARDEF", X="CHARDEF", Y="CHARDEF", Z="CHARDEF"] @TextForm(Need="@Begin{noop, Need @Parm[Text]}@End{noop}") @Form[Fraction="@Parm(Top)/@Parm(Bottom)"] @Counter(Page, Numbered <@1>, Referenced <@1>, Init 0)