Well, this is a strange one (and applies to some other cameras).
If I comment-out the call to iso override in capt_seq.c everything works just fine.
Changing the mode dial and shooting with the remote.
If I do not comment-out iso override and boot with camera in 'C' mode it will crash.
If camera started in 'P' mode everything OK, can switch to 'C' mode after some delay.
So, this was independent of taking a shot with the remote.
The iso override at present only consists of the following :-
void __attribute__((naked,noinline)) shooting_expo_iso_override(void)
{
asm volatile ("STMFD SP!, {R0-R12,LR}\n");
if (state_kbd_script_run && photo_param_put_off.sv96)
{
shooting_set_sv96(photo_param_put_off.sv96, SET_NOW);
}
asm volatile ("LDMFD SP!, {R0-R12,LR}\n");
}
No script should be running anyway.
Changing the code to this seems to fix the problem :-
void __attribute__((naked,noinline)) shooting_expo_iso_override(void)
{
asm volatile ("STMFD SP!, {R0-R12,LR}\n");
if ((state_kbd_script_run) && (photo_param_put_off.sv96)&& (get_tick_count()>10000))
{
shooting_set_sv96(photo_param_put_off.sv96, SET_NOW);
}
asm volatile ("LDMFD SP!, {R0-R12,LR}\n");
}
I have no idea why.
I should not .. but I am tempted to leave it at that.
For cameras that branch to iso override in capt_seq.c, is there anything else that I should be aware of ?