ixus175_elph180_100c porting attempt - page 14 - DryOS Development - CHDK Forum
supplierdeeply

ixus175_elph180_100c porting attempt

  • 201 Replies
  • 101354 Views
*

Offline axman

  • ***
  • 145
Re: ixus175_elph180_100c porting attempt
« Reply #130 on: 25 / June / 2017, 19:54:58 »
Advertisements
You should not need to specifically include camera.h anywhere other ports don't. It's already included in the places that needed.
Bad choice of words by me.  It's being referred to in the normal manner, I did not include it 'extra.'

Quote
The dependencies in the CHDK makefiles aren't complete, so it's generally a good idea to do full builds (make clean fir or one of the zip builds). This is especially important when you change headers or makefile settings.
edit:
I highly recommend using using something like "grep" to search the source when you run into something like this and aren't sure what it does.
My build sequence is 'make clean; make run-code-gen; make firzipsubcomplete'
Omitting the code-gen if I did not touch code_gen.txt

About grep, you bet.  Hard part is understanding how pieces fit together..   Thanks for the help in all dimensions.

Thanks especially for words on what remotecap.c compile failure & complaint meant.  That let me focus on what was still present in platform_camera.h.

To get it to compile past the jpeg error, at minimum, I had to undef:
CAM_REMOTE, CAM_HAS_FILEWRITETASK_HOOK, CAM_FILEWRITE_SEEKS.

But then the compile error shifted to
shooting.c, func shooting_video_bitrate_change, undefined reference to `change_video_tables'

I can't find anything else related to movie or video in my platform_camera.h.  I found stuff in include/shooting.h that was related to video, and commented it out. 

Resulting compile failure is spectacular; many .c routines in core/ complain about missing a piece from the video section I commented out of shooting.h..

I may be doing it Way Wrong, but Is it possible to make everything video/movie related - from all the bits in core/ and elsewhere - just go to a nullsub? 

I have changed these things in platform_camera.h to get past the 'compile only-capt_seq error';
Code: [Select]
//  axman, trying to isolate capt_seq main hook
#undef CAM_REMOTE                       // is defined in include/cameras.h
#undef CAM_HAS_FILEWRITETASK_HOOK       // was defined; 1
#undef SHORTCUT_TOGGLE_RAW             // was defined; KEY_VIDEO
#undef CAM_HAS_VIDEO_BUTTON            // was defined; 1
#undef CAM_VIDEO_QUALITY_ONLY          // was 1
#undef CAM_VIDEO_CONTROL              // was commented out
#undef CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO    // it's unlocked by default // was commented out
#undef CAM_IS_VID_REC_WORKS            // was 1, & marked     // TODO
#undef CAM_FILEWRITETAKS_SEEKS          // was 1, has it, seen in disassembly of canon filewrite func

*

Offline reyalp

  • ******
  • 14080
Re: ixus175_elph180_100c porting attempt
« Reply #131 on: 25 / June / 2017, 20:05:43 »
To get it to compile past the jpeg error, at minimum, I had to undef:
CAM_REMOTE, CAM_HAS_FILEWRITETASK_HOOK, CAM_FILEWRITE_SEEKS.
Didn't I just explain that CAM_REMOTE has nothing to do with filewrite?

Quote
shooting.c, func shooting_video_bitrate_change, undefined reference to `change_video_tables'

I can't find anything else related to movie or video in my platform_camera.h.  I found stuff in include/shooting.h that was related to video, and commented it out. 
You shouldn't need to modify core code (stuff outside of platform), and doing so is likely to cause difficult to understand problems.

change_video_tables is related to the video quality control stuff, which is related to movie_rec.c.

If you grep for change_video_tables you find it referenced in core/gui.c, inside an ifdef CAM_CHDK_HAS_EXT_VIDEO_MENU

If you grep that, you find it's on by default in camera.h (so my previous comment about not needing to turn of video related defines wasn't correct. The "IIRC" is a warning I was going from memory tracing through the code)

Don't forget what the H stands for.

*

Offline axman

  • ***
  • 145
