I get random crash with this code i notice in DNG when i press and hold shoot button so a series of RAW is shoot.
savetime of RAW is between 1.470 sec and 1.780 sec in DNG and 1.260 sec and 1.429 sec in CRW.
when shoot not RAW, then 2-3 fps are record /sec.so the camera is fast in generel
char *hook_raw_image_addr() //ASM1989 DONE FOR IXUS 1000
{
if (*((int*)0x34D0) != 0) // 34C4 + C -> FF885154 ->FF885180 (ixus 1000)
return (char*)(0x46000000); // at FFB8ECF4 pointed at aSsimgprocbuf_c DCB "SsImgProcBuf.c",0
else
return (char*) 0x4132CD20; // found at[search CRAW BUF]
}
char *hook_alt_raw_image_addr()
{
// Appears to be two raw buffers (this returns inactive buffer)
// Addresses below found in table at FFB9922C, ref at FF88883C
// used in _sub_FF888630__SsImgProcBuf.c__0
// checks [0x36a0 + 0xc] --> defines which buffer is active
if (*((int*)0x34D0) == 0)
return (char*) 0x46000000;
else
return (char*) 0x4132CD20;
}
but when i change code to default so hook_alt_raw_image_addr
return same address as hook_raw_image_addr
i get always crash on 2. shoot .happen in DNG and crw mode when the camera show busy(do darkframe subtraction) i think.
.I try several places of the rawhook.but always same.
it seem happen during RAW save, because i try out a sleep here, but not help.Raw Buffer cached on or off too not help
when i use a slower SD card, save time need around 2.5 sec and Camera never crash when camera show busy.I verify that often, with same result.
also camera never crash, when not busy is show (i guess no darkframe subtraction then)
void __attribute__((naked,noinline)) capt_seq_hook_raw_here()
{
asm volatile("STMFD SP!, {R0-R12,LR}\n");
raw_save_stage = RAWDATA_AVAILABLE;
core_rawdata_available();
while (raw_save_stage != RAWDATA_SAVED){
_SleepTask(10);
}
+ _SleepTask(1000);
asm volatile("LDMFD SP!, {R0-R12,PC}\n");
}
romlog show this when crash
ASSERT!! FsIoNotify.c Line 457
Occured Time 2011:01:27 11:24:20
Task ID: 17236003
Task name: SpyTask
SP: 0x0038B958
StackDump:
0x00000000
0xFF8723B8
0x000001C9
0x00000000
0x00000003
0x00000101
0x001B85BC
0x00000000
0x19980218
0x19980218
0x0038B9C4
0xFF8724DC
0x00000101
0x00000001
0x001B85BC
0x00000003
0x00000000
0xFF838050
0x001A6A64
0x001B85CC
0x00000316
0x001B85A8
0x19980218
0x0018B4C4
0x19980218
0x0038B9C8
0x0017FBBB
0x0018B4B4
0x001A6A3C
0x000000B1
0x4132CD20
0x4132CD20
0x00000000
0x00000000
0x00000000
0x00000000
0xFF816DB0
0xFF8128B0
0x00000014
0xFF83B5B8
0x00000000
0x01312D00
0x001B7834
0x001B6824
0x00000000
0x000000B1
0x19980218
0x00172E03
0x00372BB8
0x19980218
0x19980218
0xFF816B74
0x19980218
0x19980218
0x00000808
ShootConDump:
01 02 07 08 09 09 0a 09 0f 0f
CameraConDump:
07 0a 02 0d 09 01 0f 0f 0f 0f
00009710: SS:LoadTest:10
00009720: SS:PreCapt
00009750: UI:DisplayPhysicalScreenCBR
00009750: UI:Re ScreenUnLock
00009750: UI:ScreenUnLock
00009770: UI:ShootState:0x2
00009770: UI:ClearEventComp
00009770: UI:DisplayPhysicalScreenCBR
00009770: UI:DisplayPhysicalScreenCBR
00010430: UI:ShootSeqToUI:0x2006:adr:0x45,Para:69
00010430: UI:ShtCon_SetPreCapt
00010430: UI:DSIC:62,0
00010440: UI:ScreenLock
00010490: UI:ScreenUnLock
00010510: UI:_ResetShootingMode
00010520: UI:_EntryPrepareShoot
00010520: UI:ShootState:0x7
00010520: UI:DisplayPhysicalScreenCBR
00011640: UI:Button:0x000009A3:PressSwTwo
00011640: UI:ShootState:0x8
00011650: UI:ShootState:0x9
00011650: UI:ShtCon_ContiShootPicture
00011650: UI:DSIC:14,0
00011650: UI:_MuteOn
00011650: UI:DSIC:43,0
00011650: UI:DispSwCon_MuteOnPhysicalScreen
00011650: UI:MuteOnPhysicalScreen
00011650: SS:Shoot
00011650: UI:DSIC:63,0
00011660: UI:ScreenLock
00011670: SS: Raw[1]
00011670: SS: Raw[1]
00011670: UI:ScreenUnLock
00011690: UI:ScreenLock
00011690: UI:ScreenUnLock
00011720: UI:DisplayPhysicalScreenCBR
00011720: UI:DisplayPhysicalScreenCBR
00011820: UI:ShootSeqToUI:0x2022:adr:0,Para:0
00011830: UI:DSIC:64,0
00014560: UI:DSIC:45,0
00014560: UI:DispSwCon_MuteOffPhysicalScreen
00014560: UI:MuteOffPhysicalScreen
00015150: UI:ShootSeqToUI:0x2007:adr:0x196,Para:406
00015150: SS: Raw[1]
00015150: SS: Raw[1]
00015160: UI:ShootState:0x9
00015160: UI:ShtCon_ContiShootPicture
00015160: UI:DSIC:14,0
00015160: SS:Shoot
00015160: UI:DSIC:63,0
00015170: UI:ScreenLock
00015170: SS: Raw[2]
00015170: SS: Raw[2]
00015170: UI:ScreenUnLock
00015180: UI:ScreenLock
00015180: UI:ScreenUnLock
00015190: UI:DisplayPhysicalScreenCBR
00015190: UI:ShootSeqToUI:0x2001:adr:0,Para:0
00015190: UI:Sht_CancelStrobeChargeTimer
00015190: UI:DSIC:4c,0
00015190: UI:ShootSeqToUI:0x2008:adr:0x196,Para:406
00015200: UI:_MuteOff
00015200: UI:DSIC:44,0
00015200: UI:ScreenLock
00015200: UI:ScreenUnLock
00015200: UI:ShootState:0xA
00015200: UI:ShtCon_StartReview
00015210: UI:_EntryActionReview
00015210: SS:StartRev
00015210: UI:LogicalEvent:0x311f:adr:0,Para:0
00015220: UI:DisplayPhysicalScreenCBR
00015220: UI:DisplayPhysicalScreenCBR
00015220: UI:ShootState:0x9
00015300: UI:DSIC:47,0
00015300: UI:DSIC:46,0
00015300: SS: Raw[1]
00015300: SS: Raw[1]
00015310: UI:ShootSeqToUI:0x201e:adr:0x196,Para:406
00015310: UI:ShootSeqToUI:0x2029:adr:0x196,Para:406
00015310: UI:comp
00015310: SS:NextAvail(3),ReviewAvail(5)
00015330: UI:ShootSeqToUI:0x2022:adr:0,Para:0
00015330: UI:DSIC:64,0