Linked by Thom Holwerda on Sun 17th Jul 2011 12:01 UTC
Hardware, Embedded Systems "Back in the 80s, the Commodore C-64 had an intelligent floppy drive, the 1541, i.e. an external unit that had its own CPU and everything. The C-64 would send commands to the drive which in turn would then execute them on its own, reading files, and such, then send the data to the C-64, all over a propriatory serial cable. The manual for the 1541 mentioned, besides the commands for reading and writing files, that one would read and write to its internal memory space. Even more exciting was that one could download 6502 code into the drive's memory and have it executed there. This got me hooked and I wanted to play with that - execute code on the drive. Of course, there was no documention on what code could be executed there, and which functions it could use." Very interesting. I'm most interested in how he describes others taking his work, and making it better. This would be impossible today, thanks to Microsoft, Apple, and other patent trolls.
Permalink for comment 481321
To read all comments associated with this story, please click here.
RE[2]: Slow?
by Zbigniew on Sun 17th Jul 2011 16:38 UTC in reply to "RE: Slow?"
Member since:

The bus was super slow. Part of the reason is that the chip in use was found to have an issue, so they had to do the protocol entirely in software.

Well said: "part" - since, as various "fastloaders" proved, even the relatively simple software-based solution could from the very beginning make the transferrate about 4-5 times faster (and not necessarily with a need to switch screen off during loading).

FCopy and similar fast loaders improved over that last minute hack job by using improved timing and algorithms.

...and by parallel cable connected via User-Port.

The 1571 in "burst" mode finally implemented everything the way it was originally intended - and was reasonably fast.

Yes, but one should add here, that faulty VIA 6522 has been replaced by CIA 6526.
Really a pity, that the problem couldn't be fixed by hardware change that several years earlier... but example of "JiffyDOS" shows, that improvement of data transfer routines in both C-1541 and C-64's kernels resulted in about 20x faster transfers, even while still using that faulty VIA 6522. It's a pity, that Commodore engineers were in hurry "back in the day", and were under pressure to "make it work at all", never mind its speed.

Reply Parent Score: 3