CHDK Forum

CHDK Development => General Discussion and Assistance => DryOS Development => Topic started by: drewm1980 on 12 / November / 2009, 21:00:19

Title: S90 Porting Thread
Post by: drewm1980 on 12 / November / 2009, 21:00:19
Welcome to the S90 porting thread!

If you were already planning on working on a S90 port and actually know what you're doing, please free to join / hijack the thread.  I'm new to CHDK and reverse engineering, but I'm an electrical engineer and I've done some DSP and microcontroller programming.  I'm a grad student at UIUC in Champaign-Urbana, Illinois, USA.  If you live in town and want to help on the port, please contact me at [email protected]

Cheers,
Drew
Title: Re: S90 Porting Thread
Post by: reyalp on 12 / November / 2009, 21:17:23
Welcome. If you haven't already, be sure to start by reading  http://chdk.wikia.com/wiki/Adding_support_of_a_new_camera (http://chdk.wikia.com/wiki/Adding_support_of_a_new_camera) and http://chdk.wikia.com/wiki/For_Developers (http://chdk.wikia.com/wiki/For_Developers)

According to the wiki for this camera http://chdk.wikia.com/wiki/S90 (http://chdk.wikia.com/wiki/S90) there is no firmware dump yet. As you may have noticed, the current udumper software method does not work on the recent cameras. You will probably want to take a look at the porting threads for other new cameras for more information.
Some of these are
sx200 http://chdk.setepontos.com/index.php/topic,3994.0.html (http://chdk.setepontos.com/index.php/topic,3994.0.html)
sd980 http://chdk.setepontos.com/index.php/topic,4228.0.html (http://chdk.setepontos.com/index.php/topic,4228.0.html)
ixus100 http://chdk.setepontos.com/index.php/topic,3995.0.html (http://chdk.setepontos.com/index.php/topic,3995.0.html)
sx20 http://chdk.setepontos.com/index.php/topic,4348.0.html (http://chdk.setepontos.com/index.php/topic,4348.0.html)

If you want some real time advice, there are frequently a few of us in #CHDK on the freenode IRC network.
Title: Re: S90 Porting Thread
Post by: RaduP on 13 / November / 2009, 04:03:43
It is good that you are an electrical engineer. Grab a phototransistor, an oscilloscope, an USB to serial cable (you can use the COM port on the back of your PC if you have one, but it can be inconvenient to go with the oscilloscope under your desk).
The most important thing is to find the proper delay in blinking the LED, to synchronize it with the COM (ideally, 9600 bauds).
Title: Re: S90 Porting Thread
Post by: Camera Obscura on 14 / November / 2009, 12:04:39
From what I've read here I thought it wouldn't work, but I decided to go ahead and try doing a firmware dump on my S90 with Cardtricks/Udumper.

Sure enough, no luck.  :(
Title: Re: S90 Porting Thread
Post by: drewm1980 on 18 / November / 2009, 11:15:30
Thanks for the links guys!  I actually already have a huge pile of reflective object sensors lying around, and one of them might even still be hooked up to the analog input of an arduino running code that automatically sets the input threshold.  How many KB should I be expecting for the firmware?  If it's small, maybe I'll just dump it onto the arduino all at once.

Or should I keep it simple and put the phototransistor output through a comparator and into the mic input on my laptop?  If someone already has slick software that can automate the re-digitization, I might as well take advantage of it.

Cheers,
Drew
Title: Re: S90 Porting Thread
Post by: drewm1980 on 18 / November / 2009, 12:35:53
I was able to capture a .wav file that shows six spikes corresponding to the transitions of three pulses I generated by half-shuttering with the autofocus LED turned on.  Hopefully at RS232 rates the exponential decay won't be an issue.  My card reader will arrive tomorrow, so I'm done for the day.  Let me know if anyone gets the camera to respond to firmware or blink out it's firmware.  Cheers, Drew
Title: Re: S90 Porting Thread
Post by: drewm1980 on 20 / November / 2009, 12:11:41
I'm having trouble getting the camera to respond to firmware

Formatted a 128MB SD card using the shell script from http://cowboytronic.com/chdk/chdk_prep.dmg. (http://cowboytronic.com/chdk/chdk_prep.dmg.)  Seemed to work exactly as advertised.  By default this created partitions:
CHDK, FAT16, 16 MB
CAMCARD, FAT32, the remaining 105 MB
For the following I'm ignoring the CAMCARD partition and using the CHDK partition.

Verified that the camera does indeed display more detailed firmware information with a "Ver.req" file on the disk.  The info matches what is on the wiki.  Deleted the Ver.req file

Tried using the diskboot.bin from led_finder_by_jeff666.zip downloaded from http://drop.io/chdkdevelopment: (http://drop.io/chdkdevelopment:)

Copied the diskboot.bin file to the card, made sure my mac didn't add any extra files or screw up the permissions.  Locked the card and inserted it into camera.

Camera did not show any change of behavior aside from warning me that the disk is locked.

Tried both booting in both shooting mode and play mode, and with the file named diskboot.bin and DISKBOOT.BIN

Please chime in if you notice that I forgot something, otherwise I figure my next step is to buy/borrow a cheap supported camera and verify that the blinker works on that camera.  Thanks!
Title: Re: S90 Porting Thread
Post by: whim on 20 / November / 2009, 12:51:45
Hi drewm1980,

I'm not sure about this (never used jef666's ledblinker) but i know it dates from before encrypted DISKBOOT.BIN's,
so you will probably need to use dancingbits on it (you can find the source in the CHDK source /tools directory)
The newer cams use 2 or 3 as version parameter ( usage: dancingbits <in file> <out file> <version> )

judging by the link, you're on MacOS, so unfortunately i can't help you find a binary.

HTH,

wim


Title: Re: S90 Porting Thread
Post by: drewm1980 on 20 / November / 2009, 13:57:43
Hi drewm1980,

... encrypted DISKBOOT.BIN's,
so you will probably need to use dancingbits on it (you can find the source in the CHDK source /tools directory)
The newer cams use 2 or 3 as version parameter ( usage: dancingbits <in file> <out file> <version> )

judging by the link, you're on MacOS, so unfortunately i can't help you find a binary.


Thanks wim!  I'll try that.  I'll be doing most of my work on Debian; was just tinkering around a bit on my mac laptop at home.  I think I have the gcc arm cross compiler toolchain set up, but I haven't tested it yet. 
Title: Re: S90 Porting Thread
Post by: rachelkitty on 31 / December / 2009, 14:33:50
Having spent a chunk of the evening swapping cards in and out using the diskboot.bin and the LED finder code, I can confirm that the LED address for the S90 is 0xC0223030. Now, guess I'll need to try and dig out an old mouse to cannibalise...

EDIT: Can't find my soldering iron at present, and don't seem to have a spare photosensort of any sort. Will blink out firmware saturday if i can get the bits i need.
Title: Re: S90 Porting Thread
Post by: drewm1980 on 01 / January / 2010, 16:47:22
Having spent a chunk of the evening swapping cards in and out using the diskboot.bin and the LED finder code, I can confirm that the LED address for the S90 is 0xC0223030. Now, guess I'll need to try and dig out an old mouse to cannibalise...

Great news!  How did you dance the binary?  I never was able to get the camera to respond.  If I were home I'd like to take another shot at dumping the firmware using your binary, but I won't be home for a couple weeks yet.

Cheers,
Drew

Title: Re: S90 Porting Thread
Post by: rachelkitty on 01 / January / 2010, 17:31:03

Great news!  How did you dance the binary?  I never was able to get the camera to respond.  If I were home I'd like to take another shot at dumping the firmware using your binary, but I won't be home for a couple weeks yet.

Cheers,
Drew



diskboot.bin of the jeff666 LED finder and danced version 3. Took a few compiles to binary search the address range. All being well, I should be able to pick up some components tomorrow and get the firmware blinked out, other software methods haven't proven successful so far.
Title: Re: S90 Porting Thread
Post by: McAllister on 01 / January / 2010, 20:56:51
sounds like the first step is nearly done. can't expect chdk for my s90 but unfortunatly ive got no clue about c or assambler so i dont see a way to help out. as you can see im a newbie in this so if there is anything i can do pls bring it up here :)
Title: Re: S90 Porting Thread
Post by: ERR99 on 02 / January / 2010, 06:42:01
I can confirm that the LED address for the S90 is 0xC0223030. Now, guess I'll need to try and dig out an old mouse to cannibalise...
I am currently working on the G11 CHDK port, and what i can say is, that the G11 also uses this adress for AF-Light. For dumping the G11 code via LED i used the grand_blink_g7 code with this delay for 9600 bps:
"#define DEL 1260*2", maybe this is also need for the S90. Or if you use the "Blinker_Java_Version_by_Sirius", i used "#define DELAY_COUNT   154 " for a successfull 9600bps dump.
The used HW of S90 and G11 are not so different i think, and so the delay values could be equal. ;)
Title: Re: S90 Porting Thread
Post by: rachelkitty on 02 / January / 2010, 09:34:35
I am currently working on the G11 CHDK port, and what i can say is, that the G11 also uses this adress for AF-Light. For dumping the G11 code via LED i used the grand_blink_g7 code with this delay for 9600 bps:
"#define DEL 1260*2", maybe this is also need for the S90. Or if you use the "Blinker_Java_Version_by_Sirius", i used "#define DELAY_COUNT   154 " for a successfull 9600bps dump.
The used HW of S90 and G11 are not so different i think, and so the delay values could be equal. ;)


These days I have no machine with a serial port at all. I'll have to try soundcard. I have my doubts that this will work too well.

EDIT: Spent far too long on this now, cannot get the adc.exe to do anything with the recordings at all and have no serial port to be able to do anything else with.

OK, I dug out my old amiga for something with a serial port on and am dumping to that :)

edit: can't seem to find a good distance for solid data transmission.
Title: Re: S90 Porting Thread
Post by: Camera Obscura on 02 / January / 2010, 14:42:27
I just wanted to offer some words of encouragement to all of you on the S90 firmware dump.  Thanks for giving this a serious effort! 

The S90 is a fantastic camera with a lot of capabilities.  But CKDK would allow for correcting one big deficinecy that I am not happy with - that is the low bit rate on the video.

Thanks!

 
Title: Re: S90 Porting Thread
Post by: rachelkitty on 02 / January / 2010, 17:11:45
OK, well, finally managed to get stable data transmission with no errors but only at 1200bps. Dumping rom at the moment, gonna take a long time tho :)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 02 / January / 2010, 17:25:00
Hope your batteries are fully charged  :)
Title: Re: S90 Porting Thread
Post by: rachelkitty on 02 / January / 2010, 17:39:32
thankfully, yes, i'm keeping an eye on the last reached address tho, in case i need to recharge and restart later on.
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 09:40:23
OK, this is the finished dump from address 0xFF810000. All addresses from 0xFF800000 to 0xFF810000 were value 0xFF. All addresses after the end of this file are value 0xFF as well.
http://rapidshare.com/files/330257144/S90_GM1.00C.bin (http://rapidshare.com/files/330257144/S90_GM1.00C.bin)

EDIT: New dump, 0xFF810000 - 0xFFFFFFFF, previous one was flawed
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / January / 2010, 09:44:56
OK, this is the finished dump


Historic event !   :)
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 09:48:10
Guess I should grab IDA and take a look at things, but I've never coded for ARM before :)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / January / 2010, 11:23:52
It would seem RapidShare are not too keen to allow free downloading at present.

You could try ZShare.net.
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 11:38:21
S90_GM1.00C.bin - 4.07MB (http://www.zshare.net/download/707397797b4b3f01/)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / January / 2010, 11:48:22
Got It !
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 12:04:06
having a look through it at the mo, trying to find the various function addresses
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / January / 2010, 12:16:37
This does not look right in IDA.

The downloaded ZShare file is 1,306 KB.

EDIT:

That is better, I have downloaded again.
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 12:19:08
zshare has screwed something up then. try this http://pinkfur.org/mig/S90_GM1.00C.bin (http://pinkfur.org/mig/S90_GM1.00C.bin)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / January / 2010, 12:35:13
Well, that kept IDA occupied for quite some time.

Seems O.K.

For the benefit of future porters, could you describe each step as you proceed, including the blinking procedure ?

Title: Re: S90 Porting Thread
Post by: Camera Obscura on 03 / January / 2010, 12:48:14
rachelkitty -

Thank you!!! 
Title: Re: S90 Porting Thread
Post by: rachelkitty on 03 / January / 2010, 16:57:35
Going to re-dump the latter section of the fw, i have a feeling that something went a bit pear shaped there.
Title: Re: S90 Porting Thread
Post by: rachelkitty on 04 / January / 2010, 16:54:04
Holiday time is up, out of time for doing anything with this for now. http://rapidshare.com/files/330257144/S90_GM1.00C.bin (http://rapidshare.com/files/330257144/S90_GM1.00C.bin)
I'll try and get round to doing something at the weekend or when I have some free time to do so.
Title: Re: S90 Porting Thread
Post by: randy on 10 / January / 2010, 01:53:09
I love you all! I'm eagerly awaiting the CHDK for the S90. Is there anything I can do to help? I'm a programmer too, but I have no experience on low-level stuff like this. I'm interested in getting CHDK to work though. Keep up the good work!
Title: Re: S90 Porting Thread
Post by: Microfunguy on 10 / January / 2010, 09:19:04
@rachelkitty

Check your email.


David
Title: Re: S90 Porting Thread
Post by: Microfunguy on 14 / January / 2010, 10:09:22
It has suddenly gone rather quiet   :)
Title: Re: S90 Porting Thread
Post by: Hollywood on 14 / January / 2010, 16:23:28
I've been watching this thread with excitement, please don't give up making CHDK for the S90.  I hoping some will continue to try and have CHDK developed for the S90.  I really do appreciate the time and effort that people have made to try and bring CHDK to life with the S90.

Cheers.
Title: Re: S90 Porting Thread
Post by: McAllister on 19 / January / 2010, 08:43:52
Hopefully it is the silence before the storm ;)

does Anyone know if chdk generally is able to bring HD Video to a camera which is able to (at least the hardware) ?
Because for me the biggest preoblem ist the low video res and i don't know why canon did not put HD video to the s90 and g11, maby it's marketing?!

I red that chdk is able to rise the quality of the videos but nothing about the resolution. Unfortunatly i dont now how big the role is that the hardware plays in this case, maybe someone here is able to say if it is just possible that chdk brings hd video to the s90.

If you have to, destroy my hopes.  :(
But please keep it friendly  :D

greetings... 8)
Title: Re: S90 Porting Thread
Post by: physicsjake on 27 / January / 2010, 19:20:27
I had the same question about HD video.  Has anyone opened it up and checked the serial numbers on the parts to see what this camera is capable of?
Title: Re: S90 Porting Thread
Post by: blalor on 28 / January / 2010, 11:04:30
What's the next step with this port?  How can I help?  I have an S90 and just a tiny bit of hardware knowledge.  Is there any work from the G11 port that can be carried over?
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 31 / January / 2010, 14:05:21
McAllister, unfortunately I must be the one to tell that there is very little chance to do HD videos in the S90. I read somewhere on the web that this new sensor can only output video in VGA resolution, so this is a hardware limitation. Maybe I'm wrong, but feel free to google about the S90 sensor and correct me.

Also, I just bought a S90 myself. It arrived yesterday. And would be AWSOME to have some news on the porting process for this cam...
Title: Re: S90 Porting Thread
Post by: drewm1980 on 01 / February / 2010, 10:31:33
Unfortunately, the porting process has stalled, waiting for someone to come along who wants to and is able to actually disassemble the firmware, find the entry points to functions, figure out what they do, and write C code to call them from CHDK.   
Title: Re: S90 Porting Thread
Post by: battika on 02 / February / 2010, 19:11:17
Hello, just started following the process described here http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera (http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera) and also had a look at the G11 CHDK port  thread.

I managed to get to the point where the compiler is not complaining about any unreferenced symbols. The automatically generated stubs_entry.S file very much reminds me of G11's stubs_entry file. As you can see below the same stubs were found with the same probability:


S90's stubs_entry.S file
Code: [Select]
// !!! THIS FILE IS GENERATED. DO NOT EDIT. !!!
#include "stubs_asm.h"

NSTUB(AllocateMemory, 0xffa9d168)
NSTUB(AllocateUncacheableMemory, 0xff838dcc)
NSTUB(Close, 0xff835414)
NSTUB(CreateTask, 0xff81e5b4)
NSTUB(DeleteFile_Fut, 0xff834da0)
// ERROR: EnterToCompensationEVF is not found!
NSTUB(ExecuteEventProcedure, 0xff888d74)
// ERROR: ExitFromCompensationEVF is not found!
// Best match: 57%
NSTUB(ExitTask, 0xff81e844)
NSTUB(Fclose_Fut, 0xff834f1c)
NSTUB(Feof_Fut, 0xff835108)
NSTUB(Fflush_Fut, 0xff835144)
NSTUB(Fgets_Fut, 0xff835070)
NSTUB(Fopen_Fut, 0xff834edc)
NSTUB(Fread_Fut, 0xff834fc8)
NSTUB(FreeMemory, 0xffa9d160)
// Best match: 91%
NSTUB(FreeUncacheableMemory, 0xff838e0c)
NSTUB(Fseek_Fut, 0xff8350bc)
NSTUB(Fwrite_Fut, 0xff83501c)
// Best match: 52%
NSTUB(GetBatteryTemperature, 0xff8615f0)
// Best match: 52%
NSTUB(GetCCDTemperature, 0xff86157c)
// Best match: 85%
NSTUB(GetCurrentAvValue, 0xff95a354)
NSTUB(GetDrive_ClusterSize, 0xff86e380)
NSTUB(GetDrive_FreeClusters, 0xff86e3e0)
NSTUB(GetDrive_TotalClusters, 0xff86e3b4)
// Best match: 64%
NSTUB(GetFocusLensSubjectDistance, 0xff958928)
NSTUB(GetFocusLensSubjectDistanceFromLens, 0xff958d70)
// Best match: 96%
NSTUB(GetOpticalTemperature, 0xff861664)
// Best match: 66%
NSTUB(GetParameterData, 0xff994a7c)
// Best match: 72%
NSTUB(GetPropertyCase, 0xff88ca64)
// Best match: 96%
NSTUB(GetSystemTime, 0xffa9d1c0)
// Best match: 74%
NSTUB(GetZoomLensCurrentPoint, 0xff95d9ec)
NSTUB(GetZoomLensCurrentPosition, 0xffa90e0c)
// Best match: 64%
NSTUB(IsStrobeChargeCompleted, 0xff8d8710)
NSTUB(LocalTime, 0xff886670)
// Best match: 93%
NSTUB(LockMainPower, 0xff89467c)
// ERROR: Lseek is not found!
// Best match: 92%
NSTUB(MakeDirectory_Fut, 0xff834e14)
// Best match: 57%
NSTUB(MoveFocusLensToDistance, 0xffafbcf0)
// Best match: 58%
NSTUB(MoveZoomLensWithPoint, 0xffa9b1a8)
// Best match: 62%
NSTUB(NewTaskShell, 0xff88c510)
NSTUB(Open, 0xff8353bc)
// ERROR: PT_PlaySound is not found!
// Best match: 86%
NSTUB(PostLogicalEventForNotPowerType, 0xff8924a8)
// Best match: 92%
NSTUB(PostLogicalEventToUI, 0xff8924f4)
NSTUB(Read, 0xff81ab78)
NSTUB(ReadFastDir, 0xffa7d748)
// ERROR: RefreshPhysicalScreen is not found!
// ERROR: Remove is not found!
// Best match: 53%
NSTUB(RenameFile_Fut, 0xff834ed8)
// ALT: NSTUB(RenameFile_Fut, 0xffa69a44) // 8/7
// ALT: NSTUB(RenameFile_Fut, 0xffa69a94) // 8/7
// Best match: 93%
NSTUB(SetAutoShutdownTime, 0xff8946f0)
// Best match: 81%
NSTUB(SetCurrentCaptureModeType, 0xff89b7b4)
// Best match: 55%
NSTUB(SetFileTimeStamp, 0xff9496e8)
// Best match: 64%
NSTUB(SetLogicalEventActive, 0xff8943cc)
// Best match: 68%
NSTUB(SetParameterData, 0xff994958)
// Best match: 89%
NSTUB(SetPropertyCase, 0xff88c960)
// Best match: 92%
NSTUB(SleepTask, 0xff838a50)
// Best match: 60%
NSTUB(TakeSemaphore, 0xff838718)
// ERROR: TurnOffBackLight is not found!
// ERROR: TurnOnBackLight is not found!
// ERROR: UIFS_WriteFirmInfoToFile is not found!
// Best match: 93%
NSTUB(UnlockMainPower, 0xff8945d0)
NSTUB(UpdateMBROnFlash, 0xff813f74)
NSTUB(VbattGet, 0xff831e04)
NSTUB(Write, 0xff8354a4)
NSTUB(_log, 0xffb365f8)
NSTUB(_log10, 0xffb35284)
NSTUB(_pow, 0xffb353f4)
NSTUB(_sqrt, 0xffb3819c)
NSTUB(close, 0xff81a990)
NSTUB(closedir, 0xffa7d5d0)
// Best match: 71%
NSTUB(closefastdir, 0xffa7d8e4)
// Best match: 95%
NSTUB(free, 0xff814138)
// Best match: 86%
NSTUB(kbd_p1_f, 0xff833630)
// Best match: 86%
NSTUB(kbd_p1_f_cont, 0xff83363c)
NSTUB(kbd_p2_f, 0xff832ed8)
// ERROR: kbd_pwr_off is not found!
// ERROR: kbd_pwr_on is not found!
NSTUB(kbd_read_keys, 0xff8335b4)
// Best match: 81%
NSTUB(kbd_read_keys_r2, 0xff85db5c)
NSTUB(lseek, 0xff835530)
NSTUB(malloc, 0xff8140dc)
NSTUB(memcmp, 0xff8203e8)
NSTUB(memcpy, 0xff83e43c)
NSTUB(memset, 0xffa0c7f8)
NSTUB(mkdir, 0xff835888)
NSTUB(mktime_ext, 0xff8ac304)
NSTUB(open, 0xff81a8e0)
NSTUB(opendir, 0xffa7d614)
// ERROR: openfastdir is not found!
NSTUB(qsort, 0xffaec3d8)
// Best match: 95%
NSTUB(rand, 0xff8204f0)
NSTUB(read, 0xff81ab78)
// ERROR: readfastdir is not found!
// ERROR: rename is not found!
// Best match: 95%
NSTUB(srand, 0xff8204e4)
NSTUB(stat, 0xff83556c)
// ALT: NSTUB(stat, 0xff86b7c4) // 30/0
// Best match: 61%
NSTUB(strcat, 0xff813f38)
// Best match: 56%
NSTUB(strchr, 0xff813fc0)
NSTUB(strcmp, 0xff8203a4)
NSTUB(strcpy, 0xff82038c)
NSTUB(strftime, 0xff8abd0c)
NSTUB(strlen, 0xff81400c)
NSTUB(strncmp, 0xff813f74)
// Best match: 73%
NSTUB(strncpy, 0xff813f38)
// Best match: 71%
NSTUB(strrchr, 0xff83e414)
// ALT: NSTUB(strrchr, 0xff8abad4) // 18/8
// Best match: 96%
NSTUB(strtol, 0xff83e71c)
NSTUB(strtolx, 0xff83e520)
// Best match: 86%
NSTUB(time, 0xff886be8)
NSTUB(vsprintf, 0xff820350)
NSTUB(write, 0xff81abd8)

