diff options
Diffstat (limited to 'obsolete/macros/hptex/macroshc.tex')
-rw-r--r-- | obsolete/macros/hptex/macroshc.tex | 897 |
1 files changed, 897 insertions, 0 deletions
diff --git a/obsolete/macros/hptex/macroshc.tex b/obsolete/macros/hptex/macroshc.tex new file mode 100644 index 0000000000..706a8c3439 --- /dev/null +++ b/obsolete/macros/hptex/macroshc.tex @@ -0,0 +1,897 @@ +% THIS IS FILE MACROSHC +% +% *** Source file for hard copy of HP TEX Macro Package *** +% Copyright 1984 Hewlett-Packard Co. +% +%\lpdef{1,1in,1.34in,P} +%\vsize52pc +%\hsize39pc +\def\evenheading{\vbox{\hbox to \hsize{\eightrm Page \folio\hfil\HPTEX} + \nointerlineskip\vskip2pt + \hbox{\vrule width \hsize height .4pt}}} +\def\oddheading{\vbox{\hbox to \hsize{\eightrm The \HPTEX\ + Macros\hfil Page \folio} + \nointerlineskip\vskip2pt + \hbox{\vrule width \hsize height .4pt}}} +\def\noheading{\hfil} +\headline{\ifnum\pageno=1\noheading + \else\ifodd\pageno\oddheading + \else\evenheading\fi\fi} +\centerfooting{} + +\def\\{\char '134} +\def\lftbr{\char '173} +\def\rtbr{\char '175} + +\null +\vskip.5in +\centerline{\twelvebf THE \HPTEX\ MACROS}\footnote{}{\eightrm\copyright 1984 + Hewlett-Packard Co.} +\vskip1in + +\start{verbatim} +\tentt + +\% This is the HP TeX text format version A.00.00 as of Feb. 14, 1984. +\% It is compatible with the plain TeX format that's described in The TeXbook. +\% +\% NOTE 1, NOTE 2, etc. refer to notes in the file HPTEXDOC +\% + +\\input PLAIN.TEXT \% NOTE 1 + +\\message{\lftbr}Preloading the HP TeX codes,{\rtbr} + +\% SPECIAL CATCODES +\% +\\catcode`@=11 \% NOTE 2 + +\% HPTEX +\% +\\def\\HPTEX{\lftbr}HP\\nobreak\\ \\TeX{\rtbr} +\\let\\HpTeX=\\HPTEX +\\def\\fmtname{\lftbr}HP TeX{\rtbr}\\def\\fmtversion{\lftbr}A.00.00{\rtbr} + +\% LEADERS +\% +\\def\\dotfil{\lftbr}\\tenrm\\leaders\\hbox to8\\p@{\lftbr}\\hss.\\hss{\rtbr}\\h + +\% CONSTANT VALUES +\% +\\chardef\\zer@=0 +\\chardef\\f@ur=4 +\\skipdef\\skip@ii=2 +\\maxdepth=2pt + +\\message{\lftbr}fonts,{\rtbr} + +\% FONTS \% NOTE 4 +\% +\\let\\fontcheck=1 \% NOTE +\\def\\fontdef#1=#2 {\lftbr}\\def#1{\lftbr}\\font@{\lftbr}#1{\rtbr}{\lftbr}#2{\r +\\def\\font@#1#2{\lftbr}{\lftbr}\\let\\fontcheck=0\\ifx0\\fontcheck\\egroup\\glo + \\else{\rtbr}\\string#1 \\fi{\rtbr}\%--The space after \\string#1 is necessa + +\% ROMAN TEXT +\% +\\fontdef\\twentyfourrm={\lftbr}amr10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteenrm={\lftbr}amr10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteenrm={\lftbr}amr10 scaled \\magstep2{\rtbr} +\\font\\twelverm=amr10 scaled \\magstep1 +\%\\font\\tenrm=amr10 +\\font\\ninerm=amr9 +\\font\\eightrm=amr8 +\%\\font\\sevenrm=amr7 +\\font\\sixrm=amr6 +\%\\font\\fiverm=amr5 + +\% MATH ITALIC +\% +\\fontdef\\twentyfouri={\lftbr}ammi10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteeni={\lftbr}ammi10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteeni={\lftbr}ammi10 scaled \\magstep2{\rtbr} +\\fontdef\\twelvei={\lftbr}ammi10 scaled \\magstep1{\rtbr} +\%\\font\\teni=ammi10 +\\fontdef\\ninei={\lftbr}ammi9{\rtbr} +\\fontdef\\eighti={\lftbr}ammi8{\rtbr} +\%\\font\\seveni=ammi7 +\\fontdef\\sixi={\lftbr}ammi6{\rtbr} +\%\\font\\fivei=ammi5 + +\% MATH SYMBOLS +\% +\\fontdef\\twentyfoursy={\lftbr}amsy10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteensy={\lftbr}amsy10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteensy={\lftbr}amsy10 scaled \\magstep2{\rtbr} +\\fontdef\\twelvesy={\lftbr}amsy10 scaled \\magstep1{\rtbr} +\%\\font\\tensy=amsy10 +\\fontdef\\ninesy={\lftbr}amsy9{\rtbr} +\\fontdef\\eightsy={\lftbr}amsy8{\rtbr} +\%\\font\\sevensy=amsy7 +\\fontdef\\sixsy={\lftbr}amsy6{\rtbr} +\%\\font\\fivesy=amsy5 + +\% BOLD MATH SYMBOLS +\% +\\fontdef\\tenbfsy={\lftbr}ambsy10{\rtbr} + +\% MATH EXTENSION +\% +\%\\font\\tenex=amex10 + +\% SANS SERIF +\% +\\fontdef\\fourteenss={\lftbr}amss10 scaled \\magstep2{\rtbr} +\\fontdef\\twelvess={\lftbr}amss10 scaled \\magstep1{\rtbr} +\\font\\tenss=amss10 +\\font\\eightss=amssq8 + +\% SANS SERIF ITALIC +\% +\\font\\tenitss=amssi10 +\\font\\eightitss=amssqi8 + +\% BOLDFACE EXTENDED +\% +\\fontdef\\twentyfourbf={\lftbr}ambx10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteenbf={\lftbr}ambx10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteenbf={\lftbr}ambx10 scaled \\magstep2{\rtbr} +\\font\\twelvebf=ambx10 scaled \\magstep1 +\%\\font\\tenbf=ambx10 +\\font\\ninebf=ambx9 +\\font\\eightbf=ambx8 +\%\\font\\sevenbf=ambx7 +\\font\\sixbf=ambx6 +\%\\font\\fivebf=ambx5 + +\% TYPEWRITER +\% +\\fontdef\\twentyfourtt={\lftbr}amtt10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteentt={\lftbr}amtt10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteentt={\lftbr}amtt10 scaled \\magstep2{\rtbr} +\\fontdef\\twelvett={\lftbr}amtt10 scaled \\magstep1{\rtbr} +\%\\font\\tentt=amtt10 +\\font\\ninett=amtt9 +\\font\\eighttt=amtt8 + +\% SLANTED TYPEWRITER +\% +\\font\\tensltt=amsltt10 + +\% SLANTED ROMAN +\% +\\fontdef\\twentyfoursl={\lftbr}amsl10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteensl={\lftbr}amsl10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteensl={\lftbr}amsl10 scaled \\magstep2{\rtbr} +\\fontdef\\twelvesl={\lftbr}amsl10 scaled \\magstep1{\rtbr} +\%\\font\\tensl=amsl10 +\\font\\ninesl=amsl9 +\\font\\eightsl=amsl8 + +\% TEXT ITALIC +\% +\\fontdef\\twentyfourit={\lftbr}amti10 scaled \\magstep5{\rtbr} +\\fontdef\\eighteenit={\lftbr}amti10 scaled \\magstep3{\rtbr} +\\fontdef\\fourteenit={\lftbr}amti10 scaled \\magstep2{\rtbr} +\\fontdef\\twelveit={\lftbr}amti10 scaled \\magstep1{\rtbr} +\%\\font\\tenit=amti10 +\\font\\nineit=amti9 +\\font\\eightit=amti8 +\\fontdef\\sevenit={\lftbr}amti7{\rtbr} + +\% UNSLANTED TEXT ITALIC +\% +\\font\\tenuit=amu10 + +\% CAPS AND SMALL CAPS +\% +\\font\\tencsc=amcsc10 + +\% SANS SERIF BOLD EXTENDED +\% +\\font\\tenbfss=amssbx10 + +\% BOLD EXTENDED SLANTED +\% +\\font\\tenslbf=ambxsl10 + +\% DUNHILL STYLE +\% +\\font\\tendh=amdunh10 + +\% FOR TITLES +\% +\\font\\titlefont=amr7 scaled \\magstep4 + +\% BIG FONT +\% +\\font\\bigfont=amssbx10 scaled \\magstep2 + +\\message{\lftbr}macros,{\rtbr} + +\% MACROS TO SET FSTYLE \% NOTE 7 +\% +\\def\\rm{\lftbr}\\fam\\z@\\def\\fstyle{\lftbr}rm{\rtbr}\\setfont{\rtbr} +\\def\\it{\lftbr}\\fam\\itfam\\def\\fstyle{\lftbr}it{\rtbr}\\setfont{\rtbr} +\\def\\bf{\lftbr}\\fam\\bffam\\def\\fstyle{\lftbr}bf{\rtbr}\\setfont\\ifmmode{\l + \\textfont2=\\tenbfsy\\fi{\rtbr} +\\def\\sl{\lftbr}\\fam\\slfam\\def\\fstyle{\lftbr}sl{\rtbr}\\setfont{\rtbr} +\\def\\sa{\lftbr}\\def\\fstyle{\lftbr}ss{\rtbr}\\setfont{\rtbr} +\\def\\tt{\lftbr}\\fam\\ttfam\\def\\fstyle{\lftbr}tt{\rtbr}\\setfont{\rtbr} + +\\newfam\\ssfam + +\vfil\goodbreak +\% MACROS TO SET FSIZE \% NOTE 8 +\% +\\def\\fivepoint{\lftbr}\\def\\fsize{\lftbr}five{\rtbr}\\setfont\\let\\sfont=\\f + \\baselineskip7pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height4.5pt depth1.5pt w + \\textfont0=\\fiverm \\scriptfont0=\\fiverm\% + \\scriptscriptfont0=\\fiverm\% + \\textfont1=\\fivei \\scriptfont1=\\fivei\% + \\scriptscriptfont1=\\fivei\% + \\textfont2=\\fivesy \\scriptfont2=\\fivesy\% + \\scriptscriptfont2=\\fivesy{\rtbr} +\vfil\goodbreak + +\\def\\sixpoint{\lftbr}\\def\\fsize{\lftbr}six{\rtbr}\\setfont\\let\\sfont=\\fiv + \\baselineskip8pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height5pt depth2pt width + \\textfont0=\\sixrm \\scriptfont0=\\fiverm\% + \\scriptscriptfont0=\\fiverm\% + \\scriptfont1=\\fivei \\scriptscriptfont1=\\fivei\% + \\scriptfont2=\\fivesy \\scriptscriptfont2=\\fivesy\% + \\def\\changes{\lftbr}{\lftbr}\\sixi\\sixsy{\rtbr}\% + \\textfont1=\\sixi \\textfont2=\\sixsy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes + \\everydisplay{\lftbr}\\changes{\rtbr}\\fi{ +\vfil\goodbreak + +\\def\\sevenpoint{\lftbr}\\def\\fsize{\lftbr}seven{\rtbr}\\setfont\\let\\sfont=\ + \\baselineskip9pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height6pt depth2pt wi + \\textfont0=\\sevenrm \\scriptfont0=\\sixrm\% + \\scriptscriptfont0=\\fiverm\% + \\textfont1=\\seveni \\scriptscriptfont1=\\fivei\% + \\textfont2=\\sevensy \\scriptscriptfont2=\\fivesy\% + \\def\\changes{\lftbr}{\lftbr}\\sixi\\sixsy{\rtbr}\% + \\scriptfont1=\\sixi\% + \\scriptfont2=\\sixsy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\% + \\everydisplay{\lftbr}\\changes{\ +\vfil\goodbreak + +\\def\\eightpoint{\lftbr}\\def\\fsize{\lftbr}eight{\rtbr}\\setfont\\let\\sfont=\ + \\baselineskip9pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height7pt depth2pt wi + \\textfont0=\\eightrm \\scriptfont0=\\sixrm\% + \\scriptscriptfont0=\\fiverm\% + \\scriptscriptfont1=\\fivei\% + \\scriptscriptfont2=\\fivesy\% + \\def\\changes{\lftbr}{\lftbr}\\eighti\\sixi\\eightsy\\sixsy{\ + \\textfont1=\\eighti \\scriptfont1=\\sixi\% + \\textfont2=\\eightsy \\scriptfont2=\\sixsy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\% + \\everydisplay{\lftbr}\\changes{\rtbr}\\fi{\r +\vfil\goodbreak + +\\def\\ninepoint{\lftbr}\\def\\fsize{\lftbr}nine{\rtbr}\\setfont\\let\\sfont=\\s + \\baselineskip11pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height8pt depth3pt wi + \\textfont0=\\ninerm \\scriptfont0=\\sevenrm\% + \\scriptscriptfont0\\fiverm\% + \\scriptfont1=\\seveni \\scriptscriptfont1\\fivei\% + \\scriptfont2=\\sevensy \\scriptscriptfont2\\fivesy\% + \\def\\changes{\lftbr}{\lftbr}\\ninei\\ninesy{\rtbr}\% + \\textfont1=\\ninei\% + \\textfont2=\\ninesy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\ + \\everydisplay{\lftbr}\\changes{\rtbr}\\fi{\ +\vfil\goodbreak + +\\def\\tenpoint{\lftbr}\\def\\fsize{\lftbr}ten{\rtbr}\\setfont\\let\\sfont=\\sev + \\baselineskip12pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height8.5pt depth3.5pt + \\textfont0=\\tenrm \\scriptfont0=\\sevenrm\% + \\scriptscriptfont0\\fiverm\% + \\textfont1=\\teni \\scriptfont1=\\seveni\% + \\scriptscriptfont1\\fivei\% + \\textfont2=\\tensy \\scriptfont2=\\sevensy\% + \\scriptscriptfont2\\fivesy{\rtbr} +\vfil\goodbreak + +\\def\\twelvepoint{\lftbr}\\def\\fsize{\lftbr}twelve{\rtbr}\\setfont\\let\\sfont + \\baselineskip14pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height10pt depth4pt w + \\textfont0=\\twelverm \\scriptfont0=\\ninerm\% + \\scriptscriptfont0=\\sevenrm\% + \\scriptscriptfont1=\\seveni\% + \\scriptscriptfont2=\\sevensy\% + \\def\\changes{\lftbr}{\lftbr}\\twelvei\\ninei\\twelvesy\\nine + \\textfont1=\\twelvei \\scriptfont1=\\ninei\% + \\textfont2=\\twelvesy \\scriptfont2=\\ninesy{\rtbr}\ + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\% + \\everydisplay{\lftbr}\\changes{\rtbr}\\fi{ +\vfil\goodbreak + +\\def\\fourteenpoint{\lftbr}\\def\\fsize{\lftbr}fourteen{\rtbr}\\setfont\\let\\s + \\baselineskip16pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height12pt depth4pt width0pt{\rtbr + \\scriptfont0=\\tenrm \\scriptscriptfont0=\\sevenrm\% + \\scriptfont1=\\teni \\scriptscriptfont1=\\seveni\% + \\scriptfont2=\\tensy \\scriptscriptfont2=\\sevensy\% + \\def\\changes{\lftbr}{\lftbr}\\fourteeni\\fourteenrm\\fourteensy{\rtbr}\% + \\textfont0=\\fourteenrm\% + \\textfont1=\\fourteeni\% + \\textfont2=\\fourteensy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\\everydisplay{\ +\vfil\goodbreak + +\\def\\eighteenpoint{\lftbr}\\def\\fsize{\lftbr}eighteen{\rtbr}\\setfont\\let\\s + \\baselineskip18pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height15pt depth3pt width0pt{\rtb + \\scriptfont0=\\twelverm \\scriptscriptfont0=\\tenrm\% + \\scriptscriptfont1=\\teni\% + \\scriptscriptfont2=\\tensy\% + \\def\\changes{\lftbr}{\lftbr}\\eighteenrm\\eighteeni\\twelvei\\eighteensy + \\textfont0=\\eighteenrm\% + \\textfont1=\\eighteeni \\scriptfont1=\\twelvei\% + \\textfont2=\\eighteensy \\scriptfont2=\\twelvesy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\% + \\everydisplay{\lftbr}\\changes{\rtbr}\\fi{\rtbr} +\vfil\goodbreak + +\\def\\twentyfourpoint{\lftbr}\\def\\fsize{\lftbr}twentyfour{\rtbr}\\setfont\\le + \\baselineskip24pt\% + \\setbox\\strutbox=\\hbox{\lftbr}\\vrule height21.5pt depth2.5pt width0pt{ + \\def\\changes{\lftbr}{\lftbr}\\twentyfourrm\\eighteenrm\\fourteenrm\\twen + \\eighteeni\\fourteeni\\twentyfoursy\\eighteensy\\fourteensy + \\textfont0=\\twentyfourrm \\scriptfont0=\\eighteenrm \% + \\scriptscriptfont0=\\fourteenrm\% + \\textfont1=\\twentyfouri \\scriptfont1=\\eighteeni\% + \\scriptscriptfont1=\\fourteeni\% + \\textfont2=\\twentyfoursy \\scriptfont2=\\eighteensy\% + \\scriptscriptfont2=\\fourteensy{\rtbr}\% + \\ifmmode\\changes\\else\\everymath{\lftbr}\\changes{\rtbr}\\everydisplay + +\vfil\goodbreak +\% MACROS TO SET CURRENT FONT USING FSTYLE AND FSIZE +\% +\\newif\\ifnofont@ +\\def\\tryfont#1{\lftbr}\\expandafter\\ifx\\csname#1\\endcsname\\relax\\nofont@t + \\else\\nofont@false\\csname#1\\endcsname\\fi{\rtbr} +\\def\\setfont{\lftbr}\\tryfont{\lftbr}\\ffam\\fsize\\fstyle{\rtbr}\% + \\ifnofont@\\tryfont{\lftbr}\\ffam\\fsize rm{\rtbr}\% + \\ifnofont@\\tryfont{\lftbr}\\ffam tenrm{\rtbr}\% + \\ifnofont@\\tenrm\\fi\\fi\\expandafter + \\fonterr\\csname\\ffam\\fsize\\fstyle\\endcsname{\lftbr}\\the\\font{\rtbr}\ +\\def\\fonterr#1#2{\lftbr}\\immediate\\write\\m@ne{\lftbr}! font #1is undefined, + I'm using #2instead.{\rtbr}\\xdef#1{\lftbr}#2{\rtbr}{\rtbr} + +\% DEFAULTS \% NOTE 1 +\% +\\fam\\z@\\tenrm\\def\\ffam{\lftbr}{\rtbr}\\def\\fstyle{\lftbr}rm{\rtbr}\\def\\f + +\% LINE MACROS \% NOTE 1 +\% +\\def\\lline#1{\lftbr}\\hbox to\\hsize{\lftbr}\\hskip\\leftskip#1\\hskip\\rights +\\def\\leftline#1{\lftbr}\\lline{\lftbr}#1\\hss{\rtbr}{\rtbr} +\\def\\rightline#1{\lftbr}\\lline{\lftbr}\\hss#1{\rtbr}{\rtbr} +\\def\\centerline#1{\lftbr}\\lline{\lftbr}\\hss#1\\hss{\rtbr}{\rtbr} + +\% MORE MACROS +\% +\\def\\narrow#1{\lftbr}\\advance\\leftskip#1\\advance\\rightskip#1{\rtbr} +\\def\\narrower{\lftbr}\\narrow\\parindent{\rtbr} +\\def\\narrow@{\lftbr}\\narrow\\inset{\rtbr} +\\def\\inc#1{\lftbr}\\advance#1\\@ne{\rtbr} +\\def\\dec#1{\lftbr}\\advance#1\\m@ne{\rtbr} +\\def\\ignore#1{\lftbr}\\relax{\rtbr} +\\def\\okbreak{\lftbr}\\par\\penalty-200{\rtbr} +\\def\\need{\lftbr}\\afterassignment\\need@\\dimen@{\rtbr} +\\def\\need@{\lftbr}\\vskip\\dimen@ minus\\dimen@\\okbreak\\vskip-\\dimen@ minus +\goodbreak +\\def\\for#1=#2to#3do#4{\lftbr}#1=#2\\ifnum#2>#3\\else\\let\\next@=\\fnext@ + \\def\\fcount@{\lftbr}#1{\rtbr}\\def\\fexit@{\lftbr}#3{\rtbr}\\def\\floop@{\ +\goodbreak +\\def\\fnext@{\lftbr}\\floop@\\ifnum\\fcount@<\\fexit@\\inc\\fcount@ + \\else\\let\\next@=\\relax\\fi\\next@{\rtbr} +\goodbreak +\\def\\super#1{\lftbr}\\/\\raise.4em\\hbox{\lftbr}\\sfont#1{\rtbr}\\thinspace{\r +\\def\\sub#1{\lftbr}\\lower.25em\\hbox{\lftbr}\\sfont#1{\rtbr}\\thinspace{\rtbr} +\\def\\lbreak{\lftbr}\\hfill\\break{\rtbr} +\goodbreak +\\def\\uline#1{\lftbr}\\setbox0=\\hbox{\lftbr}#1{\rtbr}\\dimen@=-\\dp0\\advance\ + \\ifvmode\\indent\\fi\\hbox to \\wd0{\lftbr}\\lower.27em + \\vbox{\lftbr}\\box0\\vskip\\dimen@\\hrule height.04em{\rtbr}{\rtbr}{\rtbr} +\goodbreak + +\% START AND FINISH GROUP STRUCTURE \% NOTE 1 +\% +\\def\\start#1{\lftbr}\\errfalse\\ifinvalid@{\lftbr}#1{\rtbr}\\else\\begingroup + \\def\\blockname@{\lftbr}#1{\rtbr}\\csname BEGIN#1\\endcsname\\fi\\Error{\rt +\\def\\finish#1{\lftbr}\\errfalse\\ifinvalid@{\lftbr}#1{\rtbr}\\else\\matchup@{\ +\\def\\ifinvalid@#1{\lftbr}\\expandafter\\ifx\\csname BEGIN#1\\endcsname\\relax + \\errset{\lftbr}I don't understand {\lftbr}#1{\rtbr}, it may be misspelled{\ +\\def\\matchup@#1{\lftbr}\\def\\test@{\lftbr}#1{\rtbr}\% + \\expandafter\\ifx\\csname blockname@\\endcsname\\relax + \\errset{\lftbr}Extra \\string\\finish{\lftbr}\\test@{\rtbr} ignored + \\else\\ifx\\test@\\blockname@\\done + \\else\\errset{\lftbr}Missing \\string\\finish{\lftbr}\\blockname@{\rtbr} in + \\done\\matchup@{\lftbr}#1{\rtbr}\\fi\\fi{\rtbr} +\\def\\done{\lftbr}\\csname END\\blockname@\\endcsname\\endgroup{\rtbr} + +\% GENERAL ERROR HANDLING \% NOTE 2 +\% +\\def\\errfalse{\lftbr}\\global\\let\\iferr=\\iffalse{\rtbr} +\\def\\errtrue{\lftbr}\\global\\let\\iferr=\\iftrue{\rtbr} +\\def\\errset#1{\lftbr}\\iferr\\immediate\\write0{\lftbr}! \\error{\rtbr}\\else\ +\\def\\Error{\lftbr}\\iferr\\errmessage{\lftbr}\\error{\rtbr}\\fi{\rtbr} + +\% DATE AND TIME MACROS +\% +\\newcount\\cntA@\\newcount\\cntB@\\newcount\\cntC@ +\\def\\mon{\lftbr}\\ifcase\\month\\relax\\or January\\or February\\or March\\or + April\\or May\\or June\\or July\\or August\\or September\\or October\\or + November\\or December\\fi{\rtbr} +\\def\\date{\lftbr}\\mon\\nobreak\\ \\number\\day, \\number\\year{\rtbr} +\goodbreak +\\def\\hour{\lftbr}{\lftbr}\\cntA@=\\time \\cntB@=\\cntA@ + \\divide\\cntA@60 \\cntC@=\\cntA@ \\multiply\\cntC@60 + \\advance\\cntB@-\\cntC@\\ifnum\\cntA@>11 + \\advance\\cntA@-12 \\def\\time@{\lftbr}PM{\rtbr}\\else\\def\\time@{\lftbr}A + \\ifnum\\cntA@=0 \\cntA@=12 \\fi\\number\\cntA@ + :\\ifnum\\cntB@<10 0\\fi\\number\\cntB@\\nobreak\\ \\time@{\rtbr}{\rtbr} + +\% INDENTSTYLE +\% +\\newdimen\\indentsize\\indentsize=20pt +\\newif\\ifindent\\indenttrue \% NOTE +\\def\\indentstyle{\lftbr}\\parindent\\indentsize + \\ifindent\\else\\indenttrue\\advance\\parskip-5\\p@\\fi{\rtbr} +\\def\\noindentstyle{\lftbr}\\parindent\\z@ + \\ifindent\\indentfalse\\advance\\parskip5\\p@\\fi{\rtbr} +\\def\\indentspace{\lftbr}\\afterassignment\\indent@\\indentsize{\rtbr} +\\def\\indent@{\lftbr}\\ifindent\\parindent\\indentsize\\fi{\rtbr} +\\newdimen\\inset +\\inset.5in +\\def\\BEGINindent{\lftbr}\\advance\\leftskip \\inset{\rtbr} +\\let\\ENDindent=\\par + +\% RAGGED MARGIN AND JUSTIFIED MARGIN MACROS +\% +\\def\\fixmargin@{\lftbr}\\dimen@=\\rightskip\\rightskip=\\dimen@{\rtbr} +\\def\\justify{\lftbr}\\fixmargin@\\spaceskip\\z@\\xspaceskip\\z@{\rtbr} +\\def\\raggedright{\lftbr}\\fixmargin@\\advance\\rightskip\\z@ plus2em + \\ifx\\fstyle\\tt@\\else\\spaceskip.3333em\\xspaceskip.5em\\fi{\rtbr} +\\def\\tt@{\lftbr}tt{\rtbr} + +\% ITEM AND SUBITEM MACROS +\% +\\newcount\\icount@\\newcount\\scount@ +\\newcount\\idigit@\\newcount\\sdigit@ +\\def\\itemset@#1#2#3{\lftbr}\\dimen@=\\hsize \\advance\\dimen@-#2\\inset + \\parshape=\\@ne#1\\inset\\dimen@\\noindent + \\hbox to\\z@{\lftbr}\\hss#3\\enspace{\rtbr}\\ignorespaces{\rtbr} +\\def\\itemlist#1{\lftbr}\\medskip\\resetsubitems\\itemset@\\@ne\\tw@{\lftbr}#1{ +\\def\\subitem#1{\lftbr}\\smallskip\\itemset@\\tw@\\f@ur{\lftbr}#1{\rtbr}{\rtbr} +\\def\\itempar{\lftbr}\\smallskip\\itemset@\\@ne\\tw@\\empty{\rtbr} +\\def\\subitempar{\lftbr}\\subitem\\empty{\rtbr} +\\def\\enditems{\lftbr}\\bigskip\\resetitems{\rtbr} + +\% ITEMTAG AND SUBITEMTAG MACROS \% NOTE 41 +\% +\\def\\square{\lftbr}\\hbox{\lftbr}\\hskip.5pt\\vrule height.4em width.4em depth +\\def\\dott{\lftbr}$\\bullet${\rtbr} +\\def\\emdash{\lftbr}---{\rtbr} +\\def\\itemn@#1{\lftbr}\\number#1\\global\\inc#1{\rtbr} +\\def\\itemr@#1{\lftbr}\\romannumeral#1\\global\\inc#1{\rtbr} +\\def\\itemR@#1{\lftbr}\\uppercase\\expandafter{\lftbr}\\romannumeral#1{\rtbr}\\ +\goodbreak +\\def\\iteml@#1#2{\lftbr}{\lftbr}\\loop\\char#1\\ifnum#2>\\@ne\\dec#2\\repeat{\r + \\ifnum#1>122 \\global#1=97 \\global\\inc#2\\fi \\ifnum#1=91 \\global#1=65 + \\global\\inc#2\\fi{\rtbr} + \\def\\item@ #1,#2,#3{\lftbr}\\def\\itemtag{\lftbr}#3{\rtbr}\% + \\def\\resetitems{\lftbr}\\global\\icount@=#1\\global\\idigit@=#2{\rtbr}\\res +\\outer\\def\\numbereditems{\lftbr}\\item@ 1,0,{\lftbr}\\itemn@\\icount@{\rtbr}{ +\\outer\\def\\lettereditems{\lftbr}\\item@ 97,1,{\lftbr}\\iteml@\\icount@\\idigi +\\outer\\def\\Lettereditems{\lftbr}\\item@ 65,1,{\lftbr}\\iteml@\\icount@\\idigi +\\outer\\def\\romanitems{\lftbr}\\item@ 1,0,{\lftbr}\\itemr@\\icount@{\rtbr}{\rt +\\outer\\def\\Romanitems{\lftbr}\\item@ 1,0,{\lftbr}\\itemR@\\icount@{\rtbr}{\rt +\\outer\\def\\squareditems{\lftbr}\\let\\itemtag=\\square\\let\\resetitems=\\rel +\\outer\\def\\dotteditems{\lftbr}\\let\\itemtag=\\dott\\let\\resetitems=\\relax{ +\\outer\\def\\dasheditems{\lftbr}\\let\\itemtag=\\emdash\\let\\resetitems=\\rela +\\def\\itm{\lftbr}\\itemlist{\lftbr}\\tenrm\\itemtag\\ifx\\relax\\resetitems\\el + +\\def\\subitem@ #1,#2,#3{\lftbr}\\def\\subitemtag{\lftbr}#3{\rtbr}\% + \\def\\resetsubitems{\lftbr}\\global\\scount@=#1\\global\\sdigit@=#2{\rtbr}\ +\\outer\\def\\numberedsubitems{\lftbr}\\subitem@ 1,0,{\lftbr}\\itemn@\\scount@{\ +\\outer\\def\\letteredsubitems{\lftbr}\\subitem@ 97,1,{\lftbr}\\iteml@\\scount@\ +\\outer\\def\\Letteredsubitems{\lftbr}\\subitem@ 65,1,{\lftbr}\\iteml@\\scount@\ +\\outer\\def\\romansubitems{\lftbr}\\subitem@ 1,0,{\lftbr}\\itemr@\\scount@{\rtb +\\outer\\def\\Romansubitems{\lftbr}\\subitem@ 1,0,{\lftbr}\\itemR@\\scount@{\rtb +\\outer\\def\\squaredsubitems{\lftbr}\\let\\subitemtag=\\square\\let\\resetsubit +\\outer\\def\\dottedsubitems{\lftbr}\\let\\subitemtag=\\dott\\let\\resetsubitems +\\outer\\def\\dashedsubitems{\lftbr}\\let\\subitemtag=\\emdash\\let\\resetsubite +\\def\\sitm{\lftbr}\\subitem{\lftbr}\\tenrm\\subitemtag\\ifx\\relax\\resetsubite + \% NOTE 49 +\\numbereditems\\letteredsubitems \% NOTE + +\% NOTE AND WARNING MACROS +\% +\\def\\BEGINnote{\lftbr}\\bigskip\\narrow@\\narrow@\\nobreak{\rtbr} +\\let\\ENDnote=\\bigskip +\\def\\BEGINwarning{\lftbr}\\bigskip\\nobreak\\narrow@\\narrow@\\marginrule.0266 + \\nobreak\\medskip\\nobreak{\rtbr} +\\def\\ENDwarning{\lftbr}\\nobreak\\medskip\\nobreak\\marginrule.02667in \\bigsk +\\def\\marginrule#1 {\lftbr}\\nointerlineskip\\vbox to#1{\lftbr}\\vss + \\lline{\lftbr}\\leaders\\hrule height#1\\hss{\rtbr}{\rtbr}{\rtbr} + + +\% VERBATIM MODE \% NOTE 5 +\% +\\newskip\\blanksize@ +\\bgroup\\catcode`\\*=3 \\catcode`\\$=13 \\catcode`\\#=13 + \\catcode`\\^=13 \\catcode`\\_=13 \\catcode`\\|=13 \\catcode`\\~=13 +\goodbreak +\\gdef\\BEGINverbatim{\lftbr}\\parskip=0pt plus1pt + \\catcode`\\$=13 \\def${\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss\\$\\hss{\rtbr}{\rtbr} + \\catcode`\\&=12 + \\catcode`\\#=13 \\def#{\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss*\\#*\\hss{\rtbr}{\rtbr} + \\catcode`\\^=13 \\def^{\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss*\\mathchar"327D*\\hss{\rtbr}{\rtbr} + \\catcode`\\_=13 \\def_{\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss\\_\\hss{\rtbr}{\rtbr} + \\catcode`\\\%=12 + \\catcode`\\|=13 \\def|{\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss*\\mathchar"326A*\\hss{\rtbr}{\rtbr} + \\catcode`\\~=13 \\def~{\lftbr}\\indent\\hbox to \\the\\fontdimen\\tw@\\the\ + {\lftbr}\\hss*\\mathchar"3218*\\hss{\rtbr}{\rtbr} + \\parindent\\z@\\lumplines\\lumpspaces{\rtbr} +\\egroup + +\% LUMPLINE AND LUMPSPACE MACROS \% NOTE 5 +\% +{\lftbr}\\catcode`\\^^M=13 \\gdef\\lumplines{\lftbr}\\catcode`\\^^M=13 \\let^^M= +\\def\\lumpline@{\lftbr}\\par\\skip@=\\z@\\let\\munch@=\\lumpB@\\futurelet\\lump +\\def\\lumpA@{\lftbr}\\ifx\\lumpline@\\lump@\\advance\\skip@\\baselineskip + \\else\\let\\munch@=\\relax\\vskip\\skip@\\fi\\munch@{\rtbr} +\\def\\lumpB@#1{\lftbr}\\futurelet\\lump@\\lumpA@{\rtbr} +{\lftbr}\\catcode`\\ =13 \\gdef\\lumpspaces{\lftbr}\\catcode`\\ =13\\relax\\let +\goodbreak +\\def\\lumpspace@{\lftbr}\\blanksize@=\\the\\fontdimen\\tw@\\the\\font + \\skip@=\\z@\\let\\munch@=\\lumpb@\\futurelet\\lump@\\lumpa@{\rtbr} +\goodbreak +\\def\\lumpa@{\lftbr}\\advance\\skip@\\blanksize@\\ifx\\lumpspace@\\lump@ + \\else\\let\\munch@=\\relax\\hskip\\skip@\\fi\\munch@{\rtbr} +\\def\\lumpb@#1{\lftbr}\\futurelet\\lump@\\lumpa@{\rtbr} +\\let\\munch@=\\relax + +\% PAGE CONTROL MACROS \% NOTE 5 +\% +\\def\\newpage{\lftbr}\\balance\\ifold@\\null\\vfill\\eject\\fi{\rtbr} +\\def\\evenpage{\lftbr}\\newpage\\ifodd\\pageno\\null\\vfill\\eject\\fi{\rtbr} +\\def\\oddpage{\lftbr}\\newpage\\ifodd\\pageno\\else\\null\\vfill\\eject\\fi{\rt + +\% HEADING AND FOOTING MACROS \% NOTE 57 +\% +\\newtoks\\leftheading \\newtoks\\leftfooting +\\newtoks\\rightheading \\newtoks\\rightfooting +\\newtoks\\centerheading \\newtoks\\centerfooting +\\newtoks\\insideheading \\newtoks\\insidefooting +\\newtoks\\outsideheading \\newtoks\\outsidefooting +\\newtoks\\headline \\newtoks\\footline +\goodbreak +\\def\\buildline{\lftbr}\\let\\lft=\\zer@\\let\\rght=\\@ne + \\ifdim\\wd3=\\z@\\else\\ifodd\\pageno\\let\\lft=\\thr@@\\else\\let\\rght=\\ + \\ifdim\\wd4=\\z@\\else\\ifodd\\pageno\\let\\rght=\\f@ur\\else\\let\\lft=\\f + \\triplehead\\lft\\tw@\\rght{\rtbr} +\goodbreak +\\def\\triplehead#1#2#3{\lftbr}\\skip@=1em\\skip@ii=1em + \\dimen@=\\wd#1\\advance\\dimen@-\\wd#3\% + \\ifdim\\dimen@>\\z@\\advance\\skip@ii\\dimen@ minus\\dimen@ + \\else\\advance\\skip@-\\dimen@ minus-\\dimen@\\fi + {\lftbr}\\box#1\\hskip\\skip@\\hfil\\box#2\\hfil\\hskip\\skip@ii\\box#3{\rtb +\goodbreak +\\def\\loadbox#1#2{\lftbr}\\setbox#1=\\hbox{\lftbr}\\the#2{\rtbr}{\rtbr} +\\newcount\\headcount\\newcount\\footcount +\\def\\suspendheading#1{\lftbr}\\global\\headcount=#1{\rtbr} +\\def\\suspendfooting#1{\lftbr}\\global\\footcount=#1{\rtbr} +\\def\\noheading{\lftbr}\\suspendheading\\m@ne{\rtbr} +\\def\\nofooting{\lftbr}\\suspendfooting\\m@ne{\rtbr} +\\def\\resumeheading{\lftbr}\\suspendheading\\zer@{\rtbr} +\\def\\resumefooting{\lftbr}\\suspendfooting\\zer@{\rtbr} +\goodbreak +\\headline{\lftbr}\\ifnum\\headcount=\\z@\\loadbox\\tw@\\centerheading + \\loadbox\\zer@\\leftheading\\loadbox\\@ne\\rightheading + \\loadbox\\thr@@\\insideheading\\loadbox\\f@ur\\outsideheading\\buildlin + \\else\\hfil\\ifnum\\headcount>\\z@\\global\\dec\\headcount\\fi\\fi{\rtbr} +\goodbreak +\\footline{\lftbr}\\ifnum\\footcount=\\z@\\loadbox\\tw@\\centerfooting + \\loadbox\\zer@\\leftfooting\\loadbox\\@ne\\rightfooting + \\loadbox\\thr@@\\insidefooting\\loadbox\\f@ur\\outsidefooting\\buildlin + \\else\\hfil\\ifnum\\footcount>\\z@\\global\\dec\\footcount\\fi\\fi{\rtbr} +\goodbreak +\\resumeheading +\\resumefooting +\% footline is normally a centered page number in font \\tenrm +\\centerfooting{\lftbr}\\tenrm\\folio{\rtbr} + +\% BOX MACROS +\% +\\newdimen\\boxline +\\newdimen\\boxspace +\\boxline .01332in +\\boxspace 5pt +\\newdimen\\depthbox@ +\\def\\boxit#1{\lftbr}\\hbox{\lftbr}\\vrule width\\boxline + \\vbox{\lftbr}\\hrule height\\boxline\\kern\\boxspace + \\hbox{\lftbr}\\kern\\boxspace + \\vbox{\lftbr}\\halign{\lftbr}\\hfil##\\hfil\\cr\\st + \\kern\\boxspace{\rtbr}\% + \\kern\\boxspace\\hrule height\\boxline{\rtbr}\% + \\vrule width\\boxline{\rtbr}{\rtbr} +\\def\\centerbox#1{\lftbr}\\vskip\\abovedisplayskip + \\centerline{\lftbr}\\boxit{\lftbr}#1{\rtbr}{\rtbr}\% + \\vskip\\belowdisplayskip{\rtbr} +\\def\\textbox#1{\lftbr}\\depthbox@=\\dp\\strutbox\\advance\\depthbox@ by .4\\p@ + \\ifvmode\\indent\\fi\\setbox\\z@\\hbox{\lftbr}\\vrule + \\vbox{\lftbr}\\hrule\\hbox{\lftbr}\\kern\\p@#1\\strut\\kern\\p@{\rtbr}\ + \\vrule{\rtbr}\\lower\\depthbox@\\box\\z@{\rtbr} + +\% HP2680A and HP2688A COPY CONTROL MACROS \% NOTE 66 +\% +\\newcount\\oldcopy\\newcount\\copycnt +\\def\\copy@{\lftbr}\\globalspecial{\lftbr}HP2688A,HP2680A COPIES \\number\\copy +\\def\\selectcopycount{\lftbr}\\afterassignment\\copy@\\copycnt{\rtbr} +\\def\\copieson{\lftbr}\\global\\count\\copycnt=\\oldcopy\\copy@{\rtbr} +\\def\\copiesoff{\lftbr}\\global\\count\\copycnt=1 \\copy@{\rtbr} +\\def\\copies{\lftbr}\\afterassignment\\copieson\\global\\oldcopy{\rtbr} +\\copycnt=1 +\\oldcopy=2 + +\% HP2680A and HP2688A LOGICAL PAGE CONTROL (LPC) MACROS \% NOTE 6 +\% +\\def\\lplist#1{\lftbr}\\globalspecial{\lftbr}HP2688A,HP2680A ILP #1{\rtbr}{\rtb +\\def\\lpdef#1{\lftbr}\\globalspecial{\lftbr}HP2688A,HP2680A LP #1{\rtbr}{\rtbr} +\\newif\\ifempty@\\empty@true +\\newcount\\lpcount@\\newcount\\nextlp@ +\\def\\selectlpcounter#1{\lftbr}\\lpcount@#1 \\setlpcount@{\lftbr}\\the\\lpcount +\\def\\setlpcount@#1{\lftbr}\\globalspecial{\lftbr}HP2688A,HP2680A ELP #1{\rtbr} +\\def\\lpageto{\lftbr}\\eject\\afterassignment\\lpeject@\\nextlp@{\rtbr} +\\def\\ppageto{\lftbr}\\eject\\afterassignment\\lpage@\\nextlp@{\rtbr} +\\def\\lpeject@{\lftbr}\\nextlp@=-\\nextlp@\\lpage@{\rtbr} +\\def\\lpresume{\lftbr}\\eject\\nextlp@=\\z@\\lpage@{\rtbr} +\\def\\lpreset{\lftbr}\\eject\\nextlp@=33 \\lpage@ \\nextlp@=\\z@{\rtbr} +\\def\\lpexit{\lftbr}\\eject\\nextlp@=34 \\lpage@ \\nextlp@=\\z@{\rtbr} +\\def\\lpage@{\lftbr}\\ifempty@\\count\\lpcount@=\\nextlp@\\global\\empty@false\ +\\everyjob{\lftbr}\\message{\lftbr}Using HP TeX Version \\fmtversion{\rtbr}\\se + +\% TABLE MACROS \% NOTE 6 +\% +\\newcount\\maxcol@ +\\newbox\\topstrutbox \\def\\topstrut{\lftbr}\\unhcopy\\topstrutbox{\rtbr} +\\setbox\\topstrutbox=\\hbox{\lftbr}\\vrule height11pt depth0pt width0pt{\rtbr} +\\newbox\\botstrutbox \\def\\botstrut{\lftbr}\\unhcopy\\botstrutbox{\rtbr} +\\setbox\\botstrutbox=\\hbox{\lftbr}\\vrule height0pt depth4pt width0pt{\rtbr} +\\newdimen\\tableline \\tableline.01332in +\\newskip\\tablespace \\tablespace5pt +\\def\\paragraph#1{\lftbr}\\vbox{\lftbr}\\hrule height\\z@ width\\hsize depth\\z +\\def\\tbar{\lftbr}\\ifvmode\\hrule\\else\\vrule width\\hsize depth\\z@\\fi heig +\\def\\uptoks@{\lftbr}\\inc\\cntA@\\inc\\cntB@ + \\ifnum\\cntA@<\\count19 \\ifnum\\cntB@<\\count19 \\else\\err@\\fi\\else\\er +\\def\\err@{\lftbr}\\errmessage{\lftbr}Columns too wide for tabular format{\rtbr +\\def\\bump@{\lftbr}\\ifnum\\cntC@<\\maxcol@\\inc\\cntC@\\uptoks@\\fi{\rtbr} +\\def\\tableformat#1{\lftbr}\\tablelet\\just@\\just@\\relax\\parse@#1~\\done@~{\ +\\def\\tablerow#1{\lftbr}\\tablelet\\bbar@\\wbar@\\endrow@\\parse@#1~\\done@~{\r +\\def\\tablebar#1{\lftbr}{\lftbr}\\let\\topstrut\\relax\\let\\botstrut\\relax\\t + \\tablerow{\lftbr}#1{\rtbr}{\rtbr}{\rtbr} +\\def\\tablelet#1#2#3{\lftbr}\\let\\b@#1\\let\\w@#2\\let\\f@#3\\cntA@\\count15 \ + \\cntC@\\z@\\let\\parse@=\\parseline@\\ifhmode\\par\\else\\nointerlineskip\\ + \% NOTE 74 +\\def\\just@#1{\lftbr}\\let\\b@\\tform@\\let\\w@\\tform@\\maxcol@\\z@\\let\\tabl + \% NOTE 75 +\\def\\tform@#1{\lftbr}\\tform@@#1~{\rtbr} +\\def\\tform@@#1#2~{\lftbr}\\uptoks@\\toks\\cntA@{\lftbr}#1{\rtbr}\\dimen\\cntB@ +\\def\\bbar@#1{\lftbr}\\beginrow@{\lftbr}#1{\rtbr}\\vrule width\\tableline\\vrul +\\def\\wbar@#1{\lftbr}\\beginrow@{\lftbr}#1{\rtbr}\\kern\\tableline\\vrule width +\\def\\beginrow@#1{\lftbr}\\let\\b@\\vbar@\\let\\w@\\ibar@\\setbox\\z@=\\hbox\\b + \\parindent\\z@\\leftskip\\tablespace\\rightskip\\tablespace\\let\\span=\\sp +\\def\\endrow@{\lftbr}\\kern-\\dimen\\cntB@\\egroup\\tablejust@{\lftbr}\\unhbox\ +\\def\\vbar@#1{\lftbr}\\futurelet\\lookahead@\\cs@#1~\\vrule width\\tableline{\r +\\def\\ibar@#1{\lftbr}\\futurelet\\lookahead@\\cs@#1~\\kern\\tableline{\rtbr} +\\def\\cs@#1~{\lftbr}\\ifx\\span@\\lookahead@#1~\\else\\span@\\@ne#1~\\fi\\lower + \% NOTE 84 +\\def\\parseline@#1~{\lftbr}\\ifx\\done@#1\\let\\parse@\\f@\\else\\let\\p@ss\\pa + \\p@ss#1|\\done@|\\fi\\parse@{\rtbr} +\\def\\parsecol@#1|{\lftbr}\\def\\parsemode@{\lftbr}\\ifx\\done@\\lookahead@\\w@ + \\let\\p@ss\\lastp@ss\\else\\b@{\lftbr}#1{\rtbr}\\fi\\p@ss{\rtbr}\% + \\futurelet\\lookahead@\\parsemode@{\rtbr} +\\def\\lastp@ss#1|{\lftbr}{\rtbr} +\\def\\span@#1#2~{\lftbr}\\bump@\\hsize\\dimen\\cntB@\\edef\\x@{\lftbr}\\the\\to + \\for\\count@=2to#1do\% + {\lftbr}\\bump@\\advance\\hsize\\dimen\\cntB@\\advance\\hsize\\tableline + \\setbox\\z@=\\x@{\lftbr}\\topstrut#2\\botstrut{\rtbr}{\rtbr} + +\% SECTION AND HEADING MACROS \% NOTE 8 +\% +\\newcount\\basehead\\basehead=\\count10 +\\advance\\count10by4 \% This allocates 4 counters for head counters +\\newcount\\hdlevel +\\def\\setlevelno#1{\lftbr}\\hdlevel=0 \\cntA@=\\basehead\\sethead@0#1.-1.\\head +\\def\\sethead@#1.{\lftbr}\\ifnum-1=#1 \\let\\next@=\\relax\\else\\let\\next@=\\ + \% NOTE 90 + \\ifnum\\hdlevel<4 \\inc\\hdlevel\\inc\\cntA@\\count\\cntA@=#1\\fi\\fi\\next +\goodbreak +\\def\\head#1{\lftbr}\\ifnum#1>\\hdlevel\\uplevel@{\lftbr}#1{\rtbr}\\else + \\hdlevel=#1\\cntA@=#1\\advance\\cntA@\\basehead\\fi + \\inc{\lftbr}\\count\\cntA@{\rtbr}\\head@{\rtbr} +\goodbreak +\\def\\uplevel@#1{\lftbr}\\inc\\hdlevel\\cntA@=\\hdlevel + \\advance\\cntA@\\basehead\\count\\cntA@=0 + \\ifnum\\hdlevel=#1 \\else\\uplevel@{\lftbr}#1{\rtbr}\\fi{\rtbr} +\goodbreak +\\def\\head@{\lftbr}{\lftbr}\\inc\\basehead\\xdef\\levelno{\lftbr}\\the\\count\\ + \\for\\cntB@=\\tw@ to\\hdlevel do{\lftbr}\\inc\\basehead + \\xdef\\levelno{\lftbr}\\levelno.\\the\\count\\basehead{\rtbr}{\rtbr}{\r +\goodbreak +\\setlevelno{\lftbr}0{\rtbr} +\\newtoks\\firstlevelhead \\def\\headA@{\lftbr}\\head\\@ne\\the\\firstlevelhea +\\newtoks\\secondlevelhead \\def\\headB@{\lftbr}\\head\\tw@\\the\\secondlevelhe +\\newtoks\\thirdlevelhead \\def\\headC@{\lftbr}\\head\\thr@@\\the\\thirdlevelh +\\newtoks\\fourthlevelhead \\def\\headD@{\lftbr}\\head\\f@ur\\the\\fourthlevelh +\\def\\level#1#2{\lftbr}\\def\\title{\lftbr}#2{\rtbr}\% + \\ifcase#1\\relax\\or\\headA@\\or\\headB@\\or\\headC@\\or\\headD@\\fi{\rtbr} +\\firstlevelhead{\lftbr}\\vfill\\eject\\vbox to1.5in{\lftbr}{\rtbr}\\centerline{ + \\vskip1.0in\\ctswrite{\lftbr}\\vrule height20pt width0pt\\tenbf\\title{\rtb +\\secondlevelhead{\lftbr}\\need.75in\\bigskip\\leftline{\lftbr}\\twelvebf\\level + \\medskip\\ctswrite{\lftbr}\\hskip15pt\\tenrm\\title{\rtbr}{\rtbr} +\\thirdlevelhead{\lftbr}\\need.6in\\medskip\\leftline{\lftbr}\\tenbf\\levelno\\e + \\ctswrite{\lftbr}\\hskip30pt\\tenrm\\title{\rtbr}{\rtbr} +\\fourthlevelhead{\lftbr}\\need.5in\\leftline{\lftbr}\\tenrm\\levelno\\enspace\\ + \\ctswrite{\lftbr}\\hskip45pt\\tenrm\\title{\rtbr}{\rtbr} + +\% CONTENTS FILE MACROS +\% +\\newwrite\\cnts@ +\\newif\\ifnocts@\\nocts@true +\\newtoks\\topofcontents +\\newtoks\\botofcontents +\\let\\content@=\\let\% \% NOTE +\\def\\ctswrite#1{\lftbr}\\ifnocts@\\openout\\cnts@=\\jobname*[*]. \\nocts@false + {\lftbr}\\def\\_{\lftbr}\\kern.06em \\vbox{\lftbr}\\hrule width.3em{\rtbr}{\ + \\edef\\a@{\lftbr}\\write\\cnts@{\lftbr}\\content@{\lftbr}#1{\rtbr}{\lftbr}\ +{\lftbr}\\catcode`\\@=12 \\gdef\\content@ #1#2{\lftbr}\\need.5in\\lline{\lftbr}# +\\def\\contents{\lftbr}\\ifnocts@\\else\\closeout\\cnts@\\null\\supereject + \\begingroup\\pageno\\m@ne\\null\\the\\topofcontents\\input\\jobname*. + \\the\\botofcontents\\eject\\endgroup\\nocts@true\\fi{\rtbr} +\\topofcontents{\lftbr}\\noheading\\vskip1in plus1fil + \\centerline{\lftbr}\\fourteenbf Table of Contents{\rtbr}\\vskip1in plus1fil +\\botofcontents{\lftbr}\\vfil{\rtbr} + +\% FOOTNOTES AND INSERTIONS +\% +\\def\\vfootnote#1{\lftbr}\\insert\\footins\\bgroup + \\interlinepenalty\\interfootnotelinepenalty + \\splittopskip\\ht\\strutbox \% top baseline for broken footnotes + \\splitmaxdepth\\dp\\strutbox \\floatingpenalty\\@MM + \\realhsize\\leftskip\\z@skip \\rightskip\\z@skip + \\baselineskip1\\baselineskip + \\textindent{\lftbr}#1{\rtbr}\\footstrut\\futurelet\\next\\fo@t{\rtbr} +\\newcount\\notenumber +\\def\\resetnotes{\lftbr}\\global\\notenumber=0 {\rtbr} +\\def\\note{\lftbr}\\global\\inc\\notenumber\\footnote{\lftbr}$^{\lftbr}\\the\\n +\\def\\midinsert{\lftbr}\\@midtrue\\p@gefalse\\@ins{\rtbr} +\\def\\@ins{\lftbr}\\par\\begingroup\\setbox\\z@\\vbox\\bgroup\\realhsize\\divid + \% NOTE 102 +\goodbreak +\\def\\endinsert{\lftbr}\\egroup\\count@-100 \% finish the \\vbox + \\ifp@ge\\else\\dimen@\\ht\\z@\\advance\\dimen@\\dp\\z@ + \\advance\\dimen@12\\p@\\multiply\\dimen@-\\nocol@ + \\advance\\dimen@-\\pagetotal\\advance\\dimen@\\pagegoal + \\ifdim\\dimen@<\\z@\\@midfalse\\else\\count@100 \\fi\\fi + \goodbreak + \\if@mid \\balance@ + \\global\\setbox\\contrb@\\vbox{\lftbr}\\unvbox\\contrb@\\bigskip\\box\\z@ + \\else\\insert\\topins{\lftbr}\\penalty\\count@ \% floating insertion + \\splittopskip\\z@skip\\splitmaxdepth\\maxdimen\\floatingpenalty\\z@ + \\ifp@ge \\divide\\vsize\\nocol@ \\dimen@\\dp\\z@ + \\vbox to\\vsize{\lftbr}\\unvbox\\z@\\kern-\\dimen@{\rtbr}\% depth is zero + \\else \\box\\z@\\nobreak\\bigskip\\fi{\rtbr}\\fi\\endgroup{\rtbr} +\goodbreak + +\% COLUMN MACROS \% NOTE 104 +\% +\\def\\BEGINtwocolumns{\lftbr}\\multicol@\\tw@{\rtbr} +\\def\\BEGINthreecolumns{\lftbr}\\multicol@\\thr@@{\rtbr} +\\def\\ENDtwocolumns{\lftbr}\\balance@\\goal@\\divide\\endgroup\\newtotal@\\begi +\\let\\ENDthreecolumns=\\ENDtwocolumns +\\def\\balance{\lftbr}\\balance@\\newtotal@{\rtbr} +\\def\\balance@{\lftbr}\\par{\lftbr}\\let\\ifreal@=\\iffalse\\eject{\rtbr}{\rtbr +\\def\\newtotal@{\lftbr}{\lftbr}\\each@{\lftbr}\\the\\toks\\count@{\rtbr} + \\ifold@\\insert\\hacker@{\lftbr}{\rtbr}\\prevtotal@\\pagetotal-\\dimen@\\fi +\\def\\multicol@#1{\lftbr}\\ifnum\\nocol@>\\@ne\\errset{\lftbr}You can't have co + within columns. \\string\\start{\lftbr}\\blockname@{\rtbr} ignored{\rtbr + \\else\\balance@\\nocol@=#1\\goal@\\multiply\\advance\\hsize\\columnspace + \\divide\\hsize#1\\advance\\hsize-\\columnspace + \\multiply\\vsize#1\\brokenpenalty\\z@ + \\each@{\lftbr}\\multiply\\count\\count@\\nocol@\\multiply\\skip\\count@\\no + \\newtotal@\\global\\dimen@=\\baselineskip\\baselineskip\\dimen@ plus\\dimen + +\\message{\lftbr}output routines{\rtbr} + +\% OUTPUT ROUTINES \% NOTE 10 +\% +\\newbox\\contrb@ \\newbox\\out@ +\\newdimen\\columnspace +\\columnspace=.5in +\\let\\ifreal@=\\iftrue +\\newcount\\nocol@ \\nocol@=1 +\\newinsert\\hacker@ +\\def\\ifold@{\lftbr}\\ifvoid\\contrb@\\else{\rtbr} +\\def\\ifcol@{\lftbr}\\ifnum\\nocol@=\\@ne\\setbox\\out@=\\box\\@cclv \\else{\rt +\\def\\setboxA@{\lftbr}\\inc\\cntA@\\setbox\\cntA@{\rtbr} +\\def\\boxA@{\lftbr}\\inc\\cntA@\\box\\cntA@{\rtbr} +\\def\\each@#1{\lftbr}\\for\\count@=\\count19 to254 do{\lftbr}#1{\rtbr}{\rtbr} +\\def\\unglue@#1{\lftbr}\\setbox#1=\\vbox{\lftbr}\\unvbox#1{\rtbr}{\rtbr} +\\def\\realhsize{\lftbr}\\advance\\hsize\\columnspace\\multiply\\hsize\\nocol@ + \\advance\\hsize-\\columnspace{\rtbr} +\\output{\lftbr}\\hpoutput{\rtbr} + +\goodbreak +\\def\\hpoutput{\lftbr}\\splittopskip=\\topskip + \\setbox\\hacker@=\\box\\voidb@x + \\ifvoid\\contrb@\\dimen@=\\ht\\@cclv + \\else\\prevtotal@\\advance\\dimen@\\ht\\@cclv\\fi + \\ifreal@\\realoutput@\\else\\fakeoutput@\\fi + \\each@{\lftbr}\\global\\toks\\count@\\ifvoid\\count@{\lftbr}{\rtbr}\\else{\ + +\\def\\realoutput@{\lftbr}\\ifcol@\\splitcol@\\split@\\setheight@\\setout@ + \\unvbox\\@cclv \\penalty\\outputpenalty\\fi + \\setbox\\@cclv=\\pagestuff@{\lftbr}{\rtbr}\\each@{\lftbr}\\divide\\skip\\co + \\realhsize\\divide\\vsize\\nocol@\\leftskip\\z@\\rightskip\\z@ + \\plainoutput\\global\\empty@true + \\global\\count\\lpcount@=\\nextlp@\\ifnum\\nextlp@>32 \\global\\nextlp@\\z@ + +\\def\\fakeoutput@{\lftbr}\\unglue@{\lftbr}\\@cclv{\rtbr}\\global\\let\\ifreal@= + \\ifcol@\\dimen@=\\baselineskip + \\dimen@=\\ifnum\\nocol@>2 2\\dimen@ \\else 1.1667\\dimen@ \\fi + \\advance\\dimen@\\ht\\@cclv\\splitcol@{\lftbr}\\box\\@cclv{\rtbr}\\set + \\dimen@=\\dp\\out@\\global\\setbox\\contrb@=\\pagestuff@{\lftbr}\\vskip-\\ + +\\def\\makeheadline{\lftbr}\\vbox to\\z@{\lftbr}\\vskip-22.5\\p@ + \\lline{\lftbr}\\vbox to8.5\\p@{\lftbr}{\rtbr}\\the\\headline{\rtbr}\\vss{\rtb +\\def\\makefootline{\lftbr}\\baselineskip24\\p@\\lline{\lftbr}\\the\\footline{\r + +\\def\\pagecontents{\lftbr}\\ifvoid\\topins\\else\\unvbox\\topins\\fi + \\unvbox\\@cclv \% open up \\box255 + \\ifvoid\\footins\\else \% footnote info is present + \\vskip\\skip\\footins + \\footnoterule + \\unvbox\\footins\\fi + \\ifr@ggedbottom\\vfil\\fi{\rtbr} + +\\def\\splitcol@#1{\lftbr}\\divide\\dimen@\\nocol@\\cntA@=\\count14 + \\for\\count@=\\tw@ to\\nocol@ do{\lftbr}\\setboxA@=\\split@{\rtbr}\\setboxA +\\def\\split@{\lftbr}\\ifvoid\\@cclv\\vbox{\lftbr}\\lline\\hfil\\vfil{\rtbr}\\el +\\def\\setheight@{\lftbr}\\ifold@\\setmax@\\fi{\rtbr} +\\def\\pagestuff@#1{\lftbr}\\vbox{\lftbr}\\ifold@\\unvbox\\contrb@\\medskip\\fi\ +\\def\\setout@{\lftbr}\\cntA@=\\count14 \\setbox\\out@=\\vbox{\lftbr}\\hbox + {\lftbr}\\for\\count@=\\tw@ to\\nocol@ do{\lftbr}\\boxA@\\hskip\\columnspace +\\def\\setmax@{\lftbr}\\dimen@=\\z@ \\cntA@=\\count14 + \\for\\count@=\\@ne to\\nocol@ do{\lftbr}\\inc\\cntA@\\unglue@{\lftbr}\\cntA + \\ifdim\\ht\\cntA@>\\dimen@ \\dimen@=\\ht\\cntA@\\fi{\rtbr}\% + \\for\\count@=\\@ne to\\nocol@ do{\lftbr}\\setbox\\cntA@ + =\\vbox to\\dimen@{\lftbr}\\unvbox\\cntA@\\ifr@ggedbottom\\vss\\fi{\rtbr +\\def\\prevtotal@{\lftbr}\\dimen@=\\medskipamount + \\advance\\dimen@\\ht\\contrb@\\multiply\\dimen@-\\nocol@{\rtbr} +\\def\\goal@#1{\lftbr}\\ifdim\\pagegoal=\\maxdimen\\else + \\dimen@=\\pagegoal#1\\dimen@\\nocol@\\pagegoal\\dimen@\\fi{\rtbr} + + +\\catcode`@=12 \% NOTE 112 +\finish{verbatim} +\bye |