Fandom

CHDK Wiki

40D

598pages on
this wiki
Add New Page
Talk4 Share

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.

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

Quick factsEdit

  • 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 functionalityEdit

  • 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

DevelopmentEdit

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


This page needs cleaning up and additional information :)

Firmare updatesEdit

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)

Also on Fandom

Random Wiki