source: trunk/platform/sx40hs/sub/100g/stubs_entry.S @ 1787

Revision 1787, 14.4 KB checked in by philmoz, 14 months ago (diff)

Updates for finsig_dryos.c:

  • fix to correctly find addresses in code copied to RAM
  • add live view palette values for some recent cameras
  • add live view bitmap values for some recent cameras
  • 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 R49 (DRYOS version 2.3, release #0049)
6//   Firmware Ver GM1.00G
7//   Canon PowerShot SX40 HS
8
9// Values for makefile.inc
10//   PLATFORMID = 12856 (0x3238) // Found @ 0xfff40040
11//   MAXRAMADDR = 0x0fffffff
12//   KEYSYS = d4c                // Found @ 0xffff3b48
13//   NEED_ENCODED_DISKBOOT = 7   // Found @ 0xffff3b58
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// ERROR: kbd_pwr_off is not found.                        //--- ---    *** != 0x00000000
18// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0x00000000
19NSTUB(reboot_fw_update                        ,0xff33ee20) //  6 96%
20
21// Check of modemap from 'platform/CAMERA/shooting.c':
22// Firmware modemap table found @ff09bd3c -> ff0985bc -> ff2047c0 -> ff36a8e8 -> ff607d14
23// No problems found with modemap table.
24
25// Values below can be overridden in 'stubs_min.S':
26DEF(physw_status                            ,0x00037548) // Found @0xff024dd8
27DEF(physw_run                               ,0x00001c10) // Found @0xff024968
28DEF(levent_table                            ,0xff593a0c) // Found @0xff593a0c
29DEF(FlashParamsTable                        ,0xff607f74) // Found @0xff607f74
30DEF(movie_status                            ,0x00002f1c) // Found @0xff0772a8
31DEF(full_screen_refresh                     ,0x0000c2d8) // Found @0xff2917e0
32DEF(canon_menu_active                       ,0x000034f0) // Found @0xff091b6c
33DEF(canon_shoot_menu_active                 ,0x0000ab6d) // Found @0xff22a704
34DEF(playrec_mode                            ,0x00003214) // Found @0xff083504
35DEF(zoom_status                             ,0x000111f8) // Found @0xff36e6d8
36// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
37// each entry contains 1 int value, which is the the zoom focus length.
38// there are 201 entries in the table - set NUM_FL to 201
39DEF(focus_len_table                         ,0xfff4a7b4) // Found @0xfff4a7b4
40DEF(zoom_busy                               ,0x00002e2c) // Found @0xff071c6c
41DEF(focus_busy                              ,0x00008d08) // Found @0xff1bbe80
42DEF(recreview_hold                          ,0x000041e4) // Found @0xff0a443c
43DEF(palette_control                         ,0x0000c2d8) // Found @0xff29175c
44DEF(active_palette_buffer                   ,0x0000c2e0) // Found @0xff291760
45DEF(palette_buffer                          ,0x000df7f0) // Found @0xff291c28
46DEF(bitmap_buffer                           ,0x0000c31c) // Found @0xff29546c
47DEF(active_bitmap_buffer                    ,0x0000c314) // Found @0xff295470
48
49// Values below go in 'lib.c':
50//void *vid_get_bitmap_fb()        { return (void*)0x40685000; }             // Found @0xff0515dc
51//void *vid_get_viewport_fb()      { return (void*)0x407dab80; }             // Found @0xff3e0b38
52//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x2ca0+0x58)); } // Found @0xff06bfac & 0xff06bfe4
53//char *camera_jpeg_count_str()    { return (char*)0x000df0e8; }             // Found @0xff285438
54//long hook_raw_size()             { return 0x01247a60; }                    // Found @0xff3e393c
55//int get_flash_params_count(void) { return 0x9f; }                          // Found @0xff205db4
56
57// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
58//#define SD_READONLY_FLAG    0x00000002 // Found @0xff434b6c, levent 0x20a
59//#define SD_READONLY_IDX     1
60//#define USB_MASK            0x40000000 // Found @0xff434be4, levent 0x202
61//#define USB_IDX             2
62
63// Keymap values for kbd.c. Additional keys may be present, only common values included here.
64//static KeyMap keymap[] = {
65//    { 0, KEY_UP              ,0x00000400 }, // Found @0xff434aec, levent 0x04
66//    { 0, KEY_DOWN            ,0x00000800 }, // Found @0xff434af4, levent 0x05
67//    { 0, KEY_LEFT            ,0x00001000 }, // Found @0xff434afc, levent 0x06
68//    { 0, KEY_RIGHT           ,0x00002000 }, // Found @0xff434b04, levent 0x07
69//    { 0, KEY_SET             ,0x00004000 }, // Found @0xff434b0c, levent 0x08
70//    { 0, KEY_DISPLAY         ,0x00020000 }, // Found @0xff434b24, levent 0x0a
71//    { 0, KEY_MENU            ,0x00040000 }, // Found @0xff434b2c, levent 0x09
72//    { 2, KEY_SHOOT_FULL      ,0x0000c000 }, // Found @0xff434bac, levent 0x01
73//    { 2, KEY_SHOOT_FULL_ONLY ,0x00008000 }, // Found @0xff434bac, levent 0x01
74//    { 2, KEY_SHOOT_HALF      ,0x00004000 }, // Found @0xff434ba4, levent 0x00
75//    { 0, 0, 0 }
76//};
77
78// Values below go in 'platform_camera.h':
79//#define CAM_DRYOS         1
80//#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
81//#define CAM_DRYOS_2_3_R47 1 // Defined for cameras with DryOS version R47 or higher
82//#define CAM_RAW_ROWPIX    4176 // Found @0xff18e04c
83//#define CAM_RAW_ROWS      3060 // Found @0xff18e058
84//#undef  CAM_UNCACHED_BIT
85//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff02bea8
86
87// Misc stuff
88DEF(ctypes, 0xff43381a)
89
90// For capt_seq.c
91//static long *nrflag = (long*)(0xc3f8+0x00);  // Found @ ff29e26c & ff29e2f4
92//#define NR_AUTO (0)                          // have to explictly reset value back to 0 to enable auto
93
94// Stubs below matched 100%.
95//    Name                                     Address                Comp to stubs_entry_2.S
96NSTUB(AllocateMemory                          ,0xff359764) //101
97NSTUB(AllocateUncacheableMemory               ,0xff02be60) //112
98NSTUB(Close                                   ,0xff0275e4) //101
99NSTUB(CreateTask                              ,0xff00eaf0) //101
100NSTUB(DebugAssert                             ,0xff00edc8) //111
101NSTUB(DeleteDirectory_Fut                     ,0xff026fe0) //  1
102NSTUB(DeleteFile_Fut                          ,0xff026efc) //112
103NSTUB(DoAFLock                                ,0xff029330) //102
104NSTUB(EnterToCompensationEVF                  ,0xff029704) //104
105NSTUB(ExecuteEventProcedure                   ,0xff08d004) //  1
106NSTUB(ExitFromCompensationEVF                 ,0xff029748) //104
107NSTUB(ExitTask                                ,0xff00ed80) //101
108NSTUB(ExpCtrlTool_StartContiAE                ,0xff037bf0) //104
109NSTUB(ExpCtrlTool_StopContiAE                 ,0xff037cd0) //104
110NSTUB(Fclose_Fut                              ,0xff027078) //101
111NSTUB(Feof_Fut                                ,0xff027264) //  1
112NSTUB(Fflush_Fut                              ,0xff0272a0) //  1
113NSTUB(Fgets_Fut                               ,0xff0271cc) //  6
114NSTUB(Fopen_Fut                               ,0xff027038) //101
115NSTUB(Fread_Fut                               ,0xff027124) //101
116NSTUB(FreeMemory                              ,0xff35975c) //101
117NSTUB(FreeUncacheableMemory                   ,0xff02bea0) //112
118NSTUB(Fseek_Fut                               ,0xff027218) //101
119NSTUB(Fwrite_Fut                              ,0xff027178) //101
120NSTUB(GetBatteryTemperature                   ,0xff05bbe8) //102
121NSTUB(GetCCDTemperature                       ,0xff05bb74) //102
122NSTUB(GetCurrentAvValue                       ,0xff1bebbc) //102
123NSTUB(GetDrive_ClusterSize                    ,0xff06a60c) //  6
124NSTUB(GetDrive_FreeClusters                   ,0xff06a664) //  6
125NSTUB(GetDrive_TotalClusters                  ,0xff06a63c) //  6
126NSTUB(GetFocusLensSubjectDistance             ,0xff1bca78) //102
127NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff1bcde4) //  3
128NSTUB(GetImageFolder                          ,0xff19765c) //  6
129NSTUB(GetKbdState                             ,0xff057c04) //109
130NSTUB(GetMemInfo                              ,0xff00a2b8) //  3
131NSTUB(GetOpticalTemperature                   ,0xff05bc5c) //102
132NSTUB(GetParameterData                        ,0xff205d74) //101
133NSTUB(GetPropertyCase                         ,0xff0910a4) //102
134NSTUB(GetSystemTime                           ,0xff3597bc) //101
135NSTUB(GetZoomLensCurrentPoint                 ,0xff071ffc) //102
136NSTUB(GetZoomLensCurrentPosition              ,0xff1c4fb4) //102
137NSTUB(GiveSemaphore                           ,0xff02b5e0) //112
138NSTUB(IsStrobeChargeCompleted                 ,0xff0efe04) //102
139NSTUB(LEDDrive                                ,0xff056e58) //101
140NSTUB(LocalTime                               ,0xff08a9c8) //  6
141NSTUB(LockMainPower                           ,0xff0981b4) //103
142NSTUB(Lseek                                   ,0xff027800) //101
143NSTUB(MakeDirectory_Fut                       ,0xff026f70) //  6
144NSTUB(MakeSDCardBootable                      ,0xff06a89c) //105
145NSTUB(MoveFocusLensToDistance                 ,0xff3dc66c) //102
146NSTUB(MoveIrisWithAv                          ,0xff355074) //102
147NSTUB(MoveZoomLensWithPoint                   ,0xff3558d0) //102
148NSTUB(NewTaskShell                            ,0xff090a24) //101
149NSTUB(Open                                    ,0xff02751c) //101
150NSTUB(PB2Rec                                  ,0xff09b3ac) //104
151NSTUB(PT_MoveDigitalZoomToWide                ,0xff0790a8) //102
152NSTUB(PT_MoveOpticalZoomAt                    ,0xff079080) //102
153NSTUB(PT_PlaySound                            ,0xff085438) //  6
154NSTUB(PostLogicalEventForNotPowerType         ,0xff095b98) //103
155NSTUB(PostLogicalEventToUI                    ,0xff095be4) //103
156NSTUB(PutInNdFilter                           ,0xff3da150) //102
157NSTUB(PutOutNdFilter                          ,0xff3da188) //102
158NSTUB(Read                                    ,0xff00ad74) //101
159NSTUB(ReadFastDir                             ,0xff3396cc) //  6
160NSTUB(Rec2PB                                  ,0xff099b1c) //104
161NSTUB(RefreshPhysicalScreen                   ,0xff0b1a24) //104
162NSTUB(Remove                                  ,0xff027758) //  6
163NSTUB(RenameFile_Fut                          ,0xff026e68) //  6
164NSTUB(Restart                                 ,0xff02d6a0) //106
165NSTUB(ScreenLock                              ,0xff0b2c50) //  4
166NSTUB(ScreenUnlock                            ,0xff0b2cb4) //  3
167NSTUB(SetAE_ShutterSpeed                      ,0xff3dfcb0) //102
168NSTUB(SetAutoShutdownTime                     ,0xff098228) //103
169NSTUB(SetCurrentCaptureModeType               ,0xff0a1650) //101
170NSTUB(SetFileAttributes                       ,0xff0279e8) //  6
171NSTUB(SetFileTimeStamp                        ,0xff027970) //  6
172NSTUB(SetLogicalEventActive                   ,0xff097ef0) //101
173NSTUB(SetParameterData                        ,0xff205c50) //101
174NSTUB(SetPropertyCase                         ,0xff090f1c) //102
175NSTUB(SetScriptMode                           ,0xff097f8c) //101
176NSTUB(SleepTask                               ,0xff02b88c) //101
177NSTUB(TakeSemaphore                           ,0xff02b510) //101
178NSTUB(TurnOffBackLight                        ,0xff0a96b0) //104
179NSTUB(TurnOnBackLight                         ,0xff0a9698) //104
180NSTUB(UIFS_WriteFirmInfoToFile                ,0xff1f15b4) //101
181NSTUB(UnlockAF                                ,0xff029368) //102
182NSTUB(UnlockMainPower                         ,0xff098108) //103
183NSTUB(VbattGet                                ,0xff022364) //101
184NSTUB(Write                                   ,0xff027638) //101
185NSTUB(WriteSDCard                             ,0xff1ab46c) //108
186NSTUB(_log                                    ,0xff430340) //111
187NSTUB(_log10                                  ,0xff430880) //112
188NSTUB(_pow                                    ,0xff4309f8) //114
189NSTUB(_sqrt                                   ,0xff43261c) //  6
190NSTUB(add_ptp_handler                         ,0xff2dfff0) //  6
191NSTUB(apex2us                                 ,0xff297c24) //  4
192NSTUB(close                                   ,0xff00abd0) //  6
193NSTUB(closedir                                ,0xff339528) //  4
194NSTUB(err_init_task                           ,0xff00602c) //  4
195NSTUB(exmem_alloc                             ,0xff08b988) //101
196NSTUB(free                                    ,0xff004264) //112
197NSTUB(kbd_p1_f                                ,0xff024e28) //109
198NSTUB(kbd_p1_f_cont                           ,0xff024e34) //109
199NSTUB(kbd_p2_f                                ,0xff024600) //109
200NSTUB(kbd_read_keys                           ,0xff024dd8) //109
201NSTUB(kbd_read_keys_r2                        ,0xff05730c) //109
202NSTUB(lseek                                   ,0xff027800) //101
203NSTUB(malloc                                  ,0xff00420c) //112
204NSTUB(memcmp                                  ,0xff010a48) //101
205NSTUB(memcpy                                  ,0xff03169c) //101
206NSTUB(memset                                  ,0xff295c5c) //101
207NSTUB(mkdir                                   ,0xff027a80) //  6
208NSTUB(mktime_ext                              ,0xff0b3bc0) //  1
209NSTUB(open                                    ,0xff00ab20) //  6
210NSTUB(opendir                                 ,0xff339578) //  6
211NSTUB(openfastdir                             ,0xff339578) //  6
212NSTUB(qsort                                   ,0xff3ae9d0) //  6
213NSTUB(rand                                    ,0xff295d98) //  6
214NSTUB(read                                    ,0xff00ad74) //101
215NSTUB(rename                                  ,0xff026e68) //  6
216NSTUB(set_control_event                       ,0xff097a94) //111
217NSTUB(srand                                   ,0xff295d8c) //  6
218NSTUB(stat                                    ,0xff027848) //  3
219NSTUB(strcat                                  ,0xff0b3378) //  1
220NSTUB(strchr                                  ,0xff0040d8) //  1
221NSTUB(strcmp                                  ,0xff010a04) //101
222NSTUB(strcpy                                  ,0xff0109ec) //101
223NSTUB(strftime                                ,0xff0b35c0) //113
224NSTUB(strlen                                  ,0xff004124) //101
225NSTUB(strncmp                                 ,0xff00408c) //  1
226NSTUB(strncpy                                 ,0xff004050) //  1
227NSTUB(strrchr                                 ,0xff0040fc) //  1
228NSTUB(strtol                                  ,0xff03199c) //101
229NSTUB(strtolx                                 ,0xff0317a0) //109
230  DEF(task_CaptSeq                            ,0xff07c46c) //110
231  DEF(task_ExpDrv                             ,0xff0cc430) //110
232  DEF(task_InitFileModules                    ,0xff09bbb0) //110
233  DEF(task_MovieRecord                        ,0xff07854c) //110
234  DEF(task_PhySw                              ,0xff024964) //110
235  DEF(task_RotaryEncoder                      ,0xff057f64) //110
236NSTUB(time                                    ,0xff08afa4) //  6
237NSTUB(vsprintf                                ,0xff0109ac) //  6
238NSTUB(write                                   ,0xff027638) //101
Note: See TracBrowser for help on using the repository browser.