root/platform/g7x/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 //   Main firmware start: 0xfc020000
   6 //   DRYOS R55 (DRYOS version 2.3, release #0055+p6)
   7 //   Firmware Ver GM1.00B   // Found @ 0xfc1591f8, "GM1.00B" @ 0xfc159205
   8 
   9 // Values for makefile.inc
  10 //   PLATFORMOSVER = 55
  11 //   MEMISOSTART = 0x36a354
  12 //   MEMBASEADDR = 0x8000
  13 //   ARAM_HEAP_START = 0x006ce000 #  Found @0xfc101938
  14 //   ARAM_HEAP_SIZE = 0x00022000 #  Found @0xfc101912
  15 
  16 // Detected address ranges:
  17 // ROM      0xfc000000 - 0xfe000000 (33554432 bytes)
  18 // RAM code 0x010e1000 - 0x0110dc1c copied from 0xfcd67020 ( 183324 bytes)
  19 // RAM data 0x00008000 - 0x000352b8 copied from 0xfcd39d68 ( 185016 bytes)
  20 
  21 // Zico Xtensa blobs:
  22 // zico_0 0xbff20000 - 0xbff277b8 copied from 0xfcb212d4 (  30648 bytes)
  23 // zico_1 0xbff00000 - 0xbff04ad0 copied from 0xfcb28a94 (  19152 bytes)
  24 // zico_2 0x80a00000 - 0x80b06100 copied from 0xfcb2d56c (1073408 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 @0xfc0ef0fc
  32 //#define CAM_HAS_ND_FILTER 1 // Camera has ND filter
  33 // Camera has an iris (CAM_HAS_IRIS_DIAPHRAGM default)
  34 
  35 // physw_event_table 0xfc613700 Found @0xfc075c9a
  36 // Values below go in 'platform_kbd.h':
  37 //#define SD_READONLY_FLAG    0x20000000 // Found @0xfc6137e0, levent 0x20a
  38 //#define SD_READONLY_IDX     1
  39 //#define USB_MASK            0x10000000 // Found @0xfc613820, levent 0x202
  40 //#define USB_IDX             2
  41 //#define BATTCOVER_FLAG      0x04000000 // Found @0xfc613818, levent 0x205
  42 //#define BATTCOVER_IDX       2
  43 //#define ANALOG_AV_FLAG      0x00008000 // Found @0xfc6137d0, levent 0x200 (non-inverted logic)
  44 //#define ANALOG_AV_IDX       1
  45 
  46 // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  47 // WARNING: Values only verified on sx280hs (R52) and g7x (R55p6) errors likely on other cams!
  48 //KeyMap keymap[] = {
  49 //    { 0, KEY_SHOOT_FULL      ,0x00040001 }, // Found @0xfc613700, levent 0x01
  50 //    { 0, KEY_SHOOT_HALF      ,0x00040000 }, // Found @0xfc613778, levent 0x00
  51 //    { 0, KEY_SHOOT_FULL_ONLY ,0x00000001 }, // Found @0xfc613700, levent 0x01
  52 //    { 0, KEY_ZOOM_OUT        ,0x00000002 }, // Found @0xfc613708, levent 0x04
  53 //    { 0, KEY_ZOOM_IN         ,0x00000004 }, // Found @0xfc613710, levent 0x03
  54 //    { 0, KEY_VIDEO           ,0x00000008 }, // Found @0xfc613718, levent 0x02
  55 //    { 0, KEY_MENU            ,0x00000010 }, // Found @0xfc613720, levent 0x14
  56 //    { 0, KEY_UP              ,0x00000020 }, // Found @0xfc613728, levent 0x06
  57 //    { 0, KEY_DOWN            ,0x00000040 }, // Found @0xfc613730, levent 0x07
  58 //    { 0, KEY_RIGHT           ,0x00000080 }, // Found @0xfc613738, levent 0x09
  59 //    { 0, KEY_LEFT            ,0x00000100 }, // Found @0xfc613740, levent 0x08
  60 //    { 0, KEY_SET             ,0x00000200 }, // Found @0xfc613748, levent 0x0a
  61 //    { 0, KEY_PLAYBACK        ,0x00000800 }, // Found @0xfc613758, levent 0x101
  62 //    { 0, KEY_POWER           ,0x00020000 }, // Found @0xfc613770, levent 0x100
  63 //    { 0, 0, 0 }
  64 //};
  65 
  66 // canon_mode_list 0xfc94b3f8 Found @0xfc118650
  67 // Check modemap values from 'platform/CAMERA/shooting.c':
  68 // 33297  0x8211 In firmware but not in current modemap
  69 //  4172  0x104c In firmware but not in current modemap
  70 
  71 // Known propcases
  72 // //      PROPCASE_AFSTEP 13
  73 // #define PROPCASE_FOCUS_STATE 18
  74 // #define PROPCASE_AV 23
  75 // #define PROPCASE_BV 38
  76 // //      PROPCASE_DELTA_DIGITALGAIN 82
  77 // #define PROPCASE_DELTA_SV 84
  78 // //      PROPCASE_DELTA_ND 85
  79 // #define PROPCASE_EV_CORRECTION_2 216
  80 // #define PROPCASE_ORIENTATION_SENSOR 228
  81 // #define PROPCASE_SV_MARKET 255
  82 //         PROPCASE_SVFIX not found
  83 // #define PROPCASE_TV 272
  84 // Guessed propset: 7, 9
  85 
  86 // EXMEM types:
  87 // EXMEM_RAMDISK        0
  88 // EXMEM_COM            1
  89 // EXMEM_FORMATTER      2
  90 // EXMEM_SHADING        3
  91 // EXMEM_FAMODE         4
  92 // EXMEM_FIRMUP         5
  93 // EXMEM_FIRMUP_VRAM    6
  94 // EXMEM_FIRMUP_INFLATE 7
  95 // EXMEM_FIRMUP_PICTURESTYLE 8
  96 // EXMEM_DVLPWORK       9
  97 // EXMEM_EVF            10
  98 // EXMEM_SCRIPT         11
  99 // EXMEM_GPS            12
 100 // EXMEM_FACEAUTH       13
 101 // EXMEM_OHYEARLOG      14
 102 // EXMEM_WIFI           15
 103 // EXMEM_MULTI_PLY      16
 104 // EXMEM_FEP            17
 105 // EXMEM_LENS_FIRMUP    18
 106 // EXMEM_LENS_COMPENSATION 19
 107 // EXMEM_FILESTORE      20
 108 // EXMEM_MOVIE_REC      21
 109 // EXMEM_MOVIE_PLY      22
 110 // EXMEM_WIFI_RESIZE    23
 111 // EXMEM_PCEVF          24
 112 // EXMEM_WIDE           25
 113 // EXMEM_NARROW         26
 114 // EXMEM_AUTO_GIS_MODE  27
 115 // EXMEM_NP_GIS_MODE    28
 116 // EXMEM_TRIPODHDR_MODE 29
 117 // EXMEM_HSHQ_MODE      30
 118 // EXMEM_CRAW_REC       31
 119 // EXMEM_CREATIVE_SHOT  32
 120 // EXMEM_BACKBLUR       33
 121 // EXMEM_ASTRO          34
 122 
 123 // Values below can be overridden in 'stubs_min.S':
 124 DEF(ctypes                            ,0xfc5bd388)
 125 DEF(physw_run                         ,0x000082c8) // Found @0xfc0780c2
 126 DEF(physw_sleep_delay                 ,0x000082d0) // (0x82c8+0x8) Found @0xfc0780c6
 127 DEF(physw_status                      ,0x00036c10) // Found @0xfc0783fe
 128 DEF(fileio_semaphore                  ,0x000139b8) // Found @0xfc073b86
 129 DEF(levent_table                      ,0xfc6deb24) // Found @0xfc0d09b4
 130 DEF(FlashParamsTable                  ,0xfc94b75c) // Found @0xfc118664
 131 DEF(playrec_mode                      ,0x0000bec4) // (0xbec0+0x4) Found @0xfc2f77f6
 132 DEF(jpeg_count_str                    ,0x0015d630) // Found @0xfc103a94
 133 DEF(zoom_busy                         ,0x00013e18) // (0x13df8+0x20) Found @0xfc1dac7e
 134 DEF(focus_busy                        ,0x00013bb0) // (0x13ba8+0x8) Found @0xfc31ef22
 135 DEF(imager_active                     ,0x00008664) // (0x8660+0x4) Found @0xfc138a18
 136 DEF(_nrflag                           ,0x0001fa4c) // (0x1fa48+0x4) Found @0xfc383b7c
 137 DEF(active_bitmap_buffer              ,0x0000ca38) // (0xca04+0x34) Found @0xfc362064
 138 DEF_CONST(uiprop_count                      ,0x000000c7) // Found @0xfc0af556
 139 DEF(exmem_alloc_table                 ,0x00040020) // Found @0xfc079882
 140 DEF(exmem_types_table                 ,0xfcd3dcfc) // Found @0xfc079886
 141 DEF_CONST(exmem_type_count                  ,0x00000023) // Found @0xfcd3dcfc
 142 // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
 143 // each entry contains 2 int value(s), the first is the zoom focus length.
 144 // there are 101 entries in the table - set NUM_FL to 101
 145 //DEF(focus_len_table                         ,0xfdf2deb4) // Found @0xfdf2deb4,          stubs_min = 0xfdf2deb4 (0xfdf2deb4)
 146 
 147 //NHSTUB(Feof_Fut                             ,0x00000000) //  0        *** != 0xfc325d2d
 148 //NHSTUB(Fflush_Fut                           ,0x00000000) //  0        *** != 0xfc325d55
 149 //NHSTUB(GetDrive_TotalClusters               ,0x00000000) //  0        *** != 0xfc357be3
 150 //NHSTUB(GetFocusLensSubjectDistanceFromLens  ,0x00000000) //  0        *** != 0xfc31fe09
 151 //NHSTUB(GetImageFolder                       ,0x00000000) //  0        *** != 0xfc320ecb
 152 //NHSTUB(MakeSDCardBootable                   ,0x00000000) //  0        *** != 0xfc357f71
 153 //NHSTUB(RenameFile_Fut                       ,0x00000000) //  0        *** != 0xfc325add
 154 //NHSTUB(SetFileAttributes                    ,0x00000000) //  0        *** != 0xfc358325
 155 //NHSTUB(SetFileTimeStamp                     ,0x00000000) //  0        *** != 0xfc3582dd
 156 //NHSTUB(apex2us                              ,0x00000000) //  0        *** != 0xfc382693
 157 //NHSTUB(displaybusyonscreen                  ,0x00000000) //  0        *** != 0xfc345879
 158 //NHSTUB(undisplaybusyonscreen                ,0x00000000) //  0        *** != 0xfc345911
 159 //NHSTUB(CancelHPTimer                        ,0x00000000) //  0        *** != 0xfc158e25
 160 
 161 NHSTUB(AllocateUncacheableMemory              ,0xfc0ef0cd) //  0
 162 NHSTUB(Close                                  ,0xfc358091) //  0
 163 NHSTUB(CreateBinarySemaphore                  ,0x010e5965) //  0
 164 NHSTUB(CreateTask                             ,0x010e5089) //  0
 165 NHSTUB(DebugAssert                            ,0x010e5cb9) //  0
 166 NHSTUB(DeleteDirectory_Fut                    ,0xfc325b89) //  0
 167 NHSTUB(DeleteFile_Fut                         ,0xfc325b3f) //  0
 168 NHSTUB(DoAELock                               ,0xfc283955) //  0
 169 NHSTUB(DoAFLock                               ,0xfc2835bb) //  0
 170 //NHSTUB(EnterToCompensationEVF               ,0x00000000) //  0            == 0x00000000
 171 NHSTUB2(ExecuteEventProcedure                  ,0xfc326071) //  0
 172 //NHSTUB(ExitFromCompensationEVF              ,0x00000000) //  0            == 0x00000000
 173 NHSTUB(ExitTask                               ,0x010e526b) //  0
 174 //NHSTUB(ExpCtrlTool_StartContiAE             ,0x00000000) //  0            == 0x00000000
 175 //NHSTUB(ExpCtrlTool_StopContiAE              ,0x00000000) //  0            == 0x00000000
 176 NHSTUB(Fclose_Fut                             ,0xfc325beb) //  0
 177 NHSTUB(Fgets_Fut                              ,0xfc325cc9) //  0
 178 NHSTUB(Fopen_Fut                              ,0xfc325bc3) //  0
 179 NHSTUB(Fread_Fut                              ,0xfc325c5d) //  0
 180 NHSTUB(FreeUncacheableMemory                  ,0xfc0ef0f9) //  0
 181 NHSTUB(Fseek_Fut                              ,0xfc325cfb) //  0
 182 NHSTUB(Fwrite_Fut                             ,0xfc325c93) //  0
 183 NHSTUB(GetBatteryTemperature                  ,0xfc1403f9) //  0
 184 NHSTUB(GetCCDTemperature                      ,0xfc14039d) //  0
 185 NHSTUB(GetCurrentAvValue                      ,0xfc14816d) //  0
 186 NHSTUB(GetCurrentShutterSpeed                 ,0xfc16e733) //  0
 187 NHSTUB(GetUsableMaxAv                         ,0xfc469dd9) //  0
 188 NHSTUB(GetUsableMinAv                         ,0xfc469dc7) //  0
 189 NHSTUB(get_nd_value                           ,0xfc3cf71f) //  0
 190 NHSTUB(get_current_nd_value                   ,0xfc3cf6fb) //  0
 191 NHSTUB(GetDrive_ClusterSize                   ,0xfc357703) //  0
 192 NHSTUB(GetDrive_FreeClusters                  ,0xfc357c07) //  0
 193 NHSTUB(GetFocusLensSubjectDistance            ,0xfc31fb0f) //  0
 194 NHSTUB(GetKbdState                            ,0xfc075d95) //  0
 195 NHSTUB(GetMemInfo                             ,0xfc455ed1) //  0
 196 NHSTUB(GetOpticalTemperature                  ,0xfc140453) //  0
 197 NHSTUB(GetParameterData                       ,0xfc0afe85) //  0
 198 NHSTUB(GetPropertyCase                        ,0xfc34a783) //  0
 199 NHSTUB(GetSystemTime                          ,0xfc3d88b5) //  0
 200 NHSTUB(GetVRAMHPixelsSize                     ,0xfc13bef1) //  0
 201 NHSTUB(GetVRAMVPixelsSize                     ,0xfc13bef9) //  0
 202 NHSTUB(GetZoomLensCurrentPoint                ,0xfc1daec9) //  0
 203 NHSTUB(GetZoomLensCurrentPosition             ,0xfc1dae5d) //  0
 204 NHSTUB(GiveSemaphore                          ,0x010e5ad1) //  0
 205 NHSTUB(IsStrobeChargeCompleted                ,0xfc1862a5) //  0
 206 NHSTUB(LEDDrive                               ,0xfc1e23a1) //  0
 207 NHSTUB(LocalTime                              ,0x010e61cd) //  0
 208 NHSTUB(LockMainPower                          ,0xfc15941f) //  0
 209 NHSTUB(MakeDirectory_Fut                      ,0xfc35837b) //  0
 210 NHSTUB(MoveFocusLensToDistance                ,0xfc4f39b9) //  0
 211 NHSTUB(MoveIrisWithAv                         ,0xfc3d1af9) //  0
 212 NHSTUB(MoveZoomLensWithPoint                  ,0xfc3d2495) //  0
 213 NHSTUB(Open                                   ,0xfc35800d) //  0
 214 NHSTUB(PB2Rec                                 ,0xfc0deac5) //  0
 215 NHSTUB(PT_MoveDigitalZoomToWide               ,0xfc282fdf) //  0
 216 NHSTUB(PT_MoveOpticalZoomAt                   ,0xfc1e32d5) //  0
 217 NHSTUB(PT_PlaySound                           ,0xfc359819) //  0
 218 NHSTUB(PostLogicalEventForNotPowerType        ,0xfc3594d5) //  0
 219 NHSTUB(PostLogicalEventToUI                   ,0xfc359501) //  0
 220 NHSTUB(PutInNdFilter                          ,0xfc4f3ca9) //  0
 221 NHSTUB(PutOutNdFilter                         ,0xfc4f3ccf) //  0
 222 NHSTUB(Read                                   ,0xfc134541) //  0
 223 NHSTUB(ReadFastDir                            ,0xfc1184e9) //  0
 224 NHSTUB(Rec2PB                                 ,0xfc0deb09) //  0
 225 //NHSTUB(RefreshPhysicalScreen                ,0x00000000) //  0            == 0x00000000
 226 //NHSTUB(Restart                              ,0x00000000) //  0            == 0x00000000
 227 NHSTUB(ScreenLock                             ,0xfc361fcf) //  0
 228 NHSTUB(ScreenUnlock                           ,0xfc36200d) //  0
 229 NHSTUB(SetAE_ShutterSpeed                     ,0xfc4f02e1) //  0
 230 NHSTUB(SetAutoShutdownTime                    ,0xfc15946b) //  0
 231 NHSTUB(SetCurrentCaptureModeType              ,0xfc331c13) //  0
 232 NHSTUB(SetLogicalEventActive                  ,0xfc34b72b) //  0
 233 //NHSTUB(SetParameterData                     ,0x00000000) //  0            == 0x00000000
 234 NHSTUB(SetPropertyCase                        ,0xfc34a64f) //  0
 235 NHSTUB(SetScriptMode                          ,0xfc34b763) //  0
 236 NHSTUB(SleepTask                              ,0x010e4ff1) //  0
 237 NHSTUB(TakeSemaphore                          ,0x010e5a59) //  0
 238 NHSTUB(TurnOffBackLight                       ,0xfc32a833) //  0
 239 NHSTUB(TurnOnBackLight                        ,0xfc32a7f5) //  0
 240 NHSTUB(TurnOnDisplay                          ,0xfc0cd291) //  0
 241 NHSTUB(TurnOffDisplay                         ,0xfc0cd2a3) //  0
 242 NHSTUB(UnlockAE                               ,0xfc283973) //  0
 243 NHSTUB(UnlockAF                               ,0xfc2835eb) //  0
 244 NHSTUB(UnlockMainPower                        ,0xfc1593bb) //  0
 245 //NHSTUB(UnsetZoomForMovie                    ,0x00000000) //  0            == 0x00000000
 246 NHSTUB(VbattGet                               ,0xfc134e01) //  0
 247 NHSTUB(Write                                  ,0xfc3580c9) //  0
 248 //NHSTUB(WriteSDCard                          ,0x00000000) //  0            == 0x00000000
 249 NHSTUB(_log                                   ,0x01109310) //  0
 250 NHSTUB(_log10                                 ,0x01109830) //  0
 251 NHSTUB(_pow                                   ,0x01109998) //  0
 252 NHSTUB(_sqrt                                  ,0x0110ba18) //  0
 253 NHSTUB(add_ptp_handler                        ,0xfc0f38b7) //  0
 254 NHSTUB(close                                  ,0xfc13443b) //  0
 255 NHSTUB(exmem_alloc                            ,0xfc079dbb) //  0
 256 NHSTUB(exmem_free                             ,0xfc079dfb) //  0
 257 NHSTUB(free                                   ,0xfc3623fb) //  0
 258 NHSTUB(kbd_p1_f                               ,0xfc0783f7) //  0
 259 NHSTUB(kbd_p1_f_cont                          ,0xfc0783ff) //  0
 260 NHSTUB(kbd_p2_f                               ,0xfc077e8d) //  0
 261 NHSTUB(kbd_read_keys                          ,0xfc0783c1) //  0
 262 NHSTUB(kbd_read_keys_r2                       ,0xfc075c97) //  0
 263 NHSTUB(lseek                                  ,0xfc3581ed) //  0
 264 NHSTUB(malloc                                 ,0xfc3623c5) //  0
 265 NHSTUB(memcmp                                 ,0xfc36257d) //  0
 266 NHSTUB(memcpy                                 ,0xfc0e7d41) //  0
 267 NHSTUB(memset                                 ,0xfc1096fd) //  0
 268 NHSTUB(mktime_ext                             ,0xfc457749) //  0
 269 NHSTUB(open                                   ,0xfc1343cb) //  0
 270 NHSTUB(OpenFastDir                            ,0xfc118449) //  0
 271 NHSTUB(closedir                               ,0xfc118411) //  0
 272 NHSTUB(get_fstype                             ,0xfc35769d) //  0
 273 NHSTUB(qsort                                  ,0xfc248dcd) //  0
 274 NHSTUB(rand                                   ,0xfc161a83) //  0
 275 //NHSTUB(reboot_fw_update                     ,0x00000000) //  0            == 0x00000000
 276 NHSTUB(set_control_event                      ,0xfc34b4a5) //  0
 277 NHSTUB(srand                                  ,0xfc161a7d) //  0
 278 NHSTUB(stat                                   ,0xfc358225) //  0
 279 NHSTUB(strcat                                 ,0xfc36242d) //  0
 280 NHSTUB(strchr                                 ,0xfc161af5) //  0
 281 NHSTUB(strcmp                                 ,0xfc3624f9) //  0
 282 NHSTUB(strcpy                                 ,0xfc3624d5) //  0
 283 NHSTUB(strftime                               ,0xfc1614f5) //  0
 284 NHSTUB(strlen                                 ,0xfc362557) //  0
 285 NHSTUB(strncmp                                ,0xfc161acb) //  0
 286 NHSTUB(strncpy                                ,0xfc36244f) //  0
 287 NHSTUB(strrchr                                ,0xfc0e7dd5) //  0
 288 NHSTUB(strtol                                 ,0xfc161a6f) //  0
 289 NHSTUB(strtolx                                ,0xfc16192d) //  0
 290    DEF(task_CaptSeq                           ,0xfc1501d9) //  0
 291    DEF(task_DvlpSeqTask                       ,0xfc1e6837) //  0
 292    DEF(task_ExpDrv                            ,0xfc2a575d) //  0
 293    DEF(task_FileWrite                         ,0xfc06b31d) //  0
 294    DEF(task_InitFileModules                   ,0xfc0c22d1) //  0
 295    DEF(task_MovieRecord                       ,0xfc14cd13) //  0
 296    DEF(task_PhySw                             ,0xfc0780c1) //  0
 297    DEF(task_TouchPanel                        ,0xfc0e2223) //  0
 298    DEF(task_TricInitTask                      ,0xfc507455) //  0
 299    DEF(hook_CreateTask                        ,0x010e5088) //  0
 300 NHSTUB(time                                   ,0x010e5e9b) //  0
 301 NHSTUB(vsprintf                               ,0xfc0c38cf) //  0
 302 NHSTUB(EngDrvRead                             ,0xfc360b31) //  0
 303 NHSTUB(PTM_GetCurrentItem                     ,0xfc34b2ab) //  0
 304 NHSTUB(DisableISDriveError                    ,0xfc3d2a39) //  0
 305 NHSTUB(SetHPTimerAfterNow                     ,0xfc158d8d) //  0
 306 NHSTUB(SetEventFlag                           ,0x010e549b) //  0
 307 NHSTUB(transfer_src_overlay                   ,0xfc361697) //  0
 308 NHSTUB(bzero                                  ,0x01106b5c) //  0
 309 NHSTUB(memset32                               ,0x01106b60) //  0
 310 NHSTUB(PT_MFOn                                ,0xfc2849e5) //  0
 311 NHSTUB(PT_MFOff                               ,0xfc284a19) //  0
 312 NHSTUB(GetAdChValue                           ,0xfc0e103b) //  0
 313 NHSTUB(EnableHDMIPower                        ,0xfc0c3389) //  0
 314 NHSTUB(DisableHDMIPower                       ,0xfc0c33bf) //  0

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