Subject: Re: [stella] Try this demo, please. From: Eckhard Stolberg <Eckhard_Stolberg@xxxxxxxxxxxxxxxxxxxxx> Date: Sat, 01 Apr 2000 14:01:43 +0200 |
At 08:22 31.03.2000 -0800, you wrote: >Thank you. I will have to think about what to do in >the case of writing 0 to RESPx, since that's what is >causing the problem with the delay table. The problem is not with what you write to RESPx, it's with when you write something to it. If you use a value of 0 in the DEY/BPL loop, the STA RESP0 will end at cycle 21. But the TIA will treat it as if it had finished at cycle 22. Therefore the sprite will be positioned three pixels further to the right than you think. To fix the problem you simply have to change the fine coarse values for all spots in your positioning table that have a value of 0 for the DEY/BPL loop. >How'd you figure that out? I've read about leaving >fine coarse positioning registers alone until 24 >cycles after an HMOVE, but never anything about >writing to GRPx within 24 cycles of a WSYNC. >Interesing. What I meant was that you have to change the graphics and colour registers before a sprite gets drawn, if you want these values to take effect in the same scanline in which you write them to the registers. You have a playfield border of four pixels, where the sprite can't be positioned. Therefore you have to update the colour and graphics registers before pixel five gets drawn. Pixel five will be drawn at 24 processor cycles after the WSYNC. Ciao, Eckhard Stolberg -- Archives (includes files) at http://www.biglist.com/lists/stella/archives/ Unsub & more at http://www.biglist.com/lists/stella/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Thread | [stella] Fw: Domain Names go to the, Clay Halliwell | |
Date | [stella] Fw: Domain Names go to the, Clay Halliwell | |
Month |