There is a firmware addon called CHDK which seems to add quite a few extra features. Most of the SD based Canon cameras are supported.