Re: NTSC VIC-II timing

From: Gerrit Heitsch <>
Date: Wed, 21 Jun 2017 18:43:40 +0200
Message-ID: <>
On 06/21/2017 06:27 PM, Marko Mäkelä wrote:
> On Wed, Jun 21, 2017 at 04:40:03PM +0200, wrote:
>> According to the famous document by Chris Bauer, there are three 
>> timing variants of the VIC-II. While PAL is always 63 cycles per  
>> line, with NTSC there can be either 64 or 65 cycles per line and I am 
>> in fact able to reproduce the difference with -model ntsc and -model 
>> oldntsc in the current VICE.
> You should have the 6567R56A and 6567R8 that I gave you, right?
>> The question (before I spend weekend on trial'n error counting cycles 
>> and possibly reinventing the hammer ;-) is: do we have ane 
>> established, reliable software method for detecting which NTSC VIC-II 
>> is installed in the machine? I guess it must have been done multiple 
>> times by now and used in some NTSC games/demos..
> The simple way is to disable interrupts and write a loop that samples 
> $d012, counting the cycles that go between changes. I do not know if 
> exactly such implementation is available anywhere.

Before you do that, check if there are other software detectable 
differences between the 6567R56A (and older) and the 6567R7 (and newer). 
Those might be easier to detect.

I suggest this since it's possible by software if you have a 6569R1 or a 
later VIC and if later, if it's a 6569 or a 8565.

Here's what Segher wrote about it:

Excellent fun!  It sees if the light pen interrupt can be triggered
between raster lines x'136 and 2; if so, it's a 6569R1, if not, not.

The 8565 vs. 6569 test seems to be if sprite-background collision
is triggered for a sprite with ECM colour 2 (bits 10) (on 8565 it
is, on 6569 not).


       Message was sent through the cbm-hackers mailing list
Received on 2017-06-21 17:06:38

Archive generated by hypermail 2.2.0.