Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!apple!oliveb!amiga!boing!dale From: dale@boing.UUCP (Dale Luck) Newsgroups: comp.sys.amiga.tech Subject: Re: Blitter Operation Message-ID: <775@boing.UUCP> Date: 28 May 89 15:08:55 GMT References: <8905132203.AA27784@postgres.Berkeley.EDU> <17209@usc.edu> <6542@ardent.UUCP> <3854@sugar.hackercorp.com> <328@xdos.UUCP> Reply-To: dale@boing.UUCP (Dale Luck) Organization: Boing, Milpitas, Ca. Lines: 38 In article <328@xdos.UUCP> doug@xdos.UUCP (Doug Merritt) writes: >In article <3854@sugar.hackercorp.com> karl@sugar.hackercorp.com (Karl Lehenbauer) writes: >>In article <6542@ardent.UUCP>, rap@rap.ardent.com (Rob Peck) writes: >>> As I remember it, the blitter is quite capable of using EVERY cycle. >>> It only takes a back seat if it senses that some other DMA is pending. > >The mode where the blitter takes *all* of the 68K cycles is the one called >BLITTER_NASTY (I guess the first time around, all of us were waiting for >someone else to say so). > >It is not the blitter's usual mode, simply because it *is* unfriendly. > The blitter has 4 dma channels (3 read and 1 write). It is incapable of using a single channel every cycle however it can use alternate channels every cycle. Because of this interleaving, startup and stopping the blitter with multiple channels can leave available cycles for the processor. If you are using only one channel the blitter will use every other cycle. The rest are left for the processor. Note: Most other dma devices have priority over the blitter: display dma, sprites, floppy, copper, etc. So blitter cycles are fit in between these requests as well. The standard 2 bitplane 640x200 wb display requires every other memory cycle during display refresh to keep DENISE busy. So the blitter can only get every other cycle here. The blitter will let the 68000 get cycles when it needs them but when both are running full tilt the blitter will take most of the cycles. Blitter_Nasty mode controls whether the blitter should yield to the processor if they both need cycles. If there are cycles available because the blitter does not need them they will be given to the processor even if blitter_nasty is set. Blitter Nasty does not control how many times it uses the memory cycles, the frequency of access to memory is just the same as Blitter_nasty off. -- Dale Luck GfxBase/Boing, Inc. {uunet!cbmvax|pyramid}!amiga!boing!dale