And the same stubs are missing so I added them to stubs_entry_2.S. Hope that someone with ARM ASM knowledge can fill in the gaps:

S90's stubs_entry_2.S file
Code: [Select]
#include "stubs_asm.h"

// Not found by sigfind
NHSTUB(EnterToCompensationEVF, 0x12345678)
NHSTUB(ExitFromCompensationEVF, 0x12345678)
NHSTUB(Lseek, 0xff835530) // same as lseek
NHSTUB(PT_PlaySound, 0x12345678)
NHSTUB(RefreshPhysicalScreen, 0x12345678)
NHSTUB(Remove, 0x12345678)
NHSTUB(TurnOffBackLight, 0x12345678)
NHSTUB(TurnOnBackLight, 0x12345678)
NHSTUB(UIFS_WriteFirmInfoToFile, 0x12345678)
NHSTUB(kbd_pwr_off, 0x12345678)
NHSTUB(kbd_pwr_on, 0x12345678)
NHSTUB(openfastdir, 0x12345678)
NHSTUB(readfastdir, 0x12345678)
NHSTUB(rename, 0x12345678)

// defined elsewhere
NHSTUB(SetScriptMode, 0x12345678)
NHSTUB(apex2us, 0x12345678)
NHSTUB(MakeAFScan, 0x12345678)
NHSTUB(ExpCtrlTool_StartContiAE, 0x12345678)
NHSTUB(WriteSDCard, 0x12345678)
NHSTUB(UnlockAF, 0x12345678)
NHSTUB(DoAFLock, 0x12345678)
NHSTUB(GetKbdState, 0x12345678)
NHSTUB(UnsetZoomForMovie, 0x12345678)
NHSTUB(LEDDrive, 0x12345678)
NHSTUB(ScreenLock, 0x12345678)
NHSTUB(ScreenUnlock, 0x12345678)


// nullsubs (as defined in G11's stubs file)
NHSTUB(rewinddirkbd_pwr_on, 0x12345678)  // nullsub
NHSTUB(Unmount_FileSystem, 0x12345678)  // nullsub
NHSTUB(Mount_FileSystem, 0x12345678)  // nullsub
NHSTUB(SetZoomActuatorSpeedPercent, 0x12345678)  // nullsub

So I assume that someone with C and ASM knowledge could make a successful S90 CHDK port based on the G11 project.
Title: Re: S90 Porting Thread
Post by: CanonAddict on 03 / February / 2010, 02:59:32
Good news, thanks drewm1980 and battika.

I don't care that much about HD Video, but using CHDK for the S90 would be awesome.
Title: Re: S90 Porting Thread
Post by: battika on 03 / February / 2010, 05:08:09
Yeah, I guess we should forget about HD Video on S90/G11 due to hardware limitation.

Anyways, here is my makefile.inc, not sure if my MEMISOSTART value is correct given I have never seen ARM ASM code before. My test project compiles Okay, all I need is a card reader so that I can transfer DISKBOOT.BIN to my SD card  :)

S90's makefile.inc
Code: [Select]
#31E1
PLATFORMID=12769

PLATFORMOS=dryos

MEMBASEADDR=0x1900
RESTARTSTART=0x50000
MEMISOSTART=0x141DBC
ROMBASEADDR=0xff810000
NEED_ENCODED_DISKBOOT=3

PLFLAGS=-DMEMBASEADDR=$(MEMBASEADDR) -DMEMISOSTART=$(MEMISOSTART) -DMEMISOSIZE=$(MEMISOSIZE)
PLFLAGS+=-DRESTARTSTART=$(RESTARTSTART)

KEYSYS=d4
Title: Re: S90 Porting Thread
Post by: ERR99 on 03 / February / 2010, 07:52:28
MEMISO start looks correct for S90.
But please dont forget to update also the ASM code. Even if the G11 asm-code looks similar to the S90 bootcode, it is not 100% the same. I have taken a quick look on the S90 Firmware and i found allready some different sub_function adresses in boot.c code. So it is absolutly necessary to update the complete ASM code, the G11 ASM code will not work for this port. If you try to build the G11 Port, only with makefile.inc and stubs_entry2.s adapted, the diskboot.bin will not work and the camera crashes direct during startup.
But hopefully the G11 port is a little help for your porting work.  ;)
Title: Re: S90 Porting Thread
Post by: battika on 03 / February / 2010, 10:55:06
Thanks ERR99 for your suggestions, I will have a look into the boot code shortly. I'm very new to this porting process and your efforts with the G11 port has helped me a lot. You made a terrific job there.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 03 / February / 2010, 11:50:11
I think ERR99 could be of very great help to you after his very recent good G11 work.

No-one has ever spelled-out every single step of the porting process.

Maybe you could as you go along ?



David
Title: Re: S90 Porting Thread
Post by: rachelkitty on 06 / February / 2010, 11:38:20
Unfortunately, the porting process has stalled, waiting for someone to come along who wants to and is able to actually disassemble the firmware, find the entry points to functions, figure out what they do, and write C code to call them from CHDK.   

Yes, due to the fact that there are other pressures on my time atm. I'll be getting back to it soon. i have most of the stubs and so on sorted from previously anyway. So I'll have another crack at things this week.
Title: Re: S90 Porting Thread
Post by: rachelkitty on 06 / February / 2010, 14:18:21
stubs_entry.S
Code: [Select]
// !!! THIS FILE IS GENERATED. DO NOT EDIT. !!!
#include "stubs_asm.h"

NSTUB(AllocateMemory, 0xffaa3438)
NSTUB(AllocateUncacheableMemory, 0xff8393ec)
NSTUB(Close, 0xff835980)
NSTUB(CreateTask, 0xff81e5b4)
NSTUB(DeleteFile_Fut, 0xff83530c)
// ERROR: EnterToCompensationEVF is not found!
NSTUB(ExecuteEventProcedure, 0xff8898ac)
// ERROR: ExitFromCompensationEVF is not found!
// Best match: 57%
NSTUB(ExitTask, 0xff81e844)
NSTUB(Fclose_Fut, 0xff835488)
NSTUB(Feof_Fut, 0xff835674)
NSTUB(Fflush_Fut, 0xff8356b0)
NSTUB(Fgets_Fut, 0xff8355dc)
NSTUB(Fopen_Fut, 0xff835448)
NSTUB(Fread_Fut, 0xff835534)
NSTUB(FreeMemory, 0xffaa3430)
// Best match: 91%
NSTUB(FreeUncacheableMemory, 0xff83942c)
NSTUB(Fseek_Fut, 0xff835628)
NSTUB(Fwrite_Fut, 0xff835588)
// Best match: 52%
NSTUB(GetBatteryTemperature, 0xff863588)
// Best match: 52%
NSTUB(GetCCDTemperature, 0xff863514)
// Best match: 85%
NSTUB(GetCurrentAvValue, 0xff95c14c)
NSTUB(GetDrive_ClusterSize, 0xff86fc30)
NSTUB(GetDrive_FreeClusters, 0xff86fc90)
NSTUB(GetDrive_TotalClusters, 0xff86fc64)
// Best match: 64%
NSTUB(GetFocusLensSubjectDistance, 0xff95a720)
NSTUB(GetFocusLensSubjectDistanceFromLens, 0xff95ab68)
// Best match: 96%
NSTUB(GetOpticalTemperature, 0xff8635fc)
// Best match: 66%
NSTUB(GetParameterData, 0xff996808)
// Best match: 72%
NSTUB(GetPropertyCase, 0xff88d5e0)
// Best match: 96%
NSTUB(GetSystemTime, 0xffaa3490)
// Best match: 74%
NSTUB(GetZoomLensCurrentPoint, 0xff95ed28)
NSTUB(GetZoomLensCurrentPosition, 0xffa9669c)
// Best match: 64%
NSTUB(IsStrobeChargeCompleted, 0xff8db30c)
NSTUB(LocalTime, 0xff8871a8)
// Best match: 93%
NSTUB(LockMainPower, 0xff895274)
// ERROR: Lseek is not found!
// Best match: 92%
NSTUB(MakeDirectory_Fut, 0xff835380)
// Best match: 57%
NSTUB(MoveFocusLensToDistance, 0xffb030c8)
// Best match: 58%
NSTUB(MoveZoomLensWithPoint, 0xffaa0a5c)
// Best match: 62%
NSTUB(NewTaskShell, 0xff88d08c)
NSTUB(Open, 0xff835928)
// ERROR: PT_PlaySound is not found!
// Best match: 86%
NSTUB(PostLogicalEventForNotPowerType, 0xff8930a0)
// Best match: 92%
NSTUB(PostLogicalEventToUI, 0xff8930ec)
NSTUB(Read, 0xff81ab78)
NSTUB(ReadFastDir, 0xffa8416c)
// ERROR: RefreshPhysicalScreen is not found!
// ERROR: Remove is not found!
// Best match: 53%
NSTUB(RenameFile_Fut, 0xff835444)
// ALT: NSTUB(RenameFile_Fut, 0xffa70478) // 8/7
// ALT: NSTUB(RenameFile_Fut, 0xffa704c8) // 8/7
// Best match: 93%
NSTUB(SetAutoShutdownTime, 0xff8952e8)
// Best match: 81%
NSTUB(SetCurrentCaptureModeType, 0xff89ca38)
// Best match: 55%
NSTUB(SetFileTimeStamp, 0xff94a7f8)
// Best match: 64%
NSTUB(SetLogicalEventActive, 0xff894fc4)
// Best match: 68%
NSTUB(SetParameterData, 0xff9966e4)
// Best match: 89%
NSTUB(SetPropertyCase, 0xff88d4dc)
// Best match: 92%
NSTUB(SleepTask, 0xff839070)
// Best match: 60%
NSTUB(TakeSemaphore, 0xff838d38)
// ERROR: TurnOffBackLight is not found!
// ERROR: TurnOnBackLight is not found!
// ERROR: UIFS_WriteFirmInfoToFile is not found!
// Best match: 93%
NSTUB(UnlockMainPower, 0xff8951c8)
NSTUB(UpdateMBROnFlash, 0xff813f74)
NSTUB(VbattGet, 0xff831e08)
NSTUB(Write, 0xff835a10)
NSTUB(_log, 0xffb3dd88)
NSTUB(_log10, 0xffb3cccc)
NSTUB(_pow, 0xffb3ce3c)
NSTUB(_sqrt, 0xffb3f0f0)
NSTUB(close, 0xff81a990)
NSTUB(closedir, 0xffa83ff4)
// Best match: 71%
NSTUB(closefastdir, 0xffa84308)
// Best match: 95%
NSTUB(free, 0xff814138)
// Best match: 86%
NSTUB(kbd_p1_f, 0xff8335d0)
// Best match: 86%
NSTUB(kbd_p1_f_cont, 0xff8335dc)
// Best match: 86%
NSTUB(kbd_p2_f, 0xff832e90)
// Best match: 51%
NSTUB(kbd_pwr_off, 0xff8603ec)
// ERROR: kbd_pwr_on is not found!
// Best match: 84%
NSTUB(kbd_read_keys, 0xff833554)
// Best match: 78%
NSTUB(kbd_read_keys_r2, 0xff85fb68)
// ALT: NSTUB(kbd_read_keys_r2, 0xff85fb4c) // 17/5
NSTUB(lseek, 0xff835a9c)
NSTUB(malloc, 0xff8140dc)
NSTUB(memcmp, 0xff8203ec)
NSTUB(memcpy, 0xff83e9ec)
NSTUB(memset, 0xffa1389c)
NSTUB(mkdir, 0xff835df4)
NSTUB(mktime_ext, 0xff8aaf6c)
NSTUB(open, 0xff81a8e0)
NSTUB(opendir, 0xffa84038)
// ERROR: openfastdir is not found!
NSTUB(qsort, 0xffaf37d8)
// Best match: 95%
NSTUB(rand, 0xff8204f4)
NSTUB(read, 0xff81ab78)
// ERROR: readfastdir is not found!
// ERROR: rename is not found!
// Best match: 95%
NSTUB(srand, 0xff8204e8)
NSTUB(stat, 0xff835ad8)
// ALT: NSTUB(stat, 0xff86d074) // 30/0
// Best match: 61%
NSTUB(strcat, 0xff813f38)
// Best match: 56%
NSTUB(strchr, 0xff813fc0)
NSTUB(strcmp, 0xff8203a8)
NSTUB(strcpy, 0xff820390)
NSTUB(strftime, 0xff8aa974)
NSTUB(strlen, 0xff81400c)
NSTUB(strncmp, 0xff813f74)
// Best match: 73%
NSTUB(strncpy, 0xff813f38)
// Best match: 71%
NSTUB(strrchr, 0xff83e9c4)
// ALT: NSTUB(strrchr, 0xff8aa73c) // 18/8
// Best match: 96%
NSTUB(strtol, 0xff83eccc)
NSTUB(strtolx, 0xff83ead0)
// Best match: 86%
NSTUB(time, 0xff887720)
NSTUB(vsprintf, 0xff820354)
NSTUB(write, 0xff81abd8)

stubs_entry_2.S
Code: [Select]
#include "stubs_asm.h"
//FOUND
NHSTUB(TurnOffBackLight, 0xFF8A3FD0)
NHSTUB(TurnOnBackLight,  0xFF8A3FE8)
NHSTUB(EnterToCompensationEVF, 0xFF836D0C)
NHSTUB(ExitFromCompensationEVF, 0xFF836D50)
NHSTUB(Lseek, 0xFF835530)
NHSTUB(PT_PlaySound, 0xFF88173C)
NHSTUB(RefreshPhysicalScreen, 0xFFA08E40)
NHSTUB(Remove, 0xFF835418)
NHSTUB(UIFS_WriteFirmInfoToFile, 0xFF97E91C)
NHSTUB(kbd_pwr_off, 0xFF86089C)
NHSTUB(openfastdir, 0xFFA7D510)
NHSTUB(readfastdir, 0xFFA7D644)
NHSTUB(rename, 0xFF8354C0)
NHSTUB(LEDDrive, 0xFF85D5F8)
NHSTUB(SetScriptMode, 0xFF810EE4) //not definite, recheck later
NHSTUB(apex2us, 0xFFA0D734)
NHSTUB(MakeAFScan, 0xFF9645F0)
NHSTUB(ExpCtrlTool_StartContiAE, 0xFF8446CB)
NHSTUB(WriteSDCard, 0xFF94A478)
NHSTUB(UnlockAF, 0xFF836BA0)
NHSTUB(DoAFLock, 0xFF836B68)
NHSTUB(UnsetZoomForMovie, FF8A0DC0)

//NOTFOUND - nullsub

NHSTUB(kbd_pwr_on, 0xFF810B04)//cannot locate
NHSTUB(rewinddir, 0xFF810B04)//cannot locate
NHSTUB(SetZoomActuatorSpeedPercent, 0xFF810B04)//cannot locate
NHSTUB(Unmount_FileSystem, 0xFF810B04)//cannot locate
NHSTUB(Mount_FileSystem, 0xFF810B04)//cannot locate
//NHSTUB(platformsub_kbd_fetch_data, 0xFF833350)

stubs_min.S
Code: [Select]
#include "stubs_asm.h"

DEF(physw_status, 0x330d8)                
DEF(physw_run, 0x1C38 + 0x0C)            
DEF(FlashParamsTable,0xFFBEFB70)      
DEF(zoom_busy, 0x7a00)          
DEF(focus_busy, 0x78d4 + 8)              
DEF(canon_menu_active, 0x3034 + 4)        
DEF(canon_shoot_menu_active, 0x8944 + 1)  
DEF(recreview_hold, 0x8944)    
DEF(zoom_status, 0x8A84)                  
DEF(movie_status, 0x7ab0 + 0x38)        
DEF(enabled_refresh_physical_screen, 0xa36c)
DEF(playrec_mode, 0x2d60+0x4)        
DEF(some_flag_for_af_scan, 0x7FF4)    
DEF(led_table, 0x24AC + 0x04)            
DEF(levent_table,0xFFB95D20) //uncertain

lib.c and boot.c is pretty much done. need to look at movie_rec and capt_seq still then move on to other stuff.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 06 / February / 2010, 16:19:27
It is a lot of work and we are all so busy with our brief lives.
Good to see you getting back to this  :)

Remember, ERR99 now has all the time in the World and I am sure would be only too happy to advise !



David
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 10 / February / 2010, 21:27:32
can I help in some way?? I know I can't code in ASM, but I could test your code Rachelkitty when it becomes a file that I can load in the camera. thanks for your efforts!
Title: Re: S90 Porting Thread
Post by: rachelkitty on 11 / February / 2010, 19:08:40
So, bootup is runnign with a fallover late on, seems to be when screen would normally be initialising, need to take a look at that.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 11 / February / 2010, 19:48:47
Are any folders created ?

Try commenting-out most of the spytask functions and then enable them one-by-one.


David
Title: Re: S90 Porting Thread
Post by: ERR99 on 12 / February / 2010, 04:41:23
If commenting out the spytask does not help, comment out the kbd task also and start the original kbd-task instead.
I dont know how the S90 works, but on the G11 i had to change the "usual" code in kbd.c,
because with the standard implementation, display&key lightning are switched off and the camera "looks" dead/off, but it wasnt.

Also disable all chdk hook tasks (capture, movie, etc.). There are not so important now, chdk will run also without them.
You can activate them later, after you are sure that spytask and kbd task are running stable.

Another pitfall, which often crashes the g11 during startup, was the spytask config loading. If fixed that in the G11 port. I expect that you also need the other chdk core changes for the new dryos, so maybe you also have to set the CAM_DRYOS_2_3_R39 define in camera.h. For that, you need the actual chdk code (with g11 port included).
Title: Re: S90 Porting Thread
Post by: rachelkitty on 12 / February / 2010, 11:13:42
Run into a bit of an issue, can't locate ScreenLock and ScreenUnlock. Anyone else that could have a look through the dump and see if they can find?
Title: Re: S90 Porting Thread
Post by: Microfunguy on 12 / February / 2010, 11:44:11
Are the G11 and SX200IS the best firmwares to compare the S90 with ?

Title: Re: S90 Porting Thread
Post by: rachelkitty on 12 / February / 2010, 11:49:05
The G11 hardware is almost identical to the S90, except for the bigger body, so it's a pretty good choice for comparisons. I've run through a whole bunch of firmwares so far, but those 2 functions are the ones that are eluding me.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 12 / February / 2010, 13:37:33
OK, I will try to find them after my tea.

Title: Re: S90 Porting Thread
Post by: rachelkitty on 12 / February / 2010, 13:40:37
Thanks very much, I appreciate any help :)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 12 / February / 2010, 15:58:36
Assuming that the first firmware dump you made available is OK, the addresses are :-

NHSTUB(ScreenLock, 0xFFA0A10C)
NHSTUB(ScreenUnlock,0xFFA0A134)

Just to confirm, I have :-

ROM:FFA0A10C                 STMFD   SP!, {R4,LR}
ROM:FFA0A110                 BL      sub_FFA0A2EC


David
Title: Re: S90 Porting Thread
Post by: rachelkitty on 12 / February / 2010, 16:06:51
thanks very much, i'll give this a go.
Title: Re: S90 Porting Thread
Post by: Michael L on 17 / February / 2010, 13:23:51
In case you guys need any extra motivation, there are some kite aerial photographers who are already using the S90 to take aerial photos.  They are currently using clumsy servo motors to trigger the camera.  Once CHDK is available, they will be able to trigger the camera via USB pulse which is less subject to mechanical failure and also lighter weight.  I too am hoping to be using the S90 to take aerial photos before long.

Some examples of kite aerial photography:  http://www.fluidr.com/photos/ml_kap/sets/72157605436378167 (http://www.fluidr.com/photos/ml_kap/sets/72157605436378167)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 17 / February / 2010, 14:51:42
Wel now, Michael L, who do you think Microfunguy is  ?

I will give you a clue  ... it is not possible to implement your ND constant-exposure override on the G11   :)

(and maybe not on the S90 if it has an ND filter).
That is because it crashes unfortunately.

Title: Re: S90 Porting Thread
Post by: Michael L on 17 / February / 2010, 16:17:17
Ha!  David!

A good man is on the job!

The good news is that the S90 has a real iris, so the ND filter issue isn't a dealbreaker.  I'm hoping the lens on the S90 is better than the one on the SD870, because there's too much corner softness at f/2.8 when the ND filter is out.  Consequently I've gone back to using my ancient, brick-like S70 when there's not enough wind to lift my dSLR.

Even if there's still corner softness on the S90, being able to stop the lens down a bit should help a lot.

Already at least 2 KAPers have built S90 rigs:  http://ostro.ced.berkeley.edu/~crisr/discuss/comments.php?DiscussionID=2554&page=1#Item_0 (http://ostro.ced.berkeley.edu/~crisr/discuss/comments.php?DiscussionID=2554&page=1#Item_0)

Good luck with the porting!
Title: Re: S90 Porting Thread
Post by: randy on 26 / February / 2010, 09:49:04
How's it going? Need any beta-testers?
Title: Re: S90 Porting Thread
Post by: enrique_ifi on 04 / March / 2010, 11:24:09
Hi. I just wonder if there is some news about the S90. I will get a Canon soon, and having a CHDK is a deal closer for the S90.

If you need any help with beta-testing, i be glad to help.
Title: Re: S90 Porting Thread
Post by: gsbergman on 04 / March / 2010, 12:40:40
Anything I can do to help get this into beta I'd be glad to assist with.

