source: branches/release-1_0/platform/s5is/sub/101a/stubs_entry.S @ 1635

Revision 1635, 15.8 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 R20 (DRYOS version 2.3, release #0020)
6//   Firmware Ver GM1.01A
7//   Canon PowerShot S5 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12616 (0x3148) // 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(GetZoomLensCurrentPoint               ,0xff95783c) //102        *** != 0xff957d84
18//NSTUB(GetZoomLensCurrentPosition            ,0xff9576b8) //102        *** != 0xff957d88
19//NSTUB(Lseek                                 ,0xff825ecc) //101        *** != 0xff825f94
20//NSTUB(Read                                  ,0xff81a2c8) //101        *** != 0xff825e34
21//NSTUB(SetParameterData                      ,0xff972f14) //  1 59%    *** != 0xff972f9c
22// ERROR: UIFS_WriteFirmInfoToFile is not found.           //--- ---    *** != 0xff81096c
23//NSTUB(kbd_pwr_off                           ,0xff84dc38) //  2 67%    *** != 0xff81096c
24// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff81096c
25//NSTUB(rename                                ,0xff8255a0) //  1        *** != 0xff825e60
26//NSTUB(srand                                 ,0xff81e828) //  1        *** != 0xff81bdb4
27//NSTUB(write                                 ,0xff825e38) //101        *** != 0xff81a328
28
29// Check of modemap from 'platform/CAMERA/shooting.c':
30// Firmware modemap table found @ff87c16c -> ff878420 -> ff971b64 -> ffa450e8 -> ffaefee8
31// No problems found with modemap table.
32
33// Values below can be overridden in 'stubs_min.S':
34//DEF(physw_status                            ,0x00011abc) // Found @0xff823990,          stubs_min = 0x00011abc (0x11ABC)
35//DEF(physw_run                               ,0x00001cd8) // Found @0xff82366c,          stubs_min = 0x00001cd8 (0x1CD8)
36//DEF(levent_table                            ,0xffac65dc) // Found @0xffac65dc,          stubs_min = 0xffac65dc (0xFFAC65DC)
37//DEF(FlashParamsTable                        ,0xffaf0088) // Found @0xffaf0088,          stubs_min = 0xffaf0088 (0xFFAF0088)
38//DEF(movie_status                            ,0x000058a0) // Found @0xff862c60,          stubs_min = 0x000058a0 (0x5868+0x38)
39//DEF(canon_menu_active                       ,0x00006e3c) // Found @0xff8970dc,          stubs_min = 0x00006e3c (0x6E3C)
40//DEF(canon_shoot_menu_active                 ,0x0000c05d) // Found @0xff982648,          stubs_min = 0x0000c05d (0xC05D)
41//DEF(playrec_mode                            ,0x00005aa0) // Found @0xff869d1c,          stubs_min = 0x00005aa0 (0x5AA0)
42//DEF(zoom_status                             ,0x000068f8) // Found @0xff886424,          stubs_min = 0x000068f8 (0x68F8)
43DEF(some_flag_for_af_scan                   ,0x0000ecbc) // Found @0xffa3e2bc
44//DEF(focus_busy                              ,0x0000b27c) // Found @0xff9507e0,          stubs_min = 0x0000b27c (0xB27C)
45//DEF(recreview_hold                          ,0x000067c4) // Found @0xff882ac8, ** != ** stubs_min = 0x0000be2c (0xBE2C)
46
47// Values below go in 'lib.c':
48//void *vid_get_bitmap_fb()        { return (void*)0x10361000; }             // Found @0xff84a0b4
49//void *vid_get_viewport_fb()      { return (void*)0x10d29360; }             // Found @0xffa104a0
50//char *camera_jpeg_count_str()    { return (char*)0x00058304; }             // Found @0xff9be610
51//long hook_raw_size()             { return 0x009dcce0; }                    // Found @0xffa11fa8
52//int get_flash_params_count(void) { return 0x6f; }                          // Found @0xff973064
53
54// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
55//#define SD_READONLY_FLAG    0x00020000 // Found @0xffa9ceb8, levent 0x90a
56//#define SD_READONLY_IDX     2
57//#define USB_MASK            0x00200000 // Found @0xffa9ced8, levent 0x902
58//#define USB_IDX             2
59
60// Keymap values for kbd.c. Additional keys may be present, only common values included here.
61//static KeyMap keymap[] = {
62//    { 0, KEY_SHOOT_FULL      ,0x00000003 }, // Found @0xffa9cdb0, levent 0x01
63//    { 0, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffa9cdb0, levent 0x01
64//    { 0, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffa9cda8, levent 0x00
65//    { 1, KEY_LEFT            ,0x00001000 }, // Found @0xffa9ce28, levent 0x06
66//    { 1, KEY_SET             ,0x00010000 }, // Found @0xffa9ce40, levent 0x08
67//    { 1, KEY_DISPLAY         ,0x00020000 }, // Found @0xffa9ce48, levent 0x0a
68//    { 1, KEY_MENU            ,0x00040000 }, // Found @0xffa9ce50, levent 0x09
69//    { 1, KEY_DOWN            ,0x00080000 }, // Found @0xffa9ce58, levent 0x05
70//    { 1, KEY_UP              ,0x00100000 }, // Found @0xffa9ce60, levent 0x04
71//    { 1, KEY_RIGHT           ,0x00200000 }, // Found @0xffa9ce68, levent 0x07
72//    { 0, 0, 0 }
73//};
74
75// Values below go in 'platform_camera.h':
76//#define CAM_DRYOS         1
77//#define CAM_RAW_ROWPIX    *** Not Found ***
78//#define CAM_RAW_ROWS      *** Not Found ***
79//#undef  CAM_UNCACHED_BIT
80//#define CAM_UNCACHED_BIT  0x10000000 // Found @0xff82add8
81
82// Misc stuff
83DEF(ctypes, 0xffa9644e)
84
85// For capt_seq.c
86//static long *nrflag = (long*)(0xb704);       // Found @ ff9610bc
87
88// Stubs below matched 100%.
89//    Name                                     Address                Comp to stubs_entry_2.S
90//NSTUB(AllocateMemory                        ,0xffa41170) //103            == 0xffa41170
91//NSTUB(AllocateUncacheableMemory             ,0xff82ad9c) //112            == 0xff82ad9c
92//NSTUB(Close                                 ,0xff825d8c) //101            == 0xff825d8c
93//NSTUB(CreateTask                            ,0xff81b9c4) //101            == 0xff81b9c4
94NSTUB(DebugAssert                             ,0xff81bd94) //111
95NSTUB(DeleteDirectory_Fut                     ,0xff8256d8) //  1
96NSTUB(DeleteFile_Fut                          ,0xff8255f4) //112
97//NSTUB(DoAFLock                              ,0xff827c90) //103            == 0xff827c90
98//NSTUB(EnterToCompensationEVF                ,0xff828070) //104            == 0xff828070
99//NSTUB(ExecuteEventProcedure                 ,0xff81bf64) //  1            == 0xff81bf64
100//NSTUB(ExitFromCompensationEVF               ,0xff828164) //104            == 0xff828164
101//NSTUB(ExitTask                              ,0xff81bc54) //101            == 0xff81bc54
102NSTUB(ExpCtrlTool_StartContiAE                ,0xff838ea0) //104
103NSTUB(ExpCtrlTool_StopContiAE                 ,0xff838f48) //104
104//NSTUB(Fclose_Fut                            ,0xff825770) //101            == 0xff825770
105NSTUB(Feof_Fut                                ,0xff82595c) //  1
106NSTUB(Fflush_Fut                              ,0xff825998) //  1
107NSTUB(Fgets_Fut                               ,0xff8258c4) //  1
108//NSTUB(Fopen_Fut                             ,0xff825730) //101            == 0xff825730
109//NSTUB(Fread_Fut                             ,0xff82581c) //101            == 0xff82581c
110//NSTUB(FreeMemory                            ,0xffa4115c) //103            == 0xffa4115c
111//NSTUB(FreeUncacheableMemory                 ,0xff82add0) //112            == 0xff82add0
112//NSTUB(Fseek_Fut                             ,0xff825910) //101            == 0xff825910
113//NSTUB(Fwrite_Fut                            ,0xff825870) //101            == 0xff825870
114//NSTUB(GetBatteryTemperature                 ,0xff85062c) //102            == 0xff85062c
115//NSTUB(GetCCDTemperature                     ,0xff8505bc) //102            == 0xff8505bc
116//NSTUB(GetCurrentAvValue                     ,0xff952e5c) //102            == 0xff952e5c
117//NSTUB(GetDrive_ClusterSize                  ,0xff856dd0) //  1            == 0xff856dd0
118//NSTUB(GetDrive_FreeClusters                 ,0xff856e70) //  1            == 0xff856e70
119//NSTUB(GetDrive_TotalClusters                ,0xff856e04) //  1            == 0xff856e04
120NSTUB(GetFocusLensSubjectDistance             ,0xff95126c) //102
121NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff951568) //  1
122NSTUB(GetKbdState                             ,0xff84daec) //109
123NSTUB(GetMemInfo                              ,0xff813ca8) //  1
124//NSTUB(GetOpticalTemperature                 ,0xff85069c) //102            == 0xff85069c
125//NSTUB(GetParameterData                      ,0xff973028) //101            == 0xff973028
126//NSTUB(GetPropertyCase                       ,0xff874864) //101            == 0xff874864
127//NSTUB(GetSystemTime                         ,0xffa4126c) //  1            == 0xffa4126c
128NSTUB(GiveSemaphore                           ,0xff81b930) //112
129//NSTUB(IsStrobeChargeCompleted               ,0xff8db5fc) //102            == 0xff8db5fc
130//NSTUB(LocalTime                             ,0xff8706cc) //  1            == 0xff8706cc
131//NSTUB(LockMainPower                         ,0xff877df8) //103            == 0xff877df8
132NSTUB(MakeDirectory_Fut                       ,0xff825668) //  1
133//NSTUB(MoveFocusLensToDistance               ,0xffa0d4e4) //102            == 0xffa0d4e4
134NSTUB(MoveIrisWithAv                          ,0xff9537b8) //102
135//NSTUB(MoveZoomLensWithPoint                 ,0xff957bfc) //102            == 0xff957bfc
136//NSTUB(NewTaskShell                          ,0xff874330) //103            == 0xff874330
137//NSTUB(Open                                  ,0xff825d64) //101            == 0xff825d64
138//NSTUB(PB2Rec                                ,0xff87b3e0) //104            == 0xff87b3e0
139NSTUB(PT_MoveDigitalZoomToWide                ,0xff86ba2c) //103
140NSTUB(PT_MoveOpticalZoomAt                    ,0xff86b9f8) //103
141//NSTUB(PT_PlaySound                          ,0xff86b5a4) //103            == 0xff86b5a4
142NSTUB(PostLogicalEventForNotPowerType         ,0xff87617c) //103
143NSTUB(PostLogicalEventToUI                    ,0xff8761c8) //103
144//NSTUB(PutInNdFilter                         ,0xffa0bdc8) //102            == 0xffa0bdc8
145//NSTUB(PutOutNdFilter                        ,0xffa0be00) //102            == 0xffa0be00
146//NSTUB(ReadFastDir                           ,0xffa279c8) //  1            == 0xffa279c8
147NSTUB(Rec2PB                                  ,0xff87b420) //104
148//NSTUB(RefreshPhysicalScreen                 ,0xff8b2e58) //101            == 0xff8b2e58
149//NSTUB(Remove                                ,0xff825dd4) //  1            == 0xff825dd4
150NSTUB(RenameFile_Fut                          ,0xff8255a0) //  1
151//NSTUB(Restart                               ,0xff82cde4) //106            == 0xff82cde4
152NSTUB(SetAE_ShutterSpeed                      ,0xffa0f680) //102
153//NSTUB(SetAutoShutdownTime                   ,0xff877f58) //103            == 0xff877f58
154NSTUB(SetCurrentCaptureModeType               ,0xff87f94c) //101
155NSTUB(SetFileTimeStamp                        ,0xff826068) //  1
156NSTUB(SetLogicalEventActive                   ,0xff877bb4) //  1
157//NSTUB(SetPropertyCase                       ,0xff874774) //101            == 0xff874774
158//NSTUB(SetScriptMode                         ,0xff877c04) //101            == 0xff877c04
159//NSTUB(SleepTask                             ,0xff82ac20) //101            == 0xff82ac20
160//NSTUB(TakeSemaphore                         ,0xff81b860) //101            == 0xff81b860
161NSTUB(TurnOffBackLight                        ,0xff888468) //104
162NSTUB(TurnOnBackLight                         ,0xff888450) //104
163//NSTUB(UnlockAF                              ,0xff827cfc) //103            == 0xff827cfc
164//NSTUB(UnlockMainPower                       ,0xff877d54) //103            == 0xff877d54
165//NSTUB(UpdateMBROnFlash                      ,0xff856b98) //105            == 0xff856b98
166//NSTUB(VbattGet                              ,0xff8222cc) //101            == 0xff8222cc
167//NSTUB(Write                                 ,0xff825e38) //101            == 0xff825e38
168NSTUB(WriteSDCard                             ,0xff9441ec) //108
169//NSTUB(_log                                  ,0xffa93fc0) //111            == 0xffa93fc0
170//NSTUB(_log10                                ,0xffa92f04) //112            == 0xffa92f04
171//NSTUB(_pow                                  ,0xffa93074) //114            == 0xffa93074
172//NSTUB(_sqrt                                 ,0xffa95328) //  1            == 0xffa95328
173NSTUB(add_ptp_handler                         ,0xff8f048c) //  1
174//NSTUB(apex2us                               ,0xff9caf14) //  4            == 0xff9caf14
175//NSTUB(close                                 ,0xff81a0e0) //  1            == 0xff81a0e0
176//NSTUB(closedir                              ,0xffa27a98) //  1            == 0xffa27a98
177NSTUB(err_init_task                           ,0xff814f00) //  4
178NSTUB(exmem_alloc                             ,0xff8714ec) //101
179//NSTUB(free                                  ,0xff813b00) //112            == 0xff813b00
180//NSTUB(kbd_p1_f                              ,0xff823a6c) //109            == 0xff823a6c
181//NSTUB(kbd_p1_f_cont                         ,0xff823a78) //109            == 0xff823a78
182//NSTUB(kbd_p2_f                              ,0xff82330c) //109            == 0xff82330c
183//NSTUB(kbd_read_keys                         ,0xff823990) //109            == 0xff823990
184NSTUB(kbd_read_keys_r2                        ,0xff84d4ac) //109
185//NSTUB(lseek                                 ,0xff825ecc) //101            == 0xff825ecc
186//NSTUB(malloc                                ,0xff813a2c) //112            == 0xff813a2c
187//NSTUB(memcmp                                ,0xff81e72c) //101            == 0xff81e72c
188//NSTUB(memcpy                                ,0xff8b32c8) //101            == 0xff8b32c8
189//NSTUB(memset                                ,0xffa64c5c) //101            == 0xffa64c5c
190//NSTUB(mkdir                                 ,0xff826130) //  1            == 0xff826130
191// ALT: NSTUB(mkdir, 0xff8261d0) // 1 32/0
192NSTUB(mktime_ext                              ,0xff8b3b34) //  1
193//NSTUB(open                                  ,0xff81a030) //  1            == 0xff81a030
194//NSTUB(opendir                               ,0xffa27934) //  1            == 0xffa27934
195//NSTUB(openfastdir                           ,0xffa27934) //  1            == 0xffa27934
196//NSTUB(qsort                                 ,0xff9ca2ec) //  1            == 0xff9ca2ec
197//NSTUB(rand                                  ,0xff81e834) //  1            == 0xff81e834
198//NSTUB(read                                  ,0xff81a2c8) //101            == 0xff81a2c8
199//NSTUB(readfastdir                           ,0xffa279c8) //  1            == 0xffa279c8
200NSTUB(reboot_fw_update                        ,0xffa2f824) //  1
201NSTUB(set_control_event                       ,0xff877988) //  1
202//NSTUB(stat                                  ,0xff825f98) //  1            == 0xff825f98
203//NSTUB(strcat                                ,0xff8b31f4) //  1            == 0xff8b31f4
204//NSTUB(strchr                                ,0xff8b327c) //  1            == 0xff8b327c
205//NSTUB(strcmp                                ,0xff81e6c4) //101            == 0xff81e6c4
206//NSTUB(strcpy                                ,0xff81e670) //101            == 0xff81e670
207NSTUB(strftime                                ,0xff8b353c) //  1
208//NSTUB(strlen                                ,0xff81e708) //101            == 0xff81e708
209//NSTUB(strncmp                               ,0xff8b3230) //  1            == 0xff8b3230
210//NSTUB(strncpy                               ,0xff81e688) //  1            == 0xff81e688
211//NSTUB(strrchr                               ,0xff8b32a0) //  1            == 0xff8b32a0
212//NSTUB(strtol                                ,0xff831dac) //101            == 0xff831dac
213NSTUB(strtolx                                 ,0xff831bb0) //109
214  DEF(task_CaptSeq                            ,0xff866d48) //107
215  DEF(task_ExpDrv                             ,0xff8d3888) //110
216  DEF(task_InitFileModules                    ,0xff87bff0) //107
217  DEF(task_MovieRecord                        ,0xff862f10) //107
218  DEF(task_PhySw                              ,0xff823668) //107
219NSTUB(time                                    ,0xff870bd0) //  2
220//NSTUB(vsprintf                              ,0xff81e5f0) //  1            == 0xff81e5f0
Note: See TracBrowser for help on using the repository browser.