SD1100/ixus 80 porting .... - page 5 - DryOS Development - CHDK Forum  

SD1100/ixus 80 porting ....

  • 360 Replies
  • 165141 Views
*

Offline chr

  • ***
  • 138
  • IXUS 82 IS
Re: SD1100/ixus 80 porting ....
« Reply #40 on: 31 / August / 2008, 15:18:29 »
Advertisements
Hi Nosferatu!

I can't help u with this error because it never happened to me. My best guess is to make clean and try again.

Also ....
Quote
root@server
I hope, this box is not doing any serious duty! It's a very bad practise to compile stuff as root.

Have u seen this article?
Signature finder
Maybe fixing this gensig for dryos cameras may save a lot of time since I made this all manually and there may be only offsets of the function addresses between 100c and 101a fw.



*

Offline fudgey

  • *****
  • 1705
  • a570is
Re: SD1100/ixus 80 porting ....
« Reply #41 on: 31 / August / 2008, 16:06:54 »
Maybe fixing this gensig for dryos cameras may save a lot of time since I made this all manually and there may be only offsets of the function addresses between 100c and 101a fw.

Yes I would imagine you could find stubs for other firmware subs of the same camera by giving gensig all the correct stubs (and the fw dump) from the already ported firmware... For what little I've seen, if it found a match on one sub of a camera, it found it on all other subs as well...

Converting a stubs_entry_2.S to sig_ref_dryos_?.txt manually takes a few minutes as does writing a script to do it automatically  :D.

I don't know how safe it is to add new reference firmwares to svn because it may result in different stubs to be found for already ported cameras (which would break something if someone would upload their new stubs files to svn by accident), but this can be of help locally during porting, of course.

*

Offline chr

  • ***
  • 138
  • IXUS 82 IS
Re: SD1100/ixus 80 porting ....
« Reply #42 on: 31 / August / 2008, 17:56:26 »
Converting a stubs_entry_2.S to sig_ref_dryos_?.txt manually takes a few minutes as does writing a script to do it automatically  :D.

Yeah! I'm a great hacker and I write great scripts  8)

Actually I just released the little difference of NSTUB and NHSTUB ... I made a terrible mistake ...
:smily that smashes a brick onto his head  :haha


*

Offline chr

  • ***
  • 138
  • IXUS 82 IS
Re: SD1100/ixus 80 porting ....
« Reply #43 on: 31 / August / 2008, 19:41:29 »
Ok, I followed fudgey's weired instructions and ran gensig on fw100c.
Then finsig on Nosferatus 101a rom dump: 100% found.

Mh, I don't believe it works ... but now its about the scary audience to test ...
One thing is guaranteed: this build got the same bugs as the 100c build ... if it ever boots.

As usual: Use this at your own risk!

edit:
mh, looking at boot.c ... this build can't work ...

edit edit: deleted the build, attached the entry file instead
« Last Edit: 31 / August / 2008, 19:54:06 by chr »


*

Offline will

  • *
  • 26
  • IXUS 80IS fw 1.01a
Re: SD1100/ixus 80 porting ....
« Reply #44 on: 31 / August / 2008, 19:54:17 »
Ok, I followed fudgey's weired instructions and ran gensig on fw100c.
Then finsig on Nosferatus 101a rom dump: 100% found.

Mh, I don't believe it works ... but now its about the scary audience to test ...
One thing is guaranteed: this build got the same bugs as the 100c build ... if it ever boots.

As usual: Use this at your own risk!

edit:
mh, looking at boot.c ... this build can't work ...

Yup, didn't boot, as you suspected on 1.01a.

*

Offline chr

  • ***
  • 138
  • IXUS 82 IS
Re: SD1100/ixus 80 porting ....
« Reply #45 on: 01 / September / 2008, 21:48:00 »
State of the art. Nosferatu asked for it.

Still cam freezes on any MF/Zoom related things.

The patch also contains debug.c: stuff to create a crash.log on SD. Not perfect yet.
Hooks data-abort and watchdog.

101a: copy from 100c with fresh autogenerated sigs

The patch is against
https://tools.assembla.com/svn/chdk/trunk@491
« Last Edit: 01 / September / 2008, 21:49:42 by chr »