Gregg
Title: Re: S90 Porting Thread
Post by: Martlet on 21 / March / 2010, 16:04:33
Hey Rachelkitty (or anyone), any progress on the S90 port?  I'm not a programmer but I will gladly help any way I can.
Title: Re: S90 Porting Thread
Post by: shaltzman on 30 / March / 2010, 17:38:24
Same as Martlet: "... I'm not a programmer but I will gladly help any way I can."
It's difficult to know how we can do to help. I don't know how to start, i don't know if it's approachable to a newbie who never touch any code or programmation to start learning that... We just have a s90, and we want to help you... A kind of "for newbie developpers" could be great, but i don't know if we need two years of studies before... :)
Title: Re: S90 Porting Thread
Post by: reyalp on 30 / March / 2010, 18:39:11
Same as Martlet: "... I'm not a programmer but I will gladly help any way I can."
It's difficult to know how we can do to help. I don't know how to start, i don't know if it's approachable to a newbie who never touch any code or programmation to start learning that...
No. It isn't. A developer is required. Without one, there is nothing you can do.
Quote
We just have a s90, and we want to help you... A kind of "for newbie developpers" could be great, but i don't know if we need two years of studies before... :)
http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera (http://chdk.wikia.com/wiki/Adding_support_for_a_new_camera)
You need a good understanding of C and assembler to follow these directions. The level of knowledge required is equivalent to a year or so worth of university courses, and obviously beyond the scope of this forum and the CHDK wiki.
Title: Re: S90 Porting Thread
Post by: shaltzman on 31 / March / 2010, 12:21:42
Thanks for your clear reply!
So we just can wait  and hope for an amazing result of CHDK into the S90!!!It will be great!
bye
Title: Re: S90 Porting Thread
Post by: Microfunguy on 05 / April / 2010, 06:54:46
I have emailed rachelkitty and battika to ask if they can upload their compilable code somewhere so that others can attempt to take this forward.

It would be a shame to waste their effort and have to start from 'scratch'.


David
Title: Re: S90 Porting Thread
Post by: ERR99 on 08 / April / 2010, 11:13:48
Not much porting activity here anymore, as i see...
Anyway, unfortunately for my bankaccount balance, i could not resist to buy a S90.   :P
It has a "new" Firmware: 101a. The modified udumper from the G11 port was also working on the S90, so here ist the dump of the new firmware: http://www.zshare.net/download/74742478986973cd/ (http://www.zshare.net/download/74742478986973cd/)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 08 / April / 2010, 12:04:18
rachelkitty and battika never responded to my emails but I am glad to say that ERR99 did (see above).

I am quite sure this camera will be ported very soon   :)
Title: Re: S90 Porting Thread
Post by: fe50 on 09 / April / 2010, 01:22:31
Added the S90 1.01A dump from this post (http://chdk.setepontos.com/index.php/topic,4509.msg48402.html#msg48402) (8MB, from ERR99, dumped with a modified G11 udumper) to the drop.io - chdkdumps2 (http://drop.io/chdkdumps2) backup archive.
  http://drop.io/chdkdumps2/asset/s90-101a-7z
Thx to the 'dumpers' & uploaders !
Title: Re: S90 Porting Thread
Post by: ERR99 on 10 / April / 2010, 12:39:11
Today i got some porting progress on the 101a firmware, i think...   :D
Title: Re: S90 Porting Thread
Post by: Microfunguy on 10 / April / 2010, 13:50:29
Excellent !

At least there is nothing special about the bitmap overlay.

From now on, it should just be the tedious process of checking function and variable addresses, getting keyboard, movie, image-capture and possibly dual-partitioning working.

Don't know if you bothered about supporting the firmware-update method, personally I do not.


David
Title: Re: S90 Porting Thread
Post by: genervi on 10 / April / 2010, 17:18:53
Hey Err99 :D

Nice to see U here ! ! !

You will not regread it - the S90 is my favorite little "takewithme" Cam.

But my Firmware is the 1.00C - so I can`t use your dump.

Please be so gentlelike and bring me in  :)

greetzz

genervi
Title: Re: S90 Porting Thread
Post by: ERR99 on 10 / April / 2010, 18:04:51
Porting is going on very well. I got now the keyboard & jogdial stuff up&running, so i can navigate through all the CHDK menus.
Exposure overrides looks also so good. Dual-partioning is allready ported, but i have to test ist. There is still enough to port,check, and debug, but until now it looks good. ;)

When the port for 101a is finished, i will take a look on the 100c fw...  ::)
Title: Re: S90 Porting Thread
Post by: mercurio on 11 / April / 2010, 12:14:47
hy,
i'm new to this and have one question, i tried to get my s90 101c firmware the way described by err99 but the only thing i get after removing the card from the cam is a unformated card. (the af lamp lights and i let the card in for 2 min, batt out, card out, ...)

anyway hope err99 does god progress in porting 101a (hope it will work also on a cam with 101c)

cheers
Title: Re: S90 Porting Thread
Post by: ERR99 on 11 / April / 2010, 13:26:10
Yet another firmware... the S90 is really very much like the G11 on this topic...  :'(

What kind of card (Size, SD or SDHC) are you using?
Did you prepared the card with cardtricks (NewDryOs dumper) and then replaced the diskboot.bin on the sd-card?
(I use a small SD 2GB, FAT16 formated card for this).
Title: Re: S90 Porting Thread
Post by: ERR99 on 11 / April / 2010, 13:41:17
For the people who cant wait to play arround with CHDK on the S90, i attached a engineering drop of the current port.
It is for the 101a FW (maybe it is also working on 101c, depends on how much canon has changed).

All the hook task are implemented, and also a lot of the other stuff. So you can try e.g. the exposure and captures overrides. CHDK RAW (no DNG support yet) should also work. The "optical zoom unlock" makes a little bit trouble, so dont wonder if zooming is sometimes not working in movie mode, when this override is activated.

Title: Re: S90 Porting Thread
Post by: genervi on 11 / April / 2010, 15:09:15
...
It is for the 101a FW (maybe it is also working on 101c, depends on how much canon has changed).


nope...looks like s90 is really much like g11 - my s90 don`t starts with the diskboot for FW 101a :(
Title: Re: S90 Porting Thread
Post by: jblc on 11 / April / 2010, 17:40:54
  Nice, ERR99 !  I have 101A and it felt really good to play around in chdk again.

  In the two minutes I've had this, a few observations:
- looks awesome, thanks for working on this ;)
- With the camera powered off and turning on to play mode via the PLAY button, the lens extends into shooting mode as though the power button were pressed.
- When in Av mode, after entering and exiting the chdk menu, the aperture changes to seemingly random values (i.e. it was F2 when entering, 5.6 or 8 after exiting, as though the control ring was both navigating in chdk and also changing aperture values at the same time).  The same goes for other manual modes, where the shutter speed will be drastically different after exiting.
- the camera's built-in histogram really gets in the way when in the chdk menu, maybe there's a way to disable that automatically when in the menus
- sometimes the entire menu (and CHDK) system just vanishes when navigating downwards in the main menu.  At first it looks like it's exited ALT mode, but then after further presses the menu seems to come back.
Title: Re: S90 Porting Thread
Post by: Technics on 12 / April / 2010, 01:43:35
Another successful boot here. Thank you for the hard work ERR99.

I bought this S90 two days ago so perfect timing. :) Will give some feedback when I have a chance to do some actual testing (should be working).
Title: Re: S90 Porting Thread
Post by: genervi on 12 / April / 2010, 03:18:01
hy,
i'm new to this and have one question, i tried to get my s90 101c firmware the way described by err99 but the only thing i get after removing the card from the cam is a unformated card. (the af lamp lights and i let the card in for 2 min, batt out, card out, ...)

anyway hope err99 does god progress in porting 101a (hope it will work also on a cam with 101c)

cheers

Me too, with the Primary bin my s90 boots - it says cardfailure.

With the Diskboot for 101a my s90 101c doesn`t boot - i have to turn the batt out, before I can use it again.
Title: Re: S90 Porting Thread
Post by: ERR99 on 12 / April / 2010, 03:52:07
PRIMARY.bin is only a 1:1 copy of the internal S90 Flash and does not contains a single line of CHDK code. This file is needed to do the port, but it is no chdk-port. So this file is completly ignored by the camera. So its clear that the S90 boots and shows an error because of the SD card lock.

So there are adapted ports needed for the other firmware versions, great....  :haha
Title: Re: S90 Porting Thread
Post by: genervi on 12 / April / 2010, 04:28:57
I feel like iam in the never ending story - canon should make it easyer for us, or implement the right, flexible choices in FW. :'(
Title: Re: S90 Porting Thread
Post by: mercurio on 12 / April / 2010, 17:44:51
Yet another firmware... the S90 is really very much like the G11 on this topic...  :'(

What kind of card (Size, SD or SDHC) are you using?
Did you prepared the card with cardtricks (NewDryOs dumper) and then replaced the diskboot.bin on the sd-card?
(I use a small SD 2GB, FAT16 formated card for this).


i use a 4 GB SDHC card, formated FAT16 with cardtricks and prepared it like you wrote. but as i mentioned the af led turns on and if i remove it after a few minutes the card is kinda empty (i guess it messes up the file system somehow).
i tried to use your 101a port on my 101c but it doesn't work at all (camer doesn't boot).
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 03:16:33
So, here is the first try of a 100c CHDK port for the S90.
100c users, pleasy try if its boot on a S90, i dont have this firmware, so i cant test it by my self.

<Update: Useless file deleted>
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 04:11:02
  Nice, ERR99 !  I have 101A and it felt really good to play around in chdk again.
- With the camera powered off and turning on to play mode via the PLAY button, the lens extends into shooting mode as though the power button were pressed.
- When in Av mode, after entering and exiting the chdk menu, the aperture changes to seemingly random values (i.e. it was F2 when entering, 5.6 or 8 after exiting, as though the control ring was both navigating in chdk and also changing aperture values at the same time).  The same goes for other manual modes, where the shutter speed will be drastically different after exiting.
- the camera's built-in histogram really gets in the way when in the chdk menu, maybe there's a way to disable that automatically when in the menus
- sometimes the entire menu (and CHDK) system just vanishes when navigating downwards in the main menu.  At first it looks like it's exited ALT mode, but then after further presses the menu seems to come back.


I have here a new build for 101a. This should fix issue 1 (Powerbutton/Playbutton handling).
For issue 2, i changed the Jogdialtask blocking code. It think it works now better (not all Jogdial events are queued and send to the camera after leaving altmode). But it is still not perfect, because one single jogdial event is still passed to the camera. I try to find a solution for that. ;)
Issue 3 is camera related. The best way to avoid this, is to enter playmode. In this mode the original firmware does not schow the histogram. That sometimes the menu disappears is (more or less) normal. The CHDK display output was then overwritten from the canon dislplay output. Simply push a button, or use the jogdial to force a redraw of the chdk menu to workarround that.

So here is the update 101a Version:
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 04:29:32
hey Err99,

thank a lot for first testing with 100c.
the 100c-diskboot still not boot on my s90 - now i don`t have to remove the batt to use the cam again normally.

greetz
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 04:31:00
sorry - doublepost caused of serverprobs  :-[
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 05:05:12
Okay. i disabled now almost all of the task hooks in the 100c, lets see if one of those is making trouble.
Please check if the attached build boots and the CHDK splashscreen comes up or not.

<Update: Useless file deleted>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 05:38:01
nope, same as before :-[
Title: Re: S90 Porting Thread
Post by: Technics on 13 / April / 2010, 07:31:08
Are you talking about the same camera firmware? ERR99 has a build for 101a and 100c and it seems you have 101c instead. Is this correct? if so it seems 101c hasn't been extracted yet.
Title: Re: S90 Porting Thread
Post by: Technics on 13 / April / 2010, 07:46:32

So here is the update 101a Version:


Hi ERR99. Thanks for another update. Strangely now the camera seems to boot straight into playback mode even when the power button is pressed. A half shutter press is required to kick it back into capture mode. Haven' t come across the other jogdial issues mentioned but that is mostly because I've been accessing the menu in playback mode.
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 07:49:29
Are you talking about the same camera firmware? ERR99 has a build for 101a and 100c and it seems you have 101c instead. Is this correct? if so it seems 101c hasn't been extracted yet.

sorry - i have the 100c - just a type mistake. Does an 101c exist?

[edit:sorry my english is better than it seems ;)]
Title: Re: S90 Porting Thread
Post by: Technics on 13 / April / 2010, 07:58:16
Not as far as I'm aware. I thought maybe you had a new version. 101a came on a S90 I picked up a few days ago seems unlikely.
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 08:24:25

So here is the update 101a Version:


Hi ERR99. Thanks for another update. Strangely now the camera seems to boot straight into playback mode even when the power button is pressed.
Thats normal CHDK behaviour. You have to press the power button longer (1-2s), then the camera starts directly into shooting mode.
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 08:28:40
nope, same as before :-[
100c, third try: Fixed some wrong function pointers. So please try the attached file.
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 08:48:47

100c, third try: Fixed some wrong function pointers. So please try the attached file.

how should i say it? - the cam is a diva. Third diskboot.bin, and she wouldn`t boot it ;)
now its recommend to put the batt out before using again.
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 09:29:15
100c, next try, now without filemodules task:
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 09:30:51
Another one: 100c without filemodules and PhySw task.
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: yujin on 13 / April / 2010, 09:51:06
I have a quick test on my S90 with fw 1.01a. Optical zoom while taking movie works perfectly!

MF using Zoom lever doesn't work, I assume it is normal, right?

Thx ERR99 for bringing CHDK to us!
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 09:51:55
thanks again, but it seems not to be our day .. no booting on both 100c diskboots now, also tested with second sd card :(
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 09:52:43
If both above 100c files are not working, test this one (its without spytask):
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 10:09:28
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 10:13:49
Okay. Please check if this build is also booting and if the write protect message is gone:
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 10:21:22
Okay. Please check if this build is also booting and if the write protect message is gone:

No, this one don`t boots
Title: Re: S90 Porting Thread
Post by: casimero on 13 / April / 2010, 10:28:18
Okay. Please check if this build is also booting and if the write protect message is gone:

No, this one don`t boots
here the same  :(
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 10:49:54
Oh dear, it looks like that some how my IDA workspace of the 100c gots corrupted. So i extracted a lot of wrong
stubs_entry_2.s pointer. >:( If have to scratch that work and do it again. This will take some time.... 
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 10:57:46
Oh dear, it looks like that some how my IDA workspace of the 100c gots corrupted. So i extracted a lot of wrong
stubs_entry_2.s pointer. >:( If have to scratch that work and do it again. This will take some time.... 
Sorry for this :(
I`ll think of U .. and wait patiently :)
Title: Re: S90 Porting Thread
Post by: mercurio on 13 / April / 2010, 11:42:13
Not as far as I'm aware. I thought maybe you had a new version. 101a came on a S90 I picked up a few days ago seems unlikely.

as i stated before i have one which says GM1.01c so i suppose its 101C, but as i tried to dump the fm it doesn't work at all. (4gb sdhc card) anny hints?
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 12:08:18
as i stated before i have one which says GM1.01c so i suppose its 101C, but as i tried to dump the fm it doesn't work at all. (4gb sdhc card) anny hints?

hello mercurio,

please read the instructions - you find them on other point of this forum.

To know wich FW you have you can use Attached ver.req - put it on sd - switch cam on in play mode while pressing set, then holding and press display once, on the screen you can see your FWcode.

For the dump you should begin with a 2GB card - with cards over 2GB its a little complicated - you find the instructions in the help files in this forum.

Have fun

gen

EDIT: Link to help Posts: http://chdk.setepontos.com/index.php/board,4.0.html (http://chdk.setepontos.com/index.php/board,4.0.html)
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 13:18:28
Okay, lets try again a 100c build. Most of the stuff is still disabled, but hopefully the functions/functionpointer are now correct. So lets try a build, only with activated Physwitch task. If everything is correct, camera should boot (without write protect message). So please test this on 1 S90 with 100c firmware.
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 13:31:59
Okay, lets try again a 100c build. Most of the stuff is still disabled, but hopefully the functions/functionpointer are now correct. So lets try a build, only with activated Physwitch task. If everything is correct, camera should boot (without write protect message). So please test this on 1 S90 with 100c firmware.

YES  :)

S90 is booting without write protect message ! ! !
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 13:41:21
I'm booting up too with 100c.

Gregg
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 14:06:04
Fine. ;)

So lets try starting the SpyTask on 100c. CHDK splash screen should be visible after a small delay (if everything is ok).

<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 14:09:55
Fine. ;)

So lets try starting the SpyTask on 100c. CHDK splash screen should be visible after a small delay (if everything is ok).



Second yes .. very good work! ;-)

booting - chdk splash screen is visible!
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 14:17:39
Splash screen was visible after the short delay.

So far so good. Thank you.

Gregg
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 14:18:27
Very nice.  :D

Now i activated all hook tasks for 100c, lets see what happens...
<FILE DELETED>
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 14:23:00
Same as before - is that good? ;-)
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 14:24:58
We have ignition!!!

I can bring up the CHDK menus but will need time to test the functionality.

I start tested and let you know.

Thank you Sooooooooooo much for all you effort.

Gregg
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 14:30:31
Same as before - is that good? ;-)
Oh yes, very good. If it boots and does not crash, then we have it! (The port for 100c... ;) )

Do some tests to verify that the hook task are working properly and does not crash the camera:

- Use the jogdial in ALT mode
- Capture some pictures with and without activated overrides (ISO, AV, Time, override etc)
- Make a movie with and without movie overrides (optical zoom and AF-Scan)
- Use the SDMInstaller to create two partitions on a big SDHC-Card to test if the boot for cards >=4GB is working.
- Test if switching on via PLAY button and ON/OFF button is working as expected (like the G11... ;) )
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 14:31:44
Menus work, some functionality such as the calandar but nothing else I've tested so far, mostly OSD function, but none of them are working.

Gregg
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 14:41:56
Oh yes, very good.

 :o COOL - Thank you very much spend your time for me and CHDK again ;-) You are my Hero   :-*

Now I can begin test several funcs of the software. Thanks thanks thanks ! ! !
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 14:57:22
Override functions seem to be working. The OSD functions are intermittent and only seem to display in the playback mode even though I set it to not hide the OSD. I haven't tested any script yet but will soon.

Gregg
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 14:58:48

- Use the jogdial in ALT mode
- Make a movie with and without movie overrides (optical zoom and AF-Scan)
- Test if switching on via PLAY button and ON/OFF button is working as expected (like the G11... ;) )


- the jogdial funzt in menu
- optical zoom in video mode does his work BUT if you go into digital zoom the optical zoom does not move back again - if you only zoom till 3,8x then it works perfektly.
- Switching on via Play Button and on/off button is working!
Title: Re: S90 Porting Thread
Post by: mercurio on 13 / April / 2010, 15:20:48
so, i hope i finally was able to get a 101c dump. err99 it would be great if you could tell me if it looks ok, as i'm not really sure.
i'm now working on a mac, prepared a 4gb sdhc card with sdminst (tow partitions), and used your modified udumper.
http://www.zshare.net/download/749308691d23073c/ (http://www.zshare.net/download/749308691d23073c/)
Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 15:24:32
Scripting works fine. I ran 3 scripts. OSD works only in the AUTO mode. Seems that all functionality I've tested works fine except for the OSD working only in AUTO.

Thank you so much for the great effort and contribution you have made to CHDK.
I've owned my S90 since the day it was release last August or September (can't remember) and have been dying to get CHDK working on this camera.

Greatfully submitted,
Gregg

Title: Re: S90 Porting Thread
Post by: gsbergman on 13 / April / 2010, 15:29:24
Only thing I failed to mentioned is that with CHDK, the camera seems to boot slower? Outside of that, it's looking fine.

Gregg
Title: Re: S90 Porting Thread
Post by: jblc on 13 / April / 2010, 15:35:54
Interesting.  Is that a new chdk standard?  Because with chdk on my A570IS, I dont' remember seeing this: I thought booting was normally directly into capture mode with a press of the power button.


So here is the update 101a Version:


Hi ERR99. Thanks for another update. Strangely now the camera seems to boot straight into playback mode even when the power button is pressed.
Thats normal CHDK behaviour. You have to press the power button longer (1-2s), then the camera starts directly into shooting mode.
Title: Re: S90 Porting Thread
Post by: 3Dguy on 13 / April / 2010, 15:42:20
I just wanted to add that, as someone who bought an S90 early on (100 FW) I am glad to see progress on the port.

I look forward to a successful port and eagerly offer support, encouragement and praise!
Title: Re: S90 Porting Thread
Post by: jblc on 13 / April / 2010, 15:49:07
  Thank you!

  A few issues for the 101a build:

  The jog dial and control pad buttons are now seemingly unresponsive most of the time, in particular when switching between manual modes.  The Menu button usually works first, and that sort of kicks the rest of the buttons into operation, but there are large periods of time when none of the control buttons work, and then all of a sudden the accumulated many actions are sent to the camera and it sort of goes crazy.

On a side note, are CCHDK.CFG files from older builds usable in newer ones?

I have here a new build for 101a. This should fix issue 1 (Powerbutton/Playbutton handling).
For issue 2, i changed the Jogdialtask blocking code. It think it works now better (not all Jogdial events are queued and send to the camera after leaving altmode). But it is still not perfect, because one single jogdial event is still passed to the camera. I try to find a solution for that. ;)
Issue 3 is camera related. The best way to avoid this, is to enter playmode. In this mode the original firmware does not schow the histogram. That sometimes the menu disappears is (more or less) normal. The CHDK display output was then overwritten from the canon dislplay output. Simply push a button, or use the jogdial to force a redraw of the chdk menu to workarround that.

So here is the update 101a Version:

Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 16:15:30
- Use the SDMInstaller to create two partitions on a big SDHC-Card to test if the boot for cards >=4GB is working.

Does anyone uses a card over 4GB? All my tests with 8GB and 16GB failed with SDMinstaller.

The 16GB iam using runs chdk on the g11 in the past.
Title: Re: S90 Porting Thread
Post by: amoor on 13 / April / 2010, 16:57:12
all my tests with 4 and 16 gig have failed. i've only been able to get a 1 gig card working.
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 17:04:41
all my tests with 4 and 16 gig have failed. i've only been able to get a 1 gig card working.


thanks - so its not on me :)
Title: Re: S90 Porting Thread
Post by: sandeman on 13 / April / 2010, 17:09:45
Interesting.  Is that a new chdk standard?  Because with chdk on my A570IS, I dont' remember seeing this: I thought booting was normally directly into capture mode with a press of the power button.

The A570IS has a hardware switch to select play/rec mode. Most newer Canon cameras do this by push-button and therefore are not set in a mode as definite as the old ones. For some reason, they all boot in play mode when CHDK is loaded (except when the power button is held for a few seconds).
Title: Re: S90 Porting Thread
Post by: jblc on 13 / April / 2010, 17:23:06
all my tests with 4 and 16 gig have failed. i've only been able to get a 1 gig card working.


I'm using a 4Gb card on 101a, and the first build worked almost flawlessly...
Title: Re: S90 Porting Thread
Post by: amoor on 13 / April / 2010, 17:28:39
it
all my tests with 4 and 16 gig have failed. i've only been able to get a 1 gig card working.


I'm using a 4Gb card on 101a, and the first build worked almost flawlessly...

I'll try at home again with my 4 gig i have different versions of Mac os between home and work.
At work the 4 GIG card isn't recognized by SMDinstaller, but the 16 gig is.
i've tried to make 2 partitions on the card manually, but no luck.
*shrug*
Title: Re: S90 Porting Thread
Post by: ERR99 on 13 / April / 2010, 17:38:01
I think i found the problem regarding the 100c build. Please check if with the attached file,
booting from a two partition/SDM-Installer prepared card works.
Title: Re: S90 Porting Thread
Post by: genervi on 13 / April / 2010, 17:46:08
I think i found the problem regarding the 100c build. Please check if with the attached file,
booting from a two partition/SDM-Installer prepared card works.

my Genius :)

now i can run my 16gb sd card with chdk.

