-- file: PLtoTFPrivate.mesa
-- Pascal-to-Mesa translator output, translated at September 23, 1986 1:41:45 pm PDT


DIRECTORY
  PascalBasic,
  PascalWizardFiles;

PLtoTFPrivate: DEFINITIONS IMPORTS  =
BEGIN OPEN PascalBasic, PascalWizardFiles;
--3:--BufSize: PascalInteger =60;

MaxHeaderBytes: PascalInteger =100;
MaxParamWords: PascalInteger =30;
--:3----17:--Byte: TYPE =PascalInteger[0..255];

AsciiCode: TYPE =PascalInteger[32..127];
--:17----57:--FourBytes: TYPE =RECORD [ B0:Byte,B1:Byte,B2:Byte,
B3:Byte];
--:57----61:--FixWord: TYPE =PascalInteger;
--:61----68:
HeaderIndex: TYPE =PascalInteger[0..MaxHeaderBytes];
--:68----71:--Pointer: TYPE =PascalInteger[0..1032];
--:71----137:
ByteFile: TYPE =   RECORD[baseFile: PascalFile, element: PascalInteger[0..255] ← NULL];

PlFile: Text;

TfmFile: ByteFile;
Xord: LONG POINTER TO ARRAY PascalChar OF  AsciiCode;

Line: PascalInteger;

GoodIndent: PascalInteger;

Indent: PascalInteger;

Level: PascalInteger;

LeftLn: PascalBoolean;

RightLn: PascalBoolean;

Limit: PascalInteger[0..BufSize];

Loc: PascalInteger[0..BufSize];
Buffer: LONG POINTER TO ARRAY PascalInteger[1..BufSize] OF  PascalChar;

InputHasEnded: PascalBoolean;

CharsOnLine: PascalInteger[0..8];

CurChar: AsciiCode;
Start: LONG POINTER TO ARRAY PascalInteger[1..66] OF  PascalInteger[0..500];
Dictionary: LONG POINTER TO ARRAY PascalInteger[0..500] OF  AsciiCode;

StartPtr: PascalInteger[0..66];

DictPtr: PascalInteger[0..500];
CurName: LONG POINTER TO ARRAY PascalInteger[1..20] OF  AsciiCode;

NameLength: PascalInteger[0..20];

NamePtr: PascalInteger[0..66];
Hash: LONG POINTER TO ARRAY PascalInteger[0..100] OF  PascalInteger[0..66];

CurHash: PascalInteger[0..100];
Equiv: LONG POINTER TO ARRAY PascalInteger[0..66] OF  Byte;

CurCode: Byte;

CurBytes: FourBytes;
FractionDigits: LONG POINTER TO ARRAY PascalInteger[1..7] OF  PascalInteger;
HeaderBytes: LONG POINTER TO ARRAY HeaderIndex OF  Byte;

HeaderPtr: HeaderIndex;

DesignSize: FixWord;

DesignUnits: FixWord;

SevenBitSafeFlag: PascalBoolean;
LigKern: LONG POINTER TO ARRAY PascalInteger[0..511] OF  FourBytes;

Nl: PascalInteger[0..511];

UnusedLabel: PascalBoolean;
Kern: LONG POINTER TO ARRAY PascalInteger[0..256] OF  FixWord;

Nk: PascalInteger[0..256];
Exten: LONG POINTER TO ARRAY PascalInteger[0..255] OF  FourBytes;

Ne: PascalInteger[0..256];
Param: LONG POINTER TO ARRAY PascalInteger[1..MaxParamWords] OF  FixWord;

Np: PascalInteger[0..MaxParamWords];

CheckSumSpecified: PascalBoolean;
Memory: LONG POINTER TO ARRAY Pointer OF  FixWord;

MemPtr: Pointer;
Link: LONG POINTER TO ARRAY Pointer OF  Pointer;
CharWd: LONG POINTER TO ARRAY Byte OF  Pointer;
CharHt: LONG POINTER TO ARRAY Byte OF  Pointer;
CharDp: LONG POINTER TO ARRAY Byte OF  Pointer;
CharIc: LONG POINTER TO ARRAY Byte OF  Pointer;
CharTag: LONG POINTER TO ARRAY Byte OF  PascalInteger[0..3];
CharRemainder: LONG POINTER TO ARRAY Byte OF  PascalInteger[0..255];

NextD: FixWord;
Index: LONG POINTER TO ARRAY Pointer OF  Byte;

C: Byte;

KrnPtr: PascalInteger[0..256];

SevenUnsafe: PascalBoolean;

LigPtr: PascalInteger[0..511];

Delta: FixWord;

Bc: Byte;

Ec: Byte;

Lh: Byte;

Lf: PascalInteger[0..32767];

NotFound: PascalBoolean;

TempWidth: FixWord;

J: PascalInteger[0..MaxHeaderBytes];

P: Pointer;

Q: PascalInteger[1..4];

ParPtr: PascalInteger[0..MaxParamWords];

Output: Text;


 WriteByte: PROCEDURE[ F: LONG POINTER TO ByteFile,B: PascalInteger[0..255]];

--:136-- Initialize: PROCEDURE;

 ShowErrorContext: PROCEDURE
;

--:27----28:-- FillBuffer: PROCEDURE;

 GetLetterOrDigit: PROCEDURE
;

 GetNext: PROCEDURE
;

 SkipToEndOfItem: PROCEDURE;

 FinishTheProperty: PROCEDURE
;

 Lookup: PROCEDURE;

 EnterName: PROCEDURE[V: Byte];

 GetName: PROCEDURE
;

 GetByte: PROCEDURE RETURNS[GetByteResult: Byte]
;

 GetFourBytes: PROCEDURE;

 GetFix: PROCEDURE RETURNS[GetFixResult: FixWord];

 SortIn: PROCEDURE[H: Pointer,D: FixWord] RETURNS[SortInResult: Pointer];

 MinCover: PROCEDURE[H: Pointer,
D: FixWord] RETURNS[MinCoverResult: PascalInteger];

--:77----78:-- Shorten: PROCEDURE[H: Pointer,M: PascalInteger] RETURNS[ShortenResult: FixWord];

 SetIndices: PROCEDURE[H: Pointer,
D: FixWord];

 JunkError: PROCEDURE
;

 ReadFourBytes: PROCEDURE[L: HeaderIndex];

--:86----87:-- ReadBcpl: PROCEDURE[L: HeaderIndex,N: Byte];

 CheckTag: PROCEDURE[C: Byte];

 PrintOctal: PROCEDURE[C: Byte]
;

--128:-- OutScaled: PROCEDURE[X: FixWord];

 ParamEnter: PROCEDURE
;

 NameEnter: PROCEDURE
;

 ReadLigKern: PROCEDURE;

 ReadCharInfo: PROCEDURE;

 ReadInput: PROCEDURE
;

 CorrAndCheck: PROCEDURE;

END.