Testing scripts is tedious. Each time you want to try a new script you have to:
turn camera off, remove card, flip write protect latch, put in card reader, save new script, remove, flip latch, put in camera, power on camera. Over and over and over.
1. how can this be done much more efficiently?
For lua, test over PTP. For ubasic, transfer the files over ptp.
The lua documentation does not contain the commands I want like set_zoom for some reason. The uBasic docs do so I'm using that language in the form of .bas scripts instead.
Most of the functions exist in both, with identical usage except as required by language syntax.
2. Why are there 2 languages?
3. If uBasic already existed before lua then why use lua?
Becuase lua is a much more powerful, flexible language. Many things you can do in lua are simply impossible in ubasic.
4. are their commands completely interchangeable as if they were the same language? The syntax seems different.
The syntax is different, but the available CHDK functions are generally the same. Except those that are impossible in ubasic.
You were saying something abot how I would need to have 2 partitions, a boot for CHDK and a second one for saving images.
5. Why?
I never said you needed two partitions. I said *if* you wanted to format the card without nuking CHDK, you'd need a second partition, and to *write your own formatting code*. Otherwise, you only need two partitions if you want to autoboot from a card larger than 4gb.
ok, I got ptpcam working and it can accomplish everything I need. (reboot, run scripts, file operations). Now I need to make it so that my own software (written in C#) can send those commands instead of using shdk-ptp.cmd.
You might want to look at
http://chdk.setepontos.com/index.php?topic=4338.msg66042#msg66042You could also build a dll from my chdkptp project pretty easily:
http://chdk.setepontos.com/index.php?topic=6231.02. What lua command changes the camera mode from Tv to Video?
I suggest the capmode module
http://chdk.wikia.com/wiki/LUA/Scripts:Standard/Lualib/Capmode (included in the full zips of chdk)
then you can just do something like
capmode=require("capmode")
capmode.set('VIDEO_STD')
Assuming the modemap is setup correctly in your port, which isn't a given since it's an alpha...