In der LUA-Reference im letzten Abschnitt Changed LUA Commands befindet ein Beispiel-Script, das die verschiedenen Kameramodi ausgibt, die über Wählrad und Drehkranz eingestellt werden können - je nach Kameramodell.
Ich habe dieses Script mit meiner IXUS 970 und der aktuellen CHDK-Version mal ausprobiert und leicht modifiziert. Das unten angehängte Script ist identisch mit dem in der o.g. LUA-Reference bis auf folgende Anpassungen:
Die mit der IXUS 970 erzeugbaren Modi sind mit Kommentaren gekennzeichnet:
--> Zuerst die Wählradeinstellung, über die der Modus erreicht werden kann
(AUTO=Automatikmodus, M=Manuellmodus, SCN=SCN-Modus, VID=Videomodus)
Die verschiedenen Modi bei M, SCN und VID werden über den Drehkranz eingestellt!
--> Dahinter die Nummer, die das Script für den jeweiligen Modus ausgibt
Es gibt bei der IXUS 970 einen weiteren Modus mit der Nummer 311 (SCN-SUNSET),
diesen habe ich in den modestrings des Scriptes als Text angefügt,
dazwischen einen "UNKNOWN" für den mit der IXUS 970 nicht erzeugbaren Wert 310
- falls eine andere Kamera diesen hat.
Im Wiki-Eintrag für die Mode Dial Propcase Values finden sich Werte für die Ergebisse von get_mode bei anderen Kameras.
- Code: Alles auswählen
--[[
@title Modusanzeige
--]]
modestrings={
'AUTO', -- AUTO-257
'P',
'TV',
'AV',
'M', -- M-261
'PORTRAIT', -- SCN-262
'NIGHT',
'LANDSCAPE',
'VIDEO_STD', -- VID-265
'VIDEO_SPEED',
'VIDEO_COMPACT', -- VID-267
'VIDEO_MY_COLORS',
'VIDEO_COLOR_ACCENT', -- VID-269
'VIDEO_COLOR_SWAP', -- VID-270
'STITCH', -- M-271 (2x)
'MY_COLORS',
'SCN_WATER',
'SCN_NIGHT',
'SCN_CHILD',
'SCN_PARTY',
'SCN_GRASS',
'SCN_SNOW', -- SCN-278
'SCN_BEACH', -- SCN-279
'SCN_FIREWORK', -- SCN-280
'SCN_COLOR_ACCENT',
'SCN_COLOR_SWAP', -- M-282
'VIDEO_HIRES',
'SCN_AQUARIUM', -- SCN-284
'COLOR_ACCENT', -- M-285
'SCN_NIGHT1',
'SCN_ISO_3200', -- SCN-287
'SCN_SPORT',
'SCN_KIDS_PETS', -- SCN-289
'INDOOR',
'KIDS_PETS',
'NIGHT_SNAPSHOT', -- SCN-292
'DIGITAL_MACRO', -- M-293
'SCN_FOLIAGE', -- SCN-294
'VIDEO_TIME_LAPSE', -- VID-295
'SCN_INDOOR', -- SCN-296
'SCN_PORTRAIT',
'SUPER_MACRO',
'VIDEO_PORTRAIT',
'VIDEO_NIGHT',
'VIDEO_INDOOR',
'VIDEO_FOLIAGE',
'VIDEO_SNOW',
'VIDEO_BEACH',
'VIDEO_AQUARIUM',
'VIDEO_SUPER_MACRO',
'VIDEO_STITCH',
'VIDEO_MANUAL',
'SPORTS',
'UNKNOWN',
'SCN_SUNSET', -- SCN-311
}
rec,vid,mode=get_mode()
print("rec:",rec,"vid:",vid)
print("mode:",mode,tostring(modestrings[bitand(mode,0xFF)])) -- 0xFF is MODE_SHOOTING_MASK
sleep(2000)
Vielleicht kann´s jemand gebrauchen.

Gruß,
Andreas