Tommi2water (talk | contribs) |
Tommi2water (talk | contribs) |
||
Line 105: | Line 105: | ||
|-valign="top" |
|-valign="top" |
||
|align="right"|'''ELPH''': |
|align="right"|'''ELPH''': |
||
− | |[[ELPH300|{{color|magenta|ELPH300 HS (IXUS 220 HS)}}]] {{Delimiter}} [[ELPH500|{{color|magenta|ELPH500 HS (IXUS 310 HS)}}]] {{Delimiter}} [[ELPH100|{{color|magenta|ELPH100 HS (IXUS 115 HS)}}]] |
+ | |[[ELPH300|{{color|magenta|ELPH300 HS (IXUS 220 HS)}}]] {{Delimiter}} [[ELPH500|{{color|magenta|ELPH500 HS (IXUS 310 HS)}}]] {{Delimiter}} [[ELPH100|{{color|magenta|ELPH100 HS (IXUS 115 HS)}}]] {{Delimiter}} [[ELPH310|{{color|blue|ELPH310 HS (IXUS 230 HS)}}]] |
|-valign="top" |
|-valign="top" |
||
|colspan="2"|<br /><u>'''DIGIC V - (??? OS)'''</u> |
|colspan="2"|<br /><u>'''DIGIC V - (??? OS)'''</u> |
Revision as of 18:05, 1 December 2011
The table below is color coded to show the status of development work on porting CHDK to different cameras. If there is some work being done to port to a particular camera, there should also be a link to a camera-specific development page.
The page also has links to articles which could be useful if you want to participate in the development process.
Cameras overview
- Legend
-
- Black - neither original firmware nor firmware dump is available
- Red - Camera has responded to something on the card, but a firmware dump has not succeeded, current udumper code does not work on these cameras.
- Blue - either original firmware or firmware dump is available; porting is needed
- Magenta - A developer has started the porting process for this camera AND an alpha or early beta build with a limited feature set is available for testing
- Green - A port has been completed on one or more firmware versions for this camera, the sources are in the trunk and the binaries are available from the Autobuild server.
- Cyan - There is no active development of CHDK for this Camera, but there is an active development and a working version of Magic Lantern, which is a widely accepted CHDK replacement for these cameras.
Note: the porting process entails:
- get the camera to somehow respond to something on the card. (cameras in Red)
- using the process that got you step 1, and some electronics, read out a copy of the existing firmware (e.g., dump the firmware). (cameras in Blue)
- analyze the firmware, find out where key routines are.
- modify the source code to add the locations of these key routines
- compile the software and CHDK runs on the camera in some limited state (cameras in Magenta)
- After all minor bugs are fixed the build can be added to the trunk (cameras in Green)
Common articles
Several CHDK development related files, tools and utilities are also available from here: mirror DL location |
- Bug tracking and feature requests with Mantis
- How to use Mantis to report bugs/issues found in CHDK, request features, submit contributions.
- Modifying the Source Code
- Basic information about project structure.
- Documentation of the Sourcecode
- Yes, some documentation is also required.
- Compiling the CHDK under GNU/Linux
- Compiling the CHDK under Mac OS X
- Compiling the CHDK under Windows
- How to tune build environment and compile CHDK.
- Porting the CHDK
- Various methods of getting of firmware dump.
- DryOS Porting
- Information about the new OS.
- Adding support for a new camera
- How to add support for a new camera model.
- Adding support of a new firmware version
- How to add support for a new canon firmware revision of an already supported model.
- CHDK-PT : A tool for porting CHDK to different firmware versions of the same camera
- Alternate software tool for porting between different firmware versions of the same camera.
- Loading dump to IDA
- Using IDA for a dump analysis.
- IDA Visual Analysis
- Visual graph analysis tools.
- Signature finder
- Finding signatures automatically with the "Signature finder" (finsig/gensig) tool
- GPL Tools
- Documentation for using GNU/GPL tools for binary blobs analysis
- CHDK Coding Guidelines
- Cautions and best practices for CHDK code.
- Optimizing ARM sourcecode
- How to make your CHDK code run more efficiently.
- Camera RAM memory usage
- How to optimize RAM usage, also some statistics...
- Debugging
- Tools and techniques for debugging CHDK code
- Adding Firmware Features
- A guide for finding and adding stuff from the firmware to CHDK and uBASIC.
- PTP Extension
- Article about the (experimental) CHDK PTP extension
- ExMem - enabling and loading CHDK into extended memory.
- Article about using ExMem extended memory to load CHDK and increase free memory.
- Camera Functionality Documentation
- Reference for functionality found in camera (and used by CHDK).
Some technical info
- List of PropertyCases
- List with description of special registers which indicate and control DIGIC processor.
- List of Params
- List with description of special registers which indicate and control DIGIC processor.
- Camera IDs
- List of camera product IDs
- Event Procedure
- List of camera Event Procedure
- Developer Technical Documents
- Useful external documents relating to processor, OS and relevant standards.