Fitting 44% More Data on a C64/1541 Floppy Disk
pagetable.com
pagetable.com
I, too, still have my notch punch. :)
(Email in profile)
Meta: I was going to say something fun/snarky about the humor in a retro-computing page using Python 2.x code, but the page is from (2019) which I guess could be noted in the title. Very cool, it's interesting how the disk format itself is defined by software, and of course how Commodore cheapened out by replacing the mechanism manufacturer's (Shugart) controller with a design of their own.
Must have been fun (?) to work at Shugart and have a customer replace your controller with their own solution, saving money, and also getting better capacity out of the drive. That sounds like something that would be kind of annoying to explain to other customers. :)
I'm not sure it was wise, but "cheapened out" doesn't seem right either. The C64 disk drives have their own 1MHZ 6502 CPU inside them, so they have roughly the same amount of CPU as the C64 itself.
Also it's worth noting that the Commodore DOS talked about in the article was implemented and ran entirely on the drive, not the host computer. Commodore computers only understood a simple serial protocol and DOS commands like rename, delete or format disk were just sent as text commands on the serial command channel, which were interpreted and run by drive itself.
The computers had no concept of a filesystem at all: displaying the disk directory involved a hack where the drive would construct a fake BASIC program and stream it to the computer when a special filename "$" was loaded. That's why displaying the disk directory on a Commodore computer would clobber any BASIC program in RAM. A common blunder was to list the directory before saving and losing your work.
While the disk drives were smart, the tape drives were dumb. Tape drives came first and were designed along side the computer architecture starting with the PET. The disks were an add on later once disk drives caught on as the home computer medium of choice. The computers actually had a significant amount of precious ROM space dedicated to tape drive operation which was completely wasted in the later C64 timeline when most users were using disks exclusively. Some later ROM replacements like the excellent JiffyDOS system repurposed the tape code in their ROMs to provide a built in fast loader and DOS wedge (a whole other rabbit hole).
Apple did the same thing. The difference between the Disk II and the various Commodore drives is instructive of the two companies' engineering philosophies.
Also, they got more capacity, but did they also get at least the same speed and reliability?
1541 was horribly slow because the marketing people wanted it to be backwards compatible with VIC-20, and the serial protocol used by the VIC-20 was very slow because of a timing bug found at the last minute. It was possible to multiply the default speed by an order of magnitude or more using custom firmware, but stock software was almost slower than using a cassette tape.
Finding primary sources while on my phone is difficult, but there’s some discussion here that would probably point you to a primary source. (Bill Herd and other have spoken about it in panels at various VCF gatherings.)
> It also had something to do with a board screw hole. Iirc, the pcb already had a screwhole where the traces should be. Robert Russell was the engineer who designed those IEC traces and so when he found out about it, he was pretty much upset, but it was too late, they already modified thousands of boards.
https://en.wikipedia.org/wiki/IBM_Extended_Density_Format
https://en.wikipedia.org/wiki/2M_(DOS)
https://retrocomputing.stackexchange.com/questions/12768/wha...
I recall using an "extended" track to write hidden serial numbers to distribution disks. Not copy protection but phone support authentication.
http://toastytech.com/files/nformat.html
http://toastytech.com/files/nformat.txt
More info about XDF (by IBM):
Those sorts of utils kinda worked on usually if you were on your own computer. But if you really pushed them and the tried to go over to a friends house with one good luck...
Another twist with that. Writing with in 720 mode from a normal PC drive worked most reliably if the diskette first was formatted in the 720 PC.
It resulted in, after a couple of days, a lot of lost data. Luckily just games.