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

Revision 1635, 15.7 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 DIGITAL IXUS 95 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12740 (0x31c4) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12//   KEYSYS = d4                 // Found @ 0xffff1be4
13//   NEED_ENCODED_DISKBOOT = 2   // Found @ 0xffff1bf4
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(DoAFLock                              ,0xffc15298) //102        *** != 0xffc47b8c
18//NSTUB(GetFocusLensSubjectDistance           ,0xffcf0434) //102        *** != 0xffc00950
19//NSTUB(SetScriptMode                         ,0xffc5d99c) //101        *** != 0xffc00950
20//NSTUB(UnlockAF                              ,0xffc152d0) //102        *** != 0xffc47b9c
21//NSTUB(WriteSDCard                           ,0xffce4300) //108        *** != 0xffce4118
22//NSTUB(kbd_pwr_off                           ,0xffc30e1c) //  2 64%    *** != 0xffc00950
23// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xffc00950
24//NSTUB(kbd_read_keys                         ,0xffc11d70) //109        *** != 0xffc11d80
25//NSTUB(rename                                ,0xffc13494) //  1        *** != 0xffc13d10
26//NSTUB(strrchr                               ,0xffd64ff8) //  1        *** != 0xffc6cad0
27//NSTUB(write                                 ,0xffc13ce8) //101        *** != 0xffc09b44
28
29// Check of modemap from 'platform/CAMERA/shooting.c':
30// Firmware modemap table found @ffc614e8 -> ffc5dfb8 -> ffd1af7c -> ffdf7360 -> ffeb35d8
31// Mode  2598 in firmware but not in current modemap
32// Current modemap entry not found in firmware - MODE_VIDEO_COLOR_SWAP     2600
33// Current modemap entry not found in firmware - MODE_VIDEO_COLOR_ACCENT   2599
34// Current modemap entry not found in firmware - MODE_VIDEO_STD            2601
35// Current modemap entry not found in firmware - MODE_STITCH              16906
36// Current modemap entry not found in firmware - MODE_SCN_COLOR_SWAP      16924
37// Current modemap entry not found in firmware - MODE_SCN_COLOR_ACCENT    16923
38// Current modemap entry not found in firmware - MODE_M                   32769
39
40// Values below can be overridden in 'stubs_min.S':
41//DEF(physw_status                            ,0x0000c338) // Found @0xffc11d70,          stubs_min = 0x0000c338 (0xC338)
42//DEF(physw_run                               ,0x00001c34) // Found @0xffc119e4,          stubs_min = 0x00001c34 (0x1C28+0x0C)
43//DEF(levent_table                            ,0xffe8c7c4) // Found @0xffe8c7c4,          stubs_min = 0xffe8c7c4 (0xFFE8C7C4)
44//DEF(FlashParamsTable                        ,0xffeb37a8) // Found @0xffeb37a8,          stubs_min = 0xffeb37a8 (0xFFEB37A8)
45//DEF(movie_status                            ,0x00005680) // Found @0xffcf8060, ** != ** stubs_min = 0x00005684 (0x5648+0x3c)
46//DEF(canon_menu_active                       ,0x00002bb0) // Found @0xffc5adf8,          stubs_min = 0x00002bb0 (0x2BAC+0x04)
47//DEF(canon_shoot_menu_active                 ,0x0000681d) // Found @0xffd2a1ac,          stubs_min = 0x0000681d (0x681C+0x01)
48//DEF(playrec_mode                            ,0x00002924) // Found @0xffc4e4ec,          stubs_min = 0x00002924 (0x2924)
49//DEF(zoom_status                             ,0x000096b4) // Found @0xffdf8b90,          stubs_min = 0x000096b4 (0x96B4)
50//DEF(some_flag_for_af_scan                   ,0x00005b4c) // Found @0xffcfa7ac,          stubs_min = 0x00005b4c (0x5B4C)
51// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
52// each entry contains 3 int value(s), the first is the zoom focus length.
53// there are 7 entries in the table - set NUM_FL to 7
54DEF(focus_len_table                         ,0xfffe2a8c) // Found @0xfffe2a8c
55//DEF(zoom_busy                               ,0x000055b0) // Found @0xffcf475c,          stubs_min = 0x000055b0 (0x559C+0x14)
56//DEF(focus_busy                              ,0x000054a8) // Found @0xffcef5cc,          stubs_min = 0x000054a8 (0x54A0+0x08)
57//DEF(recreview_hold                          ,0x00003110) // Found @0xffc6677c, ** != ** stubs_min = 0x0000660c (0x6548+0xC4)
58
59// Values below go in 'lib.c':
60//void *vid_get_bitmap_fb()        { return (void*)0x403f1000; }             // Found @0xffc2c9a8
61//void *vid_get_viewport_fb()      { return (void*)0x4076f088; }             // Found @0xffe38210
62//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x2658+0x58)); } // Found @0xffc40f88 & 0xffc40fc0
63//char *camera_jpeg_count_str()    { return (char*)0x0002f1d4; }             // Found @0xffd57dc0
64//long hook_raw_size()             { return 0x00ec04f0; }                    // Found @0xffe3a7a0
65//int get_flash_params_count(void) { return 0x7a; }                          // Found @0xffd1c038
66
67// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
68//#define SD_READONLY_FLAG    0x00020000 // Found @0xffe65ad0, levent 0x90a
69//#define SD_READONLY_IDX     2
70//#define USB_MASK            0x00040000 // Found @0xffe65adc, levent 0x902
71//#define USB_IDX             2
72
73// Keymap values for kbd.c. Additional keys may be present, only common values included here.
74//static KeyMap keymap[] = {
75//    { 2, KEY_ZOOM_IN         ,0x00000004 }, // Found @0xffe65a40, levent 0x02
76//    { 2, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffe65a4c, levent 0x03
77//    { 2, KEY_LEFT            ,0x00000010 }, // Found @0xffe65a58, levent 0x06
78//    { 2, KEY_RIGHT           ,0x00000020 }, // Found @0xffe65a64, levent 0x07
79//    { 2, KEY_DOWN            ,0x00000040 }, // Found @0xffe65a70, levent 0x05
80//    { 2, KEY_UP              ,0x00000080 }, // Found @0xffe65a7c, levent 0x04
81//    { 2, KEY_SET             ,0x00000100 }, // Found @0xffe65a88, levent 0x08
82//    { 2, KEY_DISPLAY         ,0x00000200 }, // Found @0xffe65a94, levent 0x0a
83//    { 2, KEY_SHOOT_FULL      ,0x00000003 }, // Found @0xffe65a34, levent 0x01
84//    { 2, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffe65a34, levent 0x01
85//    { 2, KEY_MENU            ,0x00000400 }, // Found @0xffe65aa0, levent 0x09
86//    { 2, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffe65a28, levent 0x00
87//    { 0, 0, 0 }
88//};
89
90// Values below go in 'platform_camera.h':
91//#define CAM_DRYOS         1
92//#define CAM_RAW_ROWPIX    3720 // Found @0xffcc787c
93//#define CAM_RAW_ROWS      2772 // Found @0xffcc7884
94//#undef  CAM_UNCACHED_BIT
95//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xffc172cc
96
97// Misc stuff
98DEF(ctypes, 0xffe648f6)
99
100// For capt_seq.c
101//static long *nrflag = (long*)(0x5b38-0x08);  // Found @ ffcfc5c8 & ffcfc5e4
102
103// Stubs below matched 100%.
104//    Name                                     Address                Comp to stubs_entry_2.S
105NSTUB(AllocateMemory                          ,0xffded8e8) //101
106//NSTUB(AllocateUncacheableMemory             ,0xffc17288) //112            == 0xffc17288
107NSTUB(Close                                   ,0xffc13c3c) //101
108NSTUB(CreateTask                              ,0xffc0afac) //101
109NSTUB(DebugAssert                             ,0xffc0b284) //111
110NSTUB(DeleteDirectory_Fut                     ,0xffc135cc) //  1
111NSTUB(DeleteFile_Fut                          ,0xffc134e8) //112
112//NSTUB(EnterToCompensationEVF                ,0xffc15348) //104            == 0xffc15348
113NSTUB(ExecuteEventProcedure                   ,0xffc565a8) //  1
114//NSTUB(ExitFromCompensationEVF               ,0xffc1538c) //104            == 0xffc1538c
115NSTUB(ExitTask                                ,0xffc0b23c) //101
116NSTUB(ExpCtrlTool_StartContiAE                ,0xffc1fcc4) //104
117NSTUB(ExpCtrlTool_StopContiAE                 ,0xffc1fe08) //104
118NSTUB(Fclose_Fut                              ,0xffc13664) //101
119NSTUB(Feof_Fut                                ,0xffc13850) //  1
120NSTUB(Fflush_Fut                              ,0xffc1388c) //  1
121NSTUB(Fgets_Fut                               ,0xffc137b8) //  1
122NSTUB(Fopen_Fut                               ,0xffc13624) //101
123NSTUB(Fread_Fut                               ,0xffc13710) //101
124NSTUB(FreeMemory                              ,0xffded8e0) //101
125NSTUB(FreeUncacheableMemory                   ,0xffc172c8) //112
126NSTUB(Fseek_Fut                               ,0xffc13804) //101
127NSTUB(Fwrite_Fut                              ,0xffc13764) //101
128NSTUB(GetBatteryTemperature                   ,0xffc338cc) //102
129NSTUB(GetCCDTemperature                       ,0xffc33858) //102
130NSTUB(GetCurrentAvValue                       ,0xffcf1384) //102
131//NSTUB(GetDrive_ClusterSize                  ,0xffc3f81c) //  5            == 0xffc3f81c
132//NSTUB(GetDrive_FreeClusters                 ,0xffc3f874) //  5            == 0xffc3f874
133//NSTUB(GetDrive_TotalClusters                ,0xffc3f848) //  5            == 0xffc3f848
134NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xffcf0810) //  3
135NSTUB(GetKbdState                             ,0xffc30e04) //109
136NSTUB(GetMemInfo                              ,0xffc03be4) //  1
137//NSTUB(GetOpticalTemperature                 ,0xffc33940) //102            == 0xffc33940
138NSTUB(GetParameterData                        ,0xffd1bff8) //101
139NSTUB(GetPropertyCase                         ,0xffc5a2e8) //102
140NSTUB(GetSystemTime                           ,0xffded940) //101
141NSTUB(GetZoomLensCurrentPoint                 ,0xffcf4ad4) //102
142NSTUB(GetZoomLensCurrentPosition              ,0xffde56b4) //102
143NSTUB(GiveSemaphore                           ,0xffc16ca4) //112
144NSTUB(IsStrobeChargeCompleted                 ,0xffc88190) //102
145//NSTUB(LEDDrive                              ,0xffc3043c) //103            == 0xffc3043c
146NSTUB(LocalTime                               ,0xffc5426c) //  1
147NSTUB(LockMainPower                           ,0xffc5dbd0) //103
148NSTUB(Lseek                                   ,0xffc13d7c) //101
149NSTUB(MakeDirectory_Fut                       ,0xffc1355c) //  1
150NSTUB(MoveFocusLensToDistance                 ,0xffe34c40) //102
151NSTUB(MoveIrisWithAv                          ,0xffdea9c4) //102
152NSTUB(MoveZoomLensWithPoint                   ,0xffdeaf4c) //102
153NSTUB(NewTaskShell                            ,0xffc59d94) //103
154NSTUB(Open                                    ,0xffc13c14) //101
155NSTUB(PB2Rec                                  ,0xffc608a0) //104
156NSTUB(PT_MoveDigitalZoomToWide                ,0xffc47b54) //102
157NSTUB(PT_MoveOpticalZoomAt                    ,0xffc47b2c) //102
158//NSTUB(PT_PlaySound                          ,0xffc47764) //102            == 0xffc47764
159//NSTUB(PostLogicalEventForNotPowerType       ,0xffc5d1f8) //103            == 0xffc5d1f8
160NSTUB(PostLogicalEventToUI                    ,0xffc5d244) //103
161//NSTUB(PutInNdFilter                         ,0xffdeadb0) //102            == 0xffdeadb0
162//NSTUB(PutOutNdFilter                        ,0xffdeadd4) //102            == 0xffdeadd4
163NSTUB(Read                                    ,0xffc09ae4) //101
164NSTUB(ReadFastDir                             ,0xffdd7a18) //  1
165NSTUB(Rec2PB                                  ,0xffc608e0) //104
166//NSTUB(RefreshPhysicalScreen                 ,0xffd64c80) //104            == 0xffd64c80
167NSTUB(Remove                                  ,0xffc13c84) //  1
168NSTUB(RenameFile_Fut                          ,0xffc13494) //  1
169NSTUB(Restart                                 ,0xffc189d8) //106
170NSTUB(SetAE_ShutterSpeed                      ,0xffe37420) //102
171NSTUB(SetAutoShutdownTime                     ,0xffc5dc44) //103
172NSTUB(SetCurrentCaptureModeType               ,0xffc6421c) //101
173NSTUB(SetFileTimeStamp                        ,0xffc13f18) //  1
174NSTUB(SetLogicalEventActive                   ,0xffc5d94c) //101
175NSTUB(SetParameterData                        ,0xffd1bf68) //101
176NSTUB(SetPropertyCase                         ,0xffc5a1e4) //102
177NSTUB(SleepTask                               ,0xffc16f0c) //101
178NSTUB(TakeSemaphore                           ,0xffc16bd4) //101
179//NSTUB(TurnOffBackLight                      ,0xffc68aa8) //104            == 0xffc68aa8
180//NSTUB(TurnOnBackLight                       ,0xffc68a90) //104            == 0xffc68a90
181NSTUB(UIFS_WriteFirmInfoToFile                ,0xffd0d51c) //103
182NSTUB(UnlockMainPower                         ,0xffc5db24) //103
183//NSTUB(UnsetZoomForMovie                     ,0xffd21b70) //104            == 0xffd21b70
184//NSTUB(UpdateMBROnFlash                      ,0xffc3f674) //105            == 0xffc3f674
185//NSTUB(VbattGet                              ,0xffc10644) //103            == 0xffc10644
186NSTUB(Write                                   ,0xffc13ce8) //101
187NSTUB(_log                                    ,0xffe61ec0) //111
188NSTUB(_log10                                  ,0xffe60b4c) //112
189NSTUB(_pow                                    ,0xffe60cbc) //114
190NSTUB(_sqrt                                   ,0xffe63a64) //  1
191NSTUB(add_ptp_handler                         ,0xffdaa1a0) //  3
192NSTUB(apex2us                                 ,0xffd65d38) //  4
193NSTUB(close                                   ,0xffc098fc) //  1
194NSTUB(closedir                                ,0xffdd7ae8) //  1
195NSTUB(err_init_task                           ,0xffc04e2c) //  4
196NSTUB(exmem_alloc                             ,0xffc54ea0) //103
197NSTUB(free                                    ,0xffc03a3c) //112
198NSTUB(kbd_p1_f                                ,0xffc11dec) //109
199NSTUB(kbd_p1_f_cont                           ,0xffc11df8) //109
200//NSTUB(kbd_p2_f                              ,0xffc116b0) //109            == 0xffc116b0
201//NSTUB(kbd_read_keys_r2                      ,0xffc30824) //109            == 0xffc30824
202NSTUB(lseek                                   ,0xffc13d7c) //101
203NSTUB(malloc                                  ,0xffc03968) //112
204NSTUB(memcmp                                  ,0xffc0cc5c) //101
205NSTUB(memcpy                                  ,0xffc6cc38) //101
206NSTUB(memset                                  ,0xffd65020) //101
207NSTUB(mkdir                                   ,0xffc13fe0) //  1
208// ALT: NSTUB(mkdir, 0xffc14080) // 1 32/0
209NSTUB(mktime_ext                              ,0xffc6d4a4) //  1
210NSTUB(open                                    ,0xffc0984c) //  1
211NSTUB(opendir                                 ,0xffdd7984) //  1
212NSTUB(openfastdir                             ,0xffdd7984) //  1
213//NSTUB(qsort                                 ,0xffe1cc78) //  1            == 0xffe1cc78
214NSTUB(rand                                    ,0xffc0cd64) //  1
215NSTUB(read                                    ,0xffc09ae4) //101
216NSTUB(readfastdir                             ,0xffdd7a18) //  1
217NSTUB(reboot_fw_update                        ,0xffddb4fc) //  5
218NSTUB(set_control_event                       ,0xffc5d680) //111
219NSTUB(srand                                   ,0xffc0cd58) //  1
220NSTUB(stat                                    ,0xffc13e48) //  1
221NSTUB(strcat                                  ,0xffc6ca4c) //  1
222//NSTUB(strchr                                ,0xffc6cad4) //  1            == 0xffc6cad4
223NSTUB(strcmp                                  ,0xffc0cbf4) //101
224NSTUB(strcpy                                  ,0xffc0cbdc) //101
225NSTUB(strftime                                ,0xffc6ceac) //  1
226NSTUB(strlen                                  ,0xffc0cc38) //101
227NSTUB(strncmp                                 ,0xffc6ca88) //  1
228NSTUB(strncpy                                 ,0xffc1cac0) //  1
229NSTUB(strtol                                  ,0xffc1ccf8) //101
230NSTUB(strtolx                                 ,0xffc1cafc) //109
231  DEF(task_CaptSeq                            ,0xffc49fe0) //107
232  DEF(task_ExpDrv                             ,0xffc7ee88) //110
233  DEF(task_InitFileModules                    ,0xffc61374) //107
234  DEF(task_MovieRecord                        ,0xffcf82b4) //107
235  DEF(task_PhySw                              ,0xffc119e0) //107
236NSTUB(time                                    ,0xffc54120) //  1
237//NSTUB(vsprintf                              ,0xffc0cba0) //  1            == 0xffc0cba0
Note: See TracBrowser for help on using the repository browser.