Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - coutts

#276
Quote from: scrax on July 02, 2012, 09:31:24 PM
I'm trying to make a plugin for ML o see how it works.
I've started from testplug, and changed a little to this:

#define PLUGIN_CLIENT
#include "plugin.h"

extern const char* CARD_DRIVE;
extern int transparent_overlay_hidden;

EXTERN_FUNC(MODULE_FUNC_INIT, struct plugin_descriptor *, somefunc) {
    msleep(100);
    beep();
    FILE * f = FIO_Open(CARD_DRIVE "ML/DATA/overlay.dat", 0);
    if (f != (void*) -1)
    {
beep();
        FIO_CloseFile(f);
FIO_RemoveFile(CARD_DRIVE "ML/DATA/overlay.dat");
    transparent_overlay_hidden = !transparent_overlay_hidden;
redraw();
        beep();
    }
    return 0;
}


But i have errors when compiling:

scraxplug.c: In function 'somefunc':
scraxplug.c:10:36: error: expected ')' before string constant
scraxplug.c:10:36: error: too few arguments to function 'FIO_Open'
scraxplug.c:15:29: error: expected ')' before string constant
make[2]: *** [scraxplug.o] Error 1


some hint?
did you mean to say FIO_OpenFile ?
#277
Hardware and Accessories / Re: Lenses for 550d
July 03, 2012, 05:42:33 PM
I suggest a Sigma 30mm f/1.4. I used one on my 500d when I had it and loved it. The depth of field was my favorite part. It looks very similar to 50mm on a full frame camera.

500d w/ Sigma 30mm f/1.4:



5dc w/ 50mm f/1.8:
#278
Quote from: a1ex on July 03, 2012, 03:54:15 PM
For shutter count: I think Indy found the property data in ROM at ff80000.

http://groups.google.com/group/ml-devel/msg/831b0c9ee8765fca
I looked at 0xFF800000, it was just full of 0xFFFFFFFF though, so no luck there.
my card reader just broke (damn walmart and their cheap products), so I can't work on anything until tomorrow now.
#279
Some new progress:
create_state_object: 0xFFB22574

EMState is created at FF8B7694 (initialize_state_object__EMState).


dword_FF8B7304 is a small list containing pointers to the 3 states of EMState:
- emRegisterMulticastCallback
- emUnregisterMulticastCallback
- emDeliverMulticastEvent


create_state_object creates a struct for EMState using some of the arguments passed to it.
off_0x00: "StateObject"
off_0x04: "EMState"
off_0x08: 0x0 [unknown]
off_0x0C: ptr to state_object_state_handler__maybe (FFB22744) [this seems to trigger state changes i think]
off_0x10: EMState__states [dword_FF8B7304]
off_0x14: 0x3 [unknown]
off_0x18: 0x1 [unknown]
off_0x1C: 0x0 [unknown]

EMState is initialized during startup, called from Canon's startup task. I could re-write emDeliverMulticastEvent to send a GUI event maybe for half shutter press, unless there's an easier way to do it. I would have to somehow hijack Canon's startup task (and have to re-write that too), unless there's an easier method.

I'll dig into this more today. Overall the state machine stuff seems very similar to how it is in DryOS from when I looked into this stuff with the 500d. Identical I'd say.


EDIT
Wait, this will be easier than I thought since I only need to change the pointer in the EMState state object struct.
#280
Also: I still can't find a property for shutter count :(
I have asked on a photography forum, and I guess Canon can check the shutter count (many people had their shutter count checked when they sent their 5dc in for the mirror fix). So if Canon can check it, then that means the shutter count is being recorded in a property somewhere (just need to find it). No references to it in the rom, so I think I need to get prop spy working and just start probing for changing properties.
#281
Quote from: a1ex on July 03, 2012, 02:58:35 PM

ff8ac3e8: '[FSS] fssSW1On'
ff8b735c: '[EM] Already SW1ON'
ff8b7370: '[EM] Already SW1OFF'
ff8b7450: '[EM] emDeliverMulticastEvent : SW1ON'
ff8b7478: '[EM] emDeliverMulticastEvent : SW1OFF'
ff9f5db8: '[RapiSW]  CompRapiActive SW1'


