Porting A410 - help wanted - page 2 - General Discussion and Assistance - CHDK Forum

Porting A410 - help wanted

  • 67 Replies
  • 23605 Views
Re: Porting A410 - help wanted
« Reply #10 on: 04 / June / 2011, 20:20:50 »
Advertisements
If you have simple way for a410 1.00f please help me.
I think what reyalp was trying politely to tell you is that there is no simple way to port CHDK to a new camera.  It is a lot of hard work, even for somebody experienced with CHDK porting.  If you are doing it for the first time,  its even more work.  I think its fair to say that most of us  spent hundreds of hours creating our first ports for example and I suspect most of us had a lot of software experience with embedded systems before we even started.

Sorry if this is bad news.   :-[


Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline tired

  • *
  • 14
Re: Porting A410 - help wanted
« Reply #11 on: 05 / June / 2011, 07:14:57 »
If you have simple way for a410 1.00f please help me.
I think what reyalp was trying politely to tell you is that there is no simple way to port CHDK to a new camera.  It is a lot of hard work, even for somebody experienced with CHDK porting.  If you are doing it for the first time,  its even more work.  I think its fair to say that most of us  spent hundreds of hours creating our first ports for example and I suspect most of us had a lot of software experience with embedded systems before we even started.

Sorry if this is bad news.   :-[




Thank you for your clear answer.
but i have 2 question :
1- i know in first step need find camera firmware version,after need dump,then load dump in ida,...
The next steps are clear?
2-i found topics in forum for request of developers for make chdk with prepared source code,if is correct,tell me which step or files needed(What is the source?!) after then developer can Finish it.

sorry for my Boring questions :(

Re: Porting A410 - help wanted
« Reply #12 on: 05 / June / 2011, 10:41:23 »
Thank you for your clear answer.
but i have 2 question :
1- i know in first step need find camera firmware version,after need dump,then load dump in ida,...
The next steps are clear?

http://chdk.wikia.com/wiki/Modifying_the_CHDK_Sources

Quote
2-i found topics in forum for request of developers for make chdk with prepared source code,if is correct,tell me which step or files needed(What is the source?!) after then developer can Finish it.
Simple answer - there is no group of developers available to "finish it." Somebody with software skills (like you?)  has to complete the entire porting process.  But there are people participating on this forum who will provide help.

http://chdk.wikia.com/wiki/FAQ#Q._My_camera_isn.27t_ported_yet._Is_a_port_planned.C2.A0.3F_When_will_it_be_ready.C2.A0.3F_How_can_I_help.C2.A0.3F

Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline zfeet

  • **
  • 67
Re: Porting A410 - help wanted
« Reply #13 on: 05 / June / 2011, 16:54:30 »
Usually similar firmwares can be found by looking at the version, in this case 100f, and the age of the camera. With this information in mind you can find that A610's 100f is very similar to A410's.

Use IDA to load both of the firmwares, create new directory platform/a410, copy all the files from platform/a610 (delete sub/100e subfolder) and start hacking.

You can use this page as a starting point: http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera

Just compare addresses from a610's firmware and it should be relatively easy.


*

Offline reyalp

  • ******
  • 13502
Re: Porting A410 - help wanted
« Reply #14 on: 05 / June / 2011, 17:56:13 »
Usually similar firmwares can be found by looking at the version, in this case 100f, and the age of the camera. With this information in mind you can find that A610's 100f is very similar to A410's.
This is not correct. 100f on one model doesn't mean it is closer to 100f on another model. The firmware version number is obviously a revision *for that particular camera model* not a global software version. You can tell because canon is still releasing 100a, etc. on the newest cameras.

The release date of the camera model is a much better indication of similarity, and of cameras with similar release dates, models in the same series (e,g. a4xx for a410) will generally be closest.
Don't forget what the H stands for.

*

Offline tired

  • *
  • 14
Re: Porting A410 - help wanted
« Reply #15 on: 05 / June / 2011, 19:33:37 »
HI Again.
I understand for making chdk,need a some files like stubs_entry.S,stubs_entry_2.S ,...(correct?)
and according to your help,we can change codes in the source files with "Comparison between the codes" for port to new camera model(correct?)

tell me this test ok or no!
i get chdk codes from a430 camera ,in stubs_entry.S after function "AllocateMemory" writed: "0xffc01ab4"



i search in my firmware dump(opened by ida pro and convert to stubs_entry_ida.S) for "AllocateMemory" and find code after it,is "0xffc0b294", and replace codes.



i need change all codes and value like platform,model,address,...
? :-[
thanks.
« Last Edit: 05 / June / 2011, 19:40:11 by tired »

*

Offline reyalp

  • ******
  • 13502
Re: Porting A410 - help wanted
« Reply #16 on: 05 / June / 2011, 19:45:51 »
HI Again.
I understand for making chdk,need a some files like stubs_entry.S,stubs_entry_2.S ,...(correct?)
and according to your help,we can change codes in the source files with "Comparison between the codes" for port to new camera model(correct?)

tell me this test ok or no!
i get chdk codes from a430 camera ,in stubs_entry.S after function "AllocateMemory" writed: "0xffc01ab4"
i search in my firmware dump(opened by ida pro and convert to stubs_entry_ida.S) for "AllocateMemory" and find code after it,is "0xffc0b294", and replace codes.
i need change all codes and value like platform,model,address,...
? :-[
thanks.

You need to read and understand http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera

If you aren't able to understand that, then you aren't ready to make a port. Your post indicates that you have not yet understood it.

To make a port, you need to understand C and assembler quite well. There is no shortcut, there is no "easy" way. It's a lot of work. You cannot just guess and do it by trial and error without understanding. You will just be wasting your time. If you want a camera with CHDK, you can spend much less time working at a McJob or panhandling and just buy a supported camera.

To answer your specific question:
stubs_entry.S is automatically created by the build process, assuming you have PRIMARY.BIN in place. However, not everything in it will be correct. stubs_entry_2.S is used to correct the ones that are not correct, and also used for some functions that are not found automatically.

Fixing the stubs is a small part of making a port. You need to correct *all* the files in the platform and loader directories. That means every part which refers to an address in the firmware needs to be corrected for your camera. There may also be other differences that need to be worked around, those will be found in testing and debugging.
Don't forget what the H stands for.

Re: Porting A410 - help wanted
« Reply #17 on: 05 / June / 2011, 21:25:33 »
Wow - just looked up the A410 on the wiki.  That's a really old camera.   I saw several deal today online for a brand new A495 with 4G memory card, Lowepro case and a tripod for $69 with free shipping. How much can someones time be worth to justify the port to the A410.  Truely a labour of love I guess.

@tired :   I understand you are doing your best to communicate with us in a foreign language so I will try to keep things simple here.  Take a look at the source code for cameras closest to yours - the A430 or the A450.  As you have IDA Pro,  use it to look at the source code for those cameras. Open up their stubs_entry.C and stubs_entry_2.C files and examine the code they point to in memory.  Then use IDA to try to find the matching code in your A410 dump.   Understanding the various wiki instructions that you have already been shown is essential,  and the best trick once you understand that is to use an existing port from a similiar camera to help you find addresses and files in your camera.


Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline tired

  • *
  • 14
Re: Porting A410 - help wanted
« Reply #18 on: 05 / June / 2011, 23:57:44 »
Wow - just looked up the A410 on the wiki.  That's a really old camera.   I saw several deal today online for a brand new A495 with 4G memory card, Lowepro case and a tripod for $69 with free shipping. How much can someones time be worth to justify the port to the A410.  Truely a labour of love I guess.

@tired :   I understand you are doing your best to communicate with us in a foreign language so I will try to keep things simple here.  Take a look at the source code for cameras closest to yours - the A430 or the A450.  As you have IDA Pro,  use it to look at the source code for those cameras. Open up their stubs_entry.C and stubs_entry_2.C files and examine the code they point to in memory.  Then use IDA to try to find the matching code in your A410 dump.   Understanding the various wiki instructions that you have already been shown is essential,  and the best trick once you understand that is to use an existing port from a similiar camera to help you find addresses and files in your camera.




Your Answer was effective
i will try shift+delete making chdk from my mind!
very thx.
but about A495: A495 here without memory card,case &... is 110$
dear friend! A495 very old camera (2008) and now is 2011
OH SLR!!!

*

Offline msl

  • *****
  • 1276
  • A720 IS, SX220 HS 1.01a
    • CHDK-DE links
Re: Porting A410 - help wanted
« Reply #19 on: 06 / June / 2011, 05:15:28 »
A495 very old camera (2008) and now is 2011

That's not quite right. The A495 was announced in 2010 - see here: http://www.dpreview.com/products/canon/compacts/canon_a495

msl
CHDK-DE:  CHDK-DE links

 

Related Topics