I've tried set_sv96(), set_market_ISO(), and set_real_ISO(); none seem to affect the resulting photos.
"set_market_ISO" and "set_real_ISO" do not exist. You should see an error if you attempt to use them.
The available functions are set_iso_mode, set_iso_real and set_sv96. They should all work unless the port is broken. As you've noticed, set_iso_mode works with the same values that appear in the UI (edit: except numbers below 50 are treated as IDs in CHDK ISO list, so 0 is auto, 1 is base ISO etc).
set_iso_real and set_sv96 do the same thing under the hood (that is, set_iso_real eventually calls set_sv96), the main difference is set_iso_real takes ISO units while set_sv96 takes APEX96 units. Like other overrides, they must be used in the same script that does the shot, and they are applied on the first half press after the call, or immediately, if the camera is already in halfpress.
Note that most cameras do not allow overriding ISO much outside the standard Canon range. You should be able to use overrides to set values in smaller steps (like setting ISO 123) or in some cases where the camera would normally limit the ISO range or force auto-ISO, but you shouldn't expect it to work beyond the minimum or maximum values available in the Canon UI.
exif["MakerNote ISO"]: (None) Proprietary=Auto @ None
(I'm using the Python package "exifread" to read the EXIF tags; this seems to be the only tag in the file related to ISO.)
See
https://exiftool.org/forum/index.php?topic=2099.msg9213#msg9213and
https://www.exiv2.org/tags-canon.htmlHowever, the tag value is not necessarily a reliable indicator of what the camera actually did when you use CHDK overrides. You should evaluate the actual resulting image to determine if the override is working. The isoinc.lua script included in CHDK/SCRIPTS/TEST can be used to test ISO overrides. It takes a series of shots and measures the raw levels.
CHDK ISO override works by putting the camera in auto-ISO mode and then setting the auto value, so you should expect to see that in the tags.
Also - is there a way to do a half-press and then "remoteshoot" from CHKPTP? Per your last post, the "remoteshoot" needs to be in the same luar line as the half-shoot. But I'm having trouble doing that. shoot() works OK in a script, but "remoteshoot" doesn't:
con 466> =set_focus(1000) shoot()
con 467> =set_focus(1000) remoteshoot
ERROR: :101: '=' expected near '<eof>'
user code: 1
remoteshoot is a chdkptp CLI command, not a CHDK Lua function. It runs its own set of complicated scripts on the camera (see lua/rlibs.lua in the chdkptp install). If you want to set exposure parameters, you should use the command line options like -sv=... to set ISO and -sd=... to set focus distance. See "help rs" for details.
If you need to do something not available through the standard command line options, you can use the -script to run your own script, but in that case your script must set everything.