Path: utzoo!utgpu!water!watmath!clyde!bellcore!rutgers!mailrus!ames!oliveb!tymix!antares!jms
From: jms@antares.UUCP (joe smith)
Newsgroups: comp.sys.amiga
Subject: Re: graphics chips ideas
Summary: Possible in current hardware
Keywords: Semi-Opaque windows
Message-ID: <120@antares.UUCP>
Date: 10 Aug 88 20:28:38 GMT
References: <0Wz-V=Au8k-083IFce@andrew.cmu.edu> <1515@pembina.UUCP>
Reply-To: jms@antares.UUCP (joe smith)
Organization: Tymnet QSATS, San Jose CA
Lines: 66

In article <0Wz-V=Au8k-083IFce@andrew.cmu.edu> bader+@andrew.cmu.edu (Miles Bader) writes:
>Currently, as I understand it, in instances where you want a
>background to show through (like with sprites, or in dual-playfield
>mode), a particular color register indicates "see-through."

  This is not how it works.  The hardware does not pickup a color value,
  locate the corresponding color register, and then decide to be transparent
  based on what it in the register.  Instead, it picks up the color value
  and notices that it matches the bit pattern that says to be transparent
  instead of going to the color registers.

>I think a neat way to do it would to be eliminate the special
>behavior of that register, and add another 4 bits to ALL the color
>registers (for a total of 16 bits each), which would be "opaqueness":

  Given that a 5-plane screen uses all 32 color registers for the picture,
  these extra 4 bits would be used only by the sprites.  That is, the
  mouse pointer could be made into a shadow, but could not have a color
  that is different from the screen.

In article <1515@pembina.UUCP> brant@pembina.UUCP (Brant Coghlan) writes:
>... you are displaying a digitized or raytraced picture and you want to look
>at the CAD description of it, your engineering notes, or a structural analysis
>of what ever you are displaying, so you open a transparent window on top of
>the picture. You could see important differences and make changes accordingly.

  This is currently possible using extra-halfbright mode, which produces a
  transparent shadow on top of a 32-color screen.  However, it is not very
  readable; text on a dark background becomes invisible.

I orginally started this follow-up to state that posters were asking for
something that could not be done without redesigning the Amiga, but now see
some possiblilities.  You can't overlay a window on top of a hires screen
because all the memory bandwidth is used up fetching 4 bit planes in double
time.  And raytraced HAM images can't be overlayed because Agnus won't read
more than 6 bit planes at a time.  However, a combination of dual-playfield
and extra-halfbright mode does have possibilities.  

Instead of just 3+3 lores and 2+2 hires bit planes, allow a 5+1 lores mode.
This requires adding a 33rd color register which is selected whenever a bit is
on in the 6th bitplane is on, regardless if the other 5 bits.  If this color
register were set to bright green for instance, then a single bitplane of
40-column text could be overlayed on top of a 32-color screen.  And the
combination of 4+2 planes would use only 20 of the 32 color registers.

Or how about 4+(1+1)?  The 4 means 4 bitplanes of lores (320 columns, 16
colors) and (1+1) means 1 bitplane of hires (640 columns, single color) being
fetched in double-time.  That is, two pixels of overlay for each pixel of
background.  While we're dreaming, why not 6+(1+1), utilizing all 8 DMA slots.
Combine the graphics from 6 lores bitplanes (32 color, EHB, HAM) with one
hires bitplane.  (Or even triple-play field: 3+3+(1+1)!)

Now here's a suggestion that could reasonably make it into 1.4 and work with
existing Amigas (including A1000):  Convert the Workbench screen to use
dual-playfields.  Put all transparent windows on the other pair of bitplanes.
Add a new gadjet to toggle window's status from being in the opaque bit planes
to being in the transparent bit planes.  Dragging a transparent window does
not affect opaque windows and vice versa.  But moving a transparent window
from being on top of another transparent window does require a refresh.

So, Commodore, does this suggestion have merit?
-- 
+-----------------------------------------------------------------------------+
|  TYMNET:   JMS@F29            UUCP: {ames|pyramid}oliveb!tymix!antares!jms  |
|  INTERNET: JMS%F29.Tymnet@Office-1.ARPA   PHONE: Joe Smith @ (408)922-6220  |
+-----------------------------------------------------------------------------+