but my german language choice adapted from my g11 chdk pack don`t run .. now i have to wait for the s90 package...EDIT...now its working...had to put the files in the bigger part...my mistake!

Thanks ERR99 for your work again again again :)
Title: Re: S90 Porting Thread
Post by: jblc on 13 / April / 2010, 21:15:43

The A570IS has a hardware switch to select play/rec mode. Most newer Canon cameras do this by push-button and therefore are not set in a mode as definite as the old ones. For some reason, they all boot in play mode when CHDK is loaded (except when the power button is held for a few seconds).

If that's true, and ERR99 had a way to get it into Capture mode immediately as before in his first chdk version, can I suggest that we leave the lens-extend on playback, so that the camera powers up to Capture mode immediately?  That is a far better alternative it seems to me...
Title: Re: S90 Porting Thread
Post by: amoor on 13 / April / 2010, 22:18:09
I think i found the problem regarding the 100c build. Please check if with the attached file,
booting from a two partition/SDM-Installer prepared card works.
my camera does not turn on with the 100c build. is there a diffrence between 100c and 100a?
excuse the noobness here
Title: Re: S90 Porting Thread
Post by: amoor on 13 / April / 2010, 22:53:22
okay so i've tried both my 4 gig and 16 gig cards, and neither one of them work.
SDM installer does not recognize the 16 gig card and has a copy error on the 4 gig
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 03:21:56
so, i hope i finally was able to get a 101c dump. err99 it would be great if you could tell me if it looks ok, as i'm not really sure.
i'm now working on a mac, prepared a 4gb sdhc card with sdminst (tow partitions), and used your modified udumper.
http://www.zshare.net/download/749308691d23073c/ (http://www.zshare.net/download/749308691d23073c/)

Yes, 101c dump looks good! It needs only to be cleaned/stripped, to remove the trailing bytes from the empty.dum file.
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 03:25:42
I think i found the problem regarding the 100c build. Please check if with the attached file,
booting from a two partition/SDM-Installer prepared card works.
my camera does not turn on with the 100c build. is there a diffrence between 100c and 100a?
excuse the noobness here
You have to use the correct diskboot.bin file for you camera firmware.
If you camera hat 101a firmware, you have to use the 101a port. 100c port does not work on cameras with 101a firmware.
Title: Re: S90 Porting Thread
Post by: mercurio on 14 / April / 2010, 03:41:36
so, i hope i finally was able to get a 101c dump. err99 it would be great if you could tell me if it looks ok, as i'm not really sure.
i'm now working on a mac, prepared a 4gb sdhc card with sdminst (tow partitions), and used your modified udumper.
http://www.zshare.net/download/749308691d23073c/ (http://www.zshare.net/download/749308691d23073c/)

Yes, 101c dump looks good! It needs only to be cleaned/stripped, to remove the trailing bytes from the empty.dum file.

great, thanks for having a look. i hope you maybe find some time to try to make a port for the 101c (neither the 100c nor the 101a prots work).

some general (maybe) useful information:
i got the dump with the modified g11 udumper on a 4gb card, i found out that somewhere in the doc the max. capacity of a card for using udumper is 2gb. as my dumping process worked i suppose the limitation is not the card size but the partition size.
as i'm using a mac i prepared the card with sdminst and copied the modified g11 udumper and the empty.dum to the first partition.
that's the reason for the dummy bites left in my dump file.
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 10:50:35
great, thanks for having a look. i hope you maybe find some time to try to make a port for the 101c (neither the 100c nor the 101a prots work).
Okay, here a first try for a 101c port: Test if the attached file boots. If everything is correct, camera should boot without card write protect message.
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 10:52:49
If the above file boots, try also this one. This time also the CHDK Splashscreen should be visible and the CHDK Menu int ALT mode accessable (but no overrivedes will be functional).
Title: Re: S90 Porting Thread
Post by: mercurio on 14 / April / 2010, 11:00:54
both work, chdk screen is visible, chdk menu is accesable.

thanks a lot so far, u're great
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 11:04:16
Thats good!  :D
Next steps are to implement the overrides tasks (Exposure, Capture, Movie, etc.).
I will post a build when i finished that for 101c. ;)
Title: Re: S90 Porting Thread
Post by: amoor on 14 / April / 2010, 13:35:06
@ ERR99,
is 101a complete?
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 15:41:07
@ ERR99,
is 101a complete?
It depends of your definition of complete... ;)
From the "Feature view" 101a and 100c have the same state of completion. There are of course some minor problems left (optical zooming in videomode hangs sometimes, set_led for script use is not adapted to the S90, blocking of Jodgdial events to the oem firmware in altmode can be optimized). But most off the stuff other should work. If you find something that not work, post it here.
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 15:43:40
I will post a build when i finished that for 101c. ;)

So, here is the new build for 101c. Please try if its boot and if everything is working. ;)
Title: Re: S90 Porting Thread
Post by: jblc on 14 / April / 2010, 16:02:07
If you find something that not work, post it here.

From an earlier post, regarding the second 101a version:

"A few issues for the 101a build:

  The jog dial and control pad buttons are now seemingly unresponsive most of the time, in particular when switching between manual modes.  The Menu button usually works first, and that sort of kicks the rest of the buttons into operation, but there are large periods of time when none of the control buttons work, and then all of a sudden the accumulated many actions are sent to the camera and it sort of goes crazy."
Title: Re: S90 Porting Thread
Post by: Michael L on 14 / April / 2010, 16:36:00
I am trying ver. 101a.  I have not done extensive testing, but I have noticed that when I boot with my SDHC card locked (but not in alt mode) the front control ring does not work properly when changing aperture or shutter speed.  When I unlock the card and boot, these functions work properly.  The rear control dial seems to be functioning properly.

I am also trying to use a USB remote shutter release.  I have enabled remote in the remote parameters menu and have started a couple of the USB scripts, but without reliable success.  Any advice on a script that will work?

The following scripts both triggered the camera occasionally, but not reliably as in the past with an SD870:

@title Remote button
:loop
wait_click 1
is_key k "remote"
if k=1 then shoot
goto "loop"
end

---------------------------------------------

@title Remote button
while 1
  wait_click 1
  if is_key "remote" then shoot
wend

end
Title: Re: S90 Porting Thread
Post by: jblc on 14 / April / 2010, 16:52:04
  I used a USB remote successfully with the S90 with the first 101a build.  

I don't know if this'll help.  But I heard that the

while a = 0
a = USB_power
wend

code (or something similar) always works, while "is_key..." doesn't always work, so that's what I used.  I didn't try the is_key "remote" though, but with USB_power it works reliably.


EDIT: oh, and I didn't have to enable the USB remote option for that code to work; in the menu it's still deactivated yet the remote works.
Title: Re: S90 Porting Thread
Post by: Michael L on 14 / April / 2010, 17:09:08
Thanks for the quick reply, jblc!

Was that the entire script you ran than worked, or were there other lines?

I ran the following and it froze my camera:

while a = 0
a = USB_power
wend

If there are additional lines I need, can you please post the entire script?

Thanks!

If I get this working, I'll be trying the S90 for some kite aerial photos later this afternoon.  If I can't get the USB remote working, I'll probably just use an intervalometer script that is working well.


Title: Re: S90 Porting Thread
Post by: mercurio on 14 / April / 2010, 17:16:38
I will post a build when i finished that for 101c. ;)

So, here is the new build for 101c. Please try if its boot and if everything is working. ;)

hy err99,

thanks for all your work, but i'm sad to report that 101c isn't really working.
using the new build the cam dosen't take any pictures anymore (it hangs with the orange led next to the s-button blinking). using the optical zoom while taking videos works only randomly and if it leads to a fixed zoom value till rebooting the cam.
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 17:44:55
Hi,

here is  a new 101c (V2) build, please check if taking photos is now working properly.

Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 17:50:37
  The jog dial and control pad buttons are now seemingly unresponsive most of the time, in particular when switching between manual modes.
Yes, true. Looks like my last try to block the encoder have some side effects. :(
Okay, for now i switched back to the old implementation for the jogdial task. I can see any
unresponsive sideeffects with this, but after leaving the ALT mode, all jogdials events in ALT mode are also passed to the canon firmware. So dont wonder about changed AV/TV values...

So here is a new version for 101a (lets call ist also "V2" like the 101c build ;) )
Title: Re: S90 Porting Thread
Post by: ERR99 on 14 / April / 2010, 17:52:03
An here the same "V2" build for 100c:
Title: Re: S90 Porting Thread
Post by: Michael L on 14 / April / 2010, 17:56:27
I really appreciate all your hard work on the S90, ERR99!
Title: Re: S90 Porting Thread
Post by: jblc on 14 / April / 2010, 18:10:42
I'll look later when I get home and see what I had.  In the meantime maybe try


do
a = get_usb_power
until a>0


don't know if that will work.

If there are additional lines I need, can you please post the entire script?

Thanks!

If I get this working, I'll be trying the S90 for some kite aerial photos later this afternoon.  If I can't get the USB remote working, I'll probably just use an intervalometer script that is working well.

Title: Re: S90 Porting Thread
Post by: Martlet on 15 / April / 2010, 00:09:07
I just want to the ERR99 and everyone else who put together the S90 port.  I have FW 1.00c and just installed the 1.00C build.  At first blush it's looking great!  I really missed using CHDK when I upgraded to the S90 and now it's back!  

I just can't thank you guys enough!
Title: Re: S90 Porting Thread
Post by: waldenk on 15 / April / 2010, 02:30:47
quick question...from a relatively non-technical...but --highly-- appreciative observer of the way cool ongoing s90 chdk work. will the s90 chdk offer a timelapse/intervalometer function? that would be nirvana...a genuine timelapse capability on my s90. thanks for any info.
Title: Re: S90 Porting Thread
Post by: jblc on 15 / April / 2010, 02:43:13
  ERR99, you're awesome;)  Thank you for the continued work, this is pretty exciting to have.  It looks like it works well.
--> Question: is "set_backlight(0)" supposed to disable the LCD?  It turns it off UNTIL a photo is taken...then the LCD turns on after each photo.  Is this a bug or the way it's supposed to work?
--> When a script receives the USB remote input, as soon as the remote is activated a photo is taken even though in the script there's a long delay before the camera should shoot.  The camera shoots again later at the right time, but there's that extra photo at the start. "Remote" is disabled in the chdk menu.  This might be normal operation or a bug; I'm not sure.


So here is a new version for 101a (lets call ist also "V2" like the 101c build ;) )
Title: Re: S90 Porting Thread
Post by: mercurio on 15 / April / 2010, 06:37:16
Hi,

here is  a new 101c (V2) build, please check if taking photos is now working properly.



hi,

thanks a lot for the new build. taking pics works now, overrides in picture mode also work.
optical zooming in video mode works (only sometimes randomly) only for a few seconds and locks the zoom (optical and digital, the cam seems not to accept any commands from the lever anymore).
scripting works.
the rest also seems to be working.
Title: Re: S90 Porting Thread
Post by: myghal on 15 / April / 2010, 08:20:56
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 10:02:31
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 10:47:06
optical zooming in video mode works (only sometimes randomly) only for a few seconds and locks the zoom (optical and digital, the cam seems not to accept any commands from the lever anymore).
Yes, this problem is known and also with the other fw-builds.
But i think i found a solution for that. So here comes "V3" beta version, please check if zooming during video recording is know working properly and also test if the keyboard/usb stuff is working as expected (i made slight change in the kbd-task). The Jogdial problem is still there, so dont expect any change on this topic.

Beta V3 for 101a:
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 10:47:59
Beta V3 for 101c:
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 10:48:34
Beta V3 for 100c:
Title: Re: S90 Porting Thread
Post by: Michael L on 15 / April / 2010, 11:04:28
ERR99....is one of those recent 101c versions that were uploaded less than 1 minute apart supposed to be for 101a?
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 11:24:47
ERR99....is one of those recent 101c versions that were uploaded less than 1 minute apart supposed to be for 101a?
There is only one V3 build posted for 101c.
For 101a, use the first V3 post with the name "Beta V3 for 101a:"
Title: Re: S90 Porting Thread
Post by: mercurio on 15 / April / 2010, 11:25:07
Beta V3 for 101c:
thanks a lot err99, optical zooming in viedo mode on 101c now works without any problems.
Title: Re: S90 Porting Thread
Post by: amoor on 15 / April / 2010, 11:27:16
sorry another noob question.
where does one get a remote for the s90.
i am looking to use my s90 for a KAP rig (kite aerial photography) so the usb option might not work
thanks.
Title: Re: S90 Porting Thread
Post by: jblc on 15 / April / 2010, 15:21:15
Yes, this problem is known and also with the other fw-builds.
But i think i found a solution for that. So here comes "V3" beta version, please check if zooming during video recording is know working properly and also test if the keyboard/usb stuff is working as expected (i made slight change in the kbd-task). The Jogdial problem is still there, so dont expect any change on this topic.
Beta V3 for 101a:

optical zooming works, no problems!  Thank you:)
Title: Re: S90 Porting Thread
Post by: jblc on 15 / April / 2010, 15:22:16
http://chdk.setepontos.com/index.php/topic,294.0.html (http://chdk.setepontos.com/index.php/topic,294.0.html)

sorry another noob question.
where does one get a remote for the s90.
i am looking to use my s90 for a KAP rig (kite aerial photography) so the usb option might not work
thanks.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 15 / April / 2010, 16:00:17
sorry another noob question.
where does one get a remote for the s90.

See the first four suppliers here : http://stereo.jpn.org/eng/sdm/suppliers.htm (http://stereo.jpn.org/eng/sdm/suppliers.htm)


This may also be of interest :-

http://www.gentles.ltd.uk/clickpan/ (http://www.gentles.ltd.uk/clickpan/)
http://www.zenoshrdlu.com/clickpansdm/ (http://www.zenoshrdlu.com/clickpansdm/)
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 16:19:22
Good news, PS.FI start methode seems also to work on the S90!

On the G11 this does not work and leads to a E31 Error (SubCpu error?) if you try to start a PS.FI build. In the S90
firmwarecode is no sign of any SubCpu code (the S90 seems to no have this SubCpu, what ever this is...), so i tried to boot
a PS.FI via firmware update method, and it works!

So, here is the V3 101a Build as PS.FI version:
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 16:21:47
V3 101c build as PS.FI version:
Title: Re: S90 Porting Thread
Post by: ERR99 on 15 / April / 2010, 16:23:15
V3 100c build as PS.FI version:
Title: Re: S90 Porting Thread
Post by: amoor on 15 / April / 2010, 21:11:41
so i've been playing with the 101a beta3 now for a little bit, here is what i've found
video mode, focus is difficult at extended zoom, however works better if u put the focus mode in macro
in picture mode, there is a delay between the picture being snapped and being displayed on the back .
Title: Re: S90 Porting Thread
Post by: amoor on 15 / April / 2010, 21:58:05
ER99
 will you be coding int remote trigger capabilites? (wireless)
Title: Re: S90 Porting Thread
Post by: ERR99 on 16 / April / 2010, 03:38:48
ER99
 will you be coding int remote trigger capabilites? (wireless)
The S90 does not have any wireless receiver hardware, so the answer is: No
Of course you can build a wireless receiver by yourself that triggers the USB port of the S90.
Remote triggering via USB is allready supported.
Title: Re: S90 Porting Thread
Post by: amoor on 16 / April / 2010, 09:18:48
Thanks ERR99,
im still fairly new to this game so excuse my lack of knowledge.

As for some feedback: Video Mode
when the mode is set to standard, the camera does digital zoom, but when its set to color accent b/w or any other creative mode, the digital zoom and the press set to focus does not work.
Title: Re: S90 Porting Thread
Post by: ERR99 on 16 / April / 2010, 10:56:59
when the mode is set to standard, the camera does digital zoom, but when its set to color accent b/w or any other creative mode, the digital zoom and the press set to focus does not work.
Description regarding digital zoom is correct, but this is not a chdk problem. Start your camera without CHDK and you will see that digital zoom in color accent b/w is also disabled with the oem firmware. I dont know why Canon limits the digital zoom to standard movie mode (maybe it a 'real' bug in the oem firmware). Anyway, thanks to CHDK you can zoom optical in this modes.  ::)
Title: Re: S90 Porting Thread
Post by: Michael L on 16 / April / 2010, 11:13:55
I can confirm that the USB remote is working properly.  When running a couple of different USB remote scripts and having remote enabled in the CHDK menu option, when I connect the camera to my PC with a USB cable, the camera shoots continuously.
Title: Re: S90 Porting Thread
Post by: gsbergman on 16 / April / 2010, 11:36:36
I connected a remote I built last year and tested it. It works perfectly.

So far, this version of CHDK for the S90 purrs like a kitten, nothing I've tested appears to work any differently than how it works on my A570IS, A720IS or my S5IS.

Thanks again for the hard work and effort. The developers deserve a round of applause for their committment to this wonderfully useful piece of work. I know how much pleasure I get making my cheap P&S camera(s) perform feats not even an DSLR can perform. Keep up the fantastic work.

Gregg
Title: Re: S90 Porting Thread
Post by: gsbergman on 16 / April / 2010, 11:51:44
BTW.

I intend to post (when I get the time) the plans I developed for a simple wireless remote control using an $10 doorbell remote. It works great and is a simple 2 hour project if your handy with a soldering iron and basic hand tools. A $3 Radio Shack box and if desired, a power switch and LEDs finish the project nicely. Total investment is under $20 US dollars for a fully decked out unit with the power switch and LED's (one for power indicator, the other for contact closure confirmation). The remote is about 2in x .75in x .5in. but depending of the type of doorbell chosen varies in size. The range is about 25 to 30 ft reliably.

I've also built several wired remotes using small, simple LED flashlights that work great. I'll post the photos and plans for those as well.

Gregg
Title: Re: S90 Porting Thread
Post by: Michael L on 16 / April / 2010, 11:59:55
@gsbergman  (or anyone else using USB remote)

Can you confirm the exact menu settings and script statements you are using for USB remote?  I am having trouble with a triggering device that has worked perfectly in the past and am hoping that a slightly different script and/or menu setting will get it working properly again.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 16 / April / 2010, 12:27:14
I intend to post (when I get the time) the plans I developed for a simple wireless remote control using an $10 doorbell remote.

As a matter of interest, there is a feature in SDM that is specially supports such door bells.

Basically, it triggers as soon as the USB goes high and ignores any repeating pulses for a set time.

This simplified the interface electronics needed or even allowed you to connect straight to the pulse signal to the audible alarm.


David
Title: Re: S90 Porting Thread
Post by: gsbergman on 16 / April / 2010, 13:22:53
David,

What feature is that? Where would I find it? I use SDM with my pair of A570IS cameras for stereo. I also use the doorbell remote I made with SDM. But I designed a simple circuit to hold the pulse high for a longer period (can't recall how many milliseconds) but long enough to prevent repeated firing. It works fine but this feature you speak about sounds like it would be desirable to implement into CHDK. If that were to be done, the doorbell remote would be even easier not requiring anything special to implement.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 16 / April / 2010, 14:17:25
In Advanced\Miscellaneous you can set a pulse lockout time in seconds.

SDM has to be in FAST mode to trigger as soon as pulse detected so in Bracketing menu set focus mode to anything but Off.

Normally, focus mode is a continuous-shooting bracketing setting but in single-shot mode is set triggering mode to FAST.

Let us know how you get on.


David
Title: Re: S90 Porting Thread
Post by: 3Dguy on 16 / April / 2010, 18:24:01
A very nice, compact, and functional IR receiver can be used with several inexpensive ir remote controllers such as Apple's.

It works.

I have no connection with this item other than owning one and recommending it:

http://www.canoremote.de/ (http://www.canoremote.de/)

There are also plans on the web for DIY ones if ir is what you want/need as opposed to wired.


Title: Re: S90 Porting Thread
Post by: fe50 on 17 / April / 2010, 07:47:23
A very nice, compact, and functional IR receiver can be used with several inexpensive ir remote controllers such as Apple's.
--> Dirk's (stb) canoremote: http://chdk.setepontos.com/index.php/topic,2421.0.html (http://chdk.setepontos.com/index.php/topic,2421.0.html)


<OT>
BTW - i thought, this is the S90 porting thread, not the "SDM user's guide" ;)

In Advanced\Miscellaneous you can set a pulse lockout time in seconds.
</OT>
Title: Re: S90 Porting Thread
Post by: hqasem on 17 / April / 2010, 08:18:19
ERR99- Thank you so much for all your efforts. CHDK ran perfectly on a 4GB card. Now, I'm trying with a 16GB, but I can't seem to make it "auto-load" CHDK. Manual Firmware Updates works fine.

Is "Miscellaneous stuff -> Swap partitions" fully implemented?

Thank you!

P.S. This is my first time running CHDK on an SDHC card (over 4GB), and I was unable to partition the SD card under Windows XP (I had to use Linux). Windows was unable to read ANY partition of my [partitioned] SD card, so any help is greatly appreciated.

P.S.S. When I select "Create card with two partitions" from CHDK, Windows XP SP3 claims the drive [SD card] is not formatted. If I agree to format it, Windows formats the entire SD card, deleting the partition table. So Windows: Case #4 (http://chdk.wikia.com/wiki/Bootable_SD_card) doesn't really work.
Title: Re: S90 Porting Thread
Post by: schnurrhahn on 17 / April / 2010, 08:18:23
Here is my short test result with the Canon S90, Firmware 100C and the port V3 from ERR99 :

all functions seem to work as well as expected. Thank you very much to ERR99 for this wonderful work.

In the first Beta-releases (previous to V3) the S90 worked very slow in Manual Mode (M-Mode) when using the Control ring.
This seems to be fixed now, too. My S90 now works fine in M-Mode.
Using Scripts also works fine - I testet a little bit with the MD-Scripts and HDR-Scripts.

So again - thank you very much for your hard work, CHDK is wonderful !
Title: Re: S90 Porting Thread
Post by: ERR99 on 17 / April / 2010, 10:26:20
ERR99- Thank you so much for all your efforts. CHDK ran perfectly on a 4GB card. Now, I'm trying with a 16GB, but I can't seem to make it "auto-load" CHDK. Manual Firmware Updates works fine.

Is "Miscellaneous stuff -> Swap partitions" fully implemented?

Thank you!

P.S. This is my first time running CHDK on an SDHC card (over 4GB), and I was unable to partition the SD card under Windows XP (I had to use Linux). Windows was unable to read ANY partition of my [partitioned] SD card, so any help is greatly appreciated.

P.S.S. When I select "Create card with two partitions" from CHDK, Windows XP SP3 claims the drive [SD card] is not formatted. If I agree to format it, Windows formats the entire SD card, deleting the partition table. So Windows: Case #4 (http://chdk.wikia.com/wiki/Bootable_SD_card) doesn't really work.

Swap partitions is working, i tested it with one of my 8GB SDHC card on the S90.
I think the problem is, that windows is not "really" supports more then one partition for removable media deviced. A very easy solution to create/format and swap partitions on a SDHC card under windows is the SDM Installer. You can find it here: http://stereo.jpn.org/eng/sdm/file/common_files.zip (http://stereo.jpn.org/eng/sdm/file/common_files.zip)
Title: Re: S90 Porting Thread
Post by: belaac on 17 / April / 2010, 14:18:08

Using Scripts also works fine - I testet a little bit with the MD-Scripts and HDR-Scripts.

could you tell me which HDR-Scripts are you using? Thanks! I tried self-timer method (which works well on
G7 using custom self-timer), but whenever I use the self-timer on S90,  there was no bracketing.
I  can only get Tv  bracketings  if I keep on pressing the shutter ;(
btw I has the FW 101a.
And here I would like to thank ERR99, Microfunguy and all the other Greats who made CHDK possible!!-))
Title: Re: S90 Porting Thread
Post by: schnurrhahn on 18 / April / 2010, 16:59:38

Using Scripts also works fine - I testet a little bit with the MD-Scripts and HDR-Scripts.

could you tell me which HDR-Scripts are you using? Thanks!


bellac, I used HDR-HYPER.BAS in Manual Mode (M).
I made only 2 very short tests, but the Script didn't show any errors.
Title: Re: S90 Porting Thread
Post by: danielsaenz on 19 / April / 2010, 13:37:54
Hey guys. First of all a BIG thanks to ERR99 for such a terrific job. This is my first Canon ergo first time using CHDK and as a photographic tool the zebra mode and some other stuff is really useful, nonetheless I have a couple of small issues which I'm not sure are bugs or just the way every CHDK behaves. First every time I turn the camera on, the previous taken image is there, whether I disable or not the info box at the start, and that is just annoying and I can't find where to turn that option off.
Second and something I'm sure is not a bug, since the CHDK uses the DIGIC processor it makes sense that the camera gets a little hotter, to be precise in my right hand (or the right side of the camera) i feel the camera itself a bit warmer and I'm that makes the battery to last for less, I saw some info somewhere that it's just a myth (about battery drainage) but it worries me a bit about how much temperature my camera must stand.
Thanks for your time dedicated to this, it's good that we share and grow as a community.
Title: Re: S90 Porting Thread
Post by: gsbergman on 19 / April / 2010, 14:03:56
Could some please outline the procedure for using a SD card larger that 4GB. I just picked up an Eye-Fi Pro X2 8GB card that I'm trying to get working with CHDK. So far the only luck I've had is partitioning the card to 4GB the installing CHDK. I tried to use Cardtricks ansd SDM Installer to create a small FAT partition but both keep giving me a Card Error Fault.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 16:09:30
Hi. Just found this thread. Trying to get it to work. Can anyone tell me how to install this on a 16Gb SDHC card? I assume it needs two partitions. I used SDM tool to create two partitions then used Cardtricks to format the 2MB partition. However Windows 7's disk management does not allow me to access the secondary partition. Also I copied all files from SDM's Common Files zip to the new partition and the diskboot.bin linked here, closed the write protect on the card and tried in the camera.

Nothing happens. The camera will not switch on. If I take the write protection off and take out and reinsert the battery it powers up but says the memory card is full.

A step by step to getting this working would be great as there appears to be no S90 zip premade to go with Cardtricks right now.
Title: Re: S90 Porting Thread
Post by: gsbergman on 19 / April / 2010, 16:19:47
Deadman brought up a good point. How soon before the S90 will be included into the autobuild?
Title: Re: S90 Porting Thread
Post by: Microfunguy on 19 / April / 2010, 16:19:57
Hello and welcome.

DISKBOOT.BIN needs to be on the first partition.
I do not know about CardTricks, but sdminst.exe allows you to swap partitions.
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 16:23:26
First every time I turn the camera on, the previous taken image is there, whether I disable or not the info box at the start, and that is just annoying and I can't find where to turn that option off.
To start directly into SHOOTMODE (instead of PLAYMODE), hold the ON/OFF button longer.
Title: Re: S90 Porting Thread
Post by: gsbergman on 19 / April / 2010, 16:27:24
David,

Could you give a more detailed, step by step on how to get SD cards larger than 4GB working. I had the same problem. I used SDM Installer, formatted, then created two partitions, then swapped partitions and all I got was Card Error Faults. I must be leaving some step out. Do I need to format the partitions afterwards?

Thanks,
Gregg
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 16:28:09
Nothing happens. The camera will not switch on. If I take the write protection off and take out and reinsert the battery it powers up but says the memory card is full.

Sounds like you are using the wrong/incompatible diskboot.bin for your camera.
Verify that you are using the correct build for your camera. e.g. if you have a camera with 1.01a firmware version, you can ONLY use the 101a CHDK beta build,  and NOT the 101c build.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 16:40:28
How do I check which version I have?
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 16:45:49
Check in the FAQ: http://chdk.wikia.com/wiki/FAQ (http://chdk.wikia.com/wiki/FAQ)
the section "Q. How can I get the original firmware version number of my camera?".
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 16:47:23
OK got it working. I forgot the ps.fir file

I  will try the 16GB card again and swap partitions for formatting then swap back and see how that works out. BTW what about the CHKDK folders? Where should I obtain those from or are they not really needed?
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 16:52:21
Could some please outline the procedure for using a SD card larger that 4GB. I just picked up an Eye-Fi Pro X2 8GB card that I'm trying to get working with CHDK. So far the only luck I've had is partitioning the card to 4GB the installing CHDK. I tried to use Cardtricks ansd SDM Installer to create a small FAT partition but both keep giving me a Card Error Fault.

Maybe it is not possible to (re)partition Eye-Fi cards in general?
I dont have such a card, but if i am right the card transfers the pictures via WLAN to a PC, right?
I think it would be a problem for the Eye-Fi firmware to know from which partition it should transfer the images (if there was more than one partition), so maybe they have disabled the possibility to alter the partition table at all. This is only a idea, i am not really sure about this. Maybe you can ask in the Eye-Fi forum if the Eye-Fi cards supports partitioning.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 19 / April / 2010, 16:53:06

Could you give a more detailed, step by step on how to get SD cards larger than 4GB working.


See if this helps : http://stereo.jpn.org/eng/sdm/quick.htm (http://stereo.jpn.org/eng/sdm/quick.htm)

Can these cards be locked ?

I vaguely remember this topic being discussed previously.
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 16:55:50
OK got it working. I forgot the ps.fir file

I  will try the 16GB card again and swap partitions for formatting then swap back and see how that works out. BTW what about the CHKDK folders? Where should I obtain those from or are they not really needed?

You can take the CHDK folder from any other camera port. The CHDK folder is camera indepentend and its not really needed, CHDK starts also without it. But it is usefull, you get the nice CHDK splashscreen logo and also lot of example scripts.
Title: Re: S90 Porting Thread
Post by: gsbergman on 19 / April / 2010, 17:03:49
Quote
Can these cards be locked ?
I vaguely remember this topic being discussed previously.

The new ones can. They finally had the foresight to add the lock switch.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 17:08:29
16Gb partitioned and working fine. Cool! :)

OK here is a couple of things of note. AF does not work on video mode whilst recording. I was hoping this would work. Maybe something for later? Also if you have digital zoom enabled and zoom in I am unable to zoom back/retract (This is still whilst recording video). If I disable digital zoom (Which is rubbish anyway) I can then zoom back fine. Bug? Or bug in original firmware? Not sure as I never tested that before. :D

Zebra is nice ;)
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 17:18:33
Zooming should work, if you are using the latest build (V3). A normal behaviour is, when you are zooming back from digitalzoom, that zooming stops at 3.8X magnification (thats the border between digital/optical zoom). Simply release then the zoom key, and zoom then (using the same zoom key) again.

For AF in moviemode, you have to assign a AF-Key under "Video Parameters"->"AF Key" options (assign to SHUTTER of SET button).
An make sure that you are not in ALT mode if you are pressing the SHUTTER / SET button to refocus.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 17:23:33
I will test that. I did have the AF key set to Shutter and I am sure I released the zoom out when digital zoom reached the point it hit optical zoom and then would not zoom back from there. Will retest though to make sure.

Also another issue wuth 4GB> cards.

If you take the card out and try to read it in a card reader it will only shows the furst partition so in order to extract the photos and videos you have to use SDM to swap the partitions, take it out, reinsert, copy of the files, swap partition and then put it back in the camera. PAIN!

That is a Windows limitation though (Oh God MS you suck!).

So the only other alternative is to use smaller SD cards or use a USB cable from the camera :(
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 17:31:45
I retested AF and Zoom function and it works fine on my camera. Also some other s90 chdk user reported that it is working, so i am pretty sure you will also get it work. :)

You can also swap the partitions without windows/pc. Check the CHDK menu "Miscellaneous stuff". There is a option "Swap partitions" which will to the job. If you have partition 2 activ (the one with the pictures), chdk will of course not autoboot. Simply copy also the PS.FI2 build of chdk to the second partition. So if you start with the 2nd partition, you can use the Firmwareboot method to start CHDK, and swap then the Partitions back.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 17:34:19
Hmm. I swear I had digital zoom with video recording. Maybe I am mistaken as it only appears as an option in the S90 menu using fully auto. Also AF whilst 'recording' video does not work no matter if a key is assigned (Shutter or set).

Just to make sure you understand. I would like to be able to AF whilst recording 'video'. AF and zoom for still photos works fine.

Also of note. If oyu enabled RAW in CHKDK it will say RAW is disabled whilst in photo modes. It does not matter since the RAW setting of the S90 overrides that setting it would seem but you won't get a DNG file. I think there are a lot of bugs to work through but this is a beta test version after all ;)

Swap partitions in the CHKDK menu does not work either. It says it only has one partition.

Oops! My bad. I had the 2GB card in not the 16GB. Ignore that last one ;)
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 17:49:16
I retested AF and Zoom function and it works fine on my camera. Also some other s90 chdk user reported that it is working, so i am pretty sure you will also get it work. :)

You can also swap the partitions without windows/pc. Check the CHDK menu "Miscellaneous stuff". There is a option "Swap partitions" which will to the job. If you have partition 2 activ (the one with the pictures), chdk will of course not autoboot. Simply copy also the PS.FI2 build of chdk to the second partition. So if you start with the 2nd partition, you can use the Firmwareboot method to start CHDK, and swap then the Partitions back.

If you have swapped the partition in camera it will not boot. You cannot have two boot partitions. So I would still have to use SDM to swap it back once read in the reader. Bit of a pain really but hey.

The other thing that is bothering me is that when you turn the S90 on it immediately goes to the CHKDK mode (Photo browsing mode). For speed in order to take a photo from startup it should go straight to camera mode. Not CHKDK. Pretty much every photographer wants to go stright to taking a photo. Unless there is an option I am missing?
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 17:51:40
Which Firmware version do you have? I ask because i cant test other fw versions then 101a. You are the first one who reports serious problems with the current build.

The RAW disabled message occurs if you have canon RAW enabled, because its useless to shot canon AND chdk raw (saving to sd-card takes ages...) . So set back the camera to JPEG only shooting, then you can get CHDK RAWs (no DNGs).
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 17:56:35
Sorry 101c v3. I am gonna hold off using CHKDK for a while until it matures a bit. I was just curious to see how progress was going and reporting back on a few things I noticed. Sorry if I don't feel like being a 'proper' beta tester :D

Nice work though I am well impressed. We need time lapse! Longer exposures (Dangerous in the sun lol) etc ;)
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 18:02:23
If you have swapped the partition in camera it will not boot. You cannot have two boot partitions. So I would still have to use SDM to swap it back once read in the reader. Bit of a pain really but hey.

The other thing that is bothering me is that when you turn the S90 on it immediately goes to the CHKDK mode (Photo browsing mode). For speed in order to take a photo from startup it should go straight to camera mode. Not CHKDK. Pretty much every photographer wants to go stright to taking a photo. Unless there is an option I am missing?

Of course you can boot CHDK on the S90 from the second partition, thats what i have written allready in my previous post. You have to use the manual PS.FI2 firmware boot methode (and not the diskboot.bin/autoboot) to start CHDK from the "big" (non boot) partition. Check the CHDK FAQ/Wiki to learn more about the firmware boot methode.

Starting into playmode is standard chdk behaviour. Simply hold the ON/OFF button until camera starts direct in to SHOOTING mode.
Title: Re: S90 Porting Thread
Post by: deadman on 19 / April / 2010, 18:08:53
Thanks for the info. I will play some more some other time. Right now most of the functions are not what I expected or need right now. There are some functions like time lapse ect I am waiting (Hoping) for and AF whilst zooming and recording video if possible would be nice. Sorry if I do not reply after this post for a while. I will catchup in a few weeks time probably.
Title: Re: S90 Porting Thread
Post by: ERR99 on 19 / April / 2010, 18:14:02
Could please also other users of the V3 build 100c and 101c build test, if AF-scan and optical zoom in moviemode is working properly?
Title: Re: S90 Porting Thread
Post by: gsbergman on 19 / April / 2010, 18:32:05
Build 100c optical zoom in movie mode is working. Not sure about the AF-Scan? I'll check it when I have time.
Title: Re: S90 Porting Thread
Post by: an0n on 19 / April / 2010, 23:14:01

So the only other alternative is to use smaller SD cards or use a USB cable from the camera :(

No, it's not the only other alternative, there is "Swap partitions" as ERR99 says, and Mac and Linux.
Title: Re: S90 Porting Thread
Post by: spect on 20 / April / 2010, 01:11:57
100c optical zoom works in video mode, but does not retract once you get into digital zoom. AF doesn't seem to work at all, unfortunately.

Oh and by the way... absolutely brilliant work you've done here! Many, many, many thanks :)
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 02:05:34
100c optical zoom works in video mode, but does not retract once you get into digital zoom. AF doesn't seem to work at all, unfortunately.

Okay, on the 100c port i think i found the problem, the zoom_status variable was not correct.
But this problem was not present on the 101c port, so please could also 101c users test the AF&zoom overrides in moviemode.

Anyway, here is a new Build (V4).

Differences to V3:
- Corrected zoom_status for movimode (only 100c version, other was allready correct with V3).
- Enabled DNG support (experimental)
- Corrected game modes resolution
- Removed unsupported manual focus via zoom lever osd entry

The attached zip file, contains both versions (diskboot.bin and PS.FI2)
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 02:06:30
An here the V4 port for 101a fw version:
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 02:07:08
An finally the V4 build for cameras with 101c firmware:
Title: Re: S90 Porting Thread
Post by: jblc on 20 / April / 2010, 02:40:22
Thanks!  What's the advantage of DNG over the native CR2?  With non-raw cameras it makes sense to have dng, but is there any reason to use that over the built-in raw format?

Anyway, here is a new Build (V4).

Differences to V3:
- Enabled DNG support (experimental)

Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 03:09:50
Sometimes canon limits the usage of RAW in the automatic SCENE programs, and allows only JPEG shooting in this modes. In this case CHDK RAW/DNG can help out. ;) But in general you are right, there is no big need for CHDK RAWs/DNG on cameras like the S90/G11.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 20 / April / 2010, 05:01:21
With non-raw cameras it makes sense to have dng, but is there any reason to use that over the built-in raw format?

For what it is worth, SDM does not support CHDK raw on cameras that have native raw.

I do not think that will inconvenience many users.
Title: Re: S90 Porting Thread
Post by: spect on 20 / April / 2010, 09:20:13
The zoom now works properly on 100c. I'm not sure if the camera is supposed to have an AF feature in video mode. If it does, I'm not sure if it works.

I've tested some override features and so far, everything seems to work as it's supposed to. I've done a 8-minute night-sky exposure without problems, as well as tested extremely short shutter speeds, which seemed to work. Not sure if anyone really needs anything quicker than 1/10000, anyway, and that definitely worked.

As for aperture override: this depends on the zoom. If fully retracted, it doesn't go beyond F/8.0, but it can go up to F/16.0 when fully zoomed in. I didn't do any tests in-between, but I suppose that the maximum and minimum aperture change according to the lense's specifications.

ISO override didn't seem to have any effect outside the camera's range. So even if it said that the photo was taken with ISO 12 or ISO 64, the photo was basically exposed at ISO 80, and when taken with ISO 5000, the real ISO was still 3200.

What seems bugged to me are the games, though. Reversi seems alright, Sokoban doesn't start at all and the colors in Connect 4 and Mastermind seem unusual.

Oh, and another thing: the camera will not take a dark-frame if the normal exposure is below the limit. Meaning that if you set override to above 1.3 seconds, but the camera's setting is below that, it will skip the dark-frame.
Title: Re: S90 Porting Thread
Post by: gsbergman on 20 / April / 2010, 09:24:37
Quote
V4_S90_100c.zip (346.47 KB - downloaded 10 times.)

Winzip reports the file is an invalid archive. Could you please repost the 100c file.
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 09:34:33
I also donwloaded the file and cant find any problem, winzip is opening and unpacking this file here without problem.
But if you wish, here is the 100c V4 build re-uploaded again:


Title: Re: S90 Porting Thread
Post by: gsbergman on 20 / April / 2010, 09:36:34
Thank you. That one opened just fine. The other one even PKZip reported errors. Go figure?
Title: Re: S90 Porting Thread
Post by: gsbergman on 20 / April / 2010, 11:26:31
FYI.

This is the log file from PKZip about the first V4 100c file. WinZip reported the archive was invalid and PKZip reported this log file.

4/20/2010  6:32:42 AM  ZIP Reader Version 12.40.0005 Build 1004
4/20/2010  6:32:42 AM  Extracting: C:\Documents and Settings\gbergman\Desktop\V4_S90_100c.zip
4/20/2010  6:32:42 AM  Extracting C:\Documents and Settings\gbergman\Desktop\V4_S90_100c\DISKBOOT.BIN
4/20/2010  6:32:42 AM  Unexpected end of compressed data for: C:\Documents and Settings\gbergman\Desktop\V4_S90_100c\DISKBOOT.BIN
4/20/2010  6:32:42 AM  Extracting C:\Documents and Settings\gbergman\Desktop\V4_S90_100c\PS.FI2

Just don't want anyone to think I'm crazier than I am.
Title: Re: S90 Porting Thread
Post by: gsbergman on 20 / April / 2010, 11:29:36
Just getting off work. (supported the Shuttle landing since midnight). I'll check out V4 this afternoon from home.
Title: Re: S90 Porting Thread
Post by: lsl7994 on 20 / April / 2010, 11:52:15
I am having s90 1.01b firmware... Is it possible to use any of the files? Thanks.
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 11:57:52
FYI.
This is the log file from PKZip about the first V4 100c file. WinZip reported the archive was invalid and PKZip reported this log file.
I think you got a bad internet connection as you download the file the first time and only your copy was corrupted. I downloaded now both versions (from my first post and also the last one) and compared them binary. They are 100% identical.
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 12:01:38
I am having s90 1.01b firmware... Is it possible to use any of the files? Thanks.
May be, may be not. It depends what canon has changed in compare to 1.01a or 101c.
You can simply try the 101a or 101c build. Anyway, it would be good if you can dump your 101b firmware
and post the dump on zshare or so.

To dump the firmware, you can try the G11 udumper from this post: http://chdk.setepontos.com/index.php/topic,4647.msg46175.html#msg46175 (http://chdk.setepontos.com/index.php/topic,4647.msg46175.html#msg46175)
Title: Re: S90 Porting Thread
Post by: lsl7994 on 20 / April / 2010, 12:08:43
May be, may be not. It depends what canon has changed in compare to 1.01a or 101c.
You can simply try the 101a or 101c build. Anyway, it would be good if you can dump your 101b firmware
and post the dump on zshare or so.

To dump the firmware, you can try the G11 udumper from this post: http://chdk.setepontos.com/index.php/topic,4647.msg46175.html#msg46175 (http://chdk.setepontos.com/index.php/topic,4647.msg46175.html#msg46175)

I am trying to dump the firmware now. Will upload it later. Thanks. :)
Title: Re: S90 Porting Thread
Post by: lsl7994 on 20 / April / 2010, 12:42:52
Not sure whether I have done it right. Here is the zshare link for the firmware 1.01b.

http://www.zshare.net/download/75182953a66f941d/ (http://www.zshare.net/download/75182953a66f941d/)
Title: Re: S90 Porting Thread
Post by: mercurio on 20 / April / 2010, 14:48:02
101c v4 works great. thanks for all your work err99  :D
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 14:49:58
@lsl7994:
You extracted the pure strings from the firmware dump, but for a port a complete dump of the firmware is necessary.
It is usally a *.bin file and the size is ca. 8MB. So please check if you got such a .bin file during your dumping process with cardtricks.
Title: Re: S90 Porting Thread
Post by: ERR99 on 20 / April / 2010, 16:26:28
101c v4 works great. thanks for all your work err99  :D
Thats good to hear. ;)
Did you also test optical zoom and af-scan in moviemode with the 101c V4 build, does it work as expected?
Title: Re: S90 Porting Thread
Post by: mercurio on 20 / April / 2010, 17:22:41
Title: Re: S90 Porting Thread
Post by: lsl7994 on 20 / April / 2010, 21:24:08
@lsl7994:
You extracted the pure strings from the firmware dump, but for a port a complete dump of the firmware is necessary.
It is usally a *.bin file and the size is ca. 8MB. So please check if you got such a .bin file during your dumping process with cardtricks.

I will check again then. :)

edited: I have a .dum file which is about 10MB. Is that the one?
Title: Re: S90 Porting Thread
Post by: whim on 21 / April / 2010, 02:30:10
@lsl7994

Yes it is ... with CardTricks detecting the card that has the 'empty.dum' file, just press 'Clean' -
that will remove the leading and trailing zeroes, then prompt you to save under a new name.
The resulting file is what you want to upload, ERR99 should be able to analyse it with IDA

hth,

wim 
Title: Re: S90 Porting Thread
Post by: an0n on 21 / April / 2010, 02:36:36
@whim,

I'm sorry this is off topic, but, whim if you see this, I've sent you a PM.
Title: Re: S90 Porting Thread
Post by: lsl7994 on 21 / April / 2010, 03:17:34
@lsl7994

Yes it is ... with CardTricks detecting the card that has the 'empty.dum' file, just press 'Clean' -
that will remove the leading and trailing zeroes, then prompt you to save under a new name.
The resulting file is what you want to upload, ERR99 should be able to analyse it with IDA

hth,

wim 

Thanks. The card is not with me now. I will upload it to zshare later for analysis. :)
Title: Re: S90 Porting Thread
Post by: ERR99 on 21 / April / 2010, 03:22:16
In case you have still trouble creating the cleaned/stripped file, then simply upload the empty.dum file after dumping in the camera.
I can also strip it later by my self with cardtricks.
Title: Re: S90 Porting Thread
Post by: ERR99 on 21 / April / 2010, 08:35:26
Title: Re: S90 Porting Thread
Post by: lsl7994 on 21 / April / 2010, 08:40:19
In case you have still trouble creating the cleaned/stripped file, then simply upload the empty.dum file after dumping in the camera.
I can also strip it later by my self with cardtricks.

I uploaded the .bin file to zshare. http://www.zshare.net/download/75215193d99851e5/ (http://www.zshare.net/download/75215193d99851e5/)

Thanks. :)
Title: Re: S90 Porting Thread
Post by: ERR99 on 21 / April / 2010, 09:01:42
101b dump looks good. ;)

I did a quick compare with the other fw versions, and on the first look there has not much changed in compare to 101c.
I have to take a deeper look to be 100% sure, but i assume that there as i very good change that the 101c port will also
run on cameras with 101b firmware. So please try the 101c V4 build on your camera.
Title: Re: S90 Porting Thread
Post by: fe50 on 21 / April / 2010, 09:33:29
Added the S90 1.01B dump from this post (http://chdk.setepontos.com/index.php/topic,4509.msg49134.html#msg49134) (8MB, from lsl7994, dumped with a modified G11 udumper) to the drop.io - chdkdumps2 (http://drop.io/chdkdumps2) backup archive.
  http://drop.io/chdkdumps2/asset/s90-101b-7z
Thx to the 'dumpers' & uploaders !
Title: Re: S90 Porting Thread
Post by: lsl7994 on 21 / April / 2010, 09:37:11
101b dump looks good. ;)

I did a quick compare with the other fw versions, and on the first look there has not much changed in compare to 101c.
I have to take a deeper look to be 100% sure, but i assume that there as i very good change that the 101c port will also
run on cameras with 101b firmware. So please try the 101c V4 build on your camera.

Sure. I will try it now. Thanks. :)
Title: Re: S90 Porting Thread
Post by: gsbergman on 21 / April / 2010, 10:58:20
Quote
Could you give a more detailed, step by step on how to get SD cards larger than 4GB working. I had the same problem. I used SDM Installer, formatted, then created two partitions, then swapped partitions and all I got was Card Error Faults. I must be leaving some step out. Do I need to format the partitions afterwards?

I spent hours last night again. All I ever get when I partition the 2MB and format it is Card Error. I'm still doing something wrong. I even tried following David's procedure using SDM Installer without luck.

Maybe it's my card. I'll pick up a different 8GB card this weekend and try it again.

If anyone has any suggestions, please don't hessitate to interject.
Title: Re: S90 Porting Thread
Post by: gsbergman on 21 / April / 2010, 10:59:34
Oops, I left off the card I was trying to partition and format is an Eye-Fi card.
Title: Re: S90 Porting Thread
Post by: gsbergman on 21 / April / 2010, 11:02:51
If anyone has been successful with an larger than 4GB Eye-Fi card please let me know how you were able to get the card working.

Sorry that these are different postings but I'm a bit scattered this morning and am thinking about different questions as I go.
Title: Re: S90 Porting Thread
Post by: ERR99 on 21 / April / 2010, 11:34:52
I dont think that this is really a S90 port related problem, so maybe you can open a seperate thread for this topic. BTW: Are you sure that the  the Eye-Fi card supports parititioning at all? Dont forget that this is not a normal card and the Eye-Fi firmware on the card needs to know on which partition the pictures are (normaly partition 1). If you success to create two partitions, CHDK stores the pictures allways on partition 2, on partition 1 there is only the diskboot.bin. How do you think you can tell the Eye-Fi firmware that parition 2 ist the one with the pictures to transfer, and not partition 1?

I think this maybe the reason why it is not working to partition the card with SDM-Installer, maybe the EyeFi card does not support partitioning for that reason.
Title: Re: S90 Porting Thread
Post by: gsbergman on 21 / April / 2010, 13:49:48
I tend to agree with your opinion and your right it really isn't a S90 Porting issue. I'll see if there is a more appropriate place in the forum to discuss this matter. Sorry to keep raising this question. I was just hoping someone had more experience than me on the Eye-Fi cards. Looking for the correct topic to take this conversation to.
Title: Re: S90 Porting Thread
Post by: shaltzman on 21 / April / 2010, 15:27:51
Hello,
I think i check all problems before writing this. I already load chdk on my old camera.
I try to put the V4_S90_100c on my camera (which have 1.00c firmware) with card tricks...everything seems ok...but when i start my camera, i see the chdk message with orange background, but the camera stays in play mode, the lens should come out...? When i push play mode button, the screen becomes black and nothing happens.
Sorry for this post...does anybody see this problem before? What stupid things i did...or not???
many thanks
Title: Re: S90 Porting Thread
Post by: fe50 on 21 / April / 2010, 15:42:22
i see the chdk message with orange background, but the camera stays in play mode, the lens should come out...?
Press (or half-press) the shutter button to switch to record mode !
..or just hold the power button for 1-2 second to power on directly in record mode.

Quote
When i push play mode button, the screen becomes black and nothing happens.
This way you power off the camera, that's the camera's default behaviour when powered on in playback mode  ;)
Title: Re: S90 Porting Thread
Post by: shaltzman on 21 / April / 2010, 16:01:43
Great! many thanks
It's working very well!
you're chief guys!!!

CHDKly yours!
shaltzman
Title: Re: S90 Porting Thread
Post by: Hollywood on 21 / April / 2010, 22:12:29
First of all thanks to everyone that helped make chdk possible for the S90.  I used to have it on my old S980 and missed it when I sold it and actually forgot how to install on a 16gb card.

I do have one ongoing issue and that is after installing chdk on a 16gb card and getting it to temporarily work, I then make two partitions....once exiting the chdk menu and then go into the Canon camera's menu to try and take a picture I get a memory card error.

I've tried doing a swap partitions by then putting the card back into my laptop reader and it won't read the card it tells me it needs formatting with and without the lock on.

Any suggestion appreciated, and what is the best method for me to find out what firmware I have on my camera?

I'm using V4 S90 100c

Thanks again.
Title: Re: S90 Porting Thread
Post by: fe50 on 22 / April / 2010, 01:12:42
@Hollywood:
--> http://chdk.setepontos.com/index.php/topic,2468.msg30911.html#msg30911 (http://chdk.setepontos.com/index.php/topic,2468.msg30911.html#msg30911)
--> http://chdk.setepontos.com/index.php/topic,2468.msg36022.html#msg36022 (http://chdk.setepontos.com/index.php/topic,2468.msg36022.html#msg36022)
--> http://chdk.setepontos.com/index.php/topic,3910.msg36763.html#msg36763 (http://chdk.setepontos.com/index.php/topic,3910.msg36763.html#msg36763)
Title: Re: S90 Porting Thread
Post by: lsl7994 on 22 / April / 2010, 02:04:02
101b dump looks good. ;)

I did a quick compare with the other fw versions, and on the first look there has not much changed in compare to 101c.
I have to take a deeper look to be 100% sure, but i assume that there as i very good change that the 101c port will also
run on cameras with 101b firmware. So please try the 101c V4 build on your camera.

101c port seems to work fine at the moment. Thanks. :)
Title: Re: S90 Porting Thread
Post by: spect on 22 / April / 2010, 15:24:06
I guess that any input can be useful, so just two minor things:
1. AF does indeed work on 100c (using the button - didn't know this previously).
2. My camera shut down when the battery was at around 3250 mV. I'm not sure if this is dependend on FW/used battery/etc, but maybe there's chance to set a slightly higher value (instead of the current 3000 mV) as default.

Once again, hardly possible to express my praise to all the programmers involved. Amazing work :)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 22 / April / 2010, 16:45:39
maybe there's chance to set a slightly higher value (instead of the current 3000 mV) as default.

I don't use CHDK so I don't know the exact menu location, but .. yes .. you can set the battery upper and lower limits.

Title: Re: S90 Porting Thread
Post by: jblc on 22 / April / 2010, 17:13:59
2. My camera shut down when the battery was at around 3250 mV. I'm not sure if this is dependend on FW/used battery/etc, but maybe there's chance to set a slightly higher value (instead of the current 3000 mV) as default.

That's possibly a battery or camera specific value.  For example, my camera starts flashing the red battery icon at 3.4V, so I changed the "min" value to 3400 mV.  The battery packs are full at 3.7V, according to chdk in any case.
Title: Re: S90 Porting Thread
Post by: ERR99 on 23 / April / 2010, 03:26:36
@lsl7994: Good to know that the port also works for 101b, if possible please post here if optical zomming during video and AF-scan during video is also working.

Regarding the battery stuff: Every battery/camera combination looks to be different. Even if the battery stated as 3,7V battery, the measured voltage for my battery is (fully charged) almost 4,1V. But it is possible to set the MIN/MAX value via OSD (OSD-Parameters->Battery->Battery MIN/MAX Voltage)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 23 / April / 2010, 04:54:56
@ERR99

Someone has asked me when do you think the S90 will be added to TRUNK.

I am merely asking on their behalf   ::)
Title: Re: S90 Porting Thread
Post by: Hollywood on 23 / April / 2010, 05:11:03
@Hollywood:
--> http://chdk.setepontos.com/index.php/topic,2468.msg30911.html#msg30911 (http://chdk.setepontos.com/index.php/topic,2468.msg30911.html#msg30911)
--> http://chdk.setepontos.com/index.php/topic,2468.msg36022.html#msg36022 (http://chdk.setepontos.com/index.php/topic,2468.msg36022.html#msg36022)
--> http://chdk.setepontos.com/index.php/topic,3910.msg36763.html#msg36763 (http://chdk.setepontos.com/index.php/topic,3910.msg36763.html#msg36763)

@fe50,

Thank you for taking the time to post those links for me!  Much appreciated and I hope to get it to work soon.

Thanks again. Cheers.
Title: Re: S90 Porting Thread
Post by: gsbergman on 23 / April / 2010, 11:00:32
I have extensively tested the V4 100c and found every function working. (best I can tell anyway)

Great job guys. I truely appriciate your hard work and effort.
Title: Re: S90 Porting Thread
Post by: mercurio on 23 / April / 2010, 12:56:57
hy,
what i'm wondering is which key is the equivalent for +/- on the s90.
(i'm trying to edit user menues)
Title: Re: S90 Porting Thread
Post by: ERR99 on 24 / April / 2010, 08:18:41
@ERR99

Someone has asked me when do you think the S90 will be added to TRUNK.

I am merely asking on their behalf   ::)
I posted the sources today: http://chdk.setepontos.com/index.php/topic,650.msg49290.html#msg49290 (http://chdk.setepontos.com/index.php/topic,650.msg49290.html#msg49290)
Title: Re: S90 Porting Thread
Post by: Microfunguy on 24 / April / 2010, 08:29:02
Excellent work !!

CHDK users are very lucky that you have ported not just the G11 and S90 but all the different firmware versions.

When G.S.Bergman says "thanks guys"  ... you are the only guy  :)

I guess now stereo photographers will expect me to try to port it to SDM  ... but first I have to do some home decorating.


David
Title: Re: S90 Porting Thread
Post by: ljg on 24 / April / 2010, 09:45:08
Thanks for doing this!!!!!! It makes this camera so much better. In the spirit of trying to be helpful, I'm come across 2 bugs in 101a.:

1) Zebra: When Draw Over Zebra is set to "OSD" *and* Zebra Mode is set to and of the "Blink",
the OSD moves down one line at every blink.

2)Custom Auto ISO: The Max custom ISO I can set is only 800 (which displays as 1250), but I cannot set it to the camera max of 3200 ISO.
Note: I am new to CHKD, so this may just be a limitation of CHDK and not this port.

Thanks again for all of your hard work!!!!!!!!
Leslie
Title: Re: S90 Porting Thread
Post by: Microfunguy on 24 / April / 2010, 10:09:14
. The Max custom ISO I can set is only 800 .

That is because in \core\gui.c it states :-

conf.autoiso_max_iso_auto, MENU_MINMAX(10, 80)

I have no idea why that is.

I asked an associated question in another link but no-one replied :-

http://chdk.setepontos.com/index.php/topic,5057.msg48947.html#msg48947 (http://chdk.setepontos.com/index.php/topic,5057.msg48947.html#msg48947)



David
Title: Re: S90 Porting Thread
Post by: schnurrhahn on 24 / April / 2010, 11:22:11
I don't know, if the following problem is caused by the script I used or if it is a little problem of the S90-Port :

I tried to use the LUA-Script br_dev05.lua, which can be found here :
http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072 (http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072)

On my S90, it works until Line 262. Then I get an error because the expression list_jpg[count_jpg] returns NIL.
This indicates that there are no JPG's. The reason is, that no WAV-File was generated a few lines before (Line 222).

I'm not a programmer, but I think, the function raw_merge_add_file(result_crw(i))   (Line 219) or the funtion raw_merge_end()   (Line 223) is not working - but I get no error message, not on display and not in the logfile.
I scanned the whole CHDK-dirrectory for the definitions of these functions, but didn't find this strings.

Additional information : When using the script, I have a tmp16_1.tmp file in the root-Directory of the SDHC-Card, which ist a little bit bigger than the RAW-Files. Perhaps this helps to locate the error.

Did I make something wrong ? Is it an error within the script ? Or are the functions described above not working with this release of porting ?
It would be nice if anyone could help.

Thanks again for the great job you've done with porting CHDK to the S90, especially ERR99 !
Title: Re: S90 Porting Thread
Post by: gsbergman on 24 / April / 2010, 12:33:30
Quote
When G.S.Bergman says "thanks guys"  ... you are the only guy 

You are right David, I know that ERR99 is the only guy, on this porting. I said guys to include the hard work of the people that have made CHDK possible. I didn't mean to say that ERR99 doesn't deserve the credit for the S90 camera porting, I just didn't want to exclude those before him.

All that being said, Bravo ERR99. You truely are my hero, because without your hard work and dedication, my S90 would still be just a toy. Now my S90 is a real camera.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 24 / April / 2010, 19:58:16
Although not in the posted code, I have made a guess that \platform\generic\shooting.c\shooting_get_drive_mode()  should have the S90 added to the #defines.

Is that correct ?
Title: Re: S90 Porting Thread
Post by: ERR99 on 25 / April / 2010, 03:10:39
Damned! I forgot to update the files under  platform\generic for the S90.  :haha
I posted now the missing updates to the "[REQ]Adding new cameras, applying patches into trunk (with source code prepared)" thread.
Title: Re: S90 Porting Thread
Post by: ERR99 on 25 / April / 2010, 03:57:50
I don't know, if the following problem is caused by the script I used or if it is a little problem of the S90-Port :

I tried to use the LUA-Script br_dev05.lua, which can be found here :
http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072 (http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072)

On my S90, it works until Line 262. Then I get an error because the expression list_jpg[count_jpg] returns NIL.
This indicates that there are no JPG's. The reason is, that no WAV-File was generated a few lines before (Line 222).

I'm not a programmer, but I think, the function raw_merge_add_file(result_crw(i))   (Line 219) or the funtion raw_merge_end()   (Line 223) is not working - but I get no error message, not on display and not in the logfile.
I scanned the whole CHDK-dirrectory for the definitions of these functions, but didn't find this strings.

Additional information : When using the script, I have a tmp16_1.tmp file in the root-Directory of the SDHC-Card, which ist a little bit bigger than the RAW-Files. Perhaps this helps to locate the error.

I think i found the problem. In raw_merge.c there is a rename function call:

#define TEMP_FILE        "raw16.tmp"
#define TEMP_FILE_NAME   "A/raw16.tmp"
#define TEMP_FILE_NAME_1 "A/raw16_1.tmp"

rename(TEMP_FILE_NAME_1,TEMP_FILE);

The second parameter TEMP_FILE is not so good for cameras with DryOS 2.3#39, because this OS does not like pathname without a leading devicename "A/". So the rename of raw16_1.tmp to raw16.tmp failes and leads to the following error. So another CAM_DRYOS_2_3_R39 patch in the CHDK core is needed to fix this.

Update: Even with this patch, the script failes later. It throws a error because of the function getImageDirs().
It look likes this function searches for all image directorys by removing all dirs from the list which are not contains the substring "CANON".
But this is a problem on the S90/G11. Because Canon now uses another sheme to name the directorys (without the CANON substring, it is now some sort of day/month string used). So the script needs also a adaption for the S90/G11 image directory naming.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 25 / April / 2010, 06:02:43
I forgot to update the files under  platform\generic for the S90.

The additions to kbd.c for the G11 and S90 are not required.
They are only used by cameras whose wait_until_remote_button_is_released() is not in their own platform kbd.c code.
Title: Re: S90 Porting Thread
Post by: gsbergman on 25 / April / 2010, 12:47:09
I noticed a new build 886, but the build failled to complete due to errors.
Title: Re: S90 Porting Thread
Post by: ERR99 on 25 / April / 2010, 12:56:00
In revision 886, the S90 port is not integrated. So i dont know what failed, but it could not be the S90 port. ;)
Title: Re: S90 Porting Thread
Post by: gsbergman on 25 / April / 2010, 13:09:33
Thanks for the info. I was hoping the S90 was integrated in the new build. I guess we'll have to wait a while longer.
Title: Re: S90 Porting Thread
Post by: ewavr on 25 / April / 2010, 13:35:59
So i dont know what failed, but it could not be the S90 port. ;)
Code: [Select]
**** Copying duplicate Firmwares
mv: `./bin/sx200is-100c-0.9.9-886-full.zip' and `./bin/sx200is-100c-0.9.9-886-full.zip' are the same file
make: *** [batch-zip-complete] Error 1

