DIRECTORY ColorDisplayDefs USING [ChannelsVisible, ChannelValue, ColorDisplayType, ColorMode, ColorValue], ColorDisplayDefsExtras USING [ColorTripleArray, ColorValueArray], ColorDisplayFace USING [ColorMap, nullMode], ColorDisplayFaceExtras USING []; ColorDisplayHeadDLion: PROGRAM EXPORTS ColorDisplayFace, ColorDisplayFaceExtras = BEGIN OPEN ColorDisplayFace, ColorDisplayDefs, ColorDisplayDefsExtras; ErrorHalt: PROC = {ERROR}; globalStateSize: PUBLIC NAT _ 0; -- number of words required by Initialize Initialize: PUBLIC PROC [globalState: LONG POINTER] = {ErrorHalt[]}; InitializeCleanup: PUBLIC PROC ~ {ErrorHalt[]}; displayType: PUBLIC ColorDisplayType _ none; -- sorry ... width: PUBLIC NAT _ 0; -- display width, in pixels height: PUBLIC NAT _ 0; -- display height, in pixels pixelsPerInch: PUBLIC NAT _ 0; -- Size of a pixel SetDisplayType: PUBLIC SAFE PROC [type: ColorDisplayType] RETURNS [ok: BOOL] ~ CHECKED { RETURN[type=none]; }; HasMode: PUBLIC SAFE PROC[mode: ColorMode] RETURNS[BOOL] = CHECKED { RETURN[FALSE]; -- nope }; NextMode: PUBLIC SAFE PROC [mode: ColorMode] RETURNS [ColorMode] = CHECKED { RETURN[nullMode]; }; wordsForColorMap: PUBLIC NAT _ 0; InitializeColorMap: PUBLIC PROC [mode: ColorMode, pointer: LONG POINTER] RETURNS [ColorMap] ~ { RETURN[NIL] }; SetColor: PUBLIC PROC [map: ColorMap, pixelA, pixelB: ChannelValue, r, g, b: ColorValue] ~ { }; SetColorArray: PUBLIC PROC[map: ColorMap, pixelB: ChannelValue, array: LONG POINTER TO ColorTripleArray] ~ { }; GetColor: PUBLIC SAFE PROC[map: ColorMap, pixelA, pixelB: ChannelValue] RETURNS [r, g, b: ColorValue _ 0] ~ CHECKED { }; SetR: PUBLIC PROC [map: ColorMap, in: ChannelValue, out: ColorValue] ~ { }; SetRArray: PUBLIC PROC[map: ColorMap, array: LONG POINTER TO ColorValueArray] ~ { }; SetG: PUBLIC PROC [map: ColorMap, in: ChannelValue, out: ColorValue] ~ { }; SetGArray: PUBLIC PROC[map: ColorMap, array: LONG POINTER TO ColorValueArray] ~ { }; SetB: PUBLIC PROC [map: ColorMap, in: ChannelValue, out: ColorValue] ~ { }; SetBArray: PUBLIC PROC[map: ColorMap, array: LONG POINTER TO ColorValueArray] ~ { }; GetR: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue] RETURNS [out: ColorValue _ 0] ~ CHECKED { }; GetG: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue] RETURNS [out: ColorValue _ 0] ~ CHECKED { }; GetB: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue] RETURNS [out: ColorValue _ 0] ~ CHECKED { }; Connect: PUBLIC PROC [mode: ColorMode, baseA, baseB: LONG POINTER, map: ColorMap] = { ErrorHalt[]; }; Disconnect: PUBLIC SAFE PROC = CHECKED { }; TurnOn: PUBLIC PROC = { ErrorHalt[] }; TurnOff: PUBLIC SAFE PROC = CHECKED { }; SetVisibility: PUBLIC SAFE PROC[visibility: ChannelsVisible] ~ CHECKED { }; END. ColorDisplayHeadDLion.mesa (stub version) Copyright c 1985, 1986 by Xerox Corporation. All rights reserved. Taft August 26, 1982 4:40 pm Maxwell December 9, 1983 8:35 am Russ Atkinson (RRA) February 19, 1985 3:31:46 pm PST Doug Wyatt, June 9, 1986 3:20:39 pm PDT Κψ˜codešœ*™*Kšœ Οmœ7™BKšœ™Kšœ ™ K™4K™'—K˜šΟk ˜ KšœžœJ˜`Kšœžœ%˜AKšœžœ˜,Kšœžœ˜ K˜—K˜KšΠblœž˜Kšžœ)˜0Kšœžœžœ<˜HK˜KšΟn œžœžœ˜K˜KšœžœžœΟc)˜JK˜Kš   œžœžœžœžœ˜DK˜Kš œžœžœ˜/K˜Kšœ žœ‘ ˜9K˜Kšœžœžœ‘˜2šœžœžœ‘˜4K˜—Kšœžœžœ‘˜1K˜š œžœžœžœžœžœžœ˜XJšžœ ˜J˜J˜—š œžœžœžœžœžœžœ˜DKšžœžœ‘˜Kšœ˜—K˜š  œžœžœžœžœžœ˜LKšžœ ˜Kšœ˜K˜—Kšœžœžœ˜!K˜Kš œžœžœžœžœžœžœžœ˜oK˜Kš œžœžœK˜`Kš   œžœžœ.žœžœžœ˜pKš  œžœžœžœ/žœžœ˜yK˜Kš œžœžœ:˜KKš   œžœžœžœžœžœ˜TKš œžœžœ:˜KKš   œžœžœžœžœžœ˜TKš œžœžœ:˜KKš   œžœžœžœžœžœ˜TKš  œžœžœžœ$žœžœ˜fKš  œžœžœžœ$žœžœ˜fKš  œžœžœžœ$žœžœ˜fK˜K™š  œžœžœ!žœžœ˜UKšœ ˜ Kšœ˜K˜—Kš   œžœžœžœžœ˜+K˜Kš œžœžœ˜&K˜Kš  œžœžœžœžœ˜(K˜Kš   œžœžœžœ žœ˜KK˜Kšžœ˜—…— ΄Ό