Guest User

Untitled

a guest
May 25th, 2017
108
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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.00D // Found @ 0xff0ac3bc, "GM1.00D" @ 0xff0ac3c9
  7. // Firmware build timestamp: Nov 14 2016 10:10:59
  8. // Canon IXUS 190
  9.  
  10. // Values for makefile.inc
  11. // PLATFORMOSVER = 59
  12. // PLATFORMID = 13011 (0x32d3) // Found @ 0xfffe0270
  13. // MAXRAMADDR = 0x07ffffff
  14. // MEMISOSTART = 0x0028e804
  15. // KEYSYS = ? Not found, possible new firmware encryption key. // Found @ 0xff014590
  16.  
  17. // Note, ROM copied to RAM :- from 0xff7762e0, to 0x006b1000, len 48241 words.
  18.  
  19. // Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S'
  20. // Name Address Rule % Comp to stubs_entry_2.S
  21. NHSTUB(DeleteFile_Fut ,0xff026cf0) // 1 90%
  22. NHSTUB(GetFocusLensSubjectDistanceFromLens ,0xff1d54f0) // 3 90%
  23. // ERROR: MakeDirectory_Fut is not found. //--- --- *** != 0x12345678
  24. // ERROR: RefreshPhysicalScreen is not found. //--- --- *** != 0x12345678
  25. // ERROR: TurnOffBackLight is not found. //--- --- *** != 0x12345678
  26. // ERROR: TurnOnBackLight is not found. //--- --- *** != 0x12345678
  27. // ERROR: close is not found. //--- --- *** != 0x12345678
  28. // ERROR: exmem_alloc is not found. //--- --- *** != 0x12345678
  29. // ERROR: open is not found. //--- --- *** != 0x12345678
  30.  
  31. // Check of modemap from 'platform/CAMERA/shooting.c':
  32. // Firmware modemap table found @ff361518 -> ff6cc3b4
  33. // Mode 32814 in firmware but not in current modemap
  34. // Mode 33337 in firmware but not in current modemap
  35. // Mode 33340 in firmware but not in current modemap
  36. // Mode 33344 in firmware but not in current modemap
  37. // Mode 33333 in firmware but not in current modemap
  38. // Current modemap entry not found in firmware - MODE_SNOW 32798
  39. // Current modemap entry not found in firmware - MODE_SUPER_VIVID 33330
  40. // Current modemap entry not found in firmware - MODE_LIVE 33345
  41. // Current modemap entry not found in firmware - MODE_MONOCHROME 33343
  42. // Current modemap entry not found in firmware - MODE_TOY_CAMERA 33339
  43. // Current modemap entry not found in firmware - MODE_FISHEYE 33335
  44. // Current modemap entry not found in firmware - MODE_DIGITAL_IS 33347
  45. // Current modemap entry not found in firmware - MODE_LOWLIGHT 32813
  46.  
  47. // Values below can be overridden in 'stubs_min.S':
  48. DEF(physw_status ,0x0001469c) // Found @0xff02d0ac
  49. DEF(physw_run ,0x00001be4) // Found @0xff02cb88
  50. DEF(physw_sleep_delay ,0x00001bec) // Found @0xff02cb88
  51. DEF(levent_table ,0xff6000f8) // Found @0xff6000f8
  52. DEF(FlashParamsTable ,0xff6cc774) // Found @0xff6cc774
  53. DEF(movie_status ,0x000078e4) // Found @0xff1e078c
  54. DEF(video_compression_rate ,0x00007894) // Found @0xff1e1460
  55. DEF(full_screen_refresh ,0x0000847c) // Found @0xff203ab4
  56. DEF(canon_menu_active ,0x0000407c) // Found @0xff0b4bd4
  57. DEF(canon_shoot_menu_active ,0x0000a0a1) // Found @0xff272b60
  58. DEF(zoom_status ,0x0000b62c) // Found @0xff179148
  59. // focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
  60. // each entry contains 2 int value(s), the first is the zoom focus length.
  61. // there are 101 entries in the table - set NUM_FL to 101
  62. DEF(focus_len_table ,0xfffee67c) // Found @0xfffee67c
  63. DEF(zoom_busy ,0x00007648) // Found @0xff1d8058
  64. DEF(focus_busy ,0x0000750c) // Found @0xff1d3f54
  65. // Palette colour tables found @ 0xff6044c8
  66. // Camera appears to have only 1 RAW buffer @ 0x43924c60 (Found @0xff4450bc)
  67. DEF(fileio_semaphore ,0x00001c80) // Found @0xff02fbbc
  68. DEF_CONST(uiprop_count ,0x000000e9) // Found @0xff1f9bc8
  69.  
  70. // Values below go in 'lib.c':
  71. //void *vid_get_bitmap_fb() { return (void*)0x40711000; } // Found @0xff070edc
  72. //void *vid_get_viewport_fb() { return (void*)0x40866b80; } // Found @0xff44350c
  73. DEF(viewport_fb_d ,0x0000374c) // Found 0x36f0 (@0xff08e3f8) + 0x5c (@0xff08e430)
  74. //void *vid_get_viewport_fb_d() { return (void*)(*(int*)(0x36f0+0x5c)); } // Found @0xff08e3f8 & 0xff08e430
  75. DEF(jpeg_count_str ,0x000e8200) // Found @0xff25c6d0
  76. //char *camera_jpeg_count_str() { return (char*)0x000e8200; } // Found @0xff25c6d0
  77.  
  78. // Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
  79.  
  80. // Keymap values for kbd.c. Additional keys may be present, only common values included here.
  81. //static KeyMap keymap[] = {
  82. // { 0, KEY_SHOOT_FULL ,0x0000000c }, // Found @0xff5ba41c, levent 0x01
  83. // { 0, KEY_SHOOT_FULL_ONLY ,0x00000008 }, // Found @0xff5ba41c, levent 0x01
  84. // { 0, KEY_SHOOT_HALF ,0x00000004 }, // Found @0xff5ba414, levent 0x00
  85. // { 0, KEY_ZOOM_IN ,0x00000200 }, // Found @0xff5ba424, levent 0x03
  86. // { 0, KEY_ZOOM_OUT ,0x00000400 }, // Found @0xff5ba42c, levent 0x04
  87. // { 2, KEY_POWER ,0x00000020 }, // Found @0xff5ba43c, levent 0x100
  88. // { 2, KEY_PLAYBACK ,0x00000080 }, // Found @0xff5ba44c, levent 0x101
  89. // { 2, KEY_VIDEO ,0x00000400 }, // Found @0xff5ba45c, levent 0x02
  90. // { 2, KEY_SET ,0x00000800 }, // Found @0xff5ba464, levent 0x0a
  91. // { 2, KEY_LEFT ,0x00001000 }, // Found @0xff5ba46c, levent 0x08
  92. // { 2, KEY_UP ,0x00002000 }, // Found @0xff5ba474, levent 0x06
  93. // { 2, KEY_RIGHT ,0x00004000 }, // Found @0xff5ba47c, levent 0x09
  94. // { 2, KEY_DOWN ,0x00008000 }, // Found @0xff5ba484, levent 0x07
  95. // { 0, 0, 0 }
  96. //};
  97.  
  98. // Values below go in 'platform_camera.h':
  99. //#define CAM_DRYOS 1
  100. //#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
  101. //#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher
  102. //#define CAM_RAW_ROWPIX 5248 // Found @0xff1ab7d8
  103. //#define CAM_RAW_ROWS 3920 // Found @0xff1ab7e0
  104. //#undef CAM_UNCACHED_BIT
  105. //#define CAM_UNCACHED_BIT 0x40000000 // Found @0xff02800c
  106. //#define CAM_DATE_FOLDER_NAMING 0x080 // Found @0xff3216d8 (pass as 3rd param to GetImageFolder)
  107. //#define PARAM_CAMERA_NAME 3 // Found @0xff6caefc
  108.  
  109. // Misc stuff
  110. DEF(ctypes, 0xff5b7640)
  111.  
  112. // ISR flag: 0x194c, pointer to current task's control block: 0x1948
  113. // pointer to TCB area: 0x19cc, found @ 0xff7778a0
  114.  
  115. // LED table init @ 0xff187524
  116. // LED #1: 0xc022d200 (#98 in GPIO table), offset 0x98
  117. // LED #2: 0xc022d1fc (#97 in GPIO table), offset 0x8
  118. // GPIO table @ 0xff5b9ea4
  119.  
  120. // Stubs below matched 100%.
  121. // Name Address Comp to stubs_entry_2.S
  122. NHSTUB(AllocateUncacheableMemory ,0xff027fc8) //112
  123. NHSTUB(Close ,0xff027414) //120
  124. NHSTUB(CreateTask ,0xff025140) //120
  125. NHSTUB(DebugAssert ,0xff025500) //107
  126. NHSTUB(DeleteDirectory_Fut ,0xff026d64) //116
  127. NHSTUB(DoAELock ,0xff0333f0) //120
  128. NHSTUB(DoAFLock ,0xff033030) //120
  129. NHSTUB(EnterToCompensationEVF ,0xff033318) //104
  130. NHSTUB(ExecuteEventProcedure ,0xff035474) //104
  131. NHSTUB(ExitFromCompensationEVF ,0xff03336c) //104
  132. NHSTUB(ExitTask ,0xff0254b0) //120
  133. NHSTUB(ExpCtrlTool_StartContiAE ,0xff0458ac) //104
  134. NHSTUB(ExpCtrlTool_StopContiAE ,0xff045c2c) //104
  135. NHSTUB(Fclose_Fut ,0xff026dfc) //120
  136. NHSTUB(Feof_Fut ,0xff026fe8) // 1
  137. NHSTUB(Fflush_Fut ,0xff027024) // 1
  138. NHSTUB(Fgets_Fut ,0xff026f50) // 6
  139. NHSTUB(Fopen_Fut ,0xff026dbc) //120
  140. NHSTUB(Fread_Fut ,0xff026ea8) //120
  141. NHSTUB(FreeUncacheableMemory ,0xff028004) //112
  142. NHSTUB(Fseek_Fut ,0xff026f9c) //120
  143. NHSTUB(Fwrite_Fut ,0xff026efc) //120
  144. NHSTUB(GetBatteryTemperature ,0xff07a1a0) //102
  145. NHSTUB(GetCCDTemperature ,0xff07a12c) //102
  146. NHSTUB(GetCurrentAvValue ,0xff092160) //120
  147. NHSTUB(GetDrive_ClusterSize ,0xff031220) //122
  148. NHSTUB(GetDrive_FreeClusters ,0xff031984) //119
  149. NHSTUB(GetDrive_TotalClusters ,0xff031958) //122
  150. NHSTUB(GetFocusLensSubjectDistance ,0xff1d510c) //102
  151. NHSTUB(GetImageFolder ,0xff1b4028) //122
  152. NHSTUB(GetKbdState ,0xff076610) //109
  153. NHSTUB(GetMemInfo ,0xff023548) //115
  154. NHSTUB(GetOpticalTemperature ,0xff07a214) //120
  155. NHSTUB(GetParameterData ,0xff1fa718) //101
  156. NHSTUB(GetPropertyCase ,0xff0adcc4) //101
  157. NHSTUB(GetSystemTime ,0xff35ef24) //120
  158. NHSTUB(GetVRAMHPixelsSize ,0xff052834) //120
  159. NHSTUB(GetVRAMVPixelsSize ,0xff052840) //120
  160. NHSTUB(GetZoomLensCurrentPoint ,0xff1d84ec) //120
  161. NHSTUB(GetZoomLensCurrentPosition ,0xff34e8c0) //102
  162. NHSTUB(GiveSemaphore ,0xff028338) //120
  163. NHSTUB(IsStrobeChargeCompleted ,0xff0d7168) //102
  164. NHSTUB(LEDDrive ,0xff1e237c) //120
  165. NHSTUB(LocalTime ,0xff0c4ff0) //115
  166. NHSTUB(LockMainPower ,0xff0b07a4) //120
  167. NHSTUB(MakeSDCardBootable ,0xff031ee4) //105
  168. NHSTUB(MoveFocusLensToDistance ,0xff4473cc) //102
  169. NHSTUB(MoveIrisWithAv ,0xff35939c) //120
  170. NHSTUB(MoveZoomLensWithPoint ,0xff359550) //120
  171. NHSTUB(Open ,0xff0273b0) //120
  172. NHSTUB(PB2Rec ,0xff05f3b4) //104
  173. NHSTUB(PT_MoveDigitalZoomToWide ,0xff1e34f0) //102
  174. NHSTUB(PT_MoveOpticalZoomAt ,0xff1e34c0) //102
  175. NHSTUB(PT_PlaySound ,0xff0bfc30) //122
  176. NHSTUB(PostLogicalEventForNotPowerType ,0xff0afc38) //120
  177. NHSTUB(PostLogicalEventToUI ,0xff0afc90) //120
  178. NHSTUB(PutInNdFilter ,0xff359200) //102
  179. NHSTUB(PutOutNdFilter ,0xff359224) //102
  180. NHSTUB(Read ,0xff024004) //120
  181. NHSTUB(ReadFastDir ,0xff33ca7c) //115
  182. NHSTUB(Rec2PB ,0xff05f414) //104
  183. NHSTUB(RenameFile_Fut ,0xff026c5c) //116
  184. NHSTUB(Restart ,0xff0384fc) //122
  185. NHSTUB(ScreenLock ,0xff0b4484) //117
  186. NHSTUB(ScreenUnlock ,0xff0b44d8) //117
  187. NHSTUB(SetAE_ShutterSpeed ,0xff44232c) //102
  188. NHSTUB(SetAutoShutdownTime ,0xff0b0818) //120
  189. NHSTUB(SetCurrentCaptureModeType ,0xff0bc3b0) //120
  190. NHSTUB(SetFileAttributes ,0xff0278f0) // 6
  191. NHSTUB(SetFileTimeStamp ,0xff027878) // 6
  192. NHSTUB(SetLogicalEventActive ,0xff0b0304) //120
  193. NHSTUB(SetParameterData ,0xff1fa678) //101
  194. NHSTUB(SetPropertyCase ,0xff0adaf0) //101
  195. NHSTUB(SetScriptMode ,0xff0b0358) //120
  196. NHSTUB(SleepTask ,0xff039bd0) //120
  197. NHSTUB(TakeSemaphore ,0xff028254) //120
  198. NHSTUB(TurnOnDisplay ,0xff0712bc) //120
  199. NHSTUB(TurnOffDisplay ,0xff0712cc) //120
  200. NHSTUB(UIFS_WriteFirmInfoToFile ,0xff21a1dc) //120
  201. NHSTUB(UnlockAE ,0xff033480) //120
  202. NHSTUB(UnlockAF ,0xff033060) //120
  203. NHSTUB(UnlockMainPower ,0xff0b06fc) //120
  204. NHSTUB(VbattGet ,0xff02be2c) //120
  205. NHSTUB(Write ,0xff027b80) //120
  206. NHSTUB(WriteSDCard ,0x006b8324) //108
  207. NHSTUB(_log ,0x006dc020) //111
  208. NHSTUB(_log10 ,0x006dc560) //112
  209. NHSTUB(_pow ,0x006dc6d8) //121
  210. NHSTUB(_sqrt ,0x006de4f0) // 6
  211. NHSTUB(add_ptp_handler ,0xff1518dc) //121
  212. NHSTUB(apex2us ,0xff2d2d8c) //121
  213. NHSTUB(err_init_task ,0xff0248d0) //111
  214. NHSTUB(free ,0xff025840) //112
  215. NHSTUB(kbd_p1_f ,0xff02d0fc) //109
  216. NHSTUB(kbd_p1_f_cont ,0xff02d108) //109
  217. NHSTUB(kbd_p2_f ,0xff02c7b4) //109
  218. NHSTUB(kbd_read_keys ,0xff02d0ac) //109
  219. NHSTUB(kbd_read_keys_r2 ,0xff075fe0) //109
  220. NHSTUB(lseek ,0xff027724) //120
  221. NHSTUB(malloc ,0xff0257e8) //112
  222. NHSTUB(memcmp ,0xff0255c0) //120
  223. NHSTUB(memcpy ,0xff0c5aec) //120
  224. NHSTUB(memset ,0xff28e630) //120
  225. NHSTUB(mkdir ,0xff027988) //121
  226. NHSTUB(mktime_ext ,0xff0c527c) // 1
  227. NHSTUB(OpenFastDir ,0xff33c928) //115
  228. NHSTUB(closedir ,0xff33c8d8) //121
  229. NHSTUB(get_fstype ,0xff031198) //122
  230. NHSTUB(qsort ,0xff28e5d0) // 6
  231. NHSTUB(rand ,0xff0c5abc) //121
  232. NHSTUB(realloc ,0xff28e6ac) //115
  233. NHSTUB(reboot_fw_update ,0xff35da58) //106
  234. NHSTUB(set_control_event ,0xff0affc4) //111
  235. NHSTUB(srand ,0xff0c5ab0) //122
  236. NHSTUB(stat ,0xff02776c) //109
  237. NHSTUB(strcat ,0xff03a7e8) // 1
  238. NHSTUB(strchr ,0xff03a870) // 1
  239. NHSTUB(strcmp ,0xff0256bc) //120
  240. NHSTUB(strcpy ,0xff0255a8) //120
  241. NHSTUB(strftime ,0xff0c52fc) //113
  242. NHSTUB(strlen ,0xff025700) //120
  243. NHSTUB(strncmp ,0xff03a824) // 1
  244. NHSTUB(strncpy ,0xff028c34) // 1
  245. NHSTUB(strrchr ,0xff0c5c38) // 1
  246. NHSTUB(strtol ,0xff03a7d4) //101
  247. NHSTUB(strtolx ,0xff03a5d8) //109
  248. DEF(task_CaptSeq ,0xff09a174) //120
  249. DEF(task_DvlpSeqTask ,0xff1e7378) //120
  250. DEF(task_ExpDrv ,0xff0f1f5c) //120
  251. DEF(task_FileWrite ,0xff33818c) //120
  252. DEF(task_InitFileModules ,0xff062470) //120
  253. DEF(task_MovieRecord ,0xff1e152c) //120
  254. DEF(task_PhySw ,0xff02cb84) //120
  255. DEF(hook_CreateTask ,0xff025140) //105
  256. NHSTUB(time ,0xff039f7c) //119
  257. NHSTUB(vsprintf ,0xff028bf4) //115
  258. NHSTUB(EngDrvRead ,0xff02d20c) //102
  259. NHSTUB(PTM_GetCurrentItem ,0xff0b2474) //105
  260. NHSTUB(DisableISDriveError ,0xff35a950) //120
  261. NHSTUB(CancelHPTimer ,0xff0aa38c) //119
  262. NHSTUB(SetHPTimerAfterNow ,0xff0aa284) //119
  263. NHSTUB(SS_MFOn ,0xff1e3584) //120
  264. NHSTUB(SS_MFOff ,0xff1e3594) //120
  265. NHSTUB(GetAdChValue ,0xff0724a8) //120
RAW Paste Data