-- ColorDisplayHeadDLion.mesa (stub version) -- Last edited August 26, 1982 4:40 pm by Taft DIRECTORY ColorDisplayFace USING [Color, Mode], Environment USING [Base, PageCount, PageNumber], HeadStartChain USING [Start], RuntimeInternal USING [WorryCallDebugger]; ColorDisplayHeadDLion: PROGRAM IMPORTS RemainingHeads: HeadStartChain, RuntimeInternal EXPORTS ColorDisplayFace, HeadStartChain = { ErrorHalt: PROC = {RuntimeInternal.WorryCallDebugger["Error in ColorDisplayHeadDLion"L]}; RPtr: TYPE = Environment.Base RELATIVE POINTER; -- relative to absolute address 0 Mode: TYPE = ColorDisplayFace.Mode; Color: TYPE = ColorDisplayFace.Color; -- Interface variables -- The following are valid as soon as the module start code has run (see Start) globalStateSize: PUBLIC CARDINAL ← 0; -- for Initialize displayType: PUBLIC CARDINAL ← 0; -- display type; 0 means display not available oldRev: BOOLEAN ← FALSE; -- TRUE if color board has an old revision level (less than Cj) pixelsPerInch: PUBLIC CARDINAL ← 0; -- Size of a pixel mixedRG: PUBLIC BOOLEAN ← TRUE; -- in fullmode, red and green alternate in A bitmap width,height: PUBLIC CARDINAL ← 0; -- Dimensions of current raster in pixels baseA,baseB,baseC: PUBLIC LONG POINTER ← NIL; -- bitmap addresses bplA,bplB,bplC: PUBLIC CARDINAL ← 0; -- bitmap bits per line Initialize: PUBLIC PROC [globalState: RPtr] = {ErrorHalt[]}; HasMode: PUBLIC PROC[mode: Mode] RETURNS[BOOLEAN] = {RETURN[FALSE]}; -- no display PagesForMode: PUBLIC PROC[mode: Mode] RETURNS[Environment.PageCount] = { ErrorHalt[]; RETURN [0]}; Connect: PUBLIC PROC [mode: Mode, firstPage: Environment.PageNumber, nPages: Environment.PageCount] = {ErrorHalt[]}; Disconnect: PUBLIC PROC = {ErrorHalt[]}; TurnOn: PUBLIC PROC = {}; TurnOff: PUBLIC PROC = {}; Show: PUBLIC PROC[a,b,c: BOOLEAN] = {ErrorHalt[]}; GetColor: PUBLIC PROC[pixelA,pixelB: CARDINAL] RETURNS[r,g,b: Color] = {ErrorHalt[]}; SetColor: PUBLIC PROC[pixelA,pixelB: CARDINAL, r,g,b: Color] = {ErrorHalt[]}; GetRedMap: PUBLIC PROC[in: Color] RETURNS[out: Color] = {ErrorHalt[]}; GetGreenMap: PUBLIC PROC[in: Color] RETURNS[out: Color] = {ErrorHalt[]}; GetBlueMap: PUBLIC PROC[in: Color] RETURNS[out: Color] = {ErrorHalt[]}; SetRedMap: PUBLIC PROC[in,out: Color] = {ErrorHalt[]}; SetGreenMap: PUBLIC PROC[in,out: Color] = {ErrorHalt[]}; SetBlueMap: PUBLIC PROC[in,out: Color] = {ErrorHalt[]}; -- Initialization InitializeCleanup: PUBLIC PROC = {}; -- HeadStartChain Start: PUBLIC PROC = { RemainingHeads.Start[]; }; }.