root/platform/ixus310_elph500hs/sub/101a/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 R47 (DRYOS version 2.3, release #0047)
   6 //   Firmware Ver GM1.01A   // Found @ 0xff086dd8, "GM1.01A" @ 0xff086de5
   7 //   Firmware build timestamp: Feb 14 2011 15:31:00
   8 //   Canon IXUS 310 HS
   9 
  10 // Values for makefile.inc
  11 //   PLATFORMOSVER = 47
  12 //   PLATFORMID = 12837 (0x3225) // Found @ 0xfff40040
  13 //   MAXRAMADDR = 0x07ffffff
  14 //   MEMISOSTART = 0x0018b834
  15 //   KEYSYS = d4c                // Found @ 0xffff3610
  16 //   NEED_ENCODED_DISKBOOT = 6   // Found @ 0xffff3620
  17 //   ARAM_HEAP_START = 0x3ce000  // Found @ 0xff18ea74
  18 //   ARAM_HEAP_SIZE  = 0x32000   // Found @ 0xff18ea34
  19 
  20 // Detected address ranges:
  21 // ROM      0xff000000 - 0xffffffff (16777216 bytes)
  22 // RAM data 0x00001900 - 0x00011058 copied from 0xff50c018 (  63320 bytes)
  23 
  24 // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S'
  25 //    Name                                     Address      Rule  %  Comp to stubs_entry_2.S
  26 
  27 // Check of modemap from 'platform/CAMERA/shooting.c':
  28 // Firmware modemap table found @ff320ad4 -> ff4ce708
  29 // No problems found with modemap table.
  30 
  31 // Values below can be overridden in 'stubs_min.S':
  32 DEF(physw_status                            ,0x00034d4c) // Found @0xff024e2c
  33 DEF(physw_run                               ,0x00001c3c) // Found @0xff0249cc
  34 DEF(physw_sleep_delay                       ,0x00001c44) // Found @0xff0249cc
  35 DEF(levent_table                            ,0xff4214e8) // Found @0xff4214e8
  36 DEF(FlashParamsTable                        ,0xff4ce948) // Found @0xff4ce948
  37 DEF(movie_status                            ,0x000070dc) // Found @0xff17e974
  38 DEF(video_compression_rate                  ,0x0000711c) // Found @0xff17f430
  39 DEF(full_screen_refresh                     ,0x0000a424) // Found @0xff244a14
  40 DEF(canon_menu_active                       ,0x000032f8) // Found @0xff0887f4
  41 DEF(canon_shoot_menu_active                 ,0x000087c9) // Found @0xff1c867c
  42 DEF(playrec_mode                            ,0x00003030) // Found @0xff07abf4
  43 DEF(zoom_status                             ,0x0000e7c0) // Found @0xff32448c
  44 DEF(some_flag_for_af_scan                   ,0x000074e0) // Found @0xff183040
  45 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
  46 // each entry contains 3 int value(s), the first is the zoom focus length.
  47 // there are 64 entries in the table - set NUM_FL to 64
  48 DEF(focus_len_table                         ,0xfff4a30c) // Found @0xfff4a30c
  49 DEF(zoom_busy                               ,0x00007000) // Found @0xff179af8
  50 DEF(focus_busy                              ,0x00006e70) // Found @0xff173e9c
  51 DEF(recreview_hold                          ,0x0000391c) // Found @0xff098530
  52 // Palette colour tables  found @ 0xff46e168
  53 DEF(palette_control                         ,0x0000a424) // Found @0xff244990
  54 DEF(active_palette_buffer                   ,0x0000a42c) // Found @0xff244994
  55 DEF(palette_buffer_ptr                      ,0x0000a430) // Found @0xff244e5c
  56 DEF(palette_buffer                          ,0x000c7dec) // Found @0xff244e6c
  57 // Offset from start of palette_buffer to color data = 8 (Found @0xff366f8c)
  58 DEF(bitmap_buffer                           ,0x0000a464) // Found @0xff249aec
  59 DEF(active_bitmap_buffer                    ,0x0000a45c) // Found @0xff249af0
  60 DEF(viewport_buffers                        ,0xff3d0430) // Found @0xff043404
  61 DEF(active_viewport_buffer                  ,0x00002104) // Found @0xff043138
  62 // Camera has 2 RAW buffers @ 0x413591f0 & 0x46000000
  63 //  Note: active buffer --> raw_buffers[ active_raw_buffer   *3]
  64 //        other buffer  --> raw_buffers[(active_raw_buffer^1)*3]
  65 DEF(raw_buffers                             ,0xff3d1be0) // Found @0xff3d1be0
  66 DEF(active_raw_buffer                       ,0x00002f8c) // Found @0xff0771a4
  67 DEF(fileio_semaphore                        ,0x00002c90) // Found @0xff066504
  68 DEF(exmem_alloc_table                       ,0x0003e678) // Found @0xff082240
  69 DEF(exmem_types_table                       ,0xff50d854) // Found @0x0000313c
  70 DEF_CONST(exmem_type_count                  ,0x00000014)
  71 DEF(imager_active                           ,0x00002040) // Found @0xff03fde4 (0x203c + 4)
  72 DEF_CONST(uiprop_count                      ,0x00000081) // Found @0xff1af9dc
  73 
  74 // Values below go in 'lib.c':
  75 //void *vid_get_bitmap_fb()        { return (void*)0x40471000; }             // Found @0xff04f54c
  76 //void *vid_get_viewport_fb()      { return (void*)0x405d7980; }             // Found @0xff38b5e0
  77 DEF(viewport_fb_d                           ,0x00002d40) // Found 0x2ce8 (@0xff06a728) + 0x58 (@0xff06a760)
  78 //void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x2ce8+0x58)); } // Found @0xff06a728 & 0xff06a760
  79 DEF(jpeg_count_str                          ,0x000c75f4) // Found @0xff236e4c
  80 //char *camera_jpeg_count_str()    { return (char*)0x000c75f4; }             // Found @0xff236e4c
  81 //int get_flash_params_count(void) { return 0xa0; }                          // Found @0xff1b03a0
  82 
  83 // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
  84 //#define SD_READONLY_FLAG    0x00020000 // Found @0xff3d14ac, levent 0x90a
  85 //#define SD_READONLY_IDX     2
  86 //#define USB_MASK            0x04000000 // Found @0xff3d14cc, levent 0x902
  87 //#define USB_IDX             2
  88 //#define BATTCOVER_FLAG      0x00008000 // Found @0xff3d149c, levent 0x905
  89 //#define BATTCOVER_IDX       2
  90 //#define ANALOG_AV_FLAG      0x00000008 // Found @0xff3d1474, levent 0x900 (non-inverted logic)
  91 //#define ANALOG_AV_IDX       2
  92 
  93 // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  94 //static KeyMap keymap[] = {
  95 //    { 1, KEY_ZOOM_IN         ,0x00001000 }, // Found @0xff3d1464, levent 0x02
  96 //    { 1, KEY_ZOOM_OUT        ,0x00008000 }, // Found @0xff3d146c, levent 0x03
  97 //    { 2, KEY_SHOOT_FULL      ,0x00000a00 }, // Found @0xff3d1484, levent 0x01
  98 //    { 2, KEY_SHOOT_FULL_ONLY ,0x00000800 }, // Found @0xff3d1484, levent 0x01
  99 //    { 2, KEY_SHOOT_HALF      ,0x00000200 }, // Found @0xff3d147c, levent 0x00
 100 //    { 2, KEY_POWER           ,0x00001000 }, // Found @0xff3d148c, levent 0x600
 101 //    { 2, KEY_PLAYBACK        ,0x00004000 }, // Found @0xff3d1494, levent 0x601
 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_RAW_ROWPIX    4168 // Found @0xff14a154
 110 //#define CAM_RAW_ROWS      3060 // Found @0xff14a160
 111 //#undef  CAM_UNCACHED_BIT
 112 //#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff02b914
 113 //#define CAM_DATE_FOLDER_NAMING 0x400 // Found @0xff2ca1f8 (pass as 3rd param to GetImageFolder)
 114 //#define PARAM_CAMERA_NAME 4 // Found @0xff4cdadc
 115 
 116 // Known propcases
 117 // //      PROPCASE_AFSTEP 13
 118 // #define PROPCASE_FOCUS_STATE 18
 119 // #define PROPCASE_AV 23
 120 // #define PROPCASE_BV 34
 121 // //      PROPCASE_DELTA_DIGITALGAIN 77
 122 // #define PROPCASE_DELTA_SV 79
 123 // //      PROPCASE_DELTA_ND 80
 124 // #define PROPCASE_EV_CORRECTION_2 211
 125 // #define PROPCASE_ORIENTATION_SENSOR 223
 126 // #define PROPCASE_SV_MARKET 250
 127 // //      PROPCASE_SVFIX 251
 128 // #define PROPCASE_TV 266
 129 // Guessed propset: 4, 5
 130 
 131 // Misc stuff
 132 DEF(ctypes, 0xff3cea3e)
 133 
 134 // EXMEM types:
 135 // EXMEM_RAMDISK        0
 136 // EXMEM_COM            1
 137 // EXMEM_FORMATTER      2
 138 // EXMEM_SHADING        3
 139 // EXMEM_FAMODE         4
 140 // EXMEM_FIRMUP         5
 141 // EXMEM_FIRMUP_VRAM    6
 142 // EXMEM_FIRMUP_INFLATE 7
 143 // EXMEM_DVLPWORK       8
 144 // EXMEM_EVF            9
 145 // EXMEM_SCRIPT         10
 146 // EXMEM_GPS            11
 147 // EXMEM_FILESTORE      12
 148 // EXMEM_MOVIE_REC      13
 149 // EXMEM_MOVIE_PLY      14
 150 // EXMEM_WIDE           15
 151 // EXMEM_NARROW         16
 152 // EXMEM_SUPER_NARROW   17
 153 // EXMEM_CRAW_REC       18
 154 // EXMEM_PCEVF          19
 155 
 156 // ISR flag: 0x1968, pointer to current task's control block: 0x1964
 157 // pointer to TCB area: 0x19f0, found @ 0xff006984
 158 
 159 // LED table init @ 0xff12525c
 160 // LED #1: 0xc0223030, offset 0x1d8
 161 // LED #2: 0xc0220110, offset 0x170
 162 
 163 // For capt_seq.c
 164 DEF(_nrflag,0x751c) // Found @ ff1878c8 (0x7514) & ff187904 (+0x08)
 165 //static long *nrflag = (long*)(0x7514+0x08);  // Found @ ff1878c8 & ff187904
 166 //#define NR_AUTO (0)                          // have to explictly reset value back to 0 to enable auto
 167 
 168 // Stubs below matched 100%.
 169 //    Name                                     Address                Comp to stubs_entry_2.S
 170 NHSTUB(AllocateUncacheableMemory              ,0xff02b8cc) //112
 171 NHSTUB(Close                                  ,0xff027690) //120
 172 NHSTUB(CreateBinarySemaphore                  ,0xff02b088) //115
 173 NHSTUB(CreateTask                             ,0xff00e9b0) //120
 174 NHSTUB(DebugAssert                            ,0xff00ec88) //107
 175 NHSTUB(DeleteDirectory_Fut                    ,0xff02708c) //116
 176 NHSTUB(DeleteFile_Fut                         ,0xff026fa8) //112
 177 NHSTUB(DoAELock                               ,0xff0291d0) //120
 178 NHSTUB(DoAFLock                               ,0xff028edc) //120
 179 NHSTUB(EnterToCompensationEVF                 ,0xff029138) //104
 180 NHSTUB(ExecuteEventProcedure                  ,0xff083fe0) //104
 181 NHSTUB(ExitFromCompensationEVF                ,0xff02917c) //104
 182 NHSTUB(ExitTask                               ,0xff00ec40) //120
 183 NHSTUB(ExpCtrlTool_StartContiAE               ,0xff037f50) //104
 184 NHSTUB(ExpCtrlTool_StopContiAE                ,0xff038028) //104
 185 NHSTUB(Fclose_Fut                             ,0xff027124) //120
 186 NHSTUB(Feof_Fut                               ,0xff027310) //  1
 187 NHSTUB(Fflush_Fut                             ,0xff02734c) //  1
 188 NHSTUB(Fgets_Fut                              ,0xff027278) //  6
 189 NHSTUB(Fopen_Fut                              ,0xff0270e4) //120
 190 NHSTUB(Fread_Fut                              ,0xff0271d0) //120
 191 NHSTUB(FreeUncacheableMemory                  ,0xff02b90c) //112
 192 NHSTUB(Fseek_Fut                              ,0xff0272c4) //120
 193 NHSTUB(Fwrite_Fut                             ,0xff027224) //120
 194 NHSTUB(GetBatteryTemperature                  ,0xff0597d4) //102
 195 NHSTUB(GetCCDTemperature                      ,0xff059760) //102
 196 NHSTUB(GetCurrentAvValue                      ,0xff17678c) //120
 197 NHSTUB(GetCurrentShutterSpeed                 ,0xff0aa4a8) //120
 198 NHSTUB(GetUsableMaxAv                         ,0xff3854b4) //120
 199 NHSTUB(GetUsableMinAv                         ,0xff38549c) //120
 200 NHSTUB(GetDrive_ClusterSize                   ,0xff0680d8) //122
 201 NHSTUB(GetDrive_FreeClusters                  ,0xff068130) //119
 202 NHSTUB(GetDrive_TotalClusters                 ,0xff068108) //119
 203 NHSTUB(GetFocusLensSubjectDistance            ,0xff174b20) //102
 204 NHSTUB(GetFocusLensSubjectDistanceFromLens    ,0xff174f80) //  3
 205 NHSTUB(GetImageFolder                         ,0xff1510ec) //122
 206 NHSTUB(GetKbdState                            ,0xff0560b4) //109
 207 NHSTUB(GetMemInfo                             ,0xff00a29c) //115
 208 NHSTUB(GetOpticalTemperature                  ,0xff059848) //120
 209 NHSTUB(GetParameterData                       ,0xff1b0360) //101
 210 NHSTUB(GetPropertyCase                        ,0xff087d48) //102
 211 NHSTUB(GetSystemTime                          ,0xff30fb44) //120
 212 NHSTUB(GetVRAMHPixelsSize                     ,0xff045a10) //120
 213 NHSTUB(GetVRAMVPixelsSize                     ,0xff045a1c) //120
 214 NHSTUB(GetZoomLensCurrentPoint                ,0xff179f70) //120
 215 NHSTUB(GetZoomLensCurrentPosition             ,0xff2f9ac8) //102
 216 NHSTUB(GiveSemaphore                          ,0xff02b2c4) //120
 217 NHSTUB(IsStrobeChargeCompleted                ,0xff0dabe0) //102
 218 NHSTUB(LEDDrive                               ,0xff0555f8) //120
 219 NHSTUB(LocalTime                              ,0xff081870) //115
 220 NHSTUB(LockMainPower                          ,0xff08d454) //120
 221 NHSTUB(MakeDirectory_Fut                      ,0xff02701c) //116
 222 NHSTUB(MakeSDCardBootable                     ,0xff068368) //105
 223 NHSTUB(MoveFocusLensToDistance                ,0xff3878dc) //102
 224 NHSTUB(MoveIrisWithAv                         ,0xff30bc38) //120
 225 NHSTUB(MoveZoomLensWithPoint                  ,0xff30c504) //120
 226 NHSTUB(MoveOpticalZoomAt                      ,0xff0289ac) //109
 227 NHSTUB(Open                                   ,0xff0275c8) //120
 228 NHSTUB(PB2Rec                                 ,0xff090114) //104
 229 NHSTUB(PT_MoveDigitalZoomToWide               ,0xff072364) //120
 230 NHSTUB(PT_MoveOpticalZoomAt                   ,0xff07233c) //120
 231 NHSTUB(PT_PlaySound                           ,0xff07cc4c) //122
 232 NHSTUB(PostLogicalEventForNotPowerType        ,0xff08cbfc) //120
 233 NHSTUB(PostLogicalEventToUI                   ,0xff08cc48) //120
 234 NHSTUB(PutInNdFilter                          ,0xff30c34c) //102
 235 NHSTUB(PutOutNdFilter                         ,0xff30c370) //102
 236 NHSTUB(Read                                   ,0xff00ad58) //120
 237 NHSTUB(ReadFastDir                            ,0xff2e4530) //  6
 238 NHSTUB(Rec2PB                                 ,0xff090154) //104
 239 NHSTUB(RefreshPhysicalScreen                  ,0xff0a3f10) //104
 240 NHSTUB(RenameFile_Fut                         ,0xff026f14) //116
 241 NHSTUB(Restart                                ,0xff02d0e0) //122
 242 NHSTUB(ScreenLock                             ,0xff0a5108) //117
 243 NHSTUB(ScreenUnlock                           ,0xff0a516c) //117
 244 NHSTUB(SetAE_ShutterSpeed                     ,0xff38a758) //102
 245 NHSTUB(SetAutoShutdownTime                    ,0xff08d4c8) //120
 246 NHSTUB(SetCurrentCaptureModeType              ,0xff095608) //120
 247 NHSTUB(SetFileAttributes                      ,0xff027a94) //  6
 248 NHSTUB(SetFileTimeStamp                       ,0xff027a1c) //  6
 249 NHSTUB(SetLogicalEventActive                  ,0xff08d1bc) //120
 250 NHSTUB(SetParameterData                       ,0xff1b02d0) //101
 251 NHSTUB(SetPropertyCase                        ,0xff087c2c) //102
 252 NHSTUB(SetScriptMode                          ,0xff08d20c) //120
 253 NHSTUB(SleepTask                              ,0xff02b570) //120
 254 NHSTUB(TakeSemaphore                          ,0xff02b1f4) //120
 255 NHSTUB(TurnOffBackLight                       ,0xff09b938) //104
 256 NHSTUB(TurnOnBackLight                        ,0xff09b920) //104
 257 NHSTUB(TurnOnDisplay                          ,0xff04f9f8) //120
 258 NHSTUB(TurnOffDisplay                         ,0xff04fa08) //120
 259 NHSTUB(UIFS_WriteFirmInfoToFile               ,0xff19e09c) //120
 260 NHSTUB(UnlockAE                               ,0xff0291f4) //120
 261 NHSTUB(UnlockAF                               ,0xff028f14) //120
 262 NHSTUB(UnlockMainPower                        ,0xff08d3a8) //120
 263 NHSTUB(VbattGet                               ,0xff023004) //120
 264 NHSTUB(Write                                  ,0xff0276e4) //120
 265 NHSTUB(WriteSDCard                            ,0xff163f5c) //108
 266 NHSTUB(_log                                   ,0xff3cb228) //111
 267 NHSTUB(_log10                                 ,0xff3cb768) //112
 268 NHSTUB(_pow                                   ,0xff3cb8e0) //121
 269 NHSTUB(_sqrt                                  ,0xff3cd840) //  6
 270 NHSTUB(add_ptp_handler                        ,0xff28ee4c) //121
 271 NHSTUB(apex2us                                ,0xff24e4e4) //121
 272 NHSTUB(close                                  ,0xff00abb4) //109
 273 NHSTUB(err_init_task                          ,0xff005fd4) //111
 274 NHSTUB(exmem_alloc                            ,0xff082838) //101
 275 NHSTUB(exmem_free                             ,0xff0828b0) //101
 276 NHSTUB(free                                   ,0xff004244) //112
 277 NHSTUB(get_nd_value                           ,0xff2f75cc) //122
 278 NHSTUB(get_current_nd_value                   ,0xff2f759c) //122
 279 NHSTUB(kbd_p1_f                               ,0xff024ea8) //109
 280 NHSTUB(kbd_p1_f_cont                          ,0xff024eb4) //109
 281 NHSTUB(kbd_p2_f                               ,0xff02469c) //109
 282 NHSTUB(kbd_read_keys                          ,0xff024e2c) //109
 283 NHSTUB(kbd_read_keys_r2                       ,0xff055ad0) //109
 284 NHSTUB(lseek                                  ,0xff0278ac) //120
 285 NHSTUB(malloc                                 ,0xff0041ec) //112
 286 NHSTUB(memcmp                                 ,0xff0108e8) //120
 287 NHSTUB(memcpy                                 ,0xff030fbc) //120
 288 NHSTUB(memset                                 ,0xff24cfd8) //120
 289 NHSTUB(mkdir                                  ,0xff027b2c) //109
 290 NHSTUB(mktime_ext                             ,0xff0a5f80) //  1
 291 NHSTUB(open                                   ,0xff00ab04) //109
 292 NHSTUB(OpenFastDir                            ,0xff2e43dc) //  6
 293 NHSTUB(closedir                               ,0xff2e438c) //121
 294 NHSTUB(get_fstype                             ,0xff068150) //122
 295 NHSTUB(qsort                                  ,0xff24d5e0) //  6
 296 NHSTUB(rand                                   ,0xff24d118) //121
 297 NHSTUB(realloc                                ,0xff24d054) //115
 298 NHSTUB(reboot_fw_update                       ,0xff2e99cc) //106
 299 NHSTUB(set_control_event                      ,0xff08ce6c) //111
 300 NHSTUB(srand                                  ,0xff24d10c) //122
 301 NHSTUB(stat                                   ,0xff0278f4) //109
 302 NHSTUB(strcat                                 ,0xff0a5738) //  1
 303 NHSTUB(strchr                                 ,0xff0040b8) //  1
 304 NHSTUB(strcmp                                 ,0xff0108a4) //120
 305 NHSTUB(strcpy                                 ,0xff01088c) //120
 306 NHSTUB(strftime                               ,0xff0a5980) //113
 307 NHSTUB(strlen                                 ,0xff004104) //120
 308 NHSTUB(strncmp                                ,0xff00406c) //  1
 309 NHSTUB(strncpy                                ,0xff004030) //  1
 310 NHSTUB(strrchr                                ,0xff0040dc) //  1
 311 NHSTUB(strtol                                 ,0xff0312bc) //101
 312 NHSTUB(strtolx                                ,0xff0310c0) //109
 313    DEF(task_CaptSeq                           ,0xff074f1c) //120
 314    DEF(task_DvlpSeqTask                       ,0xff076cd4) //120
 315    DEF(task_ExpDrv                            ,0xff0bdd18) //120
 316    DEF(task_FileWrite                         ,0xff2e250c) //120
 317    DEF(task_InitFileModules                   ,0xff090ab0) //120
 318    DEF(task_MovieRecord                       ,0xff17fc00) //120
 319    DEF(task_PhySw                             ,0xff0249c8) //120
 320    DEF(task_TouchPanel                        ,0xff059e84) //120
 321 NHSTUB(time                                   ,0xff081e4c) //109
 322 NHSTUB(vsprintf                               ,0xff01084c) //115
 323 NHSTUB(EngDrvRead                             ,0xff025e34) //102
 324 NHSTUB(PTM_GetCurrentItem                     ,0xff08dd00) //105
 325 NHSTUB(DisableISDriveError                    ,0xff30ceb4) //120
 326 NHSTUB(CancelHPTimer                          ,0xff0836c8) //119
 327 NHSTUB(SetHPTimerAfterNow                     ,0xff0835c0) //119
 328 NHSTUB(PT_MFOn                                ,0xff0723f4) //120
 329 NHSTUB(PT_MFOff                               ,0xff072404) //120
 330 NHSTUB(GetAdChValue                           ,0xff051000) //120
 331 NHSTUB(EnableHDMIPower                        ,0xff0550e8) //123
 332 NHSTUB(DisableHDMIPower                       ,0xff055110) //123
 333 NHSTUB(get_ptp_buf_size                       ,0xff10943c) //122
 334 NHSTUB(get_ptp_file_buf                       ,0xff2909cc) //121

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