1 #include "lolevel.h" 2 #include "platform.h" 3 #include "core.h" 4 5 #define USE_STUBS_NRFLAG 1 // see stubs_entry.S 6 #define NR_AUTO (0) // have to explictly reset value back to 0 to enable auto 7 8 #include "../../../generic/capt_seq.c" 9 10 void __attribute__((naked,noinline)) block_sv_cooking() 11 { 12 // On G1X (possibly others), when Tv >= 1s and ISO >= 400, then the camera shoots at 1/2 ISO and cooks the JPG/CR2 image data to compensate 13 // Setting this property blocks the firmware from doing this. 14 asm volatile ( 15 " MOV R2, #2 \n" 16 " ADD R1, PC, #4 \n" 17 " MOV R0, #77 \n" 18 " B _SetPropertyCase \n" 19 " .word 1 \n" 20 ); 21 }