CHDK Wiki
(Undo revision 32794 by 1.55.92.241 (talk))
(11 intermediate revisions by 7 users not shown)
Line 2: Line 2:
   
 
==Quick facts==
 
==Quick facts==
*Firmware versions 1.0.5 and 1.0.8 and 1.1.1 available
+
*Firmware versions 1.0.5 and 1.0.8 and 1.1.1 available.
 
*Runs VxWorks
 
*Runs VxWorks
 
*[http://www.arm.com/products/CPUs/ARM946E-S.html ARM946E-S]
 
*[http://www.arm.com/products/CPUs/ARM946E-S.html ARM946E-S]
Line 15: Line 15:
 
==Possible extra functionality==
 
==Possible extra functionality==
 
*Movie mode
 
*Movie mode
  +
**
**Already somewhat working, see [http://stack.dataghost.com/40D.avi this movie]. If it's not clear enough, [http://www.youtube.com/watch?v=OlKywUVFJW4 this one] or [http://stack.dataghost.com/40D-movie2.avi this one] (both are the same) should convince you.
+
**ewhat working, see [http://stack.dataghost.com/40D.avi this movie]. If it's not clear enough, [http://www.youtube.com/watch?v=OlKywUVFJW4 this one] or [http://stack.dataghost.com/40D-movie2.avi this one] (both are the same) should convince you.
 
*Live view contrast AF
 
*Live view contrast AF
 
**Might already be present in the firmware but that's just a guess based on some strings.
 
**Might already be present in the firmware but that's just a guess based on some strings.

Revision as of 11:06, 7 June 2013

Currently, there is no version available for download, it is far from usable yet.

Quick facts

  • Firmware versions 1.0.5 and 1.0.8 and 1.1.1 available.
  • Runs VxWorks
  • ARM946E-S
  • 256MB memory
  • Uses AUTOEXEC.BIN instead of DISKBOOT.BIN
    • Needs to be enabled in NVRAM
    • Requires an EOS_DEVELOP disklabel and BOOTDISK 'signature'
    • Can boot from FAT32
    • File format unknown, possibly needs a header but unlikely (probably a plain binary)
    • Runs from 0x800000

Possible extra functionality

  • Movie mode
  • Live view contrast AF
    • Might already be present in the firmware but that's just a guess based on some strings.
  • AF microadjustment
    • Some strings present but functionality likely not implemented.
  • Total shot counter
  • Scripts
  • Motion detection

Development

Work in progress... General EOS 40D development discussion


This page needs cleaning up and additional information :)

Firmare updates

v1.1.1

fileLen = 0x7d06fc
---.fir header---
0x000: modelId = 0x80000190, (40D, VxWorks)
0x010: version = 1.1.1
0x020: checksum = 0xc1be4dd8
0x024: updater1 header = 0xb0
0x028: updater1 offset = 0x120
0x02c: updater2 offset = 0xffffffff
0x030: firmware offset = 0x19dc80
0x034: 0xffffffff
0x038: embedded file size = 0x7d06fc
0x03c: 0x0
0x040: sha1 seed = 0x9b1bf2fb
0x044: 0x00000004 0x00000000 0x00000020 0x00000024 0x00000044 0x000000b0 0x0019dbd0
0x060: 0x19dc80
0x064: firmware length = 0x632a7c
0x068: updater1 hmac-sha1 = 5edae41600de8549c060cc69ed85b38579abf5fe
0x088: firmware hmac-sha1 = 1ddd1f063c617b0109ec10914ce75c900bbf8461
---updater1 header---
0x0b0: updater1 length = 0x19db60. starts at 0x120
0x0b4: 0x19db60
0x0b8: 0x0
0x0bc: xor seed value = 0xee742c27
0x120: --- updater1 (ciphered) ---
---firmware header---
0x19dc80: (+0x000), offset to decryption data = 0xc
0x19dc84: (+0x004), offset to encrypted data = 0x7c. starts at 0x19dc80
0x19dc88: (+0x008), total firmware length (including header) = 0x632a7c. starts at 0x19dc80
0x19dc8c: (+0x00c), firmware length (encrypted part) = 0x632a00. starts at 0x19dcfc
---firmware (encrypted)---
0x19dcfc: (+0x07c)