The Vic-20 used two 6522 VIA chips for I/O. I asked why it had two of them but thanks to a comment from Bruce Abbott, I now think that wasn't quite the question I needed to ask.

What I really need to ask is why it needed any at all? For example, the ZX Spectrum had no equivalent chips, and seemed to communicate with its keyboard and peripherals just fine without them. The Vic was supposed to minimize cost. The designers wouldn't have spent money on extra chips for no reason. They must have seen some advantage to be gained by including those chips.

What advantage did the Vic gain from the VIAs, relative to machines like the Spectrum that lacked them?

  • 1
    ZX Spectrum (at least 48K) had like 1 port to read/write, sure it could go away with no dedicated IC.
    – Vlad
    Dec 18 '20 at 9:51
  • 4
    The ZX Spectrum used a 'ULA' for at lest part of the keyboard handling.
    – UncleBod
    Dec 18 '20 at 11:05
  • 2
    The 6522 seems to be an upgraded 6520 specific to Commodore, but there was an entire line of general purpose peripheral interface ICs, like the 6520 PIA (Peripheral Interface Adapter), the 68xx equivalent 6821 PIA and the 6532 RIOT (RAM / IO / Timer) that could interface with the 65xx or 68xx line of microprocessors. They were used in all kinds of systems based on these processors.
    – StarCat
    Dec 18 '20 at 11:22
  • 2
    @StarCat BBC Micro also had a couple of 6522 chips.
    – richardb
    Dec 18 '20 at 12:44
  • 1
    ZX Spectrum actually had 32768 ports, as it only decoded single address bit during IO accesses :) And yes, it had clever keyboard scan technique, setting rows to scan on higher address bits of the IO port and reading columns state in the very same IO read operation.
    – lvd
    Dec 18 '20 at 16:38

Commodore owned MOS technologies, who made the VIA chips. Although the VIC-20 might have been able to replace a VIA chip with a 4051, a 74LS139, a couple of 74LS373s, and eight resistors, I don't know that doing so would have really saved anything compared to the in-house cost of the VIA. Further, using a second VIA made it possible for them to have one timer tick feed the IRQ while the other fed NMI. Not essential, but nice nonetheless.

  • 2
    I'll also point out that the 6522 was a fairly inexpensive option during the period that the VIC-20 was manufactured.
    – jwh20
    Dec 18 '20 at 10:25
  • 5
    "a 4051, a 74LS139, a couple of 74LS373s, and eight resistors" - Integrated circuits are more than just speed - the fewer separate components, the faster/easier/ cheaper it is to assemble a device, particularly a mass-market consumer device. Dec 18 '20 at 15:10
  • 2
    @manassehkatz-Moving2Codidact: A company that has no affiliation with the maker of something like the VIA may not want to trust that it's going to continue to be available as long as they need, but if a design uses commonplace parts like the 74LS series, substitutes would likely be available from multiple sources.
    – supercat
    Dec 18 '20 at 15:53
  • 4
    adding to what @manassehkatz-Moving2Codidact wrote: board area costs money, too Dec 18 '20 at 15:53
  • @supercat If one has to trust the same company to continue the CPU, saving a VIA does not change the situation.
    – Raffzahn
    Dec 18 '20 at 17:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.