-- definitions for command interpreter part of silicon (pretty picture) program
-- last modified by McCreight, December 20, 1983  5:03 PM
-- written by P. Petit, December 13, 1981  5:54 PM

DIRECTORY
  multiGraphicsDefs,ppddefs,ppdddefs,ppdefs;

ppfeeddefs: DEFINITIONS =
  BEGIN OPEN ppddefs,ppdddefs,ppdefs;

cx,cy:INTEGER;

dProc:TYPE = PROCEDURE[p:POINTER,x,y,code:INTEGER, parm: fbParmRPtr]
  RETURNS[INTEGER];
modProc:TYPE = PROCEDURE[p:POINTER,max,min,code:INTEGER,
  parm: fbParmRPtr];
setProc:TYPE = PROCEDURE[p:POINTER,max,min,code:INTEGER,s:STRING,si:CARDINAL,
  parm: fbParmRPtr];

fbParmRPtr: TYPE = LONG POINTER TO fbParmR ← NIL;
fbParmR:TYPE = RECORD[next: fbParmRPtr,
   sx,sy:INTEGER,s1:STRING,prm:POINTER,s2:STRING,
  dspPrm:dProc,tx1,ty1,tx2,ty2:INTEGER,rbP,ybP,bbP:modProc
  ,m,n,code:INTEGER,chgC,chgB:BOOLEAN←FALSE,setStr:STRING,setP:setProc];

AddFBParmR: PROC [head: POINTER TO fbParmRPtr, r: fbParmR];
fbAr, fbAr2: fbParmRPtr;

setInt,setBool,setCmx,setScl:setProc;

findCTab:PUBLIC PROCEDURE[x,y:INTEGER] RETURNS[INTEGER];

rmButt: modProc;

dspCMix:dProc;
setCMix:modProc;
resetCMix:modProc;
moveCMix:modProc;
dspCPat:dProc;
setCPat:modProc;
resetCPat:modProc;
moveCPat:modProc;

nullMP:modProc;
nullDP:dProc;
nullST:setProc;

dspLevVisible: dProc;
dspCache: dProc;
dspLam:dProc ;
dspCore:dProc ;
dspName:dProc ;
dspLM:dProc ;
dspFL:dProc ;
setFL:modProc ;
flipLevVisible: modProc;
flipCache: modProc;
dspDifSex, dspDifPurp: dProc ;
flipDifSex, flipDifPurp:modProc ;
dspScl:dProc ;
tyScl:modProc ;
incScl:modProc ;
decScl:modProc ;
dspBool:dProc ;
incBool:modProc ;
decBool:modProc ;
cmpBool:modProc ;
dspMode:dProc ;
dspInt:dProc ;
incInt:modProc ;
decInt:modProc ;
tyInt:modProc ;
zeroImplant, incImplant, maxImplant: modProc;
dspImplant: dProc;
displayParameters:PROCEDURE ;
doRfeed:PROCEDURE RETURNS[BOOLEAN,BOOLEAN] ;
doYfeed:PROCEDURE RETURNS[BOOLEAN,BOOLEAN] ;
doBfeed:PROCEDURE RETURNS[BOOLEAN,BOOLEAN] ;
feedTrack:PROCEDURE RETURNS[fbParmRPtr];
Surround: PROC [p: Point, s: STRING, box, gray: BOOLEAN ← FALSE,
  font: multiGraphicsDefs.StrikeFontPtr ← NIL] RETURNS [nextX: INTEGER];


  END.