A2200 IS porting thread - page 9 - DryOS Development - CHDK Forum supplierdeeply

A2200 IS porting thread

  • 514 Replies
  • 97563 Views
Re: A2200 IS porting thread
« Reply #80 on: 03 / December / 2011, 15:16:46 »
Advertisements
where would one learn about how to port these? totaly noob here
http://chdk.wikia.com/wiki/For_Developers
Ported :   A1200    SD940   G10    Powershot N    G16

Re: A2200 IS porting thread
« Reply #81 on: 05 / December / 2011, 18:25:17 »
Any one might have any idea what's happening here?

I tried to bring my port to a newer revision (rev. 1457), but when I try to build it, I get a segmentation fault when generating stubs_entry.S!

Trying to build reference ports (like sx220hs) works.

*

Offline philmoz

  • *****
  • 3123
    • Photos
Re: A2200 IS porting thread
« Reply #82 on: 05 / December / 2011, 18:58:26 »
Any one might have any idea what's happening here?

I tried to bring my port to a newer revision (rev. 1457), but when I try to build it, I get a segmentation fault when generating stubs_entry.S!

Trying to build reference ports (like sx220hs) works.

Sounds like a problem in finsig_dryos.c that generates the stubs file.

Post your loader and platform directories for the camera/firmware version and I'll investigate.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)

Re: A2200 IS porting thread
« Reply #83 on: 05 / December / 2011, 19:19:25 »
Sounds like a problem in finsig_dryos.c that generates the stubs file.

Post your loader and platform directories for the camera/firmware version and I'll investigate.

Phil.

Hi philmoz,

Thanks for checking this out! loader, platform and modelist.h here. I'm using gcc ver. 4.6.0, previous revision of CHDK I used (and it worked) was 1364.

P.S.

Not camera specific, but could the "-Wl" option be added to the line 100 in chdk/core/Makefile?
Change from
Code: [Select]
$(CC) $(CFLAGS) -o $@ --start-group $^  $(LDLIBS) --end-group $(LDFLAGS) $(LDOPTS)to
Code: [Select]
$(CC) $(CFLAGS) -o $@ -Wl,--start-group $^  $(LDLIBS) -Wl,--end-group $(LDFLAGS) $(LDOPTS)Newer versions of gcc are a bit more anal about passing arguments to the linker, at least in my experience here.


*

Offline philmoz

  • *****
  • 3123
    • Photos
Re: A2200 IS porting thread
« Reply #84 on: 05 / December / 2011, 19:45:56 »

Thanks for checking this out! loader, platform and modelist.h here. I'm using gcc ver. 4.6.0, previous revision of CHDK I used (and it worked) was 1364.


I think the problem is the line in stubs_min.S:
    DEF(recreview_hold                          ,NULLSUB)

The stubs_min.S file holds memory location addresses not function addresses, NULLSUB is not really a valid value in this file. You would be trying to loaded the int value from the address of the function which is most likely wrong.

Change the NULLSUB to 0 and rebuild - finsig_dryos.c will hopefully find the correct value for recreview_hold and put in into stubs_entry.S. You can also remove entries from stubs_min.S that are found correctly by finsig_dryos.c and they will then be included in stubs_entry.S automatically.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)

Re: A2200 IS porting thread
« Reply #85 on: 06 / December / 2011, 02:33:54 »
I think the problem is the line in stubs_min.S:
    DEF(recreview_hold                          ,NULLSUB)

The stubs_min.S file holds memory location addresses not function addresses, NULLSUB is not really a valid value in this file. You would be trying to loaded the int value from the address of the function which is most likely wrong.

Change the NULLSUB to 0 and rebuild - finsig_dryos.c will hopefully find the correct value for recreview_hold and put in into stubs_entry.S. You can also remove entries from stubs_min.S that are found correctly by finsig_dryos.c and they will then be included in stubs_entry.S automatically.

Phil.

That didn't help. I still get the Segmentation fault in the same place.

But I tried replacing the finsig_dryos.c with the one from rev. 1364 and it worked. I'll look at the differences a bit later, or I'll at least try to find out up to which revision it worked.

*

Offline philmoz

  • *****
  • 3123
    • Photos
Re: A2200 IS porting thread
« Reply #86 on: 06 / December / 2011, 02:57:44 »
I think the problem is the line in stubs_min.S:
    DEF(recreview_hold                          ,NULLSUB)

The stubs_min.S file holds memory location addresses not function addresses, NULLSUB is not really a valid value in this file. You would be trying to loaded the int value from the address of the function which is most likely wrong.

Change the NULLSUB to 0 and rebuild - finsig_dryos.c will hopefully find the correct value for recreview_hold and put in into stubs_entry.S. You can also remove entries from stubs_min.S that are found correctly by finsig_dryos.c and they will then be included in stubs_entry.S automatically.

Phil.

That didn't help. I still get the Segmentation fault in the same place.

But I tried replacing the finsig_dryos.c with the one from rev. 1364 and it worked. I'll look at the differences a bit later, or I'll at least try to find out up to which revision it worked.

It's working for me with your original file - so my theory was wrong.

It could be related to the GCC version you are using - I have 4.5.1.

Phil.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)

Re: A2200 IS porting thread
« Reply #87 on: 06 / December / 2011, 03:19:06 »
It's working for me with your original file - so my theory was wrong.

It could be related to the GCC version you are using - I have 4.5.1.

Phil.

It could be that, like I said previously, the 4.6.0 feels a bit more fastidious then previous releases. I'll check up the differences between revisions, see what's upsetting my build setup and report it here.


Re: A2200 IS porting thread
« Reply #88 on: 06 / December / 2011, 07:03:52 »
Dear Friends :

         please tell me , Does this camera model is suitable for stereo photography ?

Re: A2200 IS porting thread
« Reply #89 on: 06 / December / 2011, 07:13:05 »
Dear Friends :

         please tell me , Does this camera model is suitable for stereo photography ?

My end goal is to use it for that, but the current CHDK build hasn't been tested with two cameras and synchronisation yet.

 

Related Topics