>> CALL COPYBITS(#gWorld2&+2,#wPtr&+2,guyR,guyC,_transparent,0) One last thing: given that (1) any copymode other than _scrCopy will be slower (at least IM says so--haven't actually run a time test), and (2) drawing to screen will be slower than drawing into or between offscreen gWorlds (ditto), see if you can set it up so any necessary transparent drawing is done behind the scenes, leaving you with an opaque block to _scrCopy to the screen.