1000d development - need developers (initial work done) - page 3 - DSLR Hack development - CHDK Forum

1000d development - need developers (initial work done)

  • 30 Replies
  • 35964 Views
Re: 1000d development - need developers (initial work done)
« Reply #20 on: 20 / March / 2012, 16:56:10 »
Advertisements
What a pity, can nobody  help us?

*

Offline Coutts

  • *****
  • 538
  • www.flickr.com/couttsphotog
    • Flickr
Re: 1000d development - need developers (initial work done)
« Reply #21 on: 23 / March / 2012, 13:02:49 »
Initial work is done, see:

https://bitbucket.org/coutts/1000d_dev/overview

That code can be used to set the botoflag and enable autoexec.bin booting (first step). The next step is to start writing some sort of 400plus or Magic Lantern port for the 1000d.

Note: I finally figured out why my code did not work with autoboot before, one tweak should fix things:
in link.script, change:
Quote
first 0x800120 :
to:
Quote
first 0x7F0000 :

Also, add this function to main.c:
Quote
void COPY() {
        int i;
       
        long *from = (long*) 0x800000;
        long *to   = (long*) 0x7F0000;
       
        for (i = 0; i < 0x100000; i++) {
                to = from;
        }
}

and in entry.S modify it to look like this(I have bolded the one addition):
Quote
.text
.org 0
.globl _start, start

start:
_start:
        BL    COPY
        BL    my_LedBlueOn
        B      loc_FF810054


The problem was that before, the link script said to link the code to 0x800120, but the makefile linked it to 0x7F0000. This doesn't work because the code is actually loaded to 0x800000 by the bootloader. We first need to copy our code from 0x800000 to 0x7F0000 (a safe spot in memory, 0x800000 will be overwritten by the canon firmware during the boot process). Then our code will be executed from there.


Let me know if this works.
Canon 5d
Canon 50mm f/1.8
Sigma 24mm f/1.8

Flickr

Re: 1000d development - need developers (initial work done)
« Reply #22 on: 08 / April / 2012, 22:04:25 »
waiting for updates!  :)

sorry no help about programming. I don't know nothing about it.


thanks a lot from Brazil.

Re: 1000d development - need developers (initial work done)
« Reply #23 on: 16 / April / 2012, 19:55:14 »
I´m another user of 1000d. Would be great to have chdk on it, as on my old friend the A630. I hope someone can develop it. Thanks in advance from Argentina.


Re: 1000d development - need developers (initial work done)
« Reply #24 on: 16 / April / 2012, 20:30:36 »
Initial work is done, see:

https://bitbucket.org/coutts/1000d_dev/overview

That code can be used to set the botoflag and enable autoexec.bin booting (first step). The next step is to start writing some sort of 400plus or Magic Lantern port for the 1000d.

Note: I finally figured out why my code did not work with autoboot before, one tweak should fix things:
in link.script, change:
Quote
first 0x800120 :
to:
Quote
first 0x7F0000 :

Also, add this function to main.c:
Quote
void COPY() {
        int i;
       
        long *from = (long*) 0x800000;
        long *to   = (long*) 0x7F0000;
       
        for (i = 0; i < 0x100000; i++) {
                to = from;
        }
}

and in entry.S modify it to look like this(I have bolded the one addition):
Quote
.text
.org 0
.globl _start, start

start:
_start:
        BL    COPY
        BL    my_LedBlueOn
        B      loc_FF810054


The problem was that before, the link script said to link the code to 0x800120, but the makefile linked it to 0x7F0000. This doesn't work because the code is actually loaded to 0x800000 by the bootloader. We first need to copy our code from 0x800000 to 0x7F0000 (a safe spot in memory, 0x800000 will be overwritten by the canon firmware during the boot process). Then our code will be executed from there.


Let me know if this works.

Im not the hottest at programming, but I could not get it to compile.

However, I took the header from a 450d and the 400plus hack and stitched them together (followed by checksum) to give a custom firmware and it gave a good result.

If you load the firmware with a bad autoexec.bin it loads then goes blank and you have to remove battery.
If you put a good autoexec.bin the camera loads it then dumps you back to the main screen.

Unfortunately i dont know anywhere enough to do much more. but glad there is something that can be done on the 450d  :D

*

Offline Coutts

  • *****
  • 538
  • www.flickr.com/couttsphotog
    • Flickr
Re: 1000d development - need developers (initial work done)
« Reply #25 on: 17 / April / 2012, 17:22:59 »
so my fix worked?! (it boots autoexec.bin files now??)
Canon 5d
Canon 50mm f/1.8
Sigma 24mm f/1.8

Flickr

Re: 1000d development - need developers (initial work done)
« Reply #26 on: 17 / April / 2012, 21:46:40 »
Unfortunately I could not get your source files to compile so could not test it. I only have a 450d anyway

I did however get your older .fir file to flash the blue LED on my 450d but it would not recognise any autoexec.bin

The hack I made does recognise autoexec.bin (ML and 400d .bins) but obviously I dont have one customised for the 450d to get any functionality out of it

I have attached the file I made. obviously no responsibility if someone bricks their camera! lol

*

Offline Coutts

  • *****
  • 538
  • www.flickr.com/couttsphotog
    • Flickr
Re: 1000d development - need developers (initial work done)
« Reply #27 on: 19 / June / 2012, 08:38:51 »
I went back and fixed the linker problems, autoexec boots perfectly now and blinks the camera's LED with the firmware started. cool. Maybe someone else can port the 1000d to the ML unified tree? It has LV, so a lot of ML features could work on it.

I will push my changes made to the repo later today:
https://bitbucket.org/coutts/1000d_dev
Canon 5d
Canon 50mm f/1.8
Sigma 24mm f/1.8

Flickr


Re: 1000d development - need developers (initial work done)
« Reply #28 on: 03 / July / 2012, 15:24:30 »
any progress here ?

Re: 1000d development - need developers (initial work done)
« Reply #29 on: 31 / August / 2012, 12:41:25 »
Is any progress still being made on this? I'm willing to help in any possible way.

 

Related Topics