So sv96_base may or may not be initialized?
It's a static short defined at the start of the file and initialized to zero.
iso base may be 0?
Huh ?
I started out assuming this was put in by tsvstar but the code appear to go back to the Allbest/grand/EWAVR builds circa rev 243-246. It been in there a while and used in Custom Auto ISO ever since then.
tsvstart appears to check in
shooting_recalc_conf_autoiso_values() for goofy returned values from these functions.
I'd much rather have to work in inconvenient values than have the values I enter be interpreted unpredictably.
If I understand this correctly, what they are trying to do here is capture a [market:real] pair from the camera propcases, and thus they need to be sure that a valid pair exists. Once they have that, the code is written to not try again.
So there may be better ways to do this. Perhaps an expicit user request to allow a "fake shoot" the first time an ISO value is entered from the GUI. Store the result on the SD card, read that back at startup, and you are good to go. Or if we don't want to get fancy, add a "ISO scaling factor" menu entry to the CHDK Settings Menu and default it to "80/50" (which seems to be a common value people post about).
My real question is whether the resulting straight line approximation is "good enough"? I guess I have four cams where a simple script could set a range of real ISO values, half shoot, read back the market value and print to a file. I could even post it here (or maybe its time for a new thread on this subject) to collect more data.
This is starting to feel like a 1.3.0 topic if we are not willing to take the time to look at it now. To me, its kind of a big deal and I think from your comments that you agree. It would be a nice touch to add to 1.2.0 from the perspective of our "user base" if we delay to do so. Besides, I'm only half way through the first draft of the 1.2.0 User Manual conversion. And once that's done, some edits to add brief rational behind the functionality are probably in order.