Page 1 of 1

VIC-20 Based 6502C/6522C Test Bed

Posted: Sat Jun 13, 2020 7:03 pm
by energysteven
I picked up a couple VIC-20 "cores" that mean they are the main board with all the socketed ICs removed.
That includes the 6502 and 6522 chips.
I ordered from Mouser the 65C02N and the 6522N replacement ICs and have been told in my newbie post that they are issues with the 65C02S.
Also it appears the pin-compatibility isn't 100%, and the VIC-20 basic crashes.
That's okay because my purpose isn't to bring up a VIC-20 but to "play around" with some ideas with emulating the 6502 devices using an Arduino Mega.
There is an existing project, a Fluke 9010A replacement project, that uses the Mega - see Paul Swan github and posts:
http://www.zzzaccaria.com/arcade/ArduinoMegaICT.htm
https://github.com/prswan/arduino-mega-ict
Attached is a photo of his Mega In-Circuit Tester Shield connected to ribbon cables.
And also posted is a 3D image of the interface card that was designed to plug into the VIC-20 Expansion Port.
I am going to provide an external clock source based on the "Ben Eater" 555-timer based clock he uses with his 65C02 project.
That will have to jumpered on the VIC-20 main board.
Another jumper will have to go from Kernal ROM chip select pin on a 74138 on the main board.
I moved to the hardware thread to provide updates and gather any feedback.

Re: VIC-20 Based 6502C/6522C Test Bed

Posted: Sat Jun 13, 2020 7:46 pm
by GARTHWILSON
Quote:
I ordered from Mouser the 65C02N and the 6522N replacement ICs and have been told in my newbie post that they are issues with the 65C02S.

Not "issues" in the sense of bugs or design problems, but there are differences you should be aware of for the VIC-20 application, things that are slightly different from the NMOS 6502, including:

  • especially that pin 1 is not ground but rather a vector-pull output,
  • that when the 65c02 corrected the bug of invalid flags after decimal operations, it added a cycle, which may affect timings in games that rely on exact cycle counts (although I doubt that games used the decimal mode much), and
  • that the "illegal" op codes' functions will be different from those in the NMOS, which may affect legacy software if it used these.


These are off the top of my head, where there's no much left. :lol: There may be others; but again, there are no actual bugs with the 65c02.

As for the '22, the S version has a totem-pole IRQ\ output rather than open-drain. This became more necessary for the higher clock rates. Open-drain is fine for lower clock rates (although I was bit by it once in the late 1980's even at 170kHz because I made the IRQ\ pull-up resistor too high, trying to save power. The entire computer, including the LCD, only took 2mA.)