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!"