1 // !!! THIS FILE IS GENERATED. DO NOT EDIT. !!! 2 #include "stubs_asm.h" 3 4 // Camera info: 5 // Firmware Version 1.00J // Found @ 0xff81e41c, "1.00J" @ 0xff81e42d 6 // Firmware build timestamp: Aug 31 2004 13:14:19 7 // Canon DIGITAL IXUS 40 8 9 // Values for makefile.inc 10 // DIGIC = 20# DIGIC II 11 // PLATFORMID = 12479# (0x30bf) Found @ 0xffd7014e 12 // MAXRAMADDR = 0x01ffffff 13 // MEMISOSTART = 0x00072dc0 14 15 // Detected address ranges: 16 // ROM 0xff810000 - 0xffffffff (8323072 bytes) 17 // RAM data 0x00001900 - 0x00010460 copied from 0xffad76d0 ( 60256 bytes) 18 19 // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S' 20 // Name Address Rule % Comp to stubs_entry_2.S 21 //NHSTUB(AllocateMemory ,0xff81eb24) //120 *** != 0xff81f56c 22 NHSTUB(AllocateUncacheableMemory ,0xff815288) // 1 65% 23 // ERROR: Close is not found. //--- --- *** != 0xff871688 24 // ERROR: EnterToCompensationEVF is not found. //--- --- *** != 0xff93e1e0 25 // ERROR: ExecuteEventProcedure is not found. //--- --- *** != 0xff81756c 26 // ERROR: ExitFromCompensationEVF is not found. //--- --- *** != 0xff93e220 27 //NHSTUB(Feof_Fut ,0xff869d08) // 1 *** != 0xfff17328 28 // ALT: NHSTUB(Feof_Fut, 0xfff1732c) // 1 10/0 29 //NHSTUB(FreeMemory ,0xff81eb10) //120 *** != 0xff81f578 30 // ERROR: FreeUncacheableMemory is not found. //--- --- *** != 0xff8152bc 31 // ERROR: GetFocusLensSubjectDistance is not found. //--- --- *** != 0xffa5fa64 32 // ERROR: GetFocusLensSubjectDistanceFromLens is not found. //--- --- *** != 0xffa600d8 33 // ERROR: GetParameterData is not found. //--- --- *** != 0xff95a55c 34 NHSTUB(GetSystemTime ,0xff815638) // 1 96% 35 // ALT: NHSTUB(GetSystemTime, 0xfff05c38) // 1 26/1 36 // ALT: NHSTUB(GetSystemTime, 0xfff05c38) // 2 26/1 37 //NHSTUB(GetZoomLensCurrentPoint ,0xffa52174) //120 *** != 0xffa51244 38 // ERROR: Open is not found. //--- --- *** != 0xff87167c 39 // ERROR: PT_PlaySound is not found. //--- --- *** != 0xff94f2bc 40 NHSTUB(PutInNdFilter ,0xffa693dc) // 1 92% 41 // ALT: NHSTUB(PutInNdFilter, 0xffa6aa8c) // 1 25/2 42 // ALT: NHSTUB(PutInNdFilter, 0xffa6aad4) // 1 25/2 43 // ALT: NHSTUB(PutInNdFilter, 0xffa6aa8c) // 2 25/2 44 // ALT: NHSTUB(PutInNdFilter, 0xffa6aad4) // 2 25/2 45 NHSTUB(PutOutNdFilter ,0xffa69424) // 1 94% 46 // ERROR: Read is not found. //--- --- *** != 0xff8716e8 47 //NHSTUB(Remove ,0xff8c0700) // 3 52% *** != 0xff871694 48 //NHSTUB(Restart ,0xff824f50) // 1 80% *** != 0xff824f58 49 // ERROR: SetCurrentCaptureModeType is not found. //--- --- *** != 0x00000000 50 NHSTUB(SetFileAttributes ,0xff8717e0) // 1 58% 51 // ALT: NHSTUB(SetFileAttributes, 0xfff1bc4c) // 1 17/12 52 //NHSTUB(SetLogicalEventActive ,0xff955bbc) // 3 62% *** != 0x00000000 53 // ERROR: SetParameterData is not found. //--- --- *** != 0xff95a49c 54 // ERROR: SetScriptMode is not found. //--- --- *** != 0xff955c24 55 NHSTUB(UpdateMBROnFlash ,0xff8704d0) // 1 96% 56 // ERROR: VbattGet is not found. //--- --- *** != 0xffa5bcc4 57 // ERROR: Write is not found. //--- --- *** != 0xff8716f4 58 // ERROR: WriteSDCard is not found. //--- --- *** != 0x00000000 59 NHSTUB(add_ptp_handler ,0xffa13b10) // 1 96% 60 // ERROR: free is not found. //--- --- *** != 0xffac58d8 61 // ERROR: kbd_p1_f is not found. //--- --- *** != 0x00000000 62 // ERROR: kbd_p1_f_cont is not found. //--- --- *** != 0xff830ab4 63 // ERROR: kbd_p2_f is not found. //--- --- *** != 0x00000000 64 // ERROR: kbd_read_keys_r2 is not found. //--- --- *** != 0x00000000 65 //NHSTUB(kbd_pwr_off ,0xffa41bf0) // 1 83% *** != 0xffa417b0 66 // ALT: NHSTUB(kbd_pwr_off, 0xffa41c0c) // 1 5/1 67 // ALT: NHSTUB(kbd_pwr_off, 0xfff30af0) // 1 5/1 68 // ALT: NHSTUB(kbd_pwr_off, 0xfff30b0c) // 1 5/1 69 // ALT: NHSTUB(kbd_pwr_off, 0xfff30ff8) // 1 5/1 70 // ALT: NHSTUB(kbd_pwr_off, 0xfff31014) // 1 5/1 71 // ALT: NHSTUB(kbd_pwr_off, 0xffa417b0) // 3 5/1 72 // ALT: NHSTUB(kbd_pwr_off, 0xffa417cc) // 3 5/1 73 // ALT: NHSTUB(kbd_pwr_off, 0xffa4189c) // 3 5/1 74 // ALT: NHSTUB(kbd_pwr_off, 0xffa418b8) // 3 5/1 75 // ALT: NHSTUB(kbd_pwr_off, 0xffa41998) // 3 5/1 76 // ALT: NHSTUB(kbd_pwr_off, 0xffa419b4) // 3 5/1 77 // ALT: NHSTUB(kbd_pwr_off, 0xfff30bb8) // 3 5/1 78 // ALT: NHSTUB(kbd_pwr_off, 0xfff30bd4) // 3 5/1 79 // ALT: NHSTUB(kbd_pwr_off, 0xfff30ca4) // 3 5/1 80 // ALT: NHSTUB(kbd_pwr_off, 0xfff30cc0) // 3 5/1 81 // ALT: NHSTUB(kbd_pwr_off, 0xfff30da0) // 3 5/1 82 // ALT: NHSTUB(kbd_pwr_off, 0xfff30dbc) // 3 5/1 83 NHSTUB(kbd_pwr_on ,0xffa575d0) // 1 55% 84 // ALT: NHSTUB(kbd_pwr_on, 0xffa575fc) // 1 5/4 85 NHSTUB(malloc ,0xffac58cc) // 1 53% 86 // ALT: NHSTUB(malloc, 0xfff5997c) // 1 15/13 87 // ALT: NHSTUB(malloc, 0xfff5997c) // 2 15/13 88 NHSTUB(mkdir ,0xff871810) // 1 61% 89 // ALT: NHSTUB(mkdir, 0xff8718d0) // 1 19/12 90 // ALT: NHSTUB(mkdir, 0xfff1bc7c) // 1 19/12 91 // ALT: NHSTUB(mkdir, 0xfff1bd3c) // 1 19/12 92 NHSTUB(taskIdListGet ,0xffad0b78) // 1 82% 93 // ALT: NHSTUB(taskIdListGet, 0xfff73b14) // 1 24/5 94 NHSTUB(localtime ,0xffabceb4) // 1 93% 95 // ALT: NHSTUB(localtime, 0xfff50f64) // 1 27/2 96 // ERROR: memPartInfoGet is not found. //--- --- *** != 0x00000000 97 // ERROR: Mount_FileSystem is not found. //--- --- *** != 0xff8702e4 98 // ERROR: MakeAFScan is not found. //--- --- *** != 0x00000000 99 100 // Check of modemap from 'platform/CAMERA/shooting.c': 101 102 // Values below can be overridden in 'stubs_min.S': 103 //DEF(levent_table ,0xff9514f0) // Found @0xff9514f0, stubs_min = 0xff9514f0 (0xFF9514F0) 104 //DEF(FlashParamsTable ,0xff958138) // Found @0xff958138, stubs_min = 0xff958138 (0xFF958138) 105 DEF(fileio_semaphore ,0x00002e78) // Found @0xff86e884 106 DEF(exmem_alloc_table ,0x00001c38) // Found @0xff813218 107 DEF(exmem_types_table ,0xff812f70) // Found @0xff812f70 108 DEF_CONST(exmem_type_count ,0x0000000a) 109 DEF(imager_active ,0x00003314) // Found @0xff8c4c30 (0x3314 + 0) 110 DEF_CONST(uiprop_count ,0x00000037) // Found @0xff959d00 111 112 // Values below go in 'lib.c': 113 114 // Values below go in 'platform_camera.h': 115 //#define CAM_3ARG_DebugAssert 1 116 117 // Misc stuff 118 119 // EXMEM types: 120 // EXMEM_RAMDISK 0 121 // EXMEM_COM 1 122 // EXMEM_FORMATTER 2 123 // EXMEM_SHADING 3 124 // EXMEM_FAMODE 4 125 // EXMEM_FILESTORE 5 126 // EXMEM_MOVIE_REC 6 127 // EXMEM_MOVIE_PLY 7 128 // EXMEM_WIDE 8 129 // EXMEM_NARROW 9 130 131 // Stubs below matched 100%. 132 // Name Address Comp to stubs_entry_2.S 133 NHSTUB(CreateBinarySemaphore ,0xff822b58) //115 134 NHSTUB(CreateTask ,0xff823784) //120 135 NHSTUB(DebugAssert ,0xff814c10) //1100 136 NHSTUB(DeleteFile_Fut ,0xff8699b4) // 1 137 // ALT: NHSTUB(DeleteFile_Fut, 0xfff17058) // 1 10/0 138 NHSTUB(DeleteSemaphore ,0xff822d4c) //120 139 NHSTUB(DoAELock ,0xff93e29c) //120 140 NHSTUB(DoAFLock ,0xff93e07c) //120 141 NHSTUB(ExitTask ,0xff823b44) //120 142 NHSTUB(Fclose_Fut ,0xff869af4) // 1 143 NHSTUB(Fflush_Fut ,0xff869d40) // 1 144 NHSTUB(Fgets_Fut ,0xff869c78) // 1 145 // ALT: NHSTUB(Fgets_Fut, 0xfff1729c) // 1 15/0 146 NHSTUB(Fopen_Fut ,0xff869ab8) // 1 147 NHSTUB(Fread_Fut ,0xff869bd8) // 1 148 // ALT: NHSTUB(Fread_Fut, 0xfff171fc) // 1 25/0 149 NHSTUB(Fseek_Fut ,0xff869cc0) // 1 150 // ALT: NHSTUB(Fseek_Fut, 0xfff172e4) // 1 24/0 151 NHSTUB(Fwrite_Fut ,0xff869c28) // 1 152 // ALT: NHSTUB(Fwrite_Fut, 0xfff1724c) // 1 26/0 153 NHSTUB(GetBatteryTemperature ,0xffa48900) //102 154 NHSTUB(GetCCDTemperature ,0xffa488ec) //102 155 NHSTUB(GetCurrentAvValue ,0xffa692fc) //120 156 NHSTUB(GetCurrentShutterSpeed ,0xffa69074) //120 157 NHSTUB(GetDrive_ClusterSize ,0xff8707ec) //119 158 NHSTUB(GetDrive_FreeClusters ,0xff87086c) //1103 159 NHSTUB(GetDrive_TotalClusters ,0xff87082c) //119 160 NHSTUB(GetOpticalTemperature ,0xffa488d8) //120 161 // ERROR: GetPropertyCase is not found. //--- --- Overridden 162 NHSTUB(GetZoomLensCurrentPosition ,0xffa52180) //102 163 NHSTUB(GiveSemaphore ,0xff823144) //120 164 NHSTUB(IsStrobeChargeCompleted ,0xff941a14) //115 165 NHSTUB(LEDDrive ,0xffa63018) //120 166 NHSTUB(LocalTime ,0xff814bc4) //115 167 NHSTUB(LockMainPower ,0xff95619c) //120 168 NHSTUB(MakeDirectory_Fut ,0xff869a40) // 1 169 // ALT: NHSTUB(MakeDirectory_Fut, 0xfff170e4) // 1 25/0 170 NHSTUB(MoveFocusLensToDistance ,0xffa6b0e8) //102 171 NHSTUB(MoveZoomLensWithPoint ,0xffa52078) //120 172 NHSTUB(PostLogicalEventForNotPowerType ,0xff953a4c) //120 173 NHSTUB(PostLogicalEventToUI ,0xff953ad8) //120 174 NHSTUB(RefreshPhysicalScreen ,0xff96c550) //120 175 NHSTUB(RenameFile_Fut ,0xff869934) // 1 176 // ALT: NHSTUB(RenameFile_Fut, 0xfff16fd8) // 1 27/0 177 NHSTUB(SetAE_ShutterSpeed ,0xffa6d448) //102 178 NHSTUB(SetAutoShutdownTime ,0xff95608c) //120 179 NHSTUB(SetDate ,0xff99f720) //120 180 // ERROR: SetPropertyCase is not found. //--- --- Overridden 181 NHSTUB(SleepTask ,0xff8235e4) //120 182 NHSTUB(TakeSemaphore ,0xff822f5c) //1101 183 NHSTUB(TurnOffBackLight ,0xff99e594) // 1 184 NHSTUB(TurnOnBackLight ,0xff99e568) // 1 185 NHSTUB(TurnOnDisplay ,0xff92522c) //120 186 NHSTUB(TurnOffDisplay ,0xff925254) //120 187 NHSTUB(UnlockAE ,0xff93e2f0) //120 188 NHSTUB(UnlockAF ,0xff93e0dc) //120 189 NHSTUB(UnlockMainPower ,0xff956258) //120 190 NHSTUB(_log ,0xffaaebe0) //121 191 NHSTUB(_log10 ,0xffaaf288) //121 192 NHSTUB(_pow ,0xffaaf778) // 1 193 // ALT: NHSTUB(_pow, 0xfff41064) // 1 25/0 194 NHSTUB(_sqrt ,0xffab3ac4) // 1 195 // ALT: NHSTUB(_sqrt, 0xfff45834) // 1 24/0 196 NHSTUB(apex2us ,0xff8aa1c4) // 1 197 NHSTUB(close ,0xffac288c) // 1 198 // ALT: NHSTUB(close, 0xfff5693c) // 1 29/0 199 NHSTUB(exmem_ualloc ,0xff813a1c) //122 200 NHSTUB(exmem_ufree ,0xff813a68) //122 201 NHSTUB(get_nd_value ,0xffa4a5d8) //120 202 NHSTUB(get_current_nd_value ,0xffa4a5c4) //120 203 NHSTUB(get_current_deltasv ,0xff8ab658) //122 204 NHSTUB(GetCurrentDriveBaseSvValue ,0xff8b4b84) //122 205 NHSTUB(lseek ,0xffac29d0) // 1 206 // ALT: NHSTUB(lseek, 0xfff56a80) // 1 28/0 207 NHSTUB(memcmp ,0xffabc294) //120 208 NHSTUB(memcpy ,0xffabc2d0) // 1 209 // ALT: NHSTUB(memcpy, 0xfff50380) // 1 23/0 210 NHSTUB(memset ,0xffabc348) //120 211 NHSTUB(open ,0xffac2ed0) // 1 212 // ALT: NHSTUB(open, 0xfff56f80) // 1 26/0 213 NHSTUB(closedir ,0xffabe6c0) // 1 214 // ALT: NHSTUB(closedir, 0xfff52770) // 1 26/0 215 NHSTUB(qsort ,0xffabbaf4) // 1 216 // ALT: NHSTUB(qsort, 0xfff4fba4) // 1 13/0 217 NHSTUB(rand ,0xffabbb18) // 1 218 // ALT: NHSTUB(rand, 0xfff4fbc8) // 1 8/0 219 NHSTUB(srand ,0xffabbb3c) // 1 220 // ALT: NHSTUB(srand, 0xfff4fbec) // 1 4/0 221 NHSTUB(stat ,0xffabe788) // 1 222 // ALT: NHSTUB(stat, 0xfff52838) // 1 24/0 223 NHSTUB(strcat ,0xffabc368) // 1 224 // ALT: NHSTUB(strcat, 0xfff50418) // 1 8/0 225 NHSTUB(strchr ,0xffabc394) // 1 226 // ALT: NHSTUB(strchr, 0xfff50444) // 1 7/0 227 NHSTUB(strcmp ,0xffabc3b8) //120 228 NHSTUB(strcpy ,0xffabc54c) //120 229 NHSTUB(strftime ,0xffabdbd4) // 1 230 // ALT: NHSTUB(strftime, 0xfff51c84) // 1 6/0 231 NHSTUB(strlen ,0xffabc6b0) //120 232 NHSTUB(strncmp ,0xffabc714) // 1 233 // ALT: NHSTUB(strncmp, 0xfff507c4) // 1 11/0 234 NHSTUB(strncpy ,0xffabc758) // 1 235 // ALT: NHSTUB(strncpy, 0xfff50808) // 1 24/0 236 NHSTUB(strrchr ,0xffabc7dc) // 1 237 // ALT: NHSTUB(strrchr, 0xfff5088c) // 1 8/0 238 NHSTUB(strtol ,0xffabbf30) // 1 239 // ALT: NHSTUB(strtol, 0xfff4ffe0) // 1 26/0 240 NHSTUB(isdigit ,0xffab85a4) // 1 241 // ALT: NHSTUB(isdigit, 0xfff4c654) // 1 4/0 242 NHSTUB(isspace ,0xffab861c) // 1 243 // ALT: NHSTUB(isspace, 0xfff4c6cc) // 1 4/0 244 NHSTUB(isalpha ,0xffab8574) // 1 245 // ALT: NHSTUB(isalpha, 0xfff4c624) // 1 4/0 246 NHSTUB(isupper ,0xffab8634) // 1 247 // ALT: NHSTUB(isupper, 0xfff4c6e4) // 1 4/0 248 NHSTUB(islower ,0xffab85d4) // 1 249 // ALT: NHSTUB(islower, 0xfff4c684) // 1 4/0 250 NHSTUB(ispunct ,0xffab8604) // 1 251 // ALT: NHSTUB(ispunct, 0xfff4c6b4) // 1 4/0 252 NHSTUB(isxdigit ,0xffab864c) // 1 253 // ALT: NHSTUB(isxdigit, 0xfff4c6fc) // 1 4/0 254 NHSTUB(toupper ,0xffab8674) // 1 255 // ALT: NHSTUB(toupper, 0xfff4c724) // 1 4/0 256 NHSTUB(tolower ,0xffab8664) // 1 257 // ALT: NHSTUB(tolower, 0xfff4c714) // 1 4/0 258 NHSTUB(taskLock ,0xffad1234) // 1 259 // ALT: NHSTUB(taskLock, 0xfff741d0) // 1 31/0 260 NHSTUB(taskUnlock ,0xffad12dc) // 1 261 // ALT: NHSTUB(taskUnlock, 0xfff74278) // 1 31/0 262 NHSTUB(taskName ,0xffad0a70) // 1 263 // ALT: NHSTUB(taskName, 0xfff73a0c) // 1 25/0 264 NHSTUB(errnoOfTaskGet ,0xffabee8c) // 1 265 // ALT: NHSTUB(errnoOfTaskGet, 0xfff52f3c) // 1 15/0 266 NHSTUB(readdir ,0xffabe68c) // 1 267 // ALT: NHSTUB(readdir, 0xfff5273c) // 1 11/0 268 NHSTUB(strtoul ,0xffabc0d8) // 1 269 // ALT: NHSTUB(strtoul, 0xfff50188) // 1 26/0 270 NHSTUB(strpbrk ,0xffabc7a0) // 1 271 // ALT: NHSTUB(strpbrk, 0xfff50850) // 1 19/0 272 NHSTUB(utime ,0xffabe81c) // 1 273 // ALT: NHSTUB(utime, 0xfff528cc) // 1 26/0 274 NHSTUB(mktime ,0xffabd07c) // 1 275 // ALT: NHSTUB(mktime, 0xfff5112c) // 1 28/0 276 NHSTUB(opendir ,0xffabe6f4) // 1 277 // ALT: NHSTUB(opendir, 0xfff527a4) // 1 29/0 278 NHSTUB(memchr ,0xffabc260) // 1 279 // ALT: NHSTUB(memchr, 0xfff50310) // 1 19/0 280 NHSTUB(iosDrvInstall ,0xffac3d70) // 1 281 // ALT: NHSTUB(iosDrvInstall, 0xfff57e20) // 1 30/0 282 NHSTUB(iosDevAdd ,0xffac3aac) // 1 283 // ALT: NHSTUB(iosDevAdd, 0xfff57b5c) // 1 28/0 284 NHSTUB(iosDevDelete ,0xffac3a84) // 1 285 // ALT: NHSTUB(iosDevDelete, 0xfff57b34) // 1 28/0 286 NHSTUB(GetCurrentTargetDistance ,0xffa6ae58) // 1 287 NHSTUB(taskCreateHookAdd ,0xffac8a18) // 1 288 // ALT: NHSTUB(taskCreateHookAdd, 0xfff5df1c) // 1 29/0 289 NHSTUB(taskDeleteHookAdd ,0xffac8954) // 1 290 // ALT: NHSTUB(taskDeleteHookAdd, 0xfff5de58) // 1 28/0 291 NHSTUB(Unmount_FileSystem ,0xff870344) // 1 292 // ALT: NHSTUB(Unmount_FileSystem, 0xfff1aab4) // 1 18/0 293 NHSTUB(taskSuspend ,0xffad0c80) // 1 294 // ALT: NHSTUB(taskSuspend, 0xfff73c1c) // 1 31/0 295 NHSTUB(taskResume ,0xffad0e54) // 1 296 // ALT: NHSTUB(taskResume, 0xfff73df0) // 1 31/0 297 //NHSTUB(time ,0xffabdc00) // 1 Overridden 298 // ALT: NHSTUB(time, 0xfff51cb0) // 1 25/0 299 NHSTUB(vsprintf ,0xffabffe0) // 1 300 // ALT: NHSTUB(vsprintf, 0xfff54090) // 1 13/0 301 NHSTUB(EngDrvRead ,0xff885974) //102 302 NHSTUB(PTM_GetCurrentItem ,0xff958b08) //102 303 NHSTUB(CancelHPTimer ,0xff8166d4) //119 304 NHSTUB(SetHPTimerAfterNow ,0xff816260) //119 305 NHSTUB(GetAdChValue ,0xffa425e0) //120