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

Revision 1611, 14.6 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.00E
7//   Canon DIGITAL IXUS 980 IS
8
9// Values for makefile.inc
10//   PLATFORMID = 12691 (0x3193) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x07ffffff
12//   KEYSYS = d4                 // Found @ 0xffff363c
13//   NEED_ENCODED_DISKBOOT = 1   // Found @ 0xffff364c
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(DoAFLock                              ,0xff8258d0) //102        *** != 0xff863a80
18//NSTUB(UnlockAF                              ,0xff825908) //102        *** != 0xff863a90
19//NSTUB(kbd_pwr_off                           ,0xff84a3a8) //  2 64%    *** != 0xff81093c
20// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff81093c
21//NSTUB(rename                                ,0xff8233cc) //  1        *** != 0xff823c48
22//NSTUB(write                                 ,0xff823c20) //101        *** != 0xff819aac
23
24// Check of modemap from 'platform/CAMERA/shooting.c':
25// Firmware modemap table found @ff8816a8 -> ff87de64 -> ff961a3c -> ffa58654 -> ffb49820
26// No problems found with modemap table.
27
28// Values below can be overridden in 'stubs_min.S':
29//DEF(physw_status                            ,0x00011318) // Found @0xff821c24,          stubs_min = 0x00011318 (0x11318)
30//DEF(physw_run                               ,0x00001c28) // Found @0xff821898,          stubs_min = 0x00001c28 (0x1c28)
31//DEF(levent_table                            ,0xffb198b0) // Found @0xffb198b0,          stubs_min = 0xffb198b0 (0xFFB198B0)
32//DEF(FlashParamsTable                        ,0xffb499f4) // Found @0xffb499f4,          stubs_min = 0xffb499f4 (0xFFB499F4)
33//DEF(movie_status                            ,0x000053dc) // Found @0xff861ed0,          stubs_min = 0x000053dc (0x53DC)
34//DEF(canon_menu_active                       ,0x00005830) // Found @0xff876e48,          stubs_min = 0x00005830 (0x5830)
35//DEF(canon_shoot_menu_active                 ,0x0000a351) // Found @0xff973b2c,          stubs_min = 0x0000a351 (0xA351)
36//DEF(playrec_mode                            ,0x00005594) // Found @0xff869e90,          stubs_min = 0x00005594 (0x5594)
37//DEF(zoom_status                             ,0x0000d890) // Found @0xffa59e68,          stubs_min = 0x0000d890 (0xD890)
38//DEF(some_flag_for_af_scan                   ,0x000093e0) // Found @0xff93be2c,          stubs_min = 0x000093e0 (0x93E0)
39// focus_len_table contains zoom focus lengths for use in 'get_focal_length' (main.c).
40// each entry contains 3 int value(s), the first is the zoom focus length.
41// there are 8 entries in the table - set NUM_FL to 8
42DEF(focus_len_table                         ,0xfffe2a8c) // Found @0xfffe2a8c
43//DEF(zoom_busy                               ,0x00008a1c) // Found @0xff93378c,          stubs_min = 0x00008a1c (0x8A1c)
44//DEF(focus_busy                              ,0x00008914) // Found @0xff92e770,          stubs_min = 0x00008914 (0x8914)
45//DEF(recreview_hold                          ,0x000061b8) // Found @0xff887648, ** != ** stubs_min = 0x0000a0a0 (0xA0A0)
46
47// Values below go in 'lib.c':
48//void *vid_get_bitmap_fb()        { return (void*)0x40471000; } // Found @0xff845f24
49//void *vid_get_viewport_fb()      { return (void*)0x407f6dc0; } // Found @0xffaadbb8
50//char *camera_jpeg_count_str()    { return (char*)0x0004af18; } // Found @0xff9b957c
51//long hook_raw_size()             { return 0x01574d00; }        // Found @0xffaaff70
52//int get_flash_params_count(void) { return 0x78; }              // Found @0xff962af8
53
54// Bitmap masks and physw_status index values for SD_READONLY and USB power flags (for kbd.c).
55//#define SD_READONLY_FLAG    0x00020000 // Found @0xffae86d0, levent 0x90a
56//#define SD_READONLY_IDX     2
57//#define USB_MASK            0x00040000 // Found @0xffae86dc, levent 0x902
58//#define USB_IDX             2
59
60// Keymap values for kbd.c. Additional keys may be present, only common values included here.
61//static KeyMap keymap[] = {
62//    { 2, KEY_ZOOM_IN         ,0x00000004 }, // Found @0xffae8640, levent 0x02
63//    { 2, KEY_ZOOM_OUT        ,0x00000008 }, // Found @0xffae864c, levent 0x03
64//    { 2, KEY_LEFT            ,0x00000010 }, // Found @0xffae8658, levent 0x06
65//    { 2, KEY_RIGHT           ,0x00000020 }, // Found @0xffae8664, levent 0x07
66//    { 2, KEY_DOWN            ,0x00000040 }, // Found @0xffae8670, levent 0x05
67//    { 2, KEY_UP              ,0x00000080 }, // Found @0xffae867c, levent 0x04
68//    { 2, KEY_SET             ,0x00000100 }, // Found @0xffae8688, levent 0x08
69//    { 2, KEY_DISPLAY         ,0x00000200 }, // Found @0xffae8694, levent 0x0a
70//    { 2, KEY_SHOOT_FULL      ,0x00000003 }, // Found @0xffae8634, levent 0x01
71//    { 2, KEY_SHOOT_FULL_ONLY ,0x00000002 }, // Found @0xffae8634, levent 0x01
72//    { 2, KEY_MENU            ,0x00000400 }, // Found @0xffae86a0, levent 0x09
73//    { 2, KEY_SHOOT_HALF      ,0x00000001 }, // Found @0xffae8628, levent 0x00
74//    { 0, 0, 0 }
75//};
76
77// Values below go in 'platform_camera.h':
78//#define CAM_DRYOS         1
79//#define CAM_RAW_ROWPIX    4480 // Found @0xffaa6e8c
80//#define CAM_RAW_ROWS      3348 // Found @0xffaa6e90
81//#undef  CAM_UNCACHED_BIT
82//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff827f80
83
84// Misc stuff
85DEF(ctypes, 0xffae283e)
86
87// Stubs below matched 100%.
88//    Name                                     Address                Comp to stubs_entry_2.S
89NSTUB(AllocateMemory                          ,0xffa49a40) //101
90NSTUB(AllocateUncacheableMemory               ,0xff827f3c) //112
91NSTUB(Close                                   ,0xff823b74) //101
92NSTUB(CreateTask                              ,0xff81aef4) //101
93NSTUB(DebugAssert                             ,0xff81b1cc) //111
94NSTUB(DeleteDirectory_Fut                     ,0xff823504) //  1
95NSTUB(DeleteFile_Fut                          ,0xff823420) //112
96//NSTUB(EnterToCompensationEVF                ,0xff825b7c) //104            == 0xff825b7c
97NSTUB(ExecuteEventProcedure                   ,0xff872670) //  1
98//NSTUB(ExitFromCompensationEVF               ,0xff825bc0) //104            == 0xff825bc0
99NSTUB(ExitTask                                ,0xff81b184) //101
100NSTUB(ExpCtrlTool_StartContiAE                ,0xff8310e4) //104
101NSTUB(ExpCtrlTool_StopContiAE                 ,0xff831228) //104
102NSTUB(Fclose_Fut                              ,0xff82359c) //101
103NSTUB(Feof_Fut                                ,0xff823788) //  1
104NSTUB(Fflush_Fut                              ,0xff8237c4) //  1
105NSTUB(Fgets_Fut                               ,0xff8236f0) //  1
106NSTUB(Fopen_Fut                               ,0xff82355c) //101
107NSTUB(Fread_Fut                               ,0xff823648) //101
108NSTUB(FreeMemory                              ,0xffa49a38) //101
109NSTUB(FreeUncacheableMemory                   ,0xff827f7c) //112
110NSTUB(Fseek_Fut                               ,0xff82373c) //101
111NSTUB(Fwrite_Fut                              ,0xff82369c) //101
112NSTUB(GetBatteryTemperature                   ,0xff84ce3c) //102
113NSTUB(GetCCDTemperature                       ,0xff84cdcc) //102
114NSTUB(GetCurrentAvValue                       ,0xff9303b0) //102
115NSTUB(GetDrive_ClusterSize                    ,0xff859648) //  1
116//NSTUB(GetDrive_FreeClusters                 ,0xff8596b0) //  1            == 0xff8596b0
117//NSTUB(GetDrive_TotalClusters                ,0xff85967c) //  1            == 0xff85967c
118NSTUB(GetFocusLensSubjectDistance             ,0xff92f474) //102
119NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff92f85c) //  3
120NSTUB(GetKbdState                             ,0xff84a390) //109
121NSTUB(GetMemInfo                              ,0xff813c24) //  1
122NSTUB(GetOpticalTemperature                   ,0xff84ceac) //102
123NSTUB(GetParameterData                        ,0xff962ab8) //101
124NSTUB(GetPropertyCase                         ,0xff876358) //102
125NSTUB(GetSystemTime                           ,0xffa49a98) //101
126NSTUB(GetZoomLensCurrentPoint                 ,0xff933afc) //102
127NSTUB(GetZoomLensCurrentPosition              ,0xffa4059c) //102
128NSTUB(GiveSemaphore                           ,0xff827958) //112
129NSTUB(IsStrobeChargeCompleted                 ,0xff8b0638) //102
130//NSTUB(LEDDrive                              ,0xff849b2c) //103            == 0xff849b2c
131NSTUB(LocalTime                               ,0xff86fe0c) //  1
132NSTUB(LockMainPower                           ,0xff87da7c) //103
133NSTUB(Lseek                                   ,0xff823cb4) //101
134NSTUB(MakeDirectory_Fut                       ,0xff823494) //  1
135NSTUB(MoveFocusLensToDistance                 ,0xffaaa5fc) //102
136NSTUB(MoveIrisWithAv                          ,0xffa46ae4) //102
137NSTUB(MoveZoomLensWithPoint                   ,0xffa4706c) //102
138NSTUB(NewTaskShell                            ,0xff875e00) //103
139NSTUB(Open                                    ,0xff823b4c) //101
140//NSTUB(PB2Rec                                ,0xff880ac0) //104            == 0xff880ac0
141NSTUB(PT_MoveDigitalZoomToWide                ,0xff863a48) //102
142NSTUB(PT_MoveOpticalZoomAt                    ,0xff863a20) //102
143NSTUB(PT_PlaySound                            ,0xff863398) //102
144NSTUB(PostLogicalEventForNotPowerType         ,0xff87b858) //103
145NSTUB(PostLogicalEventToUI                    ,0xff87b8a4) //103
146//NSTUB(PutInNdFilter                         ,0xffa46ed0) //102            == 0xffa46ed0
147//NSTUB(PutOutNdFilter                        ,0xffa46ef4) //102            == 0xffa46ef4
148NSTUB(Read                                    ,0xff819a4c) //101
149NSTUB(ReadFastDir                             ,0xffa2eb80) //  1
150//NSTUB(Rec2PB                                ,0xff87f458) //104            == 0xff87f458
151//NSTUB(RefreshPhysicalScreen                 ,0xff9c7c94) //104            == 0xff9c7c94
152NSTUB(Remove                                  ,0xff823bbc) //  1
153NSTUB(RenameFile_Fut                          ,0xff8233cc) //  1
154//NSTUB(Restart                               ,0xff8297b0) //106            == 0xff8297b0
155NSTUB(SetAE_ShutterSpeed                      ,0xffaacdc8) //102
156NSTUB(SetAutoShutdownTime                     ,0xff87daf0) //103
157NSTUB(SetCurrentCaptureModeType               ,0xff884c28) //101
158NSTUB(SetFileTimeStamp                        ,0xff823e50) //  1
159NSTUB(SetLogicalEventActive                   ,0xff87d7cc) //101
160NSTUB(SetParameterData                        ,0xff962a28) //101
161NSTUB(SetPropertyCase                         ,0xff876250) //102
162//NSTUB(SetScriptMode                         ,0xff87d81c) //101            == 0xff87d81c
163NSTUB(SleepTask                               ,0xff827bc0) //101
164NSTUB(TakeSemaphore                           ,0xff827888) //101
165//NSTUB(TurnOffBackLight                      ,0xff88aca0) //104            == 0xff88aca0
166NSTUB(TurnOnBackLight                         ,0xff88ac88) //104
167NSTUB(UIFS_WriteFirmInfoToFile                ,0xff953ba0) //101
168NSTUB(UnlockMainPower                         ,0xff87d9d0) //103
169//NSTUB(UnsetZoomForMovie                     ,0xff9689ec) //104            == 0xff9689ec
170NSTUB(UpdateMBROnFlash                        ,0xff859488) //105
171NSTUB(VbattGet                                ,0xff820560) //103
172NSTUB(Write                                   ,0xff823c20) //101
173//NSTUB(WriteSDCard                           ,0xff9210a4) //108            == 0xff9210a4
174NSTUB(_log                                    ,0xffadfabc) //111
175NSTUB(_log10                                  ,0xffade748) //112
176NSTUB(_pow                                    ,0xffade8b8) //114
177NSTUB(_sqrt                                   ,0xffae1718) //  1
178NSTUB(add_ptp_handler                         ,0xff9fbed8) //  3
179NSTUB(apex2us                                 ,0xff9c8cb0) //  4
180NSTUB(close                                   ,0xff819864) //  1
181NSTUB(closedir                                ,0xffa2ec50) //  1
182NSTUB(err_init_task                           ,0xff814e80) //  4
183NSTUB(exmem_alloc                             ,0xff870d4c) //103
184NSTUB(free                                    ,0xff813a7c) //112
185NSTUB(kbd_p1_f                                ,0xff821d20) //109
186NSTUB(kbd_p1_f_cont                           ,0xff821d2c) //109
187NSTUB(kbd_p2_f                                ,0xff821538) //109
188NSTUB(kbd_read_keys                           ,0xff821c24) //109
189NSTUB(kbd_read_keys_r2                        ,0xff849f24) //109
190NSTUB(lseek                                   ,0xff823cb4) //101
191NSTUB(malloc                                  ,0xff8139a8) //112
192NSTUB(memcmp                                  ,0xff81cba4) //101
193NSTUB(memcpy                                  ,0xff8977a4) //101
194NSTUB(memset                                  ,0xff9c7fe8) //101
195NSTUB(mkdir                                   ,0xff823f18) //  1
196// ALT: NSTUB(mkdir, 0xff823fb8) // 1 32/0
197NSTUB(mktime_ext                              ,0xff898010) //  1
198NSTUB(open                                    ,0xff8197b4) //  1
199NSTUB(opendir                                 ,0xffa2eaec) //  1
200NSTUB(openfastdir                             ,0xffa2eaec) //  1
201//NSTUB(qsort                                 ,0xffa93dc0) //  1            == 0xffa93dc0
202NSTUB(rand                                    ,0xff81ccac) //  1
203NSTUB(read                                    ,0xff819a4c) //101
204NSTUB(readfastdir                             ,0xffa2eb80) //  1
205NSTUB(reboot_fw_update                        ,0xffa36580) //  5
206NSTUB(set_control_event                       ,0xff87d448) //  1
207NSTUB(srand                                   ,0xff81cca0) //  1
208NSTUB(stat                                    ,0xff823d80) //  1
209NSTUB(strcat                                  ,0xff8975b8) //  1
210//NSTUB(strchr                                ,0xff897640) //  1            == 0xff897640
211NSTUB(strcmp                                  ,0xff81cb3c) //101
212NSTUB(strcpy                                  ,0xff81cb24) //101
213NSTUB(strftime                                ,0xff897a18) //  1
214NSTUB(strlen                                  ,0xff81cb80) //101
215NSTUB(strncmp                                 ,0xff8975f4) //  1
216NSTUB(strncpy                                 ,0xff82da50) //  1
217//NSTUB(strrchr                               ,0xff9c7fc0) //  1            == 0xff9c7fc0
218NSTUB(strtol                                  ,0xff82dc88) //101
219NSTUB(strtolx                                 ,0xff82da8c) //109
220  DEF(task_CaptSeq                            ,0xff865f0c) //107
221  DEF(task_ExpDrv                             ,0xff8a9554) //110
222  DEF(task_InitFileModules                    ,0xff881534) //107
223  DEF(task_MovieRecord                        ,0xff862148) //107
224  DEF(task_PhySw                              ,0xff821894) //107
225NSTUB(time                                    ,0xff8703ec) //  2
226NSTUB(vsprintf                                ,0xff81cae8) //  1
Note: See TracBrowser for help on using the repository browser.