DIRECTORY
IO USING [STREAM],
Rope USING [ROPE],
MDADefs USING [DoradoPage, SubPage, Xbt, XDoradoPage],
MDDefs USING [IFUMRecordPtr, IMRecordPtr, SrcFile, Symbol];
From MDUtilsImpl
PutWord: PROC[strm: IO.STREAM, val: WORD];
PutInteger: PROC[strm: IO.STREAM, val: INTEGER];
PutCardinal: PROC[strm: IO.STREAM, val: CARDINAL];
GetWord: PROC[strm: IO.STREAM] RETURNS[val: WORD];
GetInteger: PROC[strm: IO.STREAM] RETURNS[val: INTEGER];
GetCardinal: PROC[strm: IO.STREAM] RETURNS[val: CARDINAL];
WriteSymbolName: PROC[strm: IO.STREAM, name: Rope.ROPE];
IMPtr: PROC[offset: CARDINAL] RETURNS[MDDefs.IMRecordPtr];
IFUMPtr: PROC[offset: CARDINAL] RETURNS[MDDefs.IFUMRecordPtr];
CardAnd: PROC[addr: CARDINAL, mask: WORD] RETURNS[CARDINAL];
MakeSubpageLink: PROC[i1, i2: CARDINAL];
PutRing: PROC[addr: CARDINAL];
PutAData: PROC[addr: CARDINAL];
GetSource: PUBLIC PROC[addr: CARDINAL] RETURNS[src: MDDefs.SrcFile];
GetPageN: PROC[pageNum: CARDINAL] RETURNS[MDADefs.DoradoPage];
from MDSymbolsImpl
SearchTableProc: TYPE = PROC[sym: MDDefs.Symbol] RETURNS[quit: BOOL];
SearchSymbolTable: PROC[proc: SearchTableProc];
from MDPlaceImpl
Find1Place: PROC[mask: WORD, xBT: MDADefs.Xbt] RETURNS[pageLoc: CARDINAL];
PlaceSubpage:
PROC[sub: MDADefs.SubPage, absPage:
CARDINAL, xbt: MDADefs.XDoradoPage]
RETURNS[BOOL];
FindAlistPlace:
PROC[mask:
WORD, len:
CARDINAL, xBT: MDADefs.Xbt]
RETURNS[pageLoc: CARDINAL];