-- Compiler HBltDefs.mesa -- Written by Bob Lyon -- Updated: September 26, 1980 4:51 PM DIRECTORY BitBltDefs: FROM "BitBltDefs" USING [BBoperation], SegmentDefs: FROM "SegmentDefs", Mopcodes: FROM "Mopcodes"; HBltDefs: DEFINITIONS = BEGIN OPEN BitBltDefs, SegmentDefs; -- Constants HBltInRAM: PRIVATE CARDINAL = 550B; XHBltInRAM: PRIVATE CARDINAL = 550B; -- Types HBTable: TYPE = MACHINE DEPENDENT RECORD [ pad: [0 .. 17777B], function: BBoperation, destalt: BOOLEAN, -- TRUE => use alt mem bank dbca: POINTER, -- beginning addr of map dbmr: CARDINAL, -- no. words per scanline y: CARDINAL, -- scanline no. x1: CARDINAL, -- begin x coordinate x2: CARDINAL, -- end x coordinate gray: CARDINAL -- gray pattern description ]; -- WARNING WARNING WARNING x2 >= x1 or else NOP !!!!!!!! WARNING HBptr: TYPE = POINTER TO HBTable; -- Procedures HBlt: PUBLIC PROCEDURE [HB: HBptr] = MACHINE CODE BEGIN Mopcodes.zLIW, HBltInRAM / 256, HBltInRAM MOD 256; Mopcodes.zJRAM END; -- bank was SegmentDefs.BankIndex XHBlt: PUBLIC PROCEDURE [HB: HBptr, bank: CARDINAL] = MACHINE CODE BEGIN Mopcodes.zLIW, XHBltInRAM / 256, XHBltInRAM MOD 256; Mopcodes.zJRAM END; END.