--LispToolOps.mesa
--Created by
-- JFung.pasa 19-Sep-83 17:19:12
--last edited by
-- JFung.pasa 14-Sep-84 9:37:24
DIRECTORY
File,
FileTransfer,
FormSW,
MFile,
MStream,
Profile,
ToolWindow,
Volume USING [ID, nullID],
Window USING [Handle];
LispToolOps: DEFINITIONS =
BEGIN
-- TYPEs
Indicator: TYPE = {off, left, right};
VolHints: TYPE = RECORD [names: SEQUENCE length: CARDINAL OF LONG STRING];
PasswordArray: TYPE = RECORD [names: SEQUENCE length: CARDINAL OF LONG STRING];
SizeHints: TYPE = RECORD [names: SEQUENCE length: CARDINAL OF CARDINAL];
DocType: TYPE = {general, errorMsg};
ServerType: TYPE = {IFS, FS, FLOPPY};
VolType: TYPE = {Lisp, NonLisp};
DataHandle: TYPE = LONG POINTER TO Data;
Data: TYPE = MACHINE DEPENDENT RECORD [
-- Message subwindow stuff
msgSW(0): Window.Handle ← NIL,
-- File subwindow stuff
fileSW(2): Window.Handle ← NIL,
-- Form subwindow stuff
-- Note: enumerateds and booleans must be word boundary
-- aligned as addresses for them must be generated
--formSW: Window.Handle ← NIL,
paramSW(4): Window.Handle ← NIL,
commandSW(6): Window.Handle ← NIL,
busy(8): BOOLEAN ← FALSE, -- command is running
userName(9): LONG STRING ← NIL,
userPassword(11): LONG STRING ← NIL,
domainName(13): LONG STRING ← NIL,
organizationName(15): LONG STRING ← NIL,
filePathName(17): LONG STRING ← NIL,
volName(19): LONG STRING ← NIL,
volHints(21): LONG POINTER TO VolHints ← NIL,
volPassword(23): LONG STRING ← NIL,
--passwordPtr(25): LONG POINTER TO PasswordArray ← NIL,
--volHintsReady(23): BOOLEAN ← FALSE,
--volHintsBusy(24): BOOLEAN ← FALSE,
vMemSize(25): File.PageCount ← 0,
currentVolSize(27): File.PageCount ← 0,
currentVolFreeSize(29): File.PageCount ← 0,
fileTable(31): LONG POINTER TO SizeHints ← NIL,
connection(33): FileTransfer.Connection ← NIL,
indicator(35): Indicator ← left,
docType(36): DocType ← general,
fileServer(37): ServerType ← FS,
volType(38): VolType ← Lisp];
-- Variable declarations
--privateHeap: UNCOUNTED ZONE ← NIL;
--debug: BOOLEAN;
toolData: DataHandle;
windowHandle: Window.Handle;
BootStuff: PUBLIC PROCEDURE[];
-- exported from LITCopyVMemImpl;
Confirm: PUBLIC PROCEDURE RETURNS [okay: BOOLEAN];
-- exported from LispToolImpl;
DisplayCommandSubwindow: PUBLIC PROCEDURE;
-- exported from LispToolImpl;
DisplayFileSize: PUBLIC PROCEDURE [size: File.PageCount];
-- exported from LispToolImpl;
DisplayWriteUp: PUBLIC PROCEDURE;
-- exported from ILTHelpImpl;
EraseProc: PUBLIC PROCEDURE [vName: LONG STRING];
-- exported from ILTEraseImpl;
FloppyDelete: PUBLIC PROCEDURE [pattern: LONG STRING] RETURNS [deleted: BOOLEAN];
-- exported from LTFloppyImpl;
FloppyDuplicate: PUBLIC PROCEDURE;
-- exported from LTFloppyImpl;
FloppyRead: PUBLIC PROCEDURE [pattern: LONG STRING];
-- exported from LTFloppyImpl;
FloppyWrite: PUBLIC PROCEDURE [pattern: LONG STRING];
-- exported from LTFloppyImpl;
FloppyStuff: PUBLIC PROCEDURE [];
-- exported from LTFloppyImpl;
GetBootFile: PUBLIC PROCEDURE [vName: LONG STRING] RETURNS [volumeID: Volume.ID];
-- exported from LTInstallImpl;
GetDefaultDomain: PUBLIC PROCEDURE [domain: LONG STRING];
-- exported from LTSetProfileImpl;
GetDefaultOrganization:PUBLIC PROCEDURE [organization: LONG STRING];
-- exported from LTSetProfileImpl;
GetFileSize: PUBLIC PROCEDURE[] RETURNS [pageCount: File.PageCount];
-- exported from LTVMemImpl;
GetProfileInfo:PUBLIC PROCEDURE [];
-- exported from LTSetProfileImpl;
GetUser:PUBLIC PROCEDURE [name, password: LONG STRING];
-- exported from LTSetProfileImpl;
GetVolumeID: PUBLIC PROCEDURE [volumeName: LONG STRING]
RETURNS [volumeID: Volume.ID ← Volume.nullID, volumeOpen: BOOLEAN];
-- exported from LTEraseImpl;
HelpCommands: PUBLIC PROCEDURE;
-- exported from ILTHelp2Impl;
InstallProc: PUBLIC PROCEDURE [vName: LONG STRING];
-- exported from LTInstallImpl;
InvertIndicator: PUBLIC PROCEDURE [];
-- exported from LispToolImpl;
ListLogicalVolumes: PUBLIC PROCEDURE RETURNS[nVols: CARDINAL];
-- exported from LispToolImpl;
LispActivate: PUBLIC PROCEDURE[];
-- exported from LispToolImpl;
LispToolActivate: PUBLIC PROCEDURE[];
-- exported from LispToolImpl;
LoginProc: PUBLIC PROCEDURE[];
-- exported from LTLoginImpl;
MakeScript: PUBLIC PROCEDURE[];
-- exported from LTMakeScriptImpl;
MakeUserCM: PUBLIC PROCEDURE[];
-- exported from LTUserCMImpl;
ProcessUserDotCM: PUBLIC PROCEDURE[];
-- exported from LTSetProfileImpl;
ProfileToolActivate: PUBLIC PROCEDURE[];
-- exported from LTSetProfileImpl;
ScavengeProc: PUBLIC PROCEDURE [vName: LONG STRING];
-- exported from LTScavengeImpl;
SetupBootFile: PUBLIC PROCEDURE [volumeID: Volume.ID];
-- exported from LTInstallImpl;
SetVMemFileSize: PUBLIC PROCEDURE [pageCount: File.PageCount];
-- exported from LTVMemImpl;
SetVolumeProc: PUBLIC PROCEDURE [vName: LONG STRING] RETURNS [BOOLEAN];
-- exported from LTInstallImpl;
TajoActivate: PUBLIC PROCEDURE [];
-- exported from LITLispToolImpl;
WriteScriptA: PUBLIC PROCEDURE[myFile: MFile.Handle, writeS: MStream.Handle];
-- exported from LITScript2Impl;
WriteScriptB: PUBLIC PROCEDURE[myFile: MFile.Handle, writeS: MStream.Handle];
-- exported from LITScript3Impl;
END...