A490 Porting

  • 224 Replies
  • 28125 Views
Re: A490 Porting
« Reply #50 on: 19 / September / 2011, 19:00:05 »
Advertisements
Can the current firmware be used to trigger shots remotely with the sort of wired triggers that have previously been used on other cameras that use CHDK?
Yes.

Quote
If so, is the current firmware in such a state that a newbie can get it running on his A490?
Maybe.  Currently,  CHDK is only available for A490 cameras with firmware 1.00f.   If your version is not 1.00f then you are probably out of luck unless somebody completes a port that works with your firmware version.  If your version is 1.00f then as a newbie,  you should be able to get it working.



Re: A490 Porting
« Reply #51 on: 23 / September / 2011, 10:26:05 »
Hi all,

I am new to this forum and just bought a Canon Powershot A490. If I get CHDK to work, I will buy some more for a research project. Unfortunately I found out that the firmware version is 100D, i.e. not (sup)ported yet.

I did, however, manage to dump the firmware:
https://rapidshare.com/files/3472827841/a490_100d.7z

I am not very skilled, but I will give it a try with porting this weekend. Hope I can get some help here. I someone else knows how to do this, I am also willing to test things on my cam and report back..


Re: A490 Porting
« Reply #52 on: 23 / September / 2011, 18:03:15 »
I am not very skilled, but I will give it a try with porting this weekend. Hope I can get some help here. I someone else knows how to do this, I am also willing to test things on my cam and report back..
Being able to dump firmware is a really good start.    Here's a link to a tool you can use in your porting efforts :

CHDK-PT

As far as help goes, you will usually get faster turn around on the IRC network.  If you have an IRC client then connect to irc.freenode.net and go to channel #CHDK.  If not,  check out the web link version : http://webchat.freenode.net/ and connect to channel CHDK.  Best times seem to be after 10 PM EST but you never know who will be on there at any given time.


*

Offline fe50

  • ******
  • 3038
  • IXUS50 & 860, SX10 Star WARs-Star RAWs
    • fe50
Re: A490 Porting
« Reply #53 on: 28 / September / 2011, 01:23:52 »
Added the
  • A490 1.00D
full 4MB dump (dumped with cBasic udumper) provided by snowsnapshots from this forum post to the box.net/chdk repository.


Re: A490 Porting
« Reply #54 on: 28 / September / 2011, 08:01:44 »
Thanks Waterwingz!

I now managed to follow the instructions on how to port using chdk-pt up to the point where I have to create the C task files. As I understand, I would need to have an addresses.txt file for the 100f version, but I can't find the example files (addresses_ctasks_103c.txt) mentioned in the explanation in my chdk-pt download.

The addresses file that is included only contains 3 functions, but I guess i will need more. I dont know which functions I should include.

I did manage to generate the C-disassembly from the new primary.bin file and I generated a new stubs_entry_2.S.

So my question now is where I can find some help on making an adresses.txt file.

Cheers!




Re: A490 Porting
« Reply #55 on: 28 / September / 2011, 09:06:02 »
So my question now is where I can find some help on making an adresses.txt file.

Take a look a this http://chdk.setepontos.com/index.php?topic=6367.msg72435#msg72435 and read the thread forward for the next few posts.  If that doesn't help, post back here ?

Re: A490 Porting
« Reply #56 on: 28 / September / 2011, 10:47:13 »
Thanks for your quick response. I tried too look at those posts already, but I still did not get it completely. Would the list of functions in the real-world example of the G11 be sufficient for my addresses.txt as well? So could I use the "convert addresses" option of chdk-pt in combination with a firmware dump of the G11 in and that list of functions there (for G11):
http://chdk.setepontos.com/index.php?topic=6367.msg72436#msg72436

Or should I somehow go through boot.c etc. and try to locate each original function mentioned there in my new firmware dump?

Re: A490 Porting
« Reply #57 on: 28 / September / 2011, 11:20:18 »
Or should I somehow go through boot.c etc. and try to locate each original function mentioned there in my new firmware dump?

Easier than that.  You need one line in addresses.txt for each routine in boot.c,  capt_seq.c and movie_rec.c for the 1.00f version of the A490.  So read through  those files for and everywhere you see something like :

Code: [Select]
void __attribute__((naked,noinline)) sub_FFC00358_my() {

or

void __attribute__((naked,noinline)) boot() {

create lines in your addresses.txt file :

sub_FFC00358_my 0xFFC00358 32
boot 0xFF81000C 86

Then use CHDK-PT to convert that file into a file that matches your firmware version by pointing it at the original firmware dump for the 1.00f and your firmware dump for the 1.00d and at the file you created.


Re: A490 Porting
« Reply #58 on: 29 / September / 2011, 10:22:40 »
Thanks! Now I figured it out! My first build seems to be working at least partly!! Yeehoo!
Now I will try to get an intervalometer script to work... So far it seems to stop after the first shot...

Once I have tested it a bit, where can I send to code for others to use?

Re: A490 Porting
« Reply #59 on: 29 / September / 2011, 11:46:05 »
Congratulations on getting a port running !

Once I have tested it a bit, where can I send to code for others to use?
Which code ?   

If you mean your 1.00d port, then once you are sure its working, it can be posted here http://chdk.setepontos.com/index.php?topic=650.  Its requested that you prepare it as a Tortoise SVN patch file against the current SVN build.
 
If you think your intervalometer has something new of value,  you can post it here http://chdk.setepontos.com/index.php?board=12.0


 

Related Topics