You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
283 lines
6.4 KiB
283 lines
6.4 KiB
/******************************Module*Header**********************************\
|
|
* Module Name: ROPTAB.H
|
|
* Author: Noel VanHook
|
|
* Date: Apr 23, 1995
|
|
* Purpose: Table lookup for BLT operands.
|
|
*
|
|
* Copyright (c) 1995 Cirrus Logic, Inc.
|
|
*
|
|
\*****************************************************************************/
|
|
#ifndef _ROPTBL_H_
|
|
#define _ROPTBL_H_
|
|
|
|
|
|
//
|
|
// The table is indexed by rop code. Each entry is a pointer to
|
|
// which blt function to use for that rop code.
|
|
// BLT functions are selected based on what operands they use.
|
|
//
|
|
// Make sure BLT functions are prototyped before including this file.
|
|
//
|
|
//
|
|
|
|
BLTFN *RopTab[] = {
|
|
/* 00 */ op0BLT, // BLACKNESS.
|
|
/* 01 */ op1op2BLT,
|
|
/* 02 */ op1op2BLT,
|
|
/* 03 */ op1op2BLT,
|
|
/* 04 */ op1op2BLT,
|
|
/* 05 */ op2BLT, // DPon
|
|
/* 06 */ op1op2BLT,
|
|
/* 07 */ op1op2BLT,
|
|
/* 08 */ op1op2BLT,
|
|
/* 09 */ op1op2BLT,
|
|
/* 0A */ op2BLT, // DPna
|
|
/* 0B */ op1op2BLT,
|
|
/* 0C */ op1op2BLT,
|
|
/* 0D */ op1op2BLT,
|
|
/* 0E */ op1op2BLT,
|
|
/* 0F */ op2BLT, // Pn
|
|
/* 10 */ op1op2BLT,
|
|
/* 11 */ op1BLT, // DSon
|
|
/* 12 */ op1op2BLT,
|
|
/* 13 */ op1op2BLT,
|
|
/* 14 */ op1op2BLT,
|
|
/* 15 */ op1op2BLT,
|
|
/* 16 */ op1op2BLT,
|
|
/* 17 */ op1op2BLT,
|
|
/* 18 */ op1op2BLT,
|
|
/* 19 */ op1op2BLT,
|
|
/* 1A */ op1op2BLT,
|
|
/* 1B */ op1op2BLT,
|
|
/* 1C */ op1op2BLT,
|
|
/* 1D */ op1op2BLT,
|
|
/* 1E */ op1op2BLT,
|
|
/* 1F */ op1op2BLT,
|
|
/* 20 */ op1op2BLT,
|
|
/* 21 */ op1op2BLT,
|
|
/* 22 */ op1BLT, // DSna
|
|
/* 23 */ op1op2BLT,
|
|
/* 24 */ op1op2BLT,
|
|
/* 25 */ op1op2BLT,
|
|
/* 26 */ op1op2BLT,
|
|
/* 27 */ op1op2BLT,
|
|
/* 28 */ op1op2BLT,
|
|
/* 29 */ op1op2BLT,
|
|
/* 2A */ op1op2BLT,
|
|
/* 2B */ op1op2BLT,
|
|
/* 2C */ op1op2BLT,
|
|
/* 2D */ op1op2BLT,
|
|
/* 2E */ op1op2BLT,
|
|
/* 2F */ op1op2BLT,
|
|
/* 30 */ op1op2BLT,
|
|
/* 31 */ op1op2BLT,
|
|
/* 32 */ op1op2BLT,
|
|
/* 33 */ op1BLT, // Sn -- NOT SRC COPY
|
|
/* 34 */ op1op2BLT,
|
|
/* 35 */ op1op2BLT,
|
|
/* 36 */ op1op2BLT,
|
|
/* 37 */ op1op2BLT,
|
|
/* 38 */ op1op2BLT,
|
|
/* 39 */ op1op2BLT,
|
|
/* 3A */ op1op2BLT,
|
|
/* 3B */ op1op2BLT,
|
|
/* 3C */ op1op2BLT,
|
|
/* 3D */ op1op2BLT,
|
|
/* 3E */ op1op2BLT,
|
|
/* 3F */ op1op2BLT,
|
|
/* 40 */ op1op2BLT,
|
|
/* 41 */ op1op2BLT,
|
|
/* 42 */ op1op2BLT,
|
|
/* 43 */ op1op2BLT,
|
|
/* 44 */ op1BLT, // SDna -- SRC ERASE
|
|
/* 45 */ op1op2BLT,
|
|
/* 46 */ op1op2BLT,
|
|
/* 47 */ op1op2BLT,
|
|
/* 48 */ op1op2BLT,
|
|
/* 49 */ op1op2BLT,
|
|
/* 4A */ op1op2BLT,
|
|
/* 4B */ op1op2BLT,
|
|
/* 4C */ op1op2BLT,
|
|
/* 4D */ op1op2BLT,
|
|
/* 4E */ op1op2BLT,
|
|
/* 4F */ op1op2BLT,
|
|
/* 50 */ op2BLT, // PDna
|
|
/* 51 */ op1op2BLT,
|
|
/* 52 */ op1op2BLT,
|
|
/* 53 */ op1op2BLT,
|
|
/* 54 */ op1op2BLT,
|
|
/* 55 */ op0BLT, // DEST INVERT. Blinking things, like a text cursor.
|
|
/* 56 */ op1op2BLT,
|
|
/* 57 */ op1op2BLT,
|
|
/* 58 */ op1op2BLT,
|
|
/* 59 */ op1op2BLT,
|
|
/* 5A */ op2BLT, // DPx -- PAT INVERT
|
|
/* 5B */ op1op2BLT,
|
|
/* 5C */ op1op2BLT,
|
|
/* 5D */ op1op2BLT,
|
|
/* 5E */ op1op2BLT,
|
|
/* 5F */ op2BLT, // DPan
|
|
/* 60 */ op1op2BLT,
|
|
/* 61 */ op1op2BLT,
|
|
/* 62 */ op1op2BLT,
|
|
/* 63 */ op1op2BLT,
|
|
/* 64 */ op1op2BLT,
|
|
/* 65 */ op1op2BLT,
|
|
/* 66 */ op1BLT, // DSx -- SRC INVERT
|
|
/* 67 */ op1op2BLT,
|
|
/* 68 */ op1op2BLT,
|
|
/* 69 */ op1op2BLT,
|
|
/* 6A */ op1op2BLT,
|
|
/* 6B */ op1op2BLT,
|
|
/* 6C */ op1op2BLT,
|
|
/* 6D */ op1op2BLT,
|
|
/* 6E */ op1op2BLT,
|
|
/* 6F */ op1op2BLT,
|
|
/* 70 */ op1op2BLT,
|
|
/* 71 */ op1op2BLT,
|
|
/* 72 */ op1op2BLT,
|
|
/* 73 */ op1op2BLT,
|
|
/* 74 */ op1op2BLT,
|
|
/* 75 */ op1op2BLT,
|
|
/* 76 */ op1op2BLT,
|
|
/* 77 */ op1BLT, // DSan
|
|
/* 78 */ op1op2BLT,
|
|
/* 79 */ op1op2BLT,
|
|
/* 7A */ op1op2BLT,
|
|
/* 7B */ op1op2BLT,
|
|
/* 7C */ op1op2BLT,
|
|
/* 7D */ op1op2BLT,
|
|
/* 7E */ op1op2BLT,
|
|
/* 7F */ op1op2BLT,
|
|
/* 80 */ op1op2BLT,
|
|
/* 81 */ op1op2BLT,
|
|
/* 82 */ op1op2BLT,
|
|
/* 83 */ op1op2BLT,
|
|
/* 84 */ op1op2BLT,
|
|
/* 85 */ op1op2BLT,
|
|
/* 86 */ op1op2BLT,
|
|
/* 87 */ op1op2BLT,
|
|
/* 88 */ op1BLT, // DSa -- SRC AND
|
|
/* 89 */ op1op2BLT,
|
|
/* 8A */ op1op2BLT,
|
|
/* 8B */ op1op2BLT,
|
|
/* 8C */ op1op2BLT,
|
|
/* 8D */ op1op2BLT,
|
|
/* 8E */ op1op2BLT,
|
|
/* 8F */ op1op2BLT,
|
|
/* 90 */ op1op2BLT,
|
|
/* 91 */ op1op2BLT,
|
|
/* 92 */ op1op2BLT,
|
|
/* 93 */ op1op2BLT,
|
|
/* 94 */ op1op2BLT,
|
|
/* 95 */ op1op2BLT,
|
|
/* 96 */ op1op2BLT,
|
|
/* 97 */ op1op2BLT,
|
|
/* 98 */ op1op2BLT,
|
|
/* 99 */ op1BLT, // DSa -- SRC AND
|
|
/* 9A */ op1op2BLT,
|
|
/* 9B */ op1op2BLT,
|
|
/* 9C */ op1op2BLT,
|
|
/* 9D */ op1op2BLT,
|
|
/* 9E */ op1op2BLT,
|
|
/* 9F */ op1op2BLT,
|
|
/* A0 */ op2BLT, // DPa
|
|
/* A1 */ op1op2BLT,
|
|
/* A2 */ op1op2BLT,
|
|
/* A3 */ op1op2BLT,
|
|
/* A4 */ op1op2BLT,
|
|
/* A5 */ op2BLT, // DPxn
|
|
/* A6 */ op1op2BLT,
|
|
/* A7 */ op1op2BLT,
|
|
/* A8 */ op1op2BLT,
|
|
/* A9 */ op1op2BLT,
|
|
/* AA */ op0BLT, // DEST = DEST.
|
|
/* AB */ op1op2BLT,
|
|
/* AC */ op1op2BLT,
|
|
/* AD */ op1op2BLT,
|
|
/* AE */ op1op2BLT,
|
|
/* AF */ op2BLT, // DPno
|
|
/* B0 */ op1op2BLT,
|
|
/* B1 */ op1op2BLT,
|
|
/* B2 */ op1op2BLT,
|
|
/* B3 */ op1op2BLT,
|
|
/* B4 */ op1op2BLT,
|
|
/* B5 */ op1op2BLT,
|
|
/* B6 */ op1op2BLT,
|
|
/* B7 */ op1op2BLT,
|
|
/* B8 */ op1op2BLT,
|
|
/* B9 */ op1op2BLT,
|
|
/* BA */ op1op2BLT,
|
|
/* BB */ op1BLT, // DSno -- MERGE PAINT
|
|
/* BC */ op1op2BLT,
|
|
/* BD */ op1op2BLT,
|
|
/* BE */ op1op2BLT,
|
|
/* BF */ op1op2BLT,
|
|
/* C0 */ op1op2BLT,
|
|
/* C1 */ op1op2BLT,
|
|
/* C2 */ op1op2BLT,
|
|
/* C3 */ op1op2BLT,
|
|
/* C4 */ op1op2BLT,
|
|
/* C5 */ op1op2BLT,
|
|
/* C6 */ op1op2BLT,
|
|
/* C7 */ op1op2BLT,
|
|
/* C8 */ op1op2BLT,
|
|
/* C9 */ op1op2BLT,
|
|
/* CA */ op1op2BLT,
|
|
/* CB */ op1op2BLT,
|
|
/* CC */ op1BLT, // S -- SRC COPY
|
|
/* CD */ op1op2BLT,
|
|
/* CE */ op1op2BLT,
|
|
/* CF */ op1op2BLT,
|
|
/* D0 */ op1op2BLT,
|
|
/* D1 */ op1op2BLT,
|
|
/* D2 */ op1op2BLT,
|
|
/* D3 */ op1op2BLT,
|
|
/* D4 */ op1op2BLT,
|
|
/* D5 */ op1op2BLT,
|
|
/* D6 */ op1op2BLT,
|
|
/* D7 */ op1op2BLT,
|
|
/* D8 */ op1op2BLT,
|
|
/* D9 */ op1op2BLT,
|
|
/* DA */ op1op2BLT,
|
|
/* DB */ op1op2BLT,
|
|
/* DC */ op1op2BLT,
|
|
/* DD */ op1BLT, // SDno
|
|
/* DE */ op1op2BLT,
|
|
/* DF */ op1op2BLT,
|
|
/* E0 */ op1op2BLT,
|
|
/* E1 */ op1op2BLT,
|
|
/* E2 */ op1op2BLT,
|
|
/* E3 */ op1op2BLT,
|
|
/* E4 */ op1op2BLT,
|
|
/* E5 */ op1op2BLT,
|
|
/* E6 */ op1op2BLT,
|
|
/* E7 */ op1op2BLT,
|
|
/* E8 */ op1op2BLT,
|
|
/* E9 */ op1op2BLT,
|
|
/* EA */ op1op2BLT,
|
|
/* EB */ op1op2BLT,
|
|
/* EC */ op1op2BLT,
|
|
/* ED */ op1op2BLT,
|
|
/* EE */ op1BLT, // DSo -- SRC PAINT
|
|
/* EF */ op1op2BLT,
|
|
/* F0 */ op2BLT, // P -- PAT COPY. Used for fills.
|
|
/* F1 */ op1op2BLT,
|
|
/* F2 */ op1op2BLT,
|
|
/* F3 */ op1op2BLT,
|
|
/* F4 */ op1op2BLT,
|
|
/* F5 */ op2BLT, // PDno
|
|
/* F6 */ op1op2BLT,
|
|
/* F7 */ op1op2BLT,
|
|
/* F8 */ op1op2BLT,
|
|
/* F9 */ op1op2BLT,
|
|
/* FA */ op2BLT, // DPo
|
|
/* FB */ op1op2BLT,
|
|
/* FC */ op1op2BLT,
|
|
/* FD */ op1op2BLT,
|
|
/* FE */ op1op2BLT,
|
|
/* FF */ op0BLT, // WHITENESS.
|
|
};
|
|
|
|
#endif // _ROPTBL_H_
|
|
|