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

Revision 1635, 13.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 R31 (DRYOS version 2.3, release #0031)
6//   Firmware Ver GM1.02A
7//   Canon PowerShot G10
8
9// Values for makefile.inc
10//   PLATFORMID = 12687 (0x318f) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x07ffffff
12//   KEYSYS = d4                 // Found @ 0xffff368c
13//   NEED_ENCODED_DISKBOOT = 1   // Found @ 0xffff369c
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                           ,0xff84b174) //  2 60%        == 0xff84b174
18// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff81093c
19
20// Check of modemap from 'platform/CAMERA/shooting.c':
21// Firmware modemap table found @ff88301c -> ff87f310 -> ff970650 -> ffa7aa78 -> ffb75040
22// No problems found with modemap table.
23
24// Values below can be overridden in 'stubs_min.S':
25DEF(physw_status                            ,0x00011cb8) // Found @0xff821c28
26DEF(physw_run                               ,0x00001c2c) // Found @0xff82189c
27DEF(levent_table                            ,0xffb43a90) // Found @0xffb43a90
28DEF(FlashParamsTable                        ,0xffb75220) // Found @0xffb75220
29DEF(movie_status                            ,0x00005418) // Found @0xff8629c4
30DEF(canon_menu_active                       ,0x00005868) // Found @0xff8782dc
31DEF(canon_shoot_menu_active                 ,0x0000a8ad) // Found @0xff987994
32DEF(playrec_mode                            ,0x000055d0) // Found @0xff86b300
33DEF(zoom_status                             ,0x0000e0b0) // Found @0xffa7c758
34DEF(some_flag_for_af_scan                   ,0x000096f8) // Found @0xff946b5c
35// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
36// each entry contains 3 int value(s), the first is the zoom focus length.
37// there are 14 entries in the table - set NUM_FL to 14
38DEF(focus_len_table                         ,0xfffe2a8c) // Found @0xfffe2a8c
39DEF(zoom_busy                               ,0x00008d44) // Found @0xff93e458
40DEF(focus_busy                              ,0x00008c44) // Found @0xff938b44
41DEF(recreview_hold                          ,0x00006274) // Found @0xff888be8
42
43// Values below go in 'lib.c':
44//void *vid_get_bitmap_fb()        { return (void*)0x40471000; }             // Found @0xff846a4c
45//void *vid_get_viewport_fb()      { return (void*)0x40816dc0; }             // Found @0xffad4d84
46//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x524c+0x58)); } // Found @0xff85b864 & 0xff85b89c
47//char *camera_jpeg_count_str()    { return (char*)0x0004c95c; }             // Found @0xff9cccf0
48//long hook_raw_size()             { return 0x01574d00; }                    // Found @0xffad7140
49//int get_flash_params_count(void) { return 0x78; }                          // Found @0xff971c50
50
51// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
52//#define SD_READONLY_FLAG    0x00020000 // Found @0xffb0f954, levent 0x90a
53//#define SD_READONLY_IDX     2
54//#define USB_MASK            0x00040000 // Found @0xffb0f960, levent 0x902
55//#define USB_IDX             2
56
57// Keymap values for kbd.c. Additional keys may be present, only common values included here.
58//static KeyMap keymap[] = {
59//    { 0, KEY_SHOOT_FULL      ,0x00000003 }, // Found @0xffb0f7d4, levent 0x01
60//    { 0, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffb0f7d4, levent 0x01
61//    { 0, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffb0f7c8, levent 0x00
62//    { 1, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffb0f840, levent 0x03
63//    { 1, KEY_ZOOM_IN         ,0x00000010 }, // Found @0xffb0f84c, levent 0x02
64//    { 1, KEY_LEFT            ,0x00000400 }, // Found @0xffb0f894, levent 0x06
65//    { 1, KEY_SET             ,0x00000800 }, // Found @0xffb0f8a0, levent 0x08
66//    { 1, KEY_RIGHT           ,0x00001000 }, // Found @0xffb0f8ac, levent 0x07
67//    { 1, KEY_DOWN            ,0x00002000 }, // Found @0xffb0f8b8, levent 0x05
68//    { 1, KEY_UP              ,0x00004000 }, // Found @0xffb0f8c4, levent 0x04
69//    { 1, KEY_DISPLAY         ,0x00020000 }, // Found @0xffb0f8e8, levent 0x0a
70//    { 1, KEY_MENU            ,0x00040000 }, // Found @0xffb0f8f4, levent 0x09
71//    { 0, 0, 0 }
72//};
73
74// Values below go in 'platform_camera.h':
75//#define CAM_DRYOS         1
76//#define CAM_RAW_ROWPIX    4480 // Found @0xffacde4c
77//#define CAM_RAW_ROWS      3348 // Found @0xffacde50
78//#undef  CAM_UNCACHED_BIT
79//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff828844
80
81// Misc stuff
82DEF(ctypes, 0xffb0964a)
83
84// For capt_seq.c
85//static long *nrflag = (long*)(0x96e4-0x04);  // Found @ ff94921c & ff949234
86
87// Stubs below matched 100%.
88//    Name                                     Address                Comp to stubs_entry_2.S
89NSTUB(AllocateMemory                          ,0xffa6886c) //101
90NSTUB(AllocateUncacheableMemory               ,0xff828800) //112
91NSTUB(Close                                   ,0xff824088) //101
92NSTUB(CreateTask                              ,0xff81aef4) //101
93NSTUB(DebugAssert                             ,0xff81b1cc) //111
94NSTUB(DeleteDirectory_Fut                     ,0xff823a18) //  1
95NSTUB(DeleteFile_Fut                          ,0xff823934) //112
96NSTUB(DoAFLock                                ,0xff825e48) //102
97NSTUB(EnterToCompensationEVF                  ,0xff826110) //104
98NSTUB(ExecuteEventProcedure                   ,0xff873ae4) //  1
99NSTUB(ExitFromCompensationEVF                 ,0xff826154) //104
100NSTUB(ExitTask                                ,0xff81b184) //101
101NSTUB(ExpCtrlTool_StartContiAE                ,0xff831950) //104
102NSTUB(ExpCtrlTool_StopContiAE                 ,0xff831a94) //104
103NSTUB(Fclose_Fut                              ,0xff823ab0) //101
104NSTUB(Feof_Fut                                ,0xff823c9c) //  1
105NSTUB(Fflush_Fut                              ,0xff823cd8) //  1
106NSTUB(Fgets_Fut                               ,0xff823c04) //  1
107NSTUB(Fopen_Fut                               ,0xff823a70) //101
108NSTUB(Fread_Fut                               ,0xff823b5c) //101
109NSTUB(FreeMemory                              ,0xffa68864) //101
110NSTUB(FreeUncacheableMemory                   ,0xff828840) //112
111NSTUB(Fseek_Fut                               ,0xff823c50) //101
112NSTUB(Fwrite_Fut                              ,0xff823bb0) //101
113NSTUB(GetBatteryTemperature                   ,0xff84dc90) //102
114NSTUB(GetCCDTemperature                       ,0xff84dc20) //102
115NSTUB(GetCurrentAvValue                       ,0xff93b378) //102
116NSTUB(GetDrive_ClusterSize                    ,0xff859f90) //  1
117NSTUB(GetDrive_FreeClusters                   ,0xff859ff8) //  1
118NSTUB(GetDrive_TotalClusters                  ,0xff859fc4) //  1
119NSTUB(GetFocusLensSubjectDistance             ,0xff939848) //102
120NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff939c30) //  3
121NSTUB(GetKbdState                             ,0xff84afbc) //109
122NSTUB(GetMemInfo                              ,0xff813c24) //  1
123NSTUB(GetOpticalTemperature                   ,0xff84dd00) //102
124NSTUB(GetParameterData                        ,0xff971c10) //101
125NSTUB(GetPropertyCase                         ,0xff8777cc) //102
126NSTUB(GetSystemTime                           ,0xffa688c4) //101
127NSTUB(GetZoomLensCurrentPoint                 ,0xff93e7c8) //102
128NSTUB(GetZoomLensCurrentPosition              ,0xffa5dcb8) //102
129NSTUB(GiveSemaphore                           ,0xff82821c) //112
130NSTUB(IsStrobeChargeCompleted                 ,0xff8b4794) //102
131NSTUB(LEDDrive                                ,0xff84a53c) //103
132NSTUB(LocalTime                               ,0xff871280) //  1
133NSTUB(LockMainPower                           ,0xff87ef28) //103
134NSTUB(Lseek                                   ,0xff8241c8) //101
135NSTUB(MakeDirectory_Fut                       ,0xff8239a8) //  1
136NSTUB(MoveFocusLensToDistance                 ,0xffad17b8) //102
137NSTUB(MoveIrisWithAv                          ,0xffa65290) //102
138NSTUB(MoveZoomLensWithPoint                   ,0xffa659a8) //102
139NSTUB(NewTaskShell                            ,0xff877274) //103
140NSTUB(Open                                    ,0xff824060) //101
141NSTUB(PB2Rec                                  ,0xff8822ec) //104
142NSTUB(PT_MoveDigitalZoomToWide                ,0xff864344) //102
143NSTUB(PT_MoveOpticalZoomAt                    ,0xff86431c) //102
144NSTUB(PT_PlaySound                            ,0xff863c98) //102
145NSTUB(PostLogicalEventForNotPowerType         ,0xff87ccec) //103
146NSTUB(PostLogicalEventToUI                    ,0xff87cd38) //103
147NSTUB(PutInNdFilter                           ,0xffa6580c) //102
148NSTUB(PutOutNdFilter                          ,0xffa65830) //102
149NSTUB(Read                                    ,0xff819a4c) //101
150NSTUB(ReadFastDir                             ,0xffa4a194) //  1
151NSTUB(Rec2PB                                  ,0xff880c28) //104
152//NSTUB(RefreshPhysicalScreen                 ,0xff9dae58) //104            == 0xff9dae58
153NSTUB(Remove                                  ,0xff8240d0) //  1
154NSTUB(RenameFile_Fut                          ,0xff8238e0) //  1
155NSTUB(Restart                                 ,0xff82a074) //106
156NSTUB(SetAE_ShutterSpeed                      ,0xffad3f88) //102
157NSTUB(SetAutoShutdownTime                     ,0xff87ef9c) //103
158NSTUB(SetCurrentCaptureModeType               ,0xff885d94) //101
159NSTUB(SetFileTimeStamp                        ,0xff824364) //  1
160NSTUB(SetLogicalEventActive                   ,0xff87ec78) //101
161NSTUB(SetParameterData                        ,0xff971aec) //101
162NSTUB(SetPropertyCase                         ,0xff8776c4) //102
163NSTUB(SetScriptMode                           ,0xff87ecc8) //101
164NSTUB(SleepTask                               ,0xff828484) //101
165NSTUB(TakeSemaphore                           ,0xff82814c) //101
166NSTUB(TurnOffBackLight                        ,0xff88c57c) //104
167NSTUB(TurnOnBackLight                         ,0xff88c564) //104
168NSTUB(UIFS_WriteFirmInfoToFile                ,0xff95fddc) //103
169NSTUB(UnlockAF                                ,0xff825e9c) //102
170NSTUB(UnlockMainPower                         ,0xff87ee7c) //103
171NSTUB(UnsetZoomForMovie                       ,0xff977ed4) //104
172NSTUB(UpdateMBROnFlash                        ,0xff859dd0) //105
173NSTUB(VbattGet                                ,0xff820574) //103
174NSTUB(Write                                   ,0xff824134) //101
175NSTUB(WriteSDCard                             ,0xff92a7c0) //108
176NSTUB(_log                                    ,0xffb068c8) //111
177NSTUB(_log10                                  ,0xffb05554) //112
178NSTUB(_pow                                    ,0xffb056c4) //114
179NSTUB(_sqrt                                   ,0xffb08524) //  1
180NSTUB(add_ptp_handler                         ,0xffa15950) //  3
181NSTUB(apex2us                                 ,0xff9dc33c) //  4
182NSTUB(close                                   ,0xff819864) //  1
183NSTUB(closedir                                ,0xffa4a264) //  1
184NSTUB(err_init_task                           ,0xff814e80) //  4
185NSTUB(exmem_alloc                             ,0xff8721c0) //103
186NSTUB(free                                    ,0xff813a7c) //112
187NSTUB(kbd_p1_f                                ,0xff821d24) //109
188NSTUB(kbd_p1_f_cont                           ,0xff821d30) //109
189NSTUB(kbd_p2_f                                ,0xff82153c) //109
190NSTUB(kbd_read_keys                           ,0xff821c28) //109
191NSTUB(kbd_read_keys_r2                        ,0xff84a99c) //109
192NSTUB(lseek                                   ,0xff8241c8) //101
193NSTUB(malloc                                  ,0xff8139a8) //112
194NSTUB(memcmp                                  ,0xff81cbb0) //101
195NSTUB(memcpy                                  ,0xff899344) //101
196NSTUB(memset                                  ,0xff9db1ac) //101
197NSTUB(mkdir                                   ,0xff82442c) //  1
198// ALT: NSTUB(mkdir, 0xff8244cc) // 1 32/0
199NSTUB(mktime_ext                              ,0xff899bb0) //  1
200NSTUB(open                                    ,0xff8197b4) //  1
201NSTUB(opendir                                 ,0xffa4a100) //  1
202NSTUB(openfastdir                             ,0xffa4a100) //  1
203NSTUB(qsort                                   ,0xff9db6b4) //  1
204NSTUB(rand                                    ,0xff81ccb8) //  1
205NSTUB(read                                    ,0xff819a4c) //101
206NSTUB(readfastdir                             ,0xffa4a194) //  1
207NSTUB(reboot_fw_update                        ,0xffa51b94) //  5
208NSTUB(rename                                  ,0xff8238e0) //  1
209NSTUB(set_control_event                       ,0xff87e8dc) //111
210NSTUB(srand                                   ,0xff81ccac) //  1
211NSTUB(stat                                    ,0xff824294) //  1
212NSTUB(strcat                                  ,0xff899158) //  1
213NSTUB(strchr                                  ,0xff8991e0) //  1
214NSTUB(strcmp                                  ,0xff81cb48) //101
215NSTUB(strcpy                                  ,0xff81cb30) //101
216NSTUB(strftime                                ,0xff8995b8) //  1
217NSTUB(strlen                                  ,0xff81cb8c) //101
218NSTUB(strncmp                                 ,0xff899194) //  1
219NSTUB(strncpy                                 ,0xff82e2bc) //  1
220NSTUB(strrchr                                 ,0xff9db184) //  1
221NSTUB(strtol                                  ,0xff82e4f4) //101
222NSTUB(strtolx                                 ,0xff82e2f8) //109
223  DEF(task_CaptSeq                            ,0xff866bfc) //107
224  DEF(task_ExpDrv                             ,0xff8ab0e0) //110
225  DEF(task_InitFileModules                    ,0xff882ea8) //107
226  DEF(task_MovieRecord                        ,0xff862c0c) //107
227  DEF(task_PhySw                              ,0xff821898) //107
228NSTUB(time                                    ,0xff871860) //  2
229NSTUB(vsprintf                                ,0xff81caf4) //  1
230NSTUB(write                                   ,0xff824134) //101
Note: See TracBrowser for help on using the repository browser.