MiniEthernetDefs.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
HGM April 20, 1980 6:23 PM
Andrew Birrell October 28, 1983 3:51 pm
Russ Atkinson (RRA) February 13, 1985 4:46:49 pm PST
DIRECTORY
PupTypes USING [PupAddress, PupSocketID, PupType, Pair];
MiniEthernetDefs: DEFINITIONS = BEGIN
ActivateDriver: PROC [dataBuffer: LONG POINTER, length: CARDINAL, iocb: LONG POINTER, avoidCleanup: BOOLFALSE] RETURNS [ok: BOOL];
Notes:
dataBuffer must be quad word aligned
iocb must be 16 word block in first 64k, quad word aligned
KillDriver: PROC [avoidCleanup: BOOLFALSE];
GetEthernetHostNumber: PROC RETURNS [CARDINAL];
GetEthernetNetNumber: PROC RETURNS [CARDINAL];
0 if unknown
DriverNotActive: ERROR;
BufferOverflow: ERROR;
SendPacket: PROC [dest: PupTypes.PupAddress, me: PupTypes.PupSocketID, type: PupTypes.PupType, id: PupTypes.Pair, data: LONG POINTER, bytes: CARDINAL];
ReturnPacket: PROC [type: PupTypes.PupType, data: LONG POINTER, bytes: CARDINAL];
RecvPacket: PROC [source: LONG POINTER TO PupTypes.PupAddress, me: PupTypes.PupSocketID, data: LONG POINTER, words: CARDINAL, timeout: PROC RETURNS [BOOL]] RETURNS [bytes: CARDINAL, id: PupTypes.Pair, type: PupTypes.PupType];
returns bytes = LAST[CARDINAL] if timeout ?
timedOut: CARDINAL = LAST[CARDINAL];
END.