From: andrew@cubetech.com (Andrew Loewenstern)
Subject: Re: Need to convince boss 486's are *not* way to go...
Organization: Cube Technologies, Inc.
Date: Thu, 21 Jan 1993 16:32:22 GMT

In article <1993Jan20.234117.17575@nmsu.edu> bgrubb@dante.nmsu.edu (GRUBB) writes:
>howard@netcom.com (Howard Berkey) writes:
>>Note also that the ci has 8 bit color.

>WRONG! The IIci has 32-bit color even though people normally only use 8-bit
>of it at a time. ALL Present Macs have 32-bit color even though most monitors
>display either in 2-bit{black and white} or 8-bit mode.

>>The NeXT has 16.  It's still much faster.

>Of course the NeXT is managing 65536 color while the mac is handling
>16777216 colors AND a 8-bit Alpha chanel that is partly accessable in 
>8-bit mode {SuperPaint 3.0 uses it.} regardless of what the monitor shows.
>This is 3 month old news from Mac & IBM info{Now on suxex as 
>mac-ibm-compare.txt.}

nonono....  he was talking about frame-buffer depth.  DPS is full
32-bit as well.  But it goes much, much further than 32-bit QD.  First
of all, NeXTSTEP has full alpha support (used for transparency) all
the time in all apps at the system level.  This isn't true with
QuickDraw.  SuperPaint has it's own way of using it, and I have never
seen any other app use it (and I've been doing pre-press on
Macintoshes for several years).  When I, for instance, drag an image
around in PasteUp (a page-layout app), it becomes partially
transparent so I can see behind it which aids tremendously in
placement.  When I drag icons around, I can see around the irregular
shapes, and through them in some cases where the artist has created
semi-opaque or transparent sections.  I use alpha all the time in most
of my apps, not just one or two image editing or drawing apps.  Plus,
when I create an image with alpha in it in one app, every other app
knows what to do with it.

Bit depths are "lazy" and set on a per-window basis.  On my machine,
which is a NeXTstation color, I have a 16-bit frame-buffer.  The DAC
can only display 65536 colors simultaneously.  NeXT chops that up as 4
bits each for red, green, blue, and alpha.  However, most windows
start out as 2-bit with a 2-bit backing store (you don't have buffered
windows with backing-stores in Macintosh either, BTW).  When you add
color, only then does the window get promoted to 16 or 32 bits.
Thereby conserving memory until it is needed.  So I can have 2-bit,
8-bit, 12-bit, and 32-bit windows all happily coexisting using only as
much memory as they need in my apps.  On the Mac, it's all or nothing.
You are in one mode or the other (sure, there are some cheeze ball
apps that switch the mode around when different apps become active,
but it's not the same thing).  Additionally, the system object that
most apps use for images (called NXImage), keeps multiple
representations of the data around and chooses the appropriate one for
whichever display it is going to.  So lets say you have some PS code.
Before you can display it in a 2-bit window, you have to render it.
So NXImage RIP's the PS code into a 2-bit buffer and flushes it to the
window.  When you drag the window across your screen onto a display
with a 32-bit frame-buffer (like a NeXTDimension), it will RIP the
code to a 32-bit buffer and display that.  So now you have 3
representations of the same image - PS code, 2-bits, and 32-bits.  Now
when you print, NXImage will pick the PS code to print with, as it's
more appropriate than a bitmap for that display.

Do you see what I'm getting at?  DPS and NeXTSTEP are much, much more
advanced than QuickDraw and Macintosh.  Indeed, NeXTSTEP is much more
advanced than Macintosh in just about every single aspect.  That's why
Apple is trying to copy NeXT with their Pink/Taligent stuff.


andrew
-- 
andrew@cubetech.com      | "We cannot dwell in the time that is to come,
Andrew Loewenstern       |  lest we lose our now for a phantom of our
Cube Technologies, Inc.  |  own design." - Erendis      FYEO Public Key:
0000000701B61D1ADF0DFC9C16185CEA055200000007EB4A9FEB1922065D471A89E905B5