<> <> <> <<>> DIRECTORY PrincOps USING [zMISC, alpha]; BlockOps: CEDAR DEFINITIONS = BEGIN LookupRecord: TYPE = MACHINE DEPENDENT RECORD[ src: LONG POINTER TO CARDINAL, dst: LONG POINTER TO CARDINAL, table: LONG POINTER TO CARDINAL, srcSkip: CARDINAL, dstSkip: CARDINAL, count: CARDINAL ]; aTBLLOOKUP: PrincOps.alpha = 244B; aBlkOp: PrincOps.alpha = 245B; TableLookup: PROC[ptr: LONG POINTER TO LookupRecord] = TRUSTED MACHINE CODE { PrincOps.zMISC, aTBLLOOKUP }; <> <> <> <<>> <<>> BltOp: TYPE = MACHINE DEPENDENT { logAdd(0), logSubtract(1), and(2), or(3), xor(4), lastVal(LAST[CARDINAL]) }; OpBltRecord: TYPE = MACHINE DEPENDENT RECORD[ srcA: LONG POINTER TO CARDINAL, srcB: LONG POINTER TO CARDINAL, dst: LONG POINTER TO CARDINAL, count: CARDINAL, delta: CARDINAL, op: BltOp ]; OpBlt: PROC[ptr: LONG POINTER TO OpBltRecord] = TRUSTED MACHINE CODE { PrincOps.zMISC, aBlkOp }; <> <> <> END. <<>>