home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The C Users' Group Library 1994 August
/
wc-cdrom-cusersgrouplibrary-1994-08.iso
/
listings
/
v_08_08
/
8n08060a
< prev
next >
Wrap
Text File
|
1990-07-18
|
918b
|
57 lines
/* look-up tables for several TIGA modes */
long bit2 mask[]={
0x00000000,
0x55555555,
0xaaaaaaaa,
0xffffffff };
long bit4 mask[]={
0x00000000,
0x11111111,
0x22222222,
0x33333333,
0x44444444,
0x55555555,
0x66666666,
0x77777777,
0x88888888,
0x99999999,
0xaaaaaaaa,
0xbbbbbbbb,
0xcccccccc,
0xdddddddd,
0xeeeeeeee,
0xffffffff };
int set_mask( mask )
unsigned short mask;
{
long real_mask;
real_mask = mask & (ncolors-1);
switch(nplanes)
{
case 1:
if (mask)
real_mask = -1;
break;
case 2:
real_mask = bit2_mask[mask];
break;
case 4:
real_mask = bit4_mask[mask];
break;
case 8:
real_mask |= real_mask << 8;
real_mask |= real_mask << 16;
break;
case 16:
break;
} /* end switch */
set_pmask(~real_mask);
return(0);
}