source: branches/release-1_0/platform/ixus960_sd950/sub/100d/stubs_entry.S @ 1635

Revision 1635, 14.4 KB checked in by philmoz, 2 years ago (diff)

Update for finsig_dryos:

  • try and find details for vid_get_viewport_fb_d() function and nrflag variable
  • add error handling to prevent crash if incorrect start address used.
  • Property svn:eol-style set to native
Line 
1// !!! THIS FILE IS GENERATED. DO NOT EDIT. !!!
2#include "stubs_asm.h"
3
4// Camera info:
5//   DRYOS R23 (DRYOS version 2.3, release #0023)
6//   Firmware Ver GM1.00D
7//   Canon DIGITAL IXUS 960 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12639 (0x315f) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12//   KEYSYS = d3                 // Found @ 0xffff31c8
13//   NEED_ENCODED_DISKBOOT = 1   // Found @ 0xffff31a8
14
15// Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S'
16//    Name                                     Address      Rule  %  Comp to stubs_entry_2.S
17//NSTUB(GetCCDTemperature                     ,0xff846c74) //102        *** != 0xff846e08
18//NSTUB(GetOpticalTemperature                 ,0xff846d54) //102        *** != 0xff846ce4
19//NSTUB(GetZoomLensCurrentPosition            ,0xffa1abc8) //102        *** != 0xff92b200
20//NSTUB(NewTaskShell                          ,0xff869278) //103        *** != 0xffc596b0
21//NSTUB(PutInNdFilter                         ,0xff928924) //102        *** != 0xff9e8ac4
22//NSTUB(PutOutNdFilter                        ,0xff928948) //102        *** != 0xff9e8afc
23//NSTUB(UIFS_WriteFirmInfoToFile              ,0xff983f58) //103        *** != 0xffd4a934
24//NSTUB(kbd_pwr_off                           ,0xff844630) //  2 67%    *** != 0xff844640
25//NSTUB(kbd_pwr_on                            ,0xff8445f0) //  2 86%        == 0xff8445f0
26//NSTUB(rename                                ,0xff8247dc) //  1        *** != 0xff82509c
27//NSTUB(write                                 ,0xff825074) //101        *** != 0xff81a3d8
28
29// Check of modemap from 'platform/CAMERA/shooting.c':
30// Firmware modemap table found @ff8711e4 -> ff86d7a4 -> ff944de8 -> ffa26630 -> ffad6ddc
31// No problems found with modemap table.
32
33// Values below can be overridden in 'stubs_min.S':
34//DEF(physw_status                            ,0x00014cfc) // Found @0xff823068,          stubs_min = 0x00014cfc (0x14CFC)
35//DEF(physw_run                               ,0x00001ca4) // Found @0xff822d18,          stubs_min = 0x00001ca4 (0x1ca4)
36//DEF(levent_table                            ,0xffab3444) // Found @0xffab3444,          stubs_min = 0xffab3444 (0xFFAB3444)
37//DEF(FlashParamsTable                        ,0xffad6f9c) // Found @0xffad6f9c,          stubs_min = 0xffad6f9c (0xFFAD6F9C)
38//DEF(movie_status                            ,0x00005524) // Found @0xff85824c,          stubs_min = 0x00005524 (0x5524)
39//DEF(canon_menu_active                       ,0x0000f7d4) // Found @0xff983100,          stubs_min = 0x0000f7d4 (0xF7D4)
40//DEF(canon_shoot_menu_active                 ,0x0000ede5) // Found @0xff9546d0,          stubs_min = 0x0000ede5 (0xEDE5)
41//DEF(playrec_mode                            ,0x000056d0) // Found @0xff85f234,          stubs_min = 0x000056d0 (0x56D0)
42//DEF(zoom_status                             ,0x00011e48) // Found @0xffa27e28,          stubs_min = 0x00011e48 (0x11E48)
43DEF(some_flag_for_af_scan                   ,0x00011d80) // Found @0xffa20824
44// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
45// each entry contains 3 int value(s), the first is the zoom focus length.
46// there are 8 entries in the table - set NUM_FL to 8
47DEF(focus_len_table                         ,0xfffe296c) // Found @0xfffe296c
48//DEF(zoom_busy                               ,0x0000de7c) // Found @0xff92a31c,          stubs_min = 0x0000de7c (0xDE7C)
49//DEF(focus_busy                              ,0x0000dd78) // Found @0xff92513c, ** != ** stubs_min = 0x0000dd7c (0xDD7C)
50//DEF(recreview_hold                          ,0x0000618c) // Found @0xff8774b4, ** != ** stubs_min = 0x0000ebfc (0xEBFC)
51
52// Values below go in 'lib.c':
53//void *vid_get_bitmap_fb()        { return (void*)0x10361000; }             // Found @0xff8404d8
54//void *vid_get_viewport_fb()      { return (void*)0x1065b540; }             // Found @0xff9ed600
55//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x5368+0x50)); } // Found @0xff851564 & 0xff85159c
56//char *camera_jpeg_count_str()    { return (char*)0x0005e288; }             // Found @0xff994a8c
57//long hook_raw_size()             { return 0x00ee9710; }                    // Found @0xff9ef4c4
58//int get_flash_params_count(void) { return 0x72; }                          // Found @0xff945ea4
59
60// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
61//#define SD_READONLY_FLAG    0x00020000 // Found @0xffa95924, levent 0x90a
62//#define SD_READONLY_IDX     2
63//#define USB_MASK            0x00040000 // Found @0xffa95930, levent 0x902
64//#define USB_IDX             2
65
66// Keymap values for kbd.c. Additional keys may be present, only common values included here.
67//static KeyMap keymap[] = {
68//    { 2, KEY_SHOOT_FULL      ,0x00000003 }, // Found @0xffa95888, levent 0x01
69//    { 2, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffa95888, levent 0x01
70//    { 2, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffa9587c, levent 0x00
71//    { 2, KEY_ZOOM_IN         ,0x00000004 }, // Found @0xffa95894, levent 0x02
72//    { 2, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffa958a0, levent 0x03
73//    { 2, KEY_DISPLAY         ,0x00000200 }, // Found @0xffa958e8, levent 0x0a
74//    { 2, KEY_MENU            ,0x00000400 }, // Found @0xffa958f4, levent 0x09
75//    { 0, 0, 0 }
76//};
77
78// Values below go in 'platform_camera.h':
79//#define CAM_DRYOS         1
80//#define CAM_RAW_ROWPIX    4104 // Found @0xff9e79d8
81//#define CAM_RAW_ROWS      3048 // Found @0xff9e79e0
82//#undef  CAM_UNCACHED_BIT
83//#define CAM_UNCACHED_BIT  0x10000000 // Found @0xff8298ec
84
85// Misc stuff
86DEF(ctypes, 0xffa95366)
87
88// For capt_seq.c
89//static long *nrflag = (long*)(0xe21c);       // Found @ ff933c9c
90
91// Stubs below matched 100%.
92//    Name                                     Address                Comp to stubs_entry_2.S
93NSTUB(AllocateMemory                          ,0xffa237b8) //103
94NSTUB(AllocateUncacheableMemory               ,0xff8298b0) //112
95NSTUB(Close                                   ,0xff824fc8) //101
96NSTUB(CreateTask                              ,0xff81baf0) //101
97NSTUB(DebugAssert                             ,0xff81bfc8) //111
98NSTUB(DeleteDirectory_Fut                     ,0xff824914) //  1
99NSTUB(DeleteFile_Fut                          ,0xff824830) //112
100//NSTUB(DoAFLock                              ,0xff826b54) //103            == 0xff826b54
101NSTUB(EnterToCompensationEVF                  ,0xff826ec8) //104
102NSTUB(ExecuteEventProcedure                   ,0xff81c1a8) //  1
103NSTUB(ExitFromCompensationEVF                 ,0xff826f18) //104
104NSTUB(ExitTask                                ,0xff81bd80) //101
105NSTUB(ExpCtrlTool_StartContiAE                ,0xff834204) //104
106NSTUB(ExpCtrlTool_StopContiAE                 ,0xff8343c4) //104
107NSTUB(Fclose_Fut                              ,0xff8249ac) //101
108NSTUB(Feof_Fut                                ,0xff824b98) //  1
109NSTUB(Fflush_Fut                              ,0xff824bd4) //  1
110NSTUB(Fgets_Fut                               ,0xff824b00) //  1
111NSTUB(Fopen_Fut                               ,0xff82496c) //101
112NSTUB(Fread_Fut                               ,0xff824a58) //101
113NSTUB(FreeMemory                              ,0xffa237a4) //103
114NSTUB(FreeUncacheableMemory                   ,0xff8298e4) //112
115NSTUB(Fseek_Fut                               ,0xff824b4c) //101
116NSTUB(Fwrite_Fut                              ,0xff824aac) //101
117//NSTUB(GetBatteryTemperature                 ,0xff846ce4) //102            == 0xff846ce4
118//NSTUB(GetCurrentAvValue                     ,0xff9275c4) //102            == 0xff9275c4
119NSTUB(GetDrive_ClusterSize                    ,0xff84da50) //  1
120NSTUB(GetDrive_FreeClusters                   ,0xff84daf0) //  1
121NSTUB(GetDrive_TotalClusters                  ,0xff84da84) //  1
122NSTUB(GetFocusLensSubjectDistance             ,0xff925c7c) //102
123NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff925f88) //  1
124NSTUB(GetKbdState                             ,0xff8445bc) //109
125NSTUB(GetMemInfo                              ,0xff813c58) //  1
126NSTUB(GetParameterData                        ,0xff945e64) //  1
127NSTUB(GetPropertyCase                         ,0xff8697f4) //101
128NSTUB(GetSystemTime                           ,0xffa238c0) //  1
129NSTUB(GetZoomLensCurrentPoint                 ,0xff92a680) //102
130NSTUB(GiveSemaphore                           ,0xff81ba5c) //112
131NSTUB(IsStrobeChargeCompleted                 ,0xff8b5978) //102
132NSTUB(LEDDrive                                ,0xff843bd8) //103
133NSTUB(LocalTime                               ,0xff8655c4) //  1
134NSTUB(LockMainPower                           ,0xff86d3d0) //103
135NSTUB(Lseek                                   ,0xff825108) //101
136NSTUB(MakeDirectory_Fut                       ,0xff8248a4) //  1
137NSTUB(MoveFocusLensToDistance                 ,0xff9ea6b8) //102
138NSTUB(MoveIrisWithAv                          ,0xff927850) //102
139NSTUB(MoveZoomLensWithPoint                   ,0xff92b12c) //102
140NSTUB(Open                                    ,0xff824fa0) //101
141//NSTUB(PB2Rec                                ,0xff87058c) //104            == 0xff87058c
142NSTUB(PT_MoveDigitalZoomToWide                ,0xff86096c) //103
143NSTUB(PT_MoveOpticalZoomAt                    ,0xff860934) //103
144//NSTUB(PT_PlaySound                          ,0xff8604e0) //103            == 0xff8604e0
145NSTUB(PostLogicalEventForNotPowerType         ,0xff86b218) //103
146NSTUB(PostLogicalEventToUI                    ,0xff86b264) //103
147NSTUB(Read                                    ,0xff81a378) //101
148NSTUB(ReadFastDir                             ,0xffa0a1bc) //  1
149//NSTUB(Rec2PB                                ,0xff86ef84) //104            == 0xff86ef84
150NSTUB(RefreshPhysicalScreen                   ,0xff9a0f54) //104
151NSTUB(Remove                                  ,0xff825010) //  1
152NSTUB(RenameFile_Fut                          ,0xff8247dc) //  1
153NSTUB(Restart                                 ,0xff82b90c) //106
154NSTUB(SetAE_ShutterSpeed                      ,0xff9ec7b4) //102
155NSTUB(SetAutoShutdownTime                     ,0xff86d444) //103
156NSTUB(SetCurrentCaptureModeType               ,0xff874e2c) //101
157NSTUB(SetFileTimeStamp                        ,0xff8252a4) //  1
158NSTUB(SetLogicalEventActive                   ,0xff86d000) //  1
159NSTUB(SetParameterData                        ,0xff945dd4) //101
160NSTUB(SetPropertyCase                         ,0xff8696ec) //103
161//NSTUB(SetScriptMode                         ,0xff86d050) //101            == 0xff86d050
162NSTUB(SleepTask                               ,0xff829738) //101
163NSTUB(TakeSemaphore                           ,0xff81b98c) //101
164NSTUB(TurnOffBackLight                        ,0xff87a430) //104
165NSTUB(TurnOnBackLight                         ,0xff87a418) //104
166//NSTUB(UnlockAF                              ,0xff826ba4) //103            == 0xff826ba4
167NSTUB(UnlockMainPower                         ,0xff86d324) //103
168//NSTUB(UnsetZoomForMovie                     ,0xff94ca38) //104            == 0xff94ca38
169NSTUB(UpdateMBROnFlash                        ,0xff84d818) //105
170NSTUB(VbattGet                                ,0xff821944) //101
171NSTUB(Write                                   ,0xff825074) //101
172NSTUB(WriteSDCard                             ,0xff91a968) //108
173NSTUB(_log                                    ,0xffa92ed8) //111
174NSTUB(_log10                                  ,0xffa91e1c) //112
175NSTUB(_pow                                    ,0xffa91f8c) //114
176NSTUB(_sqrt                                   ,0xffa94240) //  1
177NSTUB(add_ptp_handler                         ,0xff8cc2b0) //  1
178NSTUB(apex2us                                 ,0xff9a240c) //  4
179NSTUB(close                                   ,0xff81a190) //  1
180NSTUB(closedir                                ,0xffa0a28c) //  1
181NSTUB(err_init_task                           ,0xff814eb0) //  4
182NSTUB(exmem_alloc                             ,0xff86670c) //  1
183NSTUB(free                                    ,0xff813ab0) //112
184NSTUB(kbd_p1_f                                ,0xff82316c) //109
185NSTUB(kbd_p1_f_cont                           ,0xff823178) //109
186NSTUB(kbd_p2_f                                ,0xff8229b8) //109
187NSTUB(kbd_read_keys                           ,0xff823068) //109
188//NSTUB(kbd_read_keys_r2                      ,0xff84415c) //109            == 0xff84415c
189NSTUB(lseek                                   ,0xff825108) //101
190NSTUB(malloc                                  ,0xff8139dc) //112
191NSTUB(memcmp                                  ,0xff81e82c) //101
192NSTUB(memcpy                                  ,0xff88fdec) //101
193NSTUB(memset                                  ,0xffa614e4) //101
194NSTUB(mkdir                                   ,0xff82536c) //  1
195// ALT: NSTUB(mkdir, 0xff82540c) // 1 32/0
196NSTUB(mktime_ext                              ,0xff890658) //  1
197NSTUB(open                                    ,0xff81a0e0) //  1
198NSTUB(opendir                                 ,0xffa0a128) //  1
199NSTUB(openfastdir                             ,0xffa0a128) //  1
200NSTUB(qsort                                   ,0xff9a17e4) //  1
201NSTUB(rand                                    ,0xff81e934) //  1
202NSTUB(read                                    ,0xff81a378) //101
203NSTUB(readfastdir                             ,0xffa0a1bc) //  1
204NSTUB(reboot_fw_update                        ,0xffa11b80) //  1
205NSTUB(set_control_event                       ,0xff86ccec) //  1
206NSTUB(srand                                   ,0xff81e928) //  1
207NSTUB(stat                                    ,0xff8251d4) //  1
208NSTUB(strcat                                  ,0xff88fd18) //  1
209NSTUB(strchr                                  ,0xff88fda0) //  1
210NSTUB(strcmp                                  ,0xff81e7c4) //101
211NSTUB(strcpy                                  ,0xff81e770) //101
212NSTUB(strftime                                ,0xff890060) //  1
213NSTUB(strlen                                  ,0xff81e808) //101
214NSTUB(strncmp                                 ,0xff88fd54) //  1
215NSTUB(strncpy                                 ,0xff81e788) //  1
216NSTUB(strrchr                                 ,0xff88fdc4) //  1
217NSTUB(strtol                                  ,0xff82ff20) //101
218NSTUB(strtolx                                 ,0xff82fd24) //109
219  DEF(task_CaptSeq                            ,0xff85c038) //107
220  DEF(task_ExpDrv                             ,0xff8af7b0) //110
221  DEF(task_InitFileModules                    ,0xff871070) //107
222  DEF(task_MovieRecord                        ,0xff8584ec) //107
223  DEF(task_PhySw                              ,0xff822d14) //107
224//NSTUB(time                                  ,0xff865ac8) //  2            == 0xff865ac8
225NSTUB(vsprintf                                ,0xff81e6f0) //  1
Note: See TracBrowser for help on using the repository browser.