IXUS 115 HS / ELPH 100 HS request

  • 535 Replies
  • 77968 Views
  • Publish
    IXUS 115 HS / ELPH 100 HS request
    « on: 15 / August / 2011, 02:49:41 »
    Advertisements
    UPDATE 2
    This port has been released
    Download here! http://mighty-hoernsche.de/
    Or here
    http://chdk.wikia.com/wiki/Downloads


    NOTE: To enter <ALT> mode, press and hold the Play (or Review) button for a short while.

     The info below is just for archival purposes.

    ####################################
    UPDATE

    Download the latest release for IXUS 115 and ELPH100 at the following link:


    Note: Make sure you select the correct firmware version

    To enter ALT mode when CHDK is loaded on your camera, press ZOOM IN + FUNC./SET
    Then press MENU to bring up the controls


    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Original post:

    The IXUS 115 HS (ELPH 100 HS) is the only DIGIC 4 camera that hasn't had any progress in porting.

    I'm willing to provide time and assistance if there's a developer that can do this.
    It's obviously a time-consuming task, but any response or starting guidelines would be greatly appreciated :)

    Thanks!

    EDIT: I can't get the ver.req (or vers.req) to work. I tried both 1GB and 16GB, ver and vers, holding the SET and DISP buttons, as well as the hold Zoom Out while turning on, and zooming out again. Nothing works.

    It just needs CHDK for manual focus, and exposure lock for video.
    (The Canon page says this camera has "AE Lock" but I can't find any exposure lock anywhere)


    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    « Last Edit: 01 / September / 2012, 02:08:11 by kevdog32 »

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #1 on: 24 / August / 2011, 07:05:32 »
    Latest CHDK version:
    1.00c - alpha #5
    1.01a - alpha #5
    1.01b - alpha #5

    BUGLIST:
    • Issue: Video crashes camera
      Affected:1.01b (alpha4)
      Cause: wrong function addresses in <fwversion>/movie_rec.c
      Fix: alpha5

    • Issue: "SuperFine" quality doesn't make any sense.
      Affected: 1.00c, 1.01ab
      Cause: there is no "SuperFine" quality in elph100.
      Fix: no

    • Issue: RAW files have nothing in them.
      Affected: 1.01a,b
      Cause: Possibly wrong addresses of RAW buffer
      Fix: 1.00c - works properly (but I can't open RAW file, because of unknown format)
      1.01a,b - check alpha5 (fixed addresses a bit)

    • Issue:Won't take RAW passed the first picture
      Cause: our capt_seq_task() stops it's work after 1 photo
      Fix: no

    • Issue: getting zoom stuck in zoomed position while video recording
      Affected: 1.01ab
      Cause: look here
      Fix: 1.00c - zoom works properly
      1.01ab - no

    • Issue: digital zoom doesn't work while video recording
      Affected: 1.00c
      Cause: unknown (possible - wrong "zoom_unlock" or "af_lock/unlock" function position in <fwversion>/movie_rec.c)
      Fix: no

    • Issue:Scripts don't start every time, but I need to restart the camera to start them successfully.
      Affected:1.01b (tested), 1.00c+1.01a (possible)
      Cause: unknown
      Fix: no

    • Issue:Scripts sometimes don't stop themselves, but need to be stopped after execution.
      Affected:1.01b (tested), 1.00c+1.01a (possible)
      Cause:unknown
      Fix: no

    • Issue: Games screen sqeezed, sometimes no colours.
      Affected: 1.00c, 1.01ab
      Cause: Wrong ASPECT_GAMES_XCORRECTION value in <camera>/platform_camera.h
      Fix: no

    • Issue:
      Quote
      Colors of the palette for the menu background changes - not clear about correlations to going into sub-menus; done before: I changed the background color. Palettes in shooting and playback mode are not the same.
      Affected: 1.01b (tested), 1.00c+1.01a (possible)
      Cause: unknown
      Fix: no

    • Issue:
      Quote
      Zebra mode is working bad, it produces just blinking of red lines in bottom half of screen, not on places it should be.
      Affected: 1.00c (tested), 1.01ab (possible)
      Cause: unknown
      Fix: no

    • Issue: Generating of badpixel.bin doesn't work
      Affected: 1.00c (tested), 1.01ab (possible)
      Cause: unknown
      Fix: no

    • Issue: match values in <camera>/shooting.c
      Affected: general
      Cause: wrong values
      Fix: no


    ORIGINAL MESSAGE:

    Quote
    Hello, kevdog32!

    I've just started to analyze firmw dump, and I hope soon will be able to present something useful for this camera.
    I can't get ver.req&vers.req to work too, but I've took fw version directly from firmware. Use cBasic udumper (Canon Basic description) and post fw here. We'll see what ver you have.

    Stay tuned! =)

    John.
    « Last Edit: 26 / December / 2011, 06:30:36 by Just.J »

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #2 on: 25 / August / 2011, 22:30:04 »
    I can't get ver.req&vers.req to work too, but I've took fw version directly from firmware. Use cBasic udumper (Canon Basic description) and post fw here. We'll see what ver you have.
    Thank you so much!! I was starting to lose hope :D

    I had no idea the dumping was that easy, I thought it was only photo receptors :P

    I'm having a go at running the script and I'll update how it went.

    EDIT: I formatted the card and used EOScard, then put the script.req with the string inside it onto the card, as well as the extend.m dumping code, but it doesn't work. How should I activate the script? The FUNC./SET won't do it, nor the zoom lever.
    The original simple dump doesn't work either.

    The camera pauses slightly when booting up, but that's it.
    « Last Edit: 26 / August / 2011, 04:35:33 by kevdog32 »

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #3 on: 26 / August / 2011, 07:35:53 »
    Check with a help of hex-editor (like HxD) string "SCRIPT" with 0x1F0 offset in sd card's boot sector. It's main thing to get scripts work.
    Scripts on elph100 runs by FUNC./SET button

    John.


  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #4 on: 26 / August / 2011, 08:30:00 »
    Ah turns out I had to use a smaller card. The 1GB worked when the 16GB didn't, so I guess this camera isn't one of the newer ones that can use cards >4GB.

    Here is my dump: http://dl.dropbox.com/u/15728808/PRIMARY.BIN

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #5 on: 26 / August / 2011, 10:13:34 »
    Your camera has 1.01A version... My - 1.00C so you can't directly test my work =(, but when I'll make working alpha for 1.00C I'll see your ver.

    For now I've made a lot of stuff with lowlevel functions, so camera starts with all CHDK tasks, but I've some problems:

    1) Camera still knows that card is locked. Could you show me where and what I need to change (in boot.c or somewhere else, I dunno..)
    2) Logo and starting message appears, but not the way I want to. They're blinking and bad looking. In what files I need to make changes, to fix it?
    3) Has this cam Jog_dial? And if yes what Jog_dial is?)
    4) How to fill this file for my cam:
    platform/<cam>/lib.c
    Code: [Select]
    int vid_get_viewport_width()
    {
    // viewport width table for each image size
    // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
    static long vp_w[4] = { ?, ?, ?, ? };
    return vp_w[shooting_get_prop(PROPCASE_ASPECT_RATIO)];
    }

    int vid_get_viewport_xoffset()
    {
    // viewport width offset table for each image size
    // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
    static long vp_w[4] = { ?, ?, ?, ? }; // should all be even values for edge overlay
    return vp_w[shooting_get_prop(PROPCASE_ASPECT_RATIO)];
    }

    long vid_get_viewport_height()
    {
    // viewport height table for each image size
    // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
    static long vp_h[4] = { ?, ?, ?, ? };
    return vp_h[shooting_get_prop(PROPCASE_ASPECT_RATIO)];
    }

    int vid_get_viewport_yoffset()
    {
    // viewport height offset table for each image size
    // 0 = 4:3, 1 = 16:9, 2 = 3:2, 3 = 1:1
    static long vp_h[4] = { ?, ?, ?, ? };
    return vp_h[shooting_get_prop(PROPCASE_ASPECT_RATIO)];
    }

    Thank in advance
    John.

    EDIT:
    1 problem solved. That was my fault, I disabled for debugging purposes in boot.c "mykbd_task" and when I switched it on, it's became ok.. So now I need to ajust my screen, and then I can post alpha version for this cam.

    John.
    « Last Edit: 26 / August / 2011, 10:32:46 by Just.J »

    *

    Offline fe50

    • ******
    • 3034
    • IXUS50 & 860, SX10 Star WARs-Star RAWs
      • fe50

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #7 on: 29 / August / 2011, 12:11:50 »
    And finally first testable alpha-version for 1.00c version is ready.

    If there someone who can test it - you're welcome!

    Alt-mode is binded to (FUNC/SET+ZOOM_IN) buttons combination

    For now main bug is strange "jumping" of output lines (like battery, menu items and other) in vertical axis (for about 5-7 lines down to its normal position), and time to time (for example after focusing) it returns to normal. Have anybody any ideas how to fix it?

    EDIT: Added support to ver 1.01a, but I've no nesessary stuff to test, so pls someone try it and report about results...

    John.
    « Last Edit: 31 / August / 2011, 04:41:33 by Just.J »


  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #8 on: 31 / August / 2011, 06:56:35 »
    I tested the 1.01a alpha build using the PS.FI2 method, and it loaded CHDK correctly.
    The information appears on the main screen, but it does "jump" around like the 1.00c.

    Also, the camera turns off when starting to record a video, leaving the lens fully open.

    Here is a video: http://dl.dropbox.com/u/15728808/CHDK%20IXUS%20115%20ELPH100.mp4

    Otherwise it seems operational :D

    Here is a video link:

  • Publish
    Re: IXUS 115 HS / ELPH 100 HS request
    « Reply #9 on: 31 / August / 2011, 08:01:44 »
    2Kevdog32
    Ok, seems to me I fixed problem with video (forgot to change 1 func address when transferring from 1.00c), try this build, hope it'll be work properly.
    Also pls try to use overrides like quality, image size, etc.

    Next step for me in this port is:
    1) Fix "jumping" problem, desribed before
    2) Match modemap (it's very different comparing to sx220, that I used as base for this port)
    3) Find more comfortable key combination for activation alt-mode
    4) Unlock optical zoom for video (if it possible ofc. Can someone explain what I need to do?)

    EDIT: "Jumping" problem solved! In "platform/<camera>/lib.c" I finally managed to pick right values:
    Code: [Select]
    long vid_get_bitmap_screen_width() { return 320; }
    long vid_get_bitmap_screen_height() { return 240; }

    long vid_get_bitmap_buffer_width() { return 960; }
    long vid_get_bitmap_buffer_height() { return 270; } //this value cause "Jumping" problem if wrong (in alpha1 it was 360)

    int vid_get_viewport_buffer_width() { return 960; }

    Stay tuned!

    John.
    « Last Edit: 13 / September / 2011, 15:53:23 by Just.J »

     

    Related Topics