Re: ixus175_elph180_100c porting attempt
« Reply #132 on: 25 / June / 2017, 21:36:14 »
To get it to compile past the jpeg error, at minimum, I had to undef:
CAM_REMOTE, CAM_HAS_FILEWRITETASK_HOOK, CAM_FILEWRITE_SEEKS.
Didn't I just explain that CAM_REMOTE has nothing to do with filewrite?
Yes, you did.  Mistake on my part twice; once for leaving it uncommented, again for not relating clearly to cause and effect.  CAM_REMOTE can be 1 and the compile error does not occur in remotecap.c.
Quote
shooting.c, func shooting_video_bitrate_change, undefined reference to `change_video_tables'

I can't find anything else related to movie or video in my platform_camera.h.  I found stuff in include/shooting.h that was related to video, and commented it out. 
Quote
You shouldn't need to modify core code (stuff outside of platform), and doing so is likely to cause difficult to understand problems.

change_video_tables is related to the video quality control stuff, which is related to movie_rec.c.

If you grep for change_video_tables you find it referenced in core/gui.c, inside an ifdef CAM_CHDK_HAS_EXT_VIDEO_MENU

If you grep that, you find it's on by default in camera.h (so my previous comment about not needing to turn of video related defines wasn't correct. The "IIRC" is a warning I was going from memory tracing through the code)
About the difficult to understand problems, yes.  I have not touched stuff in core/ yet.  Have read a little, but I was way off in space at that point of chdk knowledge. 

Seeing this error from something inside core/ felt like I was making it worse, like i was pushing the error deeper into the code, where there is too much I don't know. 

It's super challenging for me to learn in in all these areas at once. 

I will get there.  Meanwhile, sorry for dumb mistakes and questions, and burning *your* time.

Going away now to try and assimilate what I've learned.

Thanks again, immensely, for your patience and willingness to explain.

*

Offline blackhole

  • *****
  • 937
  • A590IS 101b
    • Planetary astrophotography
Re: ixus175_elph180_100c porting attempt
« Reply #133 on: 26 / June / 2017, 02:06:18 »
@axman or anyone else
Can you try hooktest.lua on this build.
If you tried my test build, released a few days ago and if you've tested your version of capt_seqc, then this option has not been tested yet.
A cleaned and corrected source code was used and some menus may look different than before.
Here is the PS.FI2 file so you can also try the "Firmware update" method to load the CHDK. In that case, the SD card must be unlocked.
Does the issue with double shot still exist?

EDIT: Test build removed.
« Last Edit: 28 / June / 2017, 07:36:49 by blackhole »


Re: ixus175_elph180_100c porting attempt
« Reply #134 on: 27 / June / 2017, 03:29:03 »
update file error if i use firmware update method..

*

Offline blackhole

  • *****
  • 937
  • A590IS 101b
    • Planetary astrophotography
Re: ixus175_elph180_100c porting attempt
« Reply #135 on: 28 / June / 2017, 07:48:45 »
Seem like we finally have functional capt_seq.c.
Reported by tsamma.
It's working well. darkframe subtraction also. :)
Test build attached.
A non-functional PS.FI2 file is not included.
update file error if i use firmware update method..
Thanks for the report.

*

Offline axman

  • ***
  • 145
Re: ixus175_elph180_100c porting attempt
« Reply #136 on: 29 / June / 2017, 11:25:45 »
Seem like we finally have functional capt_seq.c.
Reported by tsamma.
It's working well. darkframe subtraction also. :)
Test build attached.
A non-functional PS.FI2 file is not included.
update file error if i use firmware update method..
Thanks for the report.

@blackhole, thanks for test build. 
Hooktest still fails in my camera.  Log attached.
I use bootable sd card method, if it matters.
Not sure about other tests, let me know if I should try something.

*

Offline blackhole

  • *****
  • 937
  • A590IS 101b
    • Planetary astrophotography
Re: ixus175_elph180_100c porting attempt
« Reply #137 on: 29 / June / 2017, 11:45:41 »
Quote
@blackhole, thanks for test build. 
Hooktest still fails in my camera.  Log attached.
I use bootable sd card method, if it matters.
Not sure about other tests, let me know if I should try something.
I do not know what to say.
Tsamma reported that it works well.
Do you still have double shots?
Does .dng works well?


*

Offline reyalp

  • ******
  • 14080
Re: ixus175_elph180_100c porting attempt
« Reply #138 on: 29 / June / 2017, 16:02:46 »
@blackhole

Is "Jun 27 2017 09:42:50" in axman's log the build date of your build?

If @Tsamma can post a successful log, that might provide clues.
Don't forget what the H stands for.

*

Offline blackhole

  • *****
  • 937
  • A590IS 101b
    • Planetary astrophotography
Re: ixus175_elph180_100c porting attempt
« Reply #139 on: 29 / June / 2017, 17:13:55 »
@blackhole

Is "Jun 27 2017 09:42:50" in axman's log the build date of your build?

If @Tsamma can post a successful log, that might provide clues.
Yes, that's it.
Here is a copy of the last private message with the link to the test build,
Never end. :lol
capt_seq_hook_raw_here  located to sub_FF9AE5A0_my --> loc_FF9AE78C
https://drive.google.com/open?id=0B2NRqqO9AOURSmRuLW8tYnFNamM
and the answer
It's working well. darkframe subtraction also. :)

Best to wait for a response from Tsamma.

 

Related Topics