DIRECTORY ImagerBasic USING [Transformation, IntRectangle, IntPair, CIEColor, PixelArray], ImagerDisplay USING [ClipperRecord, DisplayProcs, ByteSequence, VtxSequence]; Imager4bitDisplay: CEDAR DEFINITIONS = BEGIN OPEN ImagerBasic, ImagerDisplay; SetUp: PROC [] RETURNS [Transformation, REF ClipperRecord, DisplayProcs]; -- get memory, pin it, set transform and clipper ShutDown: PROC []; -- free memory in case the last user has left OpenPixelBuffer: PROC [box: ClipperRecord, buffer: PixelArray _ NIL] RETURNS [PixelArray]; -- redirect writes for double-buffer ClosePixelBuffer: PROC []; -- drop pixel buffer ref ColortoPixel: PROC [color: CIEColor] RETURNS [LONG CARDINAL]; -- Color to device transform PixeltoColor: PROC [pxlValue: LONG CARDINAL] RETURNS [CIEColor]; HilitePxls: PROC [area: IntRectangle]; -- Device dependent highlighting scheme MovePxls: PROC [source: IntRectangle, destination: IntPair]; -- move on display StorePxls: PROC [source: IntRectangle] RETURNS [PixelArray]; LoadPxls: PROC [source: PixelArray _ NIL, destination: IntPair, transparent: BOOLEAN]; StoreScanSeg: PROC [x, y, length: CARDINAL] RETURNS [ByteSequence]; LoadScanSeg: PROC [x, y, length: CARDINAL, segment: ByteSequence, transparent: BOOLEAN]; LoadTrapezoid: PROC [top, bottom, leftTop, leftBot, rightTop, rightBot: CARDINAL, pxlValue: LONG CARDINAL]; -- Scan convert trapezoid, constant color SetPxl: PROC [x, y: CARDINAL, pxlValue: LONG CARDINAL]; GetPxl: PROC [x, y: CARDINAL] RETURNS [LONG CARDINAL]; DrawLine: PROC [a, b: IntPair, pxlValue: LONG CARDINAL]; -- draw a fast line, constant color Tiler: PROC [VtxCount: CARDINAL, Vertices: ImagerDisplay.VtxSequence]; END. ΄Imager4bitDisplay.mesa This interface provides access to the low level routines for the color display at 4 bits per pixel. Last Edited by: GWilliams, July 25, 1983 7:04 pm Κύ˜headšœ™J™c—™šœ™Jšœ ™ —unitšΟk ˜ Jšœ  œ2˜IJšœ˜Jšœœ:˜O——head2šœ$˜$Jšœ˜Jšœ˜ —Lš ΟnœœœœΟc6˜Jšžœœ Ÿ-˜HJš žœœ+œœŸ%˜Jšžœœ Ÿ˜:Jš ž œœœœœŸ˜[Jš ž œœ œœœ ˜@Jšž œœŸ*˜RJšžœœ/Ÿ˜SJšž œœœ˜