source: branches/release-1_0/platform/a2000/sub/100c/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 R31 (DRYOS version 2.3, release #0031)
6//   Firmware Ver GM1.00C
7//   Canon PowerShot A2000 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12689 (0x3191) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12//   KEYSYS = d4                 // Found @ 0xffff1a98
13//   NEED_ENCODED_DISKBOOT = 1   // Found @ 0xffff1aa8
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(ExecuteEventProcedure                 ,0xffc553c4) //  1        *** != 0xffc5543c
18//NSTUB(GetBatteryTemperature                 ,0xffc33504) //102        *** != 0xffc33494
19//NSTUB(Lseek                                 ,0xffc13484) //101        *** != 0xffc1354c
20//NSTUB(Read                                  ,0xffc0a138) //101        *** != 0xffc133ec
21//NSTUB(kbd_pwr_off                           ,0xffc31408) //  2 64%    *** != 0xffc31418
22//NSTUB(kbd_pwr_on                            ,0xffc313c8) //  2 82%        == 0xffc313c8
23//NSTUB(rename                                ,0xffc12b9c) //  1        *** != 0xffc13418
24//NSTUB(write                                 ,0xffc133f0) //101        *** != 0xffc0a198
25
26// Check of modemap from 'platform/CAMERA/shooting.c':
27// Firmware modemap table found @ffc603dc -> ffc5cd98 -> ffd2c470 -> ffdfbf48 -> ffeb9b10
28// No problems found with modemap table.
29
30// Values below can be overridden in 'stubs_min.S':
31//DEF(physw_status                            ,0x0000f418) // Found @0xffc113ec,          stubs_min = 0x0000f418 (0xF418)
32//DEF(physw_run                               ,0x00001be4) // Found @0xffc11064,          stubs_min = 0x00001be4 (0x1BD8+0xC)
33//DEF(levent_table                            ,0xffe9ac78) // Found @0xffe9ac78,          stubs_min = 0xffe9ac78 (0xFFE9AC78)
34//DEF(FlashParamsTable                        ,0xffeb9cdc) // Found @0xffeb9cdc,          stubs_min = 0xffeb9cdc (0xFFEB9CDC)
35//DEF(movie_status                            ,0x00005080) // Found @0xffc47950,          stubs_min = 0x00005080 (0x5048+0x38)
36//DEF(canon_menu_active                       ,0x00005460) // Found @0xffc59b98,          stubs_min = 0x00005460 (0x545C+0x4)
37//DEF(canon_shoot_menu_active                 ,0x00009735) // Found @0xffd3bcf4,          stubs_min = 0x00009735 (0x9734+0x1)
38//DEF(playrec_mode                            ,0x00005208) // Found @0xffc4e8ac,          stubs_min = 0x00005208 (0x5204+0x4)
39//DEF(zoom_status                             ,0x0000c0cc) // Found @0xffdfd75c,          stubs_min = 0x0000c0cc (0xC0CC)
40//DEF(some_flag_for_af_scan                   ,0x000085a0) // Found @0xffd0a758,          stubs_min = 0x000085a0 (0x85A0)
41// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
42// each entry contains 3 int value(s), the first is the zoom focus length.
43// there are 15 entries in the table - set NUM_FL to 15
44DEF(focus_len_table                         ,0xfffe297c) // Found @0xfffe297c
45//DEF(zoom_busy                               ,0x00007ff8) // Found @0xffd0312c,          stubs_min = 0x00007ff8 (0x7FE4+0x14)
46//DEF(focus_busy                              ,0x00007ee4) // Found @0xffcfe824,          stubs_min = 0x00007ee4 (0x7EDC+0x8)
47//DEF(recreview_hold                          ,0x000059c0) // Found @0xffc65674, ** != ** stubs_min = 0x000094c0 (0x9408+0xB8)
48
49// Values below go in 'lib.c':
50//void *vid_get_bitmap_fb()        { return (void*)0x10361000; } // Found @0xffc2cea0
51//void *vid_get_viewport_fb()      { return (void*)0x10659de0; } // Found @0xffe44918
52//char *camera_jpeg_count_str()    { return (char*)0x00045100; } // Found @0xffd71398
53//long hook_raw_size()             { return 0x00ec04f0; }        // Found @0xffe46cbc
54//int get_flash_params_count(void) { return 0x77; }              // Found @0xffd2d52c
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 @0xffe75da0, levent 0x90a
58//#define SD_READONLY_IDX     2
59//#define USB_MASK            0x00040000 // Found @0xffe75dac, 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//    { 1, KEY_SHOOT_FULL      ,0xc0000000 }, // Found @0xffe75cc8, levent 0x01
65//    { 1, KEY_SHOOT_FULL_ONLY ,0x80000000 }, // Found @0xffe75cc8, levent 0x01
66//    { 1, KEY_SHOOT_HALF      ,0x40000000 }, // Found @0xffe75cbc, levent 0x00
67//    { 2, KEY_ZOOM_IN         ,0x00000004 }, // Found @0xffe75cec, levent 0x02
68//    { 2, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffe75cf8, levent 0x03
69//    { 2, KEY_UP              ,0x00000010 }, // Found @0xffe75d04, levent 0x04
70//    { 2, KEY_DOWN            ,0x00000020 }, // Found @0xffe75d10, levent 0x05
71//    { 2, KEY_RIGHT           ,0x00000040 }, // Found @0xffe75d1c, levent 0x07
72//    { 2, KEY_LEFT            ,0x00000080 }, // Found @0xffe75d28, levent 0x06
73//    { 2, KEY_SET             ,0x00000100 }, // Found @0xffe75d34, levent 0x08
74//    { 2, KEY_MENU            ,0x00000200 }, // Found @0xffe75d40, levent 0x09
75//    { 2, KEY_DISPLAY         ,0x00000400 }, // Found @0xffe75d4c, levent 0x0a
76//    { 0, 0, 0 }
77//};
78
79// Values below go in 'platform_camera.h':
80//#define CAM_DRYOS         1
81//#define CAM_RAW_ROWPIX    3720 // Found @0xffe3db80
82//#define CAM_RAW_ROWS      2772 // Found @0xffe3db88
83//#undef  CAM_UNCACHED_BIT
84//#define CAM_UNCACHED_BIT  0x10000000 // Found @0xffc171b8
85
86// Misc stuff
87DEF(ctypes, 0xffe75886)
88
89// Stubs below matched 100%.
90//    Name                                     Address                Comp to stubs_entry_2.S
91//NSTUB(AllocateMemory                        ,0xffdf0a50) //101            == 0xffdf0a50
92NSTUB(AllocateUncacheableMemory               ,0xffc17174) //112
93//NSTUB(Close                                 ,0xffc13344) //101            == 0xffc13344
94//NSTUB(CreateTask                            ,0xffc0b8c0) //101            == 0xffc0b8c0
95NSTUB(DebugAssert                             ,0xffc0bd98) //111
96NSTUB(DeleteDirectory_Fut                     ,0xffc12cd4) //  1
97//NSTUB(DeleteFile_Fut                        ,0xffc12bf0) //112            == 0xffc12bf0
98//NSTUB(DoAFLock                              ,0xffc14d9c) //102            == 0xffc14d9c
99//NSTUB(EnterToCompensationEVF                ,0xffc14fec) //104            == 0xffc14fec
100//NSTUB(ExitFromCompensationEVF               ,0xffc15030) //104            == 0xffc15030
101//NSTUB(ExitTask                              ,0xffc0bb50) //101            == 0xffc0bb50
102NSTUB(ExpCtrlTool_StartContiAE                ,0xffc1fa68) //104
103NSTUB(ExpCtrlTool_StopContiAE                 ,0xffc1fbac) //104
104//NSTUB(Fclose_Fut                            ,0xffc12d6c) //101            == 0xffc12d6c
105//NSTUB(Feof_Fut                              ,0xffc12f58) //  1            == 0xffc12f58
106//NSTUB(Fflush_Fut                            ,0xffc12f94) //  1            == 0xffc12f94
107//NSTUB(Fgets_Fut                             ,0xffc12ec0) //  1            == 0xffc12ec0
108//NSTUB(Fopen_Fut                             ,0xffc12d2c) //101            == 0xffc12d2c
109//NSTUB(Fread_Fut                             ,0xffc12e18) //101            == 0xffc12e18
110//NSTUB(FreeMemory                            ,0xffdf0a48) //101            == 0xffdf0a48
111//NSTUB(FreeUncacheableMemory                 ,0xffc171b4) //112            == 0xffc171b4
112//NSTUB(Fseek_Fut                             ,0xffc12f0c) //101            == 0xffc12f0c
113//NSTUB(Fwrite_Fut                            ,0xffc12e6c) //101            == 0xffc12e6c
114//NSTUB(GetCCDTemperature                     ,0xffc33494) //102            == 0xffc33494
115//NSTUB(GetCurrentAvValue                     ,0xffd0025c) //102            == 0xffd0025c
116//NSTUB(GetDrive_ClusterSize                  ,0xffc3fc24) //  1            == 0xffc3fc24
117//NSTUB(GetDrive_FreeClusters                 ,0xffc3fc8c) //  1            == 0xffc3fc8c
118//NSTUB(GetDrive_TotalClusters                ,0xffc3fc58) //  1            == 0xffc3fc58
119NSTUB(GetFocusLensSubjectDistance             ,0xffcff354) //102
120NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xffcff660) //  3
121NSTUB(GetKbdState                             ,0xffc31394) //109
122NSTUB(GetMemInfo                              ,0xffc03c28) //  1
123//NSTUB(GetOpticalTemperature                 ,0xffc33574) //102            == 0xffc33574
124//NSTUB(GetParameterData                      ,0xffd2d4ec) //101            == 0xffd2d4ec
125//NSTUB(GetPropertyCase                       ,0xffc590ac) //102            == 0xffc590ac
126//NSTUB(GetSystemTime                         ,0xffdf0aa8) //101            == 0xffdf0aa8
127//NSTUB(GetZoomLensCurrentPoint               ,0xffd0349c) //102            == 0xffd0349c
128//NSTUB(GetZoomLensCurrentPosition            ,0xffdea9dc) //102            == 0xffdea9dc
129//NSTUB(GiveSemaphore                         ,0xffc0b81c) //112            == 0xffc0b81c
130//NSTUB(IsStrobeChargeCompleted               ,0xffc8aef4) //102            == 0xffc8aef4
131NSTUB(LEDDrive                                ,0xffc30a70) //103
132//NSTUB(LocalTime                             ,0xffc533c8) //  1            == 0xffc533c8
133//NSTUB(LockMainPower                         ,0xffc5c9b0) //103            == 0xffc5c9b0
134//NSTUB(MakeDirectory_Fut                     ,0xffc12c64) //  1            == 0xffc12c64
135//NSTUB(MoveFocusLensToDistance               ,0xffe4135c) //102            == 0xffe4135c
136NSTUB(MoveIrisWithAv                          ,0xffded27c) //102
137//NSTUB(MoveZoomLensWithPoint                 ,0xffded808) //102            == 0xffded808
138//NSTUB(NewTaskShell                          ,0xffc58b54) //103            == 0xffc58b54
139//NSTUB(Open                                  ,0xffc1331c) //101            == 0xffc1331c
140//NSTUB(PB2Rec                                ,0xffc5e3ec) //104            == 0xffc5e3ec
141NSTUB(PT_MoveDigitalZoomToWide                ,0xffc48cec) //102
142NSTUB(PT_MoveOpticalZoomAt                    ,0xffc48cc4) //102
143NSTUB(PT_PlaySound                            ,0xffc488d4) //102
144NSTUB(PostLogicalEventForNotPowerType         ,0xffc5bff0) //103
145NSTUB(PostLogicalEventToUI                    ,0xffc5c03c) //103
146//NSTUB(PutInNdFilter                         ,0xffded66c) //102            == 0xffded66c
147//NSTUB(PutOutNdFilter                        ,0xffded690) //102            == 0xffded690
148//NSTUB(ReadFastDir                           ,0xffddce7c) //  1            == 0xffddce7c
149//NSTUB(Rec2PB                                ,0xffc5e440) //104            == 0xffc5e440
150//NSTUB(RefreshPhysicalScreen                 ,0xffd7af58) //104            == 0xffd7af58
151//NSTUB(Remove                                ,0xffc1338c) //  1            == 0xffc1338c
152//NSTUB(RenameFile_Fut                        ,0xffc12b9c) //  1            == 0xffc12b9c
153//NSTUB(Restart                               ,0xffc189ec) //106            == 0xffc189ec
154NSTUB(SetAE_ShutterSpeed                      ,0xffe43b28) //102
155//NSTUB(SetAutoShutdownTime                   ,0xffc5ca24) //103            == 0xffc5ca24
156NSTUB(SetCurrentCaptureModeType               ,0xffc6301c) //101
157//NSTUB(SetFileTimeStamp                      ,0xffc13620) //  1            == 0xffc13620
158NSTUB(SetLogicalEventActive                   ,0xffc5c72c) //101
159//NSTUB(SetParameterData                      ,0xffd2d45c) //101            == 0xffd2d45c
160NSTUB(SetPropertyCase                         ,0xffc58fa4) //102
161//NSTUB(SetScriptMode                         ,0xffc5c77c) //101            == 0xffc5c77c
162//NSTUB(SleepTask                             ,0xffc16ff8) //101            == 0xffc16ff8
163//NSTUB(TakeSemaphore                         ,0xffc0b74c) //101            == 0xffc0b74c
164//NSTUB(TurnOffBackLight                      ,0xffc67b10) //104            == 0xffc67b10
165//NSTUB(TurnOnBackLight                       ,0xffc67af8) //104            == 0xffc67af8
166//NSTUB(UIFS_WriteFirmInfoToFile              ,0xffd20598) //103            == 0xffd20598
167//NSTUB(UnlockAF                              ,0xffc14dd4) //102            == 0xffc14dd4
168//NSTUB(UnlockMainPower                       ,0xffc5c904) //103            == 0xffc5c904
169//NSTUB(UnsetZoomForMovie                     ,0xffd32ad8) //104            == 0xffd32ad8
170//NSTUB(UpdateMBROnFlash                      ,0xffc3fa64) //105            == 0xffc3fa64
171NSTUB(VbattGet                                ,0xffc10314) //103
172//NSTUB(Write                                 ,0xffc133f0) //101            == 0xffc133f0
173NSTUB(WriteSDCard                             ,0xffcf4aa8) //108
174//NSTUB(_log                                  ,0xffe7368c) //111            == 0xffe7368c
175//NSTUB(_log10                                ,0xffe725d0) //112            == 0xffe725d0
176//NSTUB(_pow                                  ,0xffe72740) //114            == 0xffe72740
177//NSTUB(_sqrt                                 ,0xffe749f4) //  1            == 0xffe749f4
178NSTUB(add_ptp_handler                         ,0xffdac444) //  1
179NSTUB(apex2us                                 ,0xffd7bf74) //  4
180//NSTUB(close                                 ,0xffc09f50) //  1            == 0xffc09f50
181//NSTUB(closedir                              ,0xffddcf4c) //  1            == 0xffddcf4c
182NSTUB(err_init_task                           ,0xffc04e84) //  4
183NSTUB(exmem_alloc                             ,0xffc53bc8) //103
184//NSTUB(free                                  ,0xffc03a80) //112            == 0xffc03a80
185//NSTUB(kbd_p1_f                              ,0xffc114f0) //109            == 0xffc114f0
186//NSTUB(kbd_p1_f_cont                         ,0xffc114fc) //109            == 0xffc114fc
187//NSTUB(kbd_p2_f                              ,0xffc10d04) //109            == 0xffc10d04
188//NSTUB(kbd_read_keys                         ,0xffc113ec) //109            == 0xffc113ec
189//NSTUB(kbd_read_keys_r2                      ,0xffc30e84) //109            == 0xffc30e84
190//NSTUB(lseek                                 ,0xffc13484) //101            == 0xffc13484
191//NSTUB(malloc                                ,0xffc039ac) //112            == 0xffc039ac
192//NSTUB(memcmp                                ,0xffc0d8b4) //101            == 0xffc0d8b4
193//NSTUB(memcpy                                ,0xffc6cac8) //101            == 0xffc6cac8
194//NSTUB(memset                                ,0xffd7b2ac) //101            == 0xffd7b2ac
195//NSTUB(mkdir                                 ,0xffc136e8) //  1            == 0xffc136e8
196// ALT: NSTUB(mkdir, 0xffc13788) // 1 32/0
197//NSTUB(mktime_ext                            ,0xffc6d334) //  1            == 0xffc6d334
198//NSTUB(open                                  ,0xffc09ea0) //  1            == 0xffc09ea0
199//NSTUB(opendir                               ,0xffddcde8) //  1            == 0xffddcde8
200//NSTUB(openfastdir                           ,0xffddcde8) //  1            == 0xffddcde8
201//NSTUB(qsort                                 ,0xffe2cb98) //  1            == 0xffe2cb98
202//NSTUB(rand                                  ,0xffc0d9bc) //  1            == 0xffc0d9bc
203//NSTUB(read                                  ,0xffc0a138) //101            == 0xffc0a138
204//NSTUB(readfastdir                           ,0xffddce7c) //  1            == 0xffddce7c
205NSTUB(reboot_fw_update                        ,0xffde1750) //  5
206NSTUB(set_control_event                       ,0xffc5c478) //  1
207//NSTUB(srand                                 ,0xffc0d9b0) //  1            == 0xffc0d9b0
208//NSTUB(stat                                  ,0xffc13550) //  1            == 0xffc13550
209//NSTUB(strcat                                ,0xffc6c8dc) //  1            == 0xffc6c8dc
210//NSTUB(strchr                                ,0xffc6c964) //  1            == 0xffc6c964
211//NSTUB(strcmp                                ,0xffc0d84c) //101            == 0xffc0d84c
212//NSTUB(strcpy                                ,0xffc0d834) //101            == 0xffc0d834
213//NSTUB(strftime                              ,0xffc6cd3c) //  1            == 0xffc6cd3c
214//NSTUB(strlen                                ,0xffc0d890) //101            == 0xffc0d890
215//NSTUB(strncmp                               ,0xffc6c918) //  1            == 0xffc6c918
216//NSTUB(strncpy                               ,0xffc1cb54) //  1            == 0xffc1cb54
217//NSTUB(strrchr                               ,0xffd7b284) //  1            == 0xffd7b284
218//NSTUB(strtol                                ,0xffc1cd8c) //101            == 0xffc1cd8c
219NSTUB(strtolx                                 ,0xffc1cb90) //109
220  DEF(task_CaptSeq                            ,0xffc4ae84) //107
221  DEF(task_ExpDrv                             ,0xffc83eb0) //110
222  DEF(task_InitFileModules                    ,0xffc60268) //107
223  DEF(task_MovieRecord                        ,0xffc47bb4) //107
224  DEF(task_PhySw                              ,0xffc11060) //107
225//NSTUB(time                                  ,0xffc5327c) //  1            == 0xffc5327c
226NSTUB(vsprintf                                ,0xffc0d7f8) //  1
Note: See TracBrowser for help on using the repository browser.