supplierdeeply

PowerShot SX220 HS - Porting Thread

  • 562 Replies
  • 88253 Views
  • Publish
    PowerShot SX220 HS - Porting Thread
    « on: 29 / March / 2011, 16:47:03 »
    Advertisements
    Hello
    Chdk expected for these two cameras?
    If so, when?
    I bought a sx230 and if I can help write it down!
    Thanks in advance.

    Sorry for my bad English knowledge
    « Last Edit: 23 / May / 2011, 10:33:18 by Frrost »

    *

    Offline reyalp

    • ******
    • 9810
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #1 on: 29 / March / 2011, 17:35:22 »
    There is no schedule, and no way of knowing in advance if a port will be done at all. A port can only be done by someone who has the camera, good code knowledge, and lots of time.
    Don't forget what the H stands for.

  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #2 on: 02 / April / 2011, 08:55:11 »
    A Big problem i see with CHDK, is that this camera have only a play Button and no other Buttons.
    From my Ixus 1000 i see, that play Button can not use to activate chdk, because it do always canon firmware action.

    So whole chdk need much enhance that it work with the touchscreen, chdk menu can control over touchscreen etc.

    the SX220 look as a great Camera, have a BSI CMOs Sensor with good image quality.A little worser as 10 megapixel BSI, but lots better as other Canon Camera.

    http://www.photographyblog.com/reviews/canon_powershot_sx220_hs_review/sample_images/
    Ixus 1000 HS

    *

    Offline funnel

    • ****
    • 349
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #3 on: 14 / April / 2011, 04:23:12 »
    Hi, I'm new to the board and CHDK.

    I managed to get a firmware dump with Canon Basic script. The start address for the dump is 0xFF000000 which is different than the other Canon cameras.

    I'm now reading through the wiki page to find some useful infomation on how to port it. I tried the DISKBOOT.BIN from the sx210 and the camera doesn't even turn on.

    I hope the CHDK gets ported to this camera.


    *

    Offline whim

    • ******
    • 2013
    • A495/590/620/630 ixus70/115/220/230/300/870 S95
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #4 on: 14 / April / 2011, 06:00:51 »
    @funnel

    Welcome to the forum !
    Please upload it somewhere, and report the dump in this thread with a link so it can be put in fe50's P&S FW Dumps repository

    cheers,

    wim

    « Last Edit: 14 / April / 2011, 06:14:59 by whim »

    *

    Offline funnel

    • ****
    • 349
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #5 on: 14 / April / 2011, 08:44:32 »
    Firmware uploaded here http://www.zshare.net/download/88986073537ffff1/

    Start address 0xFF000000

    Firmware version: GM1.00A
    P-ID: 322C PAL D
    Adj Ver: 010.010

    DyrOS v2.3, release #0047
    « Last Edit: 14 / April / 2011, 10:05:37 by funnel »

    *

    Offline reyalp

    • ******
    • 9810
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #6 on: 14 / April / 2011, 17:39:51 »
    The start address for the dump is 0xFF000000 which is different than the other Canon cameras.
    How did you determine this ? You would have to modify the script to get a dump at a different address.
    Don't forget what the H stands for.

    *

    Offline funnel

    • ****
    • 349
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #7 on: 14 / April / 2011, 18:32:43 »
    Yes, I modified the script and guessed the address because the old ones didn't work.


    *

    Offline funnel

    • ****
    • 349
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #8 on: 17 / April / 2011, 04:29:58 »
    I made some progress. I managed to compile and run some boot code using the SX210IS source as reference.

    The camera uses a new set of dancing bits located at FF43BEE0 -> {0,4,2,7,3,6,5,1}
    I also found that I can start an unencoded DISKBOOT.BIN from this CBasic script http://chdk.wikia.com/wiki/Canon_Basic/Scripts/Loader



    For now the camera hangs on this subroutine in boot.c
    Code: [Select]
    void __attribute__((naked,noinline)) sub_FF0011B0_my() { // SX220 was sub_FF811198_my in sx210

        // LED debug ok.


    asm volatile (

                     "STR     LR, [SP,#-4]!\n"
                     "SUB     SP, SP, #0x74\n"
                     "MOV     R1, #0x74\n"
                     "MOV     R0, SP\n"
                     "BL      sub_FF3AB8A8\n"
                     "MOV     R0, #0x53000\n"
                     "STR     R0, [SP,#4]\n"
                  //   "LDR     R0, =0x186AE4\n"
                     "LDR     R0, =new_sa\n" // added
    "LDR   R0, [R0]\n" // added           
    "LDR     R2, =0x371F80\n"
                     "STR     R0, [SP,#8]\n"
                     "SUB     R0, R2, R0\n"
                     "STR     R0, [SP,#0xC]\n"
                     "MOV     R0, #0x22\n"
                     "STR     R0, [SP,#0x18]\n"
                     "MOV     R0, #0x68\n"
                     "STR     R0, [SP,#0x1C]\n"
                     "LDR     R1, =0x379C00\n"
                     "LDR     R0, =0x19B\n"
                     "STR     R1, [SP]\n"
                     "STR     R0, [SP,#0x20]\n"
                     "MOV     R0, #0x96\n"
                     "STR     R2, [SP,#0x10]\n"
                     "STR     R1, [SP,#0x14]\n"
                     "STR     R0, [SP,#0x24]\n"
                     "STR     R0, [SP,#0x28]\n"
                     "MOV     R0, #0x64\n"
                     "STR     R0, [SP,#0x2C]\n"
                     "MOV     R0, #0\n"
                     "STR     R0, [SP,#0x30]\n"
                     "STR     R0, [SP,#0x34]\n"
                     "MOV     R0, #0x10\n"
                     "STR     R0, [SP,#0x5C]\n"
                     "MOV     R0, #0x800\n"
                     "STR     R0, [SP,#0x60]\n"
                     "MOV     R0, #0xA0\n"
                     "STR     R0, [SP,#0x64]\n"
                     "MOV     R0, #0x280\n"
                     "STR     R0, [SP,#0x68]\n"
                     "LDR     R1, =sub_FF005EE0_my\n"       //patched
                     "MOV     R2, #0\n"
                     "MOV     R0, SP\n"
                 //    "BL      sub_FF0034C4\n"             //debugging - hangs
                     "ADD     SP, SP, #0x74\n"
                 //    "LDR     PC, [SP],#4\n"     //debugging - hangs
     
                   
         );
    }

    I uploaded the trunk here http://www.zshare.net/download/89089348fb947375/
    This is not even an alpha version but at least I got something working.


    *

    Offline whim

    • ******
    • 2013
    • A495/590/620/630 ixus70/115/220/230/300/870 S95
  • Publish
    Re: PowerShot SX220 & SX230 HS - Porting Thread
    « Reply #9 on: 17 / April / 2011, 09:23:45 »
    @funnel

    Congratulations !

    Quote
    The camera uses a new set of dancing bits located at FF43BEE0 -> {0,4,2,7,3,6,5,1}

    confirmed for ixus220hs (at FFC0E414) - this cam also uses DryOS 2.3 release #0047
    (but dumped with unmodified Cbasic dumper @FF810000 !)

    wim

    PS Had to limit IDA 5.2 Pro to load only FF0000 of the FFFFFC bytes in your dump,
         or CHDK.idc would choke on it ...
    « Last Edit: 17 / April / 2011, 09:44:50 by whim »

     

    Related Topics