Re: [stella] VDEL problems again

Subject: Re: [stella] VDEL problems again
From: Thomas Jentzsch <tjentzsch@xxxxxx>
Date: Tue, 19 Mar 2002 23:16:44 +0100
At 19.03.2002, 09:15, Glenn Saunders wrote:

> After several months I spent a bit of time going over the DD code again and 
> I have to admit I'm a little rusty.

> I still can't understand how to properly implement VDEL.  (Here we go again).

Here we help again. :-)

The Combat kernel has a single line resolution for the graphics, but NOT
for the Y positioning. IIRC Death Derby is going to be the opposite way,
which is what Thrust does too.


> GRP0 is written right after the WSYNC on the first of the two
> line-pairs.

This is correct.


> GRP1 written close to the end of the 2nd line-pair. I'm assuming that
> the GRP1 write timing is not critical, just GRP0.

This is WRONG if VDELP1 is disabled and/or VDELP0 is enabled. Then the
timing is critical.

What you have to do, is writing to GRP0 on the first line and GRP1 on
the second. And both writes have to happen before cycle 23 or they will
come to late when the cars are at the very left.

I think your cycle counting is a bit wrong too (e.g. HMOVE needs 3
cycles), because the second HMOVE is coming much to late [@11 not @76)
and therefore the write to GRP1 is at @30, which is 8 cycles or 24
pixels to late. But that is NOT the problem here.


Your major problem is, that you have to change the settings of the
values for VDELPx.
 
Example:
Y = 100 (for both cars)
-> VDELPx = 1
-> GRP0 is displayed one line *above* GRP1

So you'd have to disable VDELP1 in this case.

To move both cars one line down, it's getting even more complicated. Now
you have to enable VDELP1, disable VDELP0 and compensate this by
decreasing P0_Y.

But wait, the solution is getting very elegant and easy to remember!
Just assume that car 0 is on the same line with car 1, when it's
P0_YFullres is *one* below P1_YFullres.

So simply change your code example into:

    LDA P0_YFullres
    SEC
    SBC #1
    LSR
    STA P0_Y

That's all! :-)
    
I hope that helps.

Have fun!
Thomas                            
_______________________________________________________
Thomas Jentzsch         | *** Every bit is sacred ! ***
tjentzsch at web dot de |

----------------------------------------------------------------------------------------------
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/


Current Thread