Kodak DC260/DC290
Scripts
Since www.digitacamera.com seems no longer to contain anything Digita-related,
here are my scripts which used to reside there. Except as noted, they work
on Kodak DC260/265/290 and should work on the other Digita-based cameras
as well (Minolta EX1500, etc.).
- Camera Information
Some info about your camera's internals.
This script appears in the "Add-On Scripts" menu in Play mode.
- Picture Details
More info than you ever wanted to know about the conditions under which a
picture was taken.
This script appears in the "Add-On Scripts" menu in Play mode.
- Manual Focus
Manual focusing with more control. This script provides many more
distance settings, and can automatically compensate for add-on lenses
like teleconverters, wide-angle converters, and close-up (macro) lenses.
This script appears in the "Advanced Focus Modes" menu in Capture mode.
- Quick Bracketer
A better version of the Exposure Bracketing script, which allows asymmetric
brackets and takes all three (two on the DC260) pictures with a single shutter
press, instead of requiring lots of interaction.
This script appears in the "Advanced Exposure Modes" menu in Capture mode.
- Shutter Speed
Similar to Kodak's "Special Exposure" script, but with more settings, including
finer control of exposure times between 1/10 and 2.0 seconds.
This script appears in the "Advanced Exposure Modes" menu in Capture mode.
- Startup Defaults
Make various settings that the camera forgets on powerdown permanent, and
create quick-reconfiguration menu entries.
This script appears in the "Startup Options" menu in Capture mode.
- Storage Status
How many pictures are already on your memory card? This script answers that
question.
This script appears in the "Add-On Scripts" menu in Capture mode.
- Translucency
(DC290 and newer cameras only) Allows your watermarks to have a translucent
background instead of a solid color or transparent background.
This script appears in the "Add-On Scripts" menu in Capture mode.
Hints
The following apply to the DC290 except as noted, and should also apply
to the DC220, DC260, and DC265:
- The "Record" button is active any time that the image is displayed
-- that includes during QuickView. So there's no need to switch to
Review mode in order to record an audio comment, if you add it immediately
after capturing the image. You can record for up to two minutes on the
DC290, 45 seconds on the DC260 (firmware 1.0.4 allows at least 66 seconds
when started from QuickView, but v1.0.6 enforces the 45 second limit in all
cases).
- The "External Flash" mode is really an aperture-priority mode -- you
select the aperture and the camera selects the shutter speed (with a maximum
exposure time of 1/37s at full wide angle and 1/74s at full tele [1/88s on
the DC290]). In good lighting, you can use this mode even without an
external flash to control depth of field.
For the DC290, the following exposure times have been seen at varying
zoom levels:
Zoom | Exposure | AAGC |
1.00 | 1/31, 1/37 | 1191 |
1.15 | 1/37, 1/57 | 1419 |
1.30 | 1/37, 1/57 | 1419 |
1.70 | 1/57 | 2014 |
2.00 | 1/62 | |
2.60 | 1/68, 1/80 | 1549 |
3.00 | 1/74, 1/88 | 1191, 2191 |
Effects of Varying Zoom
- The camera is less likely to mis-focus if you use Single-Spot focusing
instead of the default Multi-Spot focusing. The drawback is that you are
much more likely to encounter situations where the camera can't find anything
to focus on (orange light next to viewfinder). In that case, you will need
to aim the central box in the viewfinder at something near your subject that
has a strong vertical contrast line, press the shutter half-way, recompose,
and then take the picture. You can make Single-Spot focus the startup
default using my Startup Defaults script.
- Together with
Mike Kaplan's LensMate adapter
and a 49mm->46mm stepdown ring, the Olympus TC-14 teleconverter works
flawlessly[*] with the DC260, giving you a maximum 35mm-equivalent
zoom of 160mm without any loss of light sensitivity (i.e. no exposure
compensation needed). This teleconverter is marketed for use with the
Olympus D500L and D600L cameras.
Because the TC-14 partially blocks the view of the autofocus windows,
you will need to use manual focusing; remember to set the manual focus
distance to ~2/3 of the actual distance -- or use my
Manual Focus
script, which automatically adjusts the distance.
Presumably, the TC-14 would work just as well with the
Xtend-a-Lens.
[*] It does vignette at equivalent DC260 focal lengths of less than
65mm (1.7x zoom), but we don't care about that, do we? :-)
-
Documentation Error: The DC260's autoexposure will use exposure
times of up to 1/2 second, not the 1/4 second stated in the documentation.
-
The DC260 (firmware 1.0.6 and 1.0.7) slows down quite noticeably in the time
it takes for the QuickView image to appear when there are a lot of pictures
in albums -- I suppose it must be searching the subdirectories. This is a
shame, since it makes albums less attractive for large-capacity flash cards,
which is precisely where they are most needed....
-
Even though the autofocus will go down to 12 inches (30cm), manual focus
can only be set to 18 inches (50cm) or further -- even with a script! My
workaround is to use autofocus and to hold a high-contrast object such as
a white pen or narrow strip of paper just in front of the subject if the
autofocus fails.
220/260 owners: If you haven't yet done so, you will want to upgrade
to firmware v1.0.6 (220 or 260) or v1.0.7 (260 only), which is a free
download from Kodak. This update significantly speeds up processing and
adds new features.
It is now possible to extend the valid ranges for some camera
parameters via a firmware patch (download the firmware from Kodak,
patch it with my program -- available from the file vault at egroups --
and install the patched firmware). Unfortunately, the DC260 v1.0.7 firmware
contains a hardwired limit to manual focus and manual shutter (50cm
and 0.2s, respectively) that can't be overcome by this simple ROM
patch. Too bad on the manual focus, considering that autofocus goes
down to 30cm....
Kodak DC290
The DC290 now stores various settings at power-down which the 260/265
forgot about and reset back to factory defaults (unless using a
startup script such as generated by my Set Startup Defaults). White
Balance, Exposure Mode (AE, Long Time, External Flash), flash mode
(Off as well as Auto and Fill), and current album are now remembered,
but focus method (Multi-Spot vs. Single-Spot) still isn't....
In addition to the improvements visible in the user interface, there are
a number of enhancements to DigitaScript.
New variables available with GetCameraState/SetCameraState
- aagc: Analog Automatic Gain Control, aka ISO Sensitivity.
A range variable with valid values from 100 to 100 (yep, can't change
this one, which is too bad since on flash pictures the camera will
automatically increase ISO to as high as 220). Maybe after the next
firmware update... (v1.0.3 update -- still no adjustable ISO, even
after patching the limits on the variable)
- ALBM: Album Name.
DOS name for the current in-camera album.
- deft: Date Entry Format.
Valid values:
- 1 MM/DD/YY
- 2 DD/MM/YY
- 3 YY/MM/DD
(this variable was present but inactive in the DC260 firmware)
- hint: Hint Mode.
Tell the camera under what conditions you are taking a picture. This
variable is also supported by the Minolta EX 1500, which allows settings
of 1, 2, 3, 6, 7, and 8. [Thanks to Bart Olfers for providing a description
of the functioning on the Minolta.]
Valid values for DC290 v1.0.0-1.0.2 (effects not yet determined); DC290 v1.0.3
removes all but Auto and Panorama:
- 1 Auto (default)
- 2 Portrait
- Minolta: apply a mild softening filter
- Kodak: ? -- does not change sharpening value
- 3 Landscape
- Minolta: apply a mild sharpening filter
- Kodak: ? -- does not change sharpening value
- 4 Closeup
- 5 Sports
- 6 Evening
- Minolta: adjust white balance to increase color levels
- 7 Night
- Kodak: deliberately underexposes a bit
- Minolta: adjust white balance, apply noise reduction filter,
and enable slow shutter speed
- 8 Slow Sync
- Minolta: as for Night, plus use rear flash sync
- 9 Panorama
- Kodak: activate exposure lock
- Minolta EX1500 with firmware v2.0: "3D" for use
with the new photorealistic 3D module
- isam: Image Sharpening (Unsharp Mask) Amount.
Valid values are -25 to 100 (zero disables sharpening, negative values
soften image).
- isra: Image Sharpening (Unsharp Mask) Radius.
(Fixed-point ["f"] variable)
Valid values are 6553 to 655360 (corresponding to 0.1 to 10 pixels).
Bug: in firmware 1.0.0, the default value at startup is 6144 --
outside the range of valid values!
- isth: Image Sharpening (Unsharp Mask) Threshold.
Valid values are 0 to 25 (default 4).
- issz: Image Storage Size.
Valid values are 0 to 640 (default 0).
Undocumented
- mcro: Macro Mode.
Now supported, as it was on the DC220 and Minolta EX 1500, but the only valid
value is
- pasw: User Password.
String, used to lock out functions in scripts.
- RSHT: Remote Shutter.
Valid values:
- scmp: Strobe Compensation.
(Documented as "not supported".)
Valid values are -200 to +200, presumably giving a compensation of +/- 2EV.
This variable was present but inactive in the DC260 firmware.
Unfortunately, initial testing showed no visible difference in the
image and no differences in the reported exposure settings between
values of -200 and +200, for either built-in or external flash....
- ssiz: (updated) Still Capture Size.
1=High, 2=Medium, 3=Standard, 4=Ultra.
- tsiz: (updated) Timelapse Capture Size.
1=High, 2=Medium, 3=Standard, 4=Ultra.
- ucpt: User Copyright Notice.
This string parameter replaces "cprt" which was present on the DC220/260/265.
- wsts/wtts: Watermark Text/Time Font Size.
Valid values are 9, 10, 12, 14, 16, 18, 24, 36, and 48, setting the
corresponding "effective" point size. These two variables were present but
inactive in the DC260 firmware (where 48 points was indicated as
appropriate for High Resolution pictures, 36 points for Medium
Resolution, and 24 points for Standard). The effective point size is
documented as assuming a 4x6 inch print.
Bug: DC290 fw 1.0.0 through 1.0.3 force the font size back to the
default (as listed above, and 48 points for Ultra) on half-pressing the
shutter -- even if no picture is actually taken. As a result, setting
these variables has no effect....
- zmod: Zoom Mode.
Valid values:
- 1 Motorized
- 2 Programmed (default)
- 3 Manual
This parameter has no effect on either optical or digital zoom on the DC290;
the camera acts as if it is set to 2 regardless of the actual setting.
- zspd: Zoom Speed.
Valid values are 100 to 100 (i.e. can't change), and select the zoom speed
when "zmod" is set to 2. This variable
was present but inactive in the DC260 firmware.
New values available via GetProductInfo()
- cpus: Processor Speed.
CPU clock speed in Hz / 10000 (for DC290, 6600 = 66 MHz).
Incorrectly documented as readable via GetCameraState.
- cput: Processor Type.
CPU type, which may be 1 for MPC823 (Motorola 823) and 2 for DCAM 101/103.
Incorrectly documented as readable via GetCameraState.
- exsa: Expansion Slots Available.
Newly-supported by the Kodak line. An unsigned integer with the value 1.
Incorrectly documented as readable via GetCameraState.
- fwrd: Digita Release Date.
A range variable (all 32-bit values are valid), currently set to 0.
Incorrectly documented as readable via GetCameraState.
- oerv: Digita OE Version.
The presence of this parameter is used to check whether the camera is
compliant with Digita Script Language v1.5 or higher. The format is
0xAABBCCDD for version AA.BB.CC.DD.
Incorrectly documented as readable via GetCameraState.
New/changed values for existing GetCameraState() variables
- bcpn: Burst Capture Image Compression.
Adds
- bsiz: Burst Capture Image Size.
Adds
- crst: Image Counter Reset Mode
Values renamed to
- 1 Roll of Film
- 2 Odometer
- flty: File Type.
Values changed to
- mcap: Capture Mode.
Values changed from 0/1/2 for Still/Burst/Timelapse to 1/2/3.
- rmod: Auto Rotate Image.
Values changed to
(changing from 1/2 to 0/1 makes no sense to me, as it just breaks scripts
with no compensating advantage)
Note that the Scripting SDK v1.5 incorrectly documents this variable as
unsupported on the DC220/260/265.
- tfmt: Time Format.
- 1 12 Hour/Minute
- 2 12 Hour/Minute/Second
- 3 24 Hour/Minute (new)
- 4 24 Hour/Minute/Second (new)
Bug: If you select 24H/M/S, the 290 fw 1.0.0 will
display an image's time in review mode (on both filmstrip and
full-screen view) in am/pm mode without the am or pm.
- tldy: Timelapse Capture Interval.
Units changed from seconds to ticks (1/100s), so valid range of values is now
6000 to 8640000 instead of 60 to 86400.
- wsbc/wsfc: Watermark Text Background/Foreground Color.
Instead of eight predefined colors 0-7, settings are now a 32-bit
color value, with any 32-bit number allowed as a valid setting. The
predefined values used by the built-in menu are:
- 0x00800080 Black
- 0x237223D4 Blue
- 0x41D44164 Red
- 0x54C654B8 Magenta
- 0x703A7048 Green
- 0x832C839C Cyan
- 0xA28EA22C Yellow
- 0xFF80FF80 White
The four bytes of the color value break down as Y Cr Y Cb
(luminance and red/blue chrominance), where Cr/Cb seem to be offset-128
values (0x00 = -128, 0x80 = 0, and 0xFF = +127). I haven't figured out yet
just what the camera does if the two "Y" bytes differ.
- wsop/wtop: Watermark Text/Time Operation Mode.
Values changed to
- 0 Opaque Color
- 1 Translucent
- 2 Transparent
The background for the watermark text or timestamp becomes opaque,
translucent (image still partially visible through background area),
or transparent depending on the setting of these parameters. Only
Opaque and Transparent are available from the built-in menus, which
display Transparent for both Translucent and Transparent.
- wtbc/wtfc: Watermark Time Background/Foreground Color.
Instead of eight predefined colors 0-7, settings now seem to be a 32-bit
color value, with any 32-bit number allowed as a valid setting. The
default value for the foreground is 0xFF80FF80.
Image Tags, available via GetFileTag()
- aper: (new) Aperture (F Number).
This tag replaces "fnum" (see below) and contains 100 times the F Number.
- bsfd: (removed) Image Group Folder Name.
Replaced by "cngn" (see below).
- cmpn: (updated) Image Compression Level.
New value added: 7=lossless.
- cmrc: (removed) Camera Region Code.
Replaced by "rgnc" (see below).
- cmty: (new) Image Compression Type.
1=none, 2=JPEG.
- cngn: (new) Image Natural Group Name.
This variable contains a DOS filename without an extension. It replaces
"bsfd" (see above).
- cpgn: (new) Image Group Folder Name.
This DOS filename replaces the old "grfd" tag (see below).
- fdst: (fixed) Focus Distance.
The focus distance is now correctly reported when using manual focus
(on the DC260, this tag contains garbage when using manual focus).
- flty: (new) File Type.
2=EXIF, 4=TIFF.
- fmod: (updated) Focus Mode.
Documentation claims new value of 2=Programmed in addition to 1=auto-focus
and 3=manual focus.
- fnum: (removed) F Number.
Replaced by "aper".
- grfd: (removed) Capture Group Folder Name
Replaced by "cpgn" (see above).
- hint: (new) Hint Mode
Same values as "hint" camera parameter (see above).
- icts: (new) Image Capture Tone
Always 0 on the DC290 fw 1.0.0.
- iirv: (replaces "imiv") Image Info Version
Now 0x01000100 for version 1.0.1.
- imcn: (removed) Image File Type
This tag has been replaced by "flty" (see above).
- uptd: (newly-supported) User Protected.
If non-zero, image has been protected from deletion.
New script functions
- FileOpen
New open modes: 2=open at start of file, 3=delete and create new empty file.
- FindString(source, start, findstring, foundlocation)
- MarkedImage(?)
- MakeFolder(drive, path)
- MarkImage(drive, path, filename)
- MarkAllImages()
- NumberToString(number, string)
- Random(intvar)
- Read(filehandle, variable)
- ReadLine(filehandle, variable)
- SetDelimiter(comma|whitespace|tab|none)
- SetTitle(string)
Set the current title bar on the display to string. The string
may be either a string variable or a string literal.
- SubString(source, start, count, destination)
Extract count characters from source starting at the indicated
position (0-origin), and place the result in destination.
- StringToNumber(stringvar, intvar)
intvar may be of type "i", "u", "f", or "b"; the string (which
may be a literal) may be decimal or hex (with a leading "0x" or "0X").
- UnmarkImage(drive, path, filename)
Unmark the specified image. Drive=2 for removable media.
- UnmarkAllImages()
Unmark all images on memory card.
Bugs in the DC290 firmware v1.0.0 that break existing scripts
- GetCameraStatus: shutter button presses are not reported, and the
camera claims that the user has activated the zoom control whether or not
zooming is actually in progress. In firmware 1.0.3, the reported shutter
button status seems to vary randomly.
- SetCameraState("smod"): This function does not seem to execute
correctly from a startup script executed automatically at startup; it does,
however, function correctly if the startup script is started manually from
the menu.
- Wait(1) seems to cause various weird behavior that is fixed by
using Wait(50) instead.
- StartCapture turns off the LCD and leaves it off until the script
terminates, at which point it can be manually turned on again by pressing the
Menu button. Fixed in firmware v1.0.2.
- RunScript causes strange behavior in the script it is told to
run, followed by a hang of the OS when the script exits.
- EraseFile can prematurely terminate the script after erasing
the file. Still present in v1.0.2.
- GetPowerMode always returns 0 even with a freshly-charged set
of batteries. Reportedly fixed in v1.0.4.
Additional discrepancies/errors in Scripting SDK v1.5:
- Image Tag "isam" (Image Sharpness Amount): Incorrectly documented as
always returning 0 on the DC290.
- Parameter "spre" (Strobe Precount) would appear to support up to
three preflashes if one reads the documentation, but the camera supports a
maximum of one pre-flash.
- Parameter "tfmt" (Time Format) documented as supporting only values
1 and 2, instead of 1 through 4.
Disabled variables
These are present in the v1.0.3 firmware for
the DC290, but are not accessible either through GetCameraState() or GetProductInfo():
- camc: UNKNOWN - TBD (yep, that's what the firmware says!)
An unsigned integer with the value 0.
Undocumented.
- camt: Camera Type.
An unsigned integer with the default value 1.
Undocumented.
- impm: UNKNOWN - TBD (yep, that's what the firmware says!)
An unsigned integer with the default value 0.
Undocumented.
- impn: UNKNOWN - TBD (yep, that's what the firmware says!)
An unsigned integer with the default value 1.
Undocumented.
- rdsz: Ramdisk Size.
An unsigned integer with the value 0.
- teft: Text Entry Format.
An unsigned integer with the value 0.
Undocumented.
- usd1 to usd8: User Defined Data 1-8
Unsigned integers.
Undocumented.
Resources
DC260 FAQ
This page is
Bobby Approved
[Home]
[Files]
[Papers]
[Books]
[DigiCams]
[Privacy]
[TV]
[PGP]
(Last updated 20-Nov-01)