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

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

  • 1679 Replies
  • 787854 Views
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #560 on: 02 / December / 2011, 17:29:16 »
Advertisements
Patch with infrastructure to call script.

1. Increase isolation of mpopup from fileselector. Different modules should have weak dependencies. In future popup could be used not only in fileselector.
2. Extend script.c with infrastructure to temporary scripts call. When I say "temporary script call" I mean that now it easy to call script from CHDK without any influence onto scripting config settings.
3. First integration sample to use that: integration lua script "editor" into fileselector (popup menu).
NOTE: To use this feature place editor script with version 2.5 or higher as "A/CHDK/SCRIPTS/EDITOR.LUA"

What else tasks could be extended by such scripts?
- Any modules linked with menu items. Sample: quick call of existed preconfigured script for photo needs, Additional modules like calendar, calculator. This will be used in future "extended user menu"
- Additional tasks in fileselector.
- Additional tasks required onscreen-keyboard. Such as rename file. Base on engine from editor script for that.

Of course scripts are limited by speed and features, but this will be solved by binary module system. This is enough for many possible needs.
« Last Edit: 02 / December / 2011, 17:32:46 by tsvstar »

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #561 on: 02 / December / 2011, 18:04:55 »
I haven't tried your patch yet, but I think that A/CHDK/SCRIPTS/EDITOR/ is a better place for the editor than directly in A/CHDK/SCRIPTS/ (that's only my opinion at the moment).

Also - I understand that now one can run editor directly from file selector for selected file? But editor script always run its own file browser instance - isn't this a conflict?

I believe that when one navigates in a file selector and use "edit" option for a selected file, the path to this file should be sent somehow to the script (as a parameter?). If that's true and I would know what's the name of this parameter I can modify the Edi to read this parameter and not run its own browser.

Also - other parameters could be sent into the script - such as user-defined newline encoding, console layout and so on...

---edit---

BTW - I'm going to work on on-camera grid editor, but have not enough time now. I need to finish my lua drawing first which are required. I guess, that this editor could be also run from file selector.

Runing special scripts from an file browser is a great idea, this could add new possibilities with low memory costs - all these stuff will stay on SD card as scripts and modules, not in the binary.

Text editor, calculator, calendar, games... doesn't this change the camera into the iPhone? :D
In iPhone the 'phone' function is only a minor feature. In CHDK-camera the shooting becomes minor function...
« Last Edit: 02 / December / 2011, 18:18:34 by outslider »
if (2*b || !2*b) {
    cout<<question
}

Compile error: poor Yorick

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #562 on: 02 / December / 2011, 18:55:30 »
I haven't tried your patch yet, but I think that A/CHDK/SCRIPTS/EDITOR/ is a better place for the editor than directly in A/CHDK/SCRIPTS/ (that's only my opinion at the moment).
FYI - it seems there are issues with path length on some cameras. The simple scripts in A/CHDK/SCRIPTS/4pack/Lua do not run on some cameras unless copied to A/CHDK/SCRIPTS.  Your proposed editor path might be an issue too.

Ported :   A1200    SD940   G10    Powershot N    G16

Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #563 on: 02 / December / 2011, 22:33:48 »
Attached a patch that fixes the location of focus_busy and zoom_busy on ixus220/elph300, and thus fixes the ISO override crash.  (tested on 1.01a; probably the same across firmwares, since variables on either side didn't move)


*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #564 on: 02 / December / 2011, 23:41:33 »
Attached a patch that fixes the location of focus_busy and zoom_busy on ixus220/elph300, and thus fixes the ISO override crash.  (tested on 1.01a; probably the same across firmwares, since variables on either side didn't move)

Added in changeset 1445.

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 #565 on: 03 / December / 2011, 02:05:02 »
Also - I understand that now one can run editor directly from file selector for selected file? But editor script always run its own file browser instance - isn't this a conflict?

No conflict exist. No changes are required.
Fselector doesn't exit internally when call editor, and so when LUA asks for file - selected file immediately returned. When script closed we return to fileselector back.
This solution have some limitation: default parameters used only, only one file could be selected (any fselect call from LUA return same file). This could be resolved, but for now this is enough.

BTW - I'm going to work on on-camera grid editor, but have not enough time now. I need to finish my lua drawing first which are required. I guess, that this editor could be also run from file selector.
Yes sure.
But pay attention to fact that current implementation of popup have hard limitation on num of possible variants of item: only 15 possible cases allowed and up to 10 visible at same time (to match into screen).

*

Offline tommi2water

  • ***
  • 157
  • IXUS 220 HS Firmware: 1.00c
ixus220_elph300hs_stubs_entry_cleanup.patch
« Reply #566 on: 03 / December / 2011, 04:54:11 »
I cleaned up stubs_entry2.S files and of course this results in new generated versions of stubs_entry.S files.

Please find attached a patch with new versions of stubs_entry2.S and stubs_entry.S for firmware versions 100c, 101a and 101c for ixus220_elph300hs.

*

Offline philmoz

  • *****
  • 3450
    • Photos
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #567 on: 03 / December / 2011, 05:09:20 »
I cleaned up stubs_entry2.S files and of course this results in new generated versions of stubs_entry.S files.

Please find attached a patch with new versions of stubs_entry2.S and stubs_entry.S for firmware versions 100c, 101a and 101c for ixus220_elph300hs.


Added in changeset 1446.

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 tommi2water

  • ***
  • 157
  • IXUS 220 HS Firmware: 1.00c
Re: Adding new cameras, applying patches into trunk (with source code prepared)
« Reply #568 on: 03 / December / 2011, 06:13:35 »
I cleaned up stubs_entry2.S files and of course this results in new generated versions of stubs_entry.S files.
...

Oh, additional changes I did for 100c I missed to do for 101a and 101c before providing patch. :(

Therefore please find attached another patch with missing change for 101a and 101c firmware. :)

Thanks to CHDKLover from german CHDK Forum for the hint!

*

Offline tommi2water

  • ***
  • 157
  • IXUS 220 HS Firmware: 1.00c
ixus220_elph300hs_remove_jogdial.patch
« Reply #569 on: 03 / December / 2011, 09:01:59 »
Removed unnecessary functions/variable for JogDial from lib.c and kbd.c.

Please find attached the patch.




 

Related Topics