Running Windows 7, 32 bit version of Vice 2.3. This is in regards to the NTSC mode of XVIC. See attached program which only runs properly in NTSC mode.
Now this "corrected" version attached works fine in Vice, but "fails" on a real NTSC Vic20. The correction was to alter the first number in line 490 from 169 to 219. If you change it back to 169, then the program works fine on the NTSC Vic20 computer, but suffers jitters in emulation. Presumably some sort of timing issue for the interrupt routine called by SYS828.
View and moderate all "bugs Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Bugs"
The Number Game
Original first data-value in line 490 was 185 - NOT 169. I checked this on a real NTSC-VIC. It works with the original value of 185 - and still works with 219 - but you have the raster-flicker right in the middle of the screen
The timing seems to be based on a "- lda $9004 / bne -" loop. The NTSC emulation has issues near the end of the frame as shown by [1]; the 0 in $9004 appears 33 cycles too early on xvic.
Since (as far as I know) the total amount of NTSC VIC-20 units owned by the VICE team members is 0, I wouldn't expect a fix in any reasonable timeframe. In case you (yes, you there with the NTSC VIC-20) want to help, submit documentation on how the line number is reported near the end of the frame in both the normal and interlaced cases, with accompanying testprogs for proof / verifying. While at it, write a patch fixing the issue. And take the role of the NTSC xvic maintainer.
[1] http://vice-emu.svn.sourceforge.net/viewvc/vice-emu/testprogs/VIC20/split-tests/lightpen/
should be fixed in r29805, please retest