Adding new cameras, applying patches into trunk (with source code prepared) - page 47 - General Discussion and Assistance - CHDK Forum
supplierdeeply

Adding new cameras, applying patches into trunk (with source code prepared)

  • 1679 Replies
  • 782479 Views
*

Offline reyalp

  • ******
  • 14079
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #460 on: 11 / September / 2011, 22:53:44 »
Advertisements
Patch for IXUS120-SD940 (all firmware versions)

This patch corrects a major bug in capt_seq.c for all firmware versions.  The bug had been partially masked by commenting out one of the calls to the CHDK hooks.  This resulted in impaired USB_Remote functionality and possible crashes in some shooting modes.

This patch enables USB remote operation in "Synchable Remote" mode.  In this mode the camera does a "half shoot" on application of 5V on the USB port and a "full shoot" when the 5V is removed.
Added changeset  1334

Attached is a cosmetic patch regarding A410. It removes the "global" declaration and use of MoveFocusLensToDistanceA410() as it seems to be unneeded. It's now only a local function for the port.
Added, changeset 1335
Quote
Oh, btw. Is there something wrong with this patch for the SX100? If it gets accepted, I could do the same for the other firmware revision (the change should be trivial, but I will not be able to test that of course). Here is my previous post.
I'm not clear if this is tested ?   If it is then it should be fine Looks like you do have that camera. On some cameras the second "taskhook" is only needed for some tasks, but in your case there is only one task started this way.

The way our ifdefs are set up, it is hard to have features like extra long exposure enabled for only one sub so you'd need to do both before we can put it in the trunk.
« Last Edit: 11 / September / 2011, 23:35:12 by reyalp »
Don't forget what the H stands for.

*

Offline srsa_4c

  • ******
  • 4451
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #461 on: 12 / September / 2011, 20:43:05 »
I'm not clear if this is tested ?   If it is then it should be fine Looks like you do have that camera.
Yes, I have tested it on my 1.00c camera.
Quote
On some cameras the second "taskhook" is only needed for some tasks, but in your case there is only one task started this way.
Looking at some (earlier) discussions and also at some DryOS ports, it's still not clear to me, how this mechanism works. When I removed the modification of the 0x1934 location, the modified exp_drv_task() still managed to start. I have only tested this twice: first time with the camera started in playback mode, second time with the camera started with a long press on the on/off button. Both tests were succesful.
But, since most ports use two taskhook locations (with the override for exp_drv_task included in both), I decided to follow that practice.
Quote
The way our ifdefs are set up, it is hard to have features like extra long exposure enabled for only one sub so you'd need to do both before we can put it in the trunk.
Yeah, I forgot about that. So here's the patch for both fw revisions, also included the fix for the vanishing menus.

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #462 on: 30 / September / 2011, 04:55:05 »
Hi, I ported the firmware version 100f to 100d, for the powershot a490, with the help of CHDK-PT.

Everything seems to be working fine...

I have attached a patch-file for the trunk. I think everything should be included. Could someone add this to the repository?

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #463 on: 30 / September / 2011, 10:51:21 »
The patch in previous post is against trunk revision 1344


*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #464 on: 30 / September / 2011, 19:23:43 »
I'm not clear if this is tested ?   If it is then it should be fine Looks like you do have that camera.
Yes, I have tested it on my 1.00c camera.
Quote
On some cameras the second "taskhook" is only needed for some tasks, but in your case there is only one task started this way.
Looking at some (earlier) discussions and also at some DryOS ports, it's still not clear to me, how this mechanism works. When I removed the modification of the 0x1934 location, the modified exp_drv_task() still managed to start. I have only tested this twice: first time with the camera started in playback mode, second time with the camera started with a long press on the on/off button. Both tests were succesful.
But, since most ports use two taskhook locations (with the override for exp_drv_task included in both), I decided to follow that practice.
Quote
The way our ifdefs are set up, it is hard to have features like extra long exposure enabled for only one sub so you'd need to do both before we can put it in the trunk.
Yeah, I forgot about that. So here's the patch for both fw revisions, also included the fix for the vanishing menus.

Added in changeset 1345.

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)
  g7x2 (1.01a, 1.01b, 1.10b)

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #465 on: 30 / September / 2011, 19:26:58 »
Hi, I ported the firmware version 100f to 100d, for the powershot a490, with the help of CHDK-PT.

Everything seems to be working fine...

I have attached a patch-file for the trunk. I think everything should be included. Could someone add this to the repository?


The patch is missing the 'capt_seq.c' file.

I would also recommend verifying all the addresses that are reported as possibly incorrect in stubs_entry.S and correct if necessary (e.g. the levent_table and FlashParamsTable addresses in stubs_min.S).

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)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #466 on: 30 / September / 2011, 20:58:31 »
Here's a patch file to add get_config_value() and set_config_value() to Lua and uBASIC.  Its taken directly from CHDK-DE.

This is in response to this request http://chdk.setepontos.com/index.php?topic=6429.msg73673#msg73673

It actually seems like a good idea but reyalp may have some history as to why this was not added in the past.

If its accepted,  I'll update the wiki as best I can.

Ported :   A1200    SD940   G10    Powershot N    G16

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #467 on: 01 / October / 2011, 01:26:24 »
A patch to add four really simple scripts (Lua and uBasic versions so 8 files total) to the install files. These scripts implement the most common functions people want from CHDK (shoot with delay, intervalometer, motion detect, HDR).   Lots of room for people to experiment and improve.  What I was looking for was the most basic way to do the core CHDK scripted functions - curiously those are not included in the standard CHDK build.

The scripts are written to be generic -  nothing specific to a particular camera model.

« Last Edit: 01 / October / 2011, 01:28:15 by waterwingz »
Ported :   A1200    SD940   G10    Powershot N    G16


*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #468 on: 01 / October / 2011, 07:28:22 »
Here's a patch file to add get_config_value() and set_config_value() to Lua and uBASIC.  Its taken directly from CHDK-DE.

This is in response to this request http://chdk.setepontos.com/index.php?topic=6429.msg73673#msg73673

It actually seems like a good idea but reyalp may have some history as to why this was not added in the past.

If its accepted,  I'll update the wiki as best I can.



A patch to add four really simple scripts (Lua and uBasic versions so 8 files total) to the install files. These scripts implement the most common functions people want from CHDK (shoot with delay, intervalometer, motion detect, HDR).   Lots of room for people to experiment and improve.  What I was looking for was the most basic way to do the core CHDK scripted functions - curiously those are not included in the standard CHDK build.

The scripts are written to be generic -  nothing specific to a particular camera model.


Both added in changeset 1348.

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)
  g7x2 (1.01a, 1.01b, 1.10b)

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #469 on: 03 / October / 2011, 05:14:56 »
Hi Phil,

Here is the patch with capt_seq included. Sorry for that. I don't know how to check/correct the addresses in stubs_entry.S, but so far, things seem to be working.
If someone can explain how to correct the addresses, assuming little foreknowledge, I can do that, but I have little time the next two weeks...



 

Related Topics