Monday, 1 July 2019

Internal floppy drive now working on the R2 PCB, and various other bits and pieces

Oh my, it is already 11pm! So this will just be a short summary of what we have achieved today.

Most of the progress was getting the internal floppy drive working.  We had some more forgotten pull-up resistors that had to be added to the boards, and then to the schematic for the future R3 PCB.  So now you can happily use the MEGA65 CONFIGURE program, which works a bit like an old PC BIOS, to select the real disk drive or disk image to be used on power-up ... and it works!

We wrote a 1581 disk using a PC transfer program, and we can read it happily.  One funny thing we found, was that the drive refuses to read 720K data from a 1.44MB disk, even if the disk has tape over the HD hole.  We have no idea why this is, but for now it just means using real 720KB media.

Anyway, with the disk image, we are able to get a directory and load programs from the drive quite happily.  It could be my imagination, but I think it loads faster than my original C65 did. If so, it is probably due to our floppy controller perhaps being a bit faster.  Not sure. Not that important.  I did time loading a 161 block file, and it took 19.5 seconds, so about 8 blocks / second = ~2KB / second.  That does sound faster to me than the original, which I recall in C64 mode (which is how I ran this test just now) loaded at ~1.3 - 1.5 KB / sec. It could also be luck of the sector order on the disk, too.

Apart from that, we also updated the boot rom to set the audio mixer levels more sensibly, so now the SID audio that was super quiet is now quite loud.  We also fixed the audio channel control settings there, so that you can choose mono (both SIDs on both left and right channels), stereo, and stereo with swapped channels. At some point we will also add these (and the "use real floppy drive" to the freeze menu, so that you can easily change them at run-time.


  1. "One funny thing we found, was that the drive refuses to read 720K data from a 1.44MB disk, even if the disk has tape over the HD hole." Commodore 1581 drive react the same way to 1.44 disks you can't use them.

  2. I believe the 720MB unreadable drive problem from the 1.44MB comes from the fact that the head on the 1.44MB is only half the size. 720KB disk drives can't read them where a 1.44MB can.

  3. Ok, this is reassuring to know we haven't stuffed something up. The odd thing, is that we are using 1.44mb drives, though, so we *should* be able to read the 1.44mb media. It might be that the 1.44mb media has to be properly de-gaussed before being used, or something like that.

  4. Commodore 1581 drive used a GCR encoding base with a 800Kb format over the 720k disk (720K is standard MFM Double Density Drive, 1.44Mb is standard MFM High Density drive) the only 8bit Commodore drive with MFM capability is the 1571 5.25' who can read 8 or 9 sectors 340K/360K DOS disk. now Density difference doesn't count for a MFM format so 1.44Mb with tape over the HD hole will work as a 720Kb disk, but you cannot mess with density wich is verify much important to GCR encoding. wich is why tape over the HD hole of a 1.44Mb doesn't make it work as a 800K GCR disk in the orginal 1581. now if the mega 65 drive is made to Commodore GCR compatible, that's probably with it doesn't work either.