Re: SD1100/ixus 80 porting ....
« Reply #46 on: 02 / September / 2008, 07:51:13 »
Hi,

i'm unable to compile the chdk after aplying your patch.
Is it possible there is an mistake by installing the crosscompiler?

Code: [Select]
#!/bin/sh

mkdir ~/src
mkdir ~/chdk
mkdir ~/arm-elf
mkdir ~/wa

export PATH=${HOME}/arm-elf/bin:$PATH

cd src
wget ftp://ftp.gwdg.de/pub/misc/gcc/releases/gcc-4.1.2/gcc-4.1.2.tar.bz2
wget ftp://sourceware.org/pub/binutils/snapshots/binutils-2.17.90.tar.bz2
cd ..

cd ~/wa
tar xvfj ~/src/binutils-2.17.90.tar.bz2
tar xvfj ~/src/gcc-4.1.2.tar.bz2

cd binutils-2.17.90
./configure --srcdir=../binutils-2.17.90 --target=arm-elf --prefix=${HOME}/arm-elf
make
make install
cd ..

mkdir gcc-4.1.2-arm-elf && cd gcc-4.1.2-arm-elf
../gcc-4.1.2/configure --srcdir=../gcc-4.1.2 --target=arm-elf --enable-multilib --enable-languages=c --enable-clocale=gnu --disable-libm --disable-libc --disable-threads --disable-nls --disable-libssp --disable-intl --disable-libiberty --with-cpu=arm9 --with-newlib --prefix=${HOME}/arm-elf
(unset LIBRARY_PATH; unset CFLAGS; make && make install)
cd ..

Cu Nos
« Last Edit: 03 / September / 2008, 07:00:25 by Nosferatu »

Re: SD1100/ixus 80 porting ....
« Reply #47 on: 03 / September / 2008, 12:48:52 »
Dear all,

This is doing the job on my "Etch under VMWare" box:

Code: [Select]
./configure --target=arm-elf --prefix=${HOME}/arm-elf
make
make install

./configure --target=arm-elf --enable-multilib --enable-languages=c --enable-clocale=gnu --disable-libm --disable-libc --disable-threads --disable-nls --disable-libssp --disable-i
ntl --disable-libiberty --with-cpu=arm9 --with-newlib --prefix=${HOME}/arm-elf
unset LIBRARY_PATH
unset CFLAGS
make
make install


Oh, btw: I had to include a
Code: [Select]
-mfpu=fpa

switch and I also had to adapt

Code: [Select]
CC=arm-elf-gcc
OBJCOPY=arm-elf-objcopy
OBJDUMP=arm-elf-objdump
STRIP=arm-elf-strip
NM=arm-elf-nm
AR=arm-elf-ar
RANLIB=arm-elf-ranlib
SIZE=arm-elf-size
in makefile.inc after applying your patch, chr, otherwise I was getting file not found and/or linker errors...

Afterwards, a
Code: [Select]
make PLATFORM=ixus80_sd1100 PLATFORMSUB=100c

is running fine, whereas a

Code: [Select]
make PLATFORM=ixus80_sd1100 PLATFORMSUB=101a

is still giving an error:

Code: [Select]
make[4]: Entering directory `/home/chris/chdk/491patched/platform/ixus80_sd1100/sub/101a'
make[4]: *** No rule to make target `stubs_entry_2.o', needed by `libplatformsub.a'.  Stop.


Any hints how to get the correct stubs_entry_2.S for the 1.01a FW?


Thx,
ranti
« Last Edit: 03 / September / 2008, 12:58:32 by ranti »


Re: SD1100/ixus 80 porting ....
« Reply #48 on: 09 / September / 2008, 03:34:32 »
Hi,

compiling the 101a runs without any errors now on my linux machine.
there was a wrong compilerflag in my mykefile ...

whats now todo ? copying the binary to the root of my card ?
if there is an additional step, then it would be very nice
if you could write a small howto for this last step.

Regards
Nos!

Re: SD1100/ixus 80 porting ....
« Reply #49 on: 10 / September / 2008, 10:22:36 »
Hi,

@chr:

you wrote that the binary must be encrypted.
can you write a small howto for encrypting the file ?
or is there a tool out for encryption ?
then i can start my tests with my 80 is.

Regards
Nos!

 

Related Topics