source: branches/release-1_0/platform/s90/sub/100c/stubs_entry.S @ 1635

Revision 1635, 14.5 KB checked in by philmoz, 2 years ago (diff)

Update for finsig_dryos:

  • try and find details for vid_get_viewport_fb_d() function and nrflag variable
  • add error handling to prevent crash if incorrect start address used.
  • 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 R39 (DRYOS version 2.3, release #0039)
6//   Firmware Ver GM1.00C
7//   Could not find Camera name - possible corrupt firmware dump
8
9// Values for makefile.inc
10//   PLATFORMID = 0 (0x0000) // Found @ 0xfffe0130
11//   MAXRAMADDR = 0x03ffffff
12
13// Stubs below should be checked. Stub not matched 100%, or difference found to current 'stubs_entry_2.S'
14//    Name                                     Address      Rule  %  Comp to stubs_entry_2.S
15NSTUB(GetBatteryTemperature                   ,0xff8615f0) //  2 68%
16NSTUB(GetCCDTemperature                       ,0xff86157c) //  2 62%
17NSTUB(GetCurrentAvValue                       ,0xff95a354) //  1 96%
18NSTUB(GetFocusLensSubjectDistance             ,0xff958928) //  1 93%
19//NSTUB(GetPropertyCase                       ,0xff88c960) //  5        *** != 0xff88ca64
20NSTUB(IsStrobeChargeCompleted                 ,0xff8d8710) //  1 96%
21NSTUB(MoveFocusLensToDistance                 ,0xffafbcf0) //  1 68%
22NSTUB(MoveZoomLensWithPoint                   ,0xffa9b1a8) //  1 71%
23NSTUB(PutInNdFilter                           ,0xffa9af98) //  4 75%
24NSTUB(PutOutNdFilter                          ,0xff8776f4) //  4 57%
25NSTUB(SetPropertyCase                         ,0xff88c960) //  1 96%
26//NSTUB(SetScriptMode                         ,0xff89441c) //101        *** != 0xff810f4c
27//NSTUB(kbd_pwr_off                           ,0xff85e3a4) //  2 60%    *** != 0xff810b04
28// ERROR: kbd_pwr_on is not found.                         //--- ---    *** != 0xff810b04
29//NSTUB(rename                                ,0xff834d0c) //  4        *** != 0xff8354f0
30//NSTUB(write                                 ,0xff8354a4) //101        *** != 0xff81abd8
31
32// Check of modemap from 'platform/CAMERA/shooting.c':
33// Firmware modemap table found @ff89845c -> ff894a60 -> ff9934bc -> ffaae880 -> ffbef980
34// No problems found with modemap table.
35
36// Values below can be overridden in 'stubs_min.S':
37//DEF(physw_status                            ,0x000330d8) // Found @0xff8335b4,          stubs_min = 0x000330d8 (0x330d8)
38//DEF(physw_run                               ,0x00001c44) // Found @0xff83320c,          stubs_min = 0x00001c44 (0x1C38+0x0C)
39//DEF(levent_table                            ,0xffb8b470) // Found @0xffb8b470,          stubs_min = 0xffb8b470 (0xFFB8B470)
40//DEF(FlashParamsTable                        ,0xffbefb70) // Found @0xffbefb70,          stubs_min = 0xffbefb70 (0xFFBEFB70)
41//DEF(movie_status                            ,0x00007ae8) // Found @0xff961448,          stubs_min = 0x00007ae8 (0x7ab0+0x38)
42DEF(full_screen_refresh                     ,0x0000a36c) // Found @0xffa07d74
43//DEF(playrec_mode                            ,0x00002d64) // Found @0xff87f9f4,          stubs_min = 0x00002d64 (0x2d60+0x4)
44//DEF(zoom_status                             ,0x00008aa4) // Found @0xff99bb20,          stubs_min = 0x00008aa4 (0x8AA4)
45//DEF(some_flag_for_af_scan                   ,0x00007ff4) // Found @0xff9644d8,          stubs_min = 0x00007ff4 (0x7FF4)
46//DEF(recreview_hold                          ,0x00003a94) // Found @0xff89e690, ** != ** stubs_min = 0x00008a28 (0x8944+0xE4)
47
48// Values below go in 'lib.c':
49//void *vid_get_viewport_fb()      { return (void*)0x407e8a00; }             // Found @0xffaff2dc
50//void *vid_get_viewport_fb_d()    { return (void*)(*(int*)(0x2a20+0x58)); } // Found @0xff86f9f8 & 0xff86fa30
51//long hook_raw_size()             { return 0x00ee9200; }                    // Found @0xffb025a8
52//int get_flash_params_count(void) { return 0x85; }                          // Found @0xff994abc
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 @0xffb3aa50, levent 0x90a
56//#define SD_READONLY_IDX     2
57//#define USB_MASK            0x00200000 // Found @0xffb3aa68, 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//    { 0, KEY_SHOOT_FULL      ,0x00000300 }, // Found @0xffb3a93c, levent 0x01
63//    { 0, KEY_SHOOT_FULL_ONLY ,0x00000200 }, // Found @0xffb3a93c, levent 0x01
64//    { 0, KEY_SHOOT_HALF      ,0x00000100 }, // Found @0xffb3a930, levent 0x00
65//    { 1, KEY_ZOOM_IN         ,0x00000010 }, // Found @0xffb3a9b4, levent 0x02
66//    { 1, KEY_ZOOM_OUT        ,0x00000020 }, // Found @0xffb3a9c0, levent 0x03
67//    { 1, KEY_LEFT            ,0x00000100 }, // Found @0xffb3a9e4, levent 0x06
68//    { 1, KEY_RIGHT           ,0x00000200 }, // Found @0xffb3a9f0, levent 0x07
69//    { 1, KEY_DOWN            ,0x00000400 }, // Found @0xffb3a9fc, levent 0x05
70//    { 1, KEY_DISPLAY         ,0x00001000 }, // Found @0xffb3aa14, levent 0x0a
71//    { 1, KEY_MENU            ,0x00002000 }, // Found @0xffb3aa20, levent 0x09
72//    { 1, KEY_UP              ,0x00004000 }, // Found @0xffb3aa2c, levent 0x04
73//    { 1, KEY_SET             ,0x00008000 }, // Found @0xffb3aa38, levent 0x08
74//    { 0, 0, 0 }
75//};
76
77// Values below go in 'platform_camera.h':
78//#define CAM_DRYOS         1
79//#define CAM_DRYOS_2_3_R39 1 // Defined for cameras with DryOS version R39 or higher
80//#define CAM_RAW_ROWPIX    3744 // Found @0xff9345cc
81//#define CAM_RAW_ROWS      2784 // Found @0xff9345d4
82//#undef  CAM_UNCACHED_BIT
83//#define CAM_UNCACHED_BIT  0x40000000 // Found @0xff838e10
84
85// Misc stuff
86DEF(ctypes, 0xffb39372)
87
88// Stubs below matched 100%.
89//    Name                                     Address                Comp to stubs_entry_2.S
90NSTUB(AllocateMemory                          ,0xffa9d168) //101
91NSTUB(AllocateUncacheableMemory               ,0xff838dcc) //112
92NSTUB(Close                                   ,0xff835414) //101
93NSTUB(CreateTask                              ,0xff81e5b4) //101
94NSTUB(DebugAssert                             ,0xff81e88c) //111
95NSTUB(DeleteDirectory_Fut                     ,0xff834e84) //  1
96NSTUB(DeleteFile_Fut                          ,0xff834da0) //112
97//NSTUB(DoAFLock                              ,0xff836b98) //  4            == 0xff836b98
98//NSTUB(EnterToCompensationEVF                ,0xff836d3c) //104            == 0xff836d3c
99NSTUB(ExecuteEventProcedure                   ,0xff888cfc) //  1
100//NSTUB(ExitFromCompensationEVF               ,0xff836d80) //104            == 0xff836d80
101NSTUB(ExitTask                                ,0xff81e844) //101
102//NSTUB(ExpCtrlTool_StartContiAE              ,0xff844700) //104            == 0xff844700
103//NSTUB(ExpCtrlTool_StopContiAE               ,0xff8447d8) //104            == 0xff8447d8
104NSTUB(Fclose_Fut                              ,0xff834f1c) //101
105NSTUB(Feof_Fut                                ,0xff835108) //  1
106NSTUB(Fflush_Fut                              ,0xff835144) //  1
107NSTUB(Fgets_Fut                               ,0xff835070) //  1
108NSTUB(Fopen_Fut                               ,0xff834edc) //101
109NSTUB(Fread_Fut                               ,0xff834fc8) //101
110NSTUB(FreeMemory                              ,0xffa9d160) //101
111NSTUB(FreeUncacheableMemory                   ,0xff838e0c) //112
112NSTUB(Fseek_Fut                               ,0xff8350bc) //101
113NSTUB(Fwrite_Fut                              ,0xff83501c) //101
114NSTUB(GetDrive_ClusterSize                    ,0xff86e380) //  3
115NSTUB(GetDrive_FreeClusters                   ,0xff86e3e0) //  3
116NSTUB(GetDrive_TotalClusters                  ,0xff86e3b4) //  3
117NSTUB(GetFocusLensSubjectDistanceFromLens     ,0xff958d70) //  3
118NSTUB(GetImageFolder                          ,0xff93c458) //106
119//NSTUB(GetKbdState                           ,0xff85e258) //109            == 0xff85e258
120NSTUB(GetMemInfo                              ,0xff81a070) //  3
121NSTUB(GetOpticalTemperature                   ,0xff861664) //  3
122NSTUB(GetParameterData                        ,0xff994a7c) //101
123NSTUB(GetSystemTime                           ,0xffa9d1c0) //101
124NSTUB(GetZoomLensCurrentPoint                 ,0xff95d9ec) //  1
125NSTUB(GetZoomLensCurrentPosition              ,0xffa90e0c) //  2
126//NSTUB(GiveSemaphore                         ,0xff8387e8) //112            == 0xff8387e8
127//NSTUB(LEDDrive                              ,0xff85d648) //103            == 0xff85d648
128NSTUB(LocalTime                               ,0xff886670) //  1
129NSTUB(LockMainPower                           ,0xff89467c) //103
130//NSTUB(Lseek                                 ,0xff835530) //101            == 0xff835530
131NSTUB(MakeDirectory_Fut                       ,0xff834e14) //  1
132NSTUB(MoveIrisWithAv                          ,0xffa9ab34) //  4
133NSTUB(NewTaskShell                            ,0xff88c510) //103
134NSTUB(Open                                    ,0xff8353bc) //101
135NSTUB(PB2Rec                                  ,0xff8977c4) //104
136NSTUB(PT_MoveDigitalZoomToWide                ,0xff8776dc) //  4
137NSTUB(PT_MoveOpticalZoomAt                    ,0xff8776b4) //  4
138//NSTUB(PT_PlaySound                          ,0xff88180c) //  7            == 0xff88180c
139NSTUB(PostLogicalEventForNotPowerType         ,0xff8924a8) //103
140NSTUB(PostLogicalEventToUI                    ,0xff8924f4) //103
141NSTUB(Read                                    ,0xff81ab78) //101
142NSTUB(ReadFastDir                             ,0xffa7d748) //  3
143NSTUB(Rec2PB                                  ,0xff897804) //104
144//NSTUB(RefreshPhysicalScreen                 ,0xffa08eec) //104            == 0xffa08eec
145//NSTUB(Remove                                ,0xff835448) //  4            == 0xff835448
146//NSTUB(RenameFile_Fut                        ,0xff834d0c) //  4            == 0xff834d0c
147NSTUB(Restart                                 ,0xff83a520) //106
148//NSTUB(ScreenLock                            ,0xffa0a10c) //  3            == 0xffa0a10c
149//NSTUB(ScreenUnlock                          ,0xffa0a134) //  3            == 0xffa0a134
150NSTUB(SetAE_ShutterSpeed                      ,0xffafe49c) //  1
151NSTUB(SetAutoShutdownTime                     ,0xff8946f0) //103
152NSTUB(SetCurrentCaptureModeType               ,0xff89b7b4) //101
153//NSTUB(SetFileTimeStamp                      ,0xff8356a0) //  3            == 0xff8356a0
154NSTUB(SetLogicalEventActive                   ,0xff8943cc) //101
155NSTUB(SetParameterData                        ,0xff994958) //101
156NSTUB(SleepTask                               ,0xff838a50) //101
157NSTUB(TakeSemaphore                           ,0xff838718) //101
158//NSTUB(TurnOffBackLight                      ,0xff8a494c) //104            == 0xff8a494c
159//NSTUB(TurnOnBackLight                       ,0xff8a4934) //104            == 0xff8a4934
160//NSTUB(UIFS_WriteFirmInfoToFile              ,0xff97ea00) //105            == 0xff97ea00
161//NSTUB(UnlockAF                              ,0xff836bd0) //  4            == 0xff836bd0
162NSTUB(UnlockMainPower                         ,0xff8945d0) //103
163//NSTUB(UnsetZoomForMovie                     ,0xff8a0eb4) //104            == 0xff8a0eb4
164NSTUB(UpdateMBROnFlash                        ,0xff86e200) //105
165NSTUB(VbattGet                                ,0xff831e04) //103
166NSTUB(Write                                   ,0xff8354a4) //101
167//NSTUB(WriteSDCard                           ,0xff94a55c) //108            == 0xff94a55c
168NSTUB(_log                                    ,0xffb365f8) //111
169NSTUB(_log10                                  ,0xffb35284) //112
170NSTUB(_pow                                    ,0xffb353f4) //114
171NSTUB(_sqrt                                   ,0xffb3819c) //  1
172NSTUB(add_ptp_handler                         ,0xffa46fc0) //  3
173//NSTUB(apex2us                               ,0xffa0d7a8) //  4            == 0xffa0d7a8
174NSTUB(close                                   ,0xff81a990) //  1
175NSTUB(closedir                                ,0xffa7d5d0) //  3
176NSTUB(err_init_task                           ,0xff815f28) //  4
177NSTUB(exmem_alloc                             ,0xff887530) //103
178NSTUB(free                                    ,0xff814138) //112
179NSTUB(kbd_p1_f                                ,0xff833630) //109
180NSTUB(kbd_p1_f_cont                           ,0xff83363c) //109
181NSTUB(kbd_p2_f                                ,0xff832ed8) //109
182NSTUB(kbd_read_keys                           ,0xff8335b4) //109
183NSTUB(kbd_read_keys_r2                        ,0xff85db5c) //109
184NSTUB(lseek                                   ,0xff835530) //101
185NSTUB(malloc                                  ,0xff8140dc) //112
186NSTUB(memcmp                                  ,0xff8203e8) //101
187NSTUB(memcpy                                  ,0xff83e43c) //101
188NSTUB(memset                                  ,0xffa0c7f8) //101
189NSTUB(mkdir                                   ,0xff835888) //  3
190NSTUB(mktime_ext                              ,0xff8ac304) //  1
191NSTUB(open                                    ,0xff81a8e0) //  1
192NSTUB(opendir                                 ,0xffa7d614) //  3
193//NSTUB(openfastdir                           ,0xffa7d614) //  3            == 0xffa7d614
194NSTUB(qsort                                   ,0xffaec3d8) //  1
195NSTUB(rand                                    ,0xff8204f0) //  1
196NSTUB(read                                    ,0xff81ab78) //101
197//NSTUB(readfastdir                           ,0xffa7d748) //  3            == 0xffa7d748
198NSTUB(reboot_fw_update                        ,0xffa82c58) //  1
199NSTUB(set_control_event                       ,0xff894020) //111
200NSTUB(srand                                   ,0xff8204e4) //  1
201NSTUB(stat                                    ,0xff83556c) //  3
202// ALT: NSTUB(stat, 0xff86b7c4) // 3 31/0
203//NSTUB(strcat                                ,0xff8abac0) //  1            == 0xff8abac0
204NSTUB(strchr                                  ,0xff813fc0) //  1
205NSTUB(strcmp                                  ,0xff8203a4) //101
206NSTUB(strcpy                                  ,0xff82038c) //101
207NSTUB(strftime                                ,0xff8abd0c) //  1
208NSTUB(strlen                                  ,0xff81400c) //101
209NSTUB(strncmp                                 ,0xff813f74) //  1
210//NSTUB(strncpy                               ,0xff813f38) //  1            == 0xff813f38
211//NSTUB(strrchr                               ,0xff813fe4) //  1            == 0xff813fe4
212NSTUB(strtol                                  ,0xff83e71c) //101
213NSTUB(strtolx                                 ,0xff83e520) //109
214  DEF(task_CaptSeq                            ,0xff87a208) //107
215  DEF(task_ExpDrv                             ,0xff8c0e54) //110
216  DEF(task_InitFileModules                    ,0xff8982e8) //107
217  DEF(task_MovieRecord                        ,0xff96172c) //107
218  DEF(task_PhySw                              ,0xff833208) //107
219  DEF(task_RotaryEncoder                      ,0xff85e508) //107
220NSTUB(time                                    ,0xff886be8) //  2
221NSTUB(vsprintf                                ,0xff820350) //  1
Note: See TracBrowser for help on using the repository browser.