[syslinux] memdisk: regression: 2.11 -> 2.12 (up to 3.07)

Giulio Orsero
2005-02-21T15:39:01Z

- mkdiskimage -d image.dsk 2 64 32
- load it in dosemu and make it bootable with sys
- isolinux:
label 999
        kernel memdisk
        append initrd=image.dsk harddisk c=2 h=63 s=32

results:
memdisk 2.11 -> boots
memdisk > 2.11 (up to 3.07) -> hangs

The following message is printed in the boot messages > 2.11:
MEMDISK: image has a fractional end sector

The complete error message is something like (this is from a 10MB image):

Ramdisk at 0x005df000, length 0x00a00080
command line: initrd=image.dsk harddisk c=10 h=64 s=32 BOOT_IMAGE=memdisk
MEMDISK: image has a fractional end sector
Disk is hard disk, 10240 K, C/H/S = 10/63/32
Total size needed = 1897 bytes, allocating 2K
Old dos memory at 0x9f800 (map says 0x9f800), loading at 0x9f000
1588: 0x137c 15E801: 0x137c 0x0000
INT 13 08: Success, count = 2, BPT = 0000:0000
old: int13 = eb8b3dc9   int15 =  f0005d34
new: int13 = 9f000008   int15 =  9f000286
Loading boot sector... booting...
<hangs here>

I verified the problem on a real PC.
I made binary search in vmware 3.0x to see that the problem started between
2.11 and 2.12

--
giulioo at pobox.com