or with memspy, though I don't know how you can run this with display off. Maybe print the results to log file?

In dryos, it's somewhere around main_ctrl_task data structures.
I have those debug messages in my log. Unfortunately those functions don't write any memory locations for me to use as a status check for half shutter press.

Maybe it would be possible to hijack whatever is calling the debug messages for emDeliverMulticastEvent, sort of like the gui task is overridden? Then I'd be able to know when SW1 and SW2 are pressed. Also, maybe I could inject synthetic SW1 and SW2 events to mimic the SW1 and SW2 properties that the 5dc does not have (like DryOS). This could make the bulb timer work.
#282
I've hit a bit of a wall again on the 5dc, it appears there is no gui event for halfshutter press, there's only an unpress event. so, anybody have a creative idea for detecting shutter half press?
#283
sounds like 1100d has the same screen (or similar, low quality one) as the 5dc, maybe some of the same things being used on the 5dc could help the 1100d.
#284
Camera-specific Development / Re: Canon 5D classic
July 01, 2012, 10:26:40 PM
Sorry I haven't had much time to work on this :|
I could release an autoexec.bin (or feel free to compile it yourself from the sources! www.bitbucket.org/hudson/magic-lantern), but not much works yet. Until I finish up fixing the properties, there won't be much to test yet.

I fixed the gui_state property a few days ago and that made the intervalometer work, so now I just need to narrow down which properties work and which don't. The thing bothering me right now is the aperture property (doesn't seem to work right), shutter speed and ISO properties are working so that can be changed from the menu.

Question: should I keep picture styles in the ML menu or hide it since it probably won't provide much more functionality? More or less convenience.

So, any suggestions for what to leave / what to remove for the 5dc would help.
#285
cool stuff! how do you make the zoom change throughout the shot smoothly?
#286
Intervalometer is working! Very stable too so far (I didn't have any issues with it last night). Unfortunately the clouds rolled in after an hour, so I only have an hours worth of footage to produce this 6 second long video.

Maybe 5DC will be included in the next major release if I can finish it in time :)


Canon 5D Classic
Sigma 24mm f/1.8
Intervalometer set to every 30 seconds.
25s exp @ f/4.0
ISO1000
Processed with VirtualDub.


(p.s. not sure what's with that thumbnail on the video)


5DC port thread:
http://www.magiclantern.fm/forum/index.php?topic=1010
#287
Camera-specific Development / Re: Canon 5D classic
June 26, 2012, 07:58:45 PM
Menu is opening / closing smoothly now:



EDIT I modified by adding the youtube tags
#288
Camera-specific Development / Re: Canon 5D classic
June 26, 2012, 02:44:16 PM
^ correct.

The first thing I want to get working is the intervalometer, the 5dc would be pretty cool for timelapse!
#289
Share Your Videos / Re: Bulb ramping demos
June 22, 2012, 02:48:24 PM
cool stuff!
#290
Camera-specific Development / Re: Canon 5D classic
June 22, 2012, 01:20:46 PM
lots of things working thanks to alex. menu now works almost perfectly (including submenus), colors are fixed, help files work, config file is saving, lots of stuff so far! now it's just a matter of getting the features to work 1 at a time.
#291
Camera-specific Development / Re: Canon 5D classic
June 21, 2012, 07:52:35 PM
Alex has merged 5dplus into the main ML repo, so it looks like the 5dc will soon be running ML :)
#292
Sometimes the stack still confuses me, so I need to look back at how it works. In all canon cameras, the stack is a Full Descending one. It grows to lower addresses in memory. I found a short word document on google which explains this pretty well. To view the document itself, just look here: www.cems.uwe.ac.uk/~cduffy/es/ARMstacks.doc









