source: branches/release-1_0/platform/s5is/sub/101b/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.01B
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               ,0xff957774) //102        *** != 0xff957cbc
18//NSTUB(GetZoomLensCurrentPosition            ,0xff9575f0) //102        *** != 0xff957cc0
19//NSTUB(Lseek                                 ,0xff825e04) //101        *** != 0xff825ecc
20//NSTUB(Read                                  ,0xff81a200) //101        *** != 0xff825d6c
21//NSTUB(SetParameterData                      ,0xff972e4c) //  1 59%    *** != 0xff972ed4
22// ERROR: UIFS_WriteFirmInfoToFile is not found.           //--- ---    *** != 0xff81096c
23//NSTUB(kbd_pwr_off                           ,0xff84db70) //  2 67%    *** != 0xff81096c
24// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff81096c
25//NSTUB(rename                                ,0xff8254d8) //  1        *** != 0xff825d98
26//NSTUB(srand                                 ,0xff81e760) //  1        *** != 0xff81bcec
27//NSTUB(write                                 ,0xff825d70) //101        *** != 0xff81a260
28
29// Check of modemap from 'platform/CAMERA/shooting.c':
30// Firmware modemap table found @ff87c0a4 -> ff878358 -> ff971a9c -> ffa45020 -> ffaefdf8
31// No problems found with modemap table.
32
33// Values below can be overridden in 'stubs_min.S':
34//DEF(physw_status                            ,0x00011abc) // Found @0xff8238c8,          stubs_min = 0x00011abc (0x11ABC)
35//DEF(physw_run                               ,0x00001cd8) // Found @0xff8235a4,          stubs_min = 0x00001cd8 (0x1CD8)
36//DEF(levent_table                            ,0xffac64ec) // Found @0xffac64ec,          stubs_min = 0xffac64ec (0xFFAC64EC)
37//DEF(FlashParamsTable                        ,0xffaeff98) // Found @0xffaeff98,          stubs_min = 0xffaeff98 (0xFFAEFF98)
38//DEF(movie_status                            ,0x000058a0) // Found @0xff862b98,          stubs_min = 0x000058a0 (0x5868+0x38)
39//DEF(canon_menu_active                       ,0x00006e3c) // Found @0xff897014,          stubs_min = 0x00006e3c (0x6E3C)
40//DEF(canon_shoot_menu_active                 ,0x0000c05d) // Found @0xff982580,          stubs_min = 0x0000c05d (0xC05D)
41//DEF(playrec_mode                            ,0x00005aa0) // Found @0xff869c54,          stubs_min = 0x00005aa0 (0x5AA0)
42//DEF(zoom_status                             ,0x000068f8) // Found @0xff88635c,          stubs_min = 0x000068f8 (0x68F8)
43DEF(some_flag_for_af_scan                   ,0x0000ecbc) // Found @0xffa3e1f4
44//DEF(focus_busy                              ,0x0000b27c) // Found @0xff950718,          stubs_min = 0x0000b27c (0xB27C)
45//DEF(recreview_hold                          ,0x000067c4) // Found @0xff882a00, ** != ** stubs_min = 0x0000be2c (0xBE2C)
46
47// Values below go in 'lib.c':
48//void *vid_get_bitmap_fb()        { return (void*)0x10361000; }             // Found @0xff849fec
49//void *vid_get_viewport_fb()      { return (void*)0x10d29360; }             // Found @0xffa103d8
50//char *camera_jpeg_count_str()    { return (char*)0x00058304; }             // Found @0xff9be548
51//long hook_raw_size()             { return 0x009dcce0; }                    // Found @0xffa11ee0
52//int get_flash_params_count(void) { return 0x6f; }                          // Found @0xff972f9c
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 @0xffa9cdc4, levent 0x90a
56//#define SD_READONLY_IDX     2
57//#define USB_MASK            0x00200000 // Found @0xffa9cde4, 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 @0xffa9ccbc, levent 0x01
63//    { 0, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffa9ccbc, levent 0x01
64//    { 0, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffa9ccb4, levent 0x00
65//    { 1, KEY_LEFT            ,0x00001000 }, // Found @0xffa9cd34, levent 0x06
66//    { 1, KEY_SET             ,0x00010000 }, // Found @0xffa9cd4c, levent 0x08
67//    { 1, KEY_DISPLAY         ,0x00020000 }, // Found @0xffa9cd54, levent 0x0a
68//    { 1, KEY_MENU            ,0x00040000 }, // Found @0xffa9cd5c, levent 0x09
69//    { 1, KEY_DOWN            ,0x00080000 }, // Found @0xffa9cd64, levent 0x05
70//    { 1, KEY_UP              ,0x00100000 }, // Found @0xffa9cd6c, levent 0x04
71//    { 1, KEY_RIGHT           ,0x00200000 }, // Found @0xffa9cd74, 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 @0xff82ad10
81
82// Misc stuff
83DEF(ctypes, 0xffa9635a)
84
85// For capt_seq.c
86//static long *nrflag = (long*)(0xb704);       // Found @ ff960ff4
87
88// Stubs below matched 100%.
89//    Name                                     Address                Comp to stubs_entry_2.S
90//NSTUB(AllocateMemory                        ,0xffa410a8) //103            == 0xffa410a8
91//NSTUB(AllocateUncacheableMemory             ,0xff82acd4) //112            == 0xff82acd4
92//NSTUB(Close                                 ,0xff825cc4) //101            == 0xff825cc4
93//NSTUB(CreateTask                            ,0xff81b8fc) //101            == 0xff81b8fc
94NSTUB(DebugAssert                             ,0xff81bccc) //111
95NSTUB(DeleteDirectory_Fut                     ,0xff825610) //  1
96NSTUB(DeleteFile_Fut                          ,0xff82552c) //112
97//NSTUB(DoAFLock                              ,0xff827bc8) //103            == 0xff827bc8
98//NSTUB(EnterToCompensationEVF                ,0xff827fa8) //104            == 0xff827fa8
99//NSTUB(ExecuteEventProcedure                 ,0xff81be9c) //  1            == 0xff81be9c
100//NSTUB(ExitFromCompensationEVF               ,0xff82809c) //104            == 0xff82809c
101//NSTUB(ExitTask                              ,0xff81bb8c) //101            == 0xff81bb8c
102NSTUB(ExpCtrlTool_StartContiAE                ,0xff838dd8) //104
103NSTUB(ExpCtrlTool_StopContiAE                 ,0xff838e80) //104
104//NSTUB(Fclose_Fut                            ,0xff8256a8) //101            == 0xff8256a8
105NSTUB(Feof_Fut                                ,0xff825894) //  1
106NSTUB(Fflush_Fut                              ,0xff8258d0) //  1
107NSTUB(Fgets_Fut                               ,0xff8257fc) //  1
108//NSTUB(Fopen_Fut                             ,0xff825668) //101            == 0xff825668
109//NSTUB(Fread_Fut                             ,0xff825754) //101            == 0xff825754
110//NSTUB(FreeMemory                            ,0xffa41094) //103            == 0xffa41094
111//NSTUB(FreeUncacheableMemory                 ,0xff82ad08) //112            == 0xff82ad08
112//NSTUB(Fseek_Fut                             ,0xff825848) //101            == 0xff825848
113//NSTUB(Fwrite_Fut                            ,0xff8257a8) //101            == 0xff8257a8
114//NSTUB(GetBatteryTemperature                 ,0xff850564) //102            == 0xff850564
115//NSTUB(GetCCDTemperature                     ,0xff8504f4) //102            == 0xff8504f4
116//NSTUB(GetCurrentAvValue                     ,0xff952d94) //102            == 0xff952d94
117//NSTUB(GetDrive_ClusterSize                  ,0xff856d08) //  1            == 0xff856d08
118//NSTUB(GetDrive_FreeClusters                 ,0xff856da8) //  1            == 0xff856da8
119//NSTUB(GetDrive_TotalClusters                ,0xff856d3c) //  1            == 0xff856d3c
120NSTUB(GetFocusLensSubjectDistance             ,0xff9511a4) //102
121NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff9514a0) //  1
122NSTUB(GetKbdState                             ,0xff84da24) //109
123NSTUB(GetMemInfo                              ,0xff813ca8) //  1
124//NSTUB(GetOpticalTemperature                 ,0xff8505d4) //102            == 0xff8505d4
125//NSTUB(GetParameterData                      ,0xff972f60) //101            == 0xff972f60
126//NSTUB(GetPropertyCase                       ,0xff87479c) //101            == 0xff87479c
127//NSTUB(GetSystemTime                         ,0xffa411a4) //  1            == 0xffa411a4
128NSTUB(GiveSemaphore                           ,0xff81b868) //112
129//NSTUB(IsStrobeChargeCompleted               ,0xff8db534) //102            == 0xff8db534
130//NSTUB(LocalTime                             ,0xff870604) //  1            == 0xff870604
131//NSTUB(LockMainPower                         ,0xff877d30) //103            == 0xff877d30
132NSTUB(MakeDirectory_Fut                       ,0xff8255a0) //  1
133//NSTUB(MoveFocusLensToDistance               ,0xffa0d41c) //102            == 0xffa0d41c
134NSTUB(MoveIrisWithAv                          ,0xff9536f0) //102
135//NSTUB(MoveZoomLensWithPoint                 ,0xff957b34) //102            == 0xff957b34
136//NSTUB(NewTaskShell                          ,0xff874268) //103            == 0xff874268
137//NSTUB(Open                                  ,0xff825c9c) //101            == 0xff825c9c
138//NSTUB(PB2Rec                                ,0xff87b318) //104            == 0xff87b318
139NSTUB(PT_MoveDigitalZoomToWide                ,0xff86b964) //103
140NSTUB(PT_MoveOpticalZoomAt                    ,0xff86b930) //103
141//NSTUB(PT_PlaySound                          ,0xff86b4dc) //103            == 0xff86b4dc
142NSTUB(PostLogicalEventForNotPowerType         ,0xff8760b4) //103
143NSTUB(PostLogicalEventToUI                    ,0xff876100) //103
144//NSTUB(PutInNdFilter                         ,0xffa0bd00) //102            == 0xffa0bd00
145//NSTUB(PutOutNdFilter                        ,0xffa0bd38) //102            == 0xffa0bd38
146//NSTUB(ReadFastDir                           ,0xffa27900) //  1            == 0xffa27900
147NSTUB(Rec2PB                                  ,0xff87b358) //104
148//NSTUB(RefreshPhysicalScreen                 ,0xff8b2d90) //101            == 0xff8b2d90
149//NSTUB(Remove                                ,0xff825d0c) //  1            == 0xff825d0c
150NSTUB(RenameFile_Fut                          ,0xff8254d8) //  1
151//NSTUB(Restart                               ,0xff82cd1c) //106            == 0xff82cd1c
152NSTUB(SetAE_ShutterSpeed                      ,0xffa0f5b8) //102
153//NSTUB(SetAutoShutdownTime                   ,0xff877e90) //103            == 0xff877e90
154NSTUB(SetCurrentCaptureModeType               ,0xff87f884) //101
155NSTUB(SetFileTimeStamp                        ,0xff825fa0) //  1
156NSTUB(SetLogicalEventActive                   ,0xff877aec) //  1
157//NSTUB(SetPropertyCase                       ,0xff8746ac) //101            == 0xff8746ac
158//NSTUB(SetScriptMode                         ,0xff877b3c) //101            == 0xff877b3c
159//NSTUB(SleepTask                             ,0xff82ab58) //101            == 0xff82ab58
160//NSTUB(TakeSemaphore                         ,0xff81b798) //101            == 0xff81b798
161NSTUB(TurnOffBackLight                        ,0xff8883a0) //104
162NSTUB(TurnOnBackLight                         ,0xff888388) //104
163//NSTUB(UnlockAF                              ,0xff827c34) //103            == 0xff827c34
164//NSTUB(UnlockMainPower                       ,0xff877c8c) //103            == 0xff877c8c
165//NSTUB(UpdateMBROnFlash                      ,0xff856ad0) //105            == 0xff856ad0
166//NSTUB(VbattGet                              ,0xff822204) //101            == 0xff822204
167//NSTUB(Write                                 ,0xff825d70) //101            == 0xff825d70
168NSTUB(WriteSDCard                             ,0xff944124) //108
169//NSTUB(_log                                  ,0xffa93ecc) //111            == 0xffa93ecc
170//NSTUB(_log10                                ,0xffa92e10) //112            == 0xffa92e10
171//NSTUB(_pow                                  ,0xffa92f80) //114            == 0xffa92f80
172//NSTUB(_sqrt                                 ,0xffa95234) //  1            == 0xffa95234
173NSTUB(add_ptp_handler                         ,0xff8f03c4) //  1
174//NSTUB(apex2us                               ,0xff9cae4c) //  4            == 0xff9cae4c
175//NSTUB(close                                 ,0xff81a018) //  1            == 0xff81a018
176//NSTUB(closedir                              ,0xffa279d0) //  1            == 0xffa279d0
177NSTUB(err_init_task                           ,0xff814f00) //  4
178NSTUB(exmem_alloc                             ,0xff871424) //101
179//NSTUB(free                                  ,0xff813b00) //112            == 0xff813b00
180//NSTUB(kbd_p1_f                              ,0xff8239a4) //109            == 0xff8239a4
181//NSTUB(kbd_p1_f_cont                         ,0xff8239b0) //109            == 0xff8239b0
182//NSTUB(kbd_p2_f                              ,0xff823244) //109            == 0xff823244
183//NSTUB(kbd_read_keys                         ,0xff8238c8) //109            == 0xff8238c8
184NSTUB(kbd_read_keys_r2                        ,0xff84d3e4) //109
185//NSTUB(lseek                                 ,0xff825e04) //101            == 0xff825e04
186//NSTUB(malloc                                ,0xff813a2c) //112            == 0xff813a2c
187//NSTUB(memcmp                                ,0xff81e664) //101            == 0xff81e664
188//NSTUB(memcpy                                ,0xff8b3200) //101            == 0xff8b3200
189//NSTUB(memset                                ,0xffa64b94) //101            == 0xffa64b94
190//NSTUB(mkdir                                 ,0xff826068) //  1            == 0xff826068
191// ALT: NSTUB(mkdir, 0xff826108) // 1 32/0
192NSTUB(mktime_ext                              ,0xff8b3a6c) //  1
193//NSTUB(open                                  ,0xff819f68) //  1            == 0xff819f68
194//NSTUB(opendir                               ,0xffa2786c) //  1            == 0xffa2786c
195//NSTUB(openfastdir                           ,0xffa2786c) //  1            == 0xffa2786c
196//NSTUB(qsort                                 ,0xff9ca224) //  1            == 0xff9ca224
197//NSTUB(rand                                  ,0xff81e76c) //  1            == 0xff81e76c
198//NSTUB(read                                  ,0xff81a200) //101            == 0xff81a200
199//NSTUB(readfastdir                           ,0xffa27900) //  1            == 0xffa27900
200NSTUB(reboot_fw_update                        ,0xffa2f75c) //  1
201NSTUB(set_control_event                       ,0xff8778c0) //  1
202//NSTUB(stat                                  ,0xff825ed0) //  1            == 0xff825ed0
203//NSTUB(strcat                                ,0xff8b312c) //  1            == 0xff8b312c
204//NSTUB(strchr                                ,0xff8b31b4) //  1            == 0xff8b31b4
205//NSTUB(strcmp                                ,0xff81e5fc) //101            == 0xff81e5fc
206//NSTUB(strcpy                                ,0xff81e5a8) //101            == 0xff81e5a8
207NSTUB(strftime                                ,0xff8b3474) //  1
208//NSTUB(strlen                                ,0xff81e640) //101            == 0xff81e640
209//NSTUB(strncmp                               ,0xff8b3168) //  1            == 0xff8b3168
210//NSTUB(strncpy                               ,0xff81e5c0) //  1            == 0xff81e5c0
211//NSTUB(strrchr                               ,0xff8b31d8) //  1            == 0xff8b31d8
212//NSTUB(strtol                                ,0xff831ce4) //101            == 0xff831ce4
213NSTUB(strtolx                                 ,0xff831ae8) //109
214  DEF(task_CaptSeq                            ,0xff866c80) //107
215  DEF(task_ExpDrv                             ,0xff8d37c0) //110
216  DEF(task_InitFileModules                    ,0xff87bf28) //107
217  DEF(task_MovieRecord                        ,0xff862e48) //107
218  DEF(task_PhySw                              ,0xff8235a0) //107
219NSTUB(time                                    ,0xff870b08) //  2
220//NSTUB(vsprintf                              ,0xff81e528) //  1            == 0xff81e528
Note: See TracBrowser for help on using the repository browser.