Wiki > Main > SansaE200FirmwarePartition (compare)
Difference: SansaE200FirmwarePartition (r7 vs. r6)
SanDisk Sansa E200 Firmware Partition
The SanDisk Sansa e200 series has a 20MB hidden firmware partition. It holds both the bootloader and main firmware. This partition is hidden by e200r firmwares.
The partition is 20MB and is at the end of the disk. It doesn't have any partition table, but has files at specific address locations inside it. Each file has a 512B (1 sector) header which has a 4 character string describing its contents, followed by a 32-bit little endian number indicating the length of the file in bytes. There is then a 32 bit number with an unknown purpose.
Addresses are relative to the start of the partition. The partition is divided up into 3 block. The first block is 512KB for the bootloader. The last 5MB of the partition is for the ppfn (image?) data. The remaining space in between is used for the main firmware.
Sometimes it can be useful to dump the partition to a file, for example to experiment with the database rebuild byte at offset 0x7810e1.
$ ./sansapatcher.exe -l sansapatcher v0.5 with v3.0 bootloaders - (C) Dave Chapman 2006-2007 This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. [INFO] Scanning disk devices... [INFO] e200 found - disk device 2 [INFO] Reading partition table from \\.\PhysicalDrive2 [INFO] Sector size is 512 bytes [INFO] Part Start Sector End Sector Size (MB) Type [INFO] 0 580 7813119 3814.7 W95 FAT32 (0x0b) [INFO] 1 7813120 7854079 20.0 OS/2 hidden C: drive (0x84) [INFO] Image 1 - 60416 bytes [INFO] Image 2 - 5798912 bytes
$ dd if=/dev/sdc of=part1.bin skip=7813120 count=40960 40960+0 records in 40960+0 records out 20971520 bytes (21 MB) copied, 5.156 s, 4.1 MB/s
r7 - 22 Oct 2007 - 17:22:20 - BertrikSikkenRevision r7 - 22 Oct 2007 - 17:22 - BertrikSikken
Revision r6 - 21 Oct 2007 - 19:54 - JackSuter
Copyright © by the contributing authors.