source: branches/release-1_0/platform/s95/sub/100k/stubs_entry.S @ 1611

Revision 1611, 16.7 KB checked in by philmoz, 2 years ago (diff)

Fix for directory delete problem on cameras with DryOS version R39 or later.

  • 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 R45 (DRYOS version 2.3, release #0045)
6//   Firmware Ver GM1.00K
7//   Canon PowerShot S95
8
9// Values for makefile.inc
10//   PLATFORMID = 12818 (0x3212) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x07ffffff
12//   KEYSYS = d4b                // Found @ 0xffff3624
13//   NEED_ENCODED_DISKBOOT = 5   // Found @ 0xffff3634
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                           ,0xff865728) //  2 60%    *** != 0x00000000
18// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0x00000000
19
20// Check of modemap from 'platform/CAMERA/shooting.c':
21// Firmware modemap table found @ff8a0c14 -> ff89d474 -> ff9ba948 -> ffb0f358 -> ffc722d4
22// No problems found with modemap table.
23
24// Values below can be overridden in 'stubs_min.S':
25//DEF(physw_status                            ,0x00034cb4) // Found @0xff83498c,          stubs_min = 0x00034cb4 (0x34CB4)
26//DEF(physw_run                               ,0x00001c3c) // Found @0xff834580,          stubs_min = 0x00001c3c (0x1C30+0x0C)
27//DEF(levent_table                            ,0xffbf5e24) // Found @0xffbf5e24,          stubs_min = 0xffbf5e24 (0xFFBF5E24)
28//DEF(FlashParamsTable                        ,0xffc724dc) // Found @0xffc724dc,          stubs_min = 0xffc724dc (0xffc724dc)
29//DEF(movie_status                            ,0x0000716c) // Found @0xff986120,          stubs_min = 0x0000716c (0x7128+0x44)
30DEF(full_screen_refresh                     ,0x0000a0d4) // Found @0xffa47620
31//DEF(canon_menu_active                       ,0x00003250) // Found @0xff896fc0,          stubs_min = 0x00003250 (0x324c+4)
32//DEF(canon_shoot_menu_active                 ,0x00008759) // Found @0xff9d7e04,          stubs_min = 0x00008759 (0x8758+1)
33//DEF(playrec_mode                            ,0x00002f78) // Found @0xff88910c,          stubs_min = 0x00002f78 (0x2f74+0x4)
34//DEF(zoom_status                             ,0x0000835c) // Found @0xff9c3390,          stubs_min = 0x0000835c (0x835C)
35//DEF(some_flag_for_af_scan                   ,0x00007534) // Found @0xff9894c0,          stubs_min = 0x00007534 (0x7534)
36// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
37// each entry contains 3 int value(s), the first is the zoom focus length.
38// there are 10 entries in the table - set NUM_FL to 10
39DEF(focus_len_table                         ,0xfffe2d2c) // Found @0xfffe2d2c
40//DEF(zoom_busy                               ,0x00007084) // Found @0xff9809c4,          stubs_min = 0x00007084 (0x7070+0x14)
41//DEF(focus_busy                              ,0x00006f30) // Found @0xff97bec4,          stubs_min = 0x00006f30 (0x6f28+8)
42//DEF(recreview_hold                          ,0x00003e14) // Found @0xff8a8648, ** != ** stubs_min = 0x000082e0 (0x81f8+0xE8)
43
44// Values below go in 'lib.c':
45//void *vid_get_bitmap_fb()        { return (void*)0x40471000; } // Found @0xff85e704
46//void *vid_get_viewport_fb()      { return (void*)0x40587700; } // Found @0xffb61b9c
47//char *camera_jpeg_count_str()    { return (char*)0x000bbc9c; } // Found @0xffa3acd0
48//long hook_raw_size()             { return 0x00ee9200; }        // Found @0xffb6505c
49//int get_flash_params_count(void) { return 0x9a; }              // Found @0xff9bbee0
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 @0xffba5414, levent 0x90a
53//#define SD_READONLY_IDX     2
54//#define USB_MASK            0x04000000 // Found @0xffba543c, 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//    { 1, KEY_ZOOM_IN         ,0x00000010 }, // Found @0xffba537c, levent 0x02
60//    { 1, KEY_ZOOM_OUT        ,0x00000020 }, // Found @0xffba5384, levent 0x03
61//    { 1, KEY_LEFT            ,0x00000100 }, // Found @0xffba539c, levent 0x06
62//    { 1, KEY_RIGHT           ,0x00000200 }, // Found @0xffba53a4, levent 0x07
63//    { 1, KEY_DOWN            ,0x00000400 }, // Found @0xffba53ac, levent 0x05
64//    { 1, KEY_DISPLAY         ,0x00001000 }, // Found @0xffba53bc, levent 0x0a
65//    { 1, KEY_MENU            ,0x00002000 }, // Found @0xffba53c4, levent 0x09
66//    { 1, KEY_UP              ,0x00004000 }, // Found @0xffba53cc, levent 0x04
67//    { 1, KEY_SET             ,0x00008000 }, // Found @0xffba53d4, levent 0x08
68//    { 2, KEY_SHOOT_FULL      ,0x00000300 }, // Found @0xffba53e4, levent 0x01
69//    { 2, KEY_SHOOT_FULL_ONLY ,0x00000200 }, // Found @0xffba53e4, levent 0x01
70//    { 2, KEY_SHOOT_HALF      ,0x00000100 }, // Found @0xffba53dc, levent 0x00
71//    { 0, 0, 0 }
72//};
73
74// Values below go in 'platform_camera.h':
75//#define CAM_DRYOS         1
76//#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
77//#define CAM_RAW_ROWPIX    3744 // Found @0xff956f20
78//#define CAM_RAW_ROWS      2784 // Found @0xff956f28
79//#undef  CAM_UNCACHED_BIT
80//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff83ae0c
81
82// Misc stuff
83DEF(ctypes, 0xffba3b66)
84
85// Stubs below matched 100%.
86//    Name                                     Address                Comp to stubs_entry_2.S
87NSTUB(AllocateMemory                          ,0xffafaeb4) //101
88NSTUB(AllocateUncacheableMemory               ,0xff83adc8) //112
89//NSTUB(Close                                 ,0xff837030) //101            == 0xff837030
90NSTUB(CreateTask                              ,0xff81e8a0) //101
91NSTUB(DebugAssert                             ,0xff81eb78) //111
92NSTUB(DeleteDirectory_Fut                     ,0xff836a8c) //  1
93NSTUB(DeleteFile_Fut                          ,0xff8369a8) //112
94//NSTUB(DoAFLock                              ,0xff8388a0) //102            == 0xff8388a0
95//NSTUB(EnterToCompensationEVF                ,0xff838b40) //104            == 0xff838b40
96NSTUB(ExecuteEventProcedure                   ,0xff89270c) //  1
97//NSTUB(ExitFromCompensationEVF               ,0xff838be4) //104            == 0xff838be4
98//NSTUB(ExitTask                              ,0xff81eb30) //101            == 0xff81eb30
99//NSTUB(ExpCtrlTool_StartContiAE              ,0xff84734c) //104            == 0xff84734c
100NSTUB(ExpCtrlTool_StopContiAE                 ,0xff8474e4) //104
101NSTUB(Fclose_Fut                              ,0xff836b24) //101
102NSTUB(Feof_Fut                                ,0xff836d10) //  1
103NSTUB(Fflush_Fut                              ,0xff836d4c) //  1
104NSTUB(Fgets_Fut                               ,0xff836c78) //  1
105NSTUB(Fopen_Fut                               ,0xff836ae4) //101
106NSTUB(Fread_Fut                               ,0xff836bd0) //101
107NSTUB(FreeMemory                              ,0xffafaeac) //101
108//NSTUB(FreeUncacheableMemory                 ,0xff83ae08) //112            == 0xff83ae08
109NSTUB(Fseek_Fut                               ,0xff836cc4) //101
110NSTUB(Fwrite_Fut                              ,0xff836c24) //101
111//NSTUB(GetBatteryTemperature                 ,0xff869038) //102            == 0xff869038
112//NSTUB(GetCCDTemperature                     ,0xff868fc4) //102            == 0xff868fc4
113//NSTUB(GetCurrentAvValue                     ,0xff97e4b4) //102            == 0xff97e4b4
114//NSTUB(GetDrive_ClusterSize                  ,0xff8769c8) //  4            == 0xff8769c8
115//NSTUB(GetDrive_FreeClusters                 ,0xff876a28) //  4            == 0xff876a28
116//NSTUB(GetDrive_TotalClusters                ,0xff8769fc) //  3            == 0xff8769fc
117//NSTUB(GetFocusLensSubjectDistance           ,0xff97cb44) //102            == 0xff97cb44
118//NSTUB(GetFocusLensSubjectDistanceFromLens   ,0xff97cf90) //  3            == 0xff97cf90
119//NSTUB(GetImageFolder                        ,0xff95e84c) //106            == 0xff95e84c
120//NSTUB(GetKbdState                           ,0xff8655f0) //109            == 0xff8655f0
121//NSTUB(GetMemInfo                            ,0xff81a264) //  3            == 0xff81a264
122//NSTUB(GetOpticalTemperature                 ,0xff8690ac) //102            == 0xff8690ac
123//NSTUB(GetParameterData                      ,0xff9bbea4) //101            == 0xff9bbea4
124//NSTUB(GetPropertyCase                       ,0xff896414) //102            == 0xff896414
125//NSTUB(GetSystemTime                         ,0xffafaf0c) //101            == 0xffafaf0c
126//NSTUB(GetZoomLensCurrentPoint               ,0xff980d38) //102            == 0xff980d38
127//NSTUB(GetZoomLensCurrentPosition            ,0xffae90f4) //102            == 0xffae90f4
128NSTUB(GiveSemaphore                           ,0xff83a7e4) //112
129//NSTUB(IsStrobeChargeCompleted               ,0xff8eae58) //102            == 0xff8eae58
130//NSTUB(LEDDrive                              ,0xff86491c) //103            == 0xff86491c
131NSTUB(LocalTime                               ,0xff88fff4) //  1
132//NSTUB(LockMainPower                         ,0xff89d078) //103            == 0xff89d078
133//NSTUB(Lseek                                 ,0xff83714c) //101            == 0xff83714c
134//NSTUB(MakeDirectory_Fut                     ,0xff836a1c) //  1            == 0xff836a1c
135//NSTUB(MoveFocusLensToDistance               ,0xffb5e5c4) //102            == 0xffb5e5c4
136NSTUB(MoveIrisWithAv                          ,0xffaf7440) //102
137//NSTUB(MoveZoomLensWithPoint                 ,0xffaf7b2c) //102            == 0xffaf7b2c
138//NSTUB(NewTaskShell                          ,0xff895e30) //103            == 0xff895e30
139//NSTUB(Open                                  ,0xff836fc4) //101            == 0xff836fc4
140//NSTUB(PB2Rec                                ,0xff8a0008) //104            == 0xff8a0008
141NSTUB(PT_MoveDigitalZoomToWide                ,0xff8806a4) //102
142NSTUB(PT_MoveOpticalZoomAt                    ,0xff88067c) //102
143//NSTUB(PT_PlaySound                          ,0xff88b0a8) //  4            == 0xff88b0a8
144//NSTUB(PostLogicalEventForNotPowerType       ,0xff89aa88) //103            == 0xff89aa88
145//NSTUB(PostLogicalEventToUI                  ,0xff89aad4) //103            == 0xff89aad4
146NSTUB(PutInNdFilter                           ,0xffb5c2e4) //102
147NSTUB(PutOutNdFilter                          ,0xffb5c31c) //102
148NSTUB(Read                                    ,0xff81ad74) //101
149//NSTUB(ReadFastDir                           ,0xffad413c) //  4            == 0xffad413c
150//NSTUB(Rec2PB                                ,0xff8a0048) //104            == 0xff8a0048
151//NSTUB(RefreshPhysicalScreen                 ,0xff8b6c8c) //104            == 0xff8b6c8c
152//NSTUB(Remove                                ,0xff837064) //  4            == 0xff837064
153//NSTUB(RenameFile_Fut                        ,0xff836914) //  4            == 0xff836914
154//NSTUB(Restart                               ,0xff83c5b8) //106            == 0xff83c5b8
155//NSTUB(ScreenLock                            ,0xff8b7e50) //  4            == 0xff8b7e50
156//NSTUB(ScreenUnlock                          ,0xff8b7eb4) //  9            == 0xff8b7eb4
157NSTUB(SetAE_ShutterSpeed                      ,0xffb60d14) //102
158//NSTUB(SetAutoShutdownTime                   ,0xff89d0ec) //103            == 0xff89d0ec
159//NSTUB(SetCurrentCaptureModeType             ,0xff8a5444) //101            == 0xff8a5444
160//NSTUB(SetFileTimeStamp                      ,0xff8372cc) //  4            == 0xff8372cc
161//NSTUB(SetLogicalEventActive                 ,0xff89cdb4) //101            == 0xff89cdb4
162//NSTUB(SetParameterData                      ,0xff9bbd7c) //101            == 0xff9bbd7c
163//NSTUB(SetPropertyCase                       ,0xff8962ec) //102            == 0xff8962ec
164//NSTUB(SetScriptMode                         ,0xff89ce04) //101            == 0xff89ce04
165//NSTUB(SleepTask                             ,0xff83aa4c) //101            == 0xff83aa4c
166//NSTUB(TakeSemaphore                         ,0xff83a714) //101            == 0xff83a714
167//NSTUB(TurnOffBackLight                      ,0xff8af278) //104            == 0xff8af278
168//NSTUB(TurnOnBackLight                       ,0xff8af260) //104            == 0xff8af260
169//NSTUB(UIFS_WriteFirmInfoToFile              ,0xff9a7d6c) //101            == 0xff9a7d6c
170//NSTUB(UnlockAF                              ,0xff8388d8) //102            == 0xff8388d8
171//NSTUB(UnlockMainPower                       ,0xff89cfcc) //103            == 0xff89cfcc
172//NSTUB(UnsetZoomForMovie                     ,0xff8ab114) //104            == 0xff8ab114
173NSTUB(UpdateMBROnFlash                        ,0xff876848) //105
174//NSTUB(VbattGet                              ,0xff833188) //103            == 0xff833188
175NSTUB(Write                                   ,0xff8370c0) //101
176//NSTUB(WriteSDCard                           ,0xff96dd64) //108            == 0xff96dd64
177NSTUB(_log                                    ,0xffba0c74) //111
178NSTUB(_log10                                  ,0xffb9f900) //112
179NSTUB(_pow                                    ,0xffb9fa70) //114
180NSTUB(_sqrt                                   ,0xffba287c) //  1
181//NSTUB(add_ptp_handler                       ,0xffa8e800) //  3            == 0xffa8e800
182//NSTUB(apex2us                               ,0xffa50d94) //  4            == 0xffa50d94
183NSTUB(close                                   ,0xff81ab8c) //  1
184//NSTUB(closedir                              ,0xffad3f98) //  4            == 0xffad3f98
185NSTUB(err_init_task                           ,0xff815fd4) //  4
186NSTUB(exmem_alloc                             ,0xff890f40) //103
187//NSTUB(free                                  ,0xff814244) //112            == 0xff814244
188//NSTUB(kbd_p1_f                              ,0xff834a04) //109            == 0xff834a04
189//NSTUB(kbd_p1_f_cont                         ,0xff834a10) //109            == 0xff834a10
190//NSTUB(kbd_p2_f                              ,0xff83424c) //109            == 0xff83424c
191//NSTUB(kbd_read_keys                         ,0xff83498c) //109            == 0xff83498c
192//NSTUB(kbd_read_keys_r2                      ,0xff864ee8) //109            == 0xff864ee8
193//NSTUB(lseek                                 ,0xff83714c) //101            == 0xff83714c
194NSTUB(malloc                                  ,0xff8141e8) //112
195NSTUB(memcmp                                  ,0xff8206e0) //101
196NSTUB(memcpy                                  ,0xff840588) //101
197NSTUB(memset                                  ,0xffa4fd7c) //101
198//NSTUB(mkdir                                 ,0xff8374cc) //  4            == 0xff8374cc
199NSTUB(mktime_ext                              ,0xff8b8c58) //  1
200NSTUB(open                                    ,0xff81aadc) //  1
201//NSTUB(opendir                               ,0xffad3fe8) //  4            == 0xffad3fe8
202//NSTUB(openfastdir                           ,0xffad3fe8) //  4            == 0xffad3fe8
203//NSTUB(qsort                                 ,0xffb4c060) //  4            == 0xffb4c060
204//NSTUB(rand                                  ,0xffa4febc) //  4            == 0xffa4febc
205NSTUB(read                                    ,0xff81ad74) //101
206//NSTUB(readfastdir                           ,0xffad413c) //  4            == 0xffad413c
207//NSTUB(reboot_fw_update                      ,0xffad955c) //  4            == 0xffad955c
208//NSTUB(rename                                ,0xff836914) //  4            == 0xff836914
209//NSTUB(set_control_event                     ,0xff89c9a4) //111            == 0xff89c9a4
210//NSTUB(srand                                 ,0xffa4feb0) //  4            == 0xffa4feb0
211NSTUB(stat                                    ,0xff837194) //  3
212//NSTUB(strcat                                ,0xff8b8414) //  1            == 0xff8b8414
213//NSTUB(strchr                                ,0xff8140b4) //  1            == 0xff8140b4
214NSTUB(strcmp                                  ,0xff82069c) //101
215NSTUB(strcpy                                  ,0xff820684) //101
216NSTUB(strftime                                ,0xff8b8660) //113
217//NSTUB(strlen                                ,0xff814100) //101            == 0xff814100
218NSTUB(strncmp                                 ,0xff814068) //  1
219//NSTUB(strncpy                               ,0xff81402c) //  1            == 0xff81402c
220//NSTUB(strrchr                               ,0xff8140d8) //  1            == 0xff8140d8
221//NSTUB(strtol                                ,0xff840868) //101            == 0xff840868
222NSTUB(strtolx                                 ,0xff84066c) //109
223  DEF(task_CaptSeq                            ,0xff88322c) //107
224  DEF(task_ExpDrv                             ,0xff8cf1a8) //110
225  DEF(task_InitFileModules                    ,0xff8a0aa0) //107
226  DEF(task_MovieRecord                        ,0xff98642c) //107
227  DEF(task_PhySw                              ,0xff83457c) //107
228  DEF(task_RotaryEncoder                      ,0xff865894) //107
229//NSTUB(time                                  ,0xff8905d4) //  2            == 0xff8905d4
230NSTUB(vsprintf                                ,0xff820648) //  4
231//NSTUB(write                                 ,0xff8370c0) //101            == 0xff8370c0
Note: See TracBrowser for help on using the repository browser.