Selected wheel setting marked

Issue #2257 new
Licaon Kter created an issue

I can switch the role of the wheel by pressing wheel-right (BGMT_PRESS_RIGHT), say I can control Shutter speed or Aperture, on the plain Canon UI the box around the current selected variable for control has bright green corners, on ML it looks like the attached image, so you don't really know what will be controlled until you actually change it.

Also using Trash button for "ISO Speed" selection will reset the selected controlled role to Shutter speed if it was on Aperture previously ( same as on Canon menu), making things even worse.

Can the mode ( which setting is selected Shutter or Aperture ) be detected by ML and the correct text highlighted ( eg. different color ) ?

/PS: forum thread: http://www.magiclantern.fm/forum/index.php?topic=14801.0

Comments (11)

  1. Alex

    If ISO is being adjusted, one should define ISO_ADJUSTMENT_ACTIVE in consts.h to be true when that happens (and false when you go back to shutter/aperture). This will allow ML to highlight the ISO box.

    For EOS-M, you could try

    #define ISO_ADJUSTMENT_ACTIVE ((*(int*)0x4BE6C) == 0xF)
    

    If that doesn't work, enable the memory browser (CONFIG_HEXDUMP) and look around that address for something from which you can tell when you are adjusting ISO. If that doesn't work either, you could try the mem_spy module to find some other address.

    For shutter and aperture, we could probably gray out the automatic variable (same in Expo menu). This one is easy.

  2. Alex

    Correct, it's more about the ISO request (but I find those two related - basically you want a way to tell which exposure variable you are adjusting).

    Can you record a video? I didn't hold an EOS-M in my hands yet (though I like the form factor).

  3. Daniel Fort

    I was checking out this issue and agree that it would be nice to highlight the Aperture and Shutter speed on the ML menu. Interesting that when using the Trash button for ISO speed selection custom setting it will bring up the Canon menu overlay on top of the ML menu.

    Just a comment--using Trash button for "ISO Speed" selection will reset the selected controlled role to Shutter speed if it was on Aperture previously. This is Canon's behavior and not specific to ML.

  4. Alex

    In ML menu, look for MENU_WARNING_NOT_WORKING.

    On the info bar, just change the item color.

    However, after reading it again, I first thought you are in some semiautomatic mode - for example, in Av you would gray out shutter, since it's automatic. Now I see in your screenshot that you are in M mode...

    In this case, you are probably looking for a tweak specific to EOS M. The hard part is to find a way to tell in which adjustment mode you are. It might be a property, you may find some memory address that changes, or you can identify what dialog is used and understand what Canon does there. There may be useful hints in the dm-spy logs as well.

    To show all properties, it's CONFIG_DEBUGMSG in debug.c, but it may not compile cleanly. I should fix that.

  5. Licaon Kter reporter

    Hope that Debug -> Show GUI events helps this:

    In Tv

    • press right arrow (from SPEED to EC):
    p=54 *o=             0/              0/    0 a=  0
    p=69 *o= 1010042/80001098/301 a=10
    p=27 *o=             0/              0/    0 a=  0
    
    • press right arrow (from EC to SPEED):
    p=54 *o=             0/              0/    0 a=  0
    p=69 *o= 3010042/80001098/101 a=10
    p=27 *o=             0/              0/    0 a=  0
    
    • but, press right arrow (from SPEED to EC) will reset after ~5 secs back to SPEED
    p=54 *o=             0/              0/    0 a=  0
    p=69 *o= 1010042/80001098/301 a=10
    p=27 *o=             0/              0/    0 a=  0
    ~5sec pass
    p=69 *o= 3010042/80001098/101 a=10
    

    In Av

    • press right arrow (from aperture to EC):
    p=54 *o=             0/            0/0 a=0
    p=69 *o= 1010044/1251850/3 a=f
    p=27 *o=             0/            0/0 a=0
    
    • press right arrow (from EC to aperture):
    p=54 *o=             0/            0/0 a=0
    p=69 *o= 3010044/1251850/1 a=f
    p=27 *o=             0/            0/0 a=0
    
    • but, press right arrow (from aperture to EC) will reset after ~5 secs back to aperture
    p=54 *o=             0/            0/0 a=0
    p=69 *o= 1010044/1251850/3 a=f
    p=27 *o=             0/            0/0 a=0
    ~5sec pass
    p=69 *o= 3010044/1251850/1 a=f
    

    In M

    • press right arrow (from SPEED to aperture):
    p=54 *o=             0/              0/              0 a=  0
    p=69 *o= 1010006/63001098/18500301 a=e
    p=27 *o=             0/              0/              0 a=  0
    
    • press right arrow (from aperture to SPEED):
    p=54 *o=             0/              0/              0 a=  0
    p=69 *o= 3010006/63001098/18500101 a=e
    p=27 *o=             0/              0/              0 a=  0
    
    • but, press right arrow (from SPEED to aperture) will reset after ~5 secs back to SPEED
    p=54 *o=             0/              0/              0 a=  0
    p=69 *o= 1010006/63001098/18500301 a=e
    p=27 *o=             0/              0/              0 a=0
    ~5sec pass
    p=69 *o= 3010006/63001098/18500101 a=e
    

    So, my idea is, if you can read/watch the last event *o number you know what is selected currently (ignoring zero), right?

  6. Log in to comment