|
|
/******************************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_
|