Title: Re: S90 Porting Thread
Post by: schnurrhahn on 25 / April / 2010, 15:07:49
I posted a problem with LUA-Script br_dev05.lua, which seems not to work on S90.

I think i found the problem. In raw_merge.c there is a rename function call:

#define TEMP_FILE        "raw16.tmp"
#define TEMP_FILE_NAME   "A/raw16.tmp"
#define TEMP_FILE_NAME_1 "A/raw16_1.tmp"

rename(TEMP_FILE_NAME_1,TEMP_FILE);

The second parameter TEMP_FILE is not so good for cameras with DryOS 2.3#39, because this OS does not like pathname without a leading devicename "A/". So the rename of raw16_1.tmp to raw16.tmp failes and leads to the following error. So another CAM_DRYOS_2_3_R39 patch in the CHDK core is needed to fix this.

Update: Even with this patch, the script failes later. It throws a error because of the function getImageDirs().
It look likes this function searches for all image directorys by removing all dirs from the list which are not contains the substring "CANON".
But this is a problem on the S90/G11. Because Canon now uses another sheme to name the directorys (without the CANON substring, it is now some sort of day/month string used). So the script needs also a adaption for the S90/G11 image directory naming.

Thank you very much ERR99 for the quick response !
So I will wait until the CAM_DRYOS_2_3_R39 patch is available.
Perhaps I could try to do the adaption of the script to the new Canon diretory structure.
Title: Re: S90 Porting Thread
Post by: ERR99 on 25 / April / 2010, 16:15:37
Here is the latest build (V5) for 100c with all changes, please give it a try. ;)

