I've been "surfing" in the hexcode of the Zi8_106.fw and also opened the case of my Zi8. What I'm pretty sure of at this point is:
The Kodak Zi8 uses:
- PrKernel (perhaps a hint: http://bit.ly/9zKcPi)
- an Ambarella chip (& codec/software -> Ambarella AVC/AAC encoder)
- a (probably 128MB) NAND flash
(- ACD Systems Digital Imaging software)
perhaps there is also an ARM CPU @ 200Mhz used (ARMv5TEJ) but I'm not so sure about it..
Moreover I found hints to some files probably included in the firmware; there were some *.jpg (kodak0.jpg - kodak9.jpg), some *.pcm (poweron_12k.pcm, videostart_12k.pcm, videostop_12k.pcm, shutter_12k.pcm, poweroff_12k.pcm) and many *.bin files (fonts.bin, bitmaps.bin, etc. ). So the firmware is compressed in some way for sure!
I also found the segment where the firmware update seems to happen:
Download 1 firmware programming file..firmware prowngram is loadedeDownload 2 kernel files...wnPrkernel is loadedcode is4 loadedmemdle is loadedaddefault_bin is loaded
(All the stuff I mention here can be text searched in the firmware with a hexeditor by everyone, of course! No magic ;))
Finally, here are the photos of the opened Zi8; I'm afraid they won't be of too much use since I couldn't manage to get shots of the actual chips :/
All the best,