@x %test version @y %out version 1 @z @x \font\twelvept=cmbx12 \font\tentex=cmr10 @y \font\twelvept=cmbx12 @z @x @p program tex8600(sysprint,addrline,setfile,cgfonts,infofile); @y @p program tex8600(sysprint,addrline,setfile,cgfonts); @z @x @@/ static@/ @!com_table :packed array[0..18] of string(7);@/ value@/ com_table[0] := 'HDR'; {Header Record}@/ com_table[1] := 'CHWIDTH';{Character Width}@/ com_table[2] := 'RT'; {Reverse Type}@/ com_table[3] := 'PS'; {Point Size}@/ com_table[4] := 'SS'; {Set Size}@/ com_table[5] := 'VMF'; {Vertical Move Forward}@/ com_table[6] := 'VMR'; {Vertical Move Reverse}@/ com_table[7] := 'RW'; {Rule Width}@/ com_table[8] := 'RD'; {Rule Depth}@/ com_table[9] := 'IR'; {Insert Rule}@/ com_table[10] := 'SL'; {Slant Mode}@/ com_table[11] := 'RTWT'; {Reverse Type Window Top}@/ com_table[12] := 'RTWB'; {Reverse Type Window Bottom}@/ com_table[13] := 'AU'; {Auxiliary Character Set}@/ com_table[14] := 'F'; {Change Fonts}@/ com_table[15] := 'HMR'; {Horizontal Move Right}@/ com_table[16] := 'HML'; {Horizontal Move Left}@/ com_table[17] := 'TTS'; {8600 character, in decimal}@/ com_table[18] := 'MAXCMD';@/ %include pasclib(asciicvt)@/ @y @@/ static@/ @!com_table :packed array[0..18] of string(7);@/ @!ordx : packed array['00'xc..'FF'xc] of '00'x..'7f'x;@/ @!chrx : packed array['00'x..'7F'x] of '00'xc..'FF'xc;@/ value@/ com_table[0] := 'HDR'; {Header Record}@/ com_table[1] := 'CHWIDTH';{Character Width}@/ com_table[2] := 'RT'; {Reverse Type}@/ com_table[3] := 'PS'; {Point Size}@/ com_table[4] := 'SS'; {Set Size}@/ com_table[5] := 'VMF'; {Vertical Move Forward}@/ com_table[6] := 'VMR'; {Vertical Move Reverse}@/ com_table[7] := 'RW'; {Rule Width}@/ com_table[8] := 'RD'; {Rule Depth}@/ com_table[9] := 'IR'; {Insert Rule}@/ com_table[10] := 'SL'; {Slant Mode}@/ com_table[11] := 'RTWT'; {Reverse Type Window Top}@/ com_table[12] := 'RTWB'; {Reverse Type Window Bottom}@/ com_table[13] := 'AU'; {Auxiliary Character Set}@/ com_table[14] := 'F'; {Change Fonts}@/ com_table[15] := 'HMR'; {Horizontal Move Right}@/ com_table[16] := 'HML'; {Horizontal Move Left}@/ com_table[17] := 'TTS'; {8600 character, in decimal}@/ com_table[18] := 'MAXCMD';@/ { EBCDIC to ASCII INTEGER and ASCII INTEGER to EBCDIC conversion } { EBCDIC char to ASCII integer } { ASCII INTEGER to EBCDIC char } ordx['00'xc]:='00'x; { NUL NUL } chrx['00'x]:='00'xc; { NUL NUL } ordx['01'xc]:='01'x; { SOH SOH } chrx['01'x]:='01'xc; { SOH SOH } ordx['02'xc]:='02'x; { STX STX } chrx['02'x]:='02'xc; { STX STX } ordx['03'xc]:='03'x; { ETX ETX } chrx['03'x]:='03'xc; { ETX ETX } ordx['04'xc]:='00'x; { ... NUL } chrx['04'x]:='37'xc; { EOT EOT } ordx['05'xc]:='09'x; { HT HT } chrx['05'x]:='2D'xc; { ENQ ENQ } ordx['06'xc]:='00'x; { ... NUL } chrx['06'x]:='2E'xc; { ACK ACK } ordx['07'xc]:='7F'x; { DEL DEL } chrx['07'x]:='2F'xc; { BEL BEL } ordx['08'xc]:='00'x; { ... NUL } chrx['08'x]:='16'xc; { BS BS } ordx['09'xc]:='00'x; { ... NUL } chrx['09'x]:='05'xc; { HT HT } ordx['0A'xc]:='00'x; { ... NUL } chrx['0A'x]:='25'xc; { LF LF } ordx['0B'xc]:='0B'x; { VT VT } chrx['0B'x]:='0B'xc; { VT VT } ordx['0C'xc]:='0C'x; { FF FF } chrx['0C'x]:='0C'xc; { FF FF } ordx['0D'xc]:='0D'x; { CR CR } chrx['0D'x]:='0D'xc; { CR CR } ordx['0E'xc]:='0E'x; { SO SO } chrx['0E'x]:='0E'xc; { SO SO } ordx['0F'xc]:='0F'x; { SI SI } chrx['0F'x]:='0F'xc; { SI SI } ordx['10'xc]:='10'x; { DLE DLE } chrx['10'x]:='10'xc; { DLE DLE } ordx['11'xc]:='11'x; { DC1 DC1 } chrx['11'x]:='11'xc; { DC1 DC1 } ordx['12'xc]:='12'x; { DC2 DC2 } chrx['12'x]:='12'xc; { DC2 DC2 } ordx['13'xc]:='13'x; { TM DC3 } chrx['13'x]:='13'xc; { DC3 TM } ordx['14'xc]:='00'x; { ... NUL } chrx['14'x]:='3C'xc; { DC4 DC4 } ordx['15'xc]:='00'x; { ... NUL } chrx['15'x]:='3D'xc; { NAK NAK } ordx['16'xc]:='08'x; { BS BS } chrx['16'x]:='32'xc; { SYN SYN } ordx['17'xc]:='00'x; { ... NUL } chrx['17'x]:='26'xc; { ETB ETB } ordx['18'xc]:='18'x; { CAN CAN } chrx['18'x]:='18'xc; { CAN CAN } ordx['19'xc]:='19'x; { EM EM } chrx['19'x]:='19'xc; { EM EM } ordx['1A'xc]:='00'x; { ... NUL } chrx['1A'x]:='3F'xc; { SUB SUB } ordx['1B'xc]:='00'x; { ... NUL } chrx['1B'x]:='27'xc; { ESC ESC } ordx['1C'xc]:='1C'x; { IFS FS } chrx['1C'x]:='1C'xc; { FS IFS } ordx['1D'xc]:='1D'x; { IGS GS } chrx['1D'x]:='1D'xc; { GS IGS } ordx['1E'xc]:='1E'x; { IRS RS } chrx['1E'x]:='1E'xc; { RS IRS } ordx['1F'xc]:='1F'x; { IUS US } chrx['1F'x]:='1F'xc; { US IUS } ordx['20'xc]:='00'x; { ... NUL } chrx['20'x]:='40'xc; { SP SP } ordx['21'xc]:='00'x; { ... NUL } chrx['21'x]:='5A'xc; { ! ! } ordx['22'xc]:='00'x; { ... NUL } chrx['22'x]:='7F'xc; { " " } ordx['23'xc]:='00'x; { ... NUL } chrx['23'x]:='7B'xc; { # # } ordx['24'xc]:='00'x; { ... NUL } chrx['24'x]:='5B'xc; { $ $ } ordx['25'xc]:='0A'x; { LF LF } chrx['25'x]:='6C'xc; { % % } ordx['26'xc]:='17'x; { ETB ETB } chrx['26'x]:='50'xc; { & & } ordx['27'xc]:='1B'x; { ESC ESC } chrx['27'x]:='7D'xc; { ' ' } ordx['28'xc]:='00'x; { ... NUL } chrx['28'x]:='4D'xc; { ( ( } ordx['29'xc]:='00'x; { ... NUL } chrx['29'x]:='5D'xc; { ) ) } ordx['2A'xc]:='00'x; { ... NUL } chrx['2A'x]:='5C'xc; { * * } ordx['2B'xc]:='00'x; { ... NUL } chrx['2B'x]:='4E'xc; { + + } ordx['2C'xc]:='00'x; { ... NUL } chrx['2C'x]:='6B'xc; { , , } ordx['2D'xc]:='05'x; { ENQ ENQ } chrx['2D'x]:='60'xc; { - - } ordx['2E'xc]:='06'x; { ACK ACK } chrx['2E'x]:='4B'xc; { . . } ordx['2F'xc]:='07'x; { BEL BEL } chrx['2F'x]:='61'xc; { / / } ordx['30'xc]:='00'x; { ... NUL } chrx['30'x]:='F0'xc; { 0 0 } ordx['31'xc]:='00'x; { ... NUL } chrx['31'x]:='F1'xc; { 1 1 } ordx['32'xc]:='16'x; { SYN SYN } chrx['32'x]:='F2'xc; { 2 2 } ordx['33'xc]:='00'x; { ... NUL } chrx['33'x]:='F3'xc; { 3 3 } ordx['34'xc]:='00'x; { ... NUL } chrx['34'x]:='F4'xc; { 4 4 } ordx['35'xc]:='00'x; { ... NUL } chrx['35'x]:='F5'xc; { 5 5 } ordx['36'xc]:='00'x; { ... NUL } chrx['36'x]:='F6'xc; { 6 6 } ordx['37'xc]:='04'x; { EOT EOT } chrx['37'x]:='F7'xc; { 7 7 } ordx['38'xc]:='00'x; { ... NUL } chrx['38'x]:='F8'xc; { 8 8 } ordx['39'xc]:='00'x; { ... NUL } chrx['39'x]:='F9'xc; { 9 9 } ordx['3A'xc]:='00'x; { ... NUL } chrx['3A'x]:='7A'xc; { : : } ordx['3B'xc]:='00'x; { ... NUL } chrx['3B'x]:='5E'xc; { ; ; } ordx['3C'xc]:='14'x; { DC4 DC4 } chrx['3C'x]:='4C'xc; { < < } ordx['3D'xc]:='15'x; { NAK NAK } chrx['3D'x]:='7E'xc; { = = } ordx['3E'xc]:='00'x; { ... NUL } chrx['3E'x]:='6E'xc; { > > } ordx['3F'xc]:='1A'x; { SUB SUB } chrx['3F'x]:='6F'xc; { ? ? } ordx['40'xc]:='20'x; { SP SP } chrx['40'x]:='7C'xc; { @@ @@ } ordx['41'xc]:='00'x; { ... NUL } chrx['41'x]:='C1'xc; { A A } ordx['42'xc]:='00'x; { ... NUL } chrx['42'x]:='C2'xc; { B B } ordx['43'xc]:='00'x; { ... NUL } chrx['43'x]:='C3'xc; { C C } ordx['44'xc]:='00'x; { ... NUL } chrx['44'x]:='C4'xc; { D D } ordx['45'xc]:='00'x; { ... NUL } chrx['45'x]:='C5'xc; { E E } ordx['46'xc]:='00'x; { ... NUL } chrx['46'x]:='C6'xc; { F F } ordx['47'xc]:='00'x; { ... NUL } chrx['47'x]:='C7'xc; { G G } ordx['48'xc]:='00'x; { ... NUL } chrx['48'x]:='C8'xc; { H H } ordx['49'xc]:='00'x; { ... NUL } chrx['49'x]:='C9'xc; { I I } ordx['4A'xc]:='5E'x; { ã ã } chrx['4A'x]:='D1'xc; { J J } ordx['4B'xc]:='2E'x; { . . } chrx['4B'x]:='D2'xc; { K K } ordx['4C'xc]:='3C'x; { < < } chrx['4C'x]:='D3'xc; { L L } ordx['4D'xc]:='28'x; { ( ( } chrx['4D'x]:='D4'xc; { M M } ordx['4E'xc]:='2B'x; { + + } chrx['4E'x]:='D5'xc; { N N } ordx['4F'xc]:='7C'x; { | | } chrx['4F'x]:='D6'xc; { O O } ordx['50'xc]:='26'x; { & & } chrx['50'x]:='D7'xc; { P P } ordx['51'xc]:='00'x; { ... NUL } chrx['51'x]:='D8'xc; { Q Q } ordx['52'xc]:='00'x; { ... NUL } chrx['52'x]:='D9'xc; { R R } ordx['53'xc]:='00'x; { ... NUL } chrx['53'x]:='E2'xc; { S S } ordx['54'xc]:='00'x; { ... NUL } chrx['54'x]:='E3'xc; { T T } ordx['55'xc]:='00'x; { ... NUL } chrx['55'x]:='E4'xc; { U U } ordx['56'xc]:='00'x; { ... NUL } chrx['56'x]:='E5'xc; { V V } ordx['57'xc]:='00'x; { ... NUL } chrx['57'x]:='E6'xc; { W W } ordx['58'xc]:='00'x; { ... NUL } chrx['58'x]:='E7'xc; { X X } ordx['59'xc]:='00'x; { ... NUL } chrx['59'x]:='E8'xc; { Y Y } ordx['5A'xc]:='21'x; { ! ! } chrx['5A'x]:='E9'xc; { Z Z } ordx['5B'xc]:='24'x; { $ $ } chrx['5B'x]:='AD'xc; { [ [ } ordx['5C'xc]:='2A'x; { * * } chrx['5C'x]:='E0'xc; { \ \ } ordx['5D'xc]:='29'x; { ) ) } chrx['5D'x]:='BD'xc; { ] ] } ordx['5E'xc]:='3B'x; { ; ; } chrx['5E'x]:='4A'xc; { ã ã } ordx['5F'xc]:='7E'x; { ^ ^ } chrx['5F'x]:='6D'xc; { _ _ } ordx['60'xc]:='2D'x; { - - } chrx['60'x]:='79'xc; { ` ` } ordx['61'xc]:='2F'x; { / / } chrx['61'x]:='81'xc; { a a } ordx['62'xc]:='00'x; { ... NUL } chrx['62'x]:='82'xc; { b b } ordx['63'xc]:='00'x; { ... NUL } chrx['63'x]:='83'xc; { c c } ordx['64'xc]:='00'x; { ... NUL } chrx['64'x]:='84'xc; { d d } ordx['65'xc]:='00'x; { ... NUL } chrx['65'x]:='85'xc; { e e } ordx['66'xc]:='00'x; { ... NUL } chrx['66'x]:='86'xc; { f f } ordx['67'xc]:='00'x; { ... NUL } chrx['67'x]:='87'xc; { g g } ordx['68'xc]:='00'x; { ... NUL } chrx['68'x]:='88'xc; { h h } ordx['69'xc]:='00'x; { ... NUL } chrx['69'x]:='89'xc; { i i } ordx['6A'xc]:='00'x; { ... NUL } chrx['6A'x]:='91'xc; { j j } ordx['6B'xc]:='2C'x; { , , } chrx['6B'x]:='92'xc; { k k } ordx['6C'xc]:='25'x; { % % } chrx['6C'x]:='93'xc; { l l } ordx['6D'xc]:='5F'x; { _ _ } chrx['6D'x]:='94'xc; { m m } ordx['6E'xc]:='3E'x; { > > } chrx['6E'x]:='95'xc; { n n } ordx['6F'xc]:='3F'x; { ? ? } chrx['6F'x]:='96'xc; { o o } ordx['70'xc]:='00'x; { ... NUL } chrx['70'x]:='97'xc; { p p } ordx['71'xc]:='00'x; { ... NUL } chrx['71'x]:='98'xc; { q q } ordx['72'xc]:='00'x; { ... NUL } chrx['72'x]:='99'xc; { r r } ordx['73'xc]:='00'x; { ... NUL } chrx['73'x]:='A2'xc; { s s } ordx['74'xc]:='00'x; { ... NUL } chrx['74'x]:='A3'xc; { t t } ordx['75'xc]:='00'x; { ... NUL } chrx['75'x]:='A4'xc; { u u } ordx['76'xc]:='00'x; { ... NUL } chrx['76'x]:='A5'xc; { v v } ordx['77'xc]:='00'x; { ... NUL } chrx['77'x]:='A6'xc; { w w } ordx['78'xc]:='00'x; { ... NUL } chrx['78'x]:='A7'xc; { x x } ordx['79'xc]:='60'x; { ` ` } chrx['79'x]:='A8'xc; { y y } ordx['7A'xc]:='3A'x; { : : } chrx['7A'x]:='A9'xc; { z z } ordx['7B'xc]:='23'x; { # # } chrx['7B'x]:='C0'xc; { lcurly } ordx['7C'xc]:='40'x; { @@ @@ } chrx['7C'x]:='4F'xc; { | | } ordx['7D'xc]:='27'x; { ' ' } chrx['7D'x]:='D0'xc; { rcurly } ordx['7E'xc]:='3D'x; { = = } chrx['7E'x]:='9C'xc; { tilde } ordx['7F'xc]:='22'x; { " " } chrx['7F'x]:='07'xc; { DEL DEL } ordx['80'xc]:='00'x; { ... NUL } ordx['81'xc]:='61'x; { a a } ordx['82'xc]:='62'x; { b b } ordx['83'xc]:='63'x; { c c } ordx['84'xc]:='64'x; { d d } ordx['85'xc]:='65'x; { e e } ordx['86'xc]:='66'x; { f f } ordx['87'xc]:='67'x; { g g } ordx['88'xc]:='68'x; { h h } ordx['89'xc]:='69'x; { i i } ordx['8A'xc]:='00'x; { ... NUL } ordx['8B'xc]:='00'x; { ... NUL } ordx['8C'xc]:='00'x; { ... NUL } ordx['8D'xc]:='00'x; { ... NUL } ordx['8E'xc]:='00'x; { ... NUL } ordx['8F'xc]:='00'x; { ... NUL } ordx['90'xc]:='00'x; { ... NUL } ordx['91'xc]:='6A'x; { j j } ordx['92'xc]:='6B'x; { k k } ordx['93'xc]:='6C'x; { l l } ordx['94'xc]:='6D'x; { m m } ordx['95'xc]:='6E'x; { n n } ordx['96'xc]:='6F'x; { o o } ordx['97'xc]:='70'x; { p p } ordx['98'xc]:='71'x; { q q } ordx['99'xc]:='72'x; { r r } ordx['9A'xc]:='00'x; { ... NUL } ordx['9B'xc]:='00'x; { ... NUL } ordx['9C'xc]:='7E'x; { tilde } ordx['9D'xc]:='00'x; { ... NUL } ordx['9E'xc]:='00'x; { ... NUL } ordx['9F'xc]:='00'x; { ... NUL } ordx['A0'xc]:='00'x; { ... NUL } ordx['A1'xc]:='1A'x; { ... SUB } ordx['A2'xc]:='73'x; { s s } ordx['A3'xc]:='74'x; { t t } ordx['A4'xc]:='75'x; { u u } ordx['A5'xc]:='76'x; { v v } ordx['A6'xc]:='77'x; { w w } ordx['A7'xc]:='78'x; { x x } ordx['A8'xc]:='79'x; { y y } ordx['A9'xc]:='7A'x; { z z } ordx['AA'xc]:='00'x; { ... NUL } ordx['AB'xc]:='00'x; { ... NUL } ordx['AC'xc]:='00'x; { ... NUL } ordx['AD'xc]:='5B'x; { [ [ } ordx['AE'xc]:='00'x; { ... NUL } ordx['AF'xc]:='00'x; { ... NUL } ordx['B0'xc]:='00'x; { ... NUL } ordx['B1'xc]:='00'x; { ... NUL } ordx['B2'xc]:='00'x; { ... NUL } ordx['B3'xc]:='00'x; { ... NUL } ordx['B4'xc]:='00'x; { ... NUL } ordx['B5'xc]:='00'x; { ... NUL } ordx['B6'xc]:='00'x; { ... NUL } ordx['B7'xc]:='00'x; { ... NUL } ordx['B8'xc]:='00'x; { ... NUL } ordx['B9'xc]:='00'x; { ... NUL } ordx['BA'xc]:='00'x; { ... NUL } ordx['BB'xc]:='00'x; { ... NUL } ordx['BC'xc]:='00'x; { ... NUL } ordx['BD'xc]:='5D'x; { ] ] } ordx['BE'xc]:='00'x; { ... NUL } ordx['BF'xc]:='00'x; { ... NUL } ordx['C0'xc]:='7B'x; { lcurly } ordx['C1'xc]:='41'x; { A A } ordx['C2'xc]:='42'x; { B B } ordx['C3'xc]:='43'x; { C C } ordx['C4'xc]:='44'x; { D D } ordx['C5'xc]:='45'x; { E E } ordx['C6'xc]:='46'x; { F F } ordx['C7'xc]:='47'x; { G G } ordx['C8'xc]:='48'x; { H H } ordx['C9'xc]:='49'x; { I I } ordx['CA'xc]:='00'x; { ... NUL } ordx['CB'xc]:='00'x; { ... NUL } ordx['CC'xc]:='00'x; { ... NUL } ordx['CD'xc]:='00'x; { ... NUL } ordx['CE'xc]:='00'x; { ... NUL } ordx['CF'xc]:='00'x; { ... NUL } ordx['D0'xc]:='7D'x; { rcurly } ordx['D1'xc]:='4A'x; { J J } ordx['D2'xc]:='4B'x; { K K } ordx['D3'xc]:='4C'x; { L L } ordx['D4'xc]:='4D'x; { M M } ordx['D5'xc]:='4E'x; { N N } ordx['D6'xc]:='4F'x; { O O } ordx['D7'xc]:='50'x; { P P } ordx['D8'xc]:='51'x; { Q Q } ordx['D9'xc]:='52'x; { R R } ordx['DA'xc]:='00'x; { ... NUL } ordx['DB'xc]:='00'x; { ... NUL } ordx['DC'xc]:='00'x; { ... NUL } ordx['DD'xc]:='00'x; { ... NUL } ordx['DE'xc]:='00'x; { ... NUL } ordx['DF'xc]:='00'x; { ... NUL } ordx['E0'xc]:='5C'x; { \ \ } ordx['E1'xc]:='00'x; { ... NUL } ordx['E2'xc]:='53'x; { S S } ordx['E3'xc]:='54'x; { T T } ordx['E4'xc]:='55'x; { U U } ordx['E5'xc]:='56'x; { V V } ordx['E6'xc]:='57'x; { W W } ordx['E7'xc]:='58'x; { X X } ordx['E8'xc]:='59'x; { Y Y } ordx['E9'xc]:='5A'x; { Z Z } ordx['EA'xc]:='00'x; { ... NUL } ordx['EB'xc]:='00'x; { ... NUL } ordx['EC'xc]:='00'x; { ... NUL } ordx['ED'xc]:='00'x; { ... NUL } ordx['EE'xc]:='00'x; { ... NUL } ordx['EF'xc]:='00'x; { ... NUL } ordx['F0'xc]:='30'x; { 0 0 } ordx['F1'xc]:='31'x; { 1 1 } ordx['F2'xc]:='32'x; { 2 2 } ordx['F3'xc]:='33'x; { 3 3 } ordx['F4'xc]:='34'x; { 4 4 } ordx['F5'xc]:='35'x; { 5 5 } ordx['F6'xc]:='36'x; { 6 6 } ordx['F7'xc]:='37'x; { 7 7 } ordx['F8'xc]:='38'x; { 8 8 } ordx['F9'xc]:='39'x; { 9 9 } ordx['FA'xc]:='00'x; { ... NUL } ordx['FB'xc]:='00'x; { ... NUL } ordx['FC'xc]:='00'x; { ... NUL } ordx['FD'xc]:='00'x; { ... NUL } ordx['FE'xc]:='00'x; { ... NUL } ordx['FF'xc]:='00'x; { ... NUL } @z @x @! maxbuffer = 1029;@/ @y @! maxbuffer = 1024;@/ @z @x @p procedure writeheader; {only needed when using Datum 5095} var hdrec :string(5); begin if doingpages = true then begin hdrec := strconv(headernum); write(setfile,hdrec); bufferlen := 5; end; {then..begin} end; {writeheader} @y @p procedure writeheader; {only needed when using Datum 5095} begin if doingpages = true then bufferlen := 0; end; {writeheader} @z @x @= writecommand(11,155*SPsPerPt); {155pt indent} writecommand(25,320); {Bold} write8600rec('50616765731e'xc); {'Pages '} write8600rec('536574231e1e'xc); {'Set: '} writecommand(25,330); {Bold Italic} pages_conv := strconv(pages_set); for inx := 1 to 5 do write8600rec(str(chr(ordx [pages_conv[inx]]))); writecommand(11,265*SPsPerPt); {get ready for Tape \#} @ @= writecommand(25,320); {Bold} write8600rec('546170651e'xc); {'Tape '} writecommand(20,2); {aux. char. set} write8600rec('72'xc); {'\#'} writecommand(20,1); {pri. char. set} write8600rec('231e1e1e1e'xc); {': '} postam_found := true; writecommand(25,330); {bold italic} @y @= writecommand(11,155*SPsPerPt); {155pt indent} writecommand(25,320); {Bold} write8600rec('50616765731e'xc); {'Pages '} write8600rec('536574231e1e'xc); {'Set: '} writecommand(25,330); {Bold Italic} pages_conv := strconv(pages_set); for inx := 1 to 5 do write8600rec(str(chr(ordx [pages_conv[inx]]))); @ @= postam_found := true; @z @x |setaccountbox| procedure. It also writes the information to another file called the |infofile|. @= @! notfatal = false;@/ @ @= @!addrline : text; @!infofile : text; @^system dependencies@> @y |setaccountbox| procedure. @= @! notfatal = false;@/ @ @= @!addrline : text; @^system dependencies@> @z @x @= rewrite(infofile,'NAME=' ccat filename ccat '.INFOFILE.*'); while length(resource_info) > 0 do begin inx := index(resource_info,':'); if inx < 1 then begin errstr := resource_info; error(28,notfatal,0); end else begin str1 := substr(resource_info,1,inx-1); resource_info := ltrim(substr(resource_info,inx+1)); inx := index(resource_info,':'); if inx = 0 then begin str2 := resource_info; resource_info := ''; end else begin int := inx - 1; {no sense starting at a colon:} tempbool := false; repeat if substr(resource_info,int,1) = ' ' then tempbool := true else int := int - 1; until tempbool; {which means we found a blank} str2 := trim(substr(resource_info,1,int-1)); resource_info := substr(resource_info,int+1); end; str1 := allcaps(ltrim(trim(str1))); str2 := allcaps(ltrim(trim(str2))); if str1 = 'NAME' then infoname := str2 else if str1 = 'PHONE' then infophone := str2 else if str1 = 'PROCEDURE_NUMBER' then infoprocedure := str2 else if str1 = 'BUDGET_PROJECT' then infobudget := str2 else if str1 = 'PICKUP' then infodelivery := str2 else if str1 = 'CAMPUS_ZIP' then infozip := str2 else if str1 = 'BIN' then infobin := str2 else if str1 = 'ID' then infoid := str2 else begin errstr := resource_info; error(28,notfatal,0); end end; end; @ @= setaccountbox(infoname,infophone,infodelivery,infozip, infobin,infoid); writeln(infofile,infoname); writeln(infofile,infophone); writeln(infofile,infoprocedure); writeln(infofile,infobudget); writeln(infofile,infodelivery); writeln(infofile,infozip); writeln(infofile,infoid); writeln(infofile,infobin); writeln(infofile,job_length); writeln(infofile,pages_set); writeln(infofile,minimum_width); writeln(infofile,real_filename); @y @= while length(resource_info) > 0 do begin inx := index(resource_info,':'); if inx < 1 then begin errstr := resource_info; error(28,notfatal,0); end else begin str1 := substr(resource_info,1,inx-1); resource_info := ltrim(substr(resource_info,inx+1)); inx := index(resource_info,':'); if inx = 0 then begin str2 := resource_info; resource_info := ''; end else begin int := inx - 1; {no sense starting at a colon:} tempbool := false; repeat if substr(resource_info,int,1) = ' ' then tempbool := true else int := int - 1; until tempbool; {which means we found a blank} str2 := trim(substr(resource_info,1,int-1)); resource_info := substr(resource_info,int+1); end; str1 := allcaps(ltrim(trim(str1))); str2 := allcaps(ltrim(trim(str2))); if str1 = 'NAME' then infoname := str2 else if str1 = 'PHONE' then infophone := str2 else if str1 = 'PROCEDURE_NUMBER' then infoprocedure := str2 else if str1 = 'BUDGET_PROJECT' then infobudget := str2 else if str1 = 'PICKUP' then infodelivery := str2 else if str1 = 'CAMPUS_ZIP' then infozip := str2 else if str1 = 'BIN' then infobin := str2 else if str1 = 'ID' then infoid := str2 else begin errstr := resource_info; error(28,notfatal,0); end end; end; @ @= setaccountbox(infoname,infophone,infodelivery,infozip, infobin,infoid); @z @x @= job_length := round(galley_length/72.0); pages_set := num_of_pages; job_type := 'TeX'; @y @= job_length := round(galley_length/72.0); pages_set := num_of_pages; job_type := 'TeX'; writecommand(11,0); {quad left} writecommand(9,100*SPsPerPt); {VMF past box} writecommand(1,0.0); {End of take} @z @x reset(input,'NAME=' ccat filename ccat '.' ccat filetype ccat '.*'); writeln('******* tex8600 Version ',version:2,' Level ', level:3,' *******'); rewrite(setfile,'LRECL=1029,RECFM=F,NAME=' ccat filename ccat '.TAPEFILE.*'); @y reset(input,'NAME=' ccat filename ccat '.' ccat filetype ccat '.*'); writeln('******* tex8600 Version ',version:2,' Level ', level:3,' *******'); rewrite(setfile,'LRECL=1024,RECFM=F,NAME=' ccat filename ccat '.TAPEFILE.*'); @z