Aaron Avery ({caip, allegra, seismo, harvard, ihnp4}!uwvax!puff!avery)
(av...@puff.wisc.edu)
Using the blitter directly (from C or assembly) is certainly possible.
You should take a look at "blit.c" that appeared with Tom Rokicki's
life source code in Fish disk 31. The code is nice and short, and shows you
how to load the blitter registers and then start it up. Of course, you
fist have to Own the blitter, and, before doing any subsequent blitter
operations, you have to wait for the previous blitter operation to
conclude... I don't remember the exact function names to do this
stuff; take a look at the code. Also, there is a certain order in which
you load the registers; loading one of the registers starts the
blitter, so that one should be done last. And finally, I don't think
you need to turn of interrupts or anything --- Just make sure the
blitter is yours before you load the registers.
Of course, I've heard people complain that the code in "blit.c"
works only for Tom and no one else...
BTW, Tom has a brand new version of Life --- No, it doesn't go any faster
but it does let you specify, through a most cryptic programming language,
the initial startup picture... He should post it SOON (hint hint, Tom).
Ali Ozer, a...@rocky.stanford.edu
Actually, the code in blit.c works for the application I needed it
for, but is not as general as it claims to be. It is most certainly a
starting place, though. Under 1.1, be careful, since WaitBlit() has
a bug in it where it could return too early . . . 1.2 has this fixed.
Using the blitter isn't that hard . . . maybe I'll update blit.c and
post the final rendition.
> BTW, Tom has a brand new version of Life --- No, it doesn't go any faster
> but it does let you specify, through a most cryptic programming language,
> the initial startup picture... He should post it SOON (hint hint, Tom).
Cryptic? It's not that cryptic. Anymore. It's a derivative of Logo,
with parameterless subroutines. Maybe I'll post it this week. The new
LIFE also supports torus wrap and hi-resolution interlace . . .
> Ali Ozer, a...@rocky.stanford.edu
Tom Rokicki