Title: Re: S90 Porting Thread
Post by: gsbergman on 26 / April / 2010, 02:33:13
Just wondering, V5, why did this affect 100c only and not the other firmware revisions?
Title: Re: S90 Porting Thread
Post by: reyalp on 26 / April / 2010, 03:20:13
So i dont know what failed, but it could not be the S90 port. ;)
Code: [Select]
**** Copying duplicate Firmwares
mv: `./bin/sx200is-100c-0.9.9-886-full.zip' and `./bin/sx200is-100c-0.9.9-886-full.zip' are the same file
make: *** [batch-zip-complete] Error 1
Fixed now, and S90 is in the autobuilds.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 26 / April / 2010, 05:20:21
Does the USB remote switch work with this camera ?

I believe it uses a special USB/Video cable.

Title: Re: S90 Porting Thread
Post by: ERR99 on 26 / April / 2010, 05:31:49
So i dont know what failed, but it could not be the S90 port. ;)
Code: [Select]
**** Copying duplicate Firmwares
mv: `./bin/sx200is-100c-0.9.9-886-full.zip' and `./bin/sx200is-100c-0.9.9-886-full.zip' are the same file
make: *** [batch-zip-complete] Error 1
Fixed now, and S90 is in the autobuilds.

Coooool. Thanks. ;)
Title: Re: S90 Porting Thread
Post by: ERR99 on 26 / April / 2010, 05:33:01
Does the USB remote switch work with this camera ?
I believe it uses a special USB/Video cable.
It works. The connector is compatible to standard (mini) usb cables.
Title: Re: S90 Porting Thread
Post by: Microfunguy on 26 / April / 2010, 05:47:23
Yes, since posting I found this 11 pin Canon Pinout (http://www.flickr.com/photos/dunehaven/4094250604/#)

After the screen blanks, is the photo taken on switch release ?

Title: Re: S90 Porting Thread
Post by: lsl7994 on 26 / April / 2010, 09:49:02
@lsl7994: Good to know that the port also works for 101b, if possible please post here if optical zomming during video and AF-scan during video is also working.

sorry for the late reply. the optical zooming and AF-scan during video is working fine. thanks a lot. :)
Title: Re: S90 Porting Thread
Post by: fvdk on 26 / April / 2010, 11:08:05
Does the USB remote switch work with this camera ?

I believe it uses a special USB/Video cable.



Although it uses a special USB/Video cable, the standard SDM remote works perfectly.
At least it does with the IXUS100 which uses the same connector.

Frans
Title: Re: S90 Porting Thread
Post by: schnurrhahn on 26 / April / 2010, 16:12:57
Here is the latest build (V5) for 100c with all changes, please give it a try. ;)

Thank you very much, ERR99 !
I tested this build to check the raw-processing with the script br_dev05.lua. This script didn't work with the elder builds.
And now it works ! Fantastic !

You found the problem in the sources, and so I adapted the script to the new directory structure of the S90.

Attached you'll find the script. I renamed it from br_dev05.lua to s90dev05.lua, because it's especially designed for the S90. Hope it works on your camera, too ! Perhaps it works on other cams like G11.

For those who are interested : This script allows to shoot and process HDR's directly in the camera. A german description can be found at http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072 (http://www.wirklemms.de/chdk/forum/viewtopic.php?p=8072#8072).
Title: Re: S90 Porting Thread
Post by: wrobbie on 26 / April / 2010, 21:39:42
Update: Even with this patch, the script failes later. It throws a error because of the function getImageDirs().
It look likes this function searches for all image directorys by removing all dirs from the list which are not contains the substring "CANON".
But this is a problem on the S90/G11. Because Canon now uses another sheme to name the directorys (without the CANON substring, it is now some sort of day/month string used). So the script needs also a adaption for the S90/G11 image directory naming.

Ah, that explains why chdk raw mode saving doesn't work well for me; it makes a mess of 100___4, 100canon, 101___4, 101canon etc directories. It seems if there is a 10<n>canon directory, the camera completely ignores 10<n-1>___4, so there's far too few images in image-viewing mode.

If I remove all 101* and 102*, the s90 will still make a new 101___4 for some reason I don't understand, but at least all the piccies in 100___4 are accessed by the system again.
Title: Re: S90 Porting Thread
Post by: L Padrino on 27 / April / 2010, 10:30:17
Is there a way to prevent the Aperture and Shutter info from blinking when the overexposed areas blink in Zebra/Blink mode? I find that the exposure info may blink even though there are no overexposed areas blinking. Overexposed Threshold is set to 1 and Underexposed is set to 0. (V5, 100c) Many thanks for the help.
Title: Re: S90 Porting Thread
Post by: shaltzman on 27 / April / 2010, 18:33:48
Hello,
I just a ask question which probably not on the good topic...but i don't find my i need...
If i want to use a "old script" (create before the issue of a camera)  with the S90...does we need to change something on it? If we are a newbie, should we "call" the genius guy who did it?
thx
Title: Re: S90 Porting Thread
Post by: dleroi on 28 / April / 2010, 12:21:32
First, thanks ERR99 for the tremendous work!

