-- file: GFtoPressPrivate.mesa
-- Pascal-to-Mesa translator output, translated at October 25, 1985 5:07:13 pm PDT


DIRECTORY
  PascalBasic,
  PascalWizardFiles;

GFtoPressPrivate: DEFINITIONS IMPORTS  =
BEGIN OPEN PascalBasic, PascalWizardFiles;
--5:--MaxLabels: PascalInteger =2000;

PoolSize: PascalInteger =10000;
MaxStrings: PascalInteger =1100;
TerminalLineLength: PascalInteger =150;

FileNameSize: PascalInteger =128;
FontMemSize: PascalInteger =1000;
WidestRow: PascalInteger =8192;
--:5----9:
Scaled: TYPE =PascalInteger;
--:9----10:--AsciiCode: TYPE =PascalInteger[32..126];
--:10----11:
TextFile: TYPE =   PascalTextFile;
--:11----45:--EightBits: TYPE =PascalInteger[0..255];

ByteFile: TYPE =   RECORD[baseFile: PascalFile, element: EightBits ← NULL];
--:45----52:--Quarterword: TYPE =PascalInteger[0..255];

FourQuarters: TYPE =  -- PACKED -- RECORD [ B0:Quarterword,B1:Quarterword,
B2:Quarterword,B3:Quarterword];

MemoryWord: TYPE =RECORD [   x1: SELECT OVERLAID PascalBoolean  FROM TRUE=>[Sc:Scaled],
FALSE=>[Qqqq:FourQuarters], ENDCASE];
InternalFontNumber: TYPE =PascalInteger[1..5];
--:52----70:
PoolPointer: TYPE =PascalInteger[0..PoolSize];
StrNumber: TYPE =PascalInteger[0..MaxStrings];
--:70----79:
KeywordCode: TYPE =PascalInteger[0..19];
--:79----136:--TreePointer: TYPE =PascalInteger[0..MaxLabels];
--:136----223:
CedarNat: TYPE =PascalInteger[0..32767];

--:221----220:
 PressOpenFile: PROCEDURE;


 PressGetFontCode: PROCEDURE[F: InternalFontNumber] RETURNS[PressGetFontCodeResult: CedarNat];


 PressSetFont: PROCEDURE[F: InternalFontNumber];


 PressSetChar: PROCEDURE[Ch: EightBits];


 PressPushPos: PROCEDURE;

 PressPopPos: PROCEDURE;


 PressGoto: PROCEDURE[X,Y: Scaled];


 PressMoveX: PROCEDURE[X: Scaled];


 PressMoveY: PROCEDURE[Y: Scaled];


 PressSetRule: PROCEDURE[H,W: Scaled];


 PressWritePage: PROCEDURE;

 PressCloseFile: PROCEDURE;


 TtyReset: PROCEDURE[ F: LONG POINTER TO TextFile];


 TtyRewrite: PROCEDURE[ F: LONG POINTER TO TextFile];


 ByteFileReset: PROCEDURE[ F: LONG POINTER TO ByteFile];


 GetCommandLine: PROCEDURE;

--:220-- Initialize: PROCEDURE
;

 JumpOut: PROCEDURE;

 InputLn: PROCEDURE
;

 OpenGfFile: PROCEDURE
;

 OpenTfmFile: PROCEDURE
;

 ReadTfmWord: PROCEDURE
;

 GetByte: PROCEDURE RETURNS[GetByteResult: PascalInteger]
;

 GetTwoBytes: PROCEDURE RETURNS[GetTwoBytesResult: PascalInteger]
;

 GetThreeBytes: PROCEDURE RETURNS[GetThreeBytesResult: PascalInteger];

 SignedQuad: PROCEDURE RETURNS[SignedQuadResult: PascalInteger];

 MakeString: PROCEDURE RETURNS[MakeStringResult: StrNumber]
;

 ReadFontInfo: PROCEDURE[F: PascalInteger,S: Scaled];

--:58----75:-- FirstString: PROCEDURE[C: PascalInteger]
;

 InterpretXxx: PROCEDURE RETURNS[InterpretXxxResult: KeywordCode];

 GetYyy: PROCEDURE RETURNS[GetYyyResult: Scaled];

 SkipNop: PROCEDURE
;

 BeginName: PROCEDURE;

--90:-- MoreName: PROCEDURE[C: AsciiCode] RETURNS[MoreNameResult: PascalBoolean]
;

 EndName: PROCEDURE
;

--92:-- PackFileName: PROCEDURE[N,A,E: StrNumber];

--94:-- StartGf: PROCEDURE;

 LoadFonts: PROCEDURE;

 DviScaled: PROCEDURE[X: PascalReal];

 Hbox: PROCEDURE[S: StrNumber,F: InternalFontNumber,SendIt: PascalBoolean]
;

--:116----135:-- SlantComplaint: PROCEDURE[R: PascalReal]
;

 GetAvail: PROCEDURE RETURNS[GetAvailResult: TreePointer]
;

 TreeIns: PROCEDURE[P: TreePointer]
;


 Overlap: PROCEDURE[P: TreePointer] RETURNS[OverlapResult: PascalBoolean];

 EvenOverlap: PROCEDURE[P: TreePointer] RETURNS[EvenOverlapResult: PascalBoolean]
;

 OddOverlap: PROCEDURE[P: TreePointer] RETURNS[OddOverlapResult: PascalBoolean];

 NearestDot: PROCEDURE;


 NLDot: PROCEDURE[P: TreePointer];

--150:-- EvenNLDot: PROCEDURE[P: TreePointer];


 OddNLDot: PROCEDURE[P: TreePointer];

--:152----168:-- Convert: PROCEDURE[X,Y: Scaled];

 TopCoords: PROCEDURE[P: TreePointer]
;

 BotCoords: PROCEDURE[P: TreePointer]
;

 RightCoords: PROCEDURE[P: TreePointer];

 LeftCoords: PROCEDURE[P: TreePointer];

--192:-- DoALabel: PROCEDURE[P: TreePointer];

--193:-- DoBLabel: PROCEDURE[P: TreePointer];

 DoDot: PROCEDURE[P: TreePointer];

 DoPixels: PROCEDURE
;

 InitStrings: PROCEDURE;

 ProcessACharacter: PROCEDURE;

Error9999: ERROR;

END.