Subject: problem with non-LBA fat16

From: George Hicken <[email-masked]>
Date: Fri, 5 Jun 2015 10:36:01 -0700

Requested output prior to partitioning

Error: /dev/sdb: unrecognised disk label
Error: /dev/sdb: unrecognised disk label
Error: /dev/sdb: unrecognised disk label
Model: VMware Virtual disk (scsi)
Disk /dev/sdb: 8590MB
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
Model: VMware Virtual disk (scsi)
Disk /dev/sdb: 16777216s
Sector size (logical/physical): 512B/512B
Partition Table: unknown
Disk Flags:
Model: VMware Virtual disk (scsi)
Disk /dev/sdb: 1044,85,0
Sector size (logical/physical): 512B/512B
BIOS cylinder,head,sector geometry: 1044,255,63.  Each cylinder is 8225kB.
Partition Table: unknown
Disk Flags:

Using the parted supplied with tinycorelinux 6.x (reports as 3.1) to create
an MBT, create a primary fat16 parition with non-lba addressing
   /usr/local/sbin/parted -a cylinder -s /dev/sdb --  mklabel msdos mkpart
primary fat16 1cyl 40MiB

This produces a partition of type 0xe, but otherwise it's what we want -
interestingly parted print command doesn't detail the parition type, it's
all blank. Using "set 1 lba off" then does something entirely unexpected.
Using fdisk to inspect the partition table the type has switched to 0x83.

I took a quick look at the code and 0x83 appears to be the default fstype
if none is set. Why this happens when setting lba off on a fat16 partition
I have no idea.

Thanks.

George