There is a bug somewhere in libi386/biosdisk.c which I'm trying to pin down. The problem is the loader is mis- identifying the extended partitions in the DOS partition table: