-- OthelloDefs.mesa modified September 12, 1982 1:02 pm by Taft
DIRECTORY
Device USING [Type],
File USING [Capability],
FTPDefs USING [FtpError],
PhysicalVolume USING [Handle, ID],
Volume USING [Type];
OthelloDefs: DEFINITIONS =
BEGIN
CommandTableRecord: TYPE = RECORD [name: STRING, proc: PROC, detail: STRING];
CommandTable: TYPE = ARRAY OF CommandTableRecord;
ConfirmType: TYPE = {once, twice, thrice};
EchoNoEcho: TYPE = {echo, noEcho};
Question: SIGNAL;
TryAgain: SIGNAL;
AbortCommandFileIfAny: PROC;
CommandFileActive: PROC RETURNS [BOOLEAN];
Confirm: PROC [how: ConfirmType ← once];
DebugAsk: PROC;
GetCommandString: PROC RETURNS [s: STRING, i: CARDINAL];
GetName: PROC [
prompt, dest: STRING, how: EchoNoEcho ← echo,
signalQuestion: BOOLEAN ← FALSE, escString: STRING ← NIL];
NewLine: PROC;
PrintBcdTime: PROC;
ReadChar: PROC RETURNS [CHARACTER];
ReadNumber: PROC [
prompt: STRING, min, max: LONG CARDINAL,
default: LONG CARDINAL ← LAST[LONG CARDINAL]]
RETURNS [ans: LONG CARDINAL];
ReadShortNumber: PROC [
prompt: STRING, min, max, default: LONG CARDINAL]
RETURNS [CARDINAL];
ReportError: PROC [message: STRING];
RunCommand: PROC [DESCRIPTOR FOR ARRAY OF CommandTableRecord];
SetCommandString: PROC [s: STRING, i: CARDINAL ← 0];
WriteChar: PROC [CHARACTER];
WriteFixedWidthNumber: PROC [
x: LONG CARDINAL, count: CARDINAL, base: CARDINAL ← 10];
WriteLine, WriteString: PROC [STRING];
WriteLongNumber: PROC [num: LONG CARDINAL];
WriteOctal: PROC [CARDINAL];
Yes: PROC [STRING] RETURNS [BOOLEAN];
-- Exported by VolumeInitImplA to OthelloDeviceImplD*
file: PUBLIC STRING;
ftpOpen: BOOLEAN;
GetLvTypeFromUser: PROC [prompt: STRING] RETURNS [t: Volume.Type];
GetDriveFromUser: PROC RETURNS [h: PhysicalVolume.Handle];
GetDriveNumber: PROC [h: PhysicalVolume.Handle] RETURNS [CARDINAL];
GetDriveType: PROC [h: PhysicalVolume.Handle] RETURNS [Device.Type];
InstallUserCredentials: PROC;
PromptForCredentials: PROC [ftpError: FTPDefs.FtpError, message: STRING];
p: PUBLIC PhysicalVolume.ID;
-- Exported by OthelloPup
EchoUser, PrintLocalPupRoutingTable: PROC;
-- Exported by OthelloFTP
FTPDestination: TYPE = RECORD [
SELECT type: * FROM
pilotFileSystemWrite => [localFile: File.Capability],
rawWrite =>
[linkProc: PROC [getPage: PROC RETURNS [LONG POINTER]]],
string => [stringProc: PROC [STRING]],
ENDCASE];
userName, userPassword, connectName, connectPassword, directory: STRING;
Open: PROC [server, remoteMsg: STRING] RETURNS [BOOLEAN];
Close: PROC [msg: STRING] RETURNS [BOOLEAN];
Retrieve: PROC [remoteFile, msg: STRING, destination: FTPDestination]
RETURNS [BOOLEAN];
Enumerate: PROC [
remoteFile, msg: STRING,
proc: PROCEDURE [filename, creationDate, author: STRING]]
RETURNS [BOOLEAN];
-- When this is raised, client can supply required credentials and RESUME.
CredentialError: SIGNAL [ftpError: FTPDefs.FtpError, message: STRING];
OthelloFTP: PROGRAM;
END....
12-Jun-81 11:35:15 Taft Add procs exported from VolumeInitImplA to OthelloDeviceImplD*
24-Jan-82 15:56:08 Taft Add CredentialError
4-Jun-82 17:39:14 Taft Add PromptForCredentials, GetCommandString, Enumerate
September 9, 1982 5:23 pm Taft Mods for new Cedar Login
September 12, 1982 1:02 pm Taft Add CommandFileActive, AbortCommandFileIfAny, ReportError