Path: utzoo!attcan!uunet!ginosko!gem.mps.ohio-state.edu!apple!rutgers!uwvax!astroatc!nicmad!madnix!aaron From: aaron@madnix.UUCP (Aaron Avery) Newsgroups: comp.sys.amiga.tech Subject: Re: Double Buffering Message-ID: <934@madnix.UUCP> Date: 12 Oct 89 05:40:20 GMT References: <11833@watcgl.waterloo.edu> Reply-To: aaron@madnix.UUCP (Aaron Avery) Distribution: na Organization: ASDG Incorporated Lines: 33 In article <11833@watcgl.waterloo.edu> bmacintyre@watcgl.waterloo.edu (Blair MacIntyre) writes: >I'm trying to create a double buffered display. I had it working for the >longest time using the following method: > 2 BitMap structs - one in Screen->Viewport.RasInfo->BitMap > the other in Screen->RastPort.BitMap > swap them to double buffer > call MakeScreen( Screen ) > ReThinkDisplay(); This works, but the only relevent one is RasInfo->BitMap. The other one should probably be in your own memory. And remember to use Pointers for this. There's no need to shift the whole structure around. >The problem is this: > I substitute the ScrollVPort call for the other two calls and the > following happens: the double buffering works ( a Good thing! ) but > all the lines on the display cease to be drawn correctly. What I Methinks you're in interlaced mode. This is a bug in ScrollVPort which I reported many moons ago. Since 1.3 did not include bug fixes such as this, we'll have to wait for 1.4 for ScrollVPort to work with LACE mode viewports. Also note that Jim Mackraz says that double buffering and Intuition don't get along yet. I think the ReThinkDisplay() is safest (though slow), since it's an Intuition call. - Aaron -- Aaron Avery, ASDG Inc. "A mime is a terrible thing to waste." -- Robin Williams ARPA: madnix!aaron@cs.wisc.edu {uunet|ncoast}!marque! UUCP: {harvard|rutgers|ucbvax}!uwvax!astroatc!nicmad!madnix!aaron