(→Memory maps: Added gui events) |
(→Technical Details: CPU details) |
||
Line 6: | Line 6: | ||
*21.1 megapixel CMOS sensor |
*21.1 megapixel CMOS sensor |
||
*36x24 mm sensor size |
*36x24 mm sensor size |
||
+ | * CPU ID 0x41059461: "A", variant 0, arch 5, part 946 rev 1 |
||
+ | * Cache type 0x0f112112: unified cache, isize/dsize 32 byte cache lines, 4 way associative, 8 KB total |
||
+ | * Cache setup 0x0005107d: |
||
+ | ** MMU enabled |
||
+ | ** Alignment fault disables |
||
+ | ** Cache enabled |
||
+ | ** Big-endian operation |
||
+ | ** System protection = 0 |
||
+ | ** ROM protection = 0 |
||
+ | ** I-cache enabled |
||
+ | ** Exception vectors at 0x00000000 |
||
+ | ** Random cache replacement |
||
+ | ** L4 bit unset |
||
== Firmware progress == |
== Firmware progress == |
Revision as of 04:28, 1 May 2009
The 5D Mark II is NOT ported yet, there's NO CHDK available for this camera. |
Technical Details
- Wikipedia page
- Digic IV image processor
- DryOS operating system
- 21.1 megapixel CMOS sensor
- 36x24 mm sensor size
- CPU ID 0x41059461: "A", variant 0, arch 5, part 946 rev 1
- Cache type 0x0f112112: unified cache, isize/dsize 32 byte cache lines, 4 way associative, 8 KB total
- Cache setup 0x0005107d:
- MMU enabled
- Alignment fault disables
- Cache enabled
- Big-endian operation
- System protection = 0
- ROM protection = 0
- I-cache enabled
- Exception vectors at 0x00000000
- Random cache replacement
- L4 bit unset
Firmware progress
- Firmware image has been decrypted with dissect_fw3.2 forum discussion
- ROM has been dumped: forum discussion
- Many DryOS functions have been mapped
Memory maps
- 0xFF80_0000 - 0xFFFF_FFFF: RAM image of DryOS and code (copied from ROM0 at boot)
- 0xF800_0000 - 0xF880_0000: ROM0 image of DryOS
- 0xF000_0000 - 0xF080_0000: ROM1 image (strings and other stuff?)
- 0x0080_0000: Flasher code load address
- 0x0000_0000: Reset vectors?
- 0x0000_0480: Reset routine? Copied from 0xFF812B30 to 0x480 at startup
- 0x0027_F000: Interrupt handler stack
- 0x0002_0740: Interrupt handler context buffer
- 0x0000_0664: Some sort pointer to a kernel structure
- 0xC000_0000: Memory mapped device?
- 0x0000_1900, 0x1928: Last panic code?
- 0x0000_2DC8: A kernel structure copied from the stack
- Startup at 0xFF81_0000, jumps to 0xFF81_000C
- Data segment or config? 0x1900 - 0x20740
- BSS? 0x20740 - 0x47750
GUI Events
- Firmware Update dialog events:
- 0x6 == IDC_DBN_OK
- 0x7 == IDC_DBN_CANCEL
- ? == PRESS_MENU
- 0x805 == DELETE_DIALOG_REQUEST
- 0x820 == SUB_DIAL (spin left)
- ? == SUB_DIAL (spin right)
- 0x829 == return 1 (unknown)
- 0x82F == return 1 (unknown)