The forum does not accept attachments, so the patch is placed on this link:
https://drive.google.com/open?id=1x_OJ08hWY7uLXSu7cQ45P6jOm0jp0XmP
Thanks for posting this, added in trunk 5142. The forum should be accepting patch files again.
I haven't looked at the code closely, but a few comments / things @nstatic could check
NUM_FL detected by the sig_finder is 551, which seems like a lot, especially for a camera that isn't a super-zoom. You can check:
1) The focal length display in misc values looks reasonable at min, max and some in between zoom levels (use FL or EFL).
2) If you manually zoom to max, is the get_zoom() value something like 550 or 551?
CAM_IS_VID_REC_WORKS is not defined. This should only need movie_status (which is found by the sig finder) not a full movie task implementation, so it should be tested. You can use vidtest.lua in the TEST directory.
Are the CAM_SD_OVER_IN_* defines tested?
The code to detect playback / power button long press startup in boot.c (top of sub_FF0203C4_my) as a TODO on it. The expected behavior is
* short press of play or power button starts in play
* longer press of power starts in rec
If the camera starts in rec from a short press of play, this should be fixed.
Some modemap entries detected by the sigfinder are in the CHDK list. Sometimes these are accessed from a the menu, or different options in a scene mode.