[syslinux] Possible memdisk issue

H. Peter Anvin hpa at zytor.com
Wed Jul 9 14:00:49 PDT 2014


On 07/09/2014 01:54 PM, Alexander Perlis wrote:
> 
> Ah, this might explain things although I don't know what is meant by
> "intended". First, to clarify, newmkfloppyimg calls mkdosfs 3.0.12, and
> grabs H/S from the output and then computes C. For all the sizes I've
> tried, newmkfloppyimg always tells me H=64 S=32 and then C is the
> approximately the number of MB. And MEMDISK auto-determines those exact
> same numbers. But if I manually call mkdosfs there's a lot more output,
> most of it ignored by newmkfloppyimg. In particular, the output for
> 8203K and 8204K is different:
> 
> mkdosfs -I -v -C test8203 8203
> mkdosfs 3.0.12 (29 Oct 2011)
> test8203 has 64 heads and 32 sectors per track,
> logical sector size is 512,
> using 0xf8 media descriptor, with 16406 sectors;
> file system has 2 12-bit FATs and 8 sectors per cluster.

FAT12...

> FAT size is 8 sectors, and provides 2043 clusters.
> There are 8 reserved sectors.
> 
> mkdosfs -I -v -C test8204 8204
> mkdosfs 3.0.12 (29 Oct 2011)
> test8204 has 64 heads and 32 sectors per track,
> logical sector size is 512,
> using 0xf8 media descriptor, with 16408 sectors;
> file system has 2 16-bit FATs and 4 sectors per cluster.

FAT16...

> FAT size is 16 sectors, and provides 4085 clusters.
> There are 4 reserved sectors.
> 
> In both cases, newmkfloppyimg says to use "C/H/S=8/64/32", and that's
> what MEMDISK is using. So I believe I'm "intending" those values. Or are
> they not correct?
> 

So this would seem consistent that this is the FAT12/FAT16 boundary that
breaks stuff.  Perhaps FreeDOS has a problem with FAT16 on floppies?

You can experiment with this by explicitly specifying -F 12 to mkdosfs,
which forces it to stick to a 12-bit FAT.

	-hpa




More information about the Syslinux mailing list