EDIT: The (actual) porting effort is happening over here. Consider any information below out of date. LCB--------------------------------------------------
Hello all,
I'm interested in porting to the A1000IS platform. From what I've seen so far, the porting itself can't be too terribly difficult. I've outlined the process that I apparently need to go through, along with my understanding of what needs to happen.
I've completed the following steps:
- Dump firmware (link at
A1000IS - CHDK Wiki)
- Create a platform subdirectory for a new camera model/fw version (you can just copy an existing one)
Question: I've copied from the SX100IS, as it works currently and has the closest P-ID. Is this the best folder to copy from? (see table at
P-ID (Table) - CHDK Wiki)
Question: Which of the files do I need to keep? Which of the files to I need to modify? Which should I get rid of and start over on?
Here is my current situation:
- Have firmware dump
- Have strings
- Have disassembled firmware
- Have setup to compile firmwares for other platforms
- Don't have IDA
The following is left:
- Find the adresses of the RAW-, video- and frame-buffers.
Question: Where do I look for this stuff? I may be able to figure this out by looking at the disassembly.
- Modify a couple of addresses and constants.
Question: Which ones?
- Check the keyboard "driver" (button constants and behaviour).
Question: I am assuming that this simply involves putting the firmware on the camera and checking that the buttons are capable of bringing up menus, etc or something.
- Run auto-find tools (Documentation:
Signature finder - CHDK Wiki)
Question: Exactly which functions are needed for CHDK to run correctly? Is there a list? Surely there's a way to list dependencies of CHDK on the firmware.
Question: The above referenced page instructs you to put "all firmware dumps of every camera" into the tree. Is it really necessary to find the 60+ different firmwares? I am aware of the firmware download page at
[DOWNLOAD LINKS] Firmware dumps available .
- Check the addresses of autofound functions. Manually correct/find the right addresses for some of them with a disassembler like IDA Pro.
Any tips that will help me complete the above would be great. I'm currently trying to make my way through a couple of other porting threads, including the S9 thread.
-----------------------------
Setup details:
Using a cygwin configuration on Windows XP. Have an A1000IS.