Hello,
I have implemented a menu option to allow bracketing during continuous shooting to be reset after every n shots - hopefully this may be of interest to a few people :-)
With the attached changes, a menu item "Reset after n images" is added to the "Bracketing in continuous mode" menu - if this is anything other than 0 then after the selected number of shots the exposure will reset back to the settings for the first shot and then repeat the bracketing for as long as the release is held.
Obvious improvement: I've just used the simplest way to add the menu item as an integer and didn't spot an easy way to make the menu show "off" instead of "0" to provide a better indication to the User that this feature is disabled.
There is also a hint of how to add in bracketing of more than one setting at a time (ref the way the bracketing.value field is used) - I was thinking of moving Av and Tv to retain the same overall EV and hence have a go at depth of field bracketing (and someone will point out that is already available using option X...).
As regards testing etc: I'm running it on a G9 and have been concentrating on Tv bracketing (my immediate requirement); subject distance bracketing is most likely to be broken, if anything, as my attempts at that even with the unmodified CHDK were not a success (probably need to RTM again).
As this is my first change to the CHDK code I'm sure that I've introduced some novel bugs and there are some places where I've maintained the older code's behaviour but it doesn't look quite right - for example, I'd expected the calculations for the various forms of bracketing (Tv, Av ...) to be more similar but there are differences and extra conditionals I've not figured out the precise meaning of yet :-( And I'm afraid I'm guilty of a little code-cleaning <cough> (deleting unused fields in the baracketing struct, for example) so the diff isn't as minimal as it could be.
The attachment is an svn diff against trunk 905, which I hope is up to date.