View Single Post
Old 05 May 2005, 07:26   #1
cdoty
RasterSoft Dev
 
cdoty's Avatar
 
Join Date: Feb 2005
Location: Manteno IL
Posts: 58
Send a message via ICQ to cdoty Send a message via AIM to cdoty
Blitter Question.

Any idea what could cause the blitter to product strange results?

I use the blitter to restore parts of the screen, and then blit a sprite.

The restore blit produces weird errors, the width should be 32 pixels and the height should be 16 pixel, but it almost appears to reverse these values (0x0402 is my BlitSize), and my mod value is 36 ((320 - 32) / 8) for source A and Dest D. In between blitting the 5 planes, I am only setting channel A, D pointers and, BLITSIZE. I normally wait fo the blitter to complete between planes, but have also commented out the wait.

And using the same values, I can blit a sprite correctly. The only differences are the use of all 4 channels, masking the last word, mod values for channels A and B (mask and pixel data) and, a shift value for channels A and B. The mod values for C and D are the same as above. BLITSIZE is the same as above. My sprite is acutally 16 x 16, but I use the extra 16 bit as required and mask the last word.

The correct pixels are transferred, but the locations are wrong. I can see what it's doing, if I override the source in the restore operation.

I am using the AA chipset, but only using 5 planes.

I've debugged and verified that the values are what they should be.
cdoty is offline  
 
Page generated in 0.16387 seconds with 11 queries