-- file: MFInteraction.mesa
-- Pascal-to-Mesa translator output, translated at October 31, 1985 4:28:00 pm PST


DIRECTORY
  PascalBasic,
  PascalWizardFiles,
  MFTypes;

MFInteraction: DEFINITIONS IMPORTS  =
BEGIN OPEN PascalBasic, PascalWizardFiles, MFTypes;
Xord: LONG POINTER TO ARRAY PascalChar OF  AsciiCode;
Xchr: LONG POINTER TO ARRAY AsciiCode OF  PascalChar;
NameOfFile: LONG POINTER TO  PACKED ARRAY PascalInteger[1..FileNameSize] OF  PascalChar;

NameLength: PascalInteger[0..FileNameSize];
Buffer: LONG POINTER TO ARRAY PascalInteger[0..BufSize] OF  AsciiCode;

First: PascalInteger[0..BufSize];

Last: PascalInteger[0..BufSize];

MaxBufStack: PascalInteger[0..BufSize];

TermIn: AlphaFile;

TermOut: AlphaFile;
StrPool: LONG POINTER TO  PACKED ARRAY PoolPointer OF  AsciiCode;
StrStart: LONG POINTER TO ARRAY StrNumber OF  PoolPointer;

PoolPtr: PoolPointer;

StrPtr: StrNumber;

InitPoolPtr: PoolPointer;

InitStrPtr: StrNumber;

MaxPoolPtr: PoolPointer;

MaxStrPtr: StrNumber;
StrRef: LONG POINTER TO ARRAY StrNumber OF  PascalInteger[0..127];

PoolFile: AlphaFile;

LogFile: AlphaFile;

Selector: PascalInteger[0..5];
Dig: LONG POINTER TO ARRAY PascalInteger[0..22] OF  PascalInteger[0..15];

Tally: PascalInteger;

TermOffset: PascalInteger[0..MaxPrintLine];

FileOffset: PascalInteger[0..MaxPrintLine];
TrickBuf: LONG POINTER TO ARRAY PascalInteger[0..ErrorLine] OF  AsciiCode;

TrickCount: PascalInteger;

FirstCount: PascalInteger;

Interaction: PascalInteger[0..3];

DeletionsAllowed: PascalBoolean;

History: PascalInteger[0..3];

ErrorCount: PascalInteger[-1..100];
HelpLine: LONG POINTER TO ARRAY PascalInteger[0..5] OF  StrNumber;

HelpPtr: PascalInteger[0..6];

UseErrHelp: PascalBoolean;

ErrHelp: StrNumber;

Interrupt: PascalInteger;

OkToInterrupt: PascalBoolean;

 PrintLn: PROCEDURE;

 PrintChar: PROCEDURE[S: AsciiCode]
;

 Print: PROCEDURE[S: PascalInteger];

--:59----60:-- SlowPrint: PROCEDURE[S: PascalInteger];

--62:-- PrintNl: PROCEDURE[S: StrNumber]
;

 PrintTheDigs: PROCEDURE[K: EightBits];

 PrintInt: PROCEDURE[N: PascalInteger]
;

 PrintScaled: PROCEDURE[S: Scaled]
;

 PrintTwo: PROCEDURE[X,Y: Scaled]
;

 PrintType: PROCEDURE[T: SmallNumber]
;

 BeginDiagnostic: PROCEDURE
;

 EndDiagnostic: PROCEDURE[BlankLine: PascalBoolean];

 PrintDiagnostic: PROCEDURE[S,T: StrNumber,Nuline: PascalBoolean]
;

--43:-- FlushString: PROCEDURE[S: StrNumber]
;

--76:-- JumpOut: PROCEDURE;

 Error: PROCEDURE
;

 FatalError: PROCEDURE[S: StrNumber];

 Overflow: PROCEDURE[S: StrNumber,N: PascalInteger];

 Confusion: PROCEDURE[S: StrNumber];

--:36----44:-- MakeString: PROCEDURE RETURNS[MakeStringResult: StrNumber]
;

 StrEqBuf: PROCEDURE[S: StrNumber,
K: PascalInteger] RETURNS[StrEqBufResult: PascalBoolean];

 StrVsStr: PROCEDURE[S,T: StrNumber] RETURNS[StrVsStrResult: PascalInteger];

 PrintDd: PROCEDURE[N: PascalInteger];

 TermInput: PROCEDURE;

 NormalizeSelector: PROCEDURE;

 PauseForInstructions: PROCEDURE
;

 MissingErr: PROCEDURE[S: StrNumber]
;


 OpenLogFile: PROCEDURE;

END.