1 #ifndef MODELIST_H 2 #define MODELIST_H 3 4 // Note: used in modules and platform independent code. 5 // Do not add platform dependent stuff in here (#ifdef/#endif compile options or camera dependent values) 6 7 /* 8 CHDK capture mode constants. 9 WARNING: This file is used with gen_modelist_lua.sed to generate modelist.lua 10 WARNING: These are used for platform independent script values. 11 Changing order or inserting new values will break script compatibility. 12 ADD NEW VALUES AT THE END! 13 14 0 is used as an invalid value 15 not every value is valid on every camera 16 17 Single line comments on the enum values will be carried over to lua 18 19 modemap notes: 20 - On cameras where the "manual" mode only allows +/- ev, rather than direct shutter 21 control, it should be mapped to P, not M 22 - Modes should be mapped to an enum value that matches their canon name. This is 23 displayed as a string when the mode is set, and can also be found in canon 24 manuals and spec lists. If in doubt refer to the canon manuals for description of 25 the modes function, and compare with existing cameras. Add a new enum value at the 26 end of the list if it doesn't closely match any existing function. 27 - As of CHDK 1.4, "scene" modes are not distinguished frome other modes. Previous 28 versions of CHDK used different enum values, e.g. MODE_PORTRAIT and MODE_SCN_PORTRAIT 29 - Some cameras have C, or C1 and C2 modes. These are not actual shooting modes, but 30 are used to load saved settings for other modes like M, P etc. These modes can be 31 set using _SetCurrrentCaptureMode, but are not currently supported by the modemap 32 system. If a C mode is set this way, the propcase used for PROPCASE_SHOOTING_MODE 33 on propset 2 cameras (49) reflects the actual mode. Propcase 50 appears to show the 34 set mode. Propset 1 behavior is unknown. 35 - Although canon mode values are similar between many cameras, they are not always the same! 36 - a list of valid canon modes can be found in the firmware, see existing cameras 37 for examples. This can be found several function calls after a reference to the 38 string AC:PTM_Init or similar 39 */ 40 enum { 41 MODE_AUTO =1, 42 MODE_P , // Called "camera manual" on many cameras without a true manual mode, only allows +/- Ev adjustment 43 MODE_TV , 44 MODE_AV , 45 MODE_M , // note, use only for true manual modes that allow direct control of Tv/Av 46 47 MODE_AQUARIUM , 48 MODE_BEACH , 49 MODE_BEST_IMAGE , 50 MODE_BLUR_REDUCTION , // a800 51 MODE_COLOR_ACCENT , 52 MODE_COLOR_SWAP , 53 MODE_CREATIVE_EFFECT , // "creative light effect", only known on ixus950_sd850 54 MODE_DIGITAL_IS , // a810/a2300 55 MODE_DIGITAL_MACRO , 56 MODE_DISCREET , // A3300is 57 MODE_EASY , 58 MODE_FACE_SELF_TIMER , // sx30/g12 (Smart Shutter, Face Self Timer mode) 59 MODE_FIREWORK , // ixus1000 end 60 MODE_FISHEYE , 61 MODE_FOLIAGE , 62 MODE_HDR , // g12 (HDR scene mode) 63 MODE_HIGHSPEED_BURST , 64 MODE_INDOOR , 65 MODE_ISO_3200 , 66 MODE_KIDS_PETS , 67 MODE_LANDSCAPE , 68 MODE_LIVE , // A3300is 69 MODE_LONG_SHUTTER , // "long shutter" mode on cameras without true manual mode. Allows manual shutter >= 1 second, uses manual shutter value propcase. Usually found under func menu in "manual" mode. 70 MODE_LOWLIGHT , // g11 71 MODE_MINIATURE , 72 MODE_MONOCHROME , // sx220 73 MODE_MY_COLORS , 74 MODE_NIGHT_SCENE , // "night scene" mode. Note, this can be a dial position, or under the scene menu (SCN_NIGHT_SCENE). 75 MODE_NIGHT_SNAPSHOT , 76 MODE_NOSTALGIC , // s90 77 MODE_PORTRAIT , 78 MODE_POSTER_EFFECT , 79 MODE_QUICK , 80 MODE_SMART_SHUTTER , // ixus1000_sd4500 - the following are not under SCN 81 MODE_SMOOTH_SKIN , // sx260 82 MODE_SNOW , 83 MODE_SOFTFOCUS , // sx260 asm1989 84 MODE_SPORTS , 85 MODE_STITCH , 86 MODE_SUNSET , 87 MODE_SUPER_MACRO , 88 MODE_SUPER_VIVID , 89 MODE_TOY_CAMERA , // sx220 90 MODE_UNDERWATER , 91 MODE_UNDERWATER_MACRO , // D20 92 MODE_WINK_SELF_TIMER , // sx30/g12 (Smart Shutter, Wink Self Timer mode) 93 94 MODE_VIDEO_COLOR_ACCENT , 95 MODE_VIDEO_COLOR_SWAP , 96 MODE_VIDEO_COMPACT , 97 MODE_VIDEO_HIRES , 98 MODE_VIDEO_IFRAME_MOVIE , // sx220 99 MODE_VIDEO_MINIATURE , // g12 (miniature effect video mode) 100 MODE_VIDEO_MOVIE_DIGEST , // sx220 (the camera automatically record a short video clip (up to approximately 4 seconds) every time you shoot 101 MODE_VIDEO_MY_COLORS , 102 MODE_VIDEO_SPEED , 103 MODE_VIDEO_STD , 104 MODE_VIDEO_SUPER_SLOW , // IXUS 310 HS Super Slow Motion Movie 105 MODE_VIDEO_TIME_LAPSE , 106 107 MODE_HYBRID_AUTO , // sx280 108 MODE_BACKGROUND_DEFOCUS , // g7x 109 MODE_STAR_PORTRAIT , // g7x 110 MODE_STAR_NIGHTSCAPE , // g7x 111 MODE_STAR_TRAILS , // g7x 112 113 MODE_VIDEO_M , // g7x manual video 114 MODE_VIDEO_STAR_TIME_LAPSE, // g7x not clear if this should be VIDEO 115 116 MODE_ART_BOLD , // art bold, m10 117 MODE_WATERPAINTING , // water painting, m10 118 MODE_CLOSEUP , // close-up, m10 119 MODE_FOOD , // food, m10 120 MODE_SELFIE , // self portrait, m10 121 122 MODE_VIDEO_SHORT_CLIP , // sx710 (short clips with special effects like slomo, individual effects don't get their own mode) 123 MODE_ZOOM_BLUR , // ixus990_sd970 "The optical zoom operates automatically during shooting" 124 125 MODE_PANNING , // G7X2 126 127 }; 128 129 #endif