
           ========================================================
                               FastWaitBlit 2.2
           ========================================================
                       Copyright © 1995,1996 Dave Jones
                              All rights reserved
           --------------------------------------------------------
                    GiftWare - Please send me **anything!**
           --------------------------------------------------------

*************
Distribution:
*************
It is forbidden to include this on a magazine coverdisk without first
writing to me to make sure you include the latest version, and also,
I want a copy of the magazine featuring FastWaitBlit.
No other limitations are implied on FWB's distribution.


************
Requirements
************
Any Amiga, with standard blitter, (Untested on custom gfx cards - Please
give me feedback on this issue)
Some fastram is also needed, as running my waitblit code from Chipram
will result in a slower performance than the ROM code, which runs at
lower wait states.


***********
BackGround:
***********

There exists a routine called WaitBlit() in all Amiga KickStarts, which
simply waits until the blitter has finished it's current work (Called a
blit), so we know when to load it with more data.
Whilst the blitter is busy, the CPU idles, swapping to other tasks e.t.c.
The Amiga hardware also contains a bit called BLITHOG which means the
blitter DMA gets more cycles than the CPU, which in turn, means that
blit's get done quicker, at the expense of less CPU time.

This very small program will reprogram the WaitBlit() function to set
BlitHog whilst waiting for a blit to complete, and then clears BlitHog
when it has completed, returning full bandwidth to the CPU.

The drawback of this, is that multitasking is slowed slightly (In theory)
but only while blits are taking place. This drawback does not have any
visible effect on the user, and actually (IMHO) makes the system MORE
productive, as the program you are currently using will wait less.

FastWaitblit needs Kickstart 2.0 or above, if any 1.3 freaks would like
me to add compatability, please email (or snailmail) me, as it's not
much work, but results in an ever-so slightly bigger executable.

Even without the BLITHOG stuff, the actual wait routine is also faster
than CBM's, and should be compatable on all Amigas.. (I hope)

Things that should be notacibly faster with FastWaitBlit installed are
menu browsing, WB updating, text scrolling and benchmark programs that
tests the gfx capabilities (like AIBB).
To use this program, run it from CLI, or just add it to your startup-
sequence or user-startup.


********
History:
********

v1.0: Release date 2-11-95
 First version, just an optimised version of the 3.0 WaitBlit()

v2.0: Release date 2-5-96
 Added some lines to increase blitter speed whilst waiting for the
 current blit to finish.

v2.1: Release date 3-5-96
 Tests if the blitter is busy first, if not, doesn't bother setting
 and clearing BlitHog.

v2.2: Release date 4-5-96
 Now, the patch code is 32bit aligned for increased performance
 on 68020 and greater CPU's.

***********
Programmer:
***********

 Dave Jones
 40,Heol Edward Lewis
 Gelligaer
 Hengoed
 Mid Glam
 Cf82 8ej
 South Wales.

 Email: DJones@CardiffCyberCafe.Co.Uk

I'm a 22 year old hobby programmer, interested in anything Amiga, currently
working as a Data Entry Clerk (Which sucks) Job offers welcome ;^)


*********
Messages:
*********

Martin Berndt
~~~~~~~~~~~~~
I understand you too have written a fastwaitblit program. I am unable to find
this anywhere, and as you decided not to reply to my letter. I decide not to
care, and release my version, hoping yours is not faster ;^)
If you feel like, why not write to me one day?
