My diskboot.bin is not working

  • 12 Replies
  • 1220 Views
My diskboot.bin is not working
« on: 21 / March / 2014, 06:57:23 »
Advertisements
Hi,

I installed the latest CHDK stable a few days ago on my S110. It boots up correctly and I can use it.
Then I downloaded the CHDK source from trunk 3378 and compiled it. For the first try I did not change anything on the source code just left it like it came from trunk. The compiler says

Quote
...
<< Leaving loader/s110
dance -> DISKBOOT.BIN ver 9
**** Firmware creation completed successfully

**** Build Finished ****

I use gcc 3.4.5 and gmake 3.77.

I got a diskboot.bin which I saved on the SD card. So I just replaced the CHDK diskboot.bin with the one I compiled myself.

I set the SD card to locked and put it into my S110 and switched the cam on.
But nothing happened, after arround 5 seconds the cam boots up, shows a distorted CHDK logo and the finally switched off again.

I created a small video that you can see whats going on:



What goes wrong here?

Thanks for any help!


PS: can I insert the video inline here so one can see the image preview in the post here?
« Last Edit: 21 / March / 2014, 07:05:11 by mr.burns »
2 x IXUS 860IS 100c
2 x Powershot S110 103a

Re: My diskboot.bin is not working
« Reply #1 on: 21 / March / 2014, 07:11:20 »
I do not see any CHDK logo.

How does the filesize compare with the official CHDK build ?

Re: My diskboot.bin is not working
« Reply #2 on: 21 / March / 2014, 07:19:16 »

I use gcc 3.4.5 and gmake 3.77.

What goes wrong here?
I can see the logo appear but then it crashes drawing the CHDK config information in init_splash() in core/gui.c

So your build got through the boot stage, loaded the code in boot.c, got the spytask started and began to config the gui.  Not too bad for a first try.

Most likely there is either something wrong in your build environment or the command string you used to invoke make is missing something.

One issue you might have is that you are only moving diskboot.bin to the SD card and not the various .flt modules. Those have to be compiled with the same version of CHDK and (I think probably) compiler configuration.  You might try installing the complete build and not just diskboot.bin.

Did you try using CHDK-Shell ?

« Last Edit: 21 / March / 2014, 07:22:42 by waterwingz »
Ported :   A1200    SD940   G10    Powershot N    G16

Re: My diskboot.bin is not working
« Reply #3 on: 21 / March / 2014, 07:24:28 »
Hi waterwingz,

the command which I used is:

gmake PLATFORM=s110 PLATFORMSUB=103a fir


I did not try the CHDK shell, because I am more familiar with Eclipse.
2 x IXUS 860IS 100c
2 x Powershot S110 103a


Re: My diskboot.bin is not working
« Reply #4 on: 21 / March / 2014, 07:26:31 »
Hi waterwingz,

the command which I used is:

gmake PLATFORM=s110 PLATFORMSUB=103a fir


I did not try the CHDK shell, because I am more familiar with Eclipse.

See my comment about .flt modules ( added as an edit above ).

You can use CHDK-Shell to setup the build environment (paths, system variable & tools) and to download all the files you need.  Just use Eclipse as your editor.
Ported :   A1200    SD940   G10    Powershot N    G16

Re: My diskboot.bin is not working
« Reply #5 on: 21 / March / 2014, 07:48:45 »
Hi waterwingz,

Quote
Just use Eclipse as your editor.

I already had that in my mind as well.
But I tested further and created a complete new project in eclipse now and then it worked sometimes.
Sometimes it boots up directly after switching the cam on. The other times I press the power on button, it takes 5 seconds and then I got the distorted logo again!?!

Let me ask two more questions:

1.
Using eclipse I 'only' get the diskboot.bin. Does CHDK-Shell create all the other files and folders to get a complete CHDK?

2.
If I install the stable CHDK on my cam and take the source from the stable release and compile my own version and then replace just the diskboot.bin this should be enough - or not?


« Last Edit: 21 / March / 2014, 07:52:45 by mr.burns »
2 x IXUS 860IS 100c
2 x Powershot S110 103a

Re: My diskboot.bin is not working
« Reply #6 on: 21 / March / 2014, 07:52:46 »
1. Using eclipse I 'only' get the diskboot.bin. Does CHDK-Shell create all the other files and folders to get a complete CHDK?
Yes.   

But so will :
Code: [Select]
gmake PLATFORM=s110 PLATFORMSUB=103a firzipsubcomplete
Quote
2. If I install the stable CHDK on my cam and take the source from the stable release and compile my own version and then replace just the diskboot.bin this should be enough - or not?
I believe so.  But it's easy to get caught three months down the road with a version mismatch in the heat of a code battle.  So I'd advice updating the .flt modules each time you update diskboot.bin.  With the right batch/script file it does not take any more effort.
Ported :   A1200    SD940   G10    Powershot N    G16

Re: My diskboot.bin is not working
« Reply #7 on: 21 / March / 2014, 07:53:23 »
Sorry waterwingz,

I changed my previus post, pls. take a look, becuase it worked only partially...
2 x IXUS 860IS 100c
2 x Powershot S110 103a


Re: My diskboot.bin is not working
« Reply #8 on: 21 / March / 2014, 07:59:01 »
Sorry waterwingz,

I changed my previus post, pls. take a look, becuase it worked only partially...
This is nuts .. your revision came a second before my next response. Please read that?  I think we are done here?
Ported :   A1200    SD940   G10    Powershot N    G16

Re: My diskboot.bin is not working
« Reply #9 on: 21 / March / 2014, 09:17:38 »
Hi waterwingz,

I compiled now using

Code: [Select]
gmake PLATFORM=s110 PLATFORMSUB=103a firzipsubcompleteand copied all content of the full-zip to my SD card and - it works now! Thanks a lot!
I also modified the source code and did some changes on the splash screen to show 'Hello world' and the I compiled using:

Code: [Select]
gmake PLATFORM=s110 PLATFORMSUB=103a firto create only the diskboot.bin. I transferred the diskboot.bin (only) to SD card and - it also works. It seems I am ready for development now - great!
This will also mean one can use Eclipse (only) to edit and compile CHDK which I think is a good alternative to CHDK-Shell.

But I have three more questions:

1.
The compilation stops in between with following message:
Code: [Select]
...
...
>> Entering to platform/s110/sub/103a
boot.c -> boot.o
stubs_min.S -> stubs_min.o
stubs_auto.S -> stubs_auto.o
-> stubs_entry.S
CAUTION! 'stubs_entry.S' is not updated due to target firmware binary not found!
      0 [main] comm 8516 open_stackdumpfile: Dumping stack trace to comm.exe.stackdump
Then an small window comes up saying:

Quote
comm.exe does not work anymore

If I hit the 'Close' button the compilation continues until all files were created.
What does this caution mean?

2.
If I download the original stable CHDK there is also a file called PS.FI2.
In the two zip-files the compiler created this file does not exists - what is this file for - do I need it? If yes - how I will get it?

3.
I want to know what is the difference between the 'normal' zip and the full zip which is generated


Thanks a lot!


« Last Edit: 21 / March / 2014, 09:20:22 by mr.burns »
2 x IXUS 860IS 100c
2 x Powershot S110 103a

 

Related Topics