Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!ames!amdahl!dlb!dana!rap From: rap@dana.UUCP Newsgroups: comp.sys.amiga Subject: Re: Rapid Stimulus Displaying on the Amiga Help. Solution Message-ID: <152@dana.UUCP> Date: Wed, 22-Apr-87 16:23:51 EST Article-I.D.: dana.152 Posted: Wed Apr 22 16:23:51 1987 Date-Received: Sat, 25-Apr-87 07:37:19 EST References: <8704200221.AA03819@cory.Berkeley.EDU> Organization: Dana Computer, Inc., Sunnyvale, CA Lines: 49 Summary: If re-rendering into non-displayed plane, it does matter... To do rapid screen updating and not fool around with ScreenToFront and so on, Matt suggests the following: In article <8704200221.AA03819@cory.Berkeley.EDU>, dillon@CORY.BERKELEY.EDU (Matt Dillon) writes: > > Use a two plane screen, then render bitmap A into plane 1, and > bitmap B into plane 2 . The idea is that then all you need to > do to switch bitmaps is set the color registers: > > plane: 2 1 color register > 0 0 0 always background color > 0 1 1 depends > 1 0 2 depends > 1 1 3 doesn't matter > > Step 1: Set all color registers to background color > Step 2: Render bitmap A into plane 1 > Render bitmap B into plane 2 > (more) > (.... talking about using SetRGB4 to alternate which of > two color registers gets the non-background color) First, congratulations Matt... I was going to work out some whizbang swapping of pointers (not necessarily, but possibly Intuition-compatible) that would do the task, but you found a simpler and more general method. But... (tiny one, but important), this must be a monocolor technique, where the color in register 3 DOES matter if the user wants to effectively be double-buffering. That is, if he draws into the invisible plane while displaying the visible one, then there could easily be places where the bits of plane 2 and plane 1 would overlap, thereby selecting color number 3. Thus: color register 0 = background color always. While drawing into plane 1: color register 1 = background color (so is not seen) color register 2 = COLOR (being displayed) color register 3 = COLOR (being displayed) so that any bits coincident between plane 1 and plane 2 select color 3 which is the same as the color currently being displayed. But, again, a neat way of attacking the problem! Rob Peck ...hplabs!dana!rap