core/kbd.c:165, kbd_sched_shoot kbd_sched_delay(conf.script_shoot_delay*100);// XXX FIXME find out how to wait to jpeg save finished
Now, in my opinion all the information you found should be made accessible from scripts, not just the (improved) equivalent of propcase 205/206. [...]Most importantly I very fear that this value (if even found in all firmwares) may not behave identically in all cameras (especially between the different digic platforms). This needs to be investigated and if there are differences, some sort of a compromise or mapping should be thought of.
Your table lists "shutter -" for the three last ones. But one can hold the shutter half or full pressed during shooting/processing/saving/review. Do the values differ in those cases?
Also, one can full-press the shutter but still have the camera autofocus&exposure during full press or when shutter has already been released. Does this make a difference?
platform/xxx/sub/xxx/stubs_min.S:14+DEF(shoot_state,0x2568)include/platorm.h:457+extern int shoot_state;lib/ubasic/tokenizer.c:132+ {"get_shoot_state", TOKENIZER_GET_SHOOT_STATE},lib/ubasic/tokenizer.h:174+ TOKENIZER_GET_SHOOT_STATE,lib/ubasic/ubasic.c:244,factor+case TOKENIZER_GET_SHOOT_STATE:+ accept(TOKENIZER_GET_SHOOT_STATE);+ r = shooting_get_shoot_state();+ break;include/platorm.h:354+short shooting_get_shoot_state();platform/generic/shooting.c:659+short shooting_get_shoot_state()+{+ return shoot_state; // to change to switch to simplify, and move to platform/xxx/lib.c if platform dependant+}
@title Test get_shoot_stategosub "get_values"print "rel",a,b,c,d,e,f,g,hrem should be 0...0press "shoot_half"gosub "get_values"print "half",a,b,c,d,e,f,g,hrem should be [1] 2...2 7...7press "shoot_full"gosub "get_values"print "full",a,b,c,d,e,f,g,hrelease "shoot_full"release "shoot_half"rem should be 9...9 12...12gosub "get_values"print "rel",a,b,c,d,e,f,g,hrem should be [11] 0...0end:get_values a=get_shoot_state sleep 240 b=get_shoot_state sleep 240 c=get_shoot_state sleep 240 d=get_shoot_state sleep 240 e=get_shoot_state sleep 240 f=get_shoot_state sleep 240 g=get_shoot_state sleep 240 h=get_shoot_state sleep 210 return
ROM:FF82D5B0 EXPORT _sub_FF82D5B0__ShootState.c__225ROM:FF82D5B0 _sub_FF82D5B0__ShootState.c__225 ; CODE XREF: sub_FF82DA04+30pROM:FF82D5B0 ; sub_FF82E078+84p ...ROM:FF82D5B0 LDR R3, =0x2568ROM:FF82D5B4 STMFD SP!, {R4,R5,LR}ROM:FF82D5B8 MOV R4, R0ROM:FF82D5BC LDR R5, =0x2574ROM:FF82D5C0 LDR R1, =aShootstate0xXROM:FF82D5C4 STR R4, [R3]ROM:FF82D5C8 MOV R0, #0x20ROM:FF82D5CC MOV R2, R4ROM:FF82D5D0 BL _sub_FF8158A4__CameraLog.c__130 ; LOCATION: CameraLog.c:130ROM:FF82D5D4 LDRH R12, [R5]ROM:FF82D5D8 CMP R12, #0xAROM:FF82D5DC MOV R3, #0ROM:FF82D5E0 LDR R0, =aShootstate_cROM:FF82D5E4 MOV R1, #0xE1ROM:FF82D5E8 STREQH R3, [R5]ROM:FF82D5EC MOVEQ R12, R3ROM:FF82D5F0 CMP R12, #9ROM:FF82D5F4 BLS loc_FF82D600ROM:FF82D5F8 BL DebugAssertROM:FF82D5FC LDRH R12, [R5]ROM:FF82D600ROM:FF82D600 loc_FF82D600 ; CODE XREF: _sub_FF82D5B0__ShootState.c__225+44jROM:FF82D600 LDRH R3, [R5]ROM:FF82D604 LDR R2, =0x2576ROM:FF82D608 ADD R1, R12, #1ROM:FF82D60C STRB R4, [R2,R3]ROM:FF82D610 STRH R1, [R5]ROM:FF82D614 LDMFD SP!, {R4,R5,PC}ROM:FF82D614 ; End of function _sub_FF82D5B0__ShootState.c__225
ffc1b9c0: 6f6f6853 svcvs 0x006f6853ffc1b9c4: 61745374 cmnvs r4, r4, ror r3ffc1b9c8: 632e6574 teqvs lr, #486539264 ; 0x1d000000ffc1b9cc: 00000000 andeq r0, r0, r0ffc1b9d0: e59f3060 ldr r3, [pc, #96] ; ffc1ba38 <_binary_dump_bin_start+0x1ba38>ffc1b9d4: e92d4030 push {r4, r5, lr}ffc1b9d8: e1a04000 mov r4, r0
ffc1ba38: 0000253c andeq r2, r0, ip, lsr r5
if (debug_vals_show) {-sprintf(osd_buf, "1:%8x ", physw_status[0]);+sprintf(osd_buf, "1:%8x ", *((unsigned int*)0x253c));
So you confirm that there's no separate indications found for "shooting" and "processing", such "shooting + processing"?
rem Script for ShootState behavior testing. Samples get_shoot_staterem output to the ubasic log file for different states of the shootingrem process.rem Should be tried in various camera modes, such as:rem flash on/offrem Ae lock on/offrem review disabled/enabledrem RAW on/offrem burst mode / single shot mode / timer moderem dark frame subtraction ("noise reduction") on/off, using large meas time and >1s exposure timerem M mode, P moderem Focus auto/manual with safety MF disabledrem M mode + manual focus + safety MF disabled + ISO100 + user white balance@title Test get_shoot_state @param a meas time (*0.4s)@default a 10a=a*10if a<0 then a=1print_screen 1print "ShootState log"print "=============="print " "print "P1: Camera idle:"T=get_tick_countfor A=1 to a step 1 print get_shoot_statenext Aprint get_tick_count-T " ms for " a " steps"print " "print "P2: press shoot_half:"press "shoot_half"for A=1 to a step 1 print get_shoot_statenext Aprint " "print "P3: press shoot_full:"press "shoot_full"for A=1 to a step 1 print get_shoot_statenext Aprint " "print "P4: release shoot_full:"release "shoot_full"for A=1 to a step 1 print get_shoot_statenext Arem give camera time to settle to an idle stateprint " "print "10 second delay..."sleep 10000print " "print "P6: click shoot_full"click "shoot_full"for A=1 to a step 1 print get_shoot_statenext Arem give camera time to settle to an idle stateprint " "print "10 second delay..."sleep 10000print " "print "P5: shoot"shootfor A=1 to a step 1 print get_shoot_statenext Aprint " "print "End."end
Does the juciphox build have the get_shoot_state command?
Started by fudgey Feature Requests
Started by ReDcOX Hello, I'm a NEWBIE - HELP!! (Newbies assistance, User Guides and thank you notes)
Started by psxpetey General Discussion and Assistance
Started by Recyclojunk64 « 1 2 » CHDK Releases
Started by pigeonhill General Help and Assistance on using CHDK stable releases