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

Revision 1635, 16.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 R23 (DRYOS version 2.3, release #0023)
6//   Firmware Ver GM1.00G
7//   Canon PowerShot G9
8
9// Values for makefile.inc
10//   PLATFORMID = 12634 (0x315a) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12//   KEYSYS = d3                 // Found @ 0xffff31f0
13//   NEED_ENCODED_DISKBOOT = 1   // Found @ 0xffff31d0
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(PutInNdFilter                         ,0xff9384d8) //102        *** != 0xffa0c550
18//NSTUB(PutOutNdFilter                        ,0xff9384fc) //102        *** != 0xffa0c588
19//NSTUB(kbd_pwr_off                           ,0xff84944c) //  2 67%    *** != 0xff810958
20// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff810958
21//NSTUB(rename                                ,0xff824d40) //  1        *** != 0xff825600
22//NSTUB(strcmp                                ,0xff81e7cc) //101        *** != 0xff81e7f4
23//NSTUB(write                                 ,0xff8255d8) //101        *** != 0xff81a3d8
24
25// Check of modemap from 'platform/CAMERA/shooting.c':
26// Firmware modemap table found @ff8773f8 -> ff8735c4 -> ff95539c -> ffa4c738 -> ffb080ec
27// No problems found with modemap table.
28
29// Values below can be overridden in 'stubs_min.S':
30//DEF(physw_status                            ,0x0001563c) // Found @0xff8230cc,          stubs_min = 0x0001563c (0x01563C)
31//DEF(physw_run                               ,0x00001ca4) // Found @0xff822d78,          stubs_min = 0x00001ca4 (0x1ca4)
32//DEF(levent_table                            ,0xffae01ac) // Found @0xffae01ac,          stubs_min = 0xffae01ac (0xFFAE01AC)
33//DEF(FlashParamsTable                        ,0xffb082b8) // Found @0xffb082b8,          stubs_min = 0xffb082b8 (0xFFB082B8)
34//DEF(movie_status                            ,0x00005714) // Found @0xff85d220,          stubs_min = 0x00005714 (0x5714)
35//DEF(canon_menu_active                       ,0x0000fdc8) // Found @0xff99b544,          stubs_min = 0x0000fdc8 (0xFDC8)
36//DEF(canon_shoot_menu_active                 ,0x0000f33d) // Found @0xff96ac18,          stubs_min = 0x0000f33d (0xF33D)
37//DEF(playrec_mode                            ,0x000058cc) // Found @0xff864a60,          stubs_min = 0x000058cc (0x58cc)
38//DEF(zoom_status                             ,0x0001264c) // Found @0xffa4e3fc,          stubs_min = 0x0001264c (0x1264C)
39//DEF(some_flag_for_af_scan                   ,0x0001253c) // Found @0xffa447a0,          stubs_min = 0x0001253c (0x1253C)
40// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
41// each entry contains 3 int value(s), the first is the zoom focus length.
42// there are 14 entries in the table - set NUM_FL to 14
43DEF(focus_len_table                         ,0xfffe299c) // Found @0xfffe299c
44//DEF(zoom_busy                               ,0x0000e260) // Found @0xff939f2c,          stubs_min = 0x0000e260 (0xE260)
45//DEF(focus_busy                              ,0x0000e150) // Found @0xff93411c,          stubs_min = 0x0000e150 (0xE150)
46//DEF(recreview_hold                          ,0x00006400) // Found @0xff87cb64, ** != ** stubs_min = 0x0000f050 (0xF050)
47
48// Values below go in 'lib.c':
49//void *vid_get_bitmap_fb()        { return (void*)0x10361000; }             // Found @0xff8451d0
50//void *vid_get_viewport_fb()      { return (void*)0x1067b540; }             // Found @0xffa112dc
51//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x5558+0x50)); } // Found @0xff856268 & 0xff8562a0
52//char *camera_jpeg_count_str()    { return (char*)0x00060354; }             // Found @0xff9afb54
53//long hook_raw_size()             { return 0x00ee9710; }                    // Found @0xffa131a0
54//int get_flash_params_count(void) { return 0x72; }                          // Found @0xff95699c
55
56// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
57//#define SD_READONLY_FLAG    0x00020000 // Found @0xffac6350, levent 0x90a
58//#define SD_READONLY_IDX     2
59//#define USB_MASK            0x00040000 // Found @0xffac6358, levent 0x902
60//#define USB_IDX             2
61
62// Keymap values for kbd.c. Additional keys may be present, only common values included here.
63//static KeyMap keymap[] = {
64//    { 0, KEY_SHOOT_FULL      ,0xc0000000 }, // Found @0xffac6288, levent 0x01
65//    { 0, KEY_SHOOT_FULL_ONLY ,0x80000000 }, // Found @0xffac6288, levent 0x01
66//    { 0, KEY_SHOOT_HALF      ,0x40000000 }, // Found @0xffac6280, levent 0x00
67//    { 1, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffac62a8, levent 0x03
68//    { 1, KEY_ZOOM_IN         ,0x00000010 }, // Found @0xffac62b0, levent 0x02
69//    { 1, KEY_LEFT            ,0x00010000 }, // Found @0xffac62e0, levent 0x06
70//    { 1, KEY_SET             ,0x00020000 }, // Found @0xffac62e8, levent 0x08
71//    { 1, KEY_RIGHT           ,0x00040000 }, // Found @0xffac62f0, levent 0x07
72//    { 1, KEY_DOWN            ,0x00080000 }, // Found @0xffac62f8, levent 0x05
73//    { 1, KEY_UP              ,0x00100000 }, // Found @0xffac6300, levent 0x04
74//    { 1, KEY_DISPLAY         ,0x04000000 }, // Found @0xffac6318, levent 0x0a
75//    { 1, KEY_MENU            ,0x08000000 }, // Found @0xffac6320, levent 0x09
76//    { 0, 0, 0 }
77//};
78
79// Values below go in 'platform_camera.h':
80//#define CAM_DRYOS         1
81//#define CAM_RAW_ROWPIX    4104 // Found @0xffa0b268
82//#define CAM_RAW_ROWS      3048 // Found @0xffa0b270
83//#undef  CAM_UNCACHED_BIT
84//#define CAM_UNCACHED_BIT  0x10000000 // Found @0xff82a7c4
85
86// Misc stuff
87DEF(ctypes, 0xffac0b42)
88
89// For capt_seq.c
90//static long *nrflag = (long*)(0xe618);       // Found @ ff9444e4
91
92// Stubs below matched 100%.
93//    Name                                     Address                Comp to stubs_entry_2.S
94//NSTUB(AllocateMemory                        ,0xffa47cc8) //103            == 0xffa47cc8
95//NSTUB(AllocateUncacheableMemory             ,0xff82a788) //112            == 0xff82a788
96//NSTUB(Close                                 ,0xff82552c) //101            == 0xff82552c
97//NSTUB(CreateTask                            ,0xff81baf0) //101            == 0xff81baf0
98NSTUB(DebugAssert                             ,0xff81bfc8) //111
99NSTUB(DeleteDirectory_Fut                     ,0xff824e78) //  1
100NSTUB(DeleteFile_Fut                          ,0xff824d94) //112
101//NSTUB(DoAFLock                              ,0xff8275cc) //103            == 0xff8275cc
102NSTUB(EnterToCompensationEVF                  ,0xff8279a8) //104
103//NSTUB(ExecuteEventProcedure                 ,0xff81c1a8) //  1            == 0xff81c1a8
104//NSTUB(ExitFromCompensationEVF               ,0xff8279f8) //104            == 0xff8279f8
105//NSTUB(ExitTask                              ,0xff81bd80) //101            == 0xff81bd80
106//NSTUB(ExpCtrlTool_StartContiAE              ,0xff835600) //104            == 0xff835600
107//NSTUB(ExpCtrlTool_StopContiAE               ,0xff8357c0) //104            == 0xff8357c0
108//NSTUB(Fclose_Fut                            ,0xff824f10) //101            == 0xff824f10
109NSTUB(Feof_Fut                                ,0xff8250fc) //  1
110NSTUB(Fflush_Fut                              ,0xff825138) //  1
111NSTUB(Fgets_Fut                               ,0xff825064) //  1
112//NSTUB(Fopen_Fut                             ,0xff824ed0) //101            == 0xff824ed0
113//NSTUB(Fread_Fut                             ,0xff824fbc) //101            == 0xff824fbc
114//NSTUB(FreeMemory                            ,0xffa47cb4) //103            == 0xffa47cb4
115//NSTUB(FreeUncacheableMemory                 ,0xff82a7bc) //112            == 0xff82a7bc
116//NSTUB(Fseek_Fut                             ,0xff8250b0) //101            == 0xff8250b0
117//NSTUB(Fwrite_Fut                            ,0xff825010) //101            == 0xff825010
118NSTUB(GetBatteryTemperature                   ,0xff84bee8) //102
119NSTUB(GetCCDTemperature                       ,0xff84be78) //102
120//NSTUB(GetCurrentAvValue                     ,0xff936dc8) //102            == 0xff936dc8
121//NSTUB(GetDrive_ClusterSize                  ,0xff852754) //  1            == 0xff852754
122//NSTUB(GetDrive_FreeClusters                 ,0xff8527f4) //  1            == 0xff8527f4
123//NSTUB(GetDrive_TotalClusters                ,0xff852788) //  1            == 0xff852788
124NSTUB(GetFocusLensSubjectDistance             ,0xff934c5c) //102
125NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff934f68) //  1
126//NSTUB(GetKbdState                           ,0xff849300) //109            == 0xff849300
127NSTUB(GetMemInfo                              ,0xff813c58) //  1
128NSTUB(GetOpticalTemperature                   ,0xff84bf58) //102
129//NSTUB(GetParameterData                      ,0xff95695c) //  1            == 0xff95695c
130//NSTUB(GetPropertyCase                       ,0xff86f768) //101            == 0xff86f768
131//NSTUB(GetSystemTime                         ,0xffa47dd0) //  1            == 0xffa47dd0
132//NSTUB(GetZoomLensCurrentPoint               ,0xff93a290) //102            == 0xff93a290
133//NSTUB(GetZoomLensCurrentPosition            ,0xffa3e658) //102            == 0xffa3e658
134//NSTUB(GiveSemaphore                         ,0xff81ba5c) //112            == 0xff81ba5c
135//NSTUB(IsStrobeChargeCompleted               ,0xff8c1344) //102            == 0xff8c1344
136NSTUB(LEDDrive                                ,0xff848890) //103
137//NSTUB(LocalTime                             ,0xff86b538) //  1            == 0xff86b538
138//NSTUB(LockMainPower                         ,0xff8731f0) //103            == 0xff8731f0
139//NSTUB(Lseek                                 ,0xff82566c) //101            == 0xff82566c
140NSTUB(MakeDirectory_Fut                       ,0xff824e08) //  1
141//NSTUB(MoveFocusLensToDistance               ,0xffa0e134) //102            == 0xffa0e134
142NSTUB(MoveIrisWithAv                          ,0xff9371a8) //102
143//NSTUB(MoveZoomLensWithPoint                 ,0xff93ad3c) //102            == 0xff93ad3c
144//NSTUB(NewTaskShell                          ,0xff86f1ec) //103            == 0xff86f1ec
145//NSTUB(Open                                  ,0xff825504) //101            == 0xff825504
146//NSTUB(PB2Rec                                ,0xff876664) //104            == 0xff876664
147NSTUB(PT_MoveDigitalZoomToWide                ,0xff8668e0) //103
148NSTUB(PT_MoveOpticalZoomAt                    ,0xff8668a8) //103
149//NSTUB(PT_PlaySound                          ,0xff866454) //103            == 0xff866454
150NSTUB(PostLogicalEventForNotPowerType         ,0xff87118c) //103
151NSTUB(PostLogicalEventToUI                    ,0xff8711d8) //103
152//NSTUB(Read                                  ,0xff81a378) //101            == 0xff81a378
153//NSTUB(ReadFastDir                           ,0xffa2cbac) //  1            == 0xffa2cbac
154//NSTUB(Rec2PB                                ,0xff875024) //104            == 0xff875024
155//NSTUB(RefreshPhysicalScreen                 ,0xff9bdbe4) //104            == 0xff9bdbe4
156//NSTUB(Remove                                ,0xff825574) //  1            == 0xff825574
157NSTUB(RenameFile_Fut                          ,0xff824d40) //  1
158NSTUB(Restart                                 ,0xff82c7e4) //106
159//NSTUB(SetAE_ShutterSpeed                    ,0xffa10490) //102            == 0xffa10490
160NSTUB(SetAutoShutdownTime                     ,0xff873264) //103
161NSTUB(SetCurrentCaptureModeType               ,0xff879f7c) //101
162NSTUB(SetFileTimeStamp                        ,0xff825808) //  1
163NSTUB(SetLogicalEventActive                   ,0xff872f28) //  1
164//NSTUB(SetParameterData                      ,0xff956838) //101            == 0xff956838
165NSTUB(SetPropertyCase                         ,0xff86f660) //103
166//NSTUB(SetScriptMode                         ,0xff872f78) //101            == 0xff872f78
167//NSTUB(SleepTask                             ,0xff82a610) //101            == 0xff82a610
168//NSTUB(TakeSemaphore                         ,0xff81b98c) //101            == 0xff81b98c
169NSTUB(TurnOffBackLight                        ,0xff87ff88) //104
170NSTUB(TurnOnBackLight                         ,0xff87ff70) //104
171//NSTUB(UIFS_WriteFirmInfoToFile              ,0xff99c390) //103            == 0xff99c390
172//NSTUB(UnlockAF                              ,0xff827638) //103            == 0xff827638
173//NSTUB(UnlockMainPower                       ,0xff873144) //103            == 0xff873144
174//NSTUB(UnsetZoomForMovie                     ,0xff95d03c) //104            == 0xff95d03c
175//NSTUB(UpdateMBROnFlash                      ,0xff85251c) //105            == 0xff85251c
176//NSTUB(VbattGet                              ,0xff82199c) //101            == 0xff82199c
177//NSTUB(Write                                 ,0xff8255d8) //101            == 0xff8255d8
178//NSTUB(WriteSDCard                           ,0xff928cf4) //108            == 0xff928cf4
179//NSTUB(_log                                  ,0xffabe6b4) //111            == 0xffabe6b4
180//NSTUB(_log10                                ,0xffabd5f8) //112            == 0xffabd5f8
181//NSTUB(_pow                                  ,0xffabd768) //114            == 0xffabd768
182//NSTUB(_sqrt                                 ,0xffabfa1c) //  1            == 0xffabfa1c
183NSTUB(add_ptp_handler                         ,0xff8d897c) //  1
184//NSTUB(apex2us                               ,0xff9bf09c) //  4            == 0xff9bf09c
185//NSTUB(close                                 ,0xff81a190) //  1            == 0xff81a190
186//NSTUB(closedir                              ,0xffa2cc7c) //  1            == 0xffa2cc7c
187NSTUB(err_init_task                           ,0xff814eb0) //  4
188NSTUB(exmem_alloc                             ,0xff86c680) //  1
189//NSTUB(free                                  ,0xff813ab0) //112            == 0xff813ab0
190//NSTUB(kbd_p1_f                              ,0xff8231c8) //109            == 0xff8231c8
191//NSTUB(kbd_p1_f_cont                         ,0xff8231d4) //109            == 0xff8231d4
192//NSTUB(kbd_p2_f                              ,0xff822a18) //109            == 0xff822a18
193NSTUB(kbd_read_keys                           ,0xff8230cc) //109
194//NSTUB(kbd_read_keys_r2                      ,0xff848dc8) //109            == 0xff848dc8
195//NSTUB(lseek                                 ,0xff82566c) //101            == 0xff82566c
196//NSTUB(malloc                                ,0xff8139dc) //112            == 0xff8139dc
197//NSTUB(memcmp                                ,0xff81e834) //101            == 0xff81e834
198//NSTUB(memcpy                                ,0xff895cf0) //101            == 0xff895cf0
199//NSTUB(memset                                ,0xffa8d404) //101            == 0xffa8d404
200//NSTUB(mkdir                                 ,0xff8258d0) //  1            == 0xff8258d0
201// ALT: NSTUB(mkdir, 0xff825970) // 1 32/0
202NSTUB(mktime_ext                              ,0xff89655c) //  1
203//NSTUB(open                                  ,0xff81a0e0) //  1            == 0xff81a0e0
204//NSTUB(opendir                               ,0xffa2cb18) //  1            == 0xffa2cb18
205//NSTUB(openfastdir                           ,0xffa2cb18) //  1            == 0xffa2cb18
206//NSTUB(qsort                                 ,0xff9be474) //  1            == 0xff9be474
207//NSTUB(rand                                  ,0xff81e93c) //  1            == 0xff81e93c
208//NSTUB(read                                  ,0xff81a378) //101            == 0xff81a378
209//NSTUB(readfastdir                           ,0xffa2cbac) //  1            == 0xffa2cbac
210NSTUB(reboot_fw_update                        ,0xffa34570) //  1
211NSTUB(set_control_event                       ,0xff872c2c) //  1
212//NSTUB(srand                                 ,0xff81e930) //  1            == 0xff81e930
213//NSTUB(stat                                  ,0xff825738) //  1            == 0xff825738
214//NSTUB(strcat                                ,0xff895c1c) //  1            == 0xff895c1c
215//NSTUB(strchr                                ,0xff895ca4) //  1            == 0xff895ca4
216//NSTUB(strcpy                                ,0xff81e778) //101            == 0xff81e778
217NSTUB(strftime                                ,0xff895f64) //  1
218//NSTUB(strlen                                ,0xff81e810) //101            == 0xff81e810
219//NSTUB(strncmp                               ,0xff895c58) //  1            == 0xff895c58
220//NSTUB(strncpy                               ,0xff81e790) //  1            == 0xff81e790
221//NSTUB(strrchr                               ,0xff895cc8) //  1            == 0xff895cc8
222//NSTUB(strtol                                ,0xff830d90) //101            == 0xff830d90
223NSTUB(strtolx                                 ,0xff830b94) //109
224  DEF(task_CaptSeq                            ,0xff861210) //107
225  DEF(task_ExpDrv                             ,0xff8b8b90) //110
226  DEF(task_InitFileModules                    ,0xff877284) //107
227  DEF(task_MovieRecord                        ,0xff85d4c0) //107
228  DEF(task_PhySw                              ,0xff822d74) //107
229NSTUB(time                                    ,0xff86ba3c) //  2
230//NSTUB(vsprintf                              ,0xff81e6f8) //  1            == 0xff81e6f8
Note: See TracBrowser for help on using the repository browser.