Path: utzoo!attcan!uunet!wuarchive!brutus.cs.uiuc.edu!apple!oliveb!tymix!tardis!jms
From: jms@tardis.Tymnet.COM (Joe Smith)
Newsgroups: comp.sys.amiga
Subject: Re: Denise/Paula/Agnus/Gary/Portia
Summary: The hardware supports non-contiguous lines
Keywords: blitter lightning bit plane pond scum
Message-ID: <516@tardis.Tymnet.COM>
Date: 18 Aug 89 03:05:38 GMT
References: <1388@bnr-fos.UUCP> <713@neptune.UUCP> <8566@batcomputer.tn.cornell.edu> <3036@bucsb.UUCP> <15769@watdragon.waterloo.edu> <506@tardis.Tymnet.COM> <13167@well.UUCP>
Reply-To: jms@tardis.Tymnet.COM (Joe Smith)
Distribution: comp.sys.amiga
Organization: McDonnell Douglas Field Service Co, San Jose CA
Lines: 33

In article <13167@well.UUCP> farren@well.UUCP (Mike Farren) writes:
>The problem with the proposed scheme is that it wins you little over
>the current scheme.  Blitting images is not done on a line by line
>basis - if it were, the blit might be a little cleaner, but would be
>one hell of a lot slower, as the overhead involved in setting up the
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>blitter for each line transfer would be immense.

No, it wouldn't, because the blitter hardware is capable of doing it.
Take a look at the Hardware Reference Manual (or get Tom Rokicki's BlitLab
from Fish Disk #84).  You can tell the blitter how many bytes are on a line,
and you tell the blitter how many bytes it should skip over to get to the
next line.  Setting the "modulo" register to zero means that the bits for
the second line immediately follows the first line.  The graphics.library
and the blitter fully support this - that's how SuperBitMaps work.

For instance, when showing only a 640x200 section of an 800x200 bitmap,
the blitter is told to process 80 bytes per line and skip 20 bytes to get
to the start of the next line.  (Actually it's 40 words and 10 words since
the blitter processes 16 bits at a time.)

There are all sorts of neat tricks that you can pull by lying to the
graphics.library.  For instance, I've heard that the 3D picture player that
comes with the Haitex 3D goggles does not read two independent 320x200
pictures from the IFF file, but instead reads a double-wide 640x200 lo-res
image.  By giving the appropriate offsets and modulos to the graphics.library
and telling it to display a 320x400 interlaced picture, the left and right
halves of the double-wide image will be displayed on consecutive frames.
-- 
Joe Smith (408)922-6220 | SMTP: JMS@F74.TYMNET.COM or jms@tymix.tymnet.com
McDonnell Douglas FSCO  | UUCP: ...!{ames,pyramid}!oliveb!tymix!tardis!jms
PO Box 49019, MS-D21    | PDP-10 support: My car's license plate is "POPJ P,"
San Jose, CA 95161-9019 | narrator.device: "I didn't say that, my Amiga did!"