A bunch of cache-optimized rotozoomers
By Mic, 1999/2000


-= Introduction =-
The usual way of doing a rotozoom effect works fine if you're using it in VGA mode 19
(320*200*256), and if you're only using one layer. If you wish to use SVGA modes however,
then a standard rotozoomer will be way too slow. The same thing goes if you're running more
than one rotozoomer at the same time.
So how do one solve this? Easy: you use tiled texturemapping. Processing the texture block-
-by-block instead of line-by-line is much more efficient. For example, rotozoom.ex is about
160% faster then its "linear" cousin..
Pascal (a.k.a. Niklas Beisert) has given a pretty detailed description of tiled texture-
mapping in his pasroto.zip, wich you should be able to find on the internet. These roto-
zoomers uses an easier method described in fatmap2.txt by MRI/Doomsday though.


-= The files =-

rotozoom.ex	Basic tile-based rotozoomer for mode 19, with optional antialiasing. 
rzoombig.ex	       -- "" --             wich uses VESA graphics (goes anywhere up to 1024*768).
rzoomdual.ex	       -- "" --             with an extra layer + fake transparency effect.
asm.e		\
bmp.e		 \
colors.e	  All kinds	
m19lib.e	  of stuff.			
ports.e		 /
vesa20.e	/
rzoom.bmp	Picture used by the example programs.
sdasuka3.bmp	Another picture.
rotozoom.txt	This file.


-= Bugs ? =-
Yep!
The rotozoomer has an evil bug in it that causes a General Protection Fault (or maybe a
page fault, I don't know) unless I tell it to skip the last pixel of each scanline.
I don't know what the problem is, probably just some stupid little error..



	 