EDIT: The (actual) porting effort is happening over here. Consider any information below out of date. LCB
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.
Using a cygwin configuration on Windows XP. Have an A1000IS.