Aiptek MPVR, Zoran-based Camcorder (firmware update)
I've recently happened upon a firmware update for a Zoran based cam that's very similar to our Saturn, the Aiptek MPVR (aka the 6800 or DV6800). The striking similarity of the firmware to our cam's firmware is why I've posted this in the Saturn area.
The firmware update can be found at driver guide. (FWIW, driverguide uses the same username and password for each user that signs up, u:driver and p:all)
Interestingly, it has what I believe is a firmware update program near the beginning (complete with ELF header), followed by a flash disk image which includes the real firmware.
If anybody wants to replicate what I've done or explore further, here are the hex offsets for the good stuff...
firmware.o start=0x80640 end=0x27903f
filesystem.img start=0x279040 end=0x9b003f
...or if you want to automate things and have a Unix prompt handy...
# extracts firmware from firmware update.
dd if=V38main1707_Upgrade.elf of=firmware.o bs=64 skip=8217 count=32296
# extracts filesystem.img. Should be usable by
# Winimage and loopback mount.
dd if=V38main1707_Upgrade.elf of=filesystem.img bs=64 skip=40513
# patches together a standard disk image with partition
# table, firmware and partitions. Winimage can read this.
dd if=V38main1707_Upgrade.elf of=disk.img bs=64 skip=8209 count=8
dd if=/dev/zero count=2 >> disk.img #No /dev/zero? get a real Unix.
dd if=V38main1707_Upgrade.elf bs=64 skip=8217 >> disk.img
Here's the disk image information... (You can compare this to the 3.40 disk information by referring to forumer.com/viewtopic.php?p=12531>my previous post on the topic.)
Aiptek MPVR 6800 - Firmware Disk Image Information
MBR found at offset 0
Executable Code: not present
Partition 1 Unused
Partition 2 Information (order on media:1)
Boot Flag: 0
Starting Head: 0
Starting Sector: 0
Starting Cylinder: 0
Type: 0x04 (DOS 3.0 FAT16)
Ending Head: 0
Ending Sector: 0
Ending Cylinder: 0
Relative Sectors: 4040
Number of Sectors: 18000 (9 MB)
FAT Boot Record Found:
Jump Instruction: e9 00 00
OEM ID: Zoran
Bytes Per Sector: 512
Sectors Per Cluster: 2
Reserved Sectors: 1
FATs: 1
Root Entries: 128
Small Sectors: 18000
Media: 248
FAT Size: 36
Track Size: 2
Heads: 9
Hidden Sectors: 4040
Large Sectors: 0
Drive Number: 128
Current Head: 0
Signature: 41
ID: 1
Volume Label: ResourcesA
System ID: FAT16
Partition 3 Information (order on media:2)
Boot Flag: 0
Starting Head: 0
Starting Sector: 0
Starting Cylinder: 0
Type: 0x04 (DOS 3.0 FAT16)
Ending Head: 0
Ending Sector: 0
Ending Cylinder: 0
Relative Sectors: 22040
Number of Sectors: 256 (128KB)
Partition 4 Information (order on media:3)
Boot Flag: 0
Starting Head: 0
Starting Sector: 0
Starting Cylinder: 0
Type: 0x04 (DOS 3.0 FAT16)
Ending Head: 0
Ending Sector: 0
Ending Cylinder: 0
Relative Sectors: 22296
Number of Sectors: 256 (128KB)
ResourcesA is quite interesting. It has jpegs, a zbm, some wave files, different font.bin files, ... I'll leave exploration and reporting of that and the firmware to anyone else that is interested. (I'm on to other non-MPVR stuff at the moment.)
Nice find! I'll take a stab at it when I free up some time next week.
I think a full elf rather than an updgrade elf might be better to compare with Saturn elfs. For the Aiptek 5700 (version 23.03):
http://www.bestsharing.com/f/ms001133511
Found through Steves:
http://www.stevesforums.com/forums/view_topic.php?id=105339&forum_id=92
What is the difference between an upgrade.elf and a full.elf - It may be as simple as the upgrade contains an upgrade program at the beginning as BillW suggests. Pure speculation - but upgrade capability may have been removed from later releases.
Anyone wanting to contribute should investigate these ELFs and attempt some disassemblies to compare with morcheeba's Saturn MIPS firmware disassembly.
I suggest downloading now since there is a note in the forum that the links are expiring.
The links keep on disappearing.
The one for MPVR 3501 is currently working:
http://www.stevesforums.com/forums/view_topic.php?id=104867&forum_id=92
A download of a Pure Digital EZ201 firmware is available here:
http://www.mysmallwonder.com/support/downloads.aspx
And as CamCam discovered after extracting files (I used uniextract15) there is a zburnT_C8.run.elf file. It is very similar to the Aiptek elf files. Oddly as BillW pointed out there are only 3 partitions defined - My guess is that the no_name extended partition is defined during the upgrade process.