if you look closely, you'll see that every other "black diagonal" is a
little bit bigger. I suspect you're not wanting this. When you add in
PF2ADR the C flag from the ROL on PF0ADR is rolled into the 7th bit of
PF2ADR, while the C from PF2ADR is rolled into the 7th bit of the next
PF0ADR value.

It might be easer to see the problem if you change your PF0ADR initial
value to #%10101010

On Apr 17, 2004, at 1:38 PM, Christian Bogey wrote:

Hi,
I wrote a little demo to try to make some effects
using playfield and I've got a bug in my program
but I can't find why it occurs :-(

Maybe one of the 6502 gurus here may help me ;-)

I'm using the ROL instruction to modify the patterns
of PF0 and PF2 (I'am using shadows number in ram) and
I noticed :

* Using the ROL instruction 1 time gives a good
result.
* Using it 2 times makes a total mess in the Playfield

display.
* Trying to compile with the first line only, gives a
good result (ROL PF0 Value).
* Trying to compile with the second line only, gives a

good result (ROL PF2 Value).
* Trying to compile both lines and it's a total mess !
* BTW I noticed the problem doesn't occur if I'm using

ROL for the 1st line and ROR with the 2nd (maybe a
hint to find the cause of the problem ?)

Does anybody can explain me where I'am wrong ???

I've join the source : the bug is located under the
line 103 labeled :