Is there anyway an SD card can be formatted as FAT32 but fool CHDK into believing it is formatted FAT16?
This could not be solved within the CHDK code.
CHDK is loaded with the Canon firmware update mechanism. When the camera powers on, the Canon fw checks whether there's a "BOOTDISK" flag in the cards MBR - if there's such a flag, the fw tries to load a file "diskboot.bin" from the cards root. This can be either an official Canon firmware update file (a "real" one wich updates the camera permanently) or the CHDK binary.
Until now, this mechanism in the Canon firmware unfortunately only works with FAT12 or FAT16 partitions - so we can't load & run our CHDK code without this "initial firmware file loader" in the Canon fw...
The multipartition solution normally works very well, there's only one problem: the idiotic MS Windows standard driver for removeable cards, the driver that let you see & handle only one partition on Windows OS