I haven't been able to figure out how to search in just this thread, nor have I been able to find the answer by browsing the thread, so here goes:

Does the current release support automatically running a script when the camera is turned on?

When I lock the card, I get the "locked card" message at power on and no script.

Thanks,
Don
Title: Re: S90 Porting Thread
Post by: Microfunguy on 28 / April / 2010, 12:33:24
Are you saying that without trying to autostart a script, you do not get a 'card-locked' message ?


Is your card bootable ?


David
Title: Re: S90 Porting Thread
Post by: dleroi on 28 / April / 2010, 13:07:05
Hi David,

Thanks for the reply.

No, I'm saying that when I start CHDK using the "Firm Update" method, everything works fine.  CHDK starts and the script runs automatically.  But, when I lock the SD card, it doesn't autostart as I'm used to with my other model cameras.  It just displays the "card locked" message and neither CHDK nor the script runs.  It's the same message I would get if the card were locked without CHDK being on it.

The same card runs CHDK automatically in another model camera (with the appropriate firmware).

I can't remember - is there's something else I have to do in the CHDK menus to make it autostart?

- Don
Title: Re: S90 Porting Thread
Post by: ERR99 on 28 / April / 2010, 14:57:07
Did you copied the diskboot.bin file to your SD-Card?
Did you make the SD-Card autobootable with Cardtricks or via CHDK Menu "Miscellaneous stuff->Make card bootable"?
Title: Re: S90 Porting Thread
Post by: dleroi on 28 / April / 2010, 15:23:43
Did you copied the diskboot.bin file to your SD-Card?
Did you make the SD-Card autobootable with Cardtricks or via CHDK Menu "Miscellaneous stuff->Make card bootable"?


Thanks for the reply.

Yes, I copied both DISKBOOT.BIN and PS.FI2.

The card was already autobootable, but when it didn't work I did "Miscellaneous stuff->Make card bootable", too.

Still, when I "lock" the card, I get the "locked card" message and no CHDK.

- Don
Title: Re: S90 Porting Thread
Post by: fe50 on 28 / April / 2010, 15:47:52
Yes, I copied both DISKBOOT.BIN and PS.FI2.
The card was already autobootable, but when it didn't work I did "Miscellaneous stuff->Make card bootable", too.
Still, when I "lock" the card, I get the "locked card" message and no CHDK.
Looks like the diskboot.bin file is not stored correctly on the card's root.
Any chance you're using a Mac ?  --> then you should read Mac FAQ - Still having trouble (http://chdk.wikia.com/wiki/FAQ/Mac#Still_Having_Trouble.3F) ...
Title: Re: S90 Porting Thread
Post by: dleroi on 28 / April / 2010, 21:38:38
Looks like the diskboot.bin file is not stored correctly on the card's root.
Any chance you're using a Mac ?  --> then you should read Mac FAQ - Still having trouble (http://chdk.wikia.com/wiki/FAQ/Mac#Still_Having_Trouble.3F) ...

Thanks for your thoughts.

Diskboot.bin is in the root and I'm not using a Mac.

I just tried reformatting the card and starting from scratch.  No joy.

Is anyone else autobooting with version 1.01a ?

-Don
Title: Re: S90 Porting Thread
Post by: ERR99 on 29 / April / 2010, 01:04:56
Is anyone else autobooting with version 1.01a ?
Yes, I. I did the complete port with autobooting on my 1.01a S90 camera. So it is definitly working.
You must do something wrong. How big is your SD-Card (Gigabytes)?
An did you allready tried to make a bootable SD-Card with Cardtricks?
Title: Re: S90 Porting Thread
Post by: wrobbie on 29 / April / 2010, 06:20:17
Hia,

Attached is a little hack that fixes raw saving on my S90. It breaks all other cameras though.. I guess this could be made more generic by adding a get_target_dir() to platform/shooting or so, or just figure out in get_target_dir what format the camera currently uses.

A similar construct is in core/shot_histogram.c, but I didn't change that, since I just wanted to see if my hack would work.
Title: Re: S90 Porting Thread
Post by: dleroi on 29 / April / 2010, 08:27:00
Yes, I. I did the complete port with autobooting on my 1.01a S90 camera. So it is definitly working.
You must do something wrong. How big is your SD-Card (Gigabytes)?
An did you allready tried to make a bootable SD-Card with Cardtricks?


Thanks, ERR99.

I finally caved and downloaded Cardtricks, which clearly showed the card was NOT bootable. :blink:  Cardtricks did the trick!

FWIW to others as stubborn as I -  just use Cardtricks!

Thanks again to everyone that offered help.

- Don

 
Title: Re: S90 Porting Thread
Post by: sabogj on 29 / April / 2010, 14:46:26
I have been checking out CHDK and I see there are 4 versions available for the S90.

100c, 101a, 101b, 101c

My S90 has the 100c version, and I was able to get chdk working with no problems. 
My question is...why does Canon have so many newer firmware versions and what is it that they fixed in the newer versions. Should I be concerned and call canon for a firmware update or is there a way to just update it with the "dumped" 101c version here on chkd. 

Has anyone gotten an update for the firmware from Canon?

Since users have "dumped" their firmware for CHDK, are those newer versions (101c) available for me to just put into my camera myself?

Thanks
Title: Re: S90 Porting Thread
Post by: ERR99 on 30 / April / 2010, 04:56:28
I found a configuration bug for the S90 port. S90 was configured as camera "CAM_HAS_ERASE_BUTTON". But the S90 does not have a dedicated ERASE button. So USER MENU editing was not working properly (SHOOT_HALF pressed was ignored in edit mode, because CHDK awaits a ERASE button keycode). I uploaded a fixed version to the "[REQ]Adding new cameras, applying patches into trunk (with source code prepared)" thread, so it is hopefully soon available in the autobuild.
Title: Re: S90 Porting Thread
Post by: lardbloke on 01 / May / 2010, 06:01:39
This is a little tutorial for all us noobs out there trying to get the CHDK package installed onto their SD card.

To obtain your firmware version just get the little tool from this previous thread.
http://chdk.setepontos.com/index.php/topic,4743.msg46149.html#msg46149 (http://chdk.setepontos.com/index.php/topic,4743.msg46149.html#msg46149)
Just run the prog and let it read an image to extract the firmware version.

Get the newest version of CHDK from here.
http://mighty-hoernsche.de/ (http://mighty-hoernsche.de/)

I had a few problems also trying to get basic CHDK package installed onto a new 32GB SDHC card and getting it to run off a partition. I followed the all the wikis, trawled the forums with lots of help, but in the wrong direction. After swapping partitions and general frustration (eventually I ended up blowing a fuse in my card) I found that there is a much simpler methodology to all this.

Just format your card using your camera or PC.
Under your operating system of choice just drag and drop/ copy and paste etc all the main files (DISKBOOT.BIN, PS.FI2, and the CHDK folder) from the Complete "FULL" version of the chdk files onto your sd card.

Pop you card back into the camera.
 
Then just boot into the chdk using playback mode by pressing the > button on the back, next the menu button and then the format option should appear. Select this and you good to go. Press the S button for alt to access the chdk menu. All the messing with partitions to create seperate partions is just too much of a pain for cards that do not want to play or for noobs.

The camera will create its own storage folder in the root along with the chdk to store the pictures/vids. These can then be accessed in the normal way. Its as simple as that. I hope this is of help to someone out there.
Title: Re: S90 Porting Thread - 4GB PNY SDHC Class 4
Post by: stevetsi on 03 / May / 2010, 14:13:04
Hello everyone!

I was able to get CHDK working on a PNY 4GB SDHC Class 4 SD card.  One partition, full access to all memory and it's bootable.

Wow, I feel like I just bought a new camera.  The first thing I did was take pictures of water dripping into a bowl at 1/100000sec.  How is that even possible!!  The second thing I did was take a 35sec exposure in my kitchen in the dark - because I CAN!

Then, I set my jpg save quality to SuperFine and allowed optical zoom in video (and increased the bitrate).

If there was a way to style the CHDK menu like the stock menu, this would be absolute perfection!

I've noticed my camera heats up faster with CHDK running.  Does it place more strain on the DIGIC IV processor?

On an unrelated note... if you haven't heard about it already, get the custom-machined grip by Richard Franiec for the S90.  It makes the camera a little easier to manage (safely) with one hand.

Title: Re: S90 Porting Thread
Post by: sabogj on 05 / May / 2010, 08:03:34
Tested the chkd on my s90 (firm 100c) and found a few bugs

1)sometimes the color selection chart is limited to black, orange, gray, white.  Other times when I boot the chkd, the colors that are available show a full spectrum...blue, red, black, white, green,etc...  When the camera boots to the limited # of colors, it screws up my visual settings and uses a "clear" instead of the previously selected colors. 

I was able to take an 8gb card, format it in the camera, copy the files from chdk directly to the card and have it work.  I can not autoboot, so I have to "update" firmware if I want the chdk to work, but that is perfect.  And it was without making 2x4gb folders.  I did set the card to lock, and it is a transcend 8gb micro. 

Thanks again for all the great work.

Title: Re: S90 Porting Thread
Post by: ERR99 on 05 / May / 2010, 08:10:04
Canon uses different color sets in PLAY and in SHOOTING mode. Not all colors are available in both modes.
Its not a bug, its a feature. ;)

Title: Re: S90 Porting Thread
Post by: ERR99 on 05 / May / 2010, 10:16:34
In the G11 porting thread, there was a request to add a feature: Blocking of the rear jogdial.
I implemented it, and it works fine. So i also added this feature into my S90 test builds an attached them to this post.

If you test the attached test build, you will find two extra options under "Miscellaneous stuff" at the bottom of the list:
"Lock jogdial" which disables the jogdial in non-alt mode.
"Lock keys" which disables the UP/DOWN/LEFT/RIGHT keys in non-alt mode.

So, what are the S90 users here thinking: Is this a usefull feature?

Title: Re: S90 Porting Thread
Post by: ERR99 on 05 / May / 2010, 10:18:49
An here the test build for 101c firmware:
Title: Re: S90 Porting Thread
Post by: yujin on 05 / May / 2010, 11:50:14


So, what are the S90 users here thinking: Is this a usefull feature?



Yes I think it is a useful feature. Although I have learnt how to hold the camera without touching the jogdial, it is nice to have  the jogdial disabled when someone holds the camera and takes pictures for you.

Thanks ERR99 for implementing this feature!
Title: Re: S90 Porting Thread
Post by: shaltzman on 05 / May / 2010, 20:50:30
Quote
So, what are the S90 users here thinking: Is this a usefull feature?
For sure, it's a great feature!!! thank you!!!
On the same subject, I ask myself if there's features with  rear jogdial and ring lens that can be add with chdk. I don't know, for example: to set the focus during video could be fun...I don't know if people has other ideas and if it's possible with the code...

A last simple question: how can i do to use old scripts??? i don't know code...
Title: Re: S90 Porting Thread
Post by: sabogj on 05 / May / 2010, 21:24:33
If you test the attached test build, you will find two extra options under "Miscellaneous stuff" at the bottom of the list:
"Lock jogdial" which disables the jogdial in non-alt mode.
"Lock keys" which disables the UP/DOWN/LEFT/RIGHT keys in non-alt mode.

So, what are the S90 users here thinking: Is this a usefull feature?



First off...thanks for the explanation of the colors ...I had no idea. 

I did download the latest bin with the jog wheel fix.  All I did was copy it over the existing older version, but when I load the os, I do not get the options listed in the misc stuff area.  I might be doing something wrong.  I made sure I unlocked the card, then copied it over and renamed it.  Am I missing something.  This was for version 100c. 

Thanks,

G
Title: Re: S90 Porting Thread
Post by: ERR99 on 06 / May / 2010, 00:39:06
Hmm, maybe i uploaded the wrong 100c build. I cleaned up and rebuilded for 100c. So please test the attached build.
Title: Re: S90 Porting Thread
Post by: sabogj on 06 / May / 2010, 08:46:59
Tried your latest bootdisk.bin file you provided this morning.  I tried it on 2 separate cards (a 1gb and a 8gb).  Use the play button to turn on the camera, then menu, then firmware update, then shortcut key to alt mode, then menu, then to misc stuff.  There is still nothing showing up after (also checked before in listing) "remote parameters". 

I did check the build for both cards and both show chkd 0.9.9-889, May 1, 100c.

Not to worry...I can live without the disable jogwheel feature...or maybe when the final release comes out, I can check it again.  If you want me to continue to test files or provide you with debug info, let me know. 

Again, thanks for the great work. 

 
Title: Re: S90 Porting Thread
Post by: ERR99 on 06 / May / 2010, 08:54:12
Use the play button to turn on the camera, then menu, then firmware update, then shortcut key to alt mode, then menu, then to misc stuff.  There is still nothing showing up after (also checked before in listing) "remote parameters". 

Aaah, i think now i know the reason of your problem. Your are using the wrong boot methode for the test build. The diskboot.bin files are not started via "firmware update". You must have a old ps.fi2 file on your card, with a "normal" build. So you are still starting your old build. For diskboot.bin, you have to use a bootable sd-card.
Title: Re: S90 Porting Thread
Post by: warpspace on 06 / May / 2010, 12:10:05
I did download the latest diskboot.bin with the jog wheel fix and it works fine.

But i have noticed that the front ring is also blocked if jogdial blocked?

Is this a bug or a canon-feature?
Title: Re: S90 Porting Thread
Post by: sabogj on 06 / May / 2010, 12:33:56
Yup...that was it...I tested and was able to see the wheel setups IF I didn't do the "firmware update".  As long as I do not update firmware it works, if I update the firmware, it does not show the jog wheel settings. 

Thanks Again. 
I mentioned I had both a 1gb and 8gb cards.  I tested the jog wheel setting with the 1 gb card.  I will now try the 8gb (no partitions) and see if I can make it work.  But from what you are saying, because I can not "boot" the 8gb, I will not be able to make the 8gb card take the new bin file. 
Title: Re: S90 Porting Thread
Post by: ERR99 on 06 / May / 2010, 13:33:03
I did download the latest diskboot.bin with the jog wheel fix and it works fine.

But i have noticed that the front ring is also blocked if jogdial blocked?

Is this a bug or a canon-feature?

Its both of them. ;)
The CHDK way to disable the Jogdial, is to halt the canon Jogdial task.
The front ring is also a jogdial, at least it is handeld by the same (now halted) jogdial task.
Thats the reason why it is not working. Currently i dont know a solution to handle both of them seperate.
Title: Re: S90 Porting Thread
Post by: ERR99 on 06 / May / 2010, 13:34:41
Yup...that was it...I tested and was able to see the wheel setups IF I didn't do the "firmware update".  As long as I do not update firmware it works, if I update the firmware, it does not show the jog wheel settings. 

Thanks Again. 
I mentioned I had both a 1gb and 8gb cards.  I tested the jog wheel setting with the 1 gb card.  I will now try the 8gb (no partitions) and see if I can make it work.  But from what you are saying, because I can not "boot" the 8gb, I will not be able to make the 8gb card take the new bin file. 

Please try the attached PS.FI2 100c build. This should work via firmware update booting method.
Title: Re: S90 Porting Thread
Post by: sabogj on 06 / May / 2010, 14:05:14
That did the trick.  I am now able to "firmware update" with my 8gb card and it runs the latest build of chdk with the jogwheel settings.   And that is the way I prefer to run the program anyway...when/if I need to run chdk, I just make sure the sd card is locked, then play and do the firmware update.  When I do not need to run chdk, I can just unlock the card and have the camera work as normal.  So all is great!

Thanks Again ERR99

G
Title: Re: S90 Porting Thread
Post by: L Padrino on 11 / May / 2010, 06:50:53
Is there a way to change the file prefix in the camera? Such as S90_001.jpg instead of IMG_001.jpg, so as to distinguish the S90's files from other Canon files. Thanks.

L
Title: Re: S90 Porting Thread
Post by: guy on 13 / May / 2010, 15:47:44
Title: Re: S90 Porting Thread
Post by: ericmblog on 16 / May / 2010, 09:40:07
Been testing the latest 1.00c build you put on here, been working great so far.

I haven't be able to find anything yet, but when I unlock the disk (to use the camera without chdk), it says 'memory card full'. Is there a way around this, or do I need to different cards to swap between chdk and not?

Also, has anybody done the remote trigger voltage tests yet - if not, I can do it.

Thanks!
Title: Re: S90 Porting Thread
Post by: ericmblog on 16 / May / 2010, 09:47:38
Few other things about the card: 8GB, partitioned into 2 partitions on a mac using the AppleScript automation.
Title: Re: S90 Porting Thread
Post by: sabogj on 16 / May / 2010, 09:50:35
Been testing the latest 1.00c build you put on here, been working great so far.

I haven't be able to find anything yet, but when I unlock the disk (to use the camera without chdk), it says 'memory card full'. Is there a way around this, or do I need to different cards to swap between chdk and not?

Also, has anybody done the remote trigger voltage tests yet - if not, I can do it.

Thanks!

I will assume you are using a smaller sd card >4gb and have set cardtricks to autoboot the chdk.  
What I might suggest (what I did on my 8gb) just install the chdk program.  No need to "lock" the card.  When you press play on the s90, camera will boot without chkd loaded, press the menu button, then up arrow on wheel, then update firmware and say yes.  This will NOT update the factory firmware, but it will install chkd UNTIL you power down the camera.  Now you can use chdk anyway you want, when you want, and if you don't want it loaded, just turn the camera off, then restart.  (works for me)

As far as the remote trigger, I do not know if anyone has done so yet...give it a try.  

Title: Re: S90 Porting Thread
Post by: s90fann on 16 / May / 2010, 23:32:18
Thx for the great work ERR99.  I have been using the latest version of CHDK with no problems.  The only thing is that I read on the G11 forum that the jog dail was supposed to be useable in <ALT> mode when locked.  On the S90, once the jog dail is locked, I can't seem to move either the front or the back dail until I uncheck the lock feature.  Is there a way to quickly disable the lock and then relock?  Even a script would be fine, except run maybe through another button rather than the shutter. 
Title: Re: S90 Porting Thread
Post by: jblc on 18 / May / 2010, 00:30:30
See this thread for my remotes for the S90; the threshold seems to be about 3.7V for my particular camera, but probably varies a bit for everyone.

http://chdk.setepontos.com/index.php/topic,5043.0.html (http://chdk.setepontos.com/index.php/topic,5043.0.html)



Also, has anybody done the remote trigger voltage tests yet - if not, I can do it.

Thanks!
Title: Re: S90 Porting Thread
Post by: ERR99 on 18 / May / 2010, 09:34:31
The only thing is that I read on the G11 forum that the jog dail was supposed to be useable in <ALT> mode when locked.  On the S90, once the jog dail is locked, I can't seem to move either the front or the back dail until I uncheck the lock feature.
This sounds not normal, it should work as on the G11 (at least it does on my FW101a S90):
If jogdial lock is active, you cant use rear- or font jogdial anymore in shooting mode. But if you enter the alt-mode, you should be able to use the rear jogdial to navigate trough the CHDK menus. The front jogdial has anyway no function in ALT-Mode (regardless if jogdial lock is activated or not).
Title: Re: S90 Porting Thread
Post by: sabogj on 18 / May / 2010, 12:03:52
The only thing is that I read on the G11 forum that the jog dail was supposed to be useable in <ALT> mode when locked.  On the S90, once the jog dail is locked, I can't seem to move either the front or the back dail until I uncheck the lock feature.
This sounds not normal, it should work as on the G11 (at least it does on my FW101a S90):
If jogdial lock is active, you cant use rear- or font jogdial anymore in shooting mode. But if you enter the alt-mode, you should be able to use the rear jogdial to navigate trough the CHDK menus. The front jogdial has anyway no function in ALT-Mode (regardless if jogdial lock is activated or not).


I think it works as you intended, however it was confusing to me as well at first. To simplify so that others can understand....
If "jogdial" is locked  (*) then both the front and rear dials do NOT function either in alt mode or standard mode.  This includes while in standard mode if you push menu, you can not use the rear wheel to navigate.  However, when in alt mode, then menu (displays chdk) you can still use the rear wheel to move around with. 

If logdial is UNlocked, but key locks is ON, then you can use the front and rear dials in Standard mode to hard set the iso, apt, etc...as soon as you go to alt mode, those setting are locked.  you can move the wheels, but nothing changes on the screen.  As soon as you move back to standard mode, the settings jump to where you had moved them while in alt mode.  So it seems you can force settings, then lock them using the alt mode, take the pics. 

So for me...I will just set the lock keys on...leave lock jogdial off, and work from there. 

Hope this helps...and PLEASE....ERR99, correct me if I am wrong.  :) 
All the "lock jogdial" does is just lock the front and back regardless if you are in alt mode or standard mode. 
Title: Re: S90 Porting Thread
Post by: s90fann on 18 / May / 2010, 21:37:43
Ah yes, I thought you can operate the camera dials to control the camera under the <alt> mode.  I guess that's impossible.  Is there any way to assign a button to lock the jog dials?  It's nice to be able to lock the jog dial, but not very easy to get to the menu to lock and unlock.
Title: Re: S90 Porting Thread
Post by: s90fann on 18 / May / 2010, 21:49:12
Since I'm asking about features, how about another?  I was just reading about the sony's ability to stitch several photos together to create a panorama photo with just one shutter click.  Maybe click shutter to launch script to take continuous photos (specified in menu) and then stitch them together at the end?  I guess panning speed needs to be taken into consideration and may need to be adjusted per individual.  Wonder if it's possible to do in camera stitching like that via script? Please move this post to somewhere else if you think it's more appropriate, thanks.
Title: Re: S90 Porting Thread
Post by: hqasem on 19 / May / 2010, 15:26:58
Apparently, it is possible to turn off the S90 LCD in SDM using the command:

turn_backlight_off

Is there an equivalent command for CHDK scripts?

Also, any ETA on when the latest changes (e.g. "Lock jogdial" & "Lock keys") make it to the Autobuild?

Thank you!

Hussam
Title: Re: S90 Porting Thread
Post by: fe50 on 20 / May / 2010, 01:54:55
Is there an equivalent command for CHDK scripts?
--> http://chdk.wikia.com/wiki/CHDK_firmware_usage/MoreBest#set_backlight.28.29 (http://chdk.wikia.com/wiki/CHDK_firmware_usage/MoreBest#set_backlight.28.29)
Title: Re: S90 Porting Thread
Post by: hqasem on 20 / May / 2010, 09:06:12
Thank you! :) fe50 and ERR99!

I know this is not-S90 specific. Please feel free to direct me to a more appropiate thread.

Is there a way to execute a command as soon as I interrupt a script? I would like to "set_backlight 1" as soon as I interrupt.

Thanks a million. You guys are great!
Title: Re: S90 Porting Thread
Post by: gsbergman on 20 / May / 2010, 11:21:49
I love my S90, but really miss the viewfinder. I just bought a G11 yesterday.

I might be selling my S90, which is accessorized to the max.

It has the grip.

The new model filter adapter with six filters - two ND, one 4 pt. star, one circular polarizer, one UV, and one custom made white balancing filter. Filters are in filters stackers, two stacks of three, making it more portable

Three battery packs - two are OEM Canon, one is aftermarket.

Two chargers, both OEM.

A 8 GB Sandisk SD card.

And a TAMRAC carry pouch that hold most of the accessories.

I have customized the camera with clear grippy tape to aid in hold the slippery camera. I'll snap some picture of it a bit later.

I'll post more if anyone is interested.

It's been a wonderful camera and I love the picture quality, but find myself struggling in bright outdoor light to see what I photographing. I decided to buy the G11 because of the viewfinder.
Title: Re: S90 Porting Thread
Post by: fe50 on 21 / May / 2010, 00:58:32
Is there a way to execute a command as soon as I interrupt a script? I would like to "set_backlight 1" as soon as I interrupt.

uBasic: when a running script is stopped with the shutter button, CHDK tries to jump to a label called
:restore
and executes the code there; so place a jump section :restore with your code at the end of your script.

For Lua you have to define a function called restore() instead.
Title: Re: S90 Porting Thread
Post by: hqasem on 21 / May / 2010, 07:07:32
You rock! Thank you guys!
Title: Re: S90 Porting Thread
Post by: sabogj on 21 / May / 2010, 07:50:10
hqasem,

If you get a script working with the lcd off, let us know what it is or upload it for others to consider. 

Thanks

B
Title: Re: S90 Porting Thread
Post by: hqasem on 22 / May / 2010, 03:11:50
Hi Sabogj. It was very straight-forward. My script waits for a USB remote pulse to trigger the camera. Please find the script in the link below:

http://ostro.ced.berkeley.edu/~crisr/discuss/comments.php?DiscussionID=2736 (http://ostro.ced.berkeley.edu/~crisr/discuss/comments.php?DiscussionID=2736)

It has couple of parameters to delay running the script (Min:Sec) and to keep the LCD Backlight on or off while running.

Another interesting (Lua) script is "metronom.lua (http://chdk.setepontos.com/index.php?action=dlattach;topic=2744.0;attach=2729)" which sets the backlight off (when you press Set) and on (when you press Menu). It is not capable; however, to restore backlight state when the script is interrupted. But that can easily be fixed via restore() function (thank you fe50!).

Cheers!

hq
Title: Re: S90 Porting Thread
Post by: sabogj on 23 / May / 2010, 08:36:38
Chdk updates. 

I downloaded the latest beta release for the s90 (build s90-100c-0.9.9-894_BETA, date 5/22)

Both the lock dial and jogkey options are not in there.  I figured the newer release was done to fix some bugs, but I hate to lose the lock dial and jogkey options.   Is there any reason why these 2 options are not in the latest release?

Thanks,

G
Title: Script that enables/disables the jogdial?
Post by: kim_1138 on 25 / May / 2010, 05:20:59
Hi

Would it be possible to create a script that enables/disables the jogdial?

ie

[ pseudocode c# like  :) ]
jogdial.enabled = !jogdial.enabled;

/kim - extreme novice!
Title: Re: S90 Porting Thread
Post by: lardbloke on 25 / May / 2010, 12:47:02
go back to page 22 and Reply #327 for an updated version. The search function is your freind!!
Title: Re: S90 Porting Thread
Post by: s90fann on 25 / May / 2010, 22:02:51
Yes, a script to turn the jog dial lock on if off (and vice versa) would be nice.  Also would it be possible to exit <alt> mode upon pressing the shutter?  IE, exit <alt> mode as part of the script?  Do you think it's possible to do that ERR99?  or that not a scriptable function?  I might give it a try if u think it's possible, thx.
Title: Re: S90 Porting Thread
Post by: fe50 on 26 / May / 2010, 00:52:17
Also would it be possible to exit <alt> mode upon pressing the shutter?  IE, exit <alt> mode as part of the script?

--> http://chdk.wikia.com/wiki/UBASIC/TutorialScratchpad#The_.22exit_alt.22_Command (http://chdk.wikia.com/wiki/UBASIC/TutorialScratchpad#The_.22exit_alt.22_Command)
Title: Re: S90 Porting Thread
Post by: s90fann on 26 / May / 2010, 22:53:46
One step done, the crucial step is if there is a way to invoke a command to
halt the canon Jogdial task.  Is that something the programmer has to add? 
I think this script would be used by tons of s90 owners if it can do serve as an easy way to lock and unlock the jog dials in the back, it would certainly be my default script.  Thx
Title: Re: S90 Porting Thread
Post by: spreketek on 30 / May / 2010, 20:22:26
is there a way to have Auto ISO under Manual Mode in CHDK?
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 31 / May / 2010, 19:34:49
Hi!!! I was away from here for 2 months and it seems we now have GREAT news!

ERR99, I cannot say "thank you" enough times to express my gratitude! David, you too, because you are always present in most of the threads and giving precious hints and clues!

I just download all versions and will find my FW version and try it today.

I saw some people say something about minimun battery values... please be cautious on changing that, because in som kinds of batteries if it goes under a fixed minimum voltage it will not charge anymore and you will have a dead battery.

and a few pages back there was a guy that had one great idea: to have the ability to manually control the focus while recording video. this would be heaven! not just autofocus, but intentionally shift the focus away. but I don't know if this is even remotely possible...
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 31 / May / 2010, 21:57:29
Back with good news. 101a seems to be working just fine. In fact, it looks better than the SX110 ans A590 ports (my previous cams). I say so because in this one both the overrides AND video-zooming are working as expected. I just found that the S90 has some difficulties trying to change focus on movie mode, while the SX110 does this better after I zoom in while recording.

And what about the hardware limits of this cam using CHDK? Has anyone managed to find out the actual speed and aperture limits??
Title: Re: S90 Porting Thread
Post by: rirethy on 01 / June / 2010, 05:25:12
Hello all

First, many thanks for this beautiful piece of software !

I own a S90 for less that one week, and tried CHDK.  I'm a new user as this S90 is my first Canon point and shot camera. CHDK works fine, but it seems that the autoload does not work :

In the miscellaneous menu, I select "make card bootable" (or something like that). Then, I switch the SD card to be read only, but then, when I switch on the S90, CHDK do not automatically load.

Is this a restriction of current version as it is a beta ?

For information :
- my firmware version is 1.01B
- I wrote a perl script to write on the SD card at offset 40h "BOOTDISK" (I got this information from CHDK wiki). After that, the autoload works. I verified, CHDH did not write "BOOTDISK" on the sdcard after I select the menu entry "make card bootable"

Do you think autoload could work if I upload my firmware to 1.01C ?

Thanks in advance for any answer.
Title: Re: S90 Porting Thread
Post by: hqasem on 01 / June / 2010, 11:09:55
Hi rirethy.

I'm assuming you're using an SDHC card (8GB or larger). In my case, I wasn't able to get Autoload to work either (firmware 1.00C). So I Autoload with my 4GB and smaller cards, and I do manual firmware update for my 8GB and larger cards.

Earlier in the thread, someone suggested I use sdminst.exe (http://stereo.jpn.org/eng/sdm/index.htm), but that didn't work for me either as it behaves differently if I use an internal vs. external SD card reader with inconsistent results.

Would you share the Perl script that made Autoload work for you?

Thanks!
Title: Re: S90 Porting Thread
Post by: rirethy on 02 / June / 2010, 03:38:51
No, It's not a huge SD card. It's a 2Gb Fat16 formatted. So, it should work. That's why I ask if it's due to my firmware version or to CHDK restriction.

Is it safe to update my S90 from firmware 1.01B to 1.01C using firmware available through CHDK wiki ?

Concerning the perl script, I can share it, but I have to clean it before. Originally it is a script to check if a drive is formatted with Fat 12/16 or 32. I enhance it to write "BOOTDISK" at the right place for my CHDK issue.
Title: Re: S90 Porting Thread
Post by: reyalp on 02 / June / 2010, 15:17:31
No, It's not a huge SD card. It's a 2Gb Fat16 formatted. So, it should work. That's why I ask if it's due to my firmware version or to CHDK restriction.

Is it safe to update my S90 from firmware 1.01B to 1.01C using firmware available through CHDK wiki ?
No one has made a method of updating using a firmware dump. While it is probably technically possible, it would have a very high risk of bricking the camera. In practice, you cannot upgrade unless canon has issued a firmware update.
Quote
- I wrote a perl script to write on the SD card at offset 40h "BOOTDISK" (I got this information from CHDK wiki). After that, the autoload works. I verified, CHDH did not write "BOOTDISK" on the sdcard after I select the menu entry "make card bootable"
This suggests _UpdateMBROnFlash isn't working. I would guess this isn't a consequence of 101b vs. 101c. UpdateMBROnFlash is a 100% match in the stubs, and very early in the firmware dump. If that the firmware had changed before that in 101c, 101b wouldn't work at all.
Title: Re: S90 Porting Thread
Post by: rirethy on 03 / June / 2010, 07:44:37
No one has made a method of updating using a firmware dump. While it is probably technically possible, it would have a very high risk of bricking the camera. In practice, you cannot upgrade unless canon has issued a firmware update.
OK, I wont try to crash my 2 weeks old S90. I'll keep my 1.01B :P
Quote
This suggests _UpdateMBROnFlash isn't working. I would guess this isn't a consequence of 101b vs. 101c. UpdateMBROnFlash is a 100% match in the stubs, and very early in the firmware dump. If that the firmware had changed before that in 101c, 101b wouldn't work at all.
OK, As it should work, the problem is maybe on my side. I will try with another SDCard.
By the way, when I compare CHDK version for 1.01B and for 1.01C, they are identical.

For perl script, i will post it, but I have no much time to clean it.
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 03 / June / 2010, 19:22:07
Quote
Quote
This suggests _UpdateMBROnFlash isn't working. I would guess this isn't a consequence of 101b vs. 101c. UpdateMBROnFlash is a 100% match in the stubs, and very early in the firmware dump. If that the firmware had changed before that in 101c, 101b wouldn't work at all.
OK, As it should work, the problem is maybe on my side. I will try with another SDCard.

I have a Kingston 4gb SDHC class 4 card, formatted it in-camera using "low level format", and copied CHDK FULL (from downloads page) to it. It works with "Firm Update" method, but if I choose "Make Card Bootable" inside CHDK and then lock the card, it will not load CHDK (the camera just says "card locked").

This is not a huge thing, but maybe something went wrong on this specific code. By the way, my S90 is a 101a.

PS: I'm still testing the hardware limits.. I know I have gone beyond 1/4.000 shutter speed, but still don't know if it stops there or will go more...
Title: Re: S90 Porting Thread
Post by: Hollywood on 03 / June / 2010, 19:58:38
Does anyone know if its possible to make a script or create a menu/setting in CHDK for "Bulb Ramping" this would help in creating timelapse sequences with next to nothing in terms of flicker when going from day to night shots.

I've been reading about it on this one website and was hoping this could be adopted for the Canon S90.
http://www.timescapes.org/phpBB3/viewtopic.php?f=4&t=1381 (http://www.timescapes.org/phpBB3/viewtopic.php?f=4&t=1381)
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 03 / June / 2010, 21:33:48
there are some timelapse scripts for you to download here on the forum. I use a simpler one because I do not shoot on the day to night transition, but you can find some that will change speed/iso/aperture for you.

I tried one old script (MDFB-080914) that does motion detection, and it worked flawlessly. The script for HDR posted earlier on this topic also works. The S90 seems to be very friendly to scripts, so grab anyone for time-lapse and try it.
Title: Re: S90 Porting Thread
Post by: Hollywood on 03 / June / 2010, 21:56:01
Yes I've tried the Ultra Intervalometer time lapse scripts and they work great for light that doesn't change too much for example daylight. 

But the one problem with these scripts is that when the light changes you have to stop and adjust the exposure to try and prevent flicker during playback.  Of course you can use MSU Deflicker which does help but having a script that "bulb ramps" pretty much eliminates all the flicker making the footage look ultra smooth.

Any further suggestion appreciated.

Thanks...Cheers.
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 07 / June / 2010, 19:52:10
Hollywood, I rememer one bulb script somewhere here... do a search on the wiki or the forum, maybe you will find it. Lets not change the focus of this thread about the S90 too much ;)

ERR99, were you able to check the "make card bootable" option??
Title: Re: S90 Porting Thread
Post by: rirethy on 11 / June / 2010, 08:38:06
For perl script, i will post it, but I have no much time to clean it.

Hello,

I had some time, so, here is a version of my script.
It first checks the file system version (NTFS/FAT12/FAT16/FAT32). If it's FAT12 or Fat16, then the script is ready to write "BOOTDISK" at the right place. To really write on your sd-card, un-comment the line 198

Hope it will help.
Title: Re: S90 Porting Thread
Post by: jblc on 16 / June / 2010, 04:41:23
and a few pages back there was a guy that had one great idea: to have the ability to manually control the focus while recording video. this would be heaven! not just autofocus, but intentionally shift the focus away. but I don't know if this is even remotely possible...

This is from http://chdk.wikia.com/wiki/CHDK_firmware_usage, (http://chdk.wikia.com/wiki/CHDK_firmware_usage,) but I just tried it, and it doesn't seem to work.  Does it work for anyone?

"S-series: Holding down the MF button (while in manual focus mode) allows use of the zoom-rocker for manual focus just as if you were using the up and down buttons to focus. Releasing the MF button allows the zoom-rocker to function normally.::::Select which button is used to enter <ALT> mode. Can be shortcut, flash, timer, iso or video. A short press of your selected button enters/exits <ALT> mode, a slightly longer press to use the button's normal function.
(S2 IS and S3 IS only)
Use the zoom-rocker switch for adjusting focus in manual focus mode."
Title: Re: S90 Porting Thread
Post by: sabogj on 24 / June / 2010, 15:13:15
Bug in Chdk ver 9.9.5.

Extra photo options.
Disable Overrides. 
Manual says use the "half press" plus (down) arrow to toggle overrides on or off.  Down arrow does not work.  What does work is the half press plus the (right) arrow.  I wondered what in the He$$ I was doing wrong or missing in order to get this thing to work, and via experiment, I figured out that the right arrow push will toggle the settings on or off...not the down arrow.  I changed this in the wiki user manual online, but now I am wondering if it is a user manual error or a s90 beta build firmware error.  Someone let me know please or just fix the issue...either way....
My guess is for every 1 user who tries chkd and actually understands what it does, there is 5 who just walk away because of poor documentation.  Come on guys...example:  set this factor to 1-10, if this factor is set to 1/2 to 1/16000, based on the ev of the tv and the iso, but only if the master is set to override the TV mode if setting 46 is positive.  translation....blah, blah, blah, blah, blah.   

Title: Re: S90 Porting Thread
Post by: an0n on 24 / June / 2010, 23:19:37
Title: Re: S90 Porting Thread
Post by: sabogj on 25 / June / 2010, 12:26:31
Yup...I was venting...
But what I was referring to is on page 8 of the Manual. 
Section: Extra Photo Operations- Disable Overrides. 
I had set this to "on".  Then per the manual, I should be able to do a half press + Down to toggle the settings on or off.  The down arrow did nothing, only the half press plus right arrow seemed to work.  Maybe I am missing something. 

Not to worry, I may not even bother with the program.  It seems more work then it is worth.  (No disrespect meant). 
Title: Re: S90 Porting Thread
Post by: TJSomething on 25 / June / 2010, 17:24:08
Edit: Nevermind.
Title: Re: S90 Porting Thread
Post by: locksinajam on 04 / July / 2010, 21:38:58
hi. very new to chdk. here's my situation, and related questions/issues:

my only disappointment with the s90 is the shutter lag, specifically the time it takes from the half press on the shutter to the time the picture shows up on the lcd. in auto mode, it was disappointing to see it so slow compared to my 3 yr old sd750. to my surprise, i found out the low light mode is SUPER fast.

so my intention is to use the low light mode as my main mode, so to speak. the only disadvantage would be a slight drop in pic quality, with the higher iso. enter chdk. i've had almost a week's worth of playing with it, so here are some stumpers - and reyalp thinks they might be bugs...AGAIN, ALL OF THESE IN LOW LIGHT MODE ONLY.

1. i realized (in low light mode) when i half press the shutter, i see the iso values on the lower right corner of the lcd do something curious: upon the half-press, it shows the override value i have set in shdk. and then it reverts to the iso value the camera assigns as it refocuses or whatever. that gave me an idea - i go into the menu portion, and thought maybe i can disable that - so i tried disabling servo af. it works. BUT - is that how it was intended - servo af MUST be off?

2. i set iso, but it's a little 'off.' if i set it to 50, the shot is taken at 80. at 100, it takes the shot at 160. it's exactly 60% more. why is that?

3. is there any way to override the zoom capability in low lightmode?

4. is it possible to override the picture size?

5. is it possible to have a forced flash?

THANK YOU !!!!
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 15 / July / 2010, 17:15:38
I will do tests checking what you asked on my S90, but I believe that the answer to question 4 is "no" already. The low-light mode is tied to low-res sized pictures.
Title: Re: S90 Porting Thread
Post by: hqasem on 08 / August / 2010, 02:59:46
Just wanted to thank you again for porting CHDK to the S90.

Are there any plans to port the latest changes (e.g. "Lock jogdial" & "Lock keys") to the Autobuild?

Thanks a million!
Title: Re: S90 Porting Thread
Post by: c10ud on 12 / August / 2010, 12:17:29
does set_focus work for this camera? (lua) i wanted to achieve infinite focus with that method but that doesn't seem working here, unlike the built-in manual focus
Title: Re: S90 Porting Thread
Post by: c10ud on 13 / August / 2010, 07:46:04
ok i wanted to do focus to infinity but seems like set_focus(65535) is too much, set_focus(16000) seems doing the trick though
Title: Re: S90 Porting Thread
Post by: Hollywood on 08 / September / 2010, 22:47:22
Quick question, will any of the ports of the S90 work with the new S95 since I've read the only difference is the HD video and a few extra scene selection modes and the HS.

Any info greatly appreciated.

Thanks.
Title: Re: S90 Porting Thread
Post by: reyalp on 08 / September / 2010, 23:12:39
Quick question, will any of the ports of the S90 work with the new S95 since I've read the only difference is the HD video and a few extra scene selection modes and the HS.
No, absolutely not. Every model needs a new port.
Title: Re: S90 Porting Thread
Post by: Hollywood on 09 / September / 2010, 00:20:47
Quick question, will any of the ports of the S90 work with the new S95 since I've read the only difference is the HD video and a few extra scene selection modes and the HS.
No, absolutely not. Every model needs a new port.

Ahhh.....what a bummer!  Okay thanks for the quick response.
Title: Re: S90 Porting Thread
Post by: jblc on 13 / September / 2010, 04:24:04
An option that I would love to see more than any other in chdk!: turn the camera on immediately when pressing the power button--and not go to Play mode!
  I've missed so many shots because the camera went to play mode after the power-button press delay, and then I think I didn't press power and I push it again only to turn it off, then have to wait again before it accepts an ON commands...etc.  It's a nightmare and I wonder why the CHDK standard is to go to play mode: I can go to Play directly if I want to by pressing the Play button.  I don't need chdk for that.

  I know this option is possible, because the early beta versions for the S90 had a "bug" where the camera would go directly to Shoot mode, and that was changed later on.  Please bring back this operation mode, it was great!:D
Title: Re: S90 Porting Thread
Post by: whim on 13 / September / 2010, 07:53:38
@jblc

Quote
...It's a nightmare and I wonder why the CHDK standard is to go to play mode...

if your interested in a discussion about this, see here: http://chdk.setepontos.com/index.php/topic,3994.msg42107.html#msg42107 (http://chdk.setepontos.com/index.php/topic,3994.msg42107.html#msg42107)

A patch as discussed there appears possible for S90 (from a quick peek at the trunk938 source)

For the moment, to boot straight to shooting mode, press and hold try pressing and holding down ON/OFF until you see the CHDK logo appear or hear the lense extend (~ 1 sec on my ixus 870is)

HTH,

wim

[edit: formulated more carefully - can't be sure if long press works on S90 ]

[edit2: added patch suggestion (untested, of course !) ]

To patch the boot behaviour, the following line needs to be changed in trunk938 from
Quote
*(int*)(0x254C)= (*(int*)0xC0220128)&1 ? 0x2000000 : 0x1000000; // replacement  for correct power-on.
to:
Quote
*(int*)(0x254C)= (*(int*)0xC0220128)&1 ? 0x1000000 : 0x2000000; // replacement  for correct power-on.
the code is identical for all 3 firmware revisions, locations are as follows:

in platform/s90/sub/100c/boot.c  ->  line 134
in platform/s90/sub/101a/boot.c  ->  line 143
in platform/s90/sub/101c/boot.c  ->  line 131
Title: Re: S90 Porting Thread
Post by: alanjohn on 13 / October / 2010, 01:44:59
hi, i'm new user, i ve a question : what's about Aperture and Speed in S90 with CHDK ?
does it have fully steps ? and Aperture limited at f/16 ?
i'm confuse between LX3 and S90 (chdk), LX3 has only F/8, not enough for my demand, i want to shot at low light, f/16 so great...
Title: Re: S90 Porting Thread
Post by: MauricioRPP on 04 / June / 2011, 01:31:35
f/16 in low-light? this makes no sense to me. in low-light you woul use the highest F number available. that is f2 on S90 (don't know about LX3).

anyway, S90 hass full manual controls. I don't know what are the hardware limits, but in some tests I guess they are better than firmware imposed limits (shooting at 1/4000s or f11 seems to work, but I'm unable to cientifically prove that. it looks like the photos are different from 1/1600s of f8 on the same conditions).
Title: Re: S90 Porting Thread
Post by: zcream on 04 / October / 2013, 05:10:15
I am resurrecting this thread, as SDM allows for excellent 3d sync.
Just wondering if anyone has tried to capture the RAW buffer to the SDHC card - on any CHDK camera ? If we can get some capture on the S90 with SDHC - say a window of 720P RAW, we can get 1080p on the S95 and newer CCD cameras using the supported SDXC cards.
My interest in the S90, is in its CCD sensor.
Title: Re: S90 Porting Thread - user selectable <ALT> button
Post by: waterwingz on 16 / May / 2014, 00:31:35
I'm looking for an S90 owner willing to test a simple CHDK patch.   Per this thread : 
link> S95, S90 alt button (http://chdk.setepontos.com/index.php?topic=11515.0)
a user selectable <ALT> button can be part of this port if someone is willing to test the patch.

Download links for a test build for the various S90 f/w versions :

link> s90 1.00c (https://app.box.com/s/kgszsj93ifge8otv35ix)
link> s90 1.01a (https://app.box.com/s/akcj29p0fp78zzn2avw2)
link> s90 1.01c (https://app.box.com/s/tw0sobbak4cw5ec687wn)

TIA