I thought sx710 had a "hidden" ND, because PutInNdFilter made a noise and a big difference in exposure.
However, running ndtest.lua, I happened to notice the DOF was a lot deeper for the ND-in shots. So I tried using Av mode with aperture set to F/8 (rather than max Av), and ndtest only reported an ND value of ~117 instead of ~305 as in the previous runs. When I tested Av overrides, there was detectable change up to around F/11, which would roughly match the F/8 + "ND" value.
Looking at the ROM code,
sx710hs PutInNdFilter appears to be roughly
MoveIrisToAv(GetUsableMinAv())
😛 🤣 :lol
My impression is
sx260hs (another "hidden" ND camera) code is the same. The code on
G7x (which has an ND in the Canon UI) is totally different.
I would be interested if anyone can confirm the DOF changing significantly with the ND "in" on
sx260hs or other supposed "hidden" cameras. If the "hidden" ND is not actually a thing, ND support in CHDK will be simplified considerably...
edit:
Additional data point: The non-hidden ND cameras have asserts for "NdActuator.c" and an ND task. These do not appear to be present in supposed "hidden" ND cams like SX260, SX50 and SX710
edit:
I mixed up Min and Max a couple times
GetUsableMinAv returns the smallest aperture (e.g. F/11), GetUsableMaxAv returns the largest (e.g F/3.2)
The propcase we call PROPCASE_AV_MIN returns a value like "max" 😳