root/platform/sx430is/sub/100b/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 R59 (DRYOS version 2.3, release #0059+p3)
   6 //   Firmware Ver GM1.00B   // Found @ 0xff0acddc, "GM1.00B" @ 0xff0acde9
   7 //   Firmware build timestamp: Nov 18 2016 10:09:29
   8 //   Canon PowerShot SX430 IS
   9 
  10 // Values for makefile.inc
  11 //   DIGIC = 41# DIGIC 4+
  12 //   PLATFORMOSVER = 59
  13 //   PLATFORMID = 13013# (0x32d5) Found @ 0xfffe0270
  14 //   MAXRAMADDR = 0x0fffffff
  15 //   MEMISOSTART = 0x002b9464
  16 //   KEYSYS = d4j# Found @ 0xff014590
  17 //   NEED_ENCODED_DISKBOOT = 17# Found @ 0xff0145a0
  18 //   ARAM_HEAP_START = 0x9400001# Found @ 0xff201610
  19 //   ARAM_HEAP_SIZE  = 0x0# Found @ 0x00000000
  20 
  21 // Detected address ranges:
  22 // ROM      0xff010000 - 0xffffffff (16711680 bytes)
  23 // RAM code 0x006b1000 - 0x006e01c4 copied from 0xff7cf0a8 ( 192964 bytes)
  24 // RAM data 0x00001900 - 0x00014f30 copied from 0xff7bba78 (  79408 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                         ,0xff026cf0) //  1 90%
  29 NHSTUB(GetFocusLensSubjectDistanceFromLens    ,0xff1dd2f0) //  3 90%
  30 // ERROR: MakeDirectory_Fut is not found.                  //--- ---    *** != 0xff027988
  31 // ERROR: RefreshPhysicalScreen is not found.              //--- ---    *** != 0x00000000
  32 // ERROR: TurnOffBackLight is not found.                   //--- ---    *** != 0x00000000
  33 // ERROR: TurnOnBackLight is not found.                    //--- ---    *** != 0x00000000
  34 // ERROR: close is not found.                              //--- ---    *** != 0xff023e60
  35 // ERROR: exmem_ualloc is not found.                       //--- ---    *** != 0xff035288
  36 // ERROR: exmem_ufree is not found.                        //--- ---    *** != 0xff035320
  37 // ERROR: open is not found.                               //--- ---    *** != 0xff023db0
  38 
  39 // Check of modemap from 'platform/CAMERA/shooting.c':
  40 // Firmware modemap table found @ff388c58 -> ff7186b4
  41 // No problems found with modemap table.
  42 
  43 // Values below can be overridden in 'stubs_min.S':
  44 DEF(physw_status                            ,0x00015cbc) // Found @0xff02d104
  45 DEF(physw_run                               ,0x00001be4) // Found @0xff02cbd4
  46 DEF(physw_sleep_delay                       ,0x00001bec) // Found @0xff02cbd4
  47 DEF(levent_table                            ,0xff643b8c) // Found @0xff643b8c
  48 DEF(FlashParamsTable                        ,0xff718a78) // Found @0xff718a78
  49 DEF(movie_status                            ,0x00007c0c) // Found @0xff1ec01c
  50 DEF(video_compression_rate                  ,0x00007bbc) // Found @0xff1eccf0
  51 DEF(full_screen_refresh                     ,0x00008b00) // Found @0xff216670
  52 DEF(canon_menu_active                       ,0x0000403c) // Found @0xff0b55d4
  53 DEF(canon_shoot_menu_active                 ,0x0000a9e5) // Found @0xff28ef1c
  54 DEF(zoom_status                             ,0x0001118c) // Found @0xff312d4c
  55 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
  56 // each entry contains 2 int value(s), the first is the zoom focus length.
  57 // there are 127 entries in the table - set NUM_FL to 127
  58 DEF(focus_len_table                         ,0xfffecb7c) // Found @0xfffecb7c
  59 DEF(zoom_busy                               ,0x000078f0) // Found @0xff1e27f8
  60 DEF(focus_busy                              ,0x000076e4) // Found @0xff1dbd54
  61 // Palette colour tables  found @ 0xff647f80
  62 // Camera appears to have only 1 RAW buffer @ 0x454a8d60 (Found @0xff47565c)
  63 DEF(fileio_semaphore                        ,0x00001c80) // Found @0xff02fdf0
  64 DEF(exmem_alloc_table                       ,0x0001729c) // Found @0xff034c5c
  65 DEF(exmem_types_table                       ,0xff7bbe88) // Found @0x00001d10
  66 DEF_CONST(exmem_type_count                  ,0x00000015)
  67 DEF(imager_active                           ,0x00001fdc) // Found @0xff04dd08 (0x1fd8 + 4)
  68 DEF_CONST(uiprop_count                      ,0x000000e9) // Found @0xff20c770
  69 DEF(cameracon_state                         ,0x000023cc) // Found @0xff05efb8
  70 
  71 // Values below go in 'lib.c':
  72 //void *vid_get_bitmap_fb()        { return (void*)0x40711000; }             // Found @0xff06fca8
  73 //void *vid_get_viewport_fb()      { return (void*)0x40866b80; }             // Found @0xff473aac
  74 DEF(viewport_fb_d                           ,0x000036d8) // Found 0x367c (@0xff08d2cc) + 0x5c (@0xff08d304)
  75 //void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x367c+0x5c)); } // Found @0xff08d2cc & 0xff08d304
  76 DEF(jpeg_count_str                          ,0x00111318) // Found @0xff279060
  77 //char *camera_jpeg_count_str()    { return (char*)0x00111318; }             // Found @0xff279060
  78 
  79 // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
  80 //#define SD_READONLY_FLAG    0x01000000 // Found @0xff5f76cc, levent 0x30a
  81 //#define SD_READONLY_IDX     2
  82 //#define USB_MASK            0x04000000 // Found @0xff5f76dc, levent 0x302
  83 //#define USB_IDX             2
  84 //#define BATTCOVER_FLAG      0x02000000 // Found @0xff5f76d4, levent 0x305
  85 //#define BATTCOVER_IDX       2
  86 //#define ANALOG_AV_FLAG      0x00004000 // Found @0xff5f763c, levent 0x300 (non-inverted logic)
  87 //#define ANALOG_AV_IDX       0
  88 
  89 // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  90 //static KeyMap keymap[] = {
  91 //    { 0, KEY_SHOOT_FULL      ,0x0000000c }, // Found @0xff5f7614, levent 0x01
  92 //    { 0, KEY_SHOOT_FULL_ONLY ,0x00000008 }, // Found @0xff5f7614, levent 0x01
  93 //    { 0, KEY_SHOOT_HALF      ,0x00000004 }, // Found @0xff5f760c, levent 0x00
  94 //    { 2, KEY_POWER           ,0x00000020 }, // Found @0xff5f7654, levent 0x100
  95 //    { 2, KEY_PLAYBACK        ,0x00000080 }, // Found @0xff5f7664, levent 0x101
  96 //    { 2, KEY_VIDEO           ,0x00000400 }, // Found @0xff5f7674, levent 0x02
  97 //    { 2, KEY_SET             ,0x00000800 }, // Found @0xff5f767c, levent 0x0a
  98 //    { 2, KEY_LEFT            ,0x00001000 }, // Found @0xff5f7684, levent 0x08
  99 //    { 2, KEY_UP              ,0x00002000 }, // Found @0xff5f768c, levent 0x06
 100 //    { 2, KEY_RIGHT           ,0x00004000 }, // Found @0xff5f7694, levent 0x09
 101 //    { 2, KEY_DOWN            ,0x00008000 }, // Found @0xff5f769c, levent 0x07
 102 //    { 0, 0, 0 }
 103 //};
 104 
 105 // Values below go in 'platform_camera.h':
 106 //#define CAM_DRYOS         1
 107 //#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
 108 //#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher
 109 //#define CAM_DRYOS_2_3_R59 1 // Defined for cameras with DryOS version R59 or higher
 110 //#define CAM_RAW_ROWPIX    5248 // Found @0xff1b23b4
 111 //#define CAM_RAW_ROWS      3920 // Found @0xff1b23bc
 112 //#undef  CAM_UNCACHED_BIT
 113 //#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff02800c
 114 //#define CAM_DATE_FOLDER_NAMING 0x080 // Found @0xff34434c (pass as 3rd param to GetImageFolder)
 115 //#define PARAM_CAMERA_NAME 3 // Found @0xff717200
 116 //#define CAM_3ARG_DebugAssert 1
 117 //#define CAM_HAS_WIFI 1 // Firmware has wifi support (only define if camera has hardware)
 118 
 119 // Below goes in 'filewrite.c' or 'platform_camera.h':
 120 //#define MAX_CHUNKS_FOR_FWT 7 // Found @0xff35dd5c
 121 
 122 // Known propcases
 123 // //      PROPCASE_AFSTEP 13
 124 // #define PROPCASE_FOCUS_STATE 18
 125 // #define PROPCASE_AV 23
 126 // #define PROPCASE_BV 40
 127 // //      PROPCASE_DELTA_DIGITALGAIN 85
 128 // #define PROPCASE_DELTA_SV 87
 129 // //      PROPCASE_DELTA_ND 88
 130 // #define PROPCASE_EV_CORRECTION_2 219
 131 // #define PROPCASE_ORIENTATION_SENSOR 231
 132 // #define PROPCASE_SV_MARKET 259
 133 // //      PROPCASE_SVFIX 260
 134 // #define PROPCASE_TV 276
 135 // Guessed propset: 11
 136 
 137 // Misc stuff
 138 DEF(ctypes, 0xff5f45d8)
 139 
 140 // EXMEM types:
 141 // EXMEM_COM            0
 142 // EXMEM_FORMATTER      1
 143 // EXMEM_FIRMUP         2
 144 // EXMEM_FIRMUP_INFLATE 3
 145 // EXMEM_FIRMUP_PICTURESTYLE 4
 146 // EXMEM_DVLPWORK       5
 147 // EXMEM_GPS            6
 148 // EXMEM_FACEAUTH       7
 149 // EXMEM_OHYEARLOG      8
 150 // EXMEM_WIFI           9
 151 // EXMEM_LENS_FIRMUP    10
 152 // EXMEM_LENS_COMPENSATION 11
 153 // EXMEM_FILESTORE      12
 154 // EXMEM_MOVIE_REC      13
 155 // EXMEM_MOVIE_PLY      14
 156 // EXMEM_WIDE           15
 157 // EXMEM_AUTO_GIS_MODE  16
 158 // EXMEM_NP_GIS_MODE    17
 159 // EXMEM_TRIPODHDR_MODE 18
 160 // EXMEM_HSHQ_MODE      19
 161 // EXMEM_CRAW_REC       20
 162 
 163 // ISR flag: 0x194c, pointer to current task's control block: 0x1948
 164 // pointer to TCB area: 0x19cc, found @ 0xff7d0668
 165 
 166 // LED table init @ 0xff18e0e8
 167 // LED #1: 0xc022d200 (#98 in GPIO table), offset 0x98
 168 // LED #2: 0xc022d1fc (#97 in GPIO table), offset 0x8
 169 // GPIO table @ 0xff5f7098
 170 
 171 // Stubs below matched 100%.
 172 //    Name                                     Address                Comp to stubs_entry_2.S
 173 NHSTUB(AllocateUncacheableMemory              ,0xff027fc8) //112
 174 NHSTUB(Close                                  ,0xff027414) //120
 175 NHSTUB(CreateBinarySemaphore                  ,0xff0280ac) //115
 176 NHSTUB(CreateTask                             ,0xff025140) //120
 177 NHSTUB(DebugAssert                            ,0xff025500) //107
 178 NHSTUB(DeleteDirectory_Fut                    ,0xff026d64) //116
 179 NHSTUB(DeleteSemaphore                        ,0xff028190) //120
 180 NHSTUB(DoAELock                               ,0xff033624) //120
 181 NHSTUB(DoAFLock                               ,0xff033264) //120
 182 NHSTUB(EnterToCompensationEVF                 ,0xff03354c) //104
 183 NHSTUB(ExecuteEventProcedure                  ,0xff035724) //104
 184 NHSTUB(ExitFromCompensationEVF                ,0xff0335a0) //104
 185 NHSTUB(ExitTask                               ,0xff0254b0) //120
 186 NHSTUB(ExpCtrlTool_StartContiAE               ,0xff045d84) //104
 187 NHSTUB(ExpCtrlTool_StopContiAE                ,0xff046104) //104
 188 NHSTUB(Fclose_Fut                             ,0xff026dfc) //120
 189 NHSTUB(Feof_Fut                               ,0xff026fe8) //  1
 190 NHSTUB(Fflush_Fut                             ,0xff027024) //  1
 191 NHSTUB(Fgets_Fut                              ,0xff026f50) //  6
 192 NHSTUB(Fopen_Fut                              ,0xff026dbc) //120
 193 NHSTUB(Fread_Fut                              ,0xff026ea8) //120
 194 NHSTUB(FreeUncacheableMemory                  ,0xff028004) //112
 195 NHSTUB(Fseek_Fut                              ,0xff026f9c) //120
 196 NHSTUB(Fwrite_Fut                             ,0xff026efc) //120
 197 NHSTUB(GetBatteryTemperature                  ,0xff0790cc) //102
 198 NHSTUB(GetCCDTemperature                      ,0xff079058) //102
 199 NHSTUB(GetCurrentAvValue                      ,0xff09250c) //120
 200 NHSTUB(GetCurrentShutterSpeed                 ,0xff12e82c) //120
 201 NHSTUB(GetUsableMaxAv                         ,0xff1b2c58) //120
 202 NHSTUB(GetUsableMinAv                         ,0xff1b2c3c) //120
 203 NHSTUB(GetDrive_ClusterSize                   ,0xff031454) //122
 204 NHSTUB(GetDrive_FreeClusters                  ,0xff031bb8) //119
 205 NHSTUB(GetDrive_TotalClusters                 ,0xff031b8c) //122
 206 NHSTUB(GetFocusLensSubjectDistance            ,0xff1dcf0c) //102
 207 NHSTUB(GetImageFolder                         ,0xff1bacf8) //122
 208 NHSTUB(GetKbdState                            ,0xff07553c) //109
 209 NHSTUB(GetMemInfo                             ,0xff023548) //115
 210 NHSTUB(GetOpticalTemperature                  ,0xff079140) //120
 211 NHSTUB(GetParameterData                       ,0xff20d2c0) //101
 212 NHSTUB(GetPropertyCase                        ,0xff0ae6e4) //101
 213 NHSTUB(GetSystemTime                          ,0xff385e74) //120
 214 NHSTUB(GetVRAMHPixelsSize                     ,0xff052d34) //120
 215 NHSTUB(GetVRAMVPixelsSize                     ,0xff052d40) //120
 216 NHSTUB(GetZoomLensCurrentPoint                ,0xff1e2c84) //120
 217 NHSTUB(GetZoomLensCurrentPosition             ,0xff376c40) //102
 218 NHSTUB(GiveSemaphore                          ,0xff028338) //120
 219 NHSTUB(IsStrobeChargeCompleted                ,0xff0db6c0) //102
 220 NHSTUB(LEDDrive                               ,0xff1f477c) //120
 221 NHSTUB(LocalTime                              ,0xff0c8e60) //115
 222 NHSTUB(LockMainPower                          ,0xff0b1224) //120
 223 NHSTUB(MakeSDCardBootable                     ,0xff032118) //105
 224 NHSTUB(MoveFocusLensToDistance                ,0xff47796c) //102
 225 NHSTUB(MoveIrisWithAv                         ,0xff37ffd4) //120
 226 NHSTUB(MoveZoomLensWithPoint                  ,0xff3804bc) //120
 227 NHSTUB(MoveOpticalZoomAt                      ,0xff032c40) //109
 228 NHSTUB(Open                                   ,0xff0273b0) //120
 229 NHSTUB(PB2Rec                                 ,0xff05f8b4) //104
 230 NHSTUB(PT_MoveDigitalZoomToWide               ,0xff1f5914) //102
 231 NHSTUB(PT_MoveOpticalZoomAt                   ,0xff1f58e4) //102
 232 NHSTUB(PT_PlaySound                           ,0xff0c3360) //122
 233 NHSTUB(PostLogicalEventForNotPowerType        ,0xff0b0658) //120
 234 NHSTUB(PostLogicalEventToUI                   ,0xff0b06b0) //120
 235 NHSTUB(PutInNdFilter                          ,0xff477d7c) //102
 236 NHSTUB(PutOutNdFilter                         ,0xff477db8) //102
 237 NHSTUB(Read                                   ,0xff024004) //120
 238 NHSTUB(ReadFastDir                            ,0xff3625f0) //115
 239 NHSTUB(Rec2PB                                 ,0xff05f914) //104
 240 NHSTUB(RenameFile_Fut                         ,0xff026c5c) //116
 241 NHSTUB(Restart                                ,0xff0387ac) //122
 242 NHSTUB(ScreenLock                             ,0xff0b4e80) //117
 243 NHSTUB(ScreenUnlock                           ,0xff0b4ed4) //117
 244 NHSTUB(SetAE_ShutterSpeed                     ,0xff4728cc) //102
 245 NHSTUB(SetAutoShutdownTime                    ,0xff0b1298) //120
 246 NHSTUB(SetCurrentCaptureModeType              ,0xff0bfe50) //120
 247 NHSTUB(SetDate                                ,0xff474794) //120
 248 NHSTUB(SetFileAttributes                      ,0xff0278f0) //  6
 249 NHSTUB(SetFileTimeStamp                       ,0xff027878) //  6
 250 NHSTUB(SetLogicalEventActive                  ,0xff0b0d74) //120
 251 NHSTUB(SetParameterData                       ,0xff20d220) //101
 252 NHSTUB(SetPropertyCase                        ,0xff0ae510) //101
 253 NHSTUB(SetScriptMode                          ,0xff0b0e0c) //120
 254 NHSTUB(SleepTask                              ,0xff039e80) //120
 255 NHSTUB(TakeSemaphore                          ,0xff028254) //120
 256 NHSTUB(TurnOnDisplay                          ,0xff070088) //120
 257 NHSTUB(TurnOffDisplay                         ,0xff070098) //120
 258 NHSTUB(UIFS_WriteFirmInfoToFile               ,0xff22d680) //120
 259 NHSTUB(UnlockAE                               ,0xff0336b4) //120
 260 NHSTUB(UnlockAF                               ,0xff033294) //120
 261 NHSTUB(UnlockMainPower                        ,0xff0b117c) //120
 262 NHSTUB(VbattGet                               ,0xff02be78) //120
 263 NHSTUB(Write                                  ,0xff027b80) //120
 264 NHSTUB(WriteSDCard                            ,0x006b8324) //108
 265 NHSTUB(_log                                   ,0x006dc020) //111
 266 NHSTUB(_log10                                 ,0x006dc560) //112
 267 NHSTUB(_pow                                   ,0x006dc6d8) //121
 268 NHSTUB(_sqrt                                  ,0x006de4f0) //  6
 269 NHSTUB(add_ptp_handler                        ,0xff1585fc) //121
 270 NHSTUB(apex2us                                ,0xff2ef70c) //121
 271 NHSTUB(err_init_task                          ,0xff0248d0) //111
 272 NHSTUB(free                                   ,0xff025840) //112
 273 NHSTUB(get_current_deltasv                    ,0xff12ae84) //122
 274 NHSTUB(GetCurrentDriveBaseSvValue             ,0xff0d47f8) //120
 275 NHSTUB(kbd_p1_f                               ,0xff02d154) //109
 276 NHSTUB(kbd_p1_f_cont                          ,0xff02d160) //109
 277 NHSTUB(kbd_p2_f                               ,0xff02c800) //109
 278 NHSTUB(kbd_read_keys                          ,0xff02d104) //109
 279 NHSTUB(kbd_read_keys_r2                       ,0xff074dbc) //109
 280 NHSTUB(lseek                                  ,0xff027724) //120
 281 NHSTUB(malloc                                 ,0xff0257e8) //112
 282 NHSTUB(memcmp                                 ,0xff0255c0) //120
 283 NHSTUB(memcpy                                 ,0xff0c995c) //120
 284 NHSTUB(memset                                 ,0xff2aa420) //120
 285 NHSTUB(mkdir                                  ,0xff027988) //121
 286 NHSTUB(mktime_ext                             ,0xff0c90ec) //  1
 287 NHSTUB(OpenFastDir                            ,0xff36249c) //115
 288 NHSTUB(closedir                               ,0xff36244c) //121
 289 NHSTUB(get_fstype                             ,0xff0313cc) //122
 290 NHSTUB(qsort                                  ,0xff2aa3c0) //  6
 291 NHSTUB(rand                                   ,0xff0c992c) //121
 292 NHSTUB(realloc                                ,0xff2aa49c) //115
 293 NHSTUB(reboot_fw_update                       ,0xff3849a8) //106
 294 NHSTUB(set_control_event                      ,0xff0b09e4) //111
 295 NHSTUB(srand                                  ,0xff0c9920) //122
 296 NHSTUB(stat                                   ,0xff02776c) //109
 297 NHSTUB(strcat                                 ,0xff03aa98) //  1
 298 NHSTUB(strchr                                 ,0xff03ab20) //  1
 299 NHSTUB(strcmp                                 ,0xff0256bc) //120
 300 NHSTUB(strcpy                                 ,0xff0255a8) //120
 301 NHSTUB(strftime                               ,0xff0c916c) //113
 302 NHSTUB(strlen                                 ,0xff025700) //120
 303 NHSTUB(strncmp                                ,0xff03aad4) //  1
 304 NHSTUB(strncpy                                ,0xff028c34) //  1
 305 NHSTUB(strrchr                                ,0xff0c9aa8) //  1
 306 NHSTUB(strtol                                 ,0xff03aa84) //101
 307 NHSTUB(strtolx                                ,0xff03a888) //109
 308    DEF(task_CaptSeq                           ,0xff09ab90) //120
 309    DEF(task_DvlpSeqTask                       ,0xff1f97e8) //120
 310    DEF(task_ExpDrv                            ,0xff0f6564) //120
 311    DEF(task_FileWrite                         ,0xff35dd00) //120
 312    DEF(task_InitFileModules                   ,0xff062d2c) //120
 313    DEF(task_MovieRecord                       ,0xff1ecdbc) //120
 314    DEF(task_PhySw                             ,0xff02cbd0) //120
 315    DEF(hook_CreateTask                        ,0xff025140) //105
 316 NHSTUB(time                                   ,0xff03a22c) //119
 317 NHSTUB(vsprintf                               ,0xff028bf4) //115
 318 NHSTUB(EngDrvRead                             ,0xff02d264) //102
 319 NHSTUB(PTM_GetCurrentItem                     ,0xff0b2e80) //105
 320 NHSTUB(DisableISDriveError                    ,0xff3818bc) //120
 321 NHSTUB(CancelHPTimer                          ,0xff0aadac) //119
 322 NHSTUB(SetHPTimerAfterNow                     ,0xff0aaca4) //119
 323 NHSTUB(SS_MFOn                                ,0xff1f59a8) //120
 324 NHSTUB(SS_MFOff                               ,0xff1f59b8) //120
 325 NHSTUB(GetAdChValue                           ,0xff071268) //120
 326 NHSTUB(get_ptp_buf_size                       ,0xff14801c) //122
 327 NHSTUB(get_ptp_file_buf                       ,0xff302490) //121
 328 NHSTUB(SetVideoOutType                        ,0xff4730f0) //109
 329 NHSTUB(GetVideoOutType                        ,0xff473064) //120
 330 NHSTUB(IsWirelessConnect                      ,0xff066cfc) //122

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