Path: utzoo!dciem!nrcaer!sce!mitel!uunet!cbmvax!jesup From: jesup@cbmvax.UUCP (Randell Jesup) Newsgroups: comp.sys.amiga.tech Subject: Re: BltMaskBitMapRastPort() HELP!!! Simple minterm source included.. Message-ID: <5070@cbmvax.UUCP> Date: 22 Oct 88 06:19:19 GMT Article-I.D.: cbmvax.5070 References: <1232@astroatc.UUCP> Reply-To: jesup@cbmvax.UUCP (Randell Jesup) Organization: Commodore Technology, West Chester, PA Lines: 79 In article <1232@astroatc.UUCP> jojo@astroatc.UUCP (Jon Wesener) writes: > > 1st, where is the documentation for this routine because I can't find >it in any of the manuals? What I did find was a function call and >parameter list in a description of the amiga library calls that came >with my MANX compiler. It's mentioned in the 1.2 Enhancer docs, and is defined in the AutoDocs, available from CATS. It will also be in the new RKMs coming from Addison-Wesley. > I'm trying to use BltMaskBitMapRastPort() to blitter a source A, >through a Mask B into a destination C. I'd like the minterm to do >the equivalent of D = AB | (~B)C where I'm assuming the destination is >C. Thing is, all I can seem to get happen is C = ~A. Here's the AutoDoc for the call: /****** graphics.library/BltMaskBitMapRastPort ******************************** * * NAME * * BltMaskBitMapRastPort -- blit from source bitmap to destination rastport * with masking of source image. * * SYNOPSIS * * BltMaskBitMapRastPort * (srcbm,srcx,srcy,destrp,destX,destY,sizeX,sizeY,minterm,bltmask) * a0 d0 d1 a1 d2 d3 d4 d5 d6 a2 * * struct BitMap *srcbm; * SHORT srcx,srcy; * struct RastPort *destrp; * SHORT destX,destY; * SHORT sizeX,sizeY; * UBYTE minterm; * APTR bltmask; * chip memory * * * FUNCTION * Blits from source bitmap to position specified in destination rastport * using bltmask to determine where source overlays destination, and * minterm to determine whether to copy the source image "as is" or * to "invert" the sense of the source image when copying. In either * case, blit only occurs where the mask is non-zero. * * * INPUTS * srcbm - a pointer to the source bitmap * srcx - x offset into source bitmap * srcy - y offset into source bitmap * destrp - a pointer to the destination rastport * destX - x offset into dest rastport * destY - y offset into dest rastport * sizeX - width of blit in pixels * sizeY - height of blit in rows * minterm - either (ABC|ABNC|ANBC) if copy source and blit thru mask * or (ANBC) if invert source and blit thru mask * bltmask - pointer to the single bit-plane mask, which must be the * same size and dimensions as the planes of the * source bitmap. * * RETURNS * * BUGS * * SEE ALSO * BltBitMapRastPort graphics/gfx.h graphics/rastport.h * ******************************************************************************/ Note: BMBMRP is not currently the fastest routine in the world. To avoid using big tmprasts, it does 3 blits, and may cause the destination to flash (even areas masked out, but within the destination rectangle). This may improve in future releases. -- You've heard of CATS? Well, I'm a member of DOGS: Developers Of Great Software. Randell Jesup, Commodore Engineering {uunet|rutgers|allegra}!cbmvax!jesup