root/platform/sx530hs/sub/100a/stubs_entry.S

/* [<][>][^][v][top][bottom][index][help] */
   1 // !!! THIS FILE IS GENERATED. DO NOT EDIT. !!!
   2 #include "stubs_asm.h"
   3 
   4 // Camera info:
   5 //   DRYOS R55 (DRYOS version 2.3, release #0055+p6)
   6 //   Firmware Ver GM1.00A   // Found @ 0xff0ae9e8, "GM1.00A" @ 0xff0ae9f5
   7 //   Firmware build timestamp: Jul 18 2014 17:10:54
   8 //   Canon PowerShot SX530 HS
   9 
  10 // Values for makefile.inc
  11 //   PLATFORMOSVER = 55
  12 //   PLATFORMID = 12959 (0x329f) // Found @ 0xfffe0040
  13 //   MAXRAMADDR = 0x0fffffff
  14 //   MEMISOSTART = 0x002ff248
  15 //   KEYSYS = d4h                // Found @ 0xff0144a4
  16 //   NEED_ENCODED_DISKBOOT = 14   // Found @ 0xff0144b4
  17 //   ARAM_HEAP_START = 0x60e000  // Found @ 0xff22c030
  18 //   ARAM_HEAP_SIZE  = 0x22000   // Found @ 0xff22bff0
  19 
  20 // Detected address ranges:
  21 // ROM      0xff010000 - 0xffffffff (16711680 bytes)
  22 // RAM code 0x006b1000 - 0x006e28c4 copied from 0xff8c92a8 ( 202948 bytes)
  23 // RAM data 0x00001900 - 0x00019890 copied from 0xff8b1318 (  98192 bytes)
  24 
  25 // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S'
  26 //    Name                                     Address      Rule  %  Comp to stubs_entry_2.S
  27 //NHSTUB(DeleteFile_Fut                       ,0xff026928) //  1 90%        == 0xff026928
  28 //NHSTUB(GetFocusLensSubjectDistanceFromLens  ,0xff203998) //  3 90%        == 0xff203998
  29 // ERROR: MakeDirectory_Fut is not found.                  //--- ---    *** != 0xff027438
  30 // ERROR: RefreshPhysicalScreen is not found.              //--- ---    *** != 0x00000000
  31 
  32 // Check of modemap from 'platform/CAMERA/shooting.c':
  33 // Firmware modemap table found @ff3dd620 -> ff7ddb80
  34 // Mode 16948 in firmware but not in current modemap
  35 // Mode 16950 in firmware but not in current modemap
  36 
  37 // Values below can be overridden in 'stubs_min.S':
  38 DEF(physw_status                            ,0x0001a644) // Found @0xff02bf9c
  39 DEF(physw_run                               ,0x00001ca0) // Found @0xff02ba38
  40 DEF(physw_sleep_delay                       ,0x00001ca8) // Found @0xff02ba38
  41 DEF(levent_table                            ,0xff698114) // Found @0xff698114
  42 DEF(FlashParamsTable                        ,0xff7dded0) // Found @0xff7dded0
  43 DEF(movie_status                            ,0x0000a5d4) // Found @0xff2136dc
  44 //DEF(video_compression_rate                  ,0x0000a584) // Found @0xff214144, ** != ** stubs_min = 0x0000a604 (0xa588+0x7c)
  45 DEF(full_screen_refresh                     ,0x0000b5bc) // Found @0xff23ea58
  46 DEF(canon_menu_active                       ,0x000040e4) // Found @0xff0b8fcc
  47 DEF(canon_shoot_menu_active                 ,0x0000d829) // Found @0xff2d031c
  48 DEF(zoom_status                             ,0x0000fa04) // Found @0xff35b360
  49 DEF(some_flag_for_af_scan                   ,0x000281d4) // Found @0xff3d6dd0
  50 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
  51 // each entry contains 2 int value(s), the first is the zoom focus length.
  52 // there are 201 entries in the table - set NUM_FL to 201
  53 DEF(focus_len_table                         ,0xfffee354) // Found @0xfffee354
  54 DEF(zoom_busy                               ,0x00003870) // Found @0xff0950f0
  55 DEF(focus_busy                              ,0x00009fcc) // Found @0xff2022a0
  56 // Palette colour tables  found @ 0xff69ede4
  57 // Camera has 2 RAW buffers @ 0x44000000 & 0x4a8013e0
  58 //  Note: active buffer --> raw_buffers[active_raw_buffer]
  59 //        other buffer  --> raw_buffers[active_raw_buffer^1]
  60 DEF(raw_buffers                             ,0xff650628) // Found @0xff650628
  61 DEF(active_raw_buffer                       ,0x00003a9c) // Found @0xff09ecf0
  62 DEF(fileio_semaphore                        ,0x00001d34) // Found @0xff02ec08
  63 DEF(exmem_alloc_table                       ,0x0001ba24) // Found @0xff034100
  64 DEF(exmem_types_table                       ,0xff8b17e4) // Found @0x00001dcc
  65 DEF_CONST(exmem_type_count                  ,0x0000001f)
  66 DEF(imager_active                           ,0x000020a8) // Found @0xff04c7d8 (0x20a4 + 4)
  67 DEF_CONST(uiprop_count                      ,0x000000c8) // Found @0xff2346b8
  68 
  69 // Values below go in 'lib.c':
  70 //void *vid_get_bitmap_fb()        { return (void*)0x40711000; }             // Found @0xff06e5f8
  71 //void *vid_get_viewport_fb()      { return (void*)0x40866b80; }             // Found @0xff4d2e04
  72 DEF(jpeg_count_str                          ,0x0018b064) // Found @0xff2aff5c
  73 //char *camera_jpeg_count_str()    { return (char*)0x0018b064; }             // Found @0xff2aff5c
  74 //int get_flash_params_count(void) { return 0xdc; }                          // Found @0xff23513c
  75 
  76 // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
  77 //#define SD_READONLY_FLAG    0x02000000 // Found @0xff63ef2c, levent 0x20a
  78 //#define SD_READONLY_IDX     2
  79 //#define USB_MASK            0x10000000 // Found @0xff63ef3c, levent 0x202
  80 //#define USB_IDX             2
  81 //#define BATTCOVER_FLAG      0x04000000 // Found @0xff63ef34, levent 0x205
  82 //#define BATTCOVER_IDX       2
  83 //#define ANALOG_AV_FLAG      0x00000004 // Found @0xff63eec4, levent 0x200 (non-inverted logic)
  84 //#define ANALOG_AV_IDX       2
  85 
  86 // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  87 //static KeyMap keymap[] = {
  88 //    { 0, KEY_UP              ,0x00000400 }, // Found @0xff63ee74, levent 0x06
  89 //    { 0, KEY_DOWN            ,0x00000800 }, // Found @0xff63ee7c, levent 0x07
  90 //    { 0, KEY_SET             ,0x00001000 }, // Found @0xff63ee84, levent 0x0a
  91 //    { 0, KEY_RIGHT           ,0x00002000 }, // Found @0xff63ee8c, levent 0x09
  92 //    { 0, KEY_LEFT            ,0x00004000 }, // Found @0xff63ee94, levent 0x08
  93 //    { 0, KEY_MENU            ,0x00008000 }, // Found @0xff63ee9c, levent 0x14
  94 //    { 0, KEY_VIDEO           ,0x00020000 }, // Found @0xff63eeac, levent 0x02
  95 //    { 2, KEY_SHOOT_FULL      ,0x00000060 }, // Found @0xff63eedc, levent 0x01
  96 //    { 2, KEY_SHOOT_FULL_ONLY ,0x00000040 }, // Found @0xff63eedc, levent 0x01
  97 //    { 2, KEY_SHOOT_HALF      ,0x00000020 }, // Found @0xff63eed4, levent 0x00
  98 //    { 2, KEY_POWER           ,0x00000080 }, // Found @0xff63eee4, levent 0x100
  99 //    { 2, KEY_PLAYBACK        ,0x00000100 }, // Found @0xff63eeec, levent 0x101
 100 //    { 0, 0, 0 }
 101 //};
 102 
 103 // Values below go in 'platform_camera.h':
 104 //#define CAM_DRYOS         1
 105 //#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
 106 //#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher
 107 //#define CAM_RAW_ROWPIX    4768 // Found @0xff1d3478
 108 //#define CAM_RAW_ROWS      3516 // Found @0xff1d3484
 109 //#undef  CAM_UNCACHED_BIT
 110 //#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff025c5c
 111 //#define CAM_DATE_FOLDER_NAMING 0x080 // Found @0xff395940 (pass as 3rd param to GetImageFolder)
 112 //#define PARAM_CAMERA_NAME 3 // Found @0xff7dcac8
 113 //#define CAM_3ARG_DebugAssert 1
 114 
 115 // Known propcases
 116 // //      PROPCASE_AFSTEP 13
 117 // #define PROPCASE_FOCUS_STATE 18
 118 // #define PROPCASE_AV 23
 119 // #define PROPCASE_BV 35
 120 // //      PROPCASE_DELTA_DIGITALGAIN 79
 121 // #define PROPCASE_DELTA_SV 81
 122 // //      PROPCASE_DELTA_ND 82
 123 // #define PROPCASE_EV_CORRECTION_2 213
 124 // #define PROPCASE_ORIENTATION_SENSOR 225
 125 // #define PROPCASE_SV_MARKET 252
 126 // //      PROPCASE_SVFIX 253
 127 // #define PROPCASE_TV 269
 128 // Guessed propset: 8
 129 
 130 // Misc stuff
 131 DEF(ctypes, 0xff63aed0)
 132 
 133 // EXMEM types:
 134 // EXMEM_RAMDISK        0
 135 // EXMEM_COM            1
 136 // EXMEM_FORMATTER      2
 137 // EXMEM_SHADING        3
 138 // EXMEM_FAMODE         4
 139 // EXMEM_FIRMUP         5
 140 // EXMEM_FIRMUP_VRAM    6
 141 // EXMEM_FIRMUP_INFLATE 7
 142 // EXMEM_FIRMUP_PICTURESTYLE 8
 143 // EXMEM_DVLPWORK       9
 144 // EXMEM_EVF            10
 145 // EXMEM_SCRIPT         11
 146 // EXMEM_GPS            12
 147 // EXMEM_FACEAUTH       13
 148 // EXMEM_OHYEARLOG      14
 149 // EXMEM_WIFI           15
 150 // EXMEM_LENS_FIRMUP    16
 151 // EXMEM_LENS_COMPENSATION 17
 152 // EXMEM_FILESTORE      18
 153 // EXMEM_MOVIE_REC      19
 154 // EXMEM_MOVIE_PLY      20
 155 // EXMEM_WIFI_RESIZE    21
 156 // EXMEM_PCEVF          22
 157 // EXMEM_WIDE           23
 158 // EXMEM_NARROW         24
 159 // EXMEM_AUTO_GIS_MODE  25
 160 // EXMEM_NP_GIS_MODE    26
 161 // EXMEM_TRIPODHDR_MODE 27
 162 // EXMEM_HSHQ_MODE      28
 163 // EXMEM_CRAW_REC       29
 164 // EXMEM_CREATIVE_SHOT  30
 165 
 166 // ISR flag: 0x1944, pointer to current task's control block: 0x1940
 167 // pointer to TCB area: 0x19c4, found @ 0xff8ca850
 168 
 169 // LED table init @ 0xff19eb00
 170 // LED #1: 0xc022d034 (#100 in GPIO table), offset 0x98
 171 // LED #2: 0xc022d1fc (#97 in GPIO table), offset 0x8
 172 // GPIO table @ 0xff63e8ac
 173 
 174 // Stubs below matched 100%.
 175 //    Name                                     Address                Comp to stubs_entry_2.S
 176 NHSTUB(AllocateUncacheableMemory              ,0xff025c18) //112
 177 NHSTUB(Close                                  ,0xff026f9c) //120
 178 NHSTUB(CreateBinarySemaphore                  ,0x006b7890) //115
 179 NHSTUB(CreateTask                             ,0x006b5658) //120
 180 NHSTUB(DebugAssert                            ,0x006b5a04) //107
 181 NHSTUB(DeleteDirectory_Fut                    ,0xff02699c) //116
 182 NHSTUB(DoAELock                               ,0xff0329d8) //120
 183 NHSTUB(DoAFLock                               ,0xff0325cc) //120
 184 NHSTUB(EnterToCompensationEVF                 ,0xff0328c8) //104
 185 NHSTUB(ExecuteEventProcedure                  ,0xff034be8) //104
 186 NHSTUB(ExitFromCompensationEVF                ,0xff032978) //104
 187 NHSTUB(ExitTask                               ,0x006b59a0) //120
 188 NHSTUB(ExpCtrlTool_StartContiAE               ,0xff044938) //104
 189 NHSTUB(ExpCtrlTool_StopContiAE                ,0xff044ad0) //104
 190 NHSTUB(Fclose_Fut                             ,0xff026a34) //120
 191 NHSTUB(Feof_Fut                               ,0xff026c20) //  1
 192 NHSTUB(Fflush_Fut                             ,0xff026c5c) //  1
 193 NHSTUB(Fgets_Fut                              ,0xff026b88) //  6
 194 NHSTUB(Fopen_Fut                              ,0xff0269f4) //120
 195 NHSTUB(Fread_Fut                              ,0xff026ae0) //120
 196 NHSTUB(FreeUncacheableMemory                  ,0xff025c54) //112
 197 NHSTUB(Fseek_Fut                              ,0xff026bd4) //120
 198 NHSTUB(Fwrite_Fut                             ,0xff026b34) //120
 199 NHSTUB(GetBatteryTemperature                  ,0xff078c94) //102
 200 NHSTUB(GetCCDTemperature                      ,0xff078c1c) //102
 201 NHSTUB(GetCurrentAvValue                      ,0xff092c20) //120
 202 NHSTUB(GetCurrentShutterSpeed                 ,0xff0df23c) //120
 203 NHSTUB(GetUsableMaxAv                         ,0xff1d3da8) //120
 204 NHSTUB(GetUsableMinAv                         ,0xff1d3d8c) //120
 205 NHSTUB(GetDrive_ClusterSize                   ,0xff03029c) //122
 206 NHSTUB(GetDrive_FreeClusters                  ,0xff030aa8) //119
 207 NHSTUB(GetDrive_TotalClusters                 ,0xff030a7c) //122
 208 NHSTUB(GetFocusLensSubjectDistance            ,0xff2035b4) //102
 209 NHSTUB(GetImageFolder                         ,0xff1db888) //122
 210 NHSTUB(GetKbdState                            ,0xff074658) //109
 211 NHSTUB(GetMemInfo                             ,0xff023408) //115
 212 NHSTUB(GetOpticalTemperature                  ,0xff078d0c) //120
 213 NHSTUB(GetParameterData                       ,0xff2350f8) //101
 214 NHSTUB(GetPropertyCase                        ,0xff0b02f0) //101
 215 NHSTUB(GetSystemTime                          ,0xff3da5f4) //120
 216 NHSTUB(GetVRAMHPixelsSize                     ,0xff0513e0) //120
 217 NHSTUB(GetVRAMVPixelsSize                     ,0xff0513ec) //120
 218 NHSTUB(GetZoomLensCurrentPoint                ,0xff095578) //120
 219 NHSTUB(GetZoomLensCurrentPosition             ,0xff20a72c) //102
 220 NHSTUB(GiveSemaphore                          ,0x006b7b10) //120
 221 NHSTUB(IsStrobeChargeCompleted                ,0xff100250) //102
 222 NHSTUB(LEDDrive                               ,0xff21de6c) //120
 223 NHSTUB(LocalTime                              ,0x006b98e8) //115
 224 NHSTUB(LockMainPower                          ,0xff0b4bc8) //120
 225 NHSTUB(MakeSDCardBootable                     ,0xff030e70) //105
 226 NHSTUB(MoveFocusLensToDistance                ,0xff4d69f0) //102
 227 NHSTUB(MoveIrisWithAv                         ,0xff3d4d7c) //120
 228 NHSTUB(MoveZoomLensWithPoint                  ,0xff3d57f4) //120
 229 NHSTUB(Open                                   ,0xff026ed4) //120
 230 NHSTUB(PB2Rec                                 ,0xff05effc) //104
 231 NHSTUB(PT_MoveDigitalZoomToWide               ,0xff21f014) //102
 232 NHSTUB(PT_MoveOpticalZoomAt                   ,0xff21efe4) //102
 233 NHSTUB(PT_PlaySound                           ,0xff0c69fc) //122
 234 NHSTUB(PostLogicalEventForNotPowerType        ,0xff0b2188) //120
 235 NHSTUB(PostLogicalEventToUI                   ,0xff0b21d4) //120
 236 NHSTUB(PutInNdFilter                          ,0xff4d71bc) //102
 237 NHSTUB(PutOutNdFilter                         ,0xff4d71f8) //102
 238 NHSTUB(Read                                   ,0xff023ec4) //120
 239 NHSTUB(ReadFastDir                            ,0xff3b0c88) //115
 240 NHSTUB(Rec2PB                                 ,0xff05f054) //104
 241 NHSTUB(RenameFile_Fut                         ,0xff026894) //116
 242 NHSTUB(Restart                                ,0xff037c88) //122
 243 NHSTUB(ScreenLock                             ,0xff0b87e0) //117
 244 NHSTUB(ScreenUnlock                           ,0xff0b8798) //117
 245 NHSTUB(SetAE_ShutterSpeed                     ,0xff4d1be0) //102
 246 NHSTUB(SetAutoShutdownTime                    ,0xff0b4c3c) //120
 247 NHSTUB(SetCurrentCaptureModeType              ,0xff0c3230) //120
 248 NHSTUB(SetFileAttributes                      ,0xff0273a0) //  6
 249 NHSTUB(SetFileTimeStamp                       ,0xff027328) //  6
 250 NHSTUB(SetLogicalEventActive                  ,0xff0b2830) //120
 251 NHSTUB(SetParameterData                       ,0xff23505c) //101
 252 NHSTUB(SetPropertyCase                        ,0xff0b0120) //101
 253 NHSTUB(SetScriptMode                          ,0xff0b2884) //120
 254 NHSTUB(SleepTask                              ,0x006b8dcc) //120
 255 NHSTUB(TakeSemaphore                          ,0x006b7a38) //120
 256 NHSTUB(TurnOffBackLight                       ,0xff0c6108) //104
 257 NHSTUB(TurnOnBackLight                        ,0xff0c60f0) //104
 258 NHSTUB(TurnOnDisplay                          ,0xff06e9f0) //120
 259 NHSTUB(TurnOffDisplay                         ,0xff06ea00) //120
 260 NHSTUB(UIFS_WriteFirmInfoToFile               ,0xff254890) //120
 261 NHSTUB(UnlockAE                               ,0xff0329fc) //120
 262 NHSTUB(UnlockAF                               ,0xff0325fc) //120
 263 NHSTUB(UnlockMainPower                        ,0xff0b4b20) //120
 264 NHSTUB(VbattGet                               ,0xff02ab3c) //120
 265 NHSTUB(Write                                  ,0xff026ff0) //120
 266 NHSTUB(WriteSDCard                            ,0x006ba7ec) //108
 267 NHSTUB(_log                                   ,0x006ddca0) //111
 268 NHSTUB(_log10                                 ,0x006de1e0) //112
 269 NHSTUB(_pow                                   ,0x006de358) //121
 270 NHSTUB(_sqrt                                  ,0x006e0430) //  6
 271 NHSTUB(add_ptp_handler                        ,0xff156b64) //121
 272 NHSTUB(apex2us                                ,0xff2f6810) //121
 273 NHSTUB(close                                  ,0xff023d20) //109
 274 NHSTUB(err_init_task                          ,0xff0247a0) //111
 275 NHSTUB(exmem_alloc                            ,0xff0347d0) //101
 276 NHSTUB(exmem_free                             ,0xff034838) //101
 277 NHSTUB(free                                   ,0xff02504c) //112
 278 NHSTUB(kbd_p1_f                               ,0xff02bfec) //109
 279 NHSTUB(kbd_p1_f_cont                          ,0xff02bff8) //109
 280 NHSTUB(kbd_p2_f                               ,0xff02b6d0) //109
 281 NHSTUB(kbd_read_keys                          ,0xff02bf9c) //109
 282 NHSTUB(kbd_read_keys_r2                       ,0xff073dcc) //109
 283 NHSTUB(lseek                                  ,0xff0271b8) //120
 284 NHSTUB(malloc                                 ,0xff024ff4) //112
 285 NHSTUB(memcmp                                 ,0xff024dcc) //120
 286 NHSTUB(memcpy                                 ,0xff0cbe3c) //120
 287 NHSTUB(memset                                 ,0xff2ef904) //120
 288 NHSTUB(mkdir                                  ,0xff027438) //121
 289 NHSTUB(mktime_ext                             ,0xff0cb59c) //  1
 290 NHSTUB(open                                   ,0xff023c70) //109
 291 NHSTUB(OpenFastDir                            ,0xff3b0b34) //115
 292 NHSTUB(closedir                               ,0xff3b0ae4) //121
 293 NHSTUB(get_fstype                             ,0xff030214) //122
 294 NHSTUB(qsort                                  ,0xff2ef8a4) //  6
 295 NHSTUB(rand                                   ,0xff0cbe0c) //121
 296 NHSTUB(realloc                                ,0xff2ef980) //115
 297 NHSTUB(reboot_fw_update                       ,0xff3d9c68) //106
 298 NHSTUB(set_control_event                      ,0xff0b24f0) //111
 299 NHSTUB(srand                                  ,0xff0cbe00) //122
 300 NHSTUB(stat                                   ,0xff027200) //109
 301 NHSTUB(strcat                                 ,0xff038638) //  1
 302 NHSTUB(strchr                                 ,0xff0386c0) //  1
 303 NHSTUB(strcmp                                 ,0xff024ec8) //120
 304 NHSTUB(strcpy                                 ,0xff024db4) //120
 305 NHSTUB(strftime                               ,0xff0cb61c) //113
 306 NHSTUB(strlen                                 ,0xff024f0c) //120
 307 NHSTUB(strncmp                                ,0xff038674) //  1
 308 NHSTUB(strncpy                                ,0xff027b30) //  1
 309 NHSTUB(strrchr                                ,0xff0cbf88) //  1
 310 NHSTUB(strtol                                 ,0xff038624) //101
 311 NHSTUB(strtolx                                ,0xff038428) //109
 312    DEF(task_CaptSeq                           ,0xff09c8c4) //120
 313    DEF(task_DvlpSeqTask                       ,0xff223630) //120
 314    DEF(task_ExpDrv                            ,0xff0f7824) //120
 315    DEF(task_FileWrite                         ,0xff3af214) //120
 316    DEF(task_InitFileModules                   ,0xff061c70) //120
 317    DEF(task_MovieRecord                       ,0xff21537c) //120
 318    DEF(task_PhySw                             ,0xff02ba34) //120
 319    DEF(task_RotaryEncoder                     ,0xff0748a0) //120
 320    DEF(hook_CreateTask                        ,0x006b5658) //105
 321 NHSTUB(time                                   ,0x006b917c) //119
 322 NHSTUB(vsprintf                               ,0xff027af0) //115
 323 NHSTUB(EngDrvRead                             ,0xff02c0bc) //102
 324 NHSTUB(PTM_GetCurrentItem                     ,0xff0b6780) //105
 325 NHSTUB(DisableISDriveError                    ,0xff3d6300) //120
 326 NHSTUB(CancelHPTimer                          ,0xff0aca5c) //119
 327 NHSTUB(SetHPTimerAfterNow                     ,0xff0ac954) //119
 328 NHSTUB(SS_MFOn                                ,0xff21f0a8) //120
 329 NHSTUB(SS_MFOff                               ,0xff21f0b8) //120
 330 NHSTUB(GetAdChValue                           ,0xff06fdbc) //120
 331 NHSTUB(EnableHDMIPower                        ,0xff072840) //123
 332 NHSTUB(DisableHDMIPower                       ,0xff072894) //123
 333 NHSTUB(get_ptp_buf_size                       ,0xff148e08) //122
 334 NHSTUB(get_ptp_file_buf                       ,0xff34b87c) //121

/* [<][>][^][v][top][bottom][index][help] */