Canon S90 CHDK
CHDK (Canon Hack Development Kit) is a community build open source alternative firmware for canon cameras. CHDK features are; RAW files, bracketing, full manual control over exposure, Zebra-Mode, Live histogram, Grids, and most important scripting.
Upgrading to this custom firmware can be tricky but they have tried to make it as easy as possibly with the application CardTricks. I have installed this firmware on several cameras with great success.
The upgraded firmware is a software hack and does not change your cameras memory, instead it runs off the SD card. If you don’t want to use the custom firmware just format your SD card and your camera will be back to its default firmware.
The scripting allows you do to some interesting things such as time laps photography, super long exposure videos, motion sensing recording, ect…
When I upgraded my Canon S90 firmware to CHDK version 0.9.9.905 and ran in to a problem. When the camera stats up with the firmware enabled it starts in [playback] mode. When you click the [playback button] to switch it to [record mode] the camera turns its self off. After playing with it for a while I found a solution to the problem. When you want to switch from [playback mode] to [recode mode] you need to press the [shutter button] instead of the [playback button]. This is different then all the other cameras that I have installed CHDK on.