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

Revision 1635, 17.5 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 R31 (DRYOS version 2.3, release #0031)
6//   Firmware Ver GM1.00C
7//   Canon PowerShot SD780 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12738 (0x31c2) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12//   KEYSYS = d4                 // Found @ 0xffff3584
13//   NEED_ENCODED_DISKBOOT = 2   // Found @ 0xffff3594
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(kbd_pwr_off                           ,0xff843204) //  2 64%        == 0xff843204
18// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff858bec
19
20// Check of modemap from 'platform/CAMERA/shooting.c':
21// Firmware modemap table found @ff877f44 -> ff8746ec -> ff9442b0 -> ffa4a604 -> ffb2e4d0
22// Mode 16390 in firmware but not in current modemap
23// Mode 16904 in firmware but not in current modemap
24// Mode 16906 in firmware but not in current modemap
25// Mode 16923 in firmware but not in current modemap
26// Mode 16924 in firmware but not in current modemap
27// Mode 16413 in firmware but not in current modemap
28// Mode 16408 in firmware but not in current modemap
29// Mode 16406 in firmware but not in current modemap
30// Mode  2600 in firmware but not in current modemap
31// Mode  2601 in firmware but not in current modemap
32// Current modemap entry not found in firmware - MODE_LANDSCAPE           32780
33// Current modemap entry not found in firmware - MODE_SCN_NIGHT_SCENE     16398
34// Current modemap entry not found in firmware - MODE_VIDEO_SPEED          2598
35// Current modemap entry not found in firmware - MODE_VIDEO_STD            2597
36
37// Values below can be overridden in 'stubs_min.S':
38//DEF(physw_status                            ,0x0000e238) // Found @0xff821dcc,          stubs_min = 0x0000e238 (0xE238)
39//DEF(physw_run                               ,0x00001c34) // Found @0xff821a40,          stubs_min = 0x00001c34 (0x1C34)
40//DEF(levent_table                            ,0xffb009f0) // Found @0xffb009f0,          stubs_min = 0xffb009f0 (0xFFB009F0)
41//DEF(FlashParamsTable                        ,0xffb2e6ac) // Found @0xffb2e6ac,          stubs_min = 0xffb2e6ac (0xFFB2E6AC)
42//DEF(movie_status                            ,0x00005b10) // Found @0xff91a3c4,          stubs_min = 0x00005b10 (0x5B10)
43//DEF(canon_menu_active                       ,0x00002ca0) // Found @0xff86edcc,          stubs_min = 0x00002ca0 (0x2CA0)
44//DEF(canon_shoot_menu_active                 ,0x00006e29) // Found @0xff953cac,          stubs_min = 0x00006e29 (0x6E29)
45//DEF(playrec_mode                            ,0x00002a08) // Found @0xff862160,          stubs_min = 0x00002a08 (0x2A08)
46//DEF(zoom_status                             ,0x0000ac68) // Found @0xffa4be34,          stubs_min = 0x0000ac68 (0xAC68)
47//DEF(some_flag_for_af_scan                   ,0x00006068) // Found @0xff91d6b8,          stubs_min = 0x00006068 (0x6068)
48// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
49// each entry contains 3 int value(s), the first is the zoom focus length.
50// there are 7 entries in the table - set NUM_FL to 7
51DEF(focus_len_table                         ,0xfffe2a8c) // Found @0xfffe2a8c
52//DEF(zoom_busy                               ,0x00005a3c) // Found @0xff9166f4,          stubs_min = 0x00005a3c (0x5A3C)
53//DEF(focus_busy                              ,0x00005938) // Found @0xff9115c8,          stubs_min = 0x00005938 (0x5938)
54//DEF(recreview_hold                          ,0x0000328c) // Found @0xff87dd40, ** != ** stubs_min = 0x00006c0c (0x6C0C)
55
56// Values below go in 'lib.c':
57//void *vid_get_bitmap_fb()        { return (void*)0x403f1000; }             // Found @0xff83dae4
58//void *vid_get_viewport_fb()      { return (void*)0x415f3570; }             // Found @0xffa97de8
59//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x26f4+0x58)); } // Found @0xff853cb4 & 0xff853cec
60//char *camera_jpeg_count_str()    { return (char*)0x00033110; }             // Found @0xff98fafc
61//long hook_raw_size()             { return 0x011ca240; }                    // Found @0xffa9a374
62//int get_flash_params_count(void) { return 0x7a; }                          // Found @0xff94536c
63
64// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
65//#define SD_READONLY_FLAG    0x00020000 // Found @0xffacd584, levent 0x90a
66//#define SD_READONLY_IDX     2
67//#define USB_MASK            0x00080000 // Found @0xffacd59c, levent 0x902
68//#define USB_IDX             2
69
70// Keymap values for kbd.c. Additional keys may be present, only common values included here.
71//static KeyMap keymap[] = {
72//    { 0, KEY_LEFT            ,0x00000001 }, // Found @0xffacd47c, levent 0x06
73//    { 0, KEY_RIGHT           ,0x00000002 }, // Found @0xffacd488, levent 0x07
74//    { 0, KEY_DOWN            ,0x00000004 }, // Found @0xffacd494, levent 0x05
75//    { 0, KEY_UP              ,0x00000008 }, // Found @0xffacd4a0, levent 0x04
76//    { 1, KEY_MENU            ,0x00000800 }, // Found @0xffacd4ac, levent 0x09
77//    { 1, KEY_SET             ,0x00004000 }, // Found @0xffacd4b8, levent 0x08
78//    { 2, KEY_SHOOT_FULL      ,0x00001001 }, // Found @0xffacd548, levent 0x01
79//    { 2, KEY_DISPLAY         ,0x00000040 }, // Found @0xffacd530, levent 0x0a
80//    { 2, KEY_SHOOT_FULL_ONLY ,0x00001000 }, // Found @0xffacd548, levent 0x01
81//    { 2, KEY_ZOOM_OUT        ,0x00002000 }, // Found @0xffacd554, levent 0x03
82//    { 2, KEY_ZOOM_IN         ,0x00004000 }, // Found @0xffacd560, levent 0x02
83//    { 2, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffacd4f4, levent 0x00
84//    { 0, 0, 0 }
85//};
86
87// Values below go in 'platform_camera.h':
88//#define CAM_DRYOS         1
89//#define CAM_RAW_ROWPIX    4080 // Found @0xff8e6184
90//#define CAM_RAW_ROWS      3048 // Found @0xff8e6188
91//#undef  CAM_UNCACHED_BIT
92//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff82748c
93
94// Misc stuff
95DEF(ctypes, 0xffacc2ea)
96
97// For capt_seq.c
98//static long *nrflag = (long*)(0x6050-0x08);  // Found @ ff91f644 & ff91f660
99
100// Stubs below matched 100%.
101//    Name                                     Address                Comp to stubs_entry_2.S
102//NSTUB(AllocateMemory                        ,0xffa3df5c) //101            == 0xffa3df5c
103//NSTUB(AllocateUncacheableMemory             ,0xff827448) //112            == 0xff827448
104//NSTUB(Close                                 ,0xff823c98) //101            == 0xff823c98
105//NSTUB(CreateTask                            ,0xff81afac) //101            == 0xff81afac
106//NSTUB(DebugAssert                           ,0xff81b284) //111            == 0xff81b284
107NSTUB(DeleteDirectory_Fut                     ,0xff823628) //  1
108//NSTUB(DeleteFile_Fut                        ,0xff823544) //112            == 0xff823544
109//NSTUB(DoAFLock                              ,0xff825334) //102            == 0xff825334
110//NSTUB(EnterToCompensationEVF                ,0xff825420) //104            == 0xff825420
111//NSTUB(ExecuteEventProcedure                 ,0xff86a518) //  1            == 0xff86a518
112//NSTUB(ExitFromCompensationEVF               ,0xff825464) //104            == 0xff825464
113NSTUB(ExitTask                                ,0xff81b23c) //101
114//NSTUB(ExpCtrlTool_StartContiAE              ,0xff82ff40) //104            == 0xff82ff40
115//NSTUB(ExpCtrlTool_StopContiAE               ,0xff830084) //104            == 0xff830084
116//NSTUB(Fclose_Fut                            ,0xff8236c0) //101            == 0xff8236c0
117//NSTUB(Feof_Fut                              ,0xff8238ac) //  1            == 0xff8238ac
118//NSTUB(Fflush_Fut                            ,0xff8238e8) //  1            == 0xff8238e8
119//NSTUB(Fgets_Fut                             ,0xff823814) //  1            == 0xff823814
120//NSTUB(Fopen_Fut                             ,0xff823680) //101            == 0xff823680
121//NSTUB(Fread_Fut                             ,0xff82376c) //101            == 0xff82376c
122//NSTUB(FreeMemory                            ,0xffa3df54) //101            == 0xffa3df54
123NSTUB(FreeUncacheableMemory                   ,0xff827488) //112
124//NSTUB(Fseek_Fut                             ,0xff823860) //101            == 0xff823860
125//NSTUB(Fwrite_Fut                            ,0xff8237c0) //101            == 0xff8237c0
126NSTUB(GetBatteryTemperature                   ,0xff845f30) //102
127NSTUB(GetCCDTemperature                       ,0xff845ebc) //102
128//NSTUB(GetCurrentAvValue                     ,0xff913380) //102            == 0xff913380
129//NSTUB(GetDrive_ClusterSize                  ,0xff8523e8) //  5            == 0xff8523e8
130//NSTUB(GetDrive_FreeClusters                 ,0xff852440) //  5            == 0xff852440
131//NSTUB(GetDrive_TotalClusters                ,0xff852414) //  5            == 0xff852414
132//NSTUB(GetFocusLensSubjectDistance           ,0xff912430) //102            == 0xff912430
133NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff91280c) //  3
134//NSTUB(GetKbdState                           ,0xff8431ec) //109            == 0xff8431ec
135//NSTUB(GetMemInfo                            ,0xff813be4) //  1            == 0xff813be4
136//NSTUB(GetOpticalTemperature                 ,0xff845fa4) //102            == 0xff845fa4
137NSTUB(GetParameterData                        ,0xff94532c) //101
138NSTUB(GetPropertyCase                         ,0xff86e284) //102
139NSTUB(GetSystemTime                           ,0xffa3dfb4) //101
140NSTUB(GetZoomLensCurrentPoint                 ,0xff916a6c) //102
141//NSTUB(GetZoomLensCurrentPosition            ,0xffa31844) //102            == 0xffa31844
142//NSTUB(GiveSemaphore                         ,0xff826e64) //112            == 0xff826e64
143NSTUB(IsStrobeChargeCompleted                 ,0xff8a35c8) //102
144//NSTUB(LEDDrive                              ,0xff842698) //103            == 0xff842698
145//NSTUB(LocalTime                             ,0xff867f08) //  1            == 0xff867f08
146NSTUB(LockMainPower                           ,0xff874304) //103
147//NSTUB(Lseek                                 ,0xff823dd8) //101            == 0xff823dd8
148NSTUB(MakeDirectory_Fut                       ,0xff8235b8) //  1
149NSTUB(MoveFocusLensToDistance                 ,0xffa94780) //102
150//NSTUB(MoveIrisWithAv                        ,0xffa3c0b4) //102            == 0xffa3c0b4
151NSTUB(MoveZoomLensWithPoint                   ,0xffa3c640) //102
152NSTUB(NewTaskShell                            ,0xff86dd28) //103
153//NSTUB(Open                                  ,0xff823c70) //101            == 0xff823c70
154NSTUB(PB2Rec                                  ,0xff8772bc) //104
155//NSTUB(PT_MoveDigitalZoomToWide              ,0xff85b138) //102            == 0xff85b138
156//NSTUB(PT_MoveOpticalZoomAt                  ,0xff85b110) //102            == 0xff85b110
157//NSTUB(PT_PlaySound                          ,0xff85ad20) //102            == 0xff85ad20
158//NSTUB(PostLogicalEventForNotPowerType       ,0xff87392c) //103            == 0xff87392c
159NSTUB(PostLogicalEventToUI                    ,0xff873978) //103
160//NSTUB(PutInNdFilter                         ,0xffa3c4a4) //102            == 0xffa3c4a4
161//NSTUB(PutOutNdFilter                        ,0xffa3c4c8) //102            == 0xffa3c4c8
162//NSTUB(Read                                  ,0xff819ae4) //101            == 0xff819ae4
163//NSTUB(ReadFastDir                           ,0xffa1fd94) //  1            == 0xffa1fd94
164NSTUB(Rec2PB                                  ,0xff8772fc) //104
165//NSTUB(RefreshPhysicalScreen                 ,0xff99cf18) //104            == 0xff99cf18
166//NSTUB(Remove                                ,0xff823ce0) //  1            == 0xff823ce0
167NSTUB(RenameFile_Fut                          ,0xff8234f0) //  1
168//NSTUB(Restart                               ,0xff828b98) //106            == 0xff828b98
169//NSTUB(SetAE_ShutterSpeed                    ,0xffa96f60) //102            == 0xffa96f60
170NSTUB(SetAutoShutdownTime                     ,0xff874378) //103
171NSTUB(SetCurrentCaptureModeType               ,0xff87b2c0) //101
172//NSTUB(SetFileTimeStamp                      ,0xff823f74) //  1            == 0xff823f74
173NSTUB(SetLogicalEventActive                   ,0xff874080) //101
174NSTUB(SetParameterData                        ,0xff94529c) //101
175//NSTUB(SetPropertyCase                       ,0xff86e17c) //102            == 0xff86e17c
176//NSTUB(SetScriptMode                         ,0xff8740d0) //101            == 0xff8740d0
177NSTUB(SleepTask                               ,0xff8270cc) //101
178NSTUB(TakeSemaphore                           ,0xff826d94) //101
179//NSTUB(TurnOffBackLight                      ,0xff8810a0) //104            == 0xff8810a0
180NSTUB(TurnOnBackLight                         ,0xff881088) //104
181NSTUB(UIFS_WriteFirmInfoToFile                ,0xff931e7c) //101
182//NSTUB(UnlockAF                              ,0xff82536c) //102            == 0xff82536c
183NSTUB(UnlockMainPower                         ,0xff874258) //103
184//NSTUB(UnsetZoomForMovie                     ,0xff94afc4) //104            == 0xff94afc4
185NSTUB(UpdateMBROnFlash                        ,0xff852240) //105
186//NSTUB(VbattGet                              ,0xff820644) //103            == 0xff820644
187//NSTUB(Write                                 ,0xff823d44) //101            == 0xff823d44
188//NSTUB(WriteSDCard                           ,0xff903b38) //108            == 0xff903b38
189//NSTUB(_log                                  ,0xffac9580) //111            == 0xffac9580
190//NSTUB(_log10                                ,0xffac820c) //112            == 0xffac820c
191//NSTUB(_pow                                  ,0xffac837c) //114            == 0xffac837c
192//NSTUB(_sqrt                                 ,0xffacb124) //  1            == 0xffacb124
193//NSTUB(add_ptp_handler                       ,0xff9eabdc) //  3            == 0xff9eabdc
194//NSTUB(apex2us                               ,0xff9a010c) //  4            == 0xff9a010c
195//NSTUB(close                                 ,0xff8198fc) //  1            == 0xff8198fc
196//NSTUB(closedir                              ,0xffa1fe64) //  1            == 0xffa1fe64
197//NSTUB(err_init_task                         ,0xff814e2c) //  4            == 0xff814e2c
198//NSTUB(exmem_alloc                           ,0xff868dc8) //103            == 0xff868dc8
199//NSTUB(free                                  ,0xff813a3c) //112            == 0xff813a3c
200NSTUB(kbd_p1_f                                ,0xff821e48) //109
201NSTUB(kbd_p1_f_cont                           ,0xff821e54) //109
202//NSTUB(kbd_p2_f                              ,0xff82170c) //109            == 0xff82170c
203//NSTUB(kbd_read_keys                         ,0xff821dcc) //109            == 0xff821dcc
204NSTUB(kbd_read_keys_r2                        ,0xff842b6c) //109
205//NSTUB(lseek                                 ,0xff823dd8) //101            == 0xff823dd8
206//NSTUB(malloc                                ,0xff813968) //112            == 0xff813968
207//NSTUB(memcmp                                ,0xff81cc5c) //101            == 0xff81cc5c
208//NSTUB(memcpy                                ,0xff887900) //101            == 0xff887900
209//NSTUB(memset                                ,0xff99f3f4) //101            == 0xff99f3f4
210//NSTUB(mkdir                                 ,0xff82403c) //  1            == 0xff82403c
211// ALT: NSTUB(mkdir, 0xff8240dc) // 1 32/0
212//NSTUB(mktime_ext                            ,0xff88816c) //  1            == 0xff88816c
213//NSTUB(open                                  ,0xff81984c) //  1            == 0xff81984c
214//NSTUB(opendir                               ,0xffa1fd00) //  1            == 0xffa1fd00
215//NSTUB(openfastdir                           ,0xffa1fd00) //  1            == 0xffa1fd00
216//NSTUB(qsort                                 ,0xffa79a4c) //  1            == 0xffa79a4c
217NSTUB(rand                                    ,0xff81cd64) //  1
218//NSTUB(read                                  ,0xff819ae4) //101            == 0xff819ae4
219//NSTUB(readfastdir                           ,0xffa1fd94) //  1            == 0xffa1fd94
220NSTUB(reboot_fw_update                        ,0xffa27444) //  5
221//NSTUB(rename                                ,0xff8234f0) //  1            == 0xff8234f0
222NSTUB(set_control_event                       ,0xff873db4) //111
223NSTUB(srand                                   ,0xff81cd58) //  1
224//NSTUB(stat                                  ,0xff823ea4) //  1            == 0xff823ea4
225//NSTUB(strcat                                ,0xff887714) //  1            == 0xff887714
226//NSTUB(strchr                                ,0xff88779c) //  1            == 0xff88779c
227//NSTUB(strcmp                                ,0xff81cbf4) //101            == 0xff81cbf4
228//NSTUB(strcpy                                ,0xff81cbdc) //101            == 0xff81cbdc
229//NSTUB(strftime                              ,0xff887b74) //  1            == 0xff887b74
230//NSTUB(strlen                                ,0xff81cc38) //101            == 0xff81cc38
231NSTUB(strncmp                                 ,0xff887750) //  1
232//NSTUB(strncpy                               ,0xff82cd3c) //  1            == 0xff82cd3c
233//NSTUB(strrchr                               ,0xff99f3cc) //  1            == 0xff99f3cc
234//NSTUB(strtol                                ,0xff82cf74) //101            == 0xff82cf74
235//NSTUB(strtolx                               ,0xff82cd78) //109            == 0xff82cd78
236  DEF(task_CaptSeq                            ,0xff85d754) //107
237  DEF(task_ExpDrv                             ,0xff899cc4) //110
238  DEF(task_InitFileModules                    ,0xff877dd0) //107
239  DEF(task_MovieRecord                        ,0xff91a6ac) //107
240  DEF(task_PhySw                              ,0xff821a3c) //107
241NSTUB(time                                    ,0xff868480) //  2
242//NSTUB(vsprintf                              ,0xff81cba0) //  1            == 0xff81cba0
243//NSTUB(write                                 ,0xff823d44) //101            == 0xff823d44
Note: See TracBrowser for help on using the repository browser.