1 // !!! THIS FILE IS GENERATED. DO NOT EDIT. !!! 2 #include "stubs_asm.h" 3 4 // Camera info: 5 // DRYOS R58 (DRYOS version 2.3, release #0058+p7) 6 // Firmware Ver GM1.00C // Found @ 0xff89dbac, "GM1.00C" @ 0xff89dbb9 7 // Firmware build timestamp: May 12 2016 19:57:43 8 // Canon IXUS 175 9 10 // Values for makefile.inc 11 // DIGIC = 41# DIGIC 4+ 12 // PLATFORMOSVER = 58 13 // PLATFORMID = 12993# (0x32c1) Found @ 0xffff0270 14 // MAXRAMADDR = 0x07ffffff 15 // MEMISOSTART = 0x001899d8 16 // KEYSYS = d4i# Found @ 0xff812968 17 // NEED_ENCODED_DISKBOOT = 16# Found @ 0xff812978 18 // ARAM_HEAP_START = 0x60e000# Found @ 0xff9b8f58 19 // ARAM_HEAP_SIZE = 0x22000# Found @ 0xff9b8f18 20 21 // Detected address ranges: 22 // ROM 0xff810000 - 0xffffffff (8323072 bytes) 23 // RAM code 0x006b1000 - 0x006c1734 copied from 0xffd2b31c ( 67380 bytes) 24 // RAM data 0x00001900 - 0x0000f3cc copied from 0xffd1d850 ( 56012 bytes) 25 26 // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S' 27 // Name Address Rule % Comp to stubs_entry_2.S 28 NHSTUB(DeleteFile_Fut ,0xff826a90) // 1 90% 29 NHSTUB(GetFocusLensSubjectDistanceFromLens ,0xff9a13a0) // 3 90% 30 // ERROR: MakeDirectory_Fut is not found. //--- --- *** != 0xff8277a4 31 // ERROR: RefreshPhysicalScreen is not found. //--- --- *** != 0x00000000 32 // ERROR: TurnOffBackLight is not found. //--- --- *** != 0x00000000 33 // ERROR: TurnOnBackLight is not found. //--- --- *** != 0x00000000 34 //NHSTUB(TurnOnDisplay ,0xff866c7c) //120 *** != 0xff859ef0 35 //NHSTUB(TurnOffDisplay ,0xff866c8c) //120 *** != 0xff85a8b4 36 // ERROR: close is not found. //--- --- *** != 0xff823d60 37 // ERROR: open is not found. //--- --- *** != 0xff823cb0 38 39 // Check of modemap from 'platform/CAMERA/shooting.c': 40 // Firmware modemap table found @ffaed6b0 -> ffce5408 41 // No problems found with modemap table. 42 43 // Values below can be overridden in 'stubs_min.S': 44 DEF(physw_status ,0x00010198) // Found @0xff82c154 45 DEF(physw_run ,0x00001c18) // Found @0xff82bc8c 46 DEF(physw_sleep_delay ,0x00001c20) // Found @0xff82bc8c 47 DEF(levent_table ,0xffc245ec) // Found @0xffc245ec 48 DEF(FlashParamsTable ,0xffce5784) // Found @0xffce5784 49 DEF(movie_status ,0x00007294) // Found @0xff9a8948 50 DEF(video_compression_rate ,0x00007244) // Found @0xff9a9610 51 DEF(full_screen_refresh ,0x00007dcc) // Found @0xff9cd828 52 DEF(canon_menu_active ,0x00003d18) // Found @0xff8a623c 53 DEF(canon_shoot_menu_active ,0x00009481) // Found @0xffa29424 54 DEF(playrec_mode ,0x000037f0) // Found @0xff8940fc 55 DEF(zoom_status ,0x00005fb0) // Found @0xff948048 56 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c). 57 // each entry contains 2 int value(s), the first is the zoom focus length. 58 // there are 101 entries in the table - set NUM_FL to 101 59 DEF(focus_len_table ,0xffffcb7c) // Found @0xffffcb7c 60 DEF(zoom_busy ,0x00007150) // Found @0xff9a3b4c 61 DEF(focus_busy ,0x0000701c) // Found @0xff99fe5c 62 // Palette colour tables found @ 0xffc28568 63 // Camera appears to have only 1 RAW buffer @ 0x43727660 (Found @0xffb95894) 64 DEF(fileio_semaphore ,0x00001c98) // Found @0xff82e58c 65 DEF(exmem_alloc_table ,0x000114fc) // Found @0xff833108 66 DEF(exmem_types_table ,0xffd1dc78) // Found @0x00001d28 67 DEF_CONST(exmem_type_count ,0x0000001f) 68 DEF(imager_active ,0x00001fb8) // Found @0xff8493c4 (0x1fb4 + 4) 69 DEF_CONST(uiprop_count ,0x000000d7) // Found @0xff9c32e4 70 DEF(cameracon_state ,0x00002370) // Found @0xff856eb4 71 72 // Values below go in 'lib.c': 73 //void *vid_get_bitmap_fb() { return (void*)0x40711000; } // Found @0xff86689c 74 //void *vid_get_viewport_fb() { return (void*)0x40866b80; } // Found @0xffb93e14 75 DEF(viewport_fb_d ,0x00003534) // Found 0x34d8 (@0xff8853f8) + 0x5c (@0xff885430) 76 //void *vid_get_viewport_fb_d() { return (void*)(*(int*)(0x34d8+0x5c)); } // Found @0xff8853f8 & 0xff885430 77 DEF(jpeg_count_str ,0x000d77d4) // Found @0xffa13d38 78 //char *camera_jpeg_count_str() { return (char*)0x000d77d4; } // Found @0xffa13d38 79 //int get_flash_params_count(void) { return 0xf1; } // Found @0xff9c3e58 80 81 // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c). 82 //#define SD_READONLY_FLAG 0x02000000 // Found @0xffbe3a2c, levent 0x30a 83 //#define SD_READONLY_IDX 2 84 //#define USB_MASK 0x10000000 // Found @0xffbe3a3c, levent 0x302 85 //#define USB_IDX 2 86 //#define BATTCOVER_FLAG 0x04000000 // Found @0xffbe3a34, levent 0x305 87 //#define BATTCOVER_IDX 2 88 //#define ANALOG_AV_FLAG 0x00002000 // Found @0xffbe39dc, levent 0x300 (non-inverted logic) 89 //#define ANALOG_AV_IDX 0 90 91 // Keymap values for kbd.c. Additional keys may be present, only common values included here. 92 //static KeyMap keymap[] = { 93 // { 0, KEY_VIDEO ,0x00000002 }, // Found @0xffbe399c, levent 0x02 94 // { 0, KEY_POWER ,0x00000020 }, // Found @0xffbe39a4, levent 0x100 95 // { 0, KEY_PLAYBACK ,0x00000040 }, // Found @0xffbe39ac, levent 0x101 96 // { 0, KEY_SET ,0x00000100 }, // Found @0xffbe39b4, levent 0x0a 97 // { 0, KEY_UP ,0x00000200 }, // Found @0xffbe39bc, levent 0x06 98 // { 0, KEY_RIGHT ,0x00000400 }, // Found @0xffbe39c4, levent 0x09 99 // { 0, KEY_DOWN ,0x00000800 }, // Found @0xffbe39cc, levent 0x07 100 // { 0, KEY_LEFT ,0x00001000 }, // Found @0xffbe39d4, levent 0x08 101 // { 0, KEY_HELP ,0x00004000 }, // Found @0xffbe39e4, levent 0x0d 102 // { 2, KEY_SHOOT_FULL ,0x00000003 }, // Found @0xffbe39fc, levent 0x01 103 // { 2, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffbe39fc, levent 0x01 104 // { 2, KEY_SHOOT_HALF ,0x00000001 }, // Found @0xffbe39f4, levent 0x00 105 // { 2, KEY_ZOOM_OUT ,0x00000010 }, // Found @0xffbe3a04, levent 0x04 106 // { 2, KEY_ZOOM_IN ,0x00000020 }, // Found @0xffbe3a0c, levent 0x03 107 // { 0, 0, 0 } 108 //}; 109 110 // Values below go in 'platform_camera.h': 111 //#define CAM_DRYOS 1 112 //#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher 113 //#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher 114 //#define CAM_RAW_ROWPIX 5248 // Found @0xff97c21c 115 //#define CAM_RAW_ROWS 3920 // Found @0xff97c224 116 //#undef CAM_UNCACHED_BIT 117 //#define CAM_UNCACHED_BIT 0x40000000 // Found @0xff825d74 118 //#define CAM_DATE_FOLDER_NAMING 0x080 // Found @0xffaba86c (pass as 3rd param to GetImageFolder) 119 //#define PARAM_CAMERA_NAME 3 // Found @0xffce41a8 120 //#define CAM_3ARG_DebugAssert 1 121 122 // Below goes in 'filewrite.c' or 'platform_camera.h': 123 //#define MAX_CHUNKS_FOR_FWT 7 // Found @0xffac8c14 124 125 // Known propcases 126 // // PROPCASE_AFSTEP 13 127 // #define PROPCASE_FOCUS_STATE 18 128 // #define PROPCASE_AV 23 129 // #define PROPCASE_BV 40 130 // // PROPCASE_DELTA_DIGITALGAIN 84 131 // #define PROPCASE_DELTA_SV 86 132 // // PROPCASE_DELTA_ND 87 133 // #define PROPCASE_EV_CORRECTION_2 218 134 // #define PROPCASE_ORIENTATION_SENSOR 230 135 // #define PROPCASE_SV_MARKET 257 136 // PROPCASE_SVFIX not found 137 // #define PROPCASE_TV 274 138 // Guessed propset: 10 139 140 // Misc stuff 141 DEF(ctypes, 0xffbe0e34) 142 143 // EXMEM types: 144 // EXMEM_RAMDISK 0 145 // EXMEM_COM 1 146 // EXMEM_FORMATTER 2 147 // EXMEM_SHADING 3 148 // EXMEM_FAMODE 4 149 // EXMEM_FIRMUP 5 150 // EXMEM_FIRMUP_VRAM 6 151 // EXMEM_FIRMUP_INFLATE 7 152 // EXMEM_FIRMUP_PICTURESTYLE 8 153 // EXMEM_DVLPWORK 9 154 // EXMEM_EVF 10 155 // EXMEM_SCRIPT 11 156 // EXMEM_GPS 12 157 // EXMEM_FACEAUTH 13 158 // EXMEM_OHYEARLOG 14 159 // EXMEM_WIFI 15 160 // EXMEM_FLASHAIR 16 161 // EXMEM_LENS_FIRMUP 17 162 // EXMEM_LENS_COMPENSATION 18 163 // EXMEM_FILESTORE 19 164 // EXMEM_MOVIE_REC 20 165 // EXMEM_MOVIE_PLY 21 166 // EXMEM_WIFI_RESIZE 22 167 // EXMEM_PCEVF 23 168 // EXMEM_WIDE 24 169 // EXMEM_NARROW 25 170 // EXMEM_AUTO_GIS_MODE 26 171 // EXMEM_NP_GIS_MODE 27 172 // EXMEM_TRIPODHDR_MODE 28 173 // EXMEM_HSHQ_MODE 29 174 // EXMEM_CRAW_REC 30 175 176 // ISR flag: 0x194c, pointer to current task's control block: 0x1948 177 // pointer to TCB area: 0x19cc, found @ 0xffd2c8d4 178 179 // LED table init @ 0xff956444 180 // LED #1: 0xc022d200 (#98 in GPIO table), offset 0x98 181 // LED #2: 0xc022d1fc (#97 in GPIO table), offset 0x8 182 // GPIO table @ 0xffbe342c 183 184 // Stubs below matched 100%. 185 // Name Address Comp to stubs_entry_2.S 186 NHSTUB(AllocateUncacheableMemory ,0xff825d30) //112 187 NHSTUB(Close ,0xff827210) //120 188 NHSTUB(CreateBinarySemaphore ,0x006b792c) //115 189 NHSTUB(CreateTask ,0x006b5714) //120 190 NHSTUB(DebugAssert ,0x006b5ac8) //107 191 NHSTUB(DeleteDirectory_Fut ,0xff826b04) //116 192 NHSTUB(DeleteSemaphore ,0x006b7a10) //120 193 NHSTUB(DoAELock ,0xff831dbc) //120 194 NHSTUB(DoAFLock ,0xff831a70) //120 195 NHSTUB(EnterToCompensationEVF ,0xff831ce4) //104 196 NHSTUB(ExecuteEventProcedure ,0xff833c28) //104 197 NHSTUB(ExitFromCompensationEVF ,0xff831d38) //104 198 NHSTUB(ExitTask ,0x006b5a68) //120 199 NHSTUB(ExpCtrlTool_StartContiAE ,0xff842648) //104 200 NHSTUB(ExpCtrlTool_StopContiAE ,0xff842880) //104 201 NHSTUB(Fclose_Fut ,0xff826b9c) //120 202 NHSTUB(Feof_Fut ,0xff826d88) // 1 203 NHSTUB(Fflush_Fut ,0xff826dc4) // 1 204 NHSTUB(Fgets_Fut ,0xff826cf0) // 6 205 NHSTUB(Fopen_Fut ,0xff826b5c) //120 206 NHSTUB(Fread_Fut ,0xff826c48) //120 207 NHSTUB(FreeUncacheableMemory ,0xff825d6c) //112 208 NHSTUB(Fseek_Fut ,0xff826d3c) //120 209 NHSTUB(Fwrite_Fut ,0xff826c9c) //120 210 NHSTUB(GetBatteryTemperature ,0xff86f7dc) //102 211 NHSTUB(GetCCDTemperature ,0xff86f764) //102 212 NHSTUB(GetCurrentAvValue ,0xff889584) //120 213 NHSTUB(GetCurrentShutterSpeed ,0xff919e94) //120 214 NHSTUB(GetUsableMaxAv ,0xff97ca24) //120 215 NHSTUB(GetUsableMinAv ,0xff97ca08) //120 216 NHSTUB(GetDrive_ClusterSize ,0xff82fc50) //122 217 NHSTUB(GetDrive_FreeClusters ,0xff830400) //119 218 NHSTUB(GetDrive_TotalClusters ,0xff8303d4) //122 219 NHSTUB(GetFocusLensSubjectDistance ,0xff9a0fbc) //102 220 NHSTUB(GetImageFolder ,0xff9844c8) //122 221 NHSTUB(GetKbdState ,0xff86bf14) //109 222 NHSTUB(GetMemInfo ,0xff823448) //115 223 NHSTUB(GetOpticalTemperature ,0xff86f854) //120 224 NHSTUB(GetParameterData ,0xff9c3e14) //101 225 NHSTUB(GetPropertyCase ,0xff89f494) //101 226 NHSTUB(GetSystemTime ,0xffaeb124) //120 227 NHSTUB(GetVRAMHPixelsSize ,0xff84e164) //120 228 NHSTUB(GetVRAMVPixelsSize ,0xff84e170) //120 229 NHSTUB(GetZoomLensCurrentPoint ,0xff9a3fd8) //120 230 NHSTUB(GetZoomLensCurrentPosition ,0xffadb804) //102 231 NHSTUB(GiveSemaphore ,0x006b7bb0) //120 232 NHSTUB(IsStrobeChargeCompleted ,0xff8ce3e8) //102 233 NHSTUB(LEDDrive ,0xff9aa520) //120 234 NHSTUB(LocalTime ,0x006b9ad8) //115 235 NHSTUB(LockMainPower ,0xff8a1f40) //120 236 NHSTUB(MakeSDCardBootable ,0xff830908) //105 237 NHSTUB(MoveFocusLensToDistance ,0xffb978c8) //102 238 NHSTUB(MoveIrisWithAv ,0xffae5d6c) //120 239 NHSTUB(MoveZoomLensWithPoint ,0xffae66c0) //120 240 NHSTUB(MoveOpticalZoomAt ,0xff8313e4) //109 241 NHSTUB(Open ,0xff8271ac) //120 242 NHSTUB(PB2Rec ,0xff858cf8) //104 243 NHSTUB(PT_MoveDigitalZoomToWide ,0xff9ab690) //102 244 NHSTUB(PT_MoveOpticalZoomAt ,0xff9ab660) //102 245 NHSTUB(PT_PlaySound ,0xff8b0020) //122 246 NHSTUB(PostLogicalEventForNotPowerType ,0xff8a13e4) //120 247 NHSTUB(PostLogicalEventToUI ,0xff8a143c) //120 248 NHSTUB(PutInNdFilter ,0xffae6480) //102 249 NHSTUB(PutOutNdFilter ,0xffae64a4) //102 250 NHSTUB(Read ,0xff823f04) //120 251 NHSTUB(ReadFastDir ,0xffaca21c) //115 252 NHSTUB(Rec2PB ,0xff857594) //104 253 NHSTUB(RenameFile_Fut ,0xff8269fc) //116 254 NHSTUB(Restart ,0xff836cbc) //122 255 NHSTUB(ScreenLock ,0xff8a5b54) //117 256 NHSTUB(ScreenUnlock ,0xff8a5ba8) //117 257 NHSTUB(SetAE_ShutterSpeed ,0xffb92c34) //102 258 NHSTUB(SetAutoShutdownTime ,0xff8a1fb4) //120 259 NHSTUB(SetCurrentCaptureModeType ,0xff8acb78) //120 260 NHSTUB(SetDate ,0xffb94a90) //120 261 NHSTUB(SetFileAttributes ,0xff82770c) // 6 262 NHSTUB(SetFileTimeStamp ,0xff827694) // 6 263 NHSTUB(SetLogicalEventActive ,0xff8a1aac) //120 264 NHSTUB(SetParameterData ,0xff9c3d78) //101 265 NHSTUB(SetPropertyCase ,0xff89f2b4) //101 266 NHSTUB(SetScriptMode ,0xff8a1b00) //120 267 NHSTUB(SleepTask ,0x006b8f0c) //120 268 NHSTUB(TakeSemaphore ,0x006b7ad4) //120 269 NHSTUB(UIFS_WriteFirmInfoToFile ,0xff9e1c40) //120 270 NHSTUB(UnlockAE ,0xff831de0) //120 271 NHSTUB(UnlockAF ,0xff831aa0) //120 272 NHSTUB(UnlockMainPower ,0xff8a1e98) //120 273 NHSTUB(VbattGet ,0xff82af1c) //120 274 NHSTUB(Write ,0xff827158) //120 275 NHSTUB(WriteSDCard ,0xff882ed8) //108 276 NHSTUB(_log ,0x006bdb80) //111 277 NHSTUB(_log10 ,0x006be0c0) //112 278 NHSTUB(_pow ,0x006be238) //121 279 NHSTUB(_sqrt ,0x006bfed8) // 6 280 NHSTUB(add_ptp_handler ,0xffa7f0e0) //121 281 NHSTUB(apex2us ,0xffa6a7f4) //121 282 NHSTUB(err_init_task ,0xff8247d0) //111 283 NHSTUB(exmem_alloc ,0xff83380c) //101 284 NHSTUB(exmem_ualloc ,0xff833674) //101 285 NHSTUB(exmem_ufree ,0xff8337b8) //101 286 NHSTUB(free ,0xff82507c) //112 287 NHSTUB(get_nd_value ,0xffad8eec) //123 288 NHSTUB(get_current_nd_value ,0xffad8e8c) //122 289 NHSTUB(get_current_deltasv ,0xff916908) //122 290 NHSTUB(GetCurrentDriveBaseSvValue ,0xff8c5d40) //120 291 NHSTUB(kbd_p1_f ,0xff82c1a4) //109 292 NHSTUB(kbd_p1_f_cont ,0xff82c1b0) //109 293 NHSTUB(kbd_p2_f ,0xff82b8b8) //109 294 NHSTUB(kbd_read_keys ,0xff82c154) //109 295 NHSTUB(kbd_read_keys_r2 ,0xff86b8c8) //109 296 NHSTUB(lseek ,0xff827524) //120 297 NHSTUB(malloc ,0xff825024) //112 298 NHSTUB(memcmp ,0xff824dfc) //120 299 NHSTUB(memcpy ,0xff8b4218) //120 300 NHSTUB(memset ,0xffa2cc80) //120 301 NHSTUB(mkdir ,0xff8277a4) //121 302 NHSTUB(mktime_ext ,0xff8b3aa0) // 1 303 NHSTUB(OpenFastDir ,0xffaca0c8) //115 304 NHSTUB(closedir ,0xffaca078) //121 305 NHSTUB(get_fstype ,0xff82fbc8) //122 306 NHSTUB(qsort ,0xffb4f8a0) // 6 307 NHSTUB(rand ,0xffa2cc50) //121 308 NHSTUB(realloc ,0xffa2ccfc) //115 309 NHSTUB(reboot_fw_update ,0xffaea7e0) //106 310 NHSTUB(set_control_event ,0xff8a176c) //111 311 NHSTUB(srand ,0xffa2cc44) //122 312 NHSTUB(stat ,0xff82756c) //109 313 NHSTUB(strcat ,0xff837614) // 1 314 NHSTUB(strchr ,0xff83769c) // 1 315 NHSTUB(strcmp ,0xff824ef8) //120 316 NHSTUB(strcpy ,0xff824de4) //120 317 NHSTUB(strftime ,0xff8b3aec) //113 318 NHSTUB(strlen ,0xff824f3c) //120 319 NHSTUB(strncmp ,0xff837650) // 1 320 NHSTUB(strncpy ,0xff827e84) // 1 321 NHSTUB(strrchr ,0xff8b4364) // 1 322 NHSTUB(strtol ,0xff837600) //101 323 NHSTUB(strtolx ,0xff837404) //109 324 DEF(task_CaptSeq ,0xff88e214) //120 325 DEF(task_DvlpSeqTask ,0xff9afa8c) //120 326 DEF(task_ExpDrv ,0xff8e79a4) //120 327 DEF(task_FileWrite ,0xffac8bb8) //120 328 DEF(task_InitFileModules ,0xff8598a8) //120 329 DEF(task_MovieRecord ,0xff9a96dc) //120 330 DEF(task_PhySw ,0xff82bc88) //120 331 DEF(hook_CreateTask ,0x006b5714) //105 332 NHSTUB(time ,0x006b92ac) //119 333 NHSTUB(vsprintf ,0xff827e44) //115 334 NHSTUB(EngDrvRead ,0xff82c2b4) //102 335 NHSTUB(PTM_GetCurrentItem ,0xff8a3bbc) //105 336 NHSTUB(CancelHPTimer ,0xff89bbdc) //119 337 NHSTUB(SetHPTimerAfterNow ,0xff89bad4) //119 338 NHSTUB(SS_MFOn ,0xff9ab724) //120 339 NHSTUB(SS_MFOff ,0xff9ab734) //120 340 NHSTUB(GetAdChValue ,0xff867eac) //120 341 NHSTUB(get_ptp_buf_size ,0xff9330f4) //122 342 NHSTUB(get_ptp_file_buf ,0xffa80d58) //121 343 NHSTUB(SetVideoOutType ,0xffb93458) //109 344 NHSTUB(GetVideoOutType ,0xffb933cc) //120