Changeset 217
- Timestamp:
- 01/10/10 18:39:28 (2 years ago)
- Location:
- trunk
- Files:
-
- 40 added
- 104 modified
-
CHDK/SCRIPTS/TEST/tstcallf.lua (added)
-
Makefile (modified) (5 diffs)
-
buildconf.inc (modified) (1 diff)
-
core/Makefile (modified) (2 diffs)
-
core/kbd.c (modified) (1 diff)
-
core/luascript.c (modified) (3 diffs)
-
include/camera.h (modified) (1 diff)
-
include/lolevel.h (modified) (2 diffs)
-
include/platform.h (modified) (1 diff)
-
include/stdlib.h (modified) (1 diff)
-
lib/Makefile (modified) (1 diff)
-
lib/armutil (added)
-
lib/armutil/Makefile (added)
-
lib/armutil/README.TXT (added)
-
lib/armutil/callfunc.S (added)
-
lib/armutil/callfunc_test.c (added)
-
lib/armutil/reversebytes.S (added)
-
lib/lua/lbaselib.c (modified) (1 diff)
-
lib/lua/lobject.c (modified) (1 diff)
-
loader/ixus90_sd790 (added)
-
loader/ixus90_sd790/Makefile (added)
-
loader/ixus90_sd790/blobs.S (added)
-
loader/ixus90_sd790/entry.S (added)
-
loader/ixus90_sd790/main.c (added)
-
loader/ixus90_sd790/resetcode (added)
-
loader/ixus90_sd790/resetcode/Makefile (added)
-
loader/ixus90_sd790/resetcode/entry.S (added)
-
loader/ixus90_sd790/resetcode/main.c (added)
-
makefile.inc (modified) (1 diff)
-
platform/a2000/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/a450/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/a460/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/a470/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/a470/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/a470/sub/102c/stubs_entry.S (modified) (1 diff)
-
platform/a530/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/a540/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/a550/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/a560/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/a570/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/a570/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/a590/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/a590/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/a610/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/a610/sub/100f/stubs_entry.S (modified) (1 diff)
-
platform/a620/sub/100f/stubs_entry.S (modified) (1 diff)
-
platform/a630/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/a640/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/a650/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/a700/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/a710/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/a720/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/g7/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/g7/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/g7/sub/100i/stubs_entry.S (modified) (1 diff)
-
platform/g7/sub/100j/stubs_entry.S (modified) (1 diff)
-
platform/g9/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/g9/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/g9/sub/100i/stubs_entry.S (modified) (1 diff)
-
platform/generic/wrappers.c (modified) (2 diffs)
-
platform/ixus40_sd300/sub/100j/stubs_entry.S (modified) (1 diff)
-
platform/ixus40_sd300/sub/100k/stubs_entry.S (modified) (1 diff)
-
platform/ixus50_sd400/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/ixus50_sd400/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/ixus55_sd450/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/ixus55_sd450/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus55_sd450/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/ixus60_sd600/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/ixus60_sd600/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/ixus65_sd630/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/ixus700_sd500/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/ixus700_sd500/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/ixus70_sd1000/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus70_sd1000/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/ixus70_sd1000/sub/102a/stubs_entry.S (modified) (1 diff)
-
platform/ixus750_sd550/sub/100f/stubs_entry.S (modified) (1 diff)
-
platform/ixus750_sd550/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/ixus75_sd750/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/ixus75_sd750/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/ixus75_sd750/sub/102a/stubs_entry.S (modified) (1 diff)
-
platform/ixus800_sd700/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/ixus800_sd700/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/ixus80_sd1100/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus80_sd1100/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/ixus850_sd800/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/ixus860_sd870/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus870_sd880/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/ixus870_sd880/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/ixus870_sd880/sub/102b/stubs_entry.S (modified) (1 diff)
-
platform/ixus90_sd790 (added)
-
platform/ixus90_sd790/Makefile (added)
-
platform/ixus90_sd790/kbd.c (added)
-
platform/ixus90_sd790/leds.h (added)
-
platform/ixus90_sd790/lib.c (added)
-
platform/ixus90_sd790/main.c (added)
-
platform/ixus90_sd790/notes.txt (added)
-
platform/ixus90_sd790/shooting.c (added)
-
platform/ixus90_sd790/sub (added)
-
platform/ixus90_sd790/sub/100d (added)
-
platform/ixus90_sd790/sub/100d/Makefile (added)
-
platform/ixus90_sd790/sub/100d/PRIMARY.BIN (added)
-
platform/ixus90_sd790/sub/100d/boot.c (added)
-
platform/ixus90_sd790/sub/100d/capt_seq.c (added)
-
platform/ixus90_sd790/sub/100d/lib.c (added)
-
platform/ixus90_sd790/sub/100d/makefile.inc (added)
-
platform/ixus90_sd790/sub/100d/movie_rec.c (added)
-
platform/ixus90_sd790/sub/100d/stubs_asm.h (added)
-
platform/ixus90_sd790/sub/100d/stubs_auto.S (added)
-
platform/ixus90_sd790/sub/100d/stubs_entry.S (added)
-
platform/ixus90_sd790/sub/100d/stubs_entry_2.S (added)
-
platform/ixus90_sd790/sub/100d/stubs_min.S (added)
-
platform/ixus90_sd790/sub/Makefile (added)
-
platform/ixus90_sd790/wrappers.c (added)
-
platform/ixus950_sd850/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus960_sd950/sub/100d/stubs_entry.S (modified) (1 diff)
-
platform/ixus970_sd890/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/ixus970_sd890/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/ixus970_sd890/sub/100f/stubs_entry.S (modified) (1 diff)
-
platform/ixus980_sd990/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/ixus980_sd990/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/ixusizoom_sd30/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/s2is/sub/100e/stubs_entry.S (modified) (1 diff)
-
platform/s2is/sub/100f/stubs_entry.S (modified) (1 diff)
-
platform/s2is/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/s3is/sub/100a/stubs_entry.S (modified) (1 diff)
-
platform/s5is/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/s5is/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/sx1/sub/200h/stubs_entry.S (modified) (1 diff)
-
platform/sx1/sub/201a/stubs_entry.S (modified) (1 diff)
-
platform/sx10/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/sx10/sub/101a/stubs_entry.S (modified) (1 diff)
-
platform/sx10/sub/101b/stubs_entry.S (modified) (1 diff)
-
platform/sx10/sub/102b/stubs_entry.S (modified) (1 diff)
-
platform/sx10/sub/103a/stubs_entry.S (modified) (1 diff)
-
platform/sx100is/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/sx100is/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/sx110is/sub/100b/stubs_entry.S (modified) (1 diff)
-
platform/sx200is/sub/100c/stubs_entry.S (modified) (1 diff)
-
platform/tx1/sub/100g/stubs_entry.S (modified) (1 diff)
-
platform/tx1/sub/101b/stubs_entry.S (modified) (1 diff)
-
tools/sig_ref_dryos_1.txt (modified) (1 diff)
-
tools/sig_ref_vxworks_1.txt (modified) (1 diff)
-
tools/signatures_dryos.h (modified) (2 diffs)
-
tools/signatures_vxworks.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Makefile
r209 r217 224 224 $(MAKE) -s --no-print-directory PLATFORM=sx110is PLATFORMSUB=100b NO_INC_BUILD=1 firzipsub 225 225 $(MAKE) -s --no-print-directory PLATFORM=sx200is PLATFORMSUB=100c NO_INC_BUILD=1 firzipsub 226 $(MAKE) -s --no-print-directory PLATFORM=ixus90_sd790 PLATFORMSUB=100d NO_INC_BUILD=1 firzipsub 226 227 @echo "**** All firmwares created successfully" 227 228 @echo "**** Copying duplicate Firmwares" … … 246 247 mv $(topdir)bin/$(VER)-ixus980_sd990-101b-$(BUILD_NUMBER).zip $(topdir)bin/$(VER)-ixus980_sd990-101b-$(BUILD_NUMBER)_BETA.zip 247 248 mv $(topdir)bin/$(VER)-a2000-100c-$(BUILD_NUMBER).zip $(topdir)bin/$(VER)-a2000-100c-$(BUILD_NUMBER)_BETA.zip 249 mv $(topdir)bin/$(VER)-ixus90_sd790-100d-$(BUILD_NUMBER).zip $(topdir)bin/$(VER)-ixus90_sd790-100d-$(BUILD_NUMBER)_BETA.zip 248 250 @echo "**** Done Copying duplicate Firmwares" 249 251 @echo "**** Summary of memisosizes" … … 340 342 $(MAKE) -s --no-print-directory PLATFORM=sx110is PLATFORMSUB=100b NO_INC_BUILD=1 firzipsubcomplete 341 343 $(MAKE) -s --no-print-directory PLATFORM=sx200is PLATFORMSUB=100c NO_INC_BUILD=1 firzipsubcomplete 344 $(MAKE) -s --no-print-directory PLATFORM=ixus90_sd790 PLATFORMSUB=100d NO_INC_BUILD=1 firzipsubcomplete 342 345 @echo "**** All zipfiles including firmwares and extra stuff created successfully" 343 346 @echo "**** Copying duplicate Firmwares" … … 382 385 mv $(topdir)bin/a2000-100c-$(BUILD_NUMBER)-full.zip $(topdir)bin/a2000-100c-$(BUILD_NUMBER)-full_BETA.zip 383 386 mv $(topdir)bin/a2000-100c-$(BUILD_NUMBER).zip $(topdir)bin/a2000-100c-$(BUILD_NUMBER)_BETA.zip 387 mv $(topdir)bin/ixus90_sd790-100d-$(BUILD_NUMBER)-full.zip $(topdir)bin/ixus90_sd790-100d-$(BUILD_NUMBER)-full_BETA.zip 388 mv $(topdir)bin/ixus90_sd790-100d-$(BUILD_NUMBER).zip $(topdir)bin/ixus90_sd790-100d-$(BUILD_NUMBER)_BETA.zip 384 389 @echo "**** Done Copying duplicate Firmwares" 385 390 @echo "**** Summary of memisosizes" … … 474 479 $(MAKE) -s --no-print-directory PLATFORM=sx110is PLATFORMSUB=100b NO_INC_BUILD=1 clean 475 480 $(MAKE) -s --no-print-directory PLATFORM=sx200is PLATFORMSUB=100c NO_INC_BUILD=1 clean 481 $(MAKE) -s --no-print-directory PLATFORM=ixus90_sd790 PLATFORMSUB=100d NO_INC_BUILD=1 clean 476 482 .PHONY: fir upload -
trunk/buildconf.inc
r177 r217 12 12 OPT_EDGEOVERLAY=1 13 13 OPT_LUA_STRLIB=1 14 # OPT_LUA_CALL_NATIVE=1 allow Lua to call arbitrary ROM functions and eventprocs 15 # WARNING: This is DANGEROUS. e.g. call_event_proc("EraseSectorOfRom",...) 16 # NOTE: the interface for this may change in the future, to support better support buffers etc 17 OPT_LUA_CALL_NATIVE=1 14 18 #OPT_MD_DEBUG=1 15 19 # needs proper fi2.inc in platform/ !!! see http://chdk.setepontos.com/index.php/topic,2995.0.html -
trunk/core/Makefile
r106 r217 53 53 CFLAGS+=-DOPT_MD_DEBUG 54 54 endif 55 ifdef OPT_LUA_CALL_NATIVE 56 CFLAGS+=-DOPT_LUA_CALL_NATIVE 57 endif 55 58 OBJS=entry.o nothumb.o main.o gui_draw.o gui_menu.o gui_palette.o gui_mbox.o \ 56 59 gui_fselect.o gui.o kbd.o conf.o \ … … 76 79 $(topdir)lib/font/libfont.a $(topdir)lib/math/libmath.a \ 77 80 $(topdir)lib/ubasic/libubasic.a $(topdir)lib/lang/liblang.a \ 78 $(topdir)lib/lua/liblua.a 81 $(topdir)lib/lua/liblua.a \ 82 $(topdir)lib/armutil/libarmutil.a 79 83 @echo \-\> $@ 80 84 $(CC) $(CFLAGS) -o $@ --start-group $^ $(LDLIBS) --end-group $(LDFLAGS) $(LDOPTS) -
trunk/core/kbd.c
r177 r217 85 85 #endif 86 86 87 #if defined(CAMERA_a460) || defined(CAMERA_a530) || defined (CAMERA_a540) || defined(CAMERA_a550) || defined(CAMERA_a560) || defined(CAMERA_a570) || defined(CAMERA_a590) ||defined(CAMERA_ixus860_sd870) || defined(CAMERA_ixus960_sd950) || defined(CAMERA_ixus80_sd1100) || defined(CAMERA_ixus970_sd890) || defined(CAMERA_ixus980_sd990) 87 #if defined(CAMERA_a460) || defined(CAMERA_a530) || defined (CAMERA_a540) || defined(CAMERA_a550) || defined(CAMERA_a560) || defined(CAMERA_a570) || defined(CAMERA_a590) ||defined(CAMERA_ixus860_sd870) || defined(CAMERA_ixus960_sd950) || defined(CAMERA_ixus80_sd1100) || defined(CAMERA_ixus970_sd890) || defined(CAMERA_ixus980_sd990) || defined(CAMERA_ixus90_sd790) 88 88 #define ZSTEP_TABLE_SIZE 8 89 89 static int nTxtbl[]={0,1,2,3,4,5,6,7}; -
trunk/core/luascript.c
r175 r217 742 742 return 1; 743 743 } 744 744 /* 745 val=peek(address[,size]) 746 return the value found at address in memory, or nil if address or size is invalid 747 size is optional 1=byte 2=halfword 4=word. defaults is 4 748 */ 745 749 static int luaCB_peek( lua_State* L ) 746 750 { 747 int addr = (luaL_checknumber(L,1)); 748 // must be alligned 749 if (addr & 0x3) { 750 lua_pushnil(L); 751 unsigned addr = luaL_checknumber(L,1); 752 unsigned size = luaL_optnumber(L, 2, 4); 753 switch(size) { 754 case 1: 755 lua_pushnumber( L, *(unsigned char *)(addr) ); 756 break; 757 case 2: 758 if (addr & 0x1) { 759 lua_pushnil(L); 760 } 761 else { 762 lua_pushnumber( L, *(unsigned short *)(addr) ); 763 } 764 break; 765 case 4: 766 if (addr & 0x3) { 767 lua_pushnil(L); 768 } 769 else { 770 lua_pushnumber( L, *(unsigned *)(addr) ); 771 } 772 break; 773 default: 774 lua_pushnil(L); 775 776 } 777 return 1; 778 } 779 780 /* 781 status=poke(address,value[,size]) 782 writes value to address in memory 783 size is optional 1=byte 2=halfword 4=word. defaults is 4 784 returns true, or nil if address or size is invalid 785 */ 786 static int luaCB_poke( lua_State* L ) 787 { 788 unsigned addr = luaL_checknumber(L,1); 789 unsigned val = luaL_checknumber(L,2); 790 unsigned size = luaL_optnumber(L, 3, 4); 791 int status = 0; 792 switch(size) { 793 case 1: 794 *(unsigned char *)(addr) = (unsigned char)val; 795 lua_pushboolean(L,1); 796 status=1; 797 break; 798 case 2: 799 if (!(addr & 0x1)) { 800 *(unsigned short *)(addr) = (unsigned short)val; 801 status=1; 802 } 803 break; 804 case 4: 805 if (!(addr & 0x3)) { 806 *(unsigned *)(addr) = val; 807 status=1; 808 } 809 break; 810 } 811 if(status) { 812 lua_pushboolean(L,1); 751 813 } 752 814 else { 753 lua_pushnumber( L, *(unsigned *)(addr) ); 754 } 755 return 1; 756 } 757 758 static int luaCB_poke( lua_State* L ) 759 { 760 int addr = (luaL_checknumber(L,1)); 761 int val = (luaL_checknumber(L,2)); 762 if (addr & 0x3) { 763 lua_pushnil(L); 764 } 765 else { 766 *(unsigned *)(addr) = val; 767 lua_pushboolean(L,1); 815 lua_pushnil(L); 768 816 } 769 817 return 1; … … 1125 1173 } 1126 1174 1175 /* 1176 pack the lua args into a buffer to pass to the native code calling functions 1177 currently only handles strings/numbers 1178 start is the stack index of the first arg 1179 */ 1180 #ifdef OPT_LUA_CALL_NATIVE 1181 static int pack_native_args( lua_State* L, unsigned start, unsigned *argbuf) 1182 { 1183 unsigned i; 1184 unsigned end = lua_gettop(L); 1185 1186 for(i = start; i <= end; i++,argbuf++) { 1187 if (lua_type(L, i) == LUA_TSTRING) { 1188 *argbuf=(unsigned)lua_tostring( L, i); 1189 } 1190 else if (lua_type(L, i) == LUA_TNUMBER) { 1191 *argbuf=lua_tonumber( L, i); 1192 } 1193 else { 1194 return 0; 1195 } 1196 } 1197 return 1; 1198 } 1199 1200 /* 1201 Native function call interface. Can be used to call canon eventprocs or arbitrary 1202 pointers. 1203 1204 NOTE: this is preliminary, interface may change in later versions! 1205 All arguments must be strings or numbers. 1206 If the function expects to modify it's arguments via a pointer, 1207 then you must provide a number that is a valid pointer. 1208 1209 You can use the "AllocateMemory" eventproc to obtain buffers. 1210 1211 If the function tries to write to a string passed from lua, Bad Things may happen. 1212 1213 This is potentially dangerous, functions exist which can destroy the onboard firmware. 1214 */ 1215 1216 /* 1217 result=call_func_ptr(ptr,...) 1218 ptr: address of a valid ARM or Thumb function, which uses the normal C calling convention. 1219 result: R0 value after the call returns 1220 */ 1221 static int luaCB_call_func_ptr( lua_State* L) 1222 { 1223 unsigned *argbuf=NULL; 1224 unsigned i; 1225 unsigned n_args = lua_gettop(L)-1; 1226 void *fptr; 1227 1228 fptr=(void *)luaL_checknumber( L, 1 ); 1229 1230 if (n_args) { 1231 argbuf=malloc(n_args * 4); 1232 if(!argbuf) { 1233 return luaL_error( L, "malloc fail" ); 1234 } 1235 if(!pack_native_args(L, 2, argbuf)) { 1236 free(argbuf); 1237 return luaL_error( L, "expected string or number" ); 1238 } 1239 } 1240 1241 lua_pushnumber( L, call_func_ptr(fptr, argbuf, n_args) ); 1242 free(argbuf); 1243 return 1; 1244 } 1245 1246 /* 1247 Call an event procedure 1248 1249 result=call_event_proc("EventprocName",...) 1250 result is the value returned by ExecuteEventProcedure, which is -1 if the eventproc is not found, 1251 or the eventproc return value (which could also be -1) 1252 NOTE: 1253 Many eventprocs are not registered by default, but can be loaded by calling another event proc 1254 Some useful ones are 1255 SystemEventInit 1256 includes AllocateMemory, FreeMemory, sprintf, memcpy, Fut functions, log ... 1257 UI_RegistDebugEventProc 1258 includes capture mode functions, PTM_ functions and much more 1259 RegisterProductTestEvent 1260 includes PT_ functions 1261 1262 Others: 1263 RegisterShootSeqEvent 1264 RegisterNRTableEvent 1265 */ 1266 1267 // grab from lowlevel 1268 extern unsigned _ExecuteEventProcedure(const char *name,...); 1269 static int luaCB_call_event_proc( lua_State* L ) 1270 { 1271 const char *evpname; 1272 unsigned *argbuf; 1273 unsigned i; 1274 unsigned n_args = lua_gettop(L); 1275 1276 evpname=luaL_checkstring( L, 1 ); 1277 1278 argbuf=malloc(n_args * 4); 1279 if (!argbuf) { 1280 return luaL_error( L, "malloc fail" ); 1281 } 1282 1283 // event proc name is first arg 1284 *argbuf = (unsigned)evpname; 1285 1286 if(!pack_native_args(L,2,argbuf+1)) { 1287 free(argbuf); 1288 return luaL_error( L, "expected string or number" ); 1289 } 1290 1291 lua_pushnumber( L, call_func_ptr(_ExecuteEventProcedure,argbuf,n_args) ); 1292 free(argbuf); 1293 return 1; 1294 } 1295 1296 #endif // OPT_LUA_CALL_NATIVE 1297 1127 1298 void register_lua_funcs( lua_State* L ) 1128 1299 { … … 1283 1454 1284 1455 FUNC(set_record); 1285 } 1456 #ifdef OPT_LUA_CALL_NATIVE 1457 FUNC(call_event_proc); 1458 FUNC(call_func_ptr); 1459 #endif 1460 } -
trunk/include/camera.h
r193 r217 1680 1680 1681 1681 // #define DNG_EXT_FROM ".CR2" 1682 1683 //---------------------------------------------------------- 1684 #elif defined (CAMERA_ixus90_sd790) 1685 #define CAM_PROPSET 2 1686 #define CAM_DRYOS 1 1687 1688 #define CAM_RAW_ROWPIX 3720 1689 #define CAM_RAW_ROWS 2772 1690 1691 #undef CAM_USE_ZOOM_FOR_MF 1692 #undef CAM_HAS_ERASE_BUTTON 1693 #define CAM_MULTIPART 1 1694 #undef CAM_HAS_IRIS_DIAPHRAGM 1695 #undef CAM_HAS_MANUAL_FOCUS 1696 1697 #define CAM_HAS_ND_FILTER 1 1698 #undef CAM_HAS_USER_TV_MODES 1699 #define CAM_SHOW_OSD_IN_SHOOT_MENU 1 1700 #define CAM_CAN_UNLOCK_OPTICAL_ZOOM_IN_VIDEO 1 1701 #define CAM_HAS_JOGDIAL 1 1702 1703 #define DNG_SUPPORT 1 1704 // pattern 1705 #define cam_CFAPattern 0x02010100 // Red Green Green Blue 1706 // color 1707 #define CAM_COLORMATRIX1 \ 1708 650591, 1000000, -199585, 1000000, -123118, 1000000, \ 1709 -69617, 1000000, 583926, 1000000, 34354, 1000000, \ 1710 -19113, 1000000, 82163, 1000000, 210786, 1000000 1711 #define cam_CalibrationIlluminant1 1 // Daylight 1712 1713 // cropping 1714 #define CAM_JPEG_WIDTH 3648 1715 #define CAM_JPEG_HEIGHT 2736 1716 #define CAM_ACTIVE_AREA_X1 6 1717 #define CAM_ACTIVE_AREA_Y1 12 1718 #define CAM_ACTIVE_AREA_X2 3690 1719 #define CAM_ACTIVE_AREA_Y2 2772 1720 1721 // camera name 1722 #define PARAM_CAMERA_NAME 4 // parameter number for GetParameterData 1723 #undef CAM_SENSOR_BITS_PER_PIXEL 1724 #undef CAM_WHITE_LEVEL 1725 #undef CAM_BLACK_LEVEL 1726 #define CAM_SENSOR_BITS_PER_PIXEL 12 1727 #define CAM_WHITE_LEVEL ((1<<CAM_SENSOR_BITS_PER_PIXEL)-1) 1728 #define CAM_BLACK_LEVEL 127 1682 1729 1683 1730 //========================================================== -
trunk/include/lolevel.h
r141 r217 111 111 112 112 extern long _strtol(const char *nptr, char **endptr, int base); 113 extern unsigned long _strtoul(const char *nptr, char **endptr, int base); 114 // DRYOS: this function is called by strtol (mode=1) and strtoul (mode=0) 115 // easier to match with sig finder 116 extern long _strtolx(const char *nptr, char **endptr, int base, int mode); 113 117 114 118 extern int _tolower(int c); … … 268 272 extern void _ScreenLock(); 269 273 extern void _SetCurrentCaptureModeType(); 274 extern unsigned _ExecuteEventProcedure(const char *name, ...); 270 275 // known in CHDK as _RefreshPhysicalScreen 271 276 //extern void _ScreenUnLock(); -
trunk/include/platform.h
r175 r217 476 476 void SetLogicalEventActive(unsigned event, unsigned state); 477 477 void SetScriptMode(unsigned mode); 478 /* 479 call C function with argument list created at runtime. 480 See lib/armutil/callfunc.S for documentation 481 */ 482 unsigned call_func_ptr(void *func, const unsigned *args, unsigned n_args); 478 483 479 484 #define started() debug_led(1) -
trunk/include/stdlib.h
r12 r217 101 101 102 102 extern long strtol(const char *nptr, char **endptr, int base); 103 extern unsigned long strtoul(const char *nptr, char **endptr, int base); 103 104 #define atoi(n) strtol((n),NULL,0) 104 105 -
trunk/lib/Makefile
r14 r217 2 2 include $(topdir)makefile.inc 3 3 4 SUBDIRS=font math ubasic lang lua 4 SUBDIRS=font math ubasic lang lua armutil 5 5 6 6 include $(topdir)bottom.inc -
trunk/lib/lua/lbaselib.c
r14 r217 97 97 unsigned long n; 98 98 luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range"); 99 n = strto l(s1, &s2, base);99 n = strtoul(s1, &s2, base); 100 100 if (s1 != s2) { /* at least one valid digit? */ 101 101 while (isspace((unsigned char)(*s2))) s2++; /* skip trailing spaces */ -
trunk/lib/lua/lobject.c
r14 r217 93 93 if (endptr == s) return 0; /* conversion failed */ 94 94 if (*endptr == 'x' || *endptr == 'X') /* maybe an hexadecimal constant? */ 95 // reyalp - use strtol 96 *result = cast_num(strtol(s, &endptr, 16)); 95 *result = cast_num(strtoul(s, &endptr, 16)); 97 96 if (*endptr == '\0') return 1; /* most common case */ 98 97 while (isspace(cast(unsigned char, *endptr))) endptr++; -
trunk/makefile.inc
r190 r217 238 238 #PLATFORM=a2000 239 239 #PLATFORMSUB=100c 240 241 #PLATFORM=ixus90_sd790 242 #PLATFORMSUB=100d 240 243 241 244 MEMISOSIZE="(&_end-&_start)" -
trunk/platform/a2000/sub/100c/stubs_entry.S
r169 r217 159 159 NSTUB(strrchr, 0xffc6c960) 160 160 NSTUB(strtol, 0xffc1cd8c) 161 NSTUB(strtolx, 0xffc1cb90) 161 162 NSTUB(time, 0xffc5327c) 162 163 NSTUB(vsprintf, 0xffc0d7f8) -
trunk/platform/a450/sub/100d/stubs_entry.S
r106 r217 180 180 // ALT: NSTUB(strrchr, 0xffcc4e9c) // 8/0 181 181 NSTUB(strtol, 0xffcc45f0) 182 NSTUB(strtoul, 0xffcc4798) 182 183 NSTUB(taskCreateHookAdd, 0xffccf3bc) 183 184 NSTUB(taskDeleteHookAdd, 0xffccf2f8) -
trunk/platform/a460/sub/100d/stubs_entry.S
r106 r217 180 180 // ALT: NSTUB(strrchr, 0xffcc4e94) // 8/0 181 181 NSTUB(strtol, 0xffcc45e8) 182 NSTUB(strtoul, 0xffcc4790) 182 183 NSTUB(taskCreateHookAdd, 0xffccf3b4) 183 184 NSTUB(taskDeleteHookAdd, 0xffccf2f0) -
trunk/platform/a470/sub/100e/stubs_entry.S
r169 r217 149 149 NSTUB(strrchr, 0xffc6e530) 150 150 NSTUB(strtol, 0xffc1da54) 151 NSTUB(strtolx, 0xffc1d858) 151 152 NSTUB(time, 0xffc50edc) 152 153 NSTUB(vsprintf, 0xffc0d80c) -
trunk/platform/a470/sub/101b/stubs_entry.S
r169 r217 149 149 NSTUB(strrchr, 0xffc6e530) 150 150 NSTUB(strtol, 0xffc1da54) 151 NSTUB(strtolx, 0xffc1d858) 151 152 NSTUB(time, 0xffc50edc) 152 153 NSTUB(vsprintf, 0xffc0d80c) -
trunk/platform/a470/sub/102c/stubs_entry.S
r169 r217 149 149 NSTUB(strrchr, 0xffc6ea4c) 150 150 NSTUB(strtol, 0xffc1da54) 151 NSTUB(strtolx, 0xffc1d858) 151 152 NSTUB(time, 0xffc513f8) 152 153 NSTUB(vsprintf, 0xffc0d80c) -
trunk/platform/a530/sub/100a/stubs_entry.S
r106 r217 169 169 // ALT: NSTUB(strrchr, 0xffec3a94) // 8/0 170 170 NSTUB(strtol, 0xffec31e8) 171 NSTUB(strtoul, 0xffec3390) 171 172 NSTUB(taskCreateHookAdd, 0xffece190) 172 173 NSTUB(taskDeleteHookAdd, 0xffece0cc) -
trunk/platform/a540/sub/100b/stubs_entry.S
r106 r217 174 174 // ALT: NSTUB(strrchr, 0xffed94c8) // 8/0 175 175 NSTUB(strtol, 0xffed8c1c) 176 NSTUB(strtoul, 0xffed8dc4) 176 177 NSTUB(taskCreateHookAdd, 0xffee3bc4) 177 178 NSTUB(taskDeleteHookAdd, 0xffee3b00) -
trunk/platform/a550/sub/100c/stubs_entry.S
r106 r217 179 179 // ALT: NSTUB(strrchr, 0xffcc0888) // 8/0 180 180 NSTUB(strtol, 0xffcbffdc) 181 NSTUB(strtoul, 0xffcc0184) 181 182 NSTUB(taskCreateHookAdd, 0xffccada8) 182 183 NSTUB(taskDeleteHookAdd, 0xffccace4) -
trunk/platform/a560/sub/100a/stubs_entry.S
r106 r217 181 181 // ALT: NSTUB(strrchr, 0xffcc9e38) // 8/0 182 182 NSTUB(strtol, 0xffcc958c) 183 NSTUB(strtoul, 0xffcc9734) 183 184 NSTUB(taskCreateHookAdd, 0xffcd4358) 184 185 NSTUB(taskDeleteHookAdd, 0xffcd4294) -
trunk/platform/a570/sub/100e/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xffcd22b8) // 8/0 183 183 NSTUB(strtol, 0xffcd1a0c) 184 NSTUB(strtoul, 0xffcd1bb4) 184 185 NSTUB(taskCreateHookAdd, 0xffcdc7d8) 185 186 NSTUB(taskDeleteHookAdd, 0xffcdc714) -
trunk/platform/a570/sub/101a/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xffcd22b8) // 8/0 183 183 NSTUB(strtol, 0xffcd1a0c) 184 NSTUB(strtoul, 0xffcd1bb4) 184 185 NSTUB(taskCreateHookAdd, 0xffcdc7d8) 185 186 NSTUB(taskDeleteHookAdd, 0xffcdc714) -
trunk/platform/a590/sub/100e/stubs_entry.S
r169 r217 154 154 NSTUB(strrchr, 0xffc74e20) 155 155 NSTUB(strtol, 0xffc1df00) 156 NSTUB(strtolx, 0xffc1dd04) 156 157 NSTUB(time, 0xffc57a88) 157 158 NSTUB(vsprintf, 0xffc0d80c) -
trunk/platform/a590/sub/101b/stubs_entry.S
r169 r217 154 154 NSTUB(strrchr, 0xffc74e20) 155 155 NSTUB(strtol, 0xffc1df00) 156 NSTUB(strtolx, 0xffc1dd04) 156 157 NSTUB(time, 0xffc57a88) 157 158 NSTUB(vsprintf, 0xffc0d80c) -
trunk/platform/a610/sub/100e/stubs_entry.S
r106 r217 142 142 // ALT: NSTUB(strrchr, 0xffeb5f18) // 8/0 143 143 NSTUB(strtol, 0xffeb566c) 144 NSTUB(strtoul, 0xffeb5814) 144 145 NSTUB(taskCreateHookAdd, 0xffec251c) 145 146 NSTUB(taskDeleteHookAdd, 0xffec2458) -
trunk/platform/a610/sub/100f/stubs_entry.S
r106 r217 142 142 // ALT: NSTUB(strrchr, 0xffeb62a0) // 8/0 143 143 NSTUB(strtol, 0xffeb59f4) 144 NSTUB(strtoul, 0xffeb5b9c) 144 145 NSTUB(taskCreateHookAdd, 0xffec28a4) 145 146 NSTUB(taskDeleteHookAdd, 0xffec27e0) -
trunk/platform/a620/sub/100f/stubs_entry.S
r106 r217 170 170 // ALT: NSTUB(strrchr, 0xffebcc3c) // 8/0 171 171 NSTUB(strtol, 0xffebc390) 172 NSTUB(strtoul, 0xffebc538) 172 173 NSTUB(taskCreateHookAdd, 0xffec9240) 173 174 NSTUB(taskDeleteHookAdd, 0xffec917c) -
trunk/platform/a630/sub/100c/stubs_entry.S
r106 r217 162 162 // ALT: NSTUB(strrchr, 0xffeeb7dc) // 8/0 163 163 NSTUB(strtol, 0xffeeaf30) 164 NSTUB(strtoul, 0xffeeb0d8) 164 165 NSTUB(taskCreateHookAdd, 0xffef5ed8) 165 166 NSTUB(taskDeleteHookAdd, 0xffef5e14) -
trunk/platform/a640/sub/100b/stubs_entry.S
r106 r217 163 163 // ALT: NSTUB(strrchr, 0xffef5704) // 8/0 164 164 NSTUB(strtol, 0xffef4e58) 165 NSTUB(strtoul, 0xffef5000) 165 166 NSTUB(taskCreateHookAdd, 0xffeffe00) 166 167 NSTUB(taskDeleteHookAdd, 0xffeffd3c) -
trunk/platform/a650/sub/100d/stubs_entry.S
r169 r217 130 130 NSTUB(strrchr, 0xffc73a74) 131 131 NSTUB(strtol, 0xffc1fe0c) 132 NSTUB(strtolx, 0xffc1fc10) 132 133 NSTUB(time, 0xffc571ac) 133 134 NSTUB(vsprintf, 0xffc0e6e4) -
trunk/platform/a700/sub/100b/stubs_entry.S
r106 r217 174 174 // ALT: NSTUB(strrchr, 0xffee0a20) // 8/0 175 175 NSTUB(strtol, 0xffee0174) 176 NSTUB(strtoul, 0xffee031c) 176 177 NSTUB(taskCreateHookAdd, 0xffeeb11c) 177 178 NSTUB(taskDeleteHookAdd, 0xffeeb058) -
trunk/platform/a710/sub/100a/stubs_entry.S
r106 r217 145 145 // ALT: NSTUB(strrchr, 0xffef9024) // 8/0 146 146 NSTUB(strtol, 0xffef8778) 147 NSTUB(strtoul, 0xffef8920) 147 148 NSTUB(taskCreateHookAdd, 0xfff03720) 148 149 NSTUB(taskDeleteHookAdd, 0xfff0365c) -
trunk/platform/a720/sub/100c/stubs_entry.S
r169 r217 116 116 NSTUB(strrchr, 0xffc71bcc) 117 117 NSTUB(strtol, 0xffc1fc0c) 118 NSTUB(strtolx, 0xffc1fa10) 118 119 NSTUB(time, 0xffc55f0c) 119 120 NSTUB(vsprintf, 0xffc0e7b4) -
trunk/platform/g7/sub/100e/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb96fc4) // 8/0 172 172 NSTUB(strtol, 0xffb96718) 173 NSTUB(strtoul, 0xffb968c0) 173 174 NSTUB(taskCreateHookAdd, 0xffba16c0) 174 175 NSTUB(taskDeleteHookAdd, 0xffba15fc) -
trunk/platform/g7/sub/100g/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb9714c) // 8/0 172 172 NSTUB(strtol, 0xffb968a0) 173 NSTUB(strtoul, 0xffb96a48) 173 174 NSTUB(taskCreateHookAdd, 0xffba1848) 174 175 NSTUB(taskDeleteHookAdd, 0xffba1784) -
trunk/platform/g7/sub/100i/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb9719c) // 8/0 172 172 NSTUB(strtol, 0xffb968f0) 173 NSTUB(strtoul, 0xffb96a98) 173 174 NSTUB(taskCreateHookAdd, 0xffba1898) 174 175 NSTUB(taskDeleteHookAdd, 0xffba17d4) -
trunk/platform/g7/sub/100j/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb97224) // 8/0 172 172 NSTUB(strtol, 0xffb96978) 173 NSTUB(strtoul, 0xffb96b20) 173 174 NSTUB(taskCreateHookAdd, 0xffba1920) 174 175 NSTUB(taskDeleteHookAdd, 0xffba185c) -
trunk/platform/g9/sub/100d/stubs_entry.S
r169 r217 135 135 NSTUB(strrchr, 0xff895cc8) 136 136 NSTUB(strtol, 0xff830d90) 137 NSTUB(strtolx, 0xff830b94) 137 138 NSTUB(time, 0xff86ba3c) 138 139 NSTUB(vsprintf, 0xff81e6f8) -
trunk/platform/g9/sub/100g/stubs_entry.S
r169 r217 135 135 NSTUB(strrchr, 0xff895cc8) 136 136 NSTUB(strtol, 0xff830d90) 137 NSTUB(strtolx, 0xff830b94) 137 138 NSTUB(time, 0xff86ba3c) 138 139 NSTUB(vsprintf, 0xff81e6f8) -
trunk/platform/g9/sub/100i/stubs_entry.S
r169 r217 135 135 NSTUB(strrchr, 0xff895cc8) 136 136 NSTUB(strtol, 0xff830d90) 137 NSTUB(strtolx, 0xff830b94) 137 138 NSTUB(time, 0xff86ba3c) 138 139 NSTUB(vsprintf, 0xff81e6f8) -
trunk/platform/generic/wrappers.c
r190 r217 339 339 } 340 340 341 unsigned long strtoul(const char *nptr, char **endptr, int base) { 342 #if CAM_DRYOS 343 return (unsigned long)_strtolx(nptr, endptr, base, 0); 344 #else 345 return _strtoul(nptr, endptr, base); 346 #endif 347 } 348 341 349 char *strpbrk(const char *s, const char *accept) { 342 350 #if !CAM_DRYOS … … 795 803 } 796 804 797 void reverse_bytes_order(char* start, int count){798 // note, we will go to count rounded up to the nearest 32799 asm volatile(800 "ldr r2, =0xFF00FF\n" // r2 = mask801 "add r1, r0, r1\n" // r1 = start + count802 "LOOP:\n"803 "ldm r0, {R4-R11}\n" // load 8 words804 805 // out = ((in>>8) & 0xFF00FF) | ((in&0xFF00FF) << 8);806 "mov r3, r4, lsr #8\n" // r3 = in >> 8807 "and r3, r3, r2\n" // r3 &= 0xFF00FF808 "and r4, r4, r2\n" // r4 = in & 0xFF00FF809 "orr r4, r3, r4, asl #8\n" // out = r3 | (r4 << 8)810 811 "mov r3, r5, lsr #8\n"812 "and r3, r3, r2\n"813 "and r5, r5, r2\n"814 "orr r5, r3, r5, asl #8\n"815 816 "mov r3, r6, lsr #8\n"817 "and r3, r3, r2\n"818 "and r6, r6, r2\n"819 "orr r6, r3, r6, asl #8\n"820 821 "mov r3, r7, lsr #8\n"822 "and r3, r3, r2\n"823 "and r7, r7, r2\n"824 "orr r7, r3, r7, asl #8\n"825 826 "mov r3, r8, lsr #8\n"827 "and r3, r3, r2\n"828 "and r8, r8, r2\n"829 "orr r8, r3, r8, asl #8\n"830 831 "mov r3, r9, lsr #8\n"832 "and r3, r3, r2\n"833 "and r9, r9, r2\n"834 "orr r9, r3, r9, asl #8\n"835 836 "mov r3, r10, lsr #8\n"837 "and r3, r3, r2\n"838 "and r10, r10, r2\n"839 "orr r10, r3, r10, asl #8\n"840 841 "mov r3, r11, lsr #8\n"842 "and r3, r3, r2\n"843 "and r11, r11, r2\n"844 "orr r11, r3, r11, asl #8\n"845 846 "stmia r0!, {r4-r11}\n" // store and increment847 848 "cmp r0, r1\n"849 "bcc LOOP\n"850 :::"r0","r1","r2","r3","r4","r5","r6","r7","r8","r9","r10","r11"851 );852 }853 854 805 #if defined (DNG_EXT_FROM) 855 806 -
trunk/platform/ixus40_sd300/sub/100j/stubs_entry.S
r106 r217 266 266 NSTUB(strtol, 0xffabbf30) 267 267 // ALT: NSTUB(strtol, 0xfff4ffe0) // 26/0 268 NSTUB(strtoul, 0xffabc0d8) 269 // ALT: NSTUB(strtoul, 0xfff50188) // 26/0 268 270 NSTUB(taskCreateHookAdd, 0xffac8a18) 269 271 // ALT: NSTUB(taskCreateHookAdd, 0xfff5df1c) // 29/0 -
trunk/platform/ixus40_sd300/sub/100k/stubs_entry.S
r106 r217 177 177 // ALT: NSTUB(strrchr, 0xffabc804) // 8/0 178 178 NSTUB(strtol, 0xffabbf58) 179 NSTUB(strtoul, 0xffabc100) 179 180 NSTUB(taskCreateHookAdd, 0xffac8a40) 180 181 NSTUB(taskDeleteHookAdd, 0xffac897c) -
trunk/platform/ixus50_sd400/sub/101a/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xffab5c5c) // 8/0 183 183 NSTUB(strtol, 0xffab53b0) 184 NSTUB(strtoul, 0xffab5558) 184 185 NSTUB(taskCreateHookAdd, 0xffac2260) 185 186 NSTUB(taskDeleteHookAdd, 0xffac219c) -
trunk/platform/ixus50_sd400/sub/101b/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xffab5cb0) // 8/0 183 183 NSTUB(strtol, 0xffab5404) 184 NSTUB(strtoul, 0xffab55ac) 184 185 NSTUB(taskCreateHookAdd, 0xffac22b4) 185 186 NSTUB(taskDeleteHookAdd, 0xffac21f0) -
trunk/platform/ixus55_sd450/sub/100b/stubs_entry.S
r106 r217 176 176 // ALT: NSTUB(strrchr, 0xffacdbe8) // 8/0 177 177 NSTUB(strtol, 0xffacd33c) 178 NSTUB(strtoul, 0xffacd4e4) 178 179 NSTUB(taskCreateHookAdd, 0xffada1ec) 179 180 NSTUB(taskDeleteHookAdd, 0xffada128) -
trunk/platform/ixus55_sd450/sub/100c/stubs_entry.S
r106 r217 176 176 // ALT: NSTUB(strrchr, 0xffacdb14) // 8/0 177 177 NSTUB(strtol, 0xffacd268) 178 NSTUB(strtoul, 0xffacd410) 178 179 NSTUB(taskCreateHookAdd, 0xffada118) 179 180 NSTUB(taskDeleteHookAdd, 0xffada054) -
trunk/platform/ixus55_sd450/sub/100d/stubs_entry.S
r106 r217 176 176 // ALT: NSTUB(strrchr, 0xffacde9c) // 8/0 177 177 NSTUB(strtol, 0xffacd5f0) 178 NSTUB(strtoul, 0xffacd798) 178 179 NSTUB(taskCreateHookAdd, 0xffada4a0) 179 180 NSTUB(taskDeleteHookAdd, 0xffada3dc) -
trunk/platform/ixus60_sd600/sub/100a/stubs_entry.S
r106 r217 170 170 // ALT: NSTUB(strrchr, 0xffb03db0) // 8/0 171 171 NSTUB(strtol, 0xffb03504) 172 NSTUB(strtoul, 0xffb036ac) 172 173 NSTUB(taskCreateHookAdd, 0xffb0eecc) 173 174 NSTUB(taskDeleteHookAdd, 0xffb0ee08) -
trunk/platform/ixus60_sd600/sub/100d/stubs_entry.S
r106 r217 170 170 // ALT: NSTUB(strrchr, 0xffb04990) // 8/0 171 171 NSTUB(strtol, 0xffb040e4) 172 NSTUB(strtoul, 0xffb0428c) 172 173 NSTUB(taskCreateHookAdd, 0xffb0faac) 173 174 NSTUB(taskDeleteHookAdd, 0xffb0f9e8) -
trunk/platform/ixus65_sd630/sub/100a/stubs_entry.S
r106 r217 170 170 // ALT: NSTUB(strrchr, 0xffb0da74) // 8/0 171 171 NSTUB(strtol, 0xffb0d1c8) 172 NSTUB(strtoul, 0xffb0d370) 172 173 NSTUB(taskCreateHookAdd, 0xffb18b90) 173 174 NSTUB(taskDeleteHookAdd, 0xffb18acc) -
trunk/platform/ixus700_sd500/sub/101a/stubs_entry.S
r106 r217 181 181 // ALT: NSTUB(strrchr, 0xffab3c98) // 8/0 182 182 NSTUB(strtol, 0xffab33ec) 183 NSTUB(strtoul, 0xffab3594) 183 184 NSTUB(taskCreateHookAdd, 0xffac029c) 184 185 NSTUB(taskDeleteHookAdd, 0xffac01d8) -
trunk/platform/ixus700_sd500/sub/101b/stubs_entry.S
r106 r217 181 181 // ALT: NSTUB(strrchr, 0xffab3ce8) // 8/0 182 182 NSTUB(strtol, 0xffab343c) 183 NSTUB(strtoul, 0xffab35e4) 183 184 NSTUB(taskCreateHookAdd, 0xffac02ec) 184 185 NSTUB(taskDeleteHookAdd, 0xffac0228) -
trunk/platform/ixus70_sd1000/sub/100c/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff918900) // 8/0 183 183 NSTUB(strtol, 0xff918054) 184 NSTUB(strtoul, 0xff9181fc) 184 185 NSTUB(taskCreateHookAdd, 0xff922e20) 185 186 NSTUB(taskDeleteHookAdd, 0xff922d5c) -
trunk/platform/ixus70_sd1000/sub/101b/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff918900) // 8/0 183 183 NSTUB(strtol, 0xff918054) 184 NSTUB(strtoul, 0xff9181fc) 184 185 NSTUB(taskCreateHookAdd, 0xff922e20) 185 186 NSTUB(taskDeleteHookAdd, 0xff922d5c) -
trunk/platform/ixus70_sd1000/sub/102a/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff918900) // 8/0 183 183 NSTUB(strtol, 0xff918054) 184 NSTUB(strtoul, 0xff9181fc) 184 185 NSTUB(taskCreateHookAdd, 0xff922e20) 185 186 NSTUB(taskDeleteHookAdd, 0xff922d5c) -
trunk/platform/ixus750_sd550/sub/100f/stubs_entry.S
r106 r217 176 176 // ALT: NSTUB(strrchr, 0xffacd6f0) // 8/0 177 177 NSTUB(strtol, 0xffacce44) 178 NSTUB(strtoul, 0xffaccfec) 178 179 NSTUB(taskCreateHookAdd, 0xffad9cf4) 179 180 NSTUB(taskDeleteHookAdd, 0xffad9c30) -
trunk/platform/ixus750_sd550/sub/100g/stubs_entry.S
r106 r217 176 176 // ALT: NSTUB(strrchr, 0xffacd6f0) // 8/0 177 177 NSTUB(strtol, 0xffacce44) 178 NSTUB(strtoul, 0xffaccfec) 178 179 NSTUB(taskCreateHookAdd, 0xffad9cf4) 179 180 NSTUB(taskDeleteHookAdd, 0xffad9c30) -
trunk/platform/ixus75_sd750/sub/100b/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff922ce4) // 8/0 183 183 NSTUB(strtol, 0xff922438) 184 NSTUB(strtoul, 0xff9225e0) 184 185 NSTUB(taskCreateHookAdd, 0xff92d204) 185 186 NSTUB(taskDeleteHookAdd, 0xff92d140) -
trunk/platform/ixus75_sd750/sub/101a/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff922ce4) // 8/0 183 183 NSTUB(strtol, 0xff922438) 184 NSTUB(strtoul, 0xff9225e0) 184 185 NSTUB(taskCreateHookAdd, 0xff92d204) 185 186 NSTUB(taskDeleteHookAdd, 0xff92d140) -
trunk/platform/ixus75_sd750/sub/102a/stubs_entry.S
r106 r217 182 182 // ALT: NSTUB(strrchr, 0xff922ce4) // 8/0 183 183 NSTUB(strtol, 0xff922438) 184 NSTUB(strtoul, 0xff9225e0) 184 185 NSTUB(taskCreateHookAdd, 0xff92d204) 185 186 NSTUB(taskDeleteHookAdd, 0xff92d140) -
trunk/platform/ixus800_sd700/sub/100b/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb0753c) // 8/0 172 172 NSTUB(strtol, 0xffb06c90) 173 NSTUB(strtoul, 0xffb06e38) 173 174 NSTUB(taskCreateHookAdd, 0xffb12658) 174 175 NSTUB(taskDeleteHookAdd, 0xffb12594) -
trunk/platform/ixus800_sd700/sub/101b/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb07534) // 8/0 172 172 NSTUB(strtol, 0xffb06c88) 173 NSTUB(strtoul, 0xffb06e30) 173 174 NSTUB(taskCreateHookAdd, 0xffb12650) 174 175 NSTUB(taskDeleteHookAdd, 0xffb1258c) -
trunk/platform/ixus80_sd1100/sub/100c/stubs_entry.S
r169 r217 143 143 NSTUB(strrchr, 0xff8920cc) 144 144 NSTUB(strtol, 0xff82e3cc) 145 NSTUB(strtolx, 0xff82e1d0) 145 146 NSTUB(time, 0xff866d48) 146 147 NSTUB(vsprintf, 0xff81d80c) -
trunk/platform/ixus80_sd1100/sub/101a/stubs_entry.S
r169 r217 143 143 NSTUB(strrchr, 0xff8920cc) 144 144 NSTUB(strtol, 0xff82e3cc) 145 NSTUB(strtolx, 0xff82e1d0) 145 146 NSTUB(time, 0xff866d48) 146 147 NSTUB(vsprintf, 0xff81d80c) -
trunk/platform/ixus850_sd800/sub/100e/stubs_entry.S
r106 r217 171 171 // ALT: NSTUB(strrchr, 0xffb59d18) // 8/0 172 172 NSTUB(strtol, 0xffb5946c) 173 NSTUB(strtoul, 0xffb59614) 173 174 NSTUB(taskCreateHookAdd, 0xffb64414) 174 175 NSTUB(taskDeleteHookAdd, 0xffb64350) -
trunk/platform/ixus860_sd870/sub/100c/stubs_entry.S
r169 r217 130 130 NSTUB(strrchr, 0xff88fad8) 131 131 NSTUB(strtol, 0xff82ff78) 132 NSTUB(strtolx, 0xff82fd7c) 132 133 NSTUB(time, 0xff865744) 133 134 NSTUB(vsprintf, 0xff81e7b8) -
trunk/platform/ixus870_sd880/sub/100e/stubs_entry.S
r169 r217 160 160 NSTUB(strrchr, 0xff89278c) 161 161 NSTUB(strtol, 0xff82d8b0) 162 NSTUB(strtolx, 0xff82d6b4) 162 163 // Best match: 83% 163 164 NSTUB(time, 0xff86b83c) -
trunk/platform/ixus870_sd880/sub/101a/stubs_entry.S
r169 r217 160 160 NSTUB(strrchr, 0xff89278c) 161 161 NSTUB(strtol, 0xff82d8b0) 162 NSTUB(strtolx, 0xff82d6b4) 162 163 // Best match: 83% 163 164 NSTUB(time, 0xff86b83c) -
trunk/platform/ixus870_sd880/sub/102b/stubs_entry.S
r169 r217 160 160 NSTUB(strrchr, 0xff89278c) 161 161 NSTUB(strtol, 0xff82d8b0) 162 NSTUB(strtolx, 0xff82d6b4) 162 163 // Best match: 83% 163 164 NSTUB(time, 0xff86b83c) -
trunk/platform/ixus950_sd850/sub/100c/stubs_entry.S
r106 r217 183 183 // ALT: NSTUB(strrchr, 0xff924140) // 8/0 184 184 NSTUB(strtol, 0xff923894) 185 NSTUB(strtoul, 0xff923a3c) 185 186 NSTUB(taskCreateHookAdd, 0xff92e660) 186 187 NSTUB(taskDeleteHookAdd, 0xff92e59c) -
trunk/platform/ixus960_sd950/sub/100d/stubs_entry.S
r169 r217 129 129 NSTUB(strrchr, 0xff88fdc4) 130 130 NSTUB(strtol, 0xff82ff20) 131 NSTUB(strtolx, 0xff82fd24) 131 132 NSTUB(time, 0xff865ac8) 132 133 NSTUB(vsprintf, 0xff81e6f0) -
trunk/platform/ixus970_sd890/sub/100b/stubs_entry.S
r169 r217 146 146 NSTUB(strrchr, 0xff89423c) 147 147 NSTUB(strtol, 0xff82e438) 148 NSTUB(strtolx, 0xff82e23c) 148 149 NSTUB(time, 0xff866fd0) 149 150 NSTUB(vsprintf, 0xff81d744) -
trunk/platform/ixus970_sd890/sub/100c/stubs_entry.S
r169 r217 146 146 NSTUB(strrchr, 0xff89423c) 147 147 NSTUB(strtol, 0xff82e438) 148 NSTUB(strtolx, 0xff82e23c) 148 149 NSTUB(time, 0xff866fd0) 149 150 NSTUB(vsprintf, 0xff81d744) -
trunk/platform/ixus970_sd890/sub/100f/stubs_entry.S
r169 r217 146 146 NSTUB(strrchr, 0xff8941c0) 147 147 NSTUB(strtol, 0xff82e434) 148 NSTUB(strtolx, 0xff82e238) 148 149 NSTUB(time, 0xff866f54) 149 150 NSTUB(vsprintf, 0xff81d744) -
trunk/platform/ixus980_sd990/sub/100e/stubs_entry.S
r169 r217 160 160 NSTUB(strrchr, 0xff89763c) 161 161 NSTUB(strtol, 0xff82dc88) 162 NSTUB(strtolx, 0xff82da8c) 162 163 // Best match: 83% 163 164 NSTUB(time, 0xff8703ec) -
trunk/platform/ixus980_sd990/sub/101b/stubs_entry.S
r169 r217 160 160 NSTUB(strrchr, 0xff89763c) 161 161 NSTUB(strtol, 0xff82dc88) 162 NSTUB(strtolx, 0xff82da8c) 162 163 // Best match: 83% 163 164 NSTUB(time, 0xff8703ec) -
trunk/platform/ixusizoom_sd30/sub/100g/stubs_entry.S
r106 r217 178 178 // ALT: NSTUB(strrchr, 0xffaca6dc) // 8/0 179 179 NSTUB(strtol, 0xffac9e30) 180 NSTUB(strtoul, 0xffac9fd8) 180 181 NSTUB(taskCreateHookAdd, 0xffad6ce0) 181 182 NSTUB(taskDeleteHookAdd, 0xffad6c1c) -
trunk/platform/s2is/sub/100e/stubs_entry.S
r106 r217 174 174 // ALT: NSTUB(strrchr, 0xffaee57c) // 8/0 175 175 NSTUB(strtol, 0xffaedcd0) 176 NSTUB(strtoul, 0xffaede78) 176 177 NSTUB(taskCreateHookAdd, 0xffafab80) 177 178 NSTUB(taskDeleteHookAdd, 0xffafaabc) -
trunk/platform/s2is/sub/100f/stubs_entry.S
r106 r217 183 183 // ALT: NSTUB(strrchr, 0xffaee5fc) // 8/0 184 184 NSTUB(strtol, 0xffaedd50) 185 NSTUB(strtoul, 0xffaedef8) 185 186 NSTUB(taskCreateHookAdd, 0xffafac00) 186 187 NSTUB(taskDeleteHookAdd, 0xffafab3c) -
trunk/platform/s2is/sub/100g/stubs_entry.S
r106 r217 183 183 // ALT: NSTUB(strrchr, 0xffaee388) // 8/0 184 184 NSTUB(strtol, 0xffaedadc) 185 NSTUB(strtoul, 0xffaedc84) 185 186 NSTUB(taskCreateHookAdd, 0xffafa98c) 186 187 NSTUB(taskDeleteHookAdd, 0xffafa8c8) -
trunk/platform/s3is/sub/100a/stubs_entry.S
r106 r217 175 175 // ALT: NSTUB(strrchr, 0xffb4f73c) // 8/0 176 176 NSTUB(strtol, 0xffb4ee90) 177 NSTUB(strtoul, 0xffb4f038) 177 178 NSTUB(taskCreateHookAdd, 0xffb5a858) 178 179 NSTUB(taskDeleteHookAdd, 0xffb5a794) -
trunk/platform/s5is/sub/101a/stubs_entry.S
r169 r217 142 142 NSTUB(strrchr, 0xff8b32a0) 143 143 NSTUB(strtol, 0xff831dac) 144 NSTUB(strtolx, 0xff831bb0) 144 145 NSTUB(time, 0xff870bd0) 145 146 NSTUB(vsprintf, 0xff81e5f0) -
trunk/platform/s5is/sub/101b/stubs_entry.S
r169 r217 142 142 NSTUB(strrchr, 0xff8b31d8) 143 143 NSTUB(strtol, 0xff831ce4) 144 NSTUB(strtolx, 0xff831ae8) 144 145 NSTUB(time, 0xff870b08) 145 146 NSTUB(vsprintf, 0xff81e528) -
trunk/platform/sx1/sub/200h/stubs_entry.S
r169 r217 162 162 NSTUB(strrchr, 0xff8a081c) 163 163 NSTUB(strtol, 0xff82de30) 164 NSTUB(strtolx, 0xff82dc34) 164 165 // Best match: 83% 165 166 NSTUB(time, 0xff877c1c) -
trunk/platform/sx1/sub/201a/stubs_entry.S
r169 r217 162 162 NSTUB(strrchr, 0xff8a081c) 163 163 NSTUB(strtol, 0xff82de30) 164 NSTUB(strtolx, 0xff82dc34) 164 165 // Best match: 83% 165 166 NSTUB(time, 0xff877c1c) -
trunk/platform/sx10/sub/100c/stubs_entry.S
r169 r217 163 163 NSTUB(strrchr, 0xff89b918) 164 164 NSTUB(strtol, 0xff82dd4c) 165 NSTUB(strtolx, 0xff82db50) 165 166 // Best match: 83% 166 167 NSTUB(time, 0xff873764) -
trunk/platform/sx10/sub/101a/stubs_entry.S
r169 r217 163 163 NSTUB(strrchr, 0xff89b920) 164 164 NSTUB(strtol, 0xff82dd4c) 165 NSTUB(strtolx, 0xff82db50) 165 166 // Best match: 83% 166 167 NSTUB(time, 0xff87376c) -
trunk/platform/sx10/sub/101b/stubs_entry.S
r169 r217 163 163 NSTUB(strrchr, 0xff89b9c0) 164 164 NSTUB(strtol, 0xff82dd4c) 165 NSTUB(strtolx, 0xff82db50) 165 166 // Best match: 83% 166 167 NSTUB(time, 0xff87380c) -
trunk/platform/sx10/sub/102b/stubs_entry.S
r169 r217 163 163 NSTUB(strrchr, 0xff89b9c0) 164 164 NSTUB(strtol, 0xff82dd4c) 165 NSTUB(strtolx, 0xff82db50) 165 166 // Best match: 83% 166 167 NSTUB(time, 0xff87380c) -
trunk/platform/sx10/sub/103a/stubs_entry.S
r169 r217 163 163 NSTUB(strrchr, 0xff89b9c0) 164 164 NSTUB(strtol, 0xff82dd4c) 165 NSTUB(strtolx, 0xff82db50) 165 166 // Best match: 83% 166 167 NSTUB(time, 0xff87380c) -
trunk/platform/sx100is/sub/100b/stubs_entry.S
r169 r217 133 133 NSTUB(strrchr, 0xffc7661c) 134 134 NSTUB(strtol, 0xffc20338) 135 NSTUB(strtolx, 0xffc2013c) 135 136 NSTUB(time, 0xffc57f6c) 136 137 NSTUB(vsprintf, 0xffc0e7b4) -
trunk/platform/sx100is/sub/100c/stubs_entry.S
r169 r217 133 133 NSTUB(strrchr, 0xffc76650) 134 134 NSTUB(strtol, 0xffc20338) 135 NSTUB(strtolx, 0xffc2013c) 135 136 NSTUB(time, 0xffc57fa0) 136 137 NSTUB(vsprintf, 0xffc0e7b4) -
trunk/platform/sx110is/sub/100b/stubs_entry.S
r169 r217 159 159 NSTUB(strrchr, 0xffc74a08) 160 160 NSTUB(strtol, 0xffc1d48c) 161 NSTUB(strtolx, 0xffc1d290) 161 162 NSTUB(time, 0xffc59470) 162 163 NSTUB(vsprintf, 0xffc0d7f8) -
trunk/platform/sx200is/sub/100c/stubs_entry.S
r169 r217 154 154 NSTUB(strrchr, 0xff88fca8) 155 155 NSTUB(strtol, 0xff82d3f4) 156 NSTUB(strtolx, 0xff82d1f8) 156 157 // Best match: 86% 157 158 NSTUB(time, 0xff86e4e4) -
trunk/platform/tx1/sub/100g/stubs_entry.S
r106 r217 177 177 // ALT: NSTUB(strrchr, 0xff923bbc) // 8/0 178 178 NSTUB(strtol, 0xff923310) 179 NSTUB(strtoul, 0xff9234b8) 179 180 NSTUB(taskCreateHookAdd, 0xff92e0dc) 180 181 NSTUB(taskDeleteHookAdd, 0xff92e018) -
trunk/platform/tx1/sub/101b/stubs_entry.S
r106 r217 177 177 // ALT: NSTUB(strrchr, 0xff923bbc) // 8/0 178 178 NSTUB(strtol, 0xff923310) 179 NSTUB(strtoul, 0xff9234b8) 179 180 NSTUB(taskCreateHookAdd, 0xff92e0dc) 180 181 NSTUB(taskDeleteHookAdd, 0xff92e018) -
trunk/tools/sig_ref_dryos_1.txt
r169 r217 104 104 GetFocusLensSubjectDistance 0xFFCFDB3C 105 105 GetFocusLensSubjectDistanceFromLens 0xFFCFDE48 22 106 strtolx 0xFFC1FA10 -
trunk/tools/sig_ref_vxworks_1.txt
r106 r217 136 136 PostLogicalEventForNotPowerType 0xFFD44F04 137 137 SetCurrentCaptureModeType 0xFFD76E1C 16 138 strtoul 0xFFEB5814 -
trunk/tools/signatures_dryos.h
r169 r217 3134 3134 { -1, -1, -1 }, 3135 3135 /* 19/22 */ 3136 }; 3137 3138 static FuncSig func_sig_strtolx_1[] = { 3139 { 1, 0xe1b09001, 0xfdffffff }, // mov:6:0xE1B09001 3140 { 2, 0xe1a0b000, 0xfdffffff }, // mov:6:0xE1A0B000 3141 { 3, 0xe59f11f8, 0xfdffffff }, // ldr:4:0xE59F11F8 3142 { 4, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004 3143 { 5, 0xe1a0400b, 0xfdffffff }, // mov:6:0xE1A0400B 3144 { 6, 0xe1a0a001, 0xfdffffff }, // mov:6:0xE3A0A001 3145 { 7, 0xe1a08000, 0xfdffffff }, // mov:6:0xE3A08000 3146 { 8, 0xe1a06002, 0xfdffffff }, // mov:6:0xE1A06002 3147 { 9, 0xe1a05000, 0xfdffffff }, // mov:6:0xE3A05000 3148 { 10, 0x1589b000, 0xfdffffff }, // str:4:0x1589B000 3149 { 13, 0xe1100040, 0xfdffffff }, // tst:7:0xE3100040 3150 { 14, 0x10844001, 0xfdffffff }, // add:6:0x12844001 3151 { 15, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFA 3152 { 17, 0xe150002d, 0xfdffffff }, // cmp:7:0xE350002D 3153 { 19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001 3154 { 20, 0xe150002b, 0xfdffffff }, // cmp:7:0xE350002B 3155 { 21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000000 3156 { 22, 0xe0844001, 0xfdffffff }, // add:6:0xE2844001 3157 { 23, 0xe1560000, 0xfdffffff }, // cmp:7:0xE3560000 3158 { 24, 0xe58d4000, 0xfdffffff }, // str:4:0xE58D4000 3159 { 25, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A00000E 3160 { 27, 0xe1500030, 0xfdffffff }, // cmp:7:0xE3500030 3161 { 28, 0x11a0600a, 0xfdffffff }, // mov:6:0x13A0600A 3162 { 29, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000025 3163 { 31, 0xe1500078, 0xfdffffff }, // cmp:7:0xE3500078 3164 { -1, -1, -1 }, 3165 /* 25/32 */ 3136 3166 }; 3137 3167 … … 4735 4765 { "strrchr", func_sig_strrchr_2 }, 4736 4766 { "strtol", func_sig_strtol_1 }, 4767 { "strtolx", func_sig_strtolx_1 }, 4737 4768 { "time", func_sig_time_1 }, 4738 4769 { "time", func_sig_time_2 }, -
trunk/tools/signatures_vxworks.h
r106 r217 3620 3620 { -1, -1, -1 }, 3621 3621 /* 15/16 */ 3622 }; 3623 3624 static FuncSig func_sig_strtoul_1[] = { 3625 { 0, 0xe04dd004, 0xfdffffff }, // sub:6:0xE24DD004 3626 { 2, 0xe58d1024, 0xfdffffff }, // str:4:0xE58D1024 3627 { 3, 0xe59f6168, 0xfdffffff }, // ldr:4:0xE59F6168 3628 { 4, 0xe1a04000, 0xfdffffff }, // mov:6:0xE3A04000 3629 { 5, 0xe1a07000, 0xfdffffff }, // mov:6:0xE1A07000 3630 { 6, 0xe1a05002, 0xfdffffff }, // mov:6:0xE1A05002 3631 { 7, 0xe5966000, 0xfdffffff }, // ldr:4:0xE5966000 3632 { 8, 0xe1a09000, 0xfdffffff }, // mov:6:0xE1A09000 3633 { 11, 0xe1130028, 0xfdffffff }, // tst:7:0xE3130028 3634 { 12, 0x1a000000, 0xff000000 }, // b, bl:3:0x1AFFFFFB 3635 { 13, 0xe15b002d, 0xfdffffff }, // cmp:7:0xE35B002D 3636 { 14, 0x01a04001, 0xfdffffff }, // mov:6:0x03A04001 3637 { 15, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000 3638 { 16, 0xe15b002b, 0xfdffffff }, // cmp:7:0xE35B002B 3639 { 18, 0xe1520000, 0xfdffffff }, // cmp:7:0xE3520000 3640 { 19, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000001 3641 { 20, 0xe1520010, 0xfdffffff }, // cmp:7:0xE3520010 3642 { 21, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000008 3643 { 22, 0xe15b0030, 0xfdffffff }, // cmp:7:0xE35B0030 3644 { 23, 0x1a000000, 0xff000000 }, // b, bl:3:0x1A000006 3645 { 25, 0xe1500078, 0xfdffffff }, // cmp:7:0xE3500078 3646 { 26, 0x0a000000, 0xff000000 }, // b, bl:3:0x0A000000 3647 { 27, 0xe1500058, 0xfdffffff }, // cmp:7:0xE3500058 3648 { 29, 0x00899002, 0xfdffffff }, // add:6:0x02899002 3649 { 30, 0x01a05010, 0xfdffffff }, // mov:6:0x03A05010 3650 { 31, 0xe1550000, 0xfdffffff }, // cmp:7:0xE3550000 3651 { -1, -1, -1 }, 3652 /* 26/32 */ 3622 3653 }; 3623 3654 … … 5509 5540 { "strrchr", func_sig_strrchr_2 }, 5510 5541 { "strtol", func_sig_strtol_1 }, 5542 { "strtoul", func_sig_strtoul_1 }, 5511 5543 { "taskCreateHookAdd", func_sig_taskCreateHookAdd_1 }, 5512 5544 { "taskDeleteHookAdd", func_sig_taskDeleteHookAdd_1 },