#294
General Development / Re: Compiling on a Mac
June 19, 2012, 03:02:24 PM
Quote from: scrax on June 19, 2012, 05:35:02 AM
I've already installed the arm toolchain, so I can skip Yagarto, i've used the summon-arm script because yagarto was not working the first time I tried with SnowLeopard times ago and on the site they say it's not more supported so if it failed on SL I supposed also Lion will be a problem...

All the other things for the Arm console are almost all python package, i've installed them from source, but only at the end I found that they were not required to compile ML. :P

But I want to try the arm console so I'll check what is missing and post back, and when done will add it to the script.
One thing I remember when installing the console prereqs, easygui 404s with easy_install, so you need to install it manually:
http://easygui.sourceforge.net/download/version_0.96/index.html
#295
good idea. I've added my camera/gear to my signature too.
#296
1000d is half-ported and has LV so most ML features should work on it. I got the ground work out of the way a while ago :D

https://bitbucket.org/coutts/1000d_dev
http://chdk.setepontos.com/index.php?topic=6238.msg86614#msg86614
#297
General Development / Re: Compiling on a Mac
June 19, 2012, 03:32:57 AM
Quote from: scrax on June 18, 2012, 05:42:11 PM
Hi Coutts, first thanks for your guide on the wiki, it was fondamental for me to install all the things nedded.

Here is the link to what I have now: https://dl.dropbox.com/u/123918/MagicLantern/prepare.Lion.sh
I'm using pip and brew to install most of the dependencies because macports was giving me errors when compiling some stuff.

For now It will check and install if needed homebrew and pip, then there are two install list.
The first one (default) is for all mac user and will install only PIL, numpy, mplayer, imagemagick and enfuse for converting HDR photo and video, focus stacks and 422 (silent pics) file.
The second one (selectable using the option "prepare.Lion.sh dev" or d instead of dev) will install also libusb, binutils, gmp, mpfr, libmpc, mercurial, wget, ufraw, mplayer, poppler, matplotlib, docutils, pandoc and if not found MacTex (it will try to find with spotlight an installer on the mac before downloading it)
other options are remove or r to uninstall all that pip and brew installed, and help or h to see a quick help on this options

   
what about documentations? Can you compile it from mac? I've installed all what was needed but once compiled it's wrong.
compiling is easy :) all you need to do is install Yagarto. It's a precompiled toolchain, just unzip it and add it to your path. That's all you need to compile ML, the other stuff is for installing the ARM Console.

http://www.yagarto.de/#downloadmac
#298
Camera-specific Development / Re: Canon 5D classic
June 19, 2012, 03:27:43 AM
Quote from: Solo on June 18, 2012, 06:42:46 PM
If it is possible to port the ML on the Canon 5dc, what features will it?
Many non-lv features from Magic Lantern:
- intervalometer
- zebras and false color (in play mode) [just need to find yuv vram buffers]
- more in-between ISO values (maybe more than what are available)
- trap focus
- custom focus patterns
- display shutter count
- ML debug tools (memspy, propspy, eventspy). I have already ported bmp_hexdump, it has helped me tremendously so far.
? ? ?

Basically most non-lv features from ML.
#299
General Chat / Re: Magic Lantern Swag?
June 18, 2012, 04:20:04 PM
I would rock a ML camera strap :) even if my 5dc isn't running real ML ha.
#300
Camera-specific Development / Re: Canon 5D classic
June 18, 2012, 04:16:34 PM
Quote from: Solo on June 18, 2012, 10:29:50 AM
I am from Russia. I follow yours. What you do is amazing.
thanks  :)

Today the code compiled with menu.c included from magic lantern (well, a modified menu.c, but mostly everything there). That takes care of compiler / linker problems, but the menu doesn't function yet (can't make it draw anything on screen). so, next step is to sort out the drawing problems.

In ML, things are drawn to an "idle" vram buffer (a blank space in memory reserved for ML to draw to), and then copied to the real vram. I need to re-work this because the bmp vram is 720x480 in ML, and only 360x240 in the 5dc.

Maybe will have menu working by the end of this week, hopefully  8)