I decided to open the porting thread, even though I'm only posting the source of an incomplete port.
What works:
- CHDK GUI
- RAW/DNG in modes that don't do multiple exposures or background video recording. I did not shoot a lot of these, but have not seen image corruption - to date. Raw hook address is determined using reyalp's method (fw routines are substantially different). Outside of shooting, the first raw buffer's address is returned which may not be a good idea as it might be used for other stuff by fw.
- llibtst.lua, shoot.lua
- PTP (live view untested and likely has issues)
- modules (hopefully all of them)
- ISO, Av, Tv overrides (not much tested though)
- USB remote, only tested briefly in non-sync mode. I have no idea what would happen with "sync" enabled, probably nothing good.
What doesn't:
- Mode change usually locks up the cam. Cause not determined yet, a certain fw task times out and runs into an assert.
- There is an ugly memory corruption issue which I can't currently reproduce. It appeared to be triggered by saving a romlog from menu, crash happened on the next GetMemInfo call. At least one fw variable (used by GetMemInfo) was corrupted.
- Video features, clean overlay, HDMI support are all unimplemented.
- ...