So, here's a puzzler for you guys that maybe someone can shed some light on. I've got a game on a 5.25 floppy that I was trying to copy out to disk because the floppy seems to be on its last legs. It's a self-booting floppy, so there's no FAT boot sector to read info out of. In a case like this, how would you tell what the size of the floppy (cylinders, heads, sectors) is if you don't know it? Is it possible? What I ended up doing was just trying guesses from largest to smallest, until I hit on the right combination. But if I wanted to do this 100% programmatically, is there a way? There seems to be a BIOS call for reading drive info, but it only returns the floppy drive's max capabilities, not info on the actual disk in it.
The size of the disk is 5.25 inches ;-) The STORAGE CAPACITY of the disk is usually marked on the packet. There weren't that many. DD were 360kb, QD were 720kb, HD were 1.2Mb. Apple had the Disk II, which actually had a couple of variants. They were something like 120kb and 140kb IIRC. Oh and there was a high capacity disk too, I forget the size. Have I left any off? If you're talking about tracks, DD have 40 and QD have 80, can't remember the rest. If you want to know how many sectors per track or sector size, that can vary. Of course it has a FAT. That's where the BPB is, and for an IBM-PC at least you'll get the following media descriptors: You're probably talking FAT12 or FAT16.
"Look, buddy, I just need to know how to use a ruler" :lol: Nope, not necessarily for a boot disk, if they didn't feel the need to store their data in a filesystem. Apparently these guys didn't, they wrote their own boot loader and everything. As it so happens, I could have saved myself a bit of guessing by just reading a hex dump of the first sector, which proudly proclaims in ASCII that it's the DSDD version of the bootloader. But I'm still curious if there's a way to figure it out purely via software in the absence of a filesystem. Perhaps not? EDIT: oh, also there's apparently one more trick. 360KB 5.25" floppies have a reinforced ring around the hole in the middle, and other kinds don't. So that's one way to tell by looking at it.
I got a batch of 3.5" floppies myself the other day, not a damn one would read in my modernish floppy drive. Finally figured out that they're not standard HD disks but DS,DD to the tune of 720kb. Windows 7 wasn't terribly helpful in figuring that out though... What have you done in terms of dumping the disk? I've not had much issue using an older x86 based machine with some flavor of linux in doing a raw dump so long as the drive can read the disk. In your case it sounds like the game still runs on a drive you own.
Really? I thought 3.5's were backward compatible. Unless they're that insane Macintosh format, which I assume not. Yeah, I've got an old DOS machine with a drive that can read the disk, so I wrote up a program in ASM to dump the sectors out to a file. (and then another one to write it back out to a new disk) That's what prompted the question in the first place: figuring out how to set the max. cylinders, heads, and sectors for the program. I ended up hardcoding it.