Hacker News new | ask | show | jobs
by rasz 2168 days ago
>6522 VIA shift register

>Unfortunately, I was unable to get it to work.

Author blamed this on:

>I did not work out how to get the shift clock running continuously and smoothly. Even with attempts at precise timing for shift register reloading... reloading the shift register incurs a delay before shifting resumes.

This was in fact a hardware bug http://forum.6502.org/viewtopic.php?t=342#p2310 , rather famously the reason for C64 having cripplingly slow (300 byte/s !!) Floppy drive communication implemented thru bitbanging in software despite using fixed 6526 CIA. Previous VIC-20 used 6522 and floppy drives had to stay compatible https://en.wikipedia.org/wiki/Fast_loader

Dropping this compatibility and using 6526 CIA hardware shift register results in C128+1571 combo reaching ~5KB/s

1 comments

That's an interesting story of the 6522 VIA for sure :) I don't think it is what I was hitting though, for a few reasons:

1) "The 6522 has a bug in mode 011, shifting synchronous serial data in under control of external CB1 clock" -- this is not the mode I tried.

2) The bug appears to be intermittent data loss. What I had trouble with seemed deterministic, the chip is just too slow to respond.

3) I wonder if this hardware bug was ever fixed? The BBC Micro doesn't use the MOS 6522 VIA. It tends to use Synertek or Rockwell. It's unclear if those companies were just using the buggy MOS mask under licence, or something else.