The processor in the 1541 was identical to the c64… 6502. (Or 6510C)<p>The serial link between them was notoriously slow. I studied them extensively as a teenager, and had reams of disassembly printed out in fanfold dot matrix, with my own scribbles. This is how I learned 80% of my computing skill set.<p>The signaling between the drive and computer used a clock line and a data line. When reading from the drive, the drive would set the data bit then invert the clock. The
CPU would be polling the clock line, and when it changed, it would read the data bit. There wasn’t any fancy hardware like DMA. It was basically two cpus connected to get her with a couple of I/O pins.<p>I can’t remember where I saw it, but there was an extremely fast driver going around, and sure enough I disassembled it to find out what they were doing.<p>Before each 256-byte sector was transferred there was a loop which synchronized the cpus in the drive and host computer, down the the clock cycle. Then they used both clock line and data line to blast all the data, two bits at a time down the lines. The cpus didn’t wait for any clock to change, they just read the data as fast as possible. Wrapped with a bit of error detection to top it off.. in the end it was about a 10x speedup with the same hardware…. Which at the time was totally mind blowing