root/platform/sx60hs/sub/100h/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 //   Main firmware start: 0xfc020000
   6 //   DRYOS R55 (DRYOS version 2.3, release #0055+p6)
   7 //   Firmware Ver GM1.00H   // Found @ 0xfc15c1ec, "GM1.00H" @ 0xfc15c1f9
   8 
   9 // Values for makefile.inc
  10 //   PLATFORMOSVER = 55
  11 //   MEMISOSTART = 0x3a8bb0
  12 //   MEMBASEADDR = 0x8000
  13 //   ARAM_HEAP_START = 0x006ce000 #  Found @0xfc1014bc
  14 //   ARAM_HEAP_SIZE = 0x00022000 #  Found @0xfc101496
  15 
  16 // Detected address ranges:
  17 // ROM      0xfc000000 - 0xfe000000 (33554432 bytes)
  18 // RAM code 0x010e1000 - 0x0110daa4 copied from 0xfcd16bb4 ( 182948 bytes)
  19 // RAM data 0x00008000 - 0x0003260c copied from 0xfccec5a8 ( 173580 bytes)
  20 
  21 // Zico Xtensa blobs:
  22 // zico_0 0xbff20000 - 0xbff277b8 copied from 0xfcad2af0 (  30648 bytes)
  23 // zico_1 0xbff00000 - 0xbff04ad0 copied from 0xfcada2b0 (  19152 bytes)
  24 // zico_2 0x80a00000 - 0x80b060f0 copied from 0xfcaded88 (1073392 bytes)
  25 
  26 // Values below go in 'platform_camera.h':
  27 //#define CAM_DRYOS         1
  28 //#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
  29 //#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher
  30 //#undef  CAM_UNCACHED_BIT
  31 //#define CAM_UNCACHED_BIT  0x40000000 // Found @0xfc16cbd8
  32 //#undef CAM_HAS_ND_FILTER // Camera does not have an ND filter
  33 // Camera has an iris (CAM_HAS_IRIS_DIAPHRAGM default)
  34 
  35 // physw_event_table 0xfc5cfb64 Found @0xfc070708
  36 // Values below go in 'platform_kbd.h':
  37 //#define SD_READONLY_FLAG    0x20000000 // Found @0xfc5cfc44, levent 0x20a
  38 //#define SD_READONLY_IDX     1
  39 //#define USB_MASK            0x10000000 // Found @0xfc5cfcb4, levent 0x202
  40 //#define USB_IDX             2
  41 //#define BATTCOVER_FLAG      0x04000000 // Found @0xfc5cfcac, levent 0x205
  42 //#define BATTCOVER_IDX       2
  43 //#define HOTSHOE_FLAG        0x00000800 // Found @0xfc5cfc1c, levent 0x204
  44 //#define HOTSHOE_IDX         1
  45 //#define ANALOG_AV_FLAG      0x00008000 // Found @0xfc5cfc24, levent 0x200 (non-inverted logic)
  46 //#define ANALOG_AV_IDX       1
  47 
  48 // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  49 // WARNING: Values only verified on sx280hs (R52) and g7x (R55p6) errors likely on other cams!
  50 //KeyMap keymap[] = {
  51 //    { 0, KEY_SHOOT_FULL      ,0x00040001 }, // Found @0xfc5cfb64, levent 0x01
  52 //    { 0, KEY_SHOOT_HALF      ,0x00040000 }, // Found @0xfc5cfbec, levent 0x00
  53 //    { 0, KEY_SHOOT_FULL_ONLY ,0x00000001 }, // Found @0xfc5cfb64, levent 0x01
  54 //    { 0, KEY_VIDEO           ,0x00000008 }, // Found @0xfc5cfb7c, levent 0x02
  55 //    { 0, KEY_MENU            ,0x00000010 }, // Found @0xfc5cfb84, levent 0x14
  56 //    { 0, KEY_UP              ,0x00000020 }, // Found @0xfc5cfb8c, levent 0x06
  57 //    { 0, KEY_DOWN            ,0x00000040 }, // Found @0xfc5cfb94, levent 0x07
  58 //    { 0, KEY_RIGHT           ,0x00000080 }, // Found @0xfc5cfb9c, levent 0x09
  59 //    { 0, KEY_LEFT            ,0x00000100 }, // Found @0xfc5cfba4, levent 0x08
  60 //    { 0, KEY_SET             ,0x00000200 }, // Found @0xfc5cfbac, levent 0x0a
  61 //    { 0, KEY_PLAYBACK        ,0x00010000 }, // Found @0xfc5cfbdc, levent 0x101
  62 //    { 0, KEY_POWER           ,0x00020000 }, // Found @0xfc5cfbe4, levent 0x100
  63 //    { 0, 0, 0 }
  64 //};
  65 
  66 // canon_mode_list 0xfc901ec0 Found @0xfc1198c8
  67 // Check modemap values from 'platform/CAMERA/shooting.c':
  68 //  2648  0x0a58 In firmware but not in current modemap
  69 // 33297  0x8211 In firmware but not in current modemap
  70 //  4173  0x104d In firmware but not in current modemap
  71 //  4174  0x104e In firmware but not in current modemap
  72 
  73 // Known propcases
  74 // //      PROPCASE_AFSTEP 13
  75 // #define PROPCASE_FOCUS_STATE 18
  76 // #define PROPCASE_AV 23
  77 // #define PROPCASE_BV 35
  78 // //      PROPCASE_DELTA_DIGITALGAIN 79
  79 // #define PROPCASE_DELTA_SV 81
  80 // //      PROPCASE_DELTA_ND 82
  81 // #define PROPCASE_EV_CORRECTION_2 213
  82 // #define PROPCASE_ORIENTATION_SENSOR 225
  83 // #define PROPCASE_SV_MARKET 252
  84 // //      PROPCASE_SVFIX 253
  85 // #define PROPCASE_TV 269
  86 // Guessed propset: 8
  87 
  88 // EXMEM types:
  89 // EXMEM_RAMDISK        0
  90 // EXMEM_COM            1
  91 // EXMEM_FORMATTER      2
  92 // EXMEM_SHADING        3
  93 // EXMEM_FAMODE         4
  94 // EXMEM_FIRMUP         5
  95 // EXMEM_FIRMUP_VRAM    6
  96 // EXMEM_FIRMUP_INFLATE 7
  97 // EXMEM_FIRMUP_PICTURESTYLE 8
  98 // EXMEM_DVLPWORK       9
  99 // EXMEM_EVF            10
 100 // EXMEM_SCRIPT         11
 101 // EXMEM_GPS            12
 102 // EXMEM_FACEAUTH       13
 103 // EXMEM_OHYEARLOG      14
 104 // EXMEM_WIFI           15
 105 // EXMEM_MULTI_PLY      16
 106 // EXMEM_FEP            17
 107 // EXMEM_LENS_FIRMUP    18
 108 // EXMEM_LENS_COMPENSATION 19
 109 // EXMEM_FILESTORE      20
 110 // EXMEM_MOVIE_REC      21
 111 // EXMEM_MOVIE_PLY      22
 112 // EXMEM_WIFI_RESIZE    23
 113 // EXMEM_PCEVF          24
 114 // EXMEM_WIDE           25
 115 // EXMEM_NARROW         26
 116 // EXMEM_AUTO_GIS_MODE  27
 117 // EXMEM_NP_GIS_MODE    28
 118 // EXMEM_TRIPODHDR_MODE 29
 119 // EXMEM_HSHQ_MODE      30
 120 // EXMEM_CRAW_REC       31
 121 // EXMEM_CREATIVE_SHOT  32
 122 
 123 // Values below can be overridden in 'stubs_min.S':
 124 DEF(ctypes                            ,0xfc57bf50)
 125 DEF(physw_run                         ,0x000082c8) // Found @0xfc07306a
 126 DEF(physw_sleep_delay                 ,0x000082d0) // (0x82c8+0x8) Found @0xfc07306e
 127 DEF(physw_status                      ,0x00033f64) // Found @0xfc0733a6
 128 DEF(fileio_semaphore                  ,0x00013294) // Found @0xfc06e622
 129 DEF(levent_table                      ,0xfc66aa40) // Found @0xfc0cc574
 130 DEF(FlashParamsTable                  ,0xfc90221c) // Found @0xfc1198dc
 131 DEF(playrec_mode                      ,0x0000bb84) // (0xbb80+0x4) Found @0xfc2d79e2
 132 DEF(jpeg_count_str                    ,0x0019b134) // Found @0xfc10379a
 133 DEF(zoom_busy                         ,0x0000b85c) // (0xb840+0x1c) Found @0xfc2edac8
 134 DEF(focus_busy                        ,0x00013488) // (0x13480+0x8) Found @0xfc2f9e1e
 135 DEF(imager_active                     ,0x00008688) // (0x8684+0x4) Found @0xfc13b2ac
 136 DEF(_nrflag                           ,0x0001e858) // (0x1e854+0x4) Found @0xfc347a54
 137 //DEF(active_bitmap_buffer              ,0x0000c200), ** != ** stubs_min = 0x0000c1fc (0xc1fc)
 138 DEF_CONST(uiprop_count                      ,0x000000c7) // Found @0xfc0aa3ce
 139 DEF(exmem_alloc_table                 ,0x0003c9c4) // Found @0xfc070d46
 140 DEF(exmem_types_table                 ,0xfccf01fc) // Found @0xfc070d4a
 141 DEF_CONST(exmem_type_count                  ,0x00000021) // Found @0xfccf01fc
 142 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
 143 // each entry contains 1 int value, which is the the zoom focus length.
 144 // there are 201 entries in the table - set NUM_FL to 201
 145 //DEF(focus_len_table                         ,0xfdf317ec) // Found @0xfdf317ec,          stubs_min = 0xfdf317ec (0xfdf317ec)
 146 
 147 //NHSTUB(EnterToCompensationEVF               ,0x00000000) //  0        *** != 0xfc2766ed
 148 //NHSTUB(ExitFromCompensationEVF              ,0x00000000) //  0        *** != 0xfc276727
 149 //NHSTUB(ExpCtrlTool_StartContiAE             ,0x00000000) //  0        *** != 0xfc264e83
 150 //NHSTUB(ExpCtrlTool_StopContiAE              ,0x00000000) //  0        *** != 0xfc264f6f
 151 //NHSTUB(Feof_Fut                             ,0x00000000) //  0        *** != 0xfc301dd5
 152 //NHSTUB(Fflush_Fut                           ,0x00000000) //  0        *** != 0xfc301dfd
 153 //NHSTUB(GetDrive_TotalClusters               ,0x00000000) //  0        *** != 0xfc332513
 154 //NHSTUB(GetFocusLensSubjectDistanceFromLens  ,0x00000000) //  0        *** != 0xfc2fabe9
 155 //NHSTUB(GetImageFolder                       ,0x00000000) //  0        *** != 0xfc30ba85
 156 //NHSTUB(MakeSDCardBootable                   ,0x00000000) //  0        *** != 0xfc332875
 157 //NHSTUB(RenameFile_Fut                       ,0x00000000) //  0        *** != 0xfc301b85
 158 //NHSTUB(Restart                              ,0x00000000) //  0        *** != 0xfc0b96e5
 159 //NHSTUB(SetFileAttributes                    ,0x00000000) //  0        *** != 0xfc332c29
 160 //NHSTUB(SetFileTimeStamp                     ,0x00000000) //  0        *** != 0xfc332be1
 161 //NHSTUB(SetParameterData                     ,0x00000000) //  0        *** != 0xfc322af7
 162 //NHSTUB(WriteSDCard                          ,0x00000000) //  0        *** != 0xfcd1d6df
 163 //NHSTUB(apex2us                              ,0x00000000) //  0        *** != 0xfc3468e3
 164 //NHSTUB(displaybusyonscreen                  ,0x00000000) //  0        *** != 0xfc319699
 165 //NHSTUB(reboot_fw_update                     ,0x00000000) //  0        *** != 0xfc3a119f
 166 //NHSTUB(undisplaybusyonscreen                ,0x00000000) //  0        *** != 0xfc319731
 167 //NHSTUB(CancelHPTimer                        ,0x00000000) //  0        *** != 0xfc15bbfd
 168 
 169 NHSTUB(AllocateUncacheableMemory              ,0xfc16cba9) //  0
 170 NHSTUB(Close                                  ,0xfc332995) //  0
 171 NHSTUB(CreateBinarySemaphore                  ,0x010e5939) //  0
 172 NHSTUB(CreateTask                             ,0x010e5089) //  0
 173 NHSTUB(DebugAssert                            ,0x010e5c8d) //  0
 174 NHSTUB(DeleteDirectory_Fut                    ,0xfc301c31) //  0
 175 NHSTUB(DeleteFile_Fut                         ,0xfc301be7) //  0
 176 NHSTUB(DoAELock                               ,0xfc276775) //  0
 177 NHSTUB(DoAFLock                               ,0xfc2763b9) //  0
 178 NHSTUB2(ExecuteEventProcedure                  ,0xfc302119) //  0
 179 NHSTUB(ExitTask                               ,0x010e526b) //  0
 180 NHSTUB(Fclose_Fut                             ,0xfc301c93) //  0
 181 NHSTUB(Fgets_Fut                              ,0xfc301d71) //  0
 182 NHSTUB(Fopen_Fut                              ,0xfc301c6b) //  0
 183 NHSTUB(Fread_Fut                              ,0xfc301d05) //  0
 184 NHSTUB(FreeUncacheableMemory                  ,0xfc16cbd5) //  0
 185 NHSTUB(Fseek_Fut                              ,0xfc301da3) //  0
 186 NHSTUB(Fwrite_Fut                             ,0xfc301d3b) //  0
 187 NHSTUB(GetBatteryTemperature                  ,0xfc143bc5) //  0
 188 NHSTUB(GetCCDTemperature                      ,0xfc143b69) //  0
 189 NHSTUB(GetCurrentAvValue                      ,0xfc14e00d) //  0
 190 NHSTUB(GetCurrentShutterSpeed                 ,0xfc16d50b) //  0
 191 NHSTUB(GetUsableMaxAv                         ,0xfc1c1c89) //  0
 192 NHSTUB(GetUsableMinAv                         ,0xfc1c1c77) //  0
 193 NHSTUB(GetDrive_ClusterSize                   ,0xfc332033) //  0
 194 NHSTUB(GetDrive_FreeClusters                  ,0xfc332537) //  0
 195 NHSTUB(GetFocusLensSubjectDistance            ,0xfc2fa907) //  0
 196 NHSTUB(GetKbdState                            ,0xfc0707e9) //  0
 197 NHSTUB(GetMemInfo                             ,0xfc41e37d) //  0
 198 NHSTUB(GetOpticalTemperature                  ,0xfc143c1f) //  0
 199 NHSTUB(GetParameterData                       ,0xfc0aacfd) //  0
 200 NHSTUB(GetPropertyCase                        ,0xfc321f09) //  0
 201 NHSTUB(GetSystemTime                          ,0xfc3a46d1) //  0
 202 NHSTUB(GetVRAMHPixelsSize                     ,0xfc13e7ad) //  0
 203 NHSTUB(GetVRAMVPixelsSize                     ,0xfc13e7b5) //  0
 204 NHSTUB(GetZoomLensCurrentPoint                ,0xfc2edc93) //  0
 205 NHSTUB(GetZoomLensCurrentPosition             ,0xfc2eda9d) //  0
 206 NHSTUB(GiveSemaphore                          ,0x010e5aa5) //  0
 207 NHSTUB(IsStrobeChargeCompleted                ,0xfc13ad3f) //  0
 208 NHSTUB(LEDDrive                               ,0xfc1d94bd) //  0
 209 NHSTUB(LocalTime                              ,0x010e61a1) //  0
 210 NHSTUB(LockMainPower                          ,0xfc15c413) //  0
 211 NHSTUB(MakeDirectory_Fut                      ,0xfc332c7f) //  0
 212 NHSTUB(MoveFocusLensToDistance                ,0xfc4b4d2f) //  0
 213 NHSTUB(MoveIrisWithAv                         ,0xfc39d5ad) //  0
 214 NHSTUB(MoveZoomLensWithPoint                  ,0xfc39dd77) //  0
 215 NHSTUB(Open                                   ,0xfc332911) //  0
 216 NHSTUB(PB2Rec                                 ,0xfc0de3a9) //  0
 217 NHSTUB(PT_MoveDigitalZoomToWide               ,0xfc275c6f) //  0
 218 NHSTUB(PT_MoveOpticalZoomAt                   ,0xfc1da3e9) //  0
 219 NHSTUB(PT_PlaySound                           ,0xfc333e19) //  0
 220 NHSTUB(PostLogicalEventForNotPowerType        ,0xfc332ff9) //  0
 221 NHSTUB(PostLogicalEventToUI                   ,0xfc333025) //  0
 222 NHSTUB(PutInNdFilter                          ,0xfc4b5599) //  0
 223 NHSTUB(PutOutNdFilter                         ,0xfc4b55bf) //  0
 224 NHSTUB(Read                                   ,0xfc136eb9) //  0
 225 NHSTUB(ReadFastDir                            ,0xfc11934d) //  0
 226 NHSTUB(Rec2PB                                 ,0xfc0de3ef) //  0
 227 //NHSTUB(RefreshPhysicalScreen                ,0x00000000) //  0            == 0x00000000
 228 NHSTUB(ScreenLock                             ,0xfc3379fd) //  0
 229 NHSTUB(ScreenUnlock                           ,0xfc337a3b) //  0
 230 NHSTUB(SetAE_ShutterSpeed                     ,0xfc3fbedd) //  0
 231 NHSTUB(SetAutoShutdownTime                    ,0xfc15c45f) //  0
 232 NHSTUB(SetCurrentCaptureModeType              ,0xfc2fd1c9) //  0
 233 NHSTUB(SetLogicalEventActive                  ,0xfc323107) //  0
 234 NHSTUB(SetPropertyCase                        ,0xfc321dd7) //  0
 235 NHSTUB(SetScriptMode                          ,0xfc32313f) //  0
 236 NHSTUB(SleepTask                              ,0x010e4ff1) //  0
 237 NHSTUB(TakeSemaphore                          ,0x010e5a2d) //  0
 238 NHSTUB(TurnOffBackLight                       ,0xfc3051bd) //  0
 239 NHSTUB(TurnOnBackLight                        ,0xfc305173) //  0
 240 NHSTUB(TurnOnDisplay                          ,0xfc0c87b1) //  0
 241 NHSTUB(TurnOffDisplay                         ,0xfc0c87c3) //  0
 242 NHSTUB(UnlockAE                               ,0xfc276793) //  0
 243 NHSTUB(UnlockAF                               ,0xfc2763e9) //  0
 244 NHSTUB(UnlockMainPower                        ,0xfc15c3af) //  0
 245 NHSTUB(VbattGet                               ,0xfc137779) //  0
 246 NHSTUB(Write                                  ,0xfc3329cd) //  0
 247 NHSTUB(_log                                   ,0x01109198) //  0
 248 NHSTUB(_log10                                 ,0x011096b8) //  0
 249 NHSTUB(_pow                                   ,0x01109820) //  0
 250 NHSTUB(_sqrt                                  ,0x0110b8a0) //  0
 251 NHSTUB(add_ptp_handler                        ,0xfc0f4933) //  0
 252 NHSTUB(close                                  ,0xfc136db3) //  0
 253 NHSTUB(exmem_alloc                            ,0xfc07127f) //  0
 254 NHSTUB(exmem_free                             ,0xfc0712bf) //  0
 255 NHSTUB(free                                   ,0xfc337f63) //  0
 256 NHSTUB(kbd_p1_f                               ,0xfc07339f) //  0
 257 NHSTUB(kbd_p1_f_cont                          ,0xfc0733a7) //  0
 258 NHSTUB(kbd_p2_f                               ,0xfc072e35) //  0
 259 NHSTUB(kbd_read_keys                          ,0xfc073369) //  0
 260 NHSTUB(kbd_read_keys_r2                       ,0xfc070705) //  0
 261 NHSTUB(lseek                                  ,0xfc332af1) //  0
 262 NHSTUB(malloc                                 ,0xfc337f2d) //  0
 263 NHSTUB(memcmp                                 ,0xfc3380e5) //  0
 264 NHSTUB(memcpy                                 ,0xfc0e7d9d) //  0
 265 NHSTUB(memset                                 ,0xfc10924d) //  0
 266 NHSTUB(mktime_ext                             ,0xfc41ee81) //  0
 267 NHSTUB(open                                   ,0xfc136d43) //  0
 268 NHSTUB(OpenFastDir                            ,0xfc1192ad) //  0
 269 NHSTUB(closedir                               ,0xfc119275) //  0
 270 NHSTUB(get_fstype                             ,0xfc331fcd) //  0
 271 NHSTUB(qsort                                  ,0xfc4374c1) //  0
 272 NHSTUB(rand                                   ,0xfc1619cf) //  0
 273 NHSTUB(set_control_event                      ,0xfc322ed5) //  0
 274 NHSTUB(srand                                  ,0xfc1619c9) //  0
 275 NHSTUB(stat                                   ,0xfc332b29) //  0
 276 NHSTUB(strcat                                 ,0xfc337fb9) //  0
 277 NHSTUB(strchr                                 ,0xfc161a41) //  0
 278 NHSTUB(strcmp                                 ,0xfc338061) //  0
 279 NHSTUB(strcpy                                 ,0xfc33803d) //  0
 280 NHSTUB(strftime                               ,0xfc1615a5) //  0
 281 NHSTUB(strlen                                 ,0xfc3380bf) //  0
 282 NHSTUB(strncmp                                ,0xfc161a17) //  0
 283 NHSTUB(strncpy                                ,0xfc337f95) //  0
 284 NHSTUB(strrchr                                ,0xfc0e7e31) //  0
 285 NHSTUB(strtol                                 ,0xfc0e7d8f) //  0
 286 NHSTUB(strtolx                                ,0xfc0e7c4d) //  0
 287    DEF(task_CaptSeq                           ,0xfc15275f) //  0
 288    DEF(task_DvlpSeqTask                       ,0xfc1dda2b) //  0
 289    DEF(task_ExpDrv                            ,0xfc291cf7) //  0
 290    DEF(task_FileWrite                         ,0xfc065dc7) //  0
 291    DEF(task_InitFileModules                   ,0xfc0bda11) //  0
 292    DEF(task_MovieRecord                       ,0xfc1d6cad) //  0
 293    DEF(task_PhySw                             ,0xfc073069) //  0
 294    DEF(task_TricInitTask                      ,0xfc4049a9) //  0
 295    DEF(hook_CreateTask                        ,0x010e5088) //  0
 296 NHSTUB(time                                   ,0x010e5e6f) //  0
 297 NHSTUB(vsprintf                               ,0xfc0bf85b) //  0
 298 NHSTUB(EngDrvRead                             ,0xfc337df5) //  0
 299 NHSTUB(PTM_GetCurrentItem                     ,0xfc322a71) //  0
 300 NHSTUB(DisableISDriveError                    ,0xfc39f10d) //  0
 301 NHSTUB(SetHPTimerAfterNow                     ,0xfc15bb65) //  0
 302 NHSTUB(SetEventFlag                           ,0x010e549b) //  0
 303 NHSTUB(transfer_src_overlay                   ,0xfc3370b1) //  0
 304 NHSTUB(bzero                                  ,0x01106b1c) //  0
 305 NHSTUB(memset32                               ,0x01106b20) //  0
 306 NHSTUB(PT_MFOn                                ,0xfc277783) //  0
 307 NHSTUB(PT_MFOff                               ,0xfc2777b7) //  0
 308 NHSTUB(GetAdChValue                           ,0xfc0e1773) //  0
 309 NHSTUB(EnableHDMIPower                        ,0xfc0bdd99) //  0
 310 NHSTUB(DisableHDMIPower                       ,0xfc0bddc9) //  0

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