View Single Post
Old 23 August 2019, 00:12   #2
Havie
Registered User
 
Join Date: Mar 2012
Location: UK
Posts: 502
From read me file:


VSPRITES v0.5ß

(A BB2 *Hardware-Sprite-Multiplexer*)



Developed by Manfred Linzner
in November 1997, January 1998


This is a free extension for BB2. Please note me in your projects if
you use it. Any comments or suggestions are appreciated.



Overview:
---------

Have you ever tried to code a fast action game in BB2 ?
Then you will have experienced the limited number of BOB´s that
BB2 can handle in 50hz (including restauration of the old screen!).
SPRITES are not too useable if you want to bypass the blitter.
AMIGA´s hardware can only handle 8 SPRITES with 3 colors or
4 SPRITES with 15 colors. That´s not enough for any kind of action-game.
VSPRITES is the solution for this!




Generall:
---------


VSPRITES is a BB2-include that allows you to use upto 512 sprites.
And all those sprites are using the same 16 color palette.

Alot of hardware banging is necessary to force the hardware to
give you such impressive amount of nearly non-cpu stressing sprite magic.

The most interresting feature is the use of many BIG VSPRITES that are not
possible to be handled by the BLITTER in realtime. Many small
VSPRITES are too slow in most cases. The overhead of multiplexing them
is to complex todo it in realtime for severall hundred VSPRITES.
(My code is simply too slow =)


Technical:
----------

The multiplexing of the sprites will be achieved by waiting to
specific scanlines and reseting the needed sprite-registers.
A special treatment of the temporary spritebuffer-2-screen registers
is needed. The Sprite-DMA pointers will also be rewritten ´on the fly´.
I suppose that my routine does only work with a standard 320pixel wide
lowres-screen. All Sprite-register-writes will be done at specific
y-beam positions. By changing the display-window size everything will
be easily out of the right sync. All AGA fetch-modes are supported by
setting them into the BB2-coplists. Previous commands written into
the BB2-coplist (i.e SETRAINBOW) will be discarded.




Features:
- Upto 512 multicolor-sprites onscreen in 50hz (AMIGA POWER =)
- 16 colors for every sprite (from one 16-color palette)
- Upto 256 pixel high sprites
- 16,32 or 64 pixel width sprites for AGA display
- 16 pixel width sprites for OCS display
- Fully compatible to BB2 sprites-data and size
- Very small and easy to use
- Compatible to BB2 Spritesmode (16,32,64 pixel width)


Limitations:
- Maximum of 4 sprites for one vertical scanline
- Only upto 4 sprites can overlap themselves
- Disables most BB2 customcoplists commands
- The display code is far from optimised. I bet the
display routines could be up-speeded by 300-400%.


Note: Use double-buffered coplists for
optimal flicker free performance!


ps: Developed and tested on a 68030/50 System. I don´t know if slower
AMIGA computers will have problems in any way. Please report bugs

Email: manfred.linzner@munich.netsurf.de
Havie is offline  
 
Page generated in 0.04099 seconds with 11 queries