ColorDisplayFaceExtras.mesa
Last Edited by: Frank Crow, October 8, 1984 12:53:47 pm PDT
DIRECTORY
PrincOps    USING [PageNumber, PageCount],
ColorDisplayFace  USING [Mode];
ColorDisplayFaceExtras: DEFINITIONS =
BEGIN
DisplayType: TYPE = {none, ramtek714, hitachi2713, conrac7211Hi, conrac7211Lo};
Get storage amount necessary for bitmap
PagesForMode: PUBLIC PROC[mode: ColorDisplayFace.Mode] RETURNS[PrincOps.PageCount];
Set color display size and monitor type
SetMonitorType: PUBLIC PROC [ newMonitorType: DisplayType, newWidth, newHeight: NAT ];
Set color display window size
SetDisplaySize: PUBLIC PROC [ newWidthA, newHeightA: NAT,
          newWidthB, newHeightB: NAT ← 0];
Adjust position of Display Control Block on screen
SetAOffsets: PUBLIC PROC [ xOffset, yOffset: NAT ];
SetBOffsets: PUBLIC PROC [ xOffset, yOffset: NAT ];
For double buffering. Alternates displaying achannel buffer and bchannel buffer on achannel
SwitchChannels: PUBLIC PROC [];
Establishes the specified mode; allocates bitmap(s) and colormap(s) from a client-supplied block of nPages pages of mapped virtual memory. If mode.full=TRUE, nPages may be less than PagesForMode[mode]; in this case, the raster size will be reduced to fit. Subsequent changes to the bitmap or color map will affect the color image, but the image will not appear on the screen until TurnOn is called.
Connect: PUBLIC PROC [
mode: ColorDisplayFace.Mode,
firstPage: PrincOps.PageNumber,
nPages: PrincOps.PageCount
];
END.