Hi,
I have a feeling that this is no possible but when taking 30 second exposures is it possible to have the LCD off when this is happening and when it's busy processing?
I added your code to press the print button after processing is done but couldn't figure out how to do it while the picture is being taken.
Thanks,
Shane
rem Author: barberofcivil
http://chdk.wikia.com/wiki/UBASIC/Scripts:_Shutter_Speed_Stack_(AllBest_build)rem Tested on S2/A570
@title Shutter Speed
@param a EV fraction (1/x EV)
@default a 1
@param b Start Tv (1EV)
@default b 6
@param c Start Tv (1/xEV)
@default c 0
@param d No.Shots
@default d 180
@param e Step Size (y/x EV)
@default e 1
@param f Start Delay (s)
@default f 5
@param g Delay between shots (s)
@default g 30
cls
if f<0 then f=0
if g<0 then g=0
if d<1 then d=1
if a<1 then a=1
if c>=a then c=a-1
if c<0 then c=0
if b<0 then c=-c
if d=1 then print "One shot to be taken" else print d,"shots to be taken"
if d=1 or e=0 then gosub "Single" else gosub "Multiple"
print "Click <set> to proceed"
print "Any button to cancel"
wait_click
is_key z "set"
if z=1 then print "Proceeding..." else gosub "Cancel"
while f>0
print "Starting in",f,"s..."
sleep 1000
f=f-1
wend
print "Starting shots now..."
for i=1 to d
cls
print "Shot",i,"of",d
gosub "ShutterCalc"
if k>=(2*a) then print "Shutter ~1/"o,"s" else print "Shutter ~"r"."st,"s"
print "Shutter value:",p
set_tv96_direct p
shoot
press "print"
sleep 150
release "print"
sleep 1000*g
next i
end
:ShutterCalc
k=(1-i)*e-b*a-c
l=(k/a/4)*4*a
if k<0 then l=l-4*a
m=1
for j = 1 to (l/a/4+3)
m=m*16
next j
m=m/16
h=(k-l)
j=(((((((((30*h*h*h)/(4*a))*h)/(4*a))*h)/(4*a))*243)/(4*a))*7)
j=j-(((((((30*h*h*h)/(4*a))*h)/(4*a))*254)/(4*a))*4)
j=j+(((((30*h*h*h)/(4*a))*227)/(4*a))*9)
j=j+(((30*h*h*307)/(4*a))*3)
j=j+(30*h*850)
o=(((((((j/(18000)+1)/2)+a)*m)/(128*a)+1))/2)
p=(k*96)/a
q=(((51200*a)/(((((j/18000)+1)/2)+a)*m)+1)/2)
r=q/100
s=(q-r*100)/10
t=q-r*100-s*10
return
:Cancel
print "Shots cancelled"
end
:Single
if e=0 and d>1 then print "Tv locked (step=0)"
i=1
gosub "ShutterCalc"
if k>=(2*a) then print "Tv: ~1/"o,"s" else print "Tv: ~"r"."st,"s"
return
:Multiple
i=1
gosub "ShutterCalc"
if k>=(2*a) then print "Tv Start: ~1/"o,"s" else print "Tv Start: ~"r"."st,"s"
i=d
gosub "ShutterCalc"
if k>=(2*a) then print "Tv End: ~1/"o,"s" else print "Tv End: ~"r"."st,"s"
return