I was trying to optimize my current program. For speed reasons I purposefully kept a sprite X value shifted 8 bits to the left ( x 256) because then I could put in into the VRAM X position space quickly by shifting it to the right by ONE place. (instead of the usual 7 to the left)
However when I did this the sprite didn't display correctly. (in my case the sprite just disappeared although this may be because it was placed somewhere else on screen)
BUT I found if I then cleared bits 0-6 with "AND $FF80" it worked as expected
Is there a reason why the first 6 bits must be kept to 0? I was wondering if they might be a secret mirror of the Y reg first 7 bits?? (sticky bit and sprite size) or is this simply an older MAME issue? (I am still using an old version of MAME. I haven't had time to test this in a newer version yet)