[REBOL] Multimedia quality (was) One disk OS + REBOL Re:(8)
From: holger::rebol::com at: 25-Aug-2000 16:42
On Fri, Aug 25, 2000 at 08:03:16PM +0200, [g--santilli--tiscalinet--it] wrote:
> That's platform dependance. If REBOL/View was designed with the
> Amiga chipset in mind, it would probably be quite different and
> would be fast on the Amigas, but not really fast on the other
> systems. It was instead designed with an abstact system in mind;
> probably that was too abstract, and /View is using only a little
> of the power of our computers.
REBOL internally keeps data in 32-bit chunky format (image!
datatype). This is efficient on pretty much every hardware
architecture, with the exception of the somewhat obsolete planar
bitmap format the Amiga chipset uses.
Planar bitmaps were great in the late 80's when it was important
to use as few bits as possible per pixel (fewer than 8 typically),
in order to achieve high resolutions with little memory. Things have
changed since then though, and today everyone is using 8, 16, 24
or 32 bits per pixel. For that chunky formats are more efficient, in
particular when manipulating individual pixels.
What makes REBOL/View relatively slow on Amigas with the native graphics
chipset is the necessary chunky-to-planar conversion. We are using
optimized Assembler code for that, but it is still a bottleneck. On
Amigas with graphics boards REBOL/View is reasonably fast (often
faster than under Unix/X running on the same hardware).
REBOL/View cannot directly use planar bitmaps for its internal
images, not only because that would require some rewrites, but
also because the up to 8 planes the Amiga hardware supports would
not be sufficient to support the various effects View provides
(blending, colorization etc.). Those effects need to operate on
32-bit images throughout, and quantize colors down to the
requirements of the display hardware only as the last step. This
makes chunky-to-planar conversion inevitable. If REBOL stored
all internal bitmaps in 8 or fewer bits then errors would add up
when processing effects and the resulting images would look "ugly".