source: trunk/platform/a495/sub/100d/stubs_entry.S @ 1436

Revision 1436, 15.5 KB checked in by philmoz, 18 months ago (diff)

Fix for finsig_dryos.c to correctly find CAM_RAW_ROWS value for a490, a495 and a3000. Plus some general code cleanup in finsig_dryos.c.

  • Property svn:eol-style set to native
RevLine 
[1376]1// !!! THIS FILE IS GENERATED. DO NOT EDIT. !!!
2#include "stubs_asm.h"
3
4// Camera info:
[1385]5//   DRYOS R43 (DRYOS version 2.3, release #0043)
6//   Firmware Ver GM1.00D
7//   Canon PowerShot A495
[1391]8
9// Values for makefile.inc
10//   PLATFORMID = 12783 (0x31ef) // Found @ 0xfffe0130
[1385]11//   MAXRAMADDR = 0x01ffffff
[1391]12//   KEYSYS = d4a                // Found @ 0xffff1a2c
13//   NEED_ENCODED_DISKBOOT = 4   // Found @ 0xffff1a3c
[1376]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(GetDrive_FreeClusters                 ,0xffc23810) //  3        *** != 0xffc51320
18// ALT: NSTUB(GetDrive_FreeClusters, 0xffc51320) // 4 9/0
19//NSTUB(SetScriptMode                         ,0xffc6cc08) //101        *** != 0xffc00f70
20//NSTUB(kbd_pwr_off                           ,0xffc435e4) //  2 64%        == 0xffc435e4
21// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xffc00b20
22
23// Check of modemap from 'platform/CAMERA/shooting.c':
24// Firmware modemap table found @ffc706d0 -> ffc6d238 -> ffd2e134 -> ffe0aa60 -> ffecf688
25// Mode 16417 in firmware but not in current modemap
26// Mode 16399 in firmware but not in current modemap
27// Mode 16934 in firmware but not in current modemap
28// Mode 16935 in firmware but not in current modemap
29// Mode 16936 in firmware but not in current modemap
30// Mode 16407 in firmware but not in current modemap
31// Mode  2609 in firmware but not in current modemap
32// Current modemap entry not found in firmware - MODE_SUPER_MACRO         16905
33// Current modemap entry not found in firmware - MODE_SCN_SNOW            16404
34// Current modemap entry not found in firmware - MODE_SCN_INDOOR          16401
35// Current modemap entry not found in firmware - MODE_SCN_KIDS_PETS       16400
36// Current modemap entry not found in firmware - MODE_SCN_NIGHT_SCENE     16395
37// Current modemap entry not found in firmware - MODE_VIDEO_STD            2598
38
39// Values below go in 'stubs_min.S':
40//DEF(physw_status                            ,0x0002e7f4) // Found @0xffc23b2c,          stubs_min = 0x0002e7f4 (0x2E7F4)
41//DEF(physw_run                               ,0x00001bf0) // Found @0xffc23790,          stubs_min = 0x00001bf0 (0x1BE4+0x0C)
42//DEF(levent_table                            ,0xffea2d00) // Found @0xffea2d00,          stubs_min = 0xffea2d00 (0xffea2d00)
43//DEF(FlashParamsTable                        ,0xffecf87c) // Found @0xffecf87c,          stubs_min = 0xffecf87c (0xffecf87c)
44//DEF(movie_status                            ,0x000054a0) // Found @0xffd0c728,          stubs_min = 0x000054a0 (0x5468+0x38)
45//DEF(full_screen_refresh                     ,0x00007370) // Found @0xffd7a970,          stubs_min = 0x00007370 (0x7370)
46//DEF(canon_menu_active                       ,0x00002a3c) // Found @0xffc6a0cc,          stubs_min = 0x00002a3c (0x2A38+4)
47//DEF(canon_shoot_menu_active                 ,0x000065b5) // Found @0xffd40094,          stubs_min = 0x000065b5 (0x000065b5)
[1399]48//DEF(playrec_mode                            ,0x00002798) // Found @0xffc5d8b0,          stubs_min = 0x00002798 (0x2794+0x4)
[1376]49//DEF(zoom_status                             ,0x00009648) // Found @0xffe0d93c,          stubs_min = 0x00009648 (0x00009648)
50//DEF(some_flag_for_af_scan                   ,0x00005848) // Found @0xffd0f094,          stubs_min = 0x00005848 (0x5848)
51
52// Values below go in 'lib.c':
53//void *vid_get_bitmap_fb()        { return (void*)0x10361000; } // Found @0xffc3f020
54//void *vid_get_viewport_fb()      { return (void*)0x10648cc0; } // Found @0xffe569d4
55//char *camera_jpeg_count_str()    { return (char*)0x0007486c; } // Found @0xffd71fa0
56//long hook_raw_size()             { return 0x00ec04f0; }        // Found @0xffe59d5c
57//int get_flash_params_count(void) { return 0x94; }              // Found @0xffd2f1f0
58
59// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
60//#define SD_READONLY_FLAG    0x00040000 // Found @0xffe84f2c, levent 0x90a
61//#define SD_READONLY_IDX     2
[1397]62//#define USB_MASK            0x00080000 // Found @0xffe84f38, levent 0x902
[1376]63//#define USB_IDX             2
64
65// Keymap values for kbd.c. Additional keys may be present, only common values included here.
66//static KeyMap keymap[] = {
[1397]67//    { 2, KEY_RIGHT           ,0x00000004 }, // Found @0xffe84ecc, levent 0x07
68//    { 2, KEY_ZOOM_OUT        ,0x00000040 }, // Found @0xffe84ef0, levent 0x03
69//    { 2, KEY_ZOOM_IN         ,0x00000080 }, // Found @0xffe84efc, levent 0x02
70//    { 2, KEY_SET             ,0x00000100 }, // Found @0xffe84f08, levent 0x08
71//    { 2, KEY_UP              ,0x00100000 }, // Found @0xffe84f44, levent 0x04
72//    { 2, KEY_DOWN            ,0x00200000 }, // Found @0xffe84f50, levent 0x05
73//    { 2, KEY_LEFT            ,0x00400000 }, // Found @0xffe84f5c, levent 0x06
74//    { 2, KEY_MENU            ,0x01000000 }, // Found @0xffe84f74, levent 0x09
75//    { 2, KEY_SHOOT_FULL      ,0x00000030 }, // Found @0xffe84ee4, levent 0x01
76//    { 2, KEY_SHOOT_FULL_ONLY ,0x00000020 }, // Found @0xffe84ee4, levent 0x01
77//    { 2, KEY_SHOOT_HALF      ,0x00000010 }, // Found @0xffe84ed8, levent 0x00
[1376]78//    { 0, 0, 0 }
79//};
80
81// Values below go in 'platform_camera.h':
82//#define CAM_DRYOS         1
83//#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
84//#define CAM_RAW_ROWPIX    3720 // Found @0xffcea468
[1436]85//#define CAM_RAW_ROWS      2772 // Found @0xffcea474
[1376]86//#undef  CAM_UNCACHED_BIT
87//#define CAM_UNCACHED_BIT  0x10000000 // Found @0xffc2931c
88
89// Stubs below matched 100%.
90//    Name                                     Address                Comp to stubs_entry_2.S
91NSTUB(AllocateMemory                          ,0xffdfd168) //101
92NSTUB(AllocateUncacheableMemory               ,0xffc292d8) //112
93NSTUB(Close                                   ,0xffc26108) //101
94NSTUB(CreateTask                              ,0xffc0f1a8) //101
95NSTUB(DebugAssert                             ,0xffc0f680) //111
96NSTUB(DeleteFile_Fut                          ,0xffc25a80) //112
97//NSTUB(DoAFLock                              ,0xffc27554) //102            == 0xffc27554
98//NSTUB(EnterToCompensationEVF                ,0xffc27604) //104            == 0xffc27604
99NSTUB(ExecuteEventProcedure                   ,0xffc65820) //  1
100//NSTUB(ExitFromCompensationEVF               ,0xffc27648) //104            == 0xffc27648
101NSTUB(ExitTask                                ,0xffc0f438) //101
102//NSTUB(ExpCtrlTool_StartContiAE              ,0xffc34ce4) //104            == 0xffc34ce4
103//NSTUB(ExpCtrlTool_StopContiAE               ,0xffc34dbc) //104            == 0xffc34dbc
104NSTUB(Fclose_Fut                              ,0xffc25bfc) //101
105NSTUB(Feof_Fut                                ,0xffc25de8) //  1
106NSTUB(Fflush_Fut                              ,0xffc25e24) //  1
107NSTUB(Fgets_Fut                               ,0xffc25d50) //  1
108NSTUB(Fopen_Fut                               ,0xffc25bbc) //101
109NSTUB(Fread_Fut                               ,0xffc25ca8) //101
110NSTUB(FreeMemory                              ,0xffdfd160) //101
111NSTUB(FreeUncacheableMemory                   ,0xffc29318) //112
112NSTUB(Fseek_Fut                               ,0xffc25d9c) //101
113NSTUB(Fwrite_Fut                              ,0xffc25cfc) //101
114//NSTUB(GetBatteryTemperature                 ,0xffc4561c) //102            == 0xffc4561c
115//NSTUB(GetCCDTemperature                     ,0xffc455a8) //102            == 0xffc455a8
116NSTUB(GetCurrentAvValue                       ,0xffd08810) //102
117NSTUB(GetDrive_ClusterSize                    ,0xffc512c0) //  4
118NSTUB(GetDrive_TotalClusters                  ,0xffc512f4) //  3
119NSTUB(GetFocusLensSubjectDistance             ,0xffd07b08) //102
120NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xffd07f60) //  3
121//NSTUB(GetImageFolder                        ,0xffcf1428) //106            == 0xffcf1428
122NSTUB(GetKbdState                             ,0xffc435cc) //109
123NSTUB(GetMemInfo                              ,0xffc0a7f8) //  3
124//NSTUB(GetOpticalTemperature                 ,0xffc45694) //102            == 0xffc45694
125NSTUB(GetParameterData                        ,0xffd2f1b0) //101
126NSTUB(GetPropertyCase                         ,0xffc6952c) //102
127NSTUB(GetSystemTime                           ,0xffdfd1c0) //101
128NSTUB(GetZoomLensCurrentPoint                 ,0xffd09cd0) //102
129//NSTUB(GetZoomLensCurrentPosition            ,0xffdf520c) //102            == 0xffdf520c
130NSTUB(GiveSemaphore                           ,0xffc0f104) //112
131NSTUB(IsStrobeChargeCompleted                 ,0xffca7260) //102
132//NSTUB(LEDDrive                              ,0xffc42bc4) //103            == 0xffc42bc4
133NSTUB(LocalTime                               ,0xffc63530) //  1
134NSTUB(LockMainPower                           ,0xffc6ce40) //103
135//NSTUB(Lseek                                 ,0xffc26224) //101            == 0xffc26224
136NSTUB(MakeDirectory_Fut                       ,0xffc25af4) //  1
137NSTUB(MoveFocusLensToDistance                 ,0xffe53454) //102
138NSTUB(MoveIrisWithAv                          ,0xffdfa8b0) //102
139NSTUB(MoveZoomLensWithPoint                   ,0xffdfae40) //102
140NSTUB(NewTaskShell                            ,0xffc68f38) //103
141//NSTUB(Open                                  ,0xffc2609c) //101            == 0xffc2609c
142NSTUB(PB2Rec                                  ,0xffc6fa94) //104
143NSTUB(PT_MoveDigitalZoomToWide                ,0xffc57170) //102
144NSTUB(PT_MoveOpticalZoomAt                    ,0xffc57148) //102
145//NSTUB(PT_PlaySound                          ,0xffc5f3b0) //  7            == 0xffc5f3b0
146NSTUB(PostLogicalEventForNotPowerType         ,0xffc6c670) //103
147NSTUB(PostLogicalEventToUI                    ,0xffc6c6bc) //103
148//NSTUB(PutInNdFilter                         ,0xffdfaca4) //102            == 0xffdfaca4
149//NSTUB(PutOutNdFilter                        ,0xffdfacc8) //102            == 0xffdfacc8
150NSTUB(Read                                    ,0xffc0b308) //101
151//NSTUB(ReadFastDir                           ,0xffdebbf4) //  4            == 0xffdebbf4
152NSTUB(Rec2PB                                  ,0xffc6fad4) //104
153//NSTUB(RefreshPhysicalScreen                 ,0xffd7b34c) //104            == 0xffd7b34c
154//NSTUB(Remove                                ,0xffc2613c) //  4            == 0xffc2613c
155//NSTUB(RenameFile_Fut                        ,0xffc259ec) //  4            == 0xffc259ec
156NSTUB(Restart                                 ,0xffc2aab0) //106
157NSTUB(ScreenLock                              ,0xffd7c4f8) //  3
158NSTUB(ScreenUnlock                            ,0xffd7c53c) //  7
159//NSTUB(SetAE_ShutterSpeed                    ,0xffe55be4) //102            == 0xffe55be4
160NSTUB(SetAutoShutdownTime                     ,0xffc6ceb4) //103
161NSTUB(SetCurrentCaptureModeType               ,0xffc731ec) //101
162//NSTUB(SetFileTimeStamp                      ,0xffc263a4) //  4            == 0xffc263a4
163NSTUB(SetLogicalEventActive                   ,0xffc6cbb8) //101
164NSTUB(SetParameterData                        ,0xffd2f120) //101
165NSTUB(SetPropertyCase                         ,0xffc693fc) //102
166NSTUB(SleepTask                               ,0xffc2915c) //101
167NSTUB(TakeSemaphore                           ,0xffc0f034) //101
168//NSTUB(TurnOffBackLight                      ,0xffc77f4c) //104            == 0xffc77f4c
169//NSTUB(TurnOnBackLight                       ,0xffc77f34) //104            == 0xffc77f34
170//NSTUB(UIFS_WriteFirmInfoToFile              ,0xffd1f924) //101            == 0xffd1f924
171//NSTUB(UnlockAF                              ,0xffc2758c) //102            == 0xffc2758c
172NSTUB(UnlockMainPower                         ,0xffc6cd94) //103
173//NSTUB(UnsetZoomForMovie                     ,0xffd3589c) //104            == 0xffd3589c
[1424]174//NSTUB(UpdateMBROnFlash                      ,0xffc51140) //105            == 0xffc51140
[1376]175NSTUB(VbattGet                                ,0xffc22be4) //103
176NSTUB(Write                                   ,0xffc26198) //101
177//NSTUB(WriteSDCard                           ,0xffcfcb1c) //108            == 0xffcfcb1c
178NSTUB(_log                                    ,0xffe82328) //111
179NSTUB(_log10                                  ,0xffe8126c) //112
180NSTUB(_pow                                    ,0xffe813dc) //114
181NSTUB(_sqrt                                   ,0xffe83690) //  1
182NSTUB(add_ptp_handler                         ,0xffdbeb54) //  3
183//NSTUB(apex2us                               ,0xffd7d848) //  4            == 0xffd7d848
184NSTUB(close                                   ,0xffc0b120) //  1
185//NSTUB(closedir                              ,0xffdeba50) //  4            == 0xffdeba50
186NSTUB(err_init_task                           ,0xffc05f50) //  4
187NSTUB(exmem_alloc                             ,0xffc641d0) //103
188NSTUB(free                                    ,0xffc04160) //112
189NSTUB(kbd_p1_f                                ,0xffc23ba4) //109
190NSTUB(kbd_p1_f_cont                           ,0xffc23bb0) //109
191NSTUB(kbd_p2_f                                ,0xffc2345c) //109
192//NSTUB(kbd_read_keys                         ,0xffc23b2c) //109            == 0xffc23b2c
193//NSTUB(kbd_read_keys_r2                      ,0xffc42fb0) //109            == 0xffc42fb0
194//NSTUB(lseek                                 ,0xffc26224) //101            == 0xffc26224
195NSTUB(malloc                                  ,0xffc04104) //112
196NSTUB(memcmp                                  ,0xffc11318) //101
197NSTUB(memcpy                                  ,0xffc2e860) //101
198NSTUB(memset                                  ,0xffd7c880) //101
199NSTUB(mkdir                                   ,0xffc265a4) //  4
200NSTUB(mktime_ext                              ,0xffc7cd6c) //  1
201NSTUB(open                                    ,0xffc0b070) //  1
202NSTUB(opendir                                 ,0xffdebaa0) //  4
203//NSTUB(openfastdir                           ,0xffdebaa0) //  4            == 0xffdebaa0
204//NSTUB(qsort                                 ,0xffe3c190) //  4            == 0xffe3c190
205NSTUB(rand                                    ,0xffc11420) //  1
206NSTUB(read                                    ,0xffc0b308) //101
207//NSTUB(readfastdir                           ,0xffdebbf4) //  4            == 0xffdebbf4
208NSTUB(reboot_fw_update                        ,0xffded468) //  1
209//NSTUB(rename                                ,0xffc259ec) //  4            == 0xffc259ec
210NSTUB(set_control_event                       ,0xffc6c8d8) //111
211NSTUB(srand                                   ,0xffc11414) //  1
212NSTUB(stat                                    ,0xffc2626c) //  3
213//NSTUB(strcat                                ,0xffc7c528) //  1            == 0xffc7c528
214NSTUB(strchr                                  ,0xffc03fe8) //  1
215NSTUB(strcmp                                  ,0xffc112d4) //101
216NSTUB(strcpy                                  ,0xffc112bc) //101
217NSTUB(strftime                                ,0xffc7c774) //113
218NSTUB(strlen                                  ,0xffc04034) //101
219NSTUB(strncmp                                 ,0xffc03f9c) //  1
220NSTUB(strncpy                                 ,0xffc03f60) //  1
221//NSTUB(strrchr                               ,0xffc0400c) //  1            == 0xffc0400c
222NSTUB(strtol                                  ,0xffc2eb40) //101
223NSTUB(strtolx                                 ,0xffc2e944) //109
224  DEF(task_CaptSeq                            ,0xffc59224) //107
225  DEF(task_ExpDrv                             ,0xffc91604) //110
226  DEF(task_InitFileModules                    ,0xffc7055c) //107
227  DEF(task_MovieRecord                        ,0xffd0c97c) //107
228  DEF(task_PhySw                              ,0xffc2378c) //107
229NSTUB(time                                    ,0xffc633e4) //  1
230NSTUB(vsprintf                                ,0xffc11280) //  4
231//NSTUB(write                                 ,0xffc26198) //101            == 0xffc26198
Note: See TracBrowser for help on using the repository browser.