Look reasonably well want at least 128 dots at 25Hz or so.
Hard to do.  Each dot has 4 muls and 2 divides which is expensive on 6502.
Lookup tables?  At some point they are so large you might as well just
do a movie.

Note even C64 version isn't accurate to the original.



Initial implementation:
	512 dots, 2450 frames (35s when run at 70Hz which is what VGA does)

	256 dots, 2450 frames is ~1MB of data

With this setup:

$FF = all done
$FE = new frame shadow
$FD = new frame balls

For X:
$0..$27 (0..39)  00XX XXXX

both
	1100 0000 - 1110 0111
	$C0-$E7
top	1000 0000 - 1010 0111
	$80-$A7
bottom
	0100 0000 - 0110 0111
	$40-$67
new row
	0000 0000 - 0001 0111
	$00-$17


For Y:
$0..$17 (0..23)  000X XXXX
         01XX XXXX = new row

specify top/bottom/both
	

	
	256 dots/2450 frames = 709,134 bytes


	skip factor 1 (none) = 41s
	skip factor 2 OK     = 37s


2450 frames @70Hz = 350 frames at 10Hz

	
70=7*5*2

without dot removal
		70fps	35fps	14fps	10fps	7fps	5fps
256 dots:	709134			101304	70913	50652
128 dots:	462169			66024	46216	33012
64  dots:	290877			41533	29087	20776

with dot removal
		70fps	35fps	14fps	10fps	7fps	5fps
256 dots:	677907	
128 dots:	448966				44767
64  dots:	285486			40694

new compact format
		70fps	35fps	14fps	10fps	7fps	5fps
256 dots:				76516	53447	38227
128 dots:				52456	36632
64  dots:		120183		34299





40k

zx02 version:

		70fps	10fps	7fps	5fps
256 dots:		1.4MB
128 dots:		1.4MB




actual version:
	requires 4 multiplies and 2 divides for each point

	have a routine 250 cycles for multiply
	250x6x256 = 384000 = 2 fps
