Re: [stella] Dumb newbee question

Subject: Re: [stella] Dumb newbee question
From: Mark De Smet <de-smet@xxxxxxxxxxxxxxx>
Date: Wed, 20 Mar 2002 20:59:01 -0600 (CST)
> Personally I find it rather odd the read/modify/write of VSYNCH and WSYNC)
> I'd just set or clear the bit with a direct write, myself.
> It's never actually occurred to me during my programming, but are the
> hardware registers (VSYNCH, WSYNCH, etc. reliably readable)?  I would have
> expected to have used shadow registers in RAM and always write the shadow
> values to the HW regs when modifying regs.

You cannot read the vsync or vblank registers.  If you attempt to read
them you will actually be reading the collision registers.  When they
designed the TIA, they save a bunch more chip space by not making any of
the registers R/W.  The only way you can do this on the vcs is to use a
space in ram for reading, and simply write to it whenever you also write
to the tia register.

Check the memory map in the tia programmers guide to see the read and
write addresses.(you will note that the addresses overlap)

BTW, in case anyone else missed this, these are the problem lines:

> >       VSYNC &= ~0x02;

> >       VBLANK &= ~0x02;

Thus, Adam, this will not work.  You will have to re-code them, possibly
like Andrew suggests.


Archives (includes files) at
Unsub & more at

Current Thread