[syslinux] Trouble with Superfloppy format

Gene Cumm gene.cumm at gmail.com
Wed Nov 17 09:02:11 PST 2010


On Wed, Nov 17, 2010 at 09:36, Sven Geggus <lists at fuchsschwanzdomain.de> wrote:
> Gene Cumm <gene.cumm at gmail.com> wrote:
>
>> Could you be more specific by "Superfloppy format"?  Preferably,
>> include the CHS geometry of the disc and its total capacity
>> (especially if there's a trailing partial cylinder).
>
> I am testing with an ordinary USB flash drive without any Partitions:
>
> Disk /dev/sdb: 32.5 GB, 32480690176 bytes
> 64 heads, 32 sectors/track, 30976 cylinders
> Units = cylinders of 2048 * 512 = 1048576 bytes
> Sector size (logical/physical): 512 bytes / 512 bytes
> I/O size (minimum/optimal): 512 bytes / 512 bytes
> Disk identifier: 0xbb0eb409

I doubt that it'll ever work reliably as a "Superfloppy" if it doesn't
fit inside what appears to be the old limits on a floppy (256,255,63).
 Reading Robert Brown's interrupt list, the high two bits of the
cylinder are only used with hard drives and the head number may also
be limited to 16.  As a result, you might be limited to as low as
256,16,63 (132,120,576 bytes) as a "Superfloppy" but probably at best
1024,255,63 or 1024,64,32.

Another idea is to change from H/S 64/32 to 255/63 then redo the
partitioning (3948+ Cylinders; best to use whole cylinders for
partitions for compatibility).  Total capacity is 121 * 2 ^ 28.  Based
on the total capacity, H/S 64/32 is the best way to maximize usable
capacity.



On Wed, Nov 17, 2010 at 10:18, Sven Geggus <lists at fuchsschwanzdomain.de> wrote:
> Shao Miller <Shao.Miller at yrdsb.edu.on.ca> wrote:
>
>> My guess would be that your BIOS drives your USB storage device as an
>> HDD, rather than as a superfloppy.
>
> The one which does not work. Sounds reasonable as it works fine on another
> Machine.

It's so big it really should be treated as a HDD.

>> Perhaps your BIOS has an option to choose the emulation type.
>
> Well I can choose USB HDD or USB FDD, neither one works.
>
>> What filesystem is on your USB storage device and how did you put that
>> filesystem on it?
>
> (V)FAT using mkdosfs.

So you tried to create a partition that's the size of the UFD (USB
Flash Drive) then use mkdosfs on /dev/sda1 (assuming the drive shows
up as /dev/sda) then put an MBR in and used syslinux on /dev/sda1 and
this setup worked in one machine but not another so you tried mkdosfs
on /dev/sda and syslinux on /dev/sda also?

In addition to change the H/S geometry, you could also try to limit
the number of cylinders in the partition to 1024 (or even 256).  I
realize this wastes a lot of space but something in your
geometry/limits probably should probably be changed for compatibility
with that machine.  An additional idea is to create a small boot
partition (limiting cylinder count and/or other geometry) then a
secondary data partition.

Also, could we get more information on the problematic machine (Brand,
model, BIOS revision, is the BIOS revision current)?  Maybe someone on
the list else has a similar machine.

-- 
-Gene




More information about the Syslinux mailing list