CHDK Forum

Canon DSLR Development (+ other development) => DSLR Hack development => Topic started by: chuchin on 30 / December / 2010, 14:59:37

Title: 500d development
Post by: chuchin on 30 / December / 2010, 14:59:37
My ARM working environment is posted here
http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)

.fir file is posted here
https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/ml500d.7z (https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/ml500d.7z)

The .fir only dumps and sets the bootflag. The menus are not working yet.

Only works with firmware 1.1.0
Title: Re: 500d development
Post by: arm.indiana on 30 / December / 2010, 15:41:24
great work!

could you post the patch to be applied to magic lantern code source  ?
at least the stubs file ?

Indy
Title: Re: 500d development
Post by: captainjon on 14 / January / 2011, 11:18:18
yeah, great. keep going!
Title: Re: 500d development
Post by: barbar84 on 14 / January / 2011, 18:47:43
Wow. Really delighted to see there are people still working on the 500D. Best of luck, only wish I had the knowhow to help. Any update on progress would be awesome!
Title: Re: 500d development
Post by: Samsongas on 17 / January / 2011, 13:02:12
Excuse my ignorance, but... Can anyone explain me what is uploaded here? Is that a working fixed firmware?
Thanks
Title: Re: 500d development
Post by: peabody on 17 / January / 2011, 17:01:04
chuchin, the .fir file dumps a copy of the firmware to the memory card?  Would it be possible to see your source code for that file?
Title: Re: 500d development
Post by: a1ex on 17 / January / 2011, 17:12:36
Chuchin's sources are here:

http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/05bec696440ca2c0?lnk=gst&q=500d#05bec696440ca2c0 (http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/05bec696440ca2c0?lnk=gst&q=500d#05bec696440ca2c0)

http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
Title: Re: 500d development
Post by: chuchin on 17 / January / 2011, 18:23:04
I finally had a change to work on it this weekend. I'm able to draw the menu but not navigate it. I'll continue to work on it today.
Title: Re: 500d development
Post by: chuchin on 17 / January / 2011, 19:09:00
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Ffarm6.static.flickr.com%2F5207%2F5365502642_7501faefe9.jpg&hash=f6560dc02293e2a9b8517fba5b4f0893) (http://www.flickr.com/photos/8495509@N05/5365502642/)
Untitled (http://www.flickr.com/photos/8495509@N05/5365502642/#) by xuxin (http://www.flickr.com/people/8495509@N05/), on Flickr
Title: Re: 500d development
Post by: a1ex on 18 / January / 2011, 02:19:58
Good, now you have to find button codes for menu_handler. Follow the 60D thread for hints.
Title: Re: 500d development
Post by: alins on 20 / January / 2011, 00:49:01
this is very exciting, i've been waiting for something like this to happen for a while now.

chuchin: i don't have any experience with arm/digic but i'm willing to pitch in any way i can (i have a 500d of course and i have no problem installing highly experimental firmware on it). is there any way i can help or for now is more like a one man show until things gets a little bit more advanced?
Title: Re: 500d development
Post by: 021311 on 22 / January / 2011, 05:33:10
I can't believe this is actually happening...
Title: Re: 500d development
Post by: captainjon on 22 / January / 2011, 12:27:50
yeah, great work!
Title: Re: 500d development
Post by: chuchin on 22 / January / 2011, 14:05:35
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Ffarm6.static.flickr.com%2F5086%2F5376830197_5ea135e26b.jpg&hash=4164adca01070110023470b84b03f83f) (http://www.flickr.com/photos/8495509@N05/5376830197/)
Untitled (http://www.flickr.com/photos/8495509@N05/5376830197/#) by xuxin (http://www.flickr.com/people/8495509@N05/), on Flickr

Some progress, I only have weekend to work on this, will continue working on it this weekend.
Title: Re: 500d development
Post by: a1ex on 22 / January / 2011, 14:59:09
Very nice, menu works!

What else works and what not?
Title: Re: 500d development
Post by: TinFoil on 25 / January / 2011, 01:38:35
I registered to be a cheerleader for this project! YOU GO CHUCHIN & A1EX!!!!

If you guys could make external mic input and manual controls (aperture, etc.) work for video recording. I will hand type, not paste 50 times you two rock!

This looks like the best work so far. People have tried off and on many times and gave up.. Remember: "If you build it, they will come".

*Super EXCITED!!!!*

TinFoil
Title: Re: 500d development
Post by: Samsongas on 26 / January / 2011, 17:13:28
Cheerleader? Just puked rainbows.
Title: Re: 500d development
Post by: robbz23 on 27 / January / 2011, 07:21:59
I registered to be a cheerleader for this project! YOU GO CHUCHIN & A1EX!!!!

If you guys could make external mic input and manual controls (aperture, etc.) work for video recording. I will hand type, not paste 50 times you two rock!

This looks like the best work so far. People have tried off and on many times and gave up.. Remember: "If you build it, they will come".

*Super EXCITED!!!!*

TinFoil

Obviously a firmware hack can't enable a hardware feature like external mic input.  I just added an external mic input.  I plan on making and instructables for it but for now I followed this youtube video.

http://www.youtube.com/watch?v=WKNREMo924E# (http://www.youtube.com/watch?v=WKNREMo924E#)

Title: Re: 500d development
Post by: chuchin on 28 / January / 2011, 18:45:39
Nice mod robbz23, are the holes to small to replace the wire with some 14 gauge wire and maybe put in a xlr socket with a small enclosure? I want to put in a Arduino board but I don't know where to solder it. I like this controller http://www.hdrlabs.com/occ/index.html (http://www.hdrlabs.com/occ/index.html) maybe it can be use as focus puller.
Title: Re: 500d development
Post by: lili_blue on 28 / January / 2011, 23:50:56
I love my 500d. Hope this project will help!
Title: Re: 500d development
Post by: pat_loonytoon on 31 / January / 2011, 04:08:24
Just followed the steps for the mic input hack and it worked well...didn't realize the audio is mono though. ;)
Title: Re: 500d development
Post by: barbar84 on 31 / January / 2011, 17:26:39
thats pretty cool. Think I'll just get the H4n for the stereo recording. Seen it goin pretty cheap now as well. Hey chuchin, any news on the hack. We're all following with baited breath. Had really given up hope of this hack happening so I've been glued to this forum daily for any updates.
Title: Re: 500d development
Post by: chuchin on 01 / February / 2011, 16:15:43
barbar84, all my bin lately have been crashing my camera. I have also been waiting for some form of hack for the 500d. Nobody seem to want to make one so I decided to try to port magic lantern myself. I have no programming skills. I don't know c, perl, gcc, python. I google everything and find out how to do it. Don't let this discourage you I'm porting the hack not writing it. Thank you arm Indy for the file you send me it's really helping me out and also A1ex for all the great hacks which is the reason I what magic lantern in my 500d.
Title: Re: 500d development
Post by: alins on 01 / February / 2011, 17:04:41
is there any chance you can submit whatever changes you have done into magic lantern 500d branch?.

it seems to me that you have managed to actually make some progress (for which you have my deep appreciation) and who knows, maybe somebody out there can help move the whole thing forward in the sense that maybe we can figure out why the latest bin is crashing the camera.
Title: Re: 500d development
Post by: aznguy on 01 / February / 2011, 19:58:10
what features are exactly implemented in this build of magic lantern for the T1i? Does it has the same features as the 5D Mark II build? (such as control over aperture, ISO, Shutter speed)

And thank you soo much chuchin for your efforts and taking the initiative. 
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2011, 03:50:22
I've been using the t1i 1.1.0-ml-0.1.9 that Chuchin put up and haven't had any problems, battery drains if you don't remove after shutdown though...a little sad such a small group of us are working on something that many I'm sure will benefit from.
Title: Re: 500d development
Post by: alins on 02 / February / 2011, 10:35:53
you mean it DOES work?. you can navigate the menus and actually use ML?

damn,  i have to try it myself
Title: Re: 500d development
Post by: alins on 02 / February / 2011, 10:47:52
apologies, i seem to be slow today: where can one find "t1i 1.1.0-ml-0.1.9 that Chuchin put up"?
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2011, 12:34:44
Well it does what he said it would- Set boot flag, have some visual display of f-stops, aperture, Iso on the bottom. Also audio meter in video mode (not working yet but visible)  Hope I didn't excite you too much  :-[

Also, He posted at the beginning of the thread the link to the fir.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2011, 13:09:39
is there any chance you can submit whatever changes you have done into magic lantern 500d branch?.

it seems to me that you have managed to actually make some progress (for which you have my deep appreciation) and who knows, maybe somebody out there can help move the whole thing forward in the sense that maybe we can figure out why the latest bin is crashing the camera.

Yeah I agree with alins in that chuchin if you keep your latest progress online somewhere then we can work on some features as well. It would help to delegate out some work so you aren't carrying the brunt of the T1i community ;)
Title: Re: 500d development
Post by: chuchin on 02 / February / 2011, 15:35:38
I have about 20 builds in my laptop. With this build you can navigate the menus. https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/20110125_500d.7z it only has to be compile. The other builds are crashing my camera mostly because I'm writing my own code. I'm learning alot with every mistake.
Title: Re: 500d development
Post by: alins on 02 / February / 2011, 17:12:27
thank you very much chuchin.

I have started creating a dev environment on my laptop because i definitely want to play with your build. in my opinion being able to boot and navigate the menu's is the first step in finally getting more out of 500d.

in my humble opinion i still believe we should get all these code in some sort of version control, either be ML official 500d branch or some other place (not my call but if there's a choice i vote for ML 500d branch). The more eyeballs on the code the faster we can get more people involved and hopefully have a firmware release
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2011, 22:20:57
Is there any good guides for getting it to compile? I am using cygwin with the yagarto-bu-2.19.1_gcc-4.4.2 as well as Slurp but am not having success in getting everything to compile right. Guess I'll have to wait for someone to upload a compiled build.
Title: Re: 500d development
Post by: alins on 03 / February / 2011, 00:31:31
i got the code to compile (make fews minor changes to the Makefile, some of the options didn't match my ubuntu env) with one error at the end

../dumper/enc_upd550.py not found; will not build magiclantern.fir.
Leaving magiclantern.fir unchanged.

where can i find this file ?.Or i don't need it?.
for now i'm going to use magiclantern.fir from ML 500d branch, see if i can get the menu's working
Title: Re: 500d development
Post by: alins on 03 / February / 2011, 00:53:25
hey the menu works !!!!..chuchin you are my new hero
 

i see 6 menu's: Audio  Video  Brack  Focus  Debug  Boot. The Audio, Video and Brack are empty. Focus shows a couple of options that i can navigate. same for debug and boot (options in the menu's that i can navigate).

Title: Re: 500d development
Post by: alins on 03 / February / 2011, 01:03:24
pat_loonytoon: i attached here the autoexec.bin that i compiled and used in case you want to play with it. as i said, you can see and navigate the menu's but the majority of them don't work yet.
Title: Re: 500d development
Post by: pat_loonytoon on 03 / February / 2011, 02:58:58
Excellent thanks for the quick response. Looking forward to getting things underway.
Title: Re: 500d development
Post by: pat_loonytoon on 03 / February / 2011, 03:52:10
Not able to figure out how to bring up the menu, picture style button in live view just moves the white focus box around, is it mapped to a different button?
Title: Re: 500d development
Post by: DjGRuff on 03 / February / 2011, 06:42:59
Hello everyone!

I have to thank chuchin for his work, finally my dream come true.

The process to install this firmware hack is the same like ML for 550D?

Thank You in advance for the answers. :)
Title: Re: 500d development
Post by: alins on 03 / February / 2011, 10:45:52
yes, the process to install this is exactly like for 550d.

pat_loonytoon: i haven't tried the menu in live view.
Title: Re: 500d development
Post by: pat_loonytoon on 03 / February / 2011, 13:47:01
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.
Title: Re: 500d development
Post by: alins on 03 / February / 2011, 13:56:31
have you first enable the boot flag by using magiclantern.fir?

here's what i did: i followed the 550d installation instructions: http://magiclantern.wikia.com/wiki/550d_install (http://magiclantern.wikia.com/wiki/550d_install)
skip step 0 of course and get the magiclantern.fir from ML 500d branch: https://bitbucket.org/hudson/magic-lantern/src/3a5262bee8c9 (https://bitbucket.org/hudson/magic-lantern/src/3a5262bee8c9)

than run trough all the steps. at the end i just pressed the recycle button and the menu showed up.
Title: Re: 500d development
Post by: Kaikallon on 03 / February / 2011, 14:26:43
Will there be autofocus when recording when using Magic lantern?
If there would be I would get it right away
Title: Re: 500d development
Post by: pat_loonytoon on 03 / February / 2011, 19:26:04
Thanks again Alins, got it working. The focus bracketing seems to be working without much problem. Is there a way to increase the DOF range that it uses? Nice work on everything Alins and Chuchin!
Title: Re: 500d development
Post by: alins on 04 / February / 2011, 01:54:56
i sent a message on ML dev list on this thread (http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/f04942a9f5996039?lnk=gst&q=500d#f04942a9f5996039 (http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/f04942a9f5996039?lnk=gst&q=500d#f04942a9f5996039)) with details on my latest changes. the autoexec.bin is attached here.

i don't see my post on ml dev list (which of course means that when i do see my post i'm going to see two of them), so here's a very brief summary: audio, video and brack menu's are working now. i ported the shoot menu from 60d branch and now you have access to intervalometer. i have no idea if the features are actually working or not. i'm really curious what works and what doesn't
Title: Re: 500d development
Post by: captainjon on 04 / February / 2011, 05:32:55
any news on a SVN branch? I would like to take a look at the code and see if my programming ability is up to it. Do you recommend a linux dev environment or CYgwin?

a question - if this is a port, why is the need to write new code?

thanks for your work!
Title: Re: 500d development
Post by: alins on 04 / February / 2011, 10:32:43
SVN branch?. sorry, i don't think i follow. ML uses mercurial as far as i know

i personally use ubuntu inside virtualbox (windows 7 is my host os), but my understanding is that you can very well use cygwin.

by "port" i meant code that was NOT part of the original 500d tree, so i copied it from 60d branch and change it to compile/work. i hope this makes sense
Title: Re: 500d development
Post by: TopLoader on 04 / February / 2011, 15:03:39
Hi! Please tell me whether it is possible that in the near future appear CHDK for Canon EOS 500D? Thank you in advance and sorry for bad english :)
Title: Re: 500d development
Post by: alins on 04 / February / 2011, 16:51:00
TopLoader: i will definitely like to try and find out as soon as i get some free time
Title: Re: 500d development
Post by: pat_loonytoon on 04 / February / 2011, 17:38:20
TopLoader: i will definitely like to try and find out as soon as i get some free time

Alins you are crazy active on pretty much everything. I didn't even think "free time" was in your vocabulary. :)
Title: Re: 500d development
Post by: aznguy on 04 / February / 2011, 17:48:51
t1i owners UNITE!
Title: Re: 500d development
Post by: AJ_NEWMAN on 04 / February / 2011, 19:09:51
robbz23 - great video putting that mike in the camera!

AJ
Title: Re: 500d development
Post by: TopLoader on 05 / February / 2011, 03:31:38
alins: I hope you succeed. Good luck :)
Title: Re: 500d development
Post by: chuchin on 05 / February / 2011, 13:30:27
I updated the gui.c file with A1ex's code now you can delete pictures in play mode. https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/gui.c
Title: Re: 500d development
Post by: robbz23 on 07 / February / 2011, 05:23:32
robbz23 - great video putting that mike in the camera!

AJ

Thanks.  I don't want to thread jack but I did this hack myself and made it look much better by epoxying the jack to the backside of that panel.  I plan on doing an instructable this week and will post the link.
Title: Re: 500d development
Post by: robbz23 on 07 / February / 2011, 05:39:14
Nice mod robbz23, are the holes to small to replace the wire with some 14 gauge wire and maybe put in a xlr socket with a small enclosure? I want to put in a Arduino board but I don't know where to solder it. I like this controller http://www.hdrlabs.com/occ/index.html (http://www.hdrlabs.com/occ/index.html) maybe it can be use as focus puller.
I actually don't exactly know what you are asking about.  Basically for my version of the mic hack i cut the mic wires, extended them a bit with about 22 guage wire, and added a switched 3.5mm stereo female trs socket.  there is about 7mm x 7 mm x 9 mm in there to play with.
Title: Re: 500d development
Post by: zanak on 07 / February / 2011, 07:11:16
with this upgrade i can control exposure, iso and shutter? sorry about my poor english :-)
and congrats for doing this upgrade :-)
Title: Re: 500d development
Post by: oile on 07 / February / 2011, 13:35:58
Hi,
I am very glad to finally see some kind of attention for the 500D :)

Could you clarify to me if this mod could bring us a 24fps 1080p ??
Thanks
Title: Re: 500d development
Post by: pat_loonytoon on 07 / February / 2011, 18:51:21
Hey guys, just uploaded a video to youtube testing the audio features. Hope to see some of stuff from all you guys. http://www.youtube.com/watch?v=900H9tru8hI# (http://www.youtube.com/watch?v=900H9tru8hI#)
Title: Re: 500d development
Post by: DjGRuff on 08 / February / 2011, 06:37:12
Hi,
I am very glad to finally see some kind of attention for the 500D  :)

Could you clarify to me if this mod could bring us a 24fps 1080p ??
Thanks

That's would be great, but i guess that the processor isn't powerful enough. But i hope I'm wrong. :D

@pat_loonytoon
Great work!  :)
What kind of microphone you want to buy?
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 08:44:16
http://en.wikipedia.org/wiki/DIGIC#DIGIC_4 (http://en.wikipedia.org/wiki/DIGIC#DIGIC_4)

Do some research before you type your guesses.
Title: Re: 500d development
Post by: a1ex on 08 / February / 2011, 08:53:24
Could you clarify to me if this mod could bring us a 24fps 1080p ??

Short answer: no.
Title: Re: 500d development
Post by: captainjon on 08 / February / 2011, 09:05:33
Could you clarify to me if this mod could bring us a 24fps 1080p ??

Short answer: no.

long answer? the t2i has the same cpu hasnt it?

it is a software issue, but not an easy one.
Title: Re: 500d development
Post by: a1ex on 08 / February / 2011, 10:07:27
Long answer: if you figure out how to do it...

I believe the CPU is the same and the sensor reads are slower; not sure about this.
Title: Re: 500d development
Post by: captainjon on 08 / February / 2011, 11:46:53
i mean this - https://tools.assembla.com/svn/chdk/trunk

where do i get the 500d source files?

thanks

Jon

SVN branch?. sorry, i don't think i follow. ML uses mercurial as far as i know

i personally use ubuntu inside virtualbox (windows 7 is my host os), but my understanding is that you can very well use cygwin.

by "port" i meant code that was NOT part of the original 500d tree, so i copied it from 60d branch and change it to compile/work. i hope this makes sense
 
Title: Re: 500d development
Post by: whim on 08 / February / 2011, 12:10:28
@captainjon

That's the CHDK repository - which covers ONLY Canon P&S

wim
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 13:27:20
@pat_loonytoon
Great work!  :)
What kind of microphone you want to buy?

Hey DjGRuff, Eventually I would like to get the new Rode VideoMic Pro, however currently I'm a poor jobless lay filmmaker. Once I get a new mic though I will post a new video to test it out. Might just look at getting a cheap mic (this guy got one to work pretty well with magic lantern- youtube.com/watch?v=XpQDGZqHeAA)
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 14:58:44
pat_loonytoon: that's some amazing video, i'm really happy ML is working for you. I've been playing with my T1i and i don't get any audio in movie mode for some reasons so i couldn't tell if the audio features are working or not. I will try tonight using a different card that doesn't have ML on it to see if I have a camera problem or not.

I've been playing with the codebase some more. I know at some point i even got the histogram to show in movie mode which was pretty cool but the rest of that specific build was really unstable and the menu flickered a lot, so i'm still working on that. I know the intervalometer works fairly well and right now i'm looking into bracketing. On my t1i when i set 7 brackets the camera takes only 2 and then stops so i need to figure out what's going on there.

i will do my best to post a new build by the end of the week so people can play with it some more.

captainjon: you can find the code here: https://bitbucket.org/hudson/magic-lantern/src/3a5262bee8c9 (https://bitbucket.org/hudson/magic-lantern/src/3a5262bee8c9)
i posted my changes to the codebase (which i believe is what pat_loonytoon is using in the video) in this thread: http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/f04942a9f5996039?lnk=gst&q=500d#f04942a9f5996039 (http://groups.google.com/group/ml-devel/browse_thread/thread/81524454f9bd27ea/f04942a9f5996039?lnk=gst&q=500d#f04942a9f5996039)
Title: Re: 500d development
Post by: LaLaPico on 08 / February / 2011, 15:23:35
Great work Alins. You are a man among men.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 15:31:02
I have the same audio issue, also, my camera says "failed to allocate BVRAM mirror" Any clue of what i've done wrong?:/
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 15:33:28
thank you very much LaLaPico :)

Farbrorbengt: you aren't doing anything wrong, i have the same problem.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 15:47:23
Also, i noticed that he fixed so the delete function works in playmode, how do i get that function? :)
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 16:08:00
pat_loonytoon: that's some amazing video, i'm really happy ML is working for you. I've been playing with my T1i and i don't get any audio in movie mode for some reasons so i couldn't tell if the audio features are working or not. I will try tonight using a different card that doesn't have ML on it to see if I have a camera problem or not.

I've been playing with the codebase some more. I know at some point i even got the histogram to show in movie mode which was pretty cool but the rest of that specific build was really unstable and the menu flickered a lot, so i'm still working on that. I know the intervalometer works fairly well and right now i'm looking into bracketing. On my t1i when i set 7 brackets the camera takes only 2 and then stops so i need to figure out what's going on there.

i will do my best to post a new build by the end of the week so people can play with it some more.


Yeah the mic needs to be set to INT and also the playback mode will not play the audio but upon loading the video on my computer the sound is fine. Haha what I did is write down a list of each shot w/ each setting I will use for each, then just recorded a series of shots and stated in the videos my various settings each time, that way when I stick it in the computer I can systematically go down through my list and see which things worked and which didn't.

I will try to get more testing done today to see what stuff works well.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 16:29:38
pat_loonytoon: Well that's a way of working around the system, but i'd really like to be able to delete when i take pictures and such, do you know if it's a matter of re-compile or what?=)
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 16:42:55
I updated the gui.c file with A1ex's code now you can delete pictures in play mode. https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/gui.c

Sorry Farbrorbengt, thought this problem was already fixed. In my video I haven't used the updated gui.c yet so not sure if there are any problems after compiling with it.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 16:44:44
Well I ment, have you compiled with the gui.c file? if you have, could you send me your compiled version:)
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 17:25:24
Farbrorbengt: yes, it's just a matter of updating the gui.c with the one chuchin sent. I've played with the updated gui.c and everything works as expected (you can delete files in play mode). If you guys are stuck let me know and i will upload a new build with this fix
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 17:29:06
alins: Id love if you could upload a build with this fix in it:)
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 17:38:04
i will upload one tonight,  don't have my laptop with me at the moment.
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 17:40:35
hey pat_loonytoon, just for me to make sure i understand this: you are saying that the audio is actually captured but it doesn't play back in the camera, right?
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 17:41:48
Thanks:) One quick question, i've noticed that the mic could switch between INT and EXT, is it possible to switch INT and EXT if i make the MIC mod?
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 17:48:15
@alins That is exactly what I am saying

@Farbrorbengt In my video I mention that you need to record it as INT as it has no external mic input. The mod just uses the internal mic wires to have a external input.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 17:49:26
Ah, I see, it would be cool to still be able to have both ext and int mic but with a switch
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 17:58:10
Yeah I was thinking the same. Implimenting a small switch would not be too difficult I'd think. The only concern I would have is the space it takes up as the T1i isn't an empty camera body :D. I also am a novice at soldering and since the video I followed had no switch implemented I did not try to stray too far.

*I'm only assuming the internal mic is ok with magic lantern since my modded in jack works fine...anybody else had a problem with the stock internal mic?
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 18:00:06
Yeah, the space is the only issue I can think of. But I dont care if I have to glue it on outside the case. It's not the look that matters, it's what's inside:)

Btw, did you buy a stereo or mono connector? I thought that it recorded stereo but im really confused right now.
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 18:08:05
Yeah right with ya on that. If you mod your T1i just be warned that you need to be careful of damaging ribbon cables and also document what screws you pulled out of what holes as there are multiple sizes. Also the mic wires are really small and hard to strip and solder so if you want to still utilize the old mic at some time then leave enough wire on both sides for any future modifications.

Look at any of your recorded .mov file info and it should say
44Khz
Channels:1(Mono)

The T2i I hear does stereo recording.
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 18:10:55
Suddenly i felt no need of doing an external since the use of mono is outdated:/
Title: Re: 500d development
Post by: pat_loonytoon on 08 / February / 2011, 18:19:45
There are a ton of mics that are not stereo mics (many instrument mics, as well as wireless mics are not stereo) Just depends on what you need it for. I haven't poked around my T1i enough to figure out if it is a hardware problem or a software problem...
Title: Re: 500d development
Post by: Farbrorbengt on 08 / February / 2011, 18:22:21
I guess that you got a point there.
Title: Re: 500d development
Post by: alins on 08 / February / 2011, 21:37:02
as promised the build with gui.c changes.
Title: Re: 500d development
Post by: pat_loonytoon on 09 / February / 2011, 01:08:29
Movie logging seems to not work so well on my camera. Turning off that mode though makes everything happy again. Thanks for the upload alins
Title: Re: 500d development
Post by: chuchin on 09 / February / 2011, 16:11:10
What works and what's broken? Let's use alins build as a base and let's start activating functions.
Title: Re: 500d development
Post by: Farbrorbengt on 09 / February / 2011, 16:13:10
Am I slow or is there a way of manually controlling shutter and such with this build?
Title: Re: 500d development
Post by: robbz23 on 09 / February / 2011, 17:09:58
Just wanted to let you guys know I got my instructable done tonight for the mic hack.

http://www.instructables.com/id/Add-external-Mic-jack-for-Canon-T1i500d/ (http://www.instructables.com/id/Add-external-Mic-jack-for-Canon-T1i500d/)
Title: Re: 500d development
Post by: pat_loonytoon on 09 / February / 2011, 22:12:36
Nice instructable Robbz23. I was wanting to make one but it was an after thought so didn't ever really want to take it apart to reshow.
Title: Re: 500d development
Post by: pat_loonytoon on 10 / February / 2011, 00:57:26
@Farbrorbengt Are you referring to manual settings in video mode? I didn't see any in this build.
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 02:11:39
i'm posting a new build that is more feature rich. i migrated a couple of modules from 550d branch and now more menu's are showing up. In this build you can set ISO, aperture, shutter, white balance...all the cool stuff. cropmarks is showing up and zebras kinda works (read further)

in all the menu's you can increase the value with SET and decrease the value with DISP. I'm still working on setting a button for resetting values to default ( i tried the AV button since 500d doesn't have a Q button like 550d but the camera throws the same button event even when the button is not pressed...still working on this one. for now you don't have a button to reset to default).

My testing on this particular build is fairly minimal, so i'm not 100% sure what works and what doesn't work. I'm making this build available in the hope that people will play with it and than publicly disclose what works for them and what doesn't. We are still far away from something stable, i'm hoping more people will start hacking the code for faster progress.

DISCLAIMER:
I hope i don't need to mention that all these builds are at the best pre-alpha. i've thrown all kinds of unstable builds into my camera and so far it's still working. If your camera starts behaving strangely (doesn't start or it starts doings weird stuff) take out the battery, put it back and everything should be back to normal. When you are done playing with your camera AFTER you shut it down do the same thing: take the battery out and put it back. This way you are sure that no ML task is still running in background and uses power or worst send the CPU in a loop causing overheating.


This been said here's a list of ISSUES that i'm aware of:

 - first time you call the menu it takes few seconds until it shows. after thiat the menu comes up fairly fast. not sure what's the problem here, still working on it.
 - the menu flickers. i looked into it a little bit but i don't have a solution yet. i believe i know what the problem is but i'm not sure how to fix it. i'm gonna look more into this one, it's driving me crazy.
- when i try setting the ISO my camera goes into some kind of loop where it keeps setting the ISO. still working on fixing this one. Just a heads up in case your camera goes into the same loop (take out the battery in that case)
- zebras broken. you will see the red zebra all the time in LV (unless you are focusing)...haven't started looking into this one
- HDR: I understand how the hdr shooting code works but i haven't figure out what triggers it. if i half press the shutter button the feature gets turned off...still working on understanding the trigger part of the code.
_ intervalomenter seems to be working fine. sometimes it takes few seconds until it gets triggered, after which is working just fine.

please let me know what you think about this build and of course what is your own experience with it

alins
Title: Re: 500d development
Post by: pat_loonytoon on 10 / February / 2011, 02:50:39
Thanks Alins, I will be the first to download it :)

I haven't been uploading any builds as I am going to have to clear much of my compiling and coding software as much has started to glitch out somehow. Hopefully can get it fixed and be testing my builds soon.
Title: Re: 500d development
Post by: Farbrorbengt on 10 / February / 2011, 03:00:00
Good job:)

Lot of new working features on this one:)

*One thing about the menu, it is like the other build. Text out of screen but you know that.
*Couldn't get working is Shutter and aperture.
* Can't record anything, it just hangs;/
Title: Re: 500d development
Post by: pat_loonytoon on 10 / February / 2011, 03:40:59
Histograms: show but cover everything in screen
Audio Menu: Default setting seem to work with mic (more testing needed)
Expo Menu: All works in photo mode
Video Menu: All needs work. Only turning on and off things work
Shoot Menu: HDR seemed to work, as well as Audio remote shoot. Still need to test other functions.
Focus: Rack focus seems to work. Not sure how to use it exactly though :/
Just a general run down of my initial testing with your new build

* The recordings hanging is the same problem I had with the old Movie Logging feature being turned on...possibly that value is always on now which causes it to hang?
Title: Re: 500d development
Post by: a1ex on 10 / February / 2011, 04:29:20
Quote
first time you call the menu it takes few seconds until it shows.
These are startup delays (without them, it would not start on 32GB cards or so).

Quote
the menu flickers.
My fix for menu flicker was causing the camera to freeze, so I've left it flicker as much as it likes. The solution is to find the redraw event (maybe?) and block it from menu_handler by returning 0 instead of 1. Original Trammell's code blocked lots of events (and didn't have flicker); my code lets almost all of them to go through the camera (and you can also change shutter/aperture or start recording while ML menu is active).

Quote
when i try setting the ISO my camera goes into some kind of loop where it keeps setting the ISO.
Early 550D builds had infinite loop (it keeps trying different value until one is accepted). Recent builds have a limit (max 10 tries).

Quote
zebras broken. you will see the red zebra all the time in LV (unless you are focusing)...haven't started looking into this one
Check if VRAM buffer addresses are OK. See the 60D thread and the VRAM/550D & VRAM/60D wiki pages.

Quote
HDR: I understand how the hdr shooting code works but i haven't figure out what triggers it. if i half press the shutter button the feature gets turned off...still working on understanding the trigger part of the code.
It's triggered by intervalometer, remote shots, or after a picture is taken. In the last case, first exposure will be 0EV, then -3,-2,-1,1,2,3 (for example), and will also trigger a 2-second self timer to avoid shake. In other cases, 0 exposure is in the middle.

Quote
intervalomenter seems to be working fine. sometimes it takes few seconds until it gets triggered, after which is working just fine.
Very latest 550D build makes a half-shutter press every second to avoid camera going to deep sleep (when it would not wake up from msleep's).
Title: Re: 500d development
Post by: aznguy on 10 / February / 2011, 04:55:49
Good job:)

Lot of new working features on this one:)

*One thing about the menu, it is like the other build. Text out of screen but you know that.
*Couldn't get working is Shutter and aperture.
* Can't record anything, it just hangs;/

yea same problem here, it starts recording but hangs up, also ive notice that the base of the camera near the lens gets pretty warm, im not sure it its because of ML but i dont think ive noticed it that warm before using the canon firmware.

Thanks Alot for the build alins! you rock!

Ohh and is it okay to leave the bootflag set on the canon? Theres no problem with leaving this right? Changes are just in the autoexec.bins?
Title: Re: 500d development
Post by: aznguy on 10 / February / 2011, 05:29:24
I have edited the 500D section (http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)) on the magic lantern wiki, hopefully this will help spread the word, ill keep editing it as more builds show up, shall I assign build numbers and such to keep it distinguishable?
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 10:52:17
Hey Alex, really appreciate your post, it help a lot.

yap, i'm officially a moron: i just tried the HDR feature and is working great. I don't know why i thought it cannot be triggered last night (i guess the lesson here is don't code and drink  :D ).

aznguy: yes, it is ok to leave the bootflag set and just update autoexec.bin. On word of caution here: i have not try it myself but from what I've read if you delete autoexec.bin from the bootable card the camera will not start since it cannot find anything to boot. In that case either restore autoexec.bin and try a normal non-bootable card.

pat_loonytoon: you have a point there. the movie menu is hidden in this build, i thought it will confuse people. i will enable it on my camera and see if disabling the movie logging will fix recording. If that's the case i will post a new build
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 10:59:44
pat_loonytoon: you are the man. i changed the code to disable movie logging and now recording starts working. new build attached
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 11:15:15
aznguy: apologies, i missed your post about the wiki page. I really appreciate what you have done there, and yes feel free to assign build numbers. i personally believe is a great idea.
Title: Re: 500d development
Post by: LaLaPico on 10 / February / 2011, 11:18:01
I really want to try this on my camera now. I'll do that when I get home tonight.. I've never loaded ML before, so that'll be an adventure in itself. Right now the shutter speed / aperture control in movie mode isn't functioning?
Title: Re: 500d development
Post by: pat_loonytoon on 10 / February / 2011, 13:13:18
pat_loonytoon: you are the man. i changed the code to disable movie logging and now recording starts working. new build attached
Alins: Anything for my T1i brothers :)
Title: Re: 500d development
Post by: RoaldFre on 10 / February / 2011, 14:29:40
I just registered here to show my love for you guys! I have a 500D and I'm going to try this out right now!

I also request to get the code in a version control system (the ML repository?) ASAP. I have a decent knowledge of Linux, C and assembly and am willing to contribute as much as I can! Let's get this codebase centralised and hack this puppy!
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 14:41:43
i cloned the 500d branch here: https://bitbucket.org/alins/magic-lantern-for-500d (https://bitbucket.org/alins/magic-lantern-for-500d)
it doesn't have my changes yet, i will get them in tonight.

RoaldFre: welcome to the party. there's a lot of stuff that needs fixing and my knowledge of assembly and low level stuff in general is fairly spotty. if you are willing we need some help figuring out the vram addresses so we can get zebras working.

here's some starting points until i get the sources in bitbucket

http://groups.google.com/group/ml-devel/browse_thread/thread/b46822bf5b90dffa/c773808c4fedbd0a?lnk=gst&q=60d+vram#c773808c4fedbd0a (http://groups.google.com/group/ml-devel/browse_thread/thread/b46822bf5b90dffa/c773808c4fedbd0a?lnk=gst&q=60d+vram#c773808c4fedbd0a)

http://magiclantern.wikia.com/wiki/VRAM/550D (http://magiclantern.wikia.com/wiki/VRAM/550D)


Title: Re: 500d development
Post by: RoaldFre on 10 / February / 2011, 14:50:41
Thanks! I'm going to try getting the latest builds to work first to get some feel of things. I'll look through the code tomorrow and see what I can do.

Note that I have no experience with Magic Lantern, so it'll take some time to get me worked in :-).
Title: Re: 500d development
Post by: aznguy on 10 / February / 2011, 15:56:59
http://magiclantern.wikia.com/wiki/500D#Installation (http://magiclantern.wikia.com/wiki/500D#Installation)
500D ML Builds are now nicely organized with notes about what each build includes
Title: Re: 500d development
Post by: a1ex on 10 / February / 2011, 16:17:02
I've found a little magic code:

call("lvae_setmoviemanualcontrol",1);

But it didn't work on the 550D.

When changing movie exposure from auto to manual from Canon menu (550D), there are a lot of properties changing (but if we find the right one, it may be possible to force manual exposure in movie mode).
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 17:15:29
aznguy: amazing job, i love the wiki page.
Title: Re: 500d development
Post by: chuchin on 10 / February / 2011, 17:53:07
A1ex the 500d has that same function but is called EP_setmoviemanualExposureMode the address is ff203c04 I think I put the wrong address in the stubs, it has a function of 0= off and 1= on.
Title: Re: 500d development
Post by: alins on 10 / February / 2011, 21:37:29
all my changes are in bitbucket now.
Title: Re: 500d development
Post by: aznguy on 10 / February / 2011, 23:54:30
I did some testing using a IR Thermometer, normal temp of the base/logo the temp read about 75F, i tried leaving the movie mode on using the canon firmware and it raised maybe to 77, 78 but it took a long time to get that hot. However, once ML was loaded up, it jumped to about 84-85 within maybe 10-20 secs. This is a problem that should definitely be looked at
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 06:45:05
EP_setmoviemanualExposureMode
This is registered as an eventproc named lvae_setmoviemanualcontrol, that's why I've called it with "call". Your address is correct in Indy's 500D dump, not sure if it's the same firmware version as you currently use.

Quote
it jumped to about 84-85 within maybe 10-20 secs.
Maybe there's a task which is not msleep'ing enough.
Title: Re: 500d development
Post by: RoaldFre on 11 / February / 2011, 06:54:09
I just had a quick look at the code. Is anyone working on an (annotated) disassembled ROM dump, or is that already available somewhere?

I'd really like to dive in and try and mess with the recording framerates -- even though I know it isn't something that can be easily changed via a simple call to the ROM "library" ... I assume there should be a piece of code *somewhere* that sets up the communication with the sensor and that sets the refreshrate etc. How much of this as already been tried before?
Title: Re: 500d development
Post by: barbar84 on 11 / February / 2011, 09:32:13
does it matter which 500d firmware you have installed?  1.0.9 or 1.1.0
Title: Re: 500d development
Post by: RoaldFre on 11 / February / 2011, 10:00:20
Yes, it should matter, as all the addresses in the original Canon code will have changed. The builds in this thread work on the 1.1.0 firmware only, they won't work on 1.0.9 and will probably crash your camera. (Well, I haven't tested it, but that's what I assume what will happen)
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 10:30:30
Hey Alex,

i tried to figure out the vram address but i'm not getting any image out. I'm using this: http://magiclantern.wikia.com/wiki/VRAM/550D (http://magiclantern.wikia.com/wiki/VRAM/550D) as a starting point.

so used the exact same code from that page to dump the vram, than use img.py to poke around and i always get (more or less) something like the image attached here. I looked into 550d branch and i see the wiki code in zebra.c with the menu that triggers it commented out. i put the menu entry on my fork and trigger it.

now i dumped the vram memory in live view, in movie mode without recording, in movie mode while recording. I even tried different memory segments...

any clue what am i doing wrong?
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 10:56:32
another question if you don't mind alex: the code that sets the ISO value. i see that the code is trying to set to set different values (up to 10 tries) than check if the values stuck. if the value has not been set revert and move to next value.

I'm really really curious why are we doing this. if a value is invalid in a certain situation is it gonna be valid in a different situation?. In other words, if the camera rejects one ISO value is it because it's invalid or is it because at the moment the value cannot be used (either because the camera is busy and we need to wait until is ready to accept the value, or it depends on what mode your in or some other reason)

i hope my question make sense.
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 11:06:35
RoaldFre: your question is a little bit over my head. i personally suggest asking the question on ML dev list, i'm pretty sure somebody there has the answer for you.

assuming i understood your question:
i'm sure you already checked this, but just in case: poke around ML wikia. you will find articles there about what people are using to disassemble the firmware. Also check CHDK wikia for firmware tools. if you are familiar with assembler code, people have been using IDA Pro with great results to make sense of the firmware. You will also find scripts to run _inside_ IDA pro that they're suppose to make your life easier. I know at some point i found (i don't have it ready now) an article i believe on CHDK wikia that was a step by step guide of how to use IDA Pro on your firmware dump
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 11:15:30
I'm really really curious why are we doing this. if a value is invalid in a certain situation is it gonna be valid in a different situation?.
Yes, depending on your settings (HTP, movie, iso expansion, whatever), certain ISO values may or may not be valid. When it's not valid, Canon code will refuse to accept the setting. This way, I don't have to re-code Canon's logic for allowed ISO's.

For the VRAM, you either have incorrect pitch (see guesspitch or try manually some numbers from AJ's ASM Zedbra page). You may also be looking at an area which contains other data (not image).

I guess the 500D VRAM is similar to 5D2 one (it has 4:3 screen, right?)
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 11:21:02
If you don't have IDA Pro, there are GPL tools available. I'm using this one: http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console (http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console)

(I've let it running for two days to generate a nice HTML view of the code, which has around 1 GB; it decompiles half of it and solves call arguments for lots of functions; but you need to match the names from the 550D and 5D2 IDCs, which are somewhere in the ML dev list).

Here's a preview (I've disassembled ML itself): http://a1ex.bitbucket.org/disasm/index.htm (http://a1ex.bitbucket.org/disasm/index.htm)
Title: Re: 500d development
Post by: gravityrem on 11 / February / 2011, 11:56:09
Hey you guys !

Im not able to help you with the code, but i really wanted to tell you guys how i'm impressed !
you rock !
hope a stable build will come up soon !!
Title: Re: 500d development
Post by: RoaldFre on 11 / February / 2011, 12:17:49
Alex: sweet, I was almost afraid I had to find a Windows box. I'll give those tools a try!

I'm having some troubles getting my ARM toolchain up, tough. I'm using Gentoo and it has a tool called crossdev to automatically compile various cross development toolchains. I've chosen an arm-unknown-linux-gnu target (format: arch-vedor-os-libc -- I can't seem to get arm-unknown-elf-gnu to work) and everything seems to get built correctly. I'm using gcc version 4.5.2.

However, trying it on the code from Alin's repository gives some linking errors (within the C lib, for that matter!). I'm not really sure what's going on there, bad toolchain install, incompatible gcc version? The errors: http://pastebin.com/5SyWsvXt (http://pastebin.com/5SyWsvXt)

Note: I had to modify the Makefile a bit. For one, I removed the 500d-empty.fir dependency as that file wasn't in the repository and there doesn't seem to be a build target for it(?). I also changed the paths to work with the default directories where crossdev installs its binaries. You can see my changes here: http://pastebin.com/WTE3tfwJ (http://pastebin.com/WTE3tfwJ)

[edit] Forgot to mention, I also needed to put the line
#define offsetof(type, member)  __builtin_offsetof (type, member)
in 5d-hack.c. I have a feeling my environment isn't quite the way it should be >_<.
Title: Re: 500d development
Post by: Farbrorbengt on 11 / February / 2011, 12:32:15
Any news on the flickering?
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 13:26:40
Alex: sweet, I was almost afraid I had to find a Windows box.

For compiling, see http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D) and don't try other build environments (I've tried a lot).

IDA Demo also works under Wine (and IDAPython too). The Pro version should work too. My tools don't replace IDA, but rather complement it (I can't really read assembler, except for trivial blocks, but the decompiled output is much easier to handle).
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 14:04:18
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 14:08:26
RoaldFre: my dev environment is on ubuntu (whatever latest stable release is, i never remember those stupid names) and i set it up using exactly what Alex posted, the 550 build instruction. use "summon-arm-toolchain" and it should do everything for you. I remember that i had to modify the script a little bit tough, will try to dig that up tonight and post it here just in case.
Title: Re: 500d development
Post by: RoaldFre on 11 / February / 2011, 14:13:35
Can you do two (or more) succesive raw dumps of a large piece of memory? If so: look for a large block of data that changes.
A quick and dirty way to do so: I assume you could just "hexdump -C" the binary dump and do a diff on that. If you see a large block that changes: that'll give you the approximate vram address.

Ok, I'll have a look at that summon-arm-toolchain, thx :)
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 14:14:13
Any news on the flickering?

I believe Alex replied in a previous post that he looked at this problem for 550d and his fix is crashing the camera, so i just put this problem at the bottom of the priority list. I will like to fix the flickering,  kinda drives me nuts a little bit, but i got used or at least i pretend is not there. I'm focusing right now on figuring out the vram so we can get zebras working, a major milestone in my opinion.
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 14:28:01
Can you do two (or more) succesive raw dumps of a large piece of memory? If so: look for a large block of data that changes.

my understanding of the whole memory dumping mechanics  is a little bit spotty, so my apologies in advance if i say something totally stupid (of course please point it out):

there's code in zebra.c that does this, takes two dumps of memory and write them on the card. it just needs to be activated. The code start taking the dumps beginning from  a certain address (i believe is 0x1000000??) and it also takes as parameter a segment number.

i got mad last night and i change the code to start dumping from 0x0 (ya' i know!) and the camera crashed with error 70 or something like this. a very interesting error message where the camera tells you something is screwed up, displays total shutter releases and a bunch of other thing and then reboots.

i kinda wonder if it would help in any way to dump the _whole_ memory on the card, just get the whole damn thing twice than start poking. 
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 14:36:44
See the tutorial here:
http://magiclantern.wikia.com/wiki/VRAM/550D (http://magiclantern.wikia.com/wiki/VRAM/550D)

There's a graph with some vertical bars: those tell you where to look. What you see is a plot of the difference between two successive dumps (where the image data changed a bit due to noise or camera movement).

I had trouble reading from 0xCxxxxxxx segment (camera freezes). 60D bypassed it without creating the file (strange).

Hint: 1xxxxxxx and 4xxxxxxx contain the same data (on 550D) but with different caching bits. Other segments are mirrored in this way too.

The parameter for that dump routine is the first digit of the address (0 to F). Each segment has 256M.
Title: Re: 500d development
Post by: Farbrorbengt on 11 / February / 2011, 14:45:49
Any news on the flickering?

I believe Alex replied in a previous post that he looked at this problem for 550d and his fix is crashing the camera, so i just put this problem at the bottom of the priority list. I will like to fix the flickering,  kinda drives me nuts a little bit, but i got used or at least i pretend is not there. I'm focusing right now on figuring out the vram so we can get zebras working, a major milestone in my opinion.

Yes i know, i'm not worried if it needs to be that way for a long time. Don't get me wrong, i appreciate all the hard work you guys are doing :)
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 14:56:13
i followed those instructions alex, and yes sometimes i got the vertical bars. Sometimes the graph plotted was 3/4 solid filled...not sure why. I wasn't very methodical about what i was doing, just trying different things and see what works what doesn't. I will have to repeat the process in keep tracks of what i'm doing.

and yes, i always got two files of 256M.

i'm obviously doing something wrong here because no matter what i tried i still end up with some variant of that grey noise image.

question: i just need to be in live view (in any mode) before starting the dump right?. do i need to be in movies mode and/or start movie recording before the dump?.
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 14:57:19
Just in LiveView.
Title: Re: 500d development
Post by: alins on 11 / February / 2011, 15:01:57
quick question (apologies, forgot to ask before):

in this step: s = readseg("./0.BIN", x, 1000000)

1000000 is this the value of the start segment or just const 1000000 ?.
Title: Re: 500d development
Post by: a1ex on 11 / February / 2011, 15:53:26
X is the start address (inside that segment), and 1000000 is how many bytes to read.
Title: Re: 500d development
Post by: Coutts on 12 / February / 2011, 14:06:09
so how far exactly are things along right now? is everyone uploading the same files or are there different builds being uploaded in different spots?

i'm a little lost trying to follow this now, just wondering how things are coming along. keep up the great work guys!
Title: Re: 500d development
Post by: alins on 12 / February / 2011, 14:25:17
so how far exactly are things along right now?

This page has a very good summary of what's working so far: http://magiclantern.wikia.com/wiki/500D#Installation (http://magiclantern.wikia.com/wiki/500D#Installation)
Title: Re: 500d development
Post by: RoaldFre on 12 / February / 2011, 15:25:14
Note: I've nearly found the VRAM address. Zebra's are coming!

[Edit] The working commands are:
s = readseg("4.bin", 0x06000080, 1856*616)
imgseq(s,1856)

With 4.bin being the dump out of segment 4. This gives you a 928x616 image (the file 000-odd.png as dumped by the script).
So, the vram address seems to be the same as for the 550D (0x46000080) but with a pitch of 1856 for the smaller screen.

[Edit2] This was dumped from live-view.
Title: Re: 500d development
Post by: alins on 12 / February / 2011, 15:56:49
now, that's some awesome news...amazing work RoaldFre
Title: Re: 500d development
Post by: RoaldFre on 12 / February / 2011, 15:59:49
Hmm, it seems that it's a smaller version, not an actual dump of the screen: 928*616 only gives 572k pixels, while the 500D should have a 920k pixel screen as mentioned  earlier. [disregard, divide by 3, stupid marketing]

Should I look for other addresses to try and find a full res copy? Or is this sufficient? (I haven't studied the zebra.c code yet.)

[edit] More locations in segment 4:
There is a copy of the image I found at 0x46000080 at 0x44000080, so:

There are two 928*616 images at 0x44000080 and 0x46000080, pitch is 1856 (odd.png: http://i.imgur.com/80MvW.png (http://i.imgur.com/80MvW.png))

There is a 720*624 image at 0x4FCB6C00, pitch is 1440 (odd.png: http://i.imgur.com/9nwVq.png (http://i.imgur.com/9nwVq.png))

There are two 630*624 images at 0x4FD97C00 and 0x4FE1B000. The images seem composed of two pieces squashed side by side, see http://i.imgur.com/Bb0Ms.png (http://i.imgur.com/Bb0Ms.png) <- this is the output full.png from the imp.py. Pitch is 630 (so one bye per pixel)
There is another 630*624 image at 0x43F51000, same posterizing and pieces side-by-side as above, pitch is 630.

There is a 320*240 image at 0x43FD6420, pitch is 320, but it has opposite endian-ness as the rest, as can be seen from full.png: http://i.imgur.com/icg9x.png (http://i.imgur.com/icg9x.png)

That's all I could find in the 0x4xxxxxxx segment.

NOTE the camera moved between subsequent images, so you cannot use these to compare possible cropping!
Title: Re: 500d development
Post by: a1ex on 12 / February / 2011, 16:09:06
That's the buffer for focus peaking, which is larger than the LV screen.

The 550D has a 720x480 LV screen. I think the 500D has the same resolution, but the aspect ratio is stretched (at least that happens on 5D2).

You may find the smaller 720x480 buffer (for which you don't have to do any scaling) in the log file (look for "setImageVramParameter" or something like that). There are 3 of them (but you only need one; if you have them all, you will just get more fps).

./force-lv.LOGp:2880: 9821: 8627.652 [DISP] SetImageVramParameter pAddress=40d07800 pFlipCBR=0
./force-lv.LOGp:2895: 9840: 8666.812 [DISP] SetImageVramParameter pAddress=4c233800 pFlipCBR=0
./force-lv.LOGp:2908: 9853: 8707.732 [DISP] SetImageVramParameter pAddress=4f11d800 pFlipCBR=0

Those millions of pixels you mentioned are sub-pixels, so divide that number by 3 ;)
Title: Re: 500d development
Post by: Squibberling on 13 / February / 2011, 00:10:20
I just DL'ed the 500D alpha ML firmware today and use the intervalometer. I set it to shoot every 1 second. It works, but stopped at 25 shots both times that I tried. It seems that the ML firmware randomly turns itself off. Any thoughts about this? I followed all the directions on installing this firmware to the letter.
Title: Re: 500d development
Post by: alins on 13 / February / 2011, 00:46:32
If you got to use the intervalometer i'm pretty sure you got the install right on, so i'm assuming that we have a bug in the code.

i opened an issue in bitbucket just so i don't forget to work on it: https://bitbucket.org/alins/magic-lantern-for-500d/issues?status=new&status=open

if you find anything else feel free to open a bug here: https://bitbucket.org/alins/magic-lantern-for-500d/
Title: Re: 500d development
Post by: alins on 13 / February / 2011, 01:40:15
There is a 720*624 image at 0x4FCB6C00, pitch is 1440 (using only odds, so YUV?)

awesome work RoaldFre, i'm very confident you will nail zebras down in short time.

couldn't help myself, i quickly made builds testing all the values (i know, not very scientific..but hey whatever works). and the above value seems to be very very close. I pointed the camera at a can light (one of those 4'' recessed lights) and a got a nice red circle for the bulb and blue around the can...nice!

i'm saying very close because i'm seeing a solid blue line ~ 1/3 from the bottom and some rarefied blue zebra under this line, where i would say there shouldn't be any. now it's night here and i'm eyeballing the light around me without using any scientific method to measure it, so the zebra may be right (and the solid blue line could be just a bug in the code).

i personally recommend to take what i said here with a grain of salt, not a very scientific experiment..just wanted to share my findings in case it helps.

Title: Re: 500d development
Post by: a1ex on 13 / February / 2011, 03:38:40
Squibberling: my best guess is that is caused by too much static memory used by ML. Get rid of big static vectors like the one from waveform (not sure if you still have them in the code) and compile with -Os instead of -O3.

720:624: nice find, strange resolution. Is it 1:1 aspect ratio or is distorted? If it's 1:1, that may mean 500D's sensor is almost square...?!?!?!

Solid blue line can be due to code reading past the end of the buffer (where there's no more image data).

Title: Re: 500d development
Post by: a1ex on 13 / February / 2011, 03:42:48
RoaldFre: I see heavy posterizing in your square image, which makes me to think it may be a version of the image converted to bitmap overlay's palette (or something like this). The other components may be some image data at lower resolutions.

Yes, the format is YUV 422, see 422-jpg.py for how to fully decode it.
Title: Re: 500d development
Post by: a1ex on 13 / February / 2011, 03:43:41
Alins: what changeset from 550D did you use? I'd like to make a diff to see only your changes.
Title: Re: 500d development
Post by: RoaldFre on 13 / February / 2011, 06:52:48
[...]
You may find the smaller 720x480 buffer (for which you don't have to do any scaling) in the log file (look for "setImageVramParameter" or something like that). There are 3 of them (but you only need one; if you have them all, you will just get more fps).

./force-lv.LOGp:2880: 9821: 8627.652 [DISP] SetImageVramParameter pAddress=40d07800 pFlipCBR=0
./force-lv.LOGp:2895: 9840: 8666.812 [DISP] SetImageVramParameter pAddress=4c233800 pFlipCBR=0
./force-lv.LOGp:2908: 9853: 8707.732 [DISP] SetImageVramParameter pAddress=4f11d800 pFlipCBR=0

I couldn't find any reference in the logs yet. I've tried opening up live-view, movie mode, actually recording a movie, etc. What event should trigger this log dump? (Maybe Alins has more luck?)

As for the VRAM buffers: there were still some other parts that seemed to hold images, I'll hunt them down now (well, unless someone gets the values from the log, which would be more easy :P). I'll have a quick look in other segments too after that (right now I've only stuck to 0x4xxxxxx).

[edit]
Regarding the posterizing: I've noticed that too. For completeness, I've also uploaded the images from the other buffers, see my previous post (http://chdk.setepontos.com/index.php?topic=5971.msg61358#msg61358). You can clearly see the change in aspect ratio, and there is also some cropping between the two buffers.

[edit2]
I've scanned through the entire 0x4xxxxxxx range and I've found a third 630*624 image, as well as a 320*240 one.
I also had dumps for the 0x1xxxxxxx range, but that only seems to give random, constantly changing garbage.

[edit3] just scanned 0x5xxxxxxx: all constantly-changing garbage. There does seem to be some interesting bits in the 0x3xxxxxxx range, though -- examening that now.
Title: Re: 500d development
Post by: RoaldFre on 13 / February / 2011, 09:49:29
In the 0x3xxxxxxx range:

0x31B07800: 720*424, pitch=1440, odd.png: http://i.imgur.com/J6TIw.png (http://i.imgur.com/J6TIw.png)
[EDIT] I overlooked this one in segment 4, so it seems. This one can be found at 0x41B07800 as well.


I think I just stumbled across the memory ML uses to write to the screen (once again: note that I just started messing with the dumped data before looking through the ML code, so I don't know which memory sections already ML uses itself)
The way I find these memory chunks is by making two memory dumps, one after the other, and using imp.py to dump images of the difference between those dumps. This is the command I use to sweep through a segment:

x=0x3000000; y=0x1000000; p=1440; s=readseg("3.1.bin", x, y); t=readseg("3.2.bin",x,y); imgseq(array(s)-array(t),p)

always increasing x by 0x10000000. The file 3.{1,2}.bin are two dumps of segment 3. That particular command gave the image http://i.imgur.com/3Ab7w.png (http://i.imgur.com/3Ab7w.png) as odd.png. Notice that there are two (difference of) images here and that the pitch is correct at 1440 (so a horizontal resolution of 720). Also notice the "Dump segments1" bitmap right above the first image -- that's a piece from the ML menu.
A regular dump (odd.png) looks like http://i.imgur.com/3Ab7w.png (http://i.imgur.com/3Ab7w.png) (so this is not the difference of two memory regions)

The two images found there are located at:
0x33738800: 720*424, pitch=1440, odd.png: http://i.imgur.com/TLeRl.png (http://i.imgur.com/TLeRl.png)
0x33B48800: 720*424, pitch=1440, odd.png: http://i.imgur.com/EoSS4.png (http://i.imgur.com/EoSS4.png)
[EDIT] These are also at 0x43738800 and 0x43B48800, overlooked them in segment 4.

So that's three buffers of 720*424


Posterized, side-by-side buffer:
0x33F51000: 630*624, pitch=630, full.png: http://i.imgur.com/o8NcZ.png (http://i.imgur.com/o8NcZ.png)
[edit] also in segment 4

Small, wrong endianness buffer:
0x33FD6420: 320*240, pitch=240, full.png: http://i.imgur.com/arQyU.png (http://i.imgur.com/arQyU.png)
[edit] also in segment 4

Third and fourth(?) focus peaking buffer found -- maybe just a copy because of similar address?: [edit -- you guessed it, it's from segment 4]
0x34000080: 928*616, pitch=1856, odd.png: http://i.imgur.com/WROse.png (http://i.imgur.com/WROse.png)
0x36000080: 928*616, pitch=1856, odd.png: http://i.imgur.com/p9O0G.png (http://i.imgur.com/p9O0G.png)


Another 720*624, probably a copy form segment 4 as well:
0x3FCB6C00: 720*624, pitch=1440, odd: http://i.imgur.com/4JQJM.png (http://i.imgur.com/4JQJM.png)

Two more posterized side-by-side buffers, probably a copy of segment 4:
0x3FD97C00: 630*624, pitch=630, full: http://i.imgur.com/mLQZS.png (http://i.imgur.com/mLQZS.png)
0x3FE1B000: 630*624, pitch=630, full: http://i.imgur.com/SgZ0c.png (http://i.imgur.com/SgZ0c.png)

And that's all for the 0x3xxxxxxx segment, which seems to hold the exact same things as segment 4.
I'll be a bit short on time the next weeks (college has started again here), but I'll try to get the other sections done as well asap.
Title: Re: 500d development
Post by: Samsongas on 13 / February / 2011, 11:20:38
But the question is:
Will it have 1080/24fps? If not: Why not?
Haven't you seen that 500D records 1088/20?
Title: Re: 500d development
Post by: Squibberling on 13 / February / 2011, 11:21:50
First of all, great work you guys! I've been waiting for this for 2 years!
I'm pretty much code-retarded, and so am wondering if the memory leak which occurs with the intervalometer will be addressed with the next alpha update.
Title: Re: 500d development
Post by: alins on 13 / February / 2011, 15:12:37
I couldn't find any reference in the logs yet.

here's a log file that i just generated. i can see calls to SetImageVramParameter but no pAddress. Do i need to enable something ?.the way i got this is by dumping the log after recording a movie. dumping _while_ recording movie seems to cause error 70. Also from alex comment i see he's pointing to "force-lv.LOG" log file. Are you using something else to dump the LV data Alex, i mean something other than a simple "dump dmlog"

Alex: i will submit my changes to bitbucket soon, hope this helps. I ported code from 550d from different changesets, i don't remember which ones..sorry. About the intervalometer problem: for 500d i haven't found the address for AllocateMemory so i changed the code to use malloc everywhere, just so we can move forward. Could this cause the problem?
Title: Re: 500d development
Post by: a1ex on 13 / February / 2011, 16:34:49
If malloc is able to allocate the zebra buffer, probably that's the one you are looking for :)

Cameras are different, I've just showed you what happened on mine. The file name is one of my logs which happened to contain those lines. I keep them archived and search through all of them to discover new stuff.

I didn't use other tools for dumping image data.

Samsongas: if you know how to do this, you are invited to send a patch ;)
Title: Re: 500d development
Post by: Samsongas on 13 / February / 2011, 18:51:43
Samsongas: if you know how to do this, you are invited to send a patch ;)

I know I'm invited. I really apreciate what are you doing and I wish I had the time to study te codes. I feel really helpless but if you finally end there is no dubt in the fact that I'm going to donate.
Just asking if it would be possible.
Title: Re: 500d development
Post by: Frazerr on 13 / February / 2011, 23:10:49
how would I go about 'getting this on my camera, and will this enable manual functions for ISO Aperture and Shutter speed while recording video?
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 01:05:46
how would I go about 'getting this on my camera, and will this enable manual functions for ISO Aperture and Shutter speed while recording video?

this page should explain how to get ML on your camera: http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
to answer your second question: not yet
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 01:30:14
I'm releasing a new build with the most notable change: zebras. I've been playing a little bit with zebras and i like what i'm seeing. Huge kudos to RoaldFre for making this happen.
 
I want people to start playing with zebras, see what works what doesn't work. I don't want to give the wrong impression here that zebras have been nailed down, just that they start working and i would like to spread the joy :)
Other change in this build that jumps in mind is a little fix in HDR where in manual mode all the shots where pretty much identical (same shutter speed same aperture). Now the shots are taken correctly by actually changing the shutter speed.

Changing the ISO doesn't seem to send the camera in a loop anymore. One issue that i believe should be mentioned: while recording a movie i tried changing the ISO and the camera crashed with error 70. Same problem if i try to change the shutter speed. If you see this error, just take the battery out and restart.

If you find any problems please check the issues page first: https://bitbucket.org/alins/magic-lantern-for-500d/issues and if there's no issue already open feel free to create one. I will like to start using the issues page, i believe it communicates better what are the current problems and it helps the developers to prioritize what to fix.
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 01:52:09
Alex, my latest changes are in bitbucket if you want to diff them
Title: Re: 500d development
Post by: pat_loonytoon on 14 / February / 2011, 02:17:30
Thanks Alins, you can be sure I'll be testing it out :)
Title: Re: 500d development
Post by: RoaldFre on 14 / February / 2011, 07:05:07
I just tried your latest build, Alins. The zebra's seem to be working perfectly here! (at first sight)

I've added the 500D VRAM info on the wiki: http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
I will try to find out if those sections change when in (different) movie modes next (obviously the 0x4FCB6C00 section remains there, as it's what we use for zebra :-)).
Title: Re: 500d development
Post by: a1ex on 14 / February / 2011, 07:17:18
This one looks pretty interesting: http://i.imgur.com/arQyU.png (http://i.imgur.com/arQyU.png)

Could it be a method for contrast detection? (for autofocus)

I mean locally swapping the pixels would generate high contrast in focused areas and little change in out-of-focus areas.
Title: Re: 500d development
Post by: RoaldFre on 14 / February / 2011, 07:30:01
I think that's a bit too big of a hack. For instance, just reversing the endianness and looking at how big a difference you get will fail to detect contrast in horizontal edges (as you are only swapping left-to-right, so only vertical directions get scrambled).

If you also swap the pixels vertically (say, swap them in every 4x4 block both vertically and horizontally), then you'd loose the sensitivity for diagonal edges. It could work if you actually "rotate" the block fully (that would only fail on some pathological cases where your scene is invariant under such rotation of 4x4 pixel blocks)

Overall, I'm pretty sure there are better alternatives available.
Title: Re: 500d development
Post by: a1ex on 14 / February / 2011, 07:53:41
Of course.

In my offline tests I've got very good results with morphologically bluring the image (open and close) and checking where fine detail is lost. This method is much more robust when it comes to high-contrast OOF edges, but it needs to analyze a 5x5 region around a pixel in order to detect the local "focus strength".

Plain edge detection (which simply checks difference between adjacent pixels) works well in many cases, but has a lot false positives in certain situations (OOF high-contrast especially).

These methods are used in focus peaking in the latest builds. The morphological method uses a very crude 1x4 "area" instead of 5x5, which makes it very sensitive to noise.

I've got similar performance (i.e. very good) with median filter (again, with at least a 5x5 area). If you know how to implement it fast, that would make focus peaking much more robust than it is now on 550D.
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 10:19:57
yap, zebras are working really nice :).
again, awesome job RoaldFre.
Title: Re: 500d development
Post by: pat_loonytoon on 14 / February / 2011, 20:54:13
Hey just got the newest build but zebras are offset by about an inch on the screen and also the screenshot feature doesn't seem to work as it counts down to 5 and doesn't count down anymore.
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 22:32:42
I just DL'ed the 500D alpha ML firmware today and use the intervalometer. I set it to shoot every 1 second. It works, but stopped at 25 shots both times that I tried.

I have an workaround for you until a proper fix goes in place: shoot in AV mode (any mode other than manual i believe will work). I personally tried AV and i was able to take over 140 pictures before i stopped the intervalometer. When i tried the same thing in M mode it stops after ~ 20 pictures.
Title: Re: 500d development
Post by: alins on 14 / February / 2011, 22:35:40
Hey just got the newest build but zebras are offset by about an inch on the screen and also the screenshot feature doesn't seem to work as it counts down to 5 and doesn't count down anymore.

any way you can take a picture with your phone camera or something else and post it here?. i've been playing with zebras on and off and i haven't seen anything wrong, at least nothing as 1 inch which should really jump at me. I don't doubt that you are right, i just want to see it and maybe figure out how to reproduce the problem
Title: Re: 500d development
Post by: pat_loonytoon on 15 / February / 2011, 00:18:16
I hope this helps at least a little. I took it with my Kinect so it was a little hard getting it in focus :)(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fwww.geekworlds.com%2Fpatrick%2Fzebras2.jpg&hash=0b46ea92345bae2925561d6faf2f7760)
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 01:12:24
out of curiosity try this build..i wonder
Title: Re: 500d development
Post by: pat_loonytoon on 15 / February / 2011, 01:37:24
Nice that fixed it and now it is wonderful. Zebra delay seems to be at about 1 second.
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 02:11:32
yap, that sounds about right. is not the fastest thing ever, but it works really nice...i like it a lot.

i have a theory why is working now (although i have no clue why it did work for me and RoaldFre before):

what i did in the last build is to change the vram address to one that has a 720x424 image while the previous build was using an address that has a 720x624 image. now if you look at the bottom of your lcd you have a dark band (i bet about 480-424 pixels) where there's no image and it's used by canon as display area. if you use DISP button you will see that are being populated. ML is also populating this are with its own info (ISO, apperture, shutter, lens data...etc).

if my theory is true than the vram address that we should be using is the one that has the 720x424 image. I would really appreciate if anybody else that tries this build will post with their own experience. On my camera i can see blue zebra on that bottom black strip which if the theory is proven right i believe is a bug.
Title: Re: 500d development
Post by: pat_loonytoon on 15 / February / 2011, 02:18:48
yeah I have the same blue zebra on the bottom, was wondering about that.
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 04:00:00
The 550D has a different screen layout and image can be displayed full-screen (without any bars). You may want to let y go to 424 only in the zebra loop (if I understood well what's happening).
Title: Re: 500d development
Post by: aznguy on 15 / February / 2011, 09:35:01
whoa.. i can see the developers are hard at work! Great job guys, btw what is the current condition for the ISO, Shutter and Aperture manual controls? I'm hoping to be able to use this for a upcoming video shoot.
Title: Re: 500d development
Post by: gravityrem on 15 / February / 2011, 09:41:48
i also had this problem with the zebras with the previous build, now the offset is fixed ! thanks ! :)  and i have that blue zebra on the bottom too. ( by the way i have some questions, what are your settings for thresholds  to make the zebras work properly ? and what does red and blue zebras exactly mean ?)

Do you guys have any idea/lead about the flickering problem ?
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 10:09:00
See http://magiclantern.wikia.com/wiki/550D/UserGuide (http://magiclantern.wikia.com/wiki/550D/UserGuide)
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 10:35:17
You may want to let y go to 424 only in the zebra loop (if I understood well what's happening).

exactly!!
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 10:48:17
... what is the current condition for the ISO, Shutter and Aperture manual controls?

the current status is that if you try changing any of the above while shooting a movie the camera is gonna crash. if that happens don't panic, just take the battery out and everything should be back to normal.

why is the camera crashing?....i have no idea at the moment
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 10:54:03
Can you read the exposure settings? You may try to fool it by adjusting AE (exposure compensation).

Nandoide has some math here; if you skip the logarithms, it's pretty easy (just adding EV's).

http://magiclantern.wikia.com/wiki/Extended_exposure (http://magiclantern.wikia.com/wiki/Extended_exposure)
Title: Re: 500d development
Post by: gravityrem on 15 / February / 2011, 10:58:30
See http://magiclantern.wikia.com/wiki/550D/UserGuide (http://magiclantern.wikia.com/wiki/550D/UserGuide)

thank you
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 11:19:25
yes, i can read the exposure settings. hah...that's a pretty cool idea.

before going there i want to figure out why the audio meters don't work and why the camera speaker (or whatever the technical term is) doesn't work in ML. i'm suspecting that one or more of the stubs for audio are off. Once the audio is nailed down i would think we have enough features working to elevate 500d build to beta status and start fixing the other things (like manual control in movie mode).

so don't be shy people...feel free to send patches :)
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 11:32:34
Try to upgrade the codebase, as those were bugs on the early 550D builds.
Title: Re: 500d development
Post by: chuchin on 15 / February / 2011, 12:25:27
alins, I'll been using your build all this weekend and I'm really happy with it, Thank you. The 500d doesnt have the audio_thresholds table in it's firmware. The table is the same for all of the canon cameras, maybe by copying the table and putting in the audio header might work?
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 13:27:23
Try to upgrade the codebase, as those were bugs on the early 550D builds.

you mean the camera crashing in movie mode?..if that's the case i will definitely want to update the codebase
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 13:39:48
The 500d doesnt have the audio_thresholds table in it's firmware. The table is the same for all of the canon cameras, maybe by copying the table and putting in the audio header might work?

exactly, there's no audio_thresholds value. I've been playing around yesterday for few hours with different values and nothing yet: tried the value from 550d, the one from 5DM2 plus a few others. I even took a stab at IDA pro and i can't find this thing. either in 500d is under a different name or the audio is handled differently, or is just me not knowing how to use IDA pro.

currently i'm running ARM console in full mode over 500d firmware (it's been running since last friday !!), maybe that is gonna give some more data but i'm not holding my breath.

i think i got a little bit close by playing around since now the meters moved a little bit to a fixed value but is not moving back and forth dynamically. ML is reporting to me values for audio gain when it starts up so that should mean that something works.

also the camera speaker is not working which i really don't understand why

any ideas how to figure out why the camera speaker doesn't work?

Title: Re: 500d development
Post by: RoaldFre on 15 / February / 2011, 14:29:16
Ok, I'm geting paranoid here. I'm trying to document all the additional VRAM buffers that show up when actually recording a movie, but they seem to either randomly disappear or contain garbage (though that may be because dumping the memory whilst recording makes the camera lock after a few seconds, so maybe the sensor data doesn't get updated correctly to the buffer).

I'm weeding through this, but I'm not entirely confident of the findings. I'm also a bit short on time, so it's going at a slow pace. The VRAM buffers seem to be less of an issue now that the correct one for zebra is found, anyway.

Regarding changing the 480 to 424 in the for loop: that is absolutely necessary, as the buffer is only 424 pixels high. Below that buffer there's a bunch of zeros, hence the blue zebras. Maybe add an additional value "ZEBRA_HEIGHT" or so in the consts file to keep the zebra sources for the 550D and 500D compatible.
Title: Re: 500d development
Post by: Nathan on 15 / February / 2011, 15:08:37
Hi!
i only signed in to tell you guy that i am eagerly waiting! :P Your work is so great! Just wanna give you some extra motivation. Reading this thread and the wiki every day is like waiting for christmas when i was 40 years younger. :-)
Since my programming experiences are not deeply enough into that stuff. (i can do BASIC with linenumbers on a c16 :-)
i can not really help. I would like to do some testing and give you feedback but i heared about bricked cameras. Can running the chip hot damage it when i do not to take the battery out fast enough?
BR Nathan
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 15:21:08
Maybe add an additional value "ZEBRA_HEIGHT" or so in the consts file to keep the zebra sources for the 550D and 500D compatible.

exactly what i was planning to do for 500d :)
Title: Re: 500d development
Post by: aznguy on 15 / February / 2011, 15:27:57
The sensor / body overall gets really hot when you record normally for extended periods of time. (camera usually auto shuts off if its too hot) Meaning you have time to take it out when testing ML, just make sure if you feel unsure or see unusual things just take out the battery don't take the risk. I usually take off the battery, close the cap and take out the memory card and flip the on off switch a couple of times to make sure ML tasks are not running anymore. But yea if it gets hot enough it will damage your sensor. (which is REALL HOT, very improbable you'll reach that temp if you take out the battery promptly, and not waiting minutes)
Title: Re: 500d development
Post by: aznguy on 15 / February / 2011, 15:33:30
Ohhh, there's a weird problem ived noticed with my camera after testing ML, for some reason the lock function in movie mode (lock the current exposure, shutter, etc) tends to turn off all of a sudden and does not stay put. Also ive noticed that there's a slower write time because that bar pops up telling you that the data is not being written fast enough.. this has never happened before and only saw this after having used ML, any thoughts?

and i use a diff SD card for ML not my main card
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 15:39:18
I would like to do some testing and give you feedback but i heared about bricked cameras. Can running the chip hot damage it when i do not to take the battery out fast enough?
BR Nathan

hey Nathan, welcome to the party !!

believe me, my camera is taking a lot of abuse these days with me running builds that are crashing the canon software (i love the message that they display....i know i will grow to hate it) or pulling the battery out every few minutes...and is still working fine. i've read of people that have deleted the ML file from a bootable card and the camera "looked" like is bricked when in fact is not. I haven't actually heard of anybody that managed to brick their camera. I'm not saying it's impossible just very improbable as long as you follow the install instructions and you don't try to install let's say 5DM2 ML on 500d or stuff like this (i believe somebody did that the other day and amazingly the camera still works!). These cameras are built to take a loot of abuse.

if you want to be extra cautious here's what i recommend: if you believe the camera is misbehaving take the battery out. In my opinion "fast enough" means don't wait minutes, not do it in under 1 second :).

Also i recommended this before: when you are done playing with your camera and you put it back on the shelf take the battery out one last time to make sure you stop any tasks that haven't been stopped properly. worst case if you don't do this: you could find your battery is out of juice (happened to me).

I haven't personally tested how hot the camera gets while using ML, aznguy is the man to listen on this subject as far as i'm concerned.

So have some fun, play with the latest builds and please open bugs here: https://bitbucket.org/alins/magic-lantern-for-500d/issues if you find anything that hasn't been reported before.

Title: Re: 500d development
Post by: alins on 15 / February / 2011, 15:48:44
Ohhh, there's a weird problem ived noticed with my camera after testing ML, for some reason the lock function in movie mode (lock the current exposure, shutter, etc) tends to turn off all of a sudden and does not stay put.

hmm...i'm not sure what' the deal here. alex suggested in a previous response that some of the problems that we are seeing in movie mode have been fixed in the latest 550 codebase and we should move to the new codebase.

Also ive noticed that there's a slower write time because that bar pops up telling you that the data is not being written fast enough.. this has never happened before and only saw this after having used ML, any thoughts?

i believe i've also seen this on my camera...not sure what the problem is yet. i would like to retest this once we move to the new 550d codebase
Title: Re: 500d development
Post by: aznguy on 15 / February / 2011, 16:13:34
It just seems weird because im using the original firmware and not running ML. Is it possible the canon firmware got modified?
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 16:22:09
currently i'm running ARM console in full mode over 500d firmware (it's been running since last friday !!)
You need to press CTRL-C a few times if you see it locked up.

Quote
any ideas how to figure out why the camera speaker doesn't work?
Put a recent audio.c from 550D.
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 16:23:52
It just seems weird because im using the original firmware and not running ML. Is it possible the canon firmware got modified?

Try "clear settings" from Canon menu.
Title: Re: 500d development
Post by: alins on 15 / February / 2011, 16:29:07
currently i'm running ARM console in full mode over 500d firmware (it's been running since last friday !!)
You need to press CTRL-C a few times if you see it locked up.

Quote
any ideas how to figure out why the camera speaker doesn't work?
Put a recent audio.c from 550D.

i don't think is locked up alex, once in a blue moon it displays a message. I believe the last one that i've seen yesterday was "merging"...or something like this. i'm running ubuntu under vmware so the IO is on the slow side. I assign 4 procs to ubuntu but that didn't seem to make it faster.

i'm pretty sure i have the most recent audio.c from 550D, i will double check. should i get the one from official ML repo or the one from your fork?
Title: Re: 500d development
Post by: a1ex on 15 / February / 2011, 16:39:41
My fork is ancient now, get the one from the main repo.

For built-in speaker, the trick is to skip configuring the audio card in Play mode (look for Deti's messages in the mailing list, he sent this patch right after I've released the 0.2.0 build).
Title: Re: 500d development
Post by: RoaldFre on 15 / February / 2011, 17:59:14
You need to press CTRL-C a few times if you see it locked up.

Yup, found that out the hard way too. You can do a "watch -n 10 kill -2 PID" in a separate terminal and leave it crunch overnight, it'll send a interrupt signal every 10 minutes, with PID the Process ID of the python instance.
Title: Re: 500d development
Post by: Coutts on 15 / February / 2011, 23:06:14
so where's the latest file to put on my camera to try it? I'm lost with everyone's updates, where's the csv?
Title: Re: 500d development
Post by: aznguy on 15 / February / 2011, 23:15:12
so where's the latest file to put on my camera to try it? I'm lost with everyone's updates, where's the csv?

Go here http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D) :) ive kept it nice and neat for any user wanting to try out 500D ML
Title: Re: 500d development
Post by: Coutts on 16 / February / 2011, 00:17:22
so just put the autoexec.bin file on the card and make it bootable? do  I do anything with a .fir file or anything?
Title: Re: 500d development
Post by: pat_loonytoon on 16 / February / 2011, 01:01:28
Coutts, To see install instructions look at http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
The steps are basically to follow http://magiclantern.wikia.com/wiki/550d_install (http://magiclantern.wikia.com/wiki/550d_install) (Skip step 0 and use Chuchin's FIR file)
Title: Re: 500d development
Post by: Squibberling on 16 / February / 2011, 10:24:43
Does the 2/15 VRAM adjustment allow the intervalometer to keep running without memory leaks now?
Title: Re: 500d development
Post by: a1ex on 16 / February / 2011, 10:47:58
Try it and tell us ;)

(my guess is no, but I don't have this camera)
Title: Re: 500d development
Post by: alins on 16 / February / 2011, 13:32:48
Does the 2/15 VRAM adjustment allow the intervalometer to keep running without memory leaks now?

The intervalometer has a problem only when the camera is in manual mode. use AV mode for now (or whatever is your preferred non-manual mode) until i figure out why is misbehaving.
 
Title: Re: 500d development
Post by: Coutts on 16 / February / 2011, 17:22:45
Coutts, To see install instructions look at http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
The steps are basically to follow http://magiclantern.wikia.com/wiki/550d_install (http://magiclantern.wikia.com/wiki/550d_install) (Skip step 0 and use Chuchin's FIR file)

I used his FIR file. a while ago, and my camera will boot the firmware if I make the card bootable and have the autoexec.bin file on the card. So I don't have to touch the FIR file again, right?
Title: Re: 500d development
Post by: alins on 16 / February / 2011, 17:32:23
right.
Title: Re: 500d development
Post by: Coutts on 16 / February / 2011, 17:44:49
Alright, it all makes sense now, thanks for the clarification. Just for shits and giggles I emailed Canon's PR department a few weeks ago complaining (professionally) about the 500d being left out of much needed updates (like manual video controls). I got a repsonse from someone and they left me their extension to further discuss the issue over the phone. I'm calling him when he's back on Monday. What are the chances he'll make anything happen?? :lol:
Title: Re: 500d development
Post by: alins on 16 / February / 2011, 17:53:03
you know how it is: when everything else is gone there's still hope...and when hope dies we start hacking ML :)
Title: Re: 500d development
Post by: Coutts on 16 / February / 2011, 18:47:46
You guys are doing a great job with this, I can't thank all of you enough. I was using the CHDK stuff about 5 years ago before I bought a dslr, it's really cool to see the development in real time. I don't possess very much programming knowledge (aside from visual basic, but that won't help here), but I do use my T1i every day, so if there's anything I can help with, let me know.

I loaded up the latest build last night to check it out. It's coming a long it looks like. Any idea why the menu would flicker a lot when I had it up? Specifically more in video/live view mode while zebras were on (the zebras would flicker over the menu and stuff). Some of the menu text extends past the view of the screen too. I also noticed the HDR bracketing might not be working fully yet (not sure if anyone's started on that yet), it would take the shots, but it didn't look like it was adjusting the exposure more than 2 stops (even though it'd take more than 3 pictures).

how long until we have focus assist on the 500d? :D :D :D
http://vimeo.com/18782586 (http://vimeo.com/18782586)

keep up the great work guys!! I feel like a kid on christmas eve waiting!
Title: Re: 500d development
Post by: alins on 16 / February / 2011, 19:15:20
the menu flicker is a known issue. I consider it a minor issue for now (compare to others) so i didn't spend much time on it. I do plan on fixing that at some point

the HDR bracketing should be working fine, with one explanation: HDR bracketing works differently in different  modes. If you are in AV mode it will use exposure compensation which seems to be limited at 2 stops. If you use it in manual mode it will change the shutter speed so the sky is the limit.
Title: Re: 500d development
Post by: Coutts on 16 / February / 2011, 19:55:27
the menu flicker is a known issue. I consider it a minor issue for now (compare to others) so i didn't spend much time on it. I do plan on fixing that at some point

the HDR bracketing should be working fine, with one explanation: HDR bracketing works differently in different  modes. If you are in AV mode it will use exposure compensation which seems to be limited at 2 stops. If you use it in manual mode it will change the shutter speed so the sky is the limit.
I'm pretty sure I was probably in AV mode (that's what I'm in 99% of the time), so that makes sense. The menu flickering isn't a huge deal, I'd much rather have working features with a few quirks :D

Keep it up man! What exactly is the process with the whole porting thing? Basically take the code from another camera's ML build (550d) and change all of the memory locations to match the 500d?
Title: Re: 500d development
Post by: alins on 16 / February / 2011, 20:05:11
What exactly is the process with the whole porting thing? Basically take the code from another camera's ML build (550d) and change all of the memory locations to match the 500d?

so far 98% of the time yes, i'm reusing Alex's hard work. the other 2% (which takes the longest time) is finding the memory locations and figuring out why something doesn't work. like right now when i'm trying to figure out why the camera audio board doesn't work and what's wrong with the audio meters.
Title: Re: 500d development
Post by: aznguy on 16 / February / 2011, 22:20:15
So i just realized, the 60D ML hacking has started way before the 500D but now, very quickly, we have wayy surpassed the 60D ML haha shows how much we love our 500Ds :)
Title: Re: 500d development
Post by: chuchin on 16 / February / 2011, 22:55:02
All thanks to alins.
Title: Re: 500d development
Post by: alins on 17 / February / 2011, 01:06:07
very minor build release, two fixes:
1. i figure i should release a build that has the latest zebras fix where they don't spill over the bottom black strip
2. camera internal sound board is working now. don't know about you guys but this one was bugging me a lot. i'm still working on the audio meters.
   for alex: turns out the problem was this line: audio_ic_write( AUDIO_IC_MODE4 | 0x00 ); for now i just commented the line out so we can move on. i figure either the value is wrong, 500d doesn't have this register, or is actually doing something else

no other fixes in this build, sorry

alins
Title: Re: 500d development
Post by: pat_loonytoon on 17 / February / 2011, 01:09:51
helps me out quite a bit so thanks Alins!
Title: Re: 500d development
Post by: alins on 17 / February / 2011, 01:15:03
you are welcome :)
Title: Re: 500d development
Post by: pat_loonytoon on 17 / February / 2011, 01:56:19
Hey guys, so with the latest build, my mic jack mod., and my new AudioTechnica ATR6250 I made a audio-test. Is anyone getting that buzz when they bump up the analog gain?
 I am talking somewhat quiet as most are asleep at my house :/
 (http://www.youtube.com/watch?v=1EuZJPWZUE4#)
Although the mic is cheap I bought it because of the mileage this guy got with the same mic and ML on his T2i-
 (http://www.youtube.com/watch?v=XpQDGZqHeAA#)

Title: Re: 500d development
Post by: alins on 17 / February / 2011, 02:34:36
do you mind checking if the previous build has the same problem?.
Title: Re: 500d development
Post by: pat_loonytoon on 17 / February / 2011, 03:00:05
yeah just tested and noise is still there. Not too sure what it could be :/ Anyone with internal mic get any noise?

Also, tested it without ML and it turned out really loud and still had the buzz in the track...it could just be a glitch with my mic...I thought it could be because the T2i is built to already support sound input.
Title: Re: 500d development
Post by: Farbrorbengt on 17 / February / 2011, 04:39:39
yeah just tested and noise is still there. Not too sure what it could be :/ Anyone with internal mic get any noise?

Also, tested it without ML and it turned out really loud and still had the buzz in the track...it could just be a glitch with my mic...I thought it could be because the T2i is built to already support sound input.

My internal works great, it's either some soldering touching something or your new mic.

* Try the other builds, if it's the same buzz then it can't be any software issue.
Title: Re: 500d development
Post by: Coutts on 17 / February / 2011, 15:02:20
another quick question:
when i load the autoexec.bin file, it says it loaded a .cfg file even though I don't have one on my card, should I use the one that churchin posted originally or just leave it without a .cfg file?

also a really useful feature that you guys could implement, the ability to turn off exposure prevewing in live view, ex: when you set the shutter speed high, it dims the live view screen to simulate what the exposure will look like. this sucks when I am taking an off camera flash picture (so my shutter speed is set at 1/200th), and I can't see what's in focus because the screen is black because there isn't enough ambient light (without flash, the exposure would be black, since i'm only using flash for light).

could this be implemented possibly?
Title: Re: 500d development
Post by: aznguy on 17 / February / 2011, 15:12:41
another quick question:
when i load the autoexec.bin file, it says it loaded a .cfg file even though I don't have one on my card, should I use the one that churchin posted originally or just leave it without a .cfg file?

also a really useful feature that you guys could implement, the ability to turn off exposure prevewing in live view, ex: when you set the shutter speed high, it dims the live view screen to simulate what the exposure will look like. this sucks when I am taking an off camera flash picture (so my shutter speed is set at 1/200th), and I can't see what's in focus because the screen is black because there isn't enough ambient light (without flash, the exposure would be black, since i'm only using flash for light).

could this be implemented possibly?

Im sure its possible but I dont think it will happen for a while, this feature would require them to write the code themselves rather than fixing and porting the current Magic Lantern to the 500D. That is their main goal at the moment
Title: Re: 500d development
Post by: pat_loonytoon on 17 / February / 2011, 21:06:04
@Farbrorbengt Yeah you may be right about my mic, it seems to sound fine though on the computer...still wondering if the T1i supports stereo sound input but has a setting set to mono instead of 2 channels.
Title: Re: 500d development
Post by: Coutts on 17 / February / 2011, 21:57:03
@Farbrorbengt Yeah you may be right about my mic, it seems to sound fine though on the computer...still wondering if the T1i supports stereo sound input but has a setting set to mono instead of 2 channels.
i haven't opened mine up but from the video it looked like there were only 2 wires for the internal mic, meaning it's mono. your best bet would be to record audio externally and join the tracks in post process, if you really want to get into things.
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 00:12:56
speaking of audio: i just played with the code some more trying to figure out why the audio meters don't work and at least in the code i get values only on one channel. it could be because the code is wrongly initializing the sound device or is suppressing one channel OR the camera is mono.

before jumping to any conclusions here do you guys know of any way we can find out for sure if 500d audio is mono or stereo?.
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 02:21:15
speaking of audio: i just played with the code some more trying to figure out why the audio meters don't work and at least in the code i get values only on one channel. it could be because the code is wrongly initializing the sound device or is suppressing one channel OR the camera is mono.

before jumping to any conclusions here do you guys know of any way we can find out for sure if 500d audio is mono or stereo?.
it's mono forsure, here's a screencap of a clip I shot a while ago:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi54.tinypic.com%2F2rfen20.png&hash=61adec897c4f6064a936e490f2e5f465)

does that mean the t2i/5d mk2 are stereo?
Title: Re: 500d development
Post by: RoaldFre on 18 / February / 2011, 02:48:51
It's not because the file is mono, that there is no possible way of getting stereo input. This just means that that video was recorded with the on-board (mono) mic and then encoded as a mono audio stream. It's still possible (though unlikely imo), that the sound device does in fact support stereo input, of which only one channel is used by the internal (mono) mic.
Title: Re: 500d development
Post by: pat_loonytoon on 18 / February / 2011, 02:52:51
indeed, still need to see a good breakdown of hardware to see what sort of hardware is used for sound on the T1i...perhaps it is using some of the same things as the T2i
Title: Re: 500d development
Post by: pat_loonytoon on 18 / February / 2011, 03:14:11
Found some steps to taking apart the whole camera, might help someone- http://ghonis2.ho8.com/rebelmod450d1.html (http://ghonis2.ho8.com/rebelmod450d1.html)
Title: Re: 500d development
Post by: gravityrem on 18 / February / 2011, 04:18:45
@Pat Loonytoon : about your buzz problem, Im not sure, but it seems to me that in your hardware mod you just linked your socket to the internal mic's wires right ?

There's maybe an impedance problem, your mic may have a different impedance than the on-board mic... you should think about kind of a buffer...
What do you think ? 
Title: Re: 500d development
Post by: gravityrem on 18 / February / 2011, 06:27:39
btw, i played with my camera this morning, and the sound seems to work well ! The audio remoteshot works too.

You are really doing an awsome job !
Title: Re: 500d development
Post by: Nathan on 18 / February / 2011, 10:07:20
I read allot about the magic lantern project. What i didn't understand till now is the thing about the framerate. Is ML able to change framerates or is 24p on the 5d only useable because the official (but still depriving) firmware made it possible?
By the way again: I love your work guys (and girls?)!
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 10:09:51
if we could unlock 1080p to record at higher than 20fps and actually be usable, that'd be awesome :D but not sure what the odds of that happening are.

also for the audio triggering, is there going to be a setting in later builds to adjust the sensitivity of it? It kept triggering it self from quiet background noise while I was in the office at work yesterday.
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 11:22:54
by the way I just added some bugs to the issues reporting area here:

https://bitbucket.org/alins/magic-lantern-for-500d/issues
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 11:28:09
I wi
if we could unlock 1080p to record at higher than 20fps and actually be usable, that'd be awesome :D but not sure what the odds of that happening are.

also for the audio triggering, is there going to be a setting in later builds to adjust the sensitivity of it? It kept triggering it self from quiet background noise while I was in the office at work yesterday.

to answer your first question: the odds at the moment are not very high just because my focus is on audio meters and making sure the existing functionality that we have for 500d works.  Once the existing feature set is stable i will have to do some research see if it's even possible to raise the fps. As usual if anybody is willing to take a crack at this problem don't be shy.

audio trigger: other than turning the feature off, i'm pretty sure there's a way to adjust the sensitivity. it will have to wait a little bit tough. meanwhile please create an issue in bitbucket about this, sounds to me like a very sensible feature request.

back to audio:
it seems we all agreed that the audio on this camera is mono, which means one single channel right?.

now here's my current theory why the audio meters don't work (remember theory: could be way off from reality):
as i said before, i played with the code a little bit and the values (let's call it signal strength for the lack of a better term) that i'm getting on my camera for audio on the single channel is very low (i plan to write some simple code to give me the high and low values). The rest of the code takes the low values and adjust them for scale which results in values close to zero so the meters don't move at all.

Alex, if you are reading this: do you have any idea what's the range of RAW audio levels values that you get on 550d?. i would define high as the highest values that you have seen.

i'm talking here about the value from this line:
 int raw = audio_read_level( ch );
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 11:28:39
thank you very much for adding the bugs Coutts, really appreciate it
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 11:42:07
No problem man! thank you for doing all of this work. as for the audio trigger, i posted it in the bug report but here's an idea for a threshold setting:
Quote
I know that the only option is to turn the feature on and off at the moment, maybe once the audio meters are working, you could make a setting for threshold that reads the current audio input levels, and at X db of input or whatever, turn the feature on and thus trigger the picture.

And as for the audio being mono, i'm almost positive it is, the internal audio anyway. The internal mic from what i remember in the video showing how to add an external mic hookup, has only 2 wires, positive and ground, which means mono right? stereo would have two sets of positive/negative wiring, for each channel.

it's my guess that on a hardware level, it's all mono. unless someone can tear apart a T1i and examine the actual board, I guess all we can do is speculate.


By the way I just put in another issue ticket for the crop marks not working. I just want to clarify:
1) i used churchin's .fir file a while ago to set the boot flag
2) i no longer keep the .fir file on my sd card, just the autoexec.bin file
3) do I need the magiclantern.cfg file that was included with churcin's original release? even though i don't have one on the card, when ML boots it still says a .cfg file is present (is this embedded in your autoexec.bin file or something?)
4) do I need the crop mark BMPs on my card still?

thanks again for everything man. do you have a facebook or anything I could add you at for easier contact? feel free to pm me.
Title: Re: 500d development
Post by: Nathan on 18 / February / 2011, 12:17:35
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 12:31:44
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!
so you see the ML boot messages like this??
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi54.tinypic.com%2F313r6fo.jpg&hash=7e6844477a4d96c1588747908115893d)
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 13:06:24
3) do I need the magiclantern.cfg file that was included with churcin's original release? even though i don't have one on the card, when ML boots it still says a .cfg file is present (is this embedded in your autoexec.bin

you don't need that file to use ML.
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 13:08:37
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!

are you saying ML is not working for you?. i mean you don't get any menu's when you press the trash button?
Title: Re: 500d development
Post by: Nathan on 18 / February / 2011, 13:26:21
yes, like this but it tells studio@studio-pc and the line with config file is dirctly below the other two lines. I tried several modes to boot up, tried trash and the button below "set", both in live modus. the button below "set" moves a white box in the middle of the screen down and the trash button resets it to middle.
What am i doing wrong?
Title: Re: 500d development
Post by: Nathan on 18 / February / 2011, 13:30:28
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!

are you saying ML is not working for you?. i mean you don't get any menu's when you press the trash button?

Exactly. Hmmm... i guess a made an absolutly stupid mistake :-) Anyways... I have do some family supply :-)
Title: Re: 500d development
Post by: Nathan on 18 / February / 2011, 13:33:16
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!

are you saying ML is not working for you?. i mean you don't get any menu's when you press the trash button?

Exactly. Hmmm... i guess a made an absolutly stupid mistake :-) Anyways... I have do some family supply :-)

OMG maybe i got the wrong file lol.
its built on 26-12-2010 lol...
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 14:24:24
Alins- Thanks man but I'm not getting any ML Menus, I'm using the bin you gave me but yeah, no luck.

I have the same problem. "Picture Mode" moves the white box around. Trash doesnt make anything. Any suggestions? ML ist booting! i can see the boot messages!

are you saying ML is not working for you?. i mean you don't get any menu's when you press the trash button?

Exactly. Hmmm... i guess a made an absolutly stupid mistake :-) Anyways... I have do some family supply :-)

OMG maybe i got the wrong file lol.
its built on 26-12-2010 lol...

haha, yeah that might do it. the latest builds are posted here, so download it from here:
http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 14:59:06
also i would double check the first step in the installation instructions.

just to quickly resume the steps here: make your card bootable (http://magiclantern.wikia.com/wiki/550d_install#Step_2._Making_the_SD_card_bootable (http://magiclantern.wikia.com/wiki/550d_install#Step_2._Making_the_SD_card_bootable)) copy on it the 500d FIR file (from here: https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/ml500d.7z (https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/ml500d.7z)) and start the camera.  ml500d.7z is an archive file so you need to install 7-zip utility ( i assume you use windows) to open up ml500d.7z. inside you will find the FIR file.

when you start the camera with the FIR file you should see a message about the boot flag been set or something like this. once this step is done stop the camera, delete the fir file from the card (you don't need it anymore) and copy the autoexec.bin file on the card (use the latest build from http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)). start the camera and ML should show up.

let us know if is working for you
Title: Re: 500d development
Post by: Squibberling on 18 / February / 2011, 16:19:53
I took my T1i out to shoot video yesterday with the ML firmware loaded and running. The zebras didn't work and I could start record, but not finish. The record button would be pressed twice, but the recording just wouldn't stop. I had to power down the cam, and ended up with a zero second video when I checked the files. I think this is another memory leak, like what I experienced with intervalometer.
Title: Re: 500d development
Post by: alins on 18 / February / 2011, 16:53:00
The zebras didn't work and I could start record, but not finish.

just to double check: you sure you have the latest build (pre-alpha 1.07) on your camera?..these problems should have been fixed a couple of builds ago
Title: Re: 500d development
Post by: aznguy on 18 / February / 2011, 17:46:42
Video and Zebras work fine for me, i just played around with it yesterday, and somehow i think the heat problem is fixed too, the base doesn't get hot anymore,  as much.
Title: Re: 500d development
Post by: Coutts on 18 / February / 2011, 17:47:21
the focus trapping seems to only work when a lens is attached too. maybe something to do with reading what the current lens' focal length is? example:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fhphotos-snc6.fbcdn.net%2F175289_10150401507565344_704010343_17240567_1289242_o.jpg&hash=71a53fd8ec317cc4d617563d51727cfc)

when doing reverse macro like this, focus trapping won't beep. but if i put my kit lens on in manual focus mode it works.

 :(


edit:
looks like focal length doesn't have to do with it (focal length is reading 0 right now and it works with the kit lens), maybe there's just not enough "in focus" when at these extreme magnifications for it to trip?
Title: Re: 500d development
Post by: a1ex on 19 / February / 2011, 06:30:43
For unchipped lenses, wait until liveview trap focus is ported.
Title: Re: 500d development
Post by: PHrag on 19 / February / 2011, 10:58:02
Hello, I have 500D and want to try ML, mostly because LCD&Audio Remote Shot, silent pictures, focus trapping and i have few questions. if I follow the installation guide, will the camera be OK? I know there's always a risk, but you know what I mean, like if you have any reported bricks? Will the camera work like it did before - No performance issues/extreme battery drain..? Will the features i said work in the current 1.07?  I restore it to original state just by formatting the SD, right?
Thank you very much.
Title: Re: 500d development
Post by: alins on 19 / February / 2011, 12:14:42
... like if you have any reported bricks?

no reported bricks as far as i know.
Title: Re: 500d development
Post by: aznguy on 19 / February / 2011, 14:29:46
Hello, I have 500D and want to try ML, mostly because LCD&Audio Remote Shot, silent pictures, focus trapping and i have few questions. if I follow the installation guide, will the camera be OK? I know there's always a risk, but you know what I mean, like if you have any reported bricks? Will the camera work like it did before - No performance issues/extreme battery drain..? Will the features i said work in the current 1.07?  I restore it to original state just by formatting the SD, right?
Thank you very much.

As of now ML seems okay to try and shouldnt affect your camera adversely. Just remember, the current build is prealpha, and it is experimental and for testing only. If you decide to test it, just remember to always pop out your battery if your camera does anything strange while running ML.

And yes, just reformat your memory card on your computer and it should be normal again. Try testing ML using a spare SD card instead. so you dont have to deal with the hassle and then your can always try new upcoming builds
Title: Re: 500d development
Post by: PHrag on 19 / February / 2011, 14:46:51
Thanks for responses, just installed ML, menus, zebras and other display stuff seems to be working, but audiometer, remote shot, intervalometer does not. Anyway, thank you guys, you make unbeliveable work and I wish you good luck in upcoming releases ;-)
Title: Re: 500d development
Post by: Nathan on 19 / February / 2011, 15:17:24
Hi, i did some testing the 1.07 preAlpha. I found some bugs but they are already listed in the issue list. could there be a possibility to change the values in the menus by turning the "main dial" ? Or is there a way to decrease values? I can only increase by pressing "set"-button. Takes a lot of hits to select a lower value.
Title: Re: 500d development
Post by: alins on 19 / February / 2011, 15:26:02
Use DISP to decrease any value
Title: Re: 500d development
Post by: alins on 19 / February / 2011, 15:28:08
Thanks for responses, just installed ML, menus, zebras and other display stuff seems to be working, but audiometer, remote shot, intervalometer does not. Anyway, thank you guys, you make unbeliveable work and I wish you good luck in upcoming releases ;-)

Intervalometer should work fine if you put your camera in AV mode
Title: Re: 500d development
Post by: PHrag on 19 / February / 2011, 15:47:46
Intervalometer should work fine if you put your camera in AV mode
Ah, it works, thanks
Title: Re: 500d development
Post by: Nathan on 19 / February / 2011, 15:55:49
Use DISP to decrease any value

:-) Thankyou. Anyways... would it be possible to use the wheel?
Title: Re: 500d development
Post by: alins on 19 / February / 2011, 19:30:56
as far as i know the wheel hasn't been fully decoded yet.
Title: Re: 500d development
Post by: Machya on 20 / February / 2011, 12:01:14
Hi! I just registered to thank you for trying to get ML for 500D! Thank you sooo much!!! Especially big thanks to Alins! And good luck guys!
You are the BEST!!!
I'm so happy! :)
Title: Re: 500d development
Post by: Squibberling on 22 / February / 2011, 11:29:35
Any chance the intervalometer will be made good for manual mode? AV or TV mode causes "time lapse flicker." Give it a try, you'll see what I mean with your first time-lapse vid.
Title: Re: 500d development
Post by: Coutts on 22 / February / 2011, 12:58:23
Where can we downloaded the latest source code from? I kind of want to start picking through it, I'm curious what goes on behind the scenes.
Title: Re: 500d development
Post by: alins on 22 / February / 2011, 13:21:24
Where can we downloaded the latest source code from? I kind of want to start picking through it, I'm curious what goes on behind the scenes.

here: https://bitbucket.org/alins/magic-lantern-for-500d
Title: Re: 500d development
Post by: alins on 22 / February / 2011, 13:22:23
Any chance the intervalometer will be made good for manual mode? AV or TV mode causes "time lapse flicker." Give it a try, you'll see what I mean with your first time-lapse vid.

i will try my best to look into this in the next few days
Title: Re: 500d development
Post by: Coutts on 22 / February / 2011, 15:30:20
hey alins one thing i've noticed already just browsing through the code:
in consts-500d.110.h, the SENSOR_RES_X and SENSOR_RES_Y constants correspond to the 18mp sensor in the 550d, the 500d's sensor is only 15mp so these values should be changed. I only found one reference to these two constants in shoot.c at lines 443 and 444.

Not sure exactly what that will affect, but it's something that should be corrected. I've been trying to figure out why trap focus only gives an autofocus beep instead of actually taking a picture.

I wish I could get this to compile, I tired setting it up on my macbook all day but failed, I really wish I could be testing this myself instead of just reporting to you  :(

oh, also at line 38 in shoot.c:
CONFIG_INT( "audio.release.level", audio_release_level, 700);
This looks like the threshold setting for the audio release routine, if you made another setting in the menu for it then you could implement a threshold setting this way (to make it more or less sensitive).

edit (9:24pm EST):
FINALLY got the code to compile for me. I'll start testing things out for your alin and let you if I find anything! I'm deathly afraid that doing the hg command is going to over write your code on the server if I'm not careful (when I need to re-pull the code back down), am I just being paranoid or is this something that could possibly happen?
Title: Re: 500d development
Post by: Coutts on 22 / February / 2011, 23:12:09
Looks like a menu setting for audio triggering will work, changing the trigger level setting in shoot.c does affect how easily it's triggered (the lower the number, the higher the threshold before shooting). All you'd have to do is implement a new setting for it in shoot.c.
Title: Re: 500d development
Post by: a1ex on 23 / February / 2011, 07:38:07
For Mac, see also http://magiclantern.wikia.com/wiki/2.0.4_Building_ML (http://magiclantern.wikia.com/wiki/2.0.4_Building_ML)

(besides http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D) )

You can adjust sensitivity of audio release by changing the volume in audio menu.
Title: Re: 500d development
Post by: Coutts on 23 / February / 2011, 09:19:44
For Mac, see also http://magiclantern.wikia.com/wiki/2.0.4_Building_ML (http://magiclantern.wikia.com/wiki/2.0.4_Building_ML)

(besides http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D) )

You can adjust sensitivity of audio release by changing the volume in audio menu.
trust me i tried getting it to work, there's a couple different guides for mac written. now my macbook's path variable is all screwy and there's lots of packages installed I don't need. I ended up getting it to work on my computer at work on windows 7 with cygwin. I just use remote desktop to play with things when I'm not at the office now.


By the way, I kept having issues with fonts not building right. I couldn't figure it out, just that it kept overwriting the font-*.o files with blanks. I commented out lines 262-281 in the make file and it's built fine since. I wonder what the issue is? I read something about it on the ML wiki but they said it could have been a date/time issue, but my date/time are fine?

weird..who knows.
Title: Re: 500d development
Post by: a1ex on 23 / February / 2011, 10:19:41
It seems to happen when you don't have bigtext (which is difficult to setup).
Title: Re: 500d development
Post by: Coutts on 23 / February / 2011, 10:41:23
It seems to happen when you don't have bigtext (which is difficult to setup).
I couldn't find any more info on what exactly bigtext is. It was weird because sometimes it would compile and sometimes it wouldn't.. commenting out those lines seemed to fix it and I haven't had any issues since.
Title: Re: 500d development
Post by: alins on 23 / February / 2011, 11:26:50
btw: do you guys know how we can set the font smaller?. med font is too small to be used in the menu, i would like to use the large font but a little bit smaller size. For example: don't know what's the size of the large font but let's say for example is 13 i would like to go to maybe 12 or 11. This way the menu text will fit inside the box and we wouldn't have any screen corruption when closing the menu.
Title: Re: 500d development
Post by: RoaldFre on 23 / February / 2011, 12:53:45
Maybe alex can dump some font *.in files at various sizes with his working bigtext setup? (I don't have bigtext myself, and I needed to change the Makefile too)

If you have font generation fully working, you can just alter the Makefiles, it should have the targets:
font-*.in:
     blah
     '-*-helvetica-*-r-*-*-POINTSIZE-*-100-100-*-*-iso8859-*
     blah

You can tweak the pointsize there.
Title: Re: 500d development
Post by: alins on 23 / February / 2011, 13:11:31
hah, that seems simple enough. I will have to try this, see if i can figure out how to make it work.
Title: Re: 500d development
Post by: a1ex on 23 / February / 2011, 15:19:35
Don't you like the terminus font? Get it from latest 550D branch (just plug and play).
Title: Re: 500d development
Post by: RoaldFre on 23 / February / 2011, 15:48:33
Terminus is *the* terminal font, and I love it :-). I based the line above from the Makefile I found in alins' fork, which seems to use helvetica. Terminus would probably be superior for small sizes.
Title: Re: 500d development
Post by: alins on 23 / February / 2011, 15:55:43
for 500d i believe i copied the fonts from 5dm2, it's one of those new TTF fonts: bitstream vera or dejavu, forgot which one. i like the way it looks it's just too big for 500d smaller resolution LCD. i'm gonna try terminus
Title: Re: 500d development
Post by: a1ex on 23 / February / 2011, 17:14:36
Copy font-* from 550D ML and it should work out of the box. Remove the huge font if you still have it (helps a lot with stability).

If fonts are displayed as blank, remove font-*.in rules from Makefile (and copy the files again).
Title: Re: 500d development
Post by: alins on 23 / February / 2011, 22:01:58
new build. i'm releasing this in a zip file so i can put the cropmarks bmp files in it. to install just unzip everything on your card. You should end up with autoexec.bin overwriting the old file and a folder called cropmks which will have the cropmark files.

- i changed the large font to be a little bit smaller so the menu options fit better. We still have text that is larger than the menu box, this is just the first step
- i believe i fixed the intervalometer in manual mode. please test and let me know.
Title: Re: 500d development
Post by: a1ex on 24 / February / 2011, 02:43:39
Hint for cropmarks: try to scale/translate the 550D ones so as they match the 500D screen layout. This way we would be able to use the same cropmarks for all the cameras.

On the 550D, the cropmarks and the screen have the same resolution and aspect ratio (no scaling needed), which makes them easier to edit (less math).

Another hint: after I've changed the font, I've renamed the menu items a bit (since there was a bit of room). Here you can see a comparison between old and new ML font: http://vimeo.com/groups/magiclantern/videos/19169000 (http://vimeo.com/groups/magiclantern/videos/19169000)
Title: Re: 500d development
Post by: aznguy on 24 / February / 2011, 05:22:07
hey alins, how far off do you think focus peeking is for the 500D?
Title: Re: 500d development
Post by: captainjon on 24 / February / 2011, 08:02:42
anyone have any ideas for patching the firmware to add 24p. im guessing randomly changing values of 20 to 24 will be pointless and be a quick way to brick the camera.

Is using a dissassembly of the firmware the best way forward on this?
Title: Re: 500d development
Post by: madnish30 on 24 / February / 2011, 09:17:23
Hi Guys,
First of all many thanks ! I jumped with joy to discover these developments for the small but powerful t1i !

Umm, sorry for being stupid.. but i have tried loading ML on my T1i 3 times now..
something is not happening correctly.

I'm trying to comprehend the installation guide.. but don't know what am I missing.. maybe the 550D part with 1.0.9 firware is confusing. I'm willing to pitch in and write a seperate wiki page for 500d ( installation guide that is !) once I figure it out..

What I tried was:
1) Formatted my SD
2) Put magiclantern.fir on it
3) made it bootable using EOScard ( checking EOS_DEVELOP and BOOTDISK and hitting Save. )
4) put all the files from the latest 1.0.8 build which I downloaded form a couple of posts above
5) Deleted magiclantern.fir 

6) Put the card in the body.. only to notice no change  :(

formatted it again and tried it without the magiclantern.fir

I'm not doing the 1.0.9 firmware step as we T1i owners have 1.1.0 firware and not sure if I have to reflash it with e magiclantern.fir file on the card in order to do stuff to VRAM  and then put the 1.0.8 files and then delete magiclantern.fir



Sorry for my ramble.
Please explain it in short. I will put it up in simple words and add it to the 500D wiki  :)

Many thanks and good lcuk for the rest of the porting !
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 09:52:40
use this
hey alins, how far off do you think focus peeking is for the 500D?

i'm gonna start looking into this one.

i can't find the audio thresholds so i can fix the audio meters, may as well start fixing bug and porting new features like focus peeking.
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 10:04:05
i have tried loading ML on my T1i 3 times now..
something is not happening correctly.

just to be sure: have you used this installation instructions: http://magiclantern.wikia.com/wiki/500D#Installation_-_Only_For_Canon_Firmware_1.1.0 (http://magiclantern.wikia.com/wiki/500D#Installation_-_Only_For_Canon_Firmware_1.1.0) ?

first you have to make your card bootable, second copy the fir file on it (make sure you use the correct FIR file) and start the camera. You should see a message that the boot flags have been set. stop the camera, delete the fir file (you don't need this one anymore) and copy all the files from alpha08 build on the card. start the camera, wait a couple of seconds and press the trash button...you should see the ML menu.

post here if you managed to make it work or not

Title: Re: 500d development
Post by: alins on 24 / February / 2011, 10:09:22
anyone have any ideas for patching the firmware to add 24p.

sorry, at the moment i have no idea how to approach this one. What i'm trying to say is that I have no clue if it's as simple as finding the right memory address and make a call with the right parameters to enable this or we need to write our own implementation.

if anybody on this thread knows what needs to be done (or at the least the general direction) please let me know. as always patches are welcome :)
Title: Re: 500d development
Post by: bjacklee on 24 / February / 2011, 10:11:39
hey alins, I really appreciated all you efforts porting ML to 500d... I tried your latest build and enjoyed most of the working feature... :) I wonder if you could add 24p for both 720p and 1080p resolution too. I hope 500d is capable of running 24fps in 1080p. what do you think?  
Title: Re: 500d development
Post by: LaLaPico on 24 / February / 2011, 10:50:20
I think the frame rate question has been brought up and covered already...
Title: Re: 500d development
Post by: captainjon on 24 / February / 2011, 10:52:47
"covered" in the sense of how to do it - not yet.
Title: Re: 500d development
Post by: bjacklee on 24 / February / 2011, 10:59:31
I hope someone could find a way on how to add 24p in 500d. :) I think the most important features we need in 500d is manual controls over the video and 24fps.
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 11:15:48
I think the most important features we need in 500d is manual controls over the video and 24fps.

Agree.

Manual controls are there more or less,currently they are crashing the camera so as far as I'm concerned at the moment there's a bug in the code that prevents this feature to be actually usable.

 24fps as I said before, right now i have no clue if it's even possible
Title: Re: 500d development
Post by: bjacklee on 24 / February / 2011, 11:34:19
24fps as I said before, right now i have no clue if it's even possible

if I'm not mistaken 5DMK2 has only 30p originally but canon made an update that makes the camera shoot @ 24p.  so I think its possible... the only question is how...
Title: Re: 500d development
Post by: Coutts on 24 / February / 2011, 11:47:18
Guys - I know we are all waiting in eagerness for manual exposure control in video and possibly more framreate options, but right now that's getting too far ahead of things. We still need to make the small things work, like fitting menus on the screen, making fonts fit on the menus, making the menus clear the screen completely and not leave remnants behind (like it does now), etc.

Once the firmware is stable, then we can start to look forward to addon features like previously mentioned.

I think I might have found a memory address for the focus state, well I've found a few actually. Using mem spy I've found the following:
14c63
14c3c
14c60


it's usually in the format: 14c60:##:###### or whatever, the first 2 numbers seem to increment when the shutter button is pressed half way and autofocuses, then increments again when the button is let up. The second set of numbers switches between 2 values (usually different on different times). I've seen the same behavior from those 3 addresses so far. I don't know if this has any significance for anything (not sure if you guys have all the memory addresses yet), but I'm just throwing out there some findings.
Title: Re: 500d development
Post by: madnish30 on 24 / February / 2011, 12:00:34
i have tried loading ML on my T1i 3 times now..
something is not happening correctly.

just to be sure: have you used this installation instructions: http://magiclantern.wikia.com/wiki/500D#Installation_-_Only_For_Canon_Firmware_1.1.0 (http://magiclantern.wikia.com/wiki/500D#Installation_-_Only_For_Canon_Firmware_1.1.0) ?

first you have to make your card bootable, second copy the fir file on it (make sure you use the correct FIR file) and start the camera. You should see a message that the boot flags have been set. stop the camera, delete the fir file (you don't need this one anymore) and copy all the files from alpha08 build on the card. start the camera, wait a couple of seconds and press the trash button...you should see the ML menu.

post here if you managed to make it work or not




Ah sounds good :) Will try it after my exams ( a little caught up at the moment ).
I guess I missed the boot flag part- as I omitted the step thinking it's only for T2i.

I will edit the wiki once I'm done ( that is successfully tried this out ) so that one doesn't have to go to the T2i page, if that's okay with you guys.


Thanks again.
Title: Re: 500d development
Post by: madnish30 on 24 / February / 2011, 12:04:23


if I'm not mistaken 5DMK2 has only 30p originally but canon made an update that makes the camera shoot @ 24p.  so I think its possible... the only question is how...

Canon lowered the frame rate ?  :blink: Why would they do that ?  ::)  ???



Guys, take your time. no hurries ! And thanks for all the progress till now.
Title: Re: 500d development
Post by: captainjon on 24 / February / 2011, 12:09:52
a diff on the 2 firmwares could help show whether it was a big (code) or small (data) change.
maybe too simplistic, but worth a shot.
Title: Re: 500d development
Post by: bjacklee on 24 / February / 2011, 12:12:18
if I'm not mistaken 5DMK2 has only 30p originally but canon made an update that makes the camera shoot @ 24p.  so I think its possible... the only question is how...
Canon lowered the frame rate ?  :blink: Why would they do that ?  ::)  ???
Guys, take your time. no hurries ! And thanks for all the progress till now.
24p frame rate is very important for film makers... :) it will give a film look to your video. you may try checking this link... http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki (http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki)
Title: Re: 500d development
Post by: madnish30 on 24 / February / 2011, 12:15:25
I see. I was not aware of that  :-[
Thanks  :)
Title: Re: 500d development
Post by: LaLaPico on 24 / February / 2011, 13:01:02
"covered" in the sense of how to do it - not yet.

No, not in a sense in how to do it, but obviously everyone involved with hacking the 500D right now is aware that this is a desired feature, so additional posts requesting this feature are not very helpful going forward.

It's been asked about previously in this thread and responded to --- so why would someone ask for it again just to get the same answer?
Title: Re: 500d development
Post by: captainjon on 24 / February / 2011, 15:08:17
i asked because the firmware patching is a separate task to the add ons - at least thats the
way I thought it would happen. maybe a separate menu task can start recording at 24p as
well, but i think a patch on the existing code would be more likely.

in theory both can be worked on in parallel - if someone had an idea on tackling it.
Title: Re: 500d development
Post by: aznguy on 24 / February / 2011, 15:37:04
I have Created/Edited the 500D Installation, Link Here http://magiclantern.wikia.com/wiki/500D/T1i_Installation (http://magiclantern.wikia.com/wiki/500D/T1i_Installation)
(Updated Link)
and i attached a ZIP file of the Fir so that people dont have to use 7zip to extract the previous archived Fir
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 15:45:11
very nice page, i really like it
Title: Re: 500d development
Post by: Coutts on 24 / February / 2011, 17:06:49
I found the aperture values in memory and updated the lens.h file with the correct values (to what I know, read below).

They seemed to match up almost perfectly with the 550d's lens.h values, except for (from what I could test with my lens):
f/4.5 - The 550d's value for this is 44, but the 500d's is 43 (confirmed with memspy on my camera).
f/13 - The 550d's value is 68, but the 500d's is 67 (confirmed again with memspy).

My lens (sigma 30mm f/1.4) only goes up to f/16, so I can't test any other values at the moment. I added a 0 value so that in the event the camera registers that a lens isn't attached (using some extension tubes, for example), the ML menu will read f/0 instead of f/1.0.
Also I matched up the lens.h aperture values to match the 550d's values (to cover all possible aperture situations), but commented out the aperture values I couldn't test (values my lenses can't do). The usable aperture range in lens.h is now:
Code: [Select]
f/0
f/1.4
f/1.6
f/1.8
f/2.0
f/2.2
f/2.5
f/2.8
f/3.2
f/3.5
f/4.0
f/4.5
f/5.0
f/5.6
f/6.3
f/7.1
f/8.0
f/9.0
f/10
f/11
f/13
f/14
f/16
f/18
f/20
f/22
f/25
f/29
f/32
f/36

The apertures which still need values (to complete the aperture values the 550d lens.h has) are:
Code: [Select]
f/1.2
f/1.3
f/6.7
f/9.5
f/19
f/27
f/38
f/40
f/45

There was sort of a pattern I noticed for the aperture value's, but I'm tempted to just fill them in because of the discrepancies with the two aperture values I found between the 550d and the 500d (that means there could be more, can't guarantee). I'll test with my kit lens tonight and hopefully have the values for f/32 (I think it goes up to f/36, we'll see).

couple things i'm not sure about:
- what happens if someone uses a lens that can't do f/1.4 and try to decrement the aperture setting to it (will ML even let this happen?)
- same case but when someone increments it.
- in movie mode, ML now reports the aperture as 0x00 in the bottom left corner, and 0.0 in the menu (i think it said like f/1.2 before? maybe this could lead to progress in video aperture control? I think the camera acts like the lens isn't attached, maybe some way to bypass this?)

tl;dr
fixed aperture values so now you can select almost the full range of apertures from the menu, and trying to increment the setting higher than you can set in the camera won't cause everything to lock up. Also it will register f/0.0 now if the lens isn't attached instead of saying f/1.2.

UPDATE

see this post for the updated autoexec.bin and lens.h files:
http://chdk.setepontos.com/index.php?topic=5971.msg62240#msg62240 (http://chdk.setepontos.com/index.php?topic=5971.msg62240#msg62240)
Title: Re: 500d development
Post by: aznguy on 24 / February / 2011, 17:29:35
good work!! So this will allow ML to adjust the Aperature values, correct?
Title: Re: 500d development
Post by: Coutts on 24 / February / 2011, 17:38:21
Yes, well it worked kind of before but it should be flawless now (from f/1.4 to f/16), some values aren't worked in yet. I'm working on adding more values right now (just got home from work so I can try it with the kit lens). I'll keep you all updated.

oh and I forgot to mention before, the autoexec.bin file I included above is the latest build from alins, just with the aperture fix I did.
Title: Re: 500d development
Post by: aznguy on 24 / February / 2011, 17:44:56
i just tested out your build, i cant seem to change the aperture value in video mode, when i go into the menu to change it, selecting the aperture settings does nothing, however I can change the ISO settings, but it seems to have no effect at all.
Title: Re: 500d development
Post by: aznguy on 24 / February / 2011, 17:46:22
and does anyone want to catch me up on how to work on the 500D code? my spring break is coming up and I would like to take a crack at it :)
Title: Re: 500d development
Post by: Coutts on 24 / February / 2011, 18:04:35
@aznguy
that's because video related settings aren't worked out yet. This is just for in normal shooting mode.

I just got the following apertures to work:
Code: [Select]
f/18
f/20
f/22
f/25
f/29
f/32
f/36

I updated my previous post with the lists of working / nonworking apertures. I removed the autoexec.bin and lens.h files from that post and are attaching the updated ones here. The lens.h file is only for someone like alins to look at (if he wants to).

-- edit, check farther down the page for the new updated files

I've tested all of the apertures I can with the lenses I own. I'm not sure how we'll get the values for those other odd apertures. We might be able to just use the pattern that seems to develop, but there's no guarantee if they work or not, I'd feel better seeing the numbers in memspy to guarantee they're correct.


Bugs
- if you decrement the aperture setting, it won't wrap back around to the highest aperture setting (unless the lens supports the max aperture currently define [f/1.4])
- the same happens when you increment it, not sure how this could be fixed without ML sensing what lens is attached and knowing the max/min apertures of the lens. It seems to be selecting the aperture in memory but nothing changes. EX: max lens aperture is f/3.5. If you try to set it lower in ML, you can click the decrement button 2 times, but the aperture will still be f/3.5 (ML will report f/3.5 too), but won't change unless you increment it 2 times back. So basically it's selecting ghost settings that aren't visible.
Title: Re: 500d development
Post by: madnish30 on 24 / February / 2011, 20:46:01
I have Created/Edited the 500D Installation, Link Here http://magiclantern.wikia.com/wiki/500D/T1i_Installation (http://magiclantern.wikia.com/wiki/500D/T1i_Installation)
(Updated Link)
and i attached a ZIP file of the Fir so that people dont have to use 7zip to extract the previous archived Fir

Many thanks ! That's what I had planned to do ! But you did it !

Thanks :) Makes life easier for n00bs.
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 21:01:48
The lens.h file is only for someone like alins to look at (if he wants to).

definitely want to look at this one. If you want to make code contributions i can give you access on 500d repository so you can submit your changes directly there.
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 21:04:30
and does anyone want to catch me up on how to work on the 500D code? my spring break is coming up and I would like to take a crack at it :)

when i started i used this instructions: http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D)
the hardest part is installing the arm toolchain. once you have that setup, get the 500d codebase from here: https://bitbucket.org/alins/magic-lantern-for-500d/ (https://bitbucket.org/alins/magic-lantern-for-500d/)

Title: Re: 500d development
Post by: Coutts on 24 / February / 2011, 21:25:49
The lens.h file is only for someone like alins to look at (if he wants to).

definitely want to look at this one. If you want to make code contributions i can give you access on 500d repository so you can submit your changes directly there.
that would be really cool, I have to setup an account first I think though.

I'm working on the shutter speeds now. ML only works with shutter speeds 1/30-1/4000th, nothing slower than 1/30th, so i'm implementing it to work with the slower shutter speeds now.

Once that's all set I'll start trying to add in the "expanded" values by guessing the raw shutter value of each shutter speed, and comparing histograms to see if it actually made a difference or not. any idea if it'll write the custom shutter speeds to exif?

after i get the shutter speeds working I'll start work on the ISO settings and make sure those are all working (and see if I can't get some expanded values in there too).


I've been working on this all day lol. Crazy how fast time flies! Definitely feels good to jump in to this and actually make a contribution. I've never coded C before, but the more I'm working with the code the more I'm starting to understand everything.

Thanks again for getting this started alins (and churchin)!


and does anyone want to catch me up on how to work on the 500D code? my spring break is coming up and I would like to take a crack at it :)

when i started i used this instructions: http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D)
the hardest part is installing the arm toolchain. once you have that setup, get the 500d codebase from here: https://bitbucket.org/alins/magic-lantern-for-500d/ (https://bitbucket.org/alins/magic-lantern-for-500d/)


churchin has a post here that helps you get started with cygwin under windows (that's how I'm doing everything right now):
http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)

Then just edit the make file for everything and fix your bugs as you go. At this point I'm not sure what I did to get everything to work for me, lol. Just happy it's working at this point.
Title: Re: 500d development
Post by: alins on 24 / February / 2011, 21:43:19
that would be really cool, I have to setup an account first I think though.

setting up an account takes few minutes, it doesn't require a lot of information. just a valid email account and that's pretty much it.
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 00:10:10
Another update

This is my latest build, here's the list of changes (including what I did earlier), just to bring everyone up to speed:

- almost full support for all apertures (just weird ones aren't implemented yet, check my previous post. All apertures for the kit lens and my sigma 30mm f/1.4 work now)
- confirmed ISO expansion, seems to be working (including ISO25600), only code I changed was made the menu say AUTO instead of just a 0.
- Shutter speeds are all working, EXIF shows the expanded values are kinda working, not sure how accurate they are yet.
   - added support for shutter speeds slower than 1/30th (550d's shutter speed menu is limited at this), so as a new feature to ML, we have full shutter speed control, all the way down to BULB, from the ML menu :)

So in general I just made things a little more stable and functional. Glad I was able to help so far  :D
 

Here's my latest updated autoexec.bin file and the 2 files I've modified thus far (lens.h and shoot.c, they're zipped up), feel free to take a look at it alins. I'm gonna setup a bitbucket account tomorrow so you can set me up to upload my code as I edit.

alins - I added a big if else statement for the shutter speeds in shoot.c. if you know of a better way to do things, feel free to change it. I'm not sure if the method I used is slow/inefficient or anything. Also I jsut noticed you added my 2 builds to the releases page, I'll stop deleting my posts here and update that page from now on, sorry!


wiki page updated
http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
Title: Re: 500d development
Post by: bjacklee on 25 / February / 2011, 00:49:15
You've done a great job Coutts!! thanks a lot.. i tested your build and it worked.. :) I'll be conducting more test soon and give you some feedback after.. I hope you could implement this feature in video too. :)
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 01:09:06
Glad to hear it's working, I have no clue how the video deal is gonna work. I really don't have much knowledge with all of this, I've just been breaking the code down slowly to try to understand it.

alins- i tried pushing my changes to the repository (i signed up with an account, it's just coutts for the name) but i can't figure this out. what's the method to add an update? hg push says there's no changes found??
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 01:33:05
really nice job coutts :) now i believe you have a better understanding of how much a time sink this project is. it's just too much fun to stay away from the code once you figure out how to make things happen

I gave you rw access to the repository. to push your changes you need first to checkout the code using something like this:
# hg clone https://[email protected]/alins/magic-lantern-for-500d (you will be asked for your password)

add your changes in, than run:

#hg add . (this will add all the changes)
# hg commit (here an editor will open up so you can add your comments)
#hg push (this one is going to ask you for your password)

right now there's no need to push anything, i was getting ready to release a new build myself so i got your changes, submit them to the repository so the new build has them.

changes in this build:
1. i changed the menu fonts again and now everything should fit inside the menu box, no more writing outside the box
2. when you close the menu everything should cleanup. sometimes you need to half press the shutter button for this to happen, i'm still working on figuring out why is not cleaning up everything in the first place. anyway, you should not see any leftovers on the screen
3. i changed the audio menu a little bit: since 500d has only internal mic i removed the option completely and defaulted the code to internal mic. same thing for channels: 500d audio is mono so we don't have channels anyway. please test the audio to make sure i haven't broken any existing functionality
4. i moved the movie menu inside the box so everything lines up. i have no clue if the qscale option works, so please test it and report any problems.

whomever added the new builds in wiki (aznguy or you coutts?) please add this one also as alpha 12 or whatever build number should be.
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 01:43:19
#3 makes me sad...however you guys are rocking this project pretty well. I've been working on 3 websites at once or I'd be doing more tinkering in the code. I did test Q-scale a few builds back and took video trying out each one, then on the computer took screenshots from each video and matched them up to detect quality differences and I did notice some quality difference, however not enough to justify getting a class 10 card for it. My test was pretty ghetto so I never posted it but I'd encourage anyone else to try if they want :)
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 01:45:18
really nice job coutts :) now i believe you have a better understanding of how much a time sink this project is. it's just too much fun to stay away from the code once you figure out how to make things happen

I gave you rw access to the repository. to push your changes you need first to checkout the code using something like this:
# hg clone https://[email protected]/alins/magic-lantern-for-500d (you will be asked for your password)

add your changes in, than run:

#hg add . (this will add all the changes)
# hg commit (here an editor will open up so you can add your comments)
#hg push (this one is going to ask you for your password)

right now there's no need to push anything, i was getting ready to release a new build myself so i got your changes, submit them to the repository so the new build has them.

changes in this build:
1. i changed the menu fonts again and now everything should fit inside the menu box, no more writing outside the box
2. when you close the menu everything should cleanup. sometimes you need to half press the shutter button for this to happen, i'm still working on figuring out why is not cleaning up everything in the first place. anyway, you should not see any leftovers on the screen
3. i changed the audio menu a little bit: since 500d has only internal mic i removed the option completely and defaulted the code to internal mic. same thing for channels: 500d audio is mono so we don't have channels anyway. please test the audio to make sure i haven't broken any existing functionality
4. i moved the movie menu inside the box so everything lines up. i have no clue if the qscale option works, so please test it and report any problems.

whomever added the new builds in wiki (aznguy or you coutts?) please add this one also as alpha 12 or whatever build number should be.
I'll update the wiki page again (that was me that just did it, it was pretty hard to figure out haha.

Can you clear up what you mean that I don't have to update the repository? Did you mean you already updated it with my code? (I don't see it there)

-btw i noticed in the menu it looks like it says OScale, is that a typo or just a problem with the font?
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 01:46:31
#3 makes me sad...

i'm sad too, but i figure this options where actually useless for 500d since they don't actually have any effect
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 01:48:32
Can you clear up what you mean that I don't have to update the repository? Did you mean you already updated it with my code? (I don't see it there)

yes, i updated the repository with your code also. see this changelist: https://bitbucket.org/alins/magic-lantern-for-500d/changeset/e8daf479ad84

some of changes in shoot.c and lens.h are yours right?
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 01:58:42
Can you clear up what you mean that I don't have to update the repository? Did you mean you already updated it with my code? (I don't see it there)

yes, i updated the repository with your code also. see this changelist: https://bitbucket.org/alins/magic-lantern-for-500d/changeset/e8daf479ad84

some of changes in shoot.c and lens.h are yours right?
yup, that's correct. So I don't need to push it out this time since you put your update on, should I just clone the respository again to get the updated code? or what's the correct procedure from here so that I get on board?

by the way I updated the wiki with your latest build.
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 02:07:20
the repository clone (if you have done it correctly, with your username in the URL) should be done just once. after that just run "hg pull" to get the latest changes in your local repository followed usually by "hg update".
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 02:50:29
Wow, lots of progress here :)

The aperture values are different if you select 1/2EV steps or 1/3EV steps in Canon menu. These values work in both modes:

https://bitbucket.org/hudson/magic-lantern/src/tip/lens.h

The trick is that in the last 550D builds, all in-between values are tried (not just the ones which are present in the array), so update aperture_toggle from shoot.c. For display, raw2index_##param from lens.c takes care of in-between values.

If you select an aperture which is not supported, the camera will not change the value (it will report the old value when you read the aperture a bit later). See "aperture_toggle".
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 02:58:58
Wow, lots of progress here :)

The aperture values are different if you select 1/2EV steps or 1/3EV steps in Canon menu. These values work in both modes:

https://bitbucket.org/hudson/magic-lantern/src/tip/lens.h

The trick is that in the last 550D builds, all in-between values are tried (not just the ones which are present in the array), so update aperture_toggle from shoot.c. For display, raw2index_##param from lens.c takes care of in-between values.

If you select an aperture which is not supported, the camera will not change the value (it will report the old value when you read the aperture a bit later). See "aperture_toggle".
my brain is so exhausted after today, I'll re-read that tomorrow when I can comprehend it haha. But I forgot about that 1/3 and 1/2 stop setting..
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 03:09:35
I've discovered that after lots of reports from users, and I was wondering why on my camera it was working perfectly.... (I had 1/2EV setting).

https://bitbucket.org/hudson/magic-lantern/issue/274/ml-aperture-info
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 04:10:44
Guys should the next build be deemed pre beta ? Would just add to the excitement :) And the project has progressed quiet alot.
Title: Re: 500d development
Post by: mrsaccess on 25 / February / 2011, 05:35:00
Hello. I've come across a problem with ML for 500D and a search didn't yield any results.

Despite your advices, I leave the battery in the camera. I am always careful though to make the camera load the original firmware before I stop using it. I do this by removing the ML SD card and booting the camera without an SD or with a normal (non-bootable) SD.

The thing is that some times when I get to the camera after a few hours, the camera doesn't turn on (seems bricked). The battery is a bit warm, indicating that something was working all this time but not on a huge load. If I remove and insert again the battery everything is ok, although the battery has lost most of its charge.

I haven't yet find a constant way to trigger this. It just happens. I have only tried the 1.07 and 1.08 binaries and the problem happened with both.

Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 06:16:25
Hello. I've come across a problem with ML for 500D and a search didn't yield any results.

Despite your advices, I leave the battery in the camera. I am always careful though to make the camera load the original firmware before I stop using it. I do this by removing the ML SD card and booting the camera without an SD or with a normal (non-bootable) SD.

The thing is that some times when I get to the camera after a few hours, the camera doesn't turn on (seems bricked). The battery is a bit warm, indicating that something was working all this time but not on a huge load. If I remove and insert again the battery everything is ok, although the battery has lost most of its charge.

I haven't yet find a constant way to trigger this. It just happens. I have only tried the 1.07 and 1.08 binaries and the problem happened with both.



try with the latest version (1.12) and see if it happens as much. I always just remove my battery and put it back in when I'm done with my camera, just to ensure that the firmware isn't still running anything when the camera seems off (sounds like what could be happening to you).

I'd just remove the battery when you're done as good practice.
Title: Re: 500d development
Post by: aznguy on 25 / February / 2011, 06:51:03
yea, sounds like when i turn on my camera using my ML SD card, i always put in my original and make sure the original is running by taking out the battery a couple of times with the regular SD card in. When I do put in my ML SD card, the camera does not turn on, i have to remove the battery then put it back in. Then the camera will boot ML, this problem seems to occur since the 1.09 build. and it happens up till the recent build as well. Might be a bug if its not just me.

Guys should the next build be deemed pre beta ? Would just add to the excitement :) And the project has progressed quiet alot.


Hmmm, its up to the developers to deem if the build is stable enough to reach Beta Status haha
man its only been a month since things picked up and there has been soo much progress
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 08:10:56
Can someone please explain how the memory addresses work and how far we are with mapping the memory / changing all the memory locations in code to match the 500d? Here's some interesting things I've noticed with memspy:

the format from memspy is (for example of the first one): 14c7c:##:202
 - with the ## changing (usually incrementing) every time a button is pressed, every value seems to do this? not sure of the significance.

manual/auto focus switch on lens:
14c7c
autofocus selected - 202
manual focus selected - 203

battery blinking icon:
19e9c
icon blinks on - 1
icon blinks off - 0

focus confirmation (both in manual focus mode and in autofocus mode):
14c60
focus confirmed - 1010100 (converted from binary is 82)
no focus confirmed - 1010000 (converted from binary is 80)


The next 3 values all seemed to change when the shutter button is pressed halfway, not sure what each one is, I'll try to describe what I found as best I can:

when shutter button is pressed halfway:
19e58
button halfway pressed - 2
button isn't pressed - 3

187e0
button halfway pressed - 9e
button isn't pressed - 1a6

14c38
button halfway pressed - 1010002
button isn't pressed - 1010003



So I don't know what's up with those last 3, but the other ones look pretty solid / promising. I'm just trying to figure out how to implement findings from memspy into the code (the addresses are in way different formats it seems like?).
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 08:15:43
I've saved a few dm log files too but I'm not sure how to decipher those either. Here's a small clip from me pressing shutter button halfway repeatedly:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2F2566zhd.png&hash=d5bb322529edbb67ae8adc7c4800a2a0) (http://i55.tinypic.com/2566zhd.png)

(click image for bigger size).
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 08:21:21
You can add the memory addresses to consts-500d.110.h. Most of the time you would like to do something like this:

Code: [Select]
#define BATTERY_BLINKING (*(int*)0x19e9c)

A second method (which should be a bit more elegant) is to add them to the stubs file:

Code: [Select]
NSTUB( 0x3787c, LV_EX_X)

and then declare them as extern int wherever you want to use them:

Code: [Select]
extern int LV_EX_X;

Make sure the address stays the same between camera restarts; some addresses may be malloc'ed.

To decipher logs, look for the strings in the firmware dump (and this helps you figure out which functions were executed). See also http://magiclantern.wikia.com/wiki/Debugging_Magic_Lantern (http://magiclantern.wikia.com/wiki/Debugging_Magic_Lantern)
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 08:33:50
You can add the memory addresses to consts-500d.110.h. Most of the time you would like to do something like this:

Code: [Select]
#define BATTERY_BLINKING (*(int*)0x19e9c)

A second method (which should be a bit more elegant) is to add them to the stubs file:

Code: [Select]
NSTUB( 0x3787c, LV_EX_X)

and then declare them as extern int wherever you want to use them:

Code: [Select]
extern int LV_EX_X;

To decipher logs, look for the strings in the firmware dump (and this helps you figure out which functions were executed). See also http://magiclantern.wikia.com/wiki/Debugging_Magic_Lantern (http://magiclantern.wikia.com/wiki/Debugging_Magic_Lantern)



thanks for the speedy reply. well, looking at the already existing code, all of the memory addresses in there look like:
Quote

NSTUB(0xFF1BCAA0, GUI_SetBeep);                              //!< End address: 0xFF1BCAD4; Flags: 0x0

and don't seem like the values I'm finding.. are any of these even adjusted for the 500d yet? One more thing: there's a few stubs files in there (two for the 500d), any idea which one is the main one that should be edited?


Oh and I looked at your lens.h file, it didn't look much different from the one I have right now, but I just went ahead and filled in the missing values (it was like filling in a value between 58 and 60, obviously 59 fits, etc). It should be fine. I couldn't see any errors using 1/2 stops instead of 1/3 stops (custom function to adjust that setting, right?).

todays gonna be a long day LOL.
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 08:58:56
You should edit the one mentioned in the Makefile: stubs-500d.110.S. The other one can be deleted. Values like 0xFFxxxxxx are from ROM and are usually function addresses.
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 09:12:45
You should edit the one mentioned in the Makefile: stubs-500d.110.S. The other one can be deleted. Values like 0xFFxxxxxx are from ROM and are usually function addresses.
alright. Well, I'm wondering how they found those addresses in the first place I guess. Just trying to make sense of it all. also does anyone knows what memory values have been found yet? I'm assuming the main buttons at least have to be right since we can use the menu and navigate fine.. hmm.
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 10:31:28
Guys should the next build be deemed pre beta ? Would just add to the excitement :) And the project has progressed quiet alot.


Hmmm, its up to the developers to deem if the build is stable enough to reach Beta Status haha
man its only been a month since things picked up and there has been soo much progress


i was actually having the same thought yesterday...great minds think alike :)

i totally agree that the build is stable enough, next build that we release should be moved to a beta status.
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 10:37:28
Guys should the next build be deemed pre beta ? Would just add to the excitement :) And the project has progressed quiet alot.


i was actually having the same thought yesterday...great minds think alike :)

i totally agree that the build is stable enough, next build that we release should be moved to a beta status.



Exactly :D
Keep up the great work you guys !
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 11:10:18
and don't seem like the values I'm finding.. are any of these even adjusted for the 500d yet? One more thing: there's a few stubs files in there (two for the 500d), any idea which one is the main one that should be edited?


coutts: where a quick primer in stubs.

as alex pointed out the stubs file that is used is this one: stubs-500d.110.S where 110 is the firmware number. If canon where to release a 1.2.0 firmware for 500d we will have to generate a new stubs file that most likely will be named stubs-500d.120.S.

where's this file coming from? well, somebody generate it..i would guess either chuchin or arm.indy generated the one that we use. you can generate stubs using various tools: finsig/gensig tools from CHDK http://chdk.wikia.com/wiki/Signature_finder (http://chdk.wikia.com/wiki/Signature_finder) or http://magiclantern.wikia.com/wiki/GPL_Tools/match.py (http://magiclantern.wikia.com/wiki/GPL_Tools/match.py) are the top two that comes in mind. I haven't tried finsig/gensig myself, the setup is a little bit confusing and complex and i just didn't spend the time to figure it out. I did try match.py but on my setup is crashing with bus error which is a shame since it could really help me figure out the sound meters.

in 500d codebase you will also find a stubs file named something like: stubs500d<don't remember what follows>. This file looks to be a raw generated stub using one of the above tools and is there for reference. sometimes i look into this file to see if it has some address that's not present in the main stubs-500d.110.S.

now, what memory values have been found:
- i will guess most of them are valid. I personally added a few values and/or fix some of them based either on my iDA Pro database or using the stubs500* file that i mentioned or simply trying different values until it works. I was focused on the main features, like making sure the sound device memory address is correct or (with a lot of help from RoaldFre) figure out where the VRAM segment is and how is built (as a result of this we now have zebras support and i'm hoping soon focus peaking).

things that you mentioned (focus confirmation...and all) i haven't checked if the values are correct. If you find that the values are wrong please update the stubs file. I would also like if you don't mind to start adding comments in the stub file for values that we change to specify what the value is used for. I'm hoping this is gonna help the next developer.

about ida pro: here's a starting point for ida pro just to give you an idea: http://chdk.wikia.com/wiki/Loading_dump_to_IDA. (http://chdk.wikia.com/wiki/Loading_dump_to_IDA.) using ida pro _is_ the best way to understand the firmware with couple of issues: the tool is commercial and is not cheap (don't ask me how i got my copy) and second is really really complex (it has to be considering what it does). i personally understand maybe < 5% of what i see in ida pro, usually i just use names or string search, look at xrefs and see if i can figure out whatever i need at the moment. now from ida pro you can generate these IDC files ((think of them like a database of the disassembled firmware in an open format) which can then be queried used open source tools. alex i believe wrote  arm console (search for it in ml wikia) to automate firmware analysis using IDC files (this tool also crashes on my setup with bus error).

one last thing about IDC/ida pro: when you first load the firmware in ida pro, the output that you see is not very "clean". ida pro does it's best to figure out the dump but is not perfect. there are scripts to help cleaning up the output which can help some and there's a LOT of manual work to actually get a "clean" or at least "cleaner" disassemble. arm.indy told me that he spend days manually cleaning stuff.

i hope all these helps

Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 11:17:40
Hey I just noticed the shutter count works :) The only way to get it to show up is to be in movie mode and start to twist your lens off, it will show the screen saying "are you sure there's still a lens attached?" and in the bottom left corner it prints the shutter count (seems accurate too, I'm at 32492, it increments with pictures accurately too).

Another thing I noticed in memspy, de-attaching/attaching the lens triggers the same value as when you flip the auto focus / manual focus switch on the lens, same corresponding values too.

14c7c
202 when switched to AF / lens attached
203 when switched to MF / lens de-attached


i still don't understand what to do with these values. I just keep writing them down.



another thing:
when in live view / movie mode, holding the shutter half down for about 2 or 3 seconds will clear the whole screen (while clearpreview is enabled). is this how it's supposed to act?
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 11:25:00
you can also get the shutter counter if you crash the camera (like trying to change the aperture/shutter speed while recording a movie) :)
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 11:30:50
Good call. Well I think the bit rate setting might be doing something, I took some test videos just now, 1080p @ 20fps (ffffuuu canon, it still blows my mind how they got away with selling a 20fps video camera.. suckered me in I guess..)

anyway my CBR videos were 37-38Mbit/s, while setting the VBR to -16 I had 56-58Mbit/s (even one at 80Mbit/s, but it was only about 3 seconds long :P). I'm just using quicktime to show me the bit rate. I don't know if I notice any difference, I guess I don't fully understand what the bit rate controls? Is it something to do with quality?

And also thank you for the education on that alins. I actually spent all of last night (i didnt' sleep) trying to setup the console..damn thing wouldn't work. no matter what I tried I couldn't get this one python module to install, I worked on it for seriously about 5 or 6 hours straight.

I'll look into IDA Pro and see what turns up in that direction!


I just got an error 70 while playing around with clear view while shooting a video, hm. i'll see if i can reproduce it again.
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 11:43:28
o ya, the console is a b^tch to setup :) i remember that i spent few hours also on getting this to work.  the problem is that some of the packages listed in arm console page don't exist anymore or they are under a slightly different name (at least under ubuntu).

i would guess you have problems with the same python module that i had (the mathplotlib something package). you are on mac right?. i would suggest try and see if you can get the package trough the mac ports or whatever is the name of that package that can be used to install open source stuff. on ubuntu i installed the python-matplotlib package(s) with apt-get and the console start working.
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 11:54:29
To display shutter count, it should work by press MENU and then DISP. This is the documented way (read the PDF from a recent 550D build).

Before messing with properties, read this: http://groups.google.com/group/ml-devel/browse_thread/thread/cce670e003877214/d53add4018eb30f9?show_docid=d53add4018eb30f9 (http://groups.google.com/group/ml-devel/browse_thread/thread/cce670e003877214/d53add4018eb30f9?show_docid=d53add4018eb30f9) (it just scared me a bit)
Title: Re: 500d development
Post by: LaLaPico on 25 / February / 2011, 12:11:41
Rate control would really only benefit 1080p recording, correct? I assume with 720p there would be no benefits to using a higher bit rate for the recording.
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 12:43:25
No, but 24p would be nice. All I really want out of the video features are manual exposure control and 24p.
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 12:56:54
Step up to join the thousand other T1i owners :)
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 13:18:21

anyway my CBR videos were 37-38Mbit/s, while setting the VBR to -16 I had 56-58Mbit/s (even one at 80Mbit/s, but it was only about 3 seconds long :P). I'm just using quicktime to show me the bit rate. I don't know if I notice any difference, I guess I don't fully understand what the bit rate controls? Is it something to do with quality?

i'm guessing you played with qscale here?.  if that's true you can read more about what qscale in 550d use guide: http://magiclantern.wikia.com/wiki/550D/UserGuide#Movie (http://magiclantern.wikia.com/wiki/550D/UserGuide#Movie)

Title: Re: 500d development
Post by: LaLaPico on 25 / February / 2011, 13:23:47
I would hope that, by the time 5DtoRGB (http://rarevision.com/5dtorgb/ (http://rarevision.com/5dtorgb/)) is available for Windows, that there is something figured out (on 24p). Because I believe that 5DtoRGB only improves 1080p videos. But I am unsure of that, because I can't test the program.

It might be the same as rate control --- 720p doesn't benefit of these improvements because the resolution is too small to make these improvements noticeable.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 14:16:04
nice job all! im new to this sort of things. i wanna ask this:
if i install the firmware of magic latern, and it fails, can i install the firmware 1.1.0 off canon website? or is this a fairy tail?
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 14:18:53
Off topic: But the 600D is out. Interesting look at the new features ( think somethings have changed in the video mode ! )
http://www.youtube.com/watch?v=Arr6ZYuabQY# (http://www.youtube.com/watch?v=Arr6ZYuabQY#)
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 14:21:12
nice job all! im new to this sort of things. i wanna ask this:
if i install the firmware of magic latern, and it fails, can i install the firmware 1.1.0 off canon website? or is this a fairy tail?

Yes you can revert back to Canon's firmware, and that would make you DSLR unchanged !
But ML should not fail, if you install it properly.
Hope that helps.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 14:28:18
nice job all! im new to this sort of things. i wanna ask this:
if i install the firmware of magic latern, and it fails, can i install the firmware 1.1.0 off canon website? or is this a fairy tail?

then i will try it now :D thanks!
Yes you can revert back to Canon's firmware, and that would make you DSLR unchanged !
But ML should not fail, if you install it properly.
Hope that helps.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 14:47:31
yey it worked. now i dont understand the buttons? and also when recording i see blue parts?
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 14:52:24
To get magic lantern controls press the erase button ( trash can/waste bin ). The DISP and MENU buttons can be used to change values  :)
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 14:57:29
oke thnx! but... is it normal that when in movie mode-> live view i see transparant blue parts?
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 15:03:20
http://magiclantern.wikia.com/wiki/550D/UserGuide (http://magiclantern.wikia.com/wiki/550D/UserGuide) will explain many features (some not yet on the t1i though). The blue is underexposed areas from zebra mode.
Title: Re: 500d development
Post by: madnish30 on 25 / February / 2011, 15:03:29
From what I understand that might be Zebra at work :) Zebra is a function of Magic Lantern which pops up blue ad red lines when your contrast is too high or too low in specific area of the picture. Do try and turn it off using the ML menu ( pressing the erase button ! )

If it still is there. then perhaps something is not right.. and maybe the devs can help you :)

EDIT: Ah ! pat you were faster than me, here ! :P
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 15:09:19
oke thnx, but i had my first prob: it says i can record longer videos than 20 secs. before i could do the max! i have class4 card and record 720p, so should be oke....
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 15:28:42
Make sure you have q-scale turned off or it will require a larger and faster card.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 15:36:35
maybe i will buy a 16gb class 10 then... thanks for all the work. but a question:
i have treid qscale to -12 and -1. but dont see diffrence? maybe it is my lens(55-250mm)?
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 15:45:01
Didn't notice much difference in my video test either. Possibly try taking video of the same scene in low light. I believe that could be where you notice the most significant change. Try a candle lit scene at different q-scale settings...but one problem with that test is that we can't control the iso the camera automatically assigns so it might not work.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 15:53:45
oke. but how is there any way to contribute to this project. i have experience with html/css and photoshopping. but think you wont need it here.

offtopic:
http://www.computerland.nl/ProductDetails.aspx?en=80000845&src=TWK (http://www.computerland.nl/ProductDetails.aspx?en=80000845&src=TWK) will be the next sdhc card :D
Title: Re: 500d development
Post by: LaLaPico on 25 / February / 2011, 16:01:34
I am almost completely positive qscale will not give ANY benefits to 720p videos, because the extra quality is lost in the lower resolution. You will only see a benefit at 1080p. Even than it probably will not be a dramatic difference.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 16:07:15
oke, but not very much diffrence? it says that:

- 8   ~ 36 Mbps   Class 6/10*   14 min   55 min   close to the original Canon quality, but saving lot
of space on Flash Cards. Best setting to use
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 16:07:59
or -9 or -10 are good too
Title: Re: 500d development
Post by: LaLaPico on 25 / February / 2011, 16:09:40
You're definitely upping the bitrate, which increases the file size, but again, I think the extra bitrate/detail that is recorded is being hidden by the resolution of 720p.
Title: Re: 500d development
Post by: silasje1 on 25 / February / 2011, 16:19:06
oke, i exprienced te same. hopefully there is a way to get the stupid 20 fps @1080p to 25 or something
Title: Re: 500d development
Post by: pat_loonytoon on 25 / February / 2011, 16:58:40
The q-scale does make a difference.
Not the best test but it does show the quality increase as the video plays.
I started at -1 and went up to -16 on both.

[Using a Class 6, 16 gigs, Turbo HC card]
I used levels to bring out the finer noise details.


http://www.youtube.com/watch?v=pjSoRJdCtus# (http://www.youtube.com/watch?v=pjSoRJdCtus#)
http://www.youtube.com/watch?v=gWyQZ5PwjFg# (http://www.youtube.com/watch?v=gWyQZ5PwjFg#)

Light was a Nintendo ds  :D
Title: Re: 500d development
Post by: LaLaPico on 25 / February / 2011, 17:16:35
Well, you would need to compared the first video with a non-qscaled 720p from the same exact spot.
Title: Re: 500d development
Post by: aznguy on 25 / February / 2011, 17:19:08
sweet my SanDisk Ultra 2 Class 4 can handle QScale 10, i wonder what my class 6 can handle hmm..., Ohh and is there a way to add more crop marks? i downloaded some from the 550D pages and they dont show up in the menu
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 18:12:32
I started looking through the 500d firmware dump in IDA Pro today, found 17 memory addresses all pertaining to qscale and a few hdmi (and vga) settings. should I just be recording these in the stubs.s file? I guess I don't know how to implement them. Here's the settings I found today:

Code: [Select]
NSTUB( 0xFF17BCD4, mvrSetQscale)
NSTUB( 0xFF17BCFC, mvrSetQscaleYC)
NSTUB( 0xFF17BD34, mvrSetDeblockingFilter)
NSTUB( 0xFF17BD6C, mvrSetLimitQScale)
NSTUB( 0xFF17BDA4, mvrSetDefQScale)
NSTUB( 0xFF17BDC0, mvrSetTimeConst)
NSTUB( 0xFF17BDDC, mvrSetFullHDOptSize)
NSTUB( 0xFF17BF24, mvrSetHDOptSize)
NSTUB( 0xFF17BF5C, mvrSetVGAOptSize)
NSTUB( 0xFF17BF94, mvrSetGopOptSizeFULLHD)
NSTUB( 0xFF17BFDC, mvrSetGopOptSizeHD)
NSTUB( 0xFF17C024, mvrSetGopOptSizeVGA)
NSTUB( 0xFF17C06C, mvrSetD_FULLHD)
NSTUB( 0xFF17C1A8, mvrSetD_VGA)
NSTUB( 0xFF17C218, mvrFixQScale)
NSTUB( 0xFF17C1E0, mvrSetDefDBFilter)
NSTUB( 0xFF17C238, mvrSetPrintMovieLog)

This IDA stuff is pretty intense... so much to go through. I looked up the AE_MODE_MOVIE_ON andAE_MODE_MOVIE_OFF locations and there were a couple more settings / addresses I'm gonna pull out, maybe something to work with?

how do we implement these settings now? Is the stubs.s file just for our reference? I don't think any files actually access anything in them. Should I just define new prop values for ae_mode_movie_on and off in property.h and implement it from there? still a little confused on all of this.
Title: Re: 500d development
Post by: a1ex on 25 / February / 2011, 18:30:29
Quote
NSTUB( 0xFF17BCD4, mvrSetQscale)

Those are functions. You need to figure out which parameters does it take, and you may try call it. Do not call it until you understand what it does (some of them may be dangerous) and what parameters it takes. It can be risky.

Yes, the value you write in the stubs file is used when you reference that name. The actual code you are calling is in the original firmware (and not duplicated in autoexec.bin).

Quote
AE_MODE_MOVIE_ON and AE_MODE_MOVIE_OFF
These may be messages printed by DebugMsg in the log file, so you can use them to find out which part of code writes them. Then try to understand what that code does.

Properties are a different beast: usually you can find them with prop spy.

Start reading from here:
http://magiclantern.wikia.com/wiki/550d_dev (http://magiclantern.wikia.com/wiki/550d_dev)
http://magiclantern.wikia.com/wiki/2.0.4_AJ (http://magiclantern.wikia.com/wiki/2.0.4_AJ)
Title: Re: 500d development
Post by: Coutts on 25 / February / 2011, 18:51:16
Thanks man. I'm still not sure what I'm looking at but I'm just picking out strings I recognize. I ran some chdk ida file that supposedly cleaned the code up, but I'm not sure if I can tell a difference. It's all just a fun learning experience to me :)

so I need to go back and find the two values associated with each of those things I found before?
Title: Re: 500d development
Post by: chuchin on 25 / February / 2011, 19:32:27
NSTUB( 0xFF17BDC0, mvrSetTimeConst, time const seem to away be related to fps.
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 20:28:09
NSTUB( 0xFF17BDC0, mvrSetTimeConst, time const seem to away be related to fps.

sorry chuchin, mind explaining this a little bit...are you saying by playing with this function you can change the FPS?
Title: Re: 500d development
Post by: chuchin on 25 / February / 2011, 20:55:36
I was looking at some gamers code the other day, and it used term like constant time when it related to frames per second. Don't know if it's the same with canon's code. I think Hudson also tried to use it to change fps. I don't have any of the files with me right now but I think it was in the early debug.c code.
Title: Re: 500d development
Post by: alins on 25 / February / 2011, 23:33:59
yes, i found hudson's code and played with a it a little bit with no luck. the thing is in 5d code he has a struct for movie and i don't know what's the address for it in 500d assuming the struct IS in 500d and is the same
Title: Re: 500d development
Post by: Coutts on 26 / February / 2011, 01:37:26
I ran across a shooting mode address earlier today. One of the variations was for movie. Ill find it tomorrow and pdt the code. Im at a party and a little intoxicated lol can't do anything tonight. I'll post everything at that sub and hopefully someone will be able to figure it out.
Title: Re: 500d development
Post by: silasje1 on 26 / February / 2011, 05:18:20
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi350.photobucket.com%2Falbums%2Fq429%2FSilasje1%2Fclose.jpg&hash=4d1042ddadba294bb2e8b10472d1db3f)
Title: Re: 500d development
Post by: bjacklee on 26 / February / 2011, 09:33:15
@silasje1, any details of your post? :)
Title: Re: 500d development
Post by: pat_loonytoon on 26 / February / 2011, 13:34:03
yeah not sure at what frame he took the pics, about the middle is basically what Canon stock firmware is at normally, last frames are at -16 Q-Scale
Title: Re: 500d development
Post by: Coutts on 26 / February / 2011, 17:19:47
I installed a virtual machine with ubuntu 10.04, and I'm trying to compile the arm toolchain, having some issues.

I used apt-get to install all the prerequisites, but the install failed on openocd first, so I had to use apt-get to just install that.

Now I'm stuck on getting the patch to install. I downloaded the patch file and put it in a /patches/ folder, but the tool chain script is saying this now:

Quote

******************************************************************
* Adding newlib symlink to gcc
******************************************************************
******************************************************************
* Adding libgloss symlink to gcc
******************************************************************
******************************************************************
* Patching gcc to add multilib support
******************************************************************
patching file gcc/config/arm/t-arm-elf
Hunk #1 succeeded at 13 with fuzz 2 (offset -18 lines).
Hunk #2 FAILED at 94.
1 out of 2 hunks FAILED -- saving rejects to file gcc/config/arm/t-arm-elf.rej
Title: Re: 500d development
Post by: alins on 26 / February / 2011, 17:28:16
i'm sorry, i'm not sure i follow. are you saying the toolchain doesn't install ?
Title: Re: 500d development
Post by: alins on 26 / February / 2011, 17:32:50
here's the script that i used to install the toolchain. just call this script and it should do everything for you
Title: Re: 500d development
Post by: Coutts on 26 / February / 2011, 17:42:40
yeah, it fails when it tries to install that patch. frustrating...
the way I'm compiling right now is on my windows box at work with cygwin and yagarto.

hey another thing off topic, i notice the camera doesn't power save now, is that a setting in the ML menu or in the code?

also after I get this compiler working I'm gonna try replacing the aperture_toggle() function with the 550d one, as Alex pointed out before it will take into account all of the in between settings for the aperture so it should work with the different stops that way.

I'm gonna try to get the console to work and see if I can get that dump thing you were talking about before to work, if I can get it to work and get all of the values, that should help speed a lot of things along.

edit
i'm running your script now and so far so good. thanks man. for some reason the file that's linked to from the wiki is a different version (newer, things are setup different) than what's shown on the wiki. your script is the same as the one on the wiki though (you have the older version somehow), so thanks!
Title: Re: 500d development
Post by: Coutts on 26 / February / 2011, 20:09:34
hey by the way for anyone who wants to follow, i'm gonna start documenting what I do on my twitter, so anyone who wants can read along:

http://twitter.com/couttsphotog (http://twitter.com/couttsphotog)

I hardly ever use it so this will work well, it'll just be ML updates.
Title: Re: 500d development
Post by: a1ex on 27 / February / 2011, 03:40:24
Yes, there is a power saving setting in bootflags.c. Turn it off, it's not working as expected anyway. It should leave the camera powered on continuously (e.g. for timelapse), and the most reliable method I've found for this was to emulate half-shutter presses periodically :)
Title: Re: 500d development
Post by: Coutts on 27 / February / 2011, 15:37:43
anyone who wants to compile in a virtual machine, I ran across this post last night and just got it all setup, working so far!

http://groups.google.com/group/ml-devel/browse_thread/thread/145027bd10a1244a?pli=1 (http://groups.google.com/group/ml-devel/browse_thread/thread/145027bd10a1244a?pli=1)

Just email him saying you want to give the virtual machine a stab. You'll have to edit the config file for it to boot, but it's working for me with vmware fusion on my macbook pro. It's just a minimalist ubuntu install with the arm-toolchain already all setup. I've compiled the 550d source just now with no issues.

I'm going to try to setup the arm console now with it, wish me luck!
Title: Re: 500d development
Post by: PhrozeN on 27 / February / 2011, 19:00:47
Glad to see the progress you guys have made so far. I'm kind of new to DSLR's and ML, but installed the latest build and gave it a test drive. Some very nice features are being added to the T1i functionality. With Canon's approach to marketing new cameras instead of adding features to ones that will support them is disappointing. If Canon doesn't develop any further firmware updates (none in the works according to Canon support) is it possible to permanently interface ML into the camera's firmware once development is complete and stable?

Thanks for all your efforts..
Title: Re: 500d development
Post by: bjacklee on 28 / February / 2011, 04:38:54
i think it's possible but the process would be risky... A big chance of bricking your camera.
Title: Re: 500d development
Post by: mrsaccess on 28 / February / 2011, 05:52:30
An interesting -and possible to implement- feature would be to turn the blue LED of the LiveView/Record button to a recording indicator.

For now this LED turns on only when you connect the camera to a printer but I've always thought it would be more useful as a recording indicator.
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 09:33:57
@silasje1, any details of your post? :)

i took the pictures of the video from pat_loonytoon
Title: Re: 500d development
Post by: LaLaPico on 28 / February / 2011, 10:31:30
But those pictures don't really help, since both were comparing videos recorded at different resolutions. It would help to have two videos, taken under the same conditions, but both 720p --- one with qscale, one without.
Title: Re: 500d development
Post by: Squibberling on 28 / February / 2011, 10:31:46
Are you guys running across anything that tells the true shutter counts in the camera?
I understand that canon techs have some kind of proprietary backdoor maintenance software that they use to check this. The numbers must be in the code somewhere.
Title: Re: 500d development
Post by: bjacklee on 28 / February / 2011, 10:34:40
@silasje1, any details of your post? :)

i took the pictures of the video from pat_loonytoon

Oh.. I didn't noticed that.. sorry I thought it was a different sample image.. by the way I tried testing ML video using Qscale -16. I didn't really noticed any difference at all... maybe because I am using 720p resolution.

http://www.youtube.com/watch?v=v9Tf0zPgNOk# (http://www.youtube.com/watch?v=v9Tf0zPgNOk#)
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 11:13:31
nice video! what lens?

but ehm.... i bought an class 10 16gb vid, so will try the qscale soon on 1080p. reports will come later on
Title: Re: 500d development
Post by: PHrag on 28 / February / 2011, 11:17:39
i bought an class 10 16gb vid, so will try the qscale soon on 1080p. reports will come later on
Can record on Q 15 for long time, was 2 minutes and still recorded. 16 can only 3 seconds tho
Are you guys running across anything that tells the true shutter counts in the camera?
press menu, then disp.
You should see it if it's what i think
Title: Re: 500d development
Post by: bjacklee on 28 / February / 2011, 11:19:10
nice video! what lens?

thanks silasje1, im using a kit lens 18-55mm.. :)
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 11:28:47
lol got it too :D but you use AF or MF?? with af it just hunts for focus
Title: Re: 500d development
Post by: bjacklee on 28 / February / 2011, 11:42:57
lol got it too :D but you use AF or MF?? with af it just hunts for focus
Im using MF, I cant trust the AF yet.. :D I'll be making another video comparing all Qscale values for us to identify if there's really a difference in quality.
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 11:56:45
oke thnx! anybody who has treid timelapsing here?

edit:

whit this firmware
Title: Re: 500d development
Post by: PHrag on 28 / February / 2011, 13:31:06
oke thnx! anybody who has treid timelapsing here?

edit:

whit this firmware
Yesterday i shot about 120 shots with 1 minute interval, worked like a charm
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 13:39:22
oke thnx! anybody who has treid timelapsing here?

edit:

whit this firmware
Yesterday i shot about 120 shots with 1 minute interval, worked like a charm

how do you make it to a movie?
Title: Re: 500d development
Post by: Squibberling on 28 / February / 2011, 14:02:47
Will you guys be able to implement the digital zoom seen on the 600d?
Title: Re: 500d development
Post by: PHrag on 28 / February / 2011, 14:11:01
how do you make it to a movie?
any movie editing software, like Sony Vegas
Title: Re: 500d development
Post by: LaLaPico on 28 / February / 2011, 15:12:15

how do you make it to a movie?

I would imagine you just drop and drag all the images into a new project in after effects/vegas/final cut, and then set the time lenght/frame rate.
Title: Re: 500d development
Post by: Coutts on 28 / February / 2011, 16:03:35
got the arm-console setup, i tried to follow the wiki page on it, really not sure what's going on here but I ran the guessfunc.run(ml) command (but replaced ml with t1i), it's been "analyzing BL calls" for a while now.

can anyone provide any more info on using the console / what can be done with it?
Title: Re: 500d development
Post by: silasje1 on 28 / February / 2011, 16:09:51
oke i have sony vegas so, will be trying it soon!
Title: Re: 500d development
Post by: Nathan on 28 / February / 2011, 16:18:56
Hey there! Just tested the latest release. Nice too see the steps forward.
Would it be possible for you to pack complete packages including crops / autoexec.bin and config together for the releases?
It was (even with the new 500d installation guide, thanks for that!) not easy to get all the files together.
I think that making it more easy would make more people test it!
Title: Re: 500d development
Post by: alins on 28 / February / 2011, 17:09:47
got the arm-console setup, i tried to follow the wiki page on it, really not sure what's going on here but I ran the guessfunc.run(ml) command (but replaced ml with t1i), it's been "analyzing BL calls" for a while now.

can anyone provide any more info on using the console / what can be done with it?

first thing: the console takes a long time to analyze things, so it's normal behavior.
second: you will want to run html.full(t1i) which should do a complete analysis on t1i firmware. the full analysis takes a very very long time (couple of days) so you will have to decide if you want to do this or not.

another useful tool that's in the console: http://magiclantern.wikia.com/wiki/GPL_Tools/match.py. (http://magiclantern.wikia.com/wiki/GPL_Tools/match.py.) alex is using this tool to generate the stubs, you may want to look into it.
Title: Re: 500d development
Post by: a1ex on 28 / February / 2011, 17:16:19
Quote
can anyone provide any more info on using the console / what can be done with it?

Besides the browseable HTML analysis and sort of decompiling, I use it often to solve call parameters / register values at various points in the firmware.

Some examples:

Code: [Select]
print deco.decompile(0xFF010424)
bkt.back_solve(0xFF01FFF4, ["ARM.R0", "ARM.R1"])

See the wiki for details, and try the code snippets.
http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console (http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console)
http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console/API (http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console/API)
http://magiclantern.wikia.com/wiki/GPL_Tools/match.py (http://magiclantern.wikia.com/wiki/GPL_Tools/match.py)
Title: Re: 500d development
Post by: Coutts on 01 / March / 2011, 14:52:52
something pretty scary - i just realized (after talking with Alex) that this whole time I've been running ML on v1.0.9

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi56.tinypic.com%2F2irrfaq.png&hash=15c720798343f95b838fa7569273759c)
(mfw i realized this)

i'm surprised/happy it didn't brick. so anyway before I update to 1.1.0, having a 1.0.9 camera, is it worth obtaining a dump of the 1.0.9 firmware before I just throw the latest update on?
if so, is there a dumper for the 500d?
Title: Re: 500d development
Post by: zanak on 01 / March / 2011, 15:05:29
sorry for asking that but how i install that ? exist an easy guide or something like that?
Title: Re: 500d development
Post by: aznguy on 01 / March / 2011, 15:13:54
sorry for asking that but how i install that ? exist an easy guide or something like that?

Yes there is, its on the 500D ML Page on Wikia, http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)
Title: Re: 500d development
Post by: alins on 01 / March / 2011, 16:08:57
Iif so, is there a dumper for the 500d?

There's a dumper in the codebase which doesn't compile. I'm guessing if you can compile it, maybe you can use it to dump the firmware. I have nu clue how you trigger it
Title: Re: 500d development
Post by: Coutts on 01 / March / 2011, 16:16:36
Iif so, is there a dumper for the 500d?

There's a dumper in the codebase which doesn't compile. I'm guessing if you can compile it, maybe you can use it to dump the firmware. I have nu clue how you trigger it
I ran chuchin's FIR posted at the beginning of this thread again (i'm still on 1.0.9), the bootflag part should be the same between firmware versions correct? I mean.. I've been running ML fine despite being on the wrong firmware version lol.

It spit out a 9.4mb bin file though (i must have ignored and deleted it the first time I did this, didn't know anything back then), so I think that's a dump of the 500d 1.0.9 firmware, not sure if it will be of any use but I've got it anyway.
If i upgrade to 1.1.0 and run chuchin's fir again it should spit out a full dump of the 1.1.0 firmware, correct? I know everyone probably already has a copy of this bin but I'm just trying to build up a collection of bins on my computer, just to have them.
Title: Re: 500d development
Post by: alins on 01 / March / 2011, 16:41:59
It spit out a 9.4mb bin file though (i must have ignored and deleted it the first time I did this, didn't know anything back then), so I think that's a dump of the 500d 1.0.9 firmware, not sure if it will be of any use but I've got it anyway.

i believe you are correct. i remember seeing that file the first time i run the FIR file and i did the exact same thing as you (delete it) for the same reason (didn't knew better at the time)
Title: Re: 500d development
Post by: Coutts on 01 / March / 2011, 17:12:13
It spit out a 9.4mb bin file though (i must have ignored and deleted it the first time I did this, didn't know anything back then), so I think that's a dump of the 500d 1.0.9 firmware, not sure if it will be of any use but I've got it anyway.

i believe you are correct. i remember seeing that file the first time i run the FIR file and i did the exact same thing as you (delete it) for the same reason (didn't knew better at the time)

refer to my previous post: I've been running 1.0.9 with ML and it's somehow worked, and I didn't notice I was on the wrong version. So when I ran that FIR earlier, that means I now have a dump of the 1.0.9 firmware. Before I upgrade to 1.1.0, I want to make sure that there's nothing else useful I can do still being on 1.0.9 (I've got a bin now of the 1.0.9 firmware, I'm not sure if that can be used for anything or not).
Title: Re: 500d development
Post by: alins on 01 / March / 2011, 17:51:38
well, i'm not sure either what else you can do in 1.0.9 besides dumping the firmware.

In my opinion as long and the main function addresses and properties didn't change between 1.0.9 and 1.1.0 ML should work on both, which i believe explains why it worked in your case. The potential danger here is if some address that in used in ML written for let's say 1.1.0 is actually something else in 1.0.9 ( something that can cause some serious damage to your camera).

bottom line: you where lucky...

going back to 1.0.9: one thing you can do is use patchdiff2 (http://code.google.com/p/patchdiff2/ (http://code.google.com/p/patchdiff2/)) to diff the 1.0.9 and 1.1.0. i'm not sure what kind of data you will find and how useful it is. i'm pointing out one potential use of having different firmware versions
Title: Re: 500d development
Post by: Coutts on 01 / March / 2011, 20:27:04
well I ran patchdiff2 and it spit out:

Identical functions:        6778
Matched functions:        0
Unmatched functions 1: 173
Unmatched functions 2: 173

so only 173 functions differ between the 2 firmware versions?
Title: Re: 500d development
Post by: alins on 01 / March / 2011, 21:37:07
i have no idea coutts. to tell you the truth, to me it seems like a lot of differences for a minor firmware release.
Title: Re: 500d development
Post by: Coutts on 01 / March / 2011, 22:28:55
the only description on the update was for fixing live view stability and some language changes in some menus.
Title: Re: 500d development
Post by: netpet on 02 / March / 2011, 02:36:46
The Audometer does not work... I am a little confuzzed about versions
it says Magi Latern for 500D but in version is says v 2011Feb24.500d.fw109
else it looks nice.  I am very happy for this delepment..
Title: Re: 500d development
Post by: aznguy on 02 / March / 2011, 02:50:00
The Audometer does not work... I am a little confuzzed about versions
it says Magi Latern for 500D but in version is says v 2011Feb24.500d.fw109
else it looks nice.  I am very happy for this delepment..

yea the developers are aware that it doesnt work, just follow the builds on http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D) and youll have the latest version
Title: Re: 500d development
Post by: Coutts on 02 / March / 2011, 11:33:06
A little off topic of the 500d:
Any idea why the console is bugging out for me? I got to 97% with guessfunc on the 50d dump last night and it said "zerodivisionerror: float division"

now i can't even run the guessfunc command anymore, it just says that right off the bat. any ideas?? i'm trying to get the 50d port started for whoever wants to work on that.
Title: Re: 500d development
Post by: a1ex on 02 / March / 2011, 12:03:14
"zerodivisionerror: float division" says nothing without the context (i.e. where did the error appeared in the code), so we have no idea what happened.
Title: Re: 500d development
Post by: Coutts on 02 / March / 2011, 12:30:52
gah, I think I'm just gonna wait and try to get that virtual machine setup on my friend's server with the 18gb of ram. it says 2 hours left just analyzing bx calls
Title: Re: 500d development
Post by: alins on 02 / March / 2011, 12:35:46
i'm sure you know this, but i just wanted to point out that the 18gb of RAM will be wasted if you don't use a 64bit version of ubuntu (or whatever OS is running inside the virtual machine) since the 32bit cannot access more than 4gb.
Title: Re: 500d development
Post by: Coutts on 02 / March / 2011, 13:39:18
i'm sure you know this, but i just wanted to point out that the 18gb of RAM will be wasted if you don't use a 64bit version of ubuntu (or whatever OS is running inside the virtual machine) since the 32bit cannot access more than 4gb.
this is a problem, i completely forgot about that. well, this virtual machine is only 32-bit, which means i'd have to try to setup a 64-bit vm with the console and toolchain (good luck to me), i'll try to set it up later this week.

alex sent me his copy of the summon-arm-toolchain script he used to compile his environment. The wiki needs to be updated to link to this script (if it works, i'll test later this week), as the script linked in the wiki has changed a lot. If I can figure it out I"ll try to update the wiki or something.

Back to the console errror though, if it does it again I'll screencap and email it to you, but it is almost an intermitted problem. I remebmer getting the error a couple times, then it'd work. weird.
Title: Re: 500d development
Post by: chuchin on 03 / March / 2011, 13:14:30
Here's a dumper that dumps the FF800000 regions. Some properties can be found here.
https://bitbucket.org/Chuchin/magic-lantern-500d/downloads/dumper.7z
Title: Re: 500d development
Post by: vorob on 04 / March / 2011, 08:30:11
Guys, tell me is there anyone who work on 500d firmware? Or i should forget about it?
Title: Re: 500d development
Post by: a1ex on 04 / March / 2011, 08:48:30
Look at the calendar.
Title: Re: 500d development
Post by: silasje1 on 04 / March / 2011, 09:07:20
i use it! it is great. i will test the timlapse setting soon.
Title: Re: 500d development
Post by: madnish30 on 04 / March / 2011, 09:38:26
i use it! it is great. i will test the timlapse setting soon.

You mean intervelometer ?
Title: Re: 500d development
Post by: bkkenny on 04 / March / 2011, 10:49:27
Hello all.
First time poster but I've been following the project for about a month now. Finally had the time/balls to give this a try.
Very impressed with how professional everything looks, a really great piece of work here, thanks to everyone who has worked on this.
One of the things I was most looking forward to was the intervalometer. Upon my first test in manual everything seemed to work very well. However after taking 10 photos, it stopped shooting. I thought that this had been fixed in 1.08; I'm running 1.12. Is there a setting that I need to change manually for this to work?
Regards,
Ben
Title: Re: 500d development
Post by: PHrag on 04 / March / 2011, 11:51:29
However after taking 10 photos, it stopped shooting. I thought that this had been fixed in 1.08; I'm running 1.12. Is there a setting that I need to change manually for this to work?
(i don't know anything about coding, just want to share my experience with ML)
for me, Intervalometer works flawlessly, but ML appears to crash my camera at times. It happens mostly when opening photo viewer (happens too when showing the photo i just shot, it crashes and the photo's gone)/switching to live view, but's it's random, on Wednesday I shot about 200 photos without crash and another day it crashed 2 times between 10 photos (was switching LV on and off to preview). When it crashes, the display is black for a while, I can still half press shutter to focus, and after couple of seconds it restarts self and is OK again. (using 1.12, I think there were no problems with 1.07 and 1.08, but maybe I didn't use them long enough)
Title: Re: 500d development
Post by: madnish30 on 04 / March / 2011, 11:54:48
Hello all.
First time poster but I've been following the project for about a month now. Finally had the time/balls to give this a try.
Very impressed with how professional everything looks, a really great piece of work here, thanks to everyone who has worked on this.
One of the things I was most looking forward to was the intervalometer. Upon my first test in manual everything seemed to work very well. However after taking 10 photos, it stopped shooting. I thought that this had been fixed in 1.08; I'm running 1.12. Is there a setting that I need to change manually for this to work?
Regards,
Ben


On what mode was it ? Works good for long enough fo rme on P.. the problem may be related to Av/Tv not sure.....


Guys, the remote shooting function ( putting hand near the proximity sensor and away from it to trigger ! ) is not working for me on 1.12 any clues why?
Title: Re: 500d development
Post by: silasje1 on 04 / March / 2011, 12:49:46
i use it! it is great. i will test the timlapse setting soon.

You mean intervelometer ?

yep :P
Title: Re: 500d development
Post by: bkkenny on 04 / March / 2011, 13:10:11
I've tested 1.08 and 1.12, both versions just took 10-13 shots before stopping. I was using manual. The camera didn't freeze, just stopped taking pictures...

for me, Intervalometer works flawlessly
Were you using manual mode?
Title: Re: 500d development
Post by: PHrag on 04 / March / 2011, 15:03:56
Were you using manual mode?
I used Av mode.
Title: Re: 500d development
Post by: silasje1 on 04 / March / 2011, 15:13:34
is P good to? to use intervalometer?
Title: Re: 500d development
Post by: vorob on 04 / March / 2011, 16:29:04
Wow there are already some beta versions! Incredible.

Installed latest one, tried to understand menu but failed.

Tell me, can i control aperture and iso in video mode, or its not implemented yet? Tried in expo mode to press "set" several time to have 3200 iso but no change on screen.

Apperture was on 0.0 and its impossible to change.

p.s. any theoretical possibility for 30fps mode in 1080?
Title: Re: 500d development
Post by: pat_loonytoon on 04 / March / 2011, 17:21:22
No manual controls in video mode yet...as many have previously mentioned.
Same goes for 30fps.
Title: Re: 500d development
Post by: alins on 04 / March / 2011, 17:33:42
Wow there are already some beta versions! Incredible.

not as far as i know. where did you find beta versions?
Title: Re: 500d development
Post by: theplague on 04 / March / 2011, 19:03:26
What's the difference between Coutts and Alins version?
If I downloaded the latest version from here (http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)) it will contain all features from all different developers?
Thanks!
Title: Re: 500d development
Post by: Canon_let_down_again on 04 / March / 2011, 19:47:09
I'm very impressed with the sudden development of the mod but I'm surprised that there is so  much interest in enhancing the features of the poor camcorder aspects of the 500D.

I bought the 500D as a still camera; I have almost no interest in using the camera as a reasonable quality camcorder - I can/would have bought a more appropriate alternative for less to compliment this model if that was a concern.

I'd prefer the development of the mod to concentrate on enhancing the primary purpose of the D-SLR.
Title: Re: 500d development
Post by: alins on 04 / March / 2011, 21:32:17
If I downloaded the latest version from here (http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D)) it will contain all features from all different developers?

yes!..if you download and install the latest build you will have all the features across all different developers
Title: Re: 500d development
Post by: vorob on 05 / March / 2011, 04:35:28
I agree with you Canon_let_down_again, but i don't see any problem with photomode on 500d:)
Title: Re: 500d development
Post by: Canon_let_down_again on 05 / March / 2011, 16:06:57
I agree with you Canon_let_down_again, but i don't see any problem with photomode on 500d:)

I agree regarding photo-mode - I have no regrets with buying the 500D in performance terms as a still camera but I feel let down by the lack of on-going development via firmware updates, adding extra features such as the time-lapse facility and no doubt some others that have appeared in models released not much later such as the 550D and now the 600D.

Obviously the hardware differences such as the higher resolution sensor are distinct but there are some software features that could be aded easily by Canon - they release new models forcing expensive hardware changes opposed to offering existing (and typically loyal) users, willing to compromise in the short term, an opportunity to benefit from ongoing software development that isn't specifically tied to the new hardware.
Title: Re: 500d development
Post by: Samsongas on 05 / March / 2011, 17:06:42
@Canon_let_down_again
I used a 500D to record a full-lenght movie. Better focus on fixing the video than adding features of bridge cameras (such as HDR or Panoramic).
All that things you can fix them by software easily, but explain me hoy do you can fix an aperture or the shutter speed with any program.
I don't agree with you, the primary pourpose of an DSLR is RAW photo with manual settings (and change objective, for sure), and it's done.
Title: Re: 500d development
Post by: Canon_let_down_again on 05 / March / 2011, 17:23:32
@Canon_let_down_again
I used a 500D to record a full-lenght movie. Better focus on fixing the video than adding features of bridge cameras (such as HDR or Panoramic).
All that things you can fix them by software easily, but explain me hoy do you can fix an aperture or the shutter speed with any program.
I don't agree with you, the primary pourpose of an DSLR is RAW photo with manual settings (and change objective, for sure), and it's done.

I didn't mention bridge Cameras; you seem to have missed my point.

If I wanted video at all, I'd have bought a dedicated video camera/camcorder not a DSLR. I bought the 500D for still images  only and have always been frustrated that the lower to middle end DSLR market has bought into compromise by attempting to service two very different markets rather than addressing one or the other specifically - the R&D budget is limited and if you mix formats, both are compromised.

Granted, the 500D is thankfully targeted at the still image market but it offers video in a compromised format; the fact that you are here, demonstrates that it could be better, whether your interest is video or still capture.

Title: Re: 500d development
Post by: pat_loonytoon on 05 / March / 2011, 17:48:00
let's remember, subject is 500d development...
Alins, Chuchin, A1ex, any developments?
Title: Re: 500d development
Post by: alins on 06 / March / 2011, 02:07:52
i haven't' had time to do any development...sorry
Title: Re: 500d development
Post by: a1ex on 06 / March / 2011, 03:54:38
On 550D, those are features specific for photo mode: trap focus, very long exposures (up to 8 hours), exposure bracketing, focus stacking, remote release without any external devices, slit-scan pics, flash exposure compensation (-10EV...+3EV), flash toggle (take a pic with flash, next without flash and so on), auto mirror lockup (coupled with self-timer), auto-adjust pic quality in burst mode for speed...

Common to photo and video: all exposure helpers (zebra, false color, spotmeter), focus peaking, intervalometer, zoom enabled on face detection, all ISO/shutter/whatever adjustments from Expo menu...

Check the 550D user guide for a quick reference (see attachment).

Of course, not all these features are ported to 500D yet, but I'm sure they will be.

Title: Re: 500d development
Post by: silasje1 on 06 / March / 2011, 08:59:53
how can i help making this firmware better? would like to help you guys, but i am not known with this sort of things
Title: Re: 500d development
Post by: a1ex on 06 / March / 2011, 09:19:45
Start here: http://magiclantern.wikia.com/wiki/For_Developers (http://magiclantern.wikia.com/wiki/For_Developers)
Title: Re: 500d development
Post by: silasje1 on 06 / March / 2011, 10:02:06
will check it. thanks
Title: Re: 500d development
Post by: silasje1 on 06 / March / 2011, 10:29:02
request: panorama mode! would like to shoot a very wide pic of something :p :D

or must i just make it fit in photoshop whit 5 diffrent pics?
Title: Re: 500d development
Post by: a1ex on 06 / March / 2011, 10:31:44
You can use Hugin for that, or get a fisheye lens :)
Title: Re: 500d development
Post by: Canon_let_down_again on 07 / March / 2011, 20:29:09
request: panorama mode! would like to shoot a very wide pic of something :p :D

or must i just make it fit in photoshop whit 5 diffrent pics?

IMPORTANT - Shoot each frame with the same exposure and overlap them - use a tripod - most modern post-processing software will have a facility to compose a panoramic image almost automatically using your images.

As you mentioned, Photoshop will do the job and as a1ex suggested, Hugin ( http://hugin.sourceforge.net/ (http://hugin.sourceforge.net/) ) is a free alternative - there are others, just Google for the terms.  :)
Title: Re: 500d development
Post by: barbar84 on 07 / March / 2011, 20:41:18
Hey. Loving the progress made so far guys. Really appreciate the effort. Hope something can happen with manual video controls at some stage.

Just a quick question about about the cropmarks. Has anyone tried and had any success using custom cropmarks?

Another question, before canon added 24p in there firmware update for the 5d mark II, had magic lantern added this feature? Just trying to get an idea of whats actually possible in the long run.

again thanks for all the time all of you are putting in here.
Title: Re: 500d development
Post by: vorob on 08 / March / 2011, 10:49:31
I just have one question, is there any hardware limitations for 30fps 1080p mode? Or its just software block?

Title: Re: 500d development
Post by: alins on 08 / March / 2011, 15:40:50
I just have one question, is there any hardware limitations for 30fps 1080p mode? Or its just software block?

very good question...i'm inclined to say it is a software block just because it seems a lot simpler to implement (which of course brings the next question assuming it's a software block: for crying out loud why??) than a hardware block, but i have no clue which one it is.
Title: Re: 500d development
Post by: DjGRuff on 09 / March / 2011, 17:26:18
Is so great to see how the developments have progressed with this firmware hack!

Here is few try with Intervalometer in Manual Mode:

http://www.youtube.com/watch?v=hYGsimoVEUo# (http://www.youtube.com/watch?v=hYGsimoVEUo#)

I'm so happy with this feature!
I can't wait for the various manual settings in the video mode, than i will explode for happyness.  :D
Title: Re: 500d development
Post by: alins on 09 / March / 2011, 19:28:14
very nice job, thank you for posting this.
Title: Re: 500d development
Post by: bkkenny on 09 / March / 2011, 19:57:47
Here is few try with Intervalometer in Manual Mode:
May I ask whether you changed any other settings? I've tried using the intervalometer in manual (v1.12) and it would only take 10 or so shots...
Title: Re: 500d development
Post by: DjGRuff on 10 / March / 2011, 05:24:12
very nice job, thank you for posting this.

You are welcome!  :)

May I ask whether you changed any other settings? I've tried using the intervalometer in manual (v1.12) and it would only take 10 or so shots...

I had the same problem when i tried for the first time but with 16 shots.
I became a completely black screen, then i removed the battery out and again in.
Then i have tried again with intervalometer and it worked flawless and without limitation.
When this function is active, it shots so many photos until you stop manually or until the memory card is full, for stop the process you must push "play" o "menu" button.
Title: Re: 500d development
Post by: barbar84 on 10 / March / 2011, 10:03:23
Hey there folks. Incase theres anyone who can answer and might have missed it, has anyone got cropmarks working?
Title: Re: 500d development
Post by: aznguy on 12 / March / 2011, 16:58:10
Crop marks are working just make sure you have the files for it
Title: Re: 500d development
Post by: barbar84 on 13 / March / 2011, 19:19:01
Crop marks are working just make sure you have the files for it

Thanks aznguy, have you any suggestions of sites with cropmarks for download, can I just use any of the ones for the 550d?
Title: Re: 500d development
Post by: aznguy on 13 / March / 2011, 19:34:02
You can download it in the 1.08 Firmware, link here  http://chdk.setepontos.com/index.php?action=dlattach;topic=5971.0;attach=4525, (http://chdk.setepontos.com/index.php?action=dlattach;topic=5971.0;attach=4525,) just copy the cropmark files and use the most recent firmware version which is 1.12
Title: Re: 500d development
Post by: barbar84 on 13 / March / 2011, 22:35:36
That worked aznguy, thanks. still cant seem to load new cropmarks though. any suggestions?
Title: Re: 500d development
Post by: aznguy on 14 / March / 2011, 01:31:11
im not sure about new crop marks because i tried doing so myself, im assuming that they coded the firmware to run with certain files and you cant add more, alins any ideas?

and try renaming your new crop mark files to the ones that already exist and replace them. that might work but your still limited to 3 then.
Title: Re: 500d development
Post by: alins on 14 / March / 2011, 02:26:34
yes, for now the filenames are hardcoded in ML. you should definitely be able to use different crop marks as long as you keep the file names and yes, you are limited to 3.
Title: Re: 500d development
Post by: barbar84 on 14 / March / 2011, 13:48:21
Thanks guys, that worked well. Wouldn't work well last night for 2 hours, first time thismorning, guess thats how these things go.
Title: Re: 500d development
Post by: aznguy on 14 / March / 2011, 16:42:14
Im uploading the crop marks separately and then posting the link on the wiki page so that people wont have confusion about it anymore.
Title: Re: 500d development
Post by: andrepk on 14 / March / 2011, 17:02:35
Hey guys. Are there any news on the development?I downloaded the Hack two weeks ago and I really like it. I Have to say that there are some bugs in the software and some other features I would like to see aswell..(720p @60fps?..Manual video controls) but you guys have done a very good job!
Title: Re: 500d development
Post by: zanak on 15 / March / 2011, 08:23:09
Hello here Aperature Changes and shutter speeds is not changing i did something rong ? or istill not working ?
and sorry about my english
Title: Re: 500d development
Post by: zanak on 15 / March / 2011, 08:28:04
and congrats for development :-) its realy nice ... maybe a lite version can be done too ... i am not professional and maybe a magic lantern fot t1i with only manual controls for iso, shuter, iris and qscale would be nice on video well ... for me would be very nice :-)
Title: Re: 500d development
Post by: aznguy on 15 / March / 2011, 10:48:36
ap and shutter does not work in video mode yet
Title: Re: 500d development
Post by: a1ex on 15 / March / 2011, 15:09:51
Some test code for you:

Code: [Select]
#define PROP_AE_MODE_MOVIE 0x8000003a

PROP_INT(PROP_AE_MODE_MOVIE, ae_mode_movie);

void exp_test(void* priv)
{
bmp_printf(FONT_LARGE, 0, 0, "%d", ae_mode_movie);
msleep(2000);
int x;
if (ae_mode_movie == 0) x = 3;
else if (ae_mode_movie == 3) x = 0;
else return;

prop_request_change(PROP_AE_MODE_MOVIE, &x, 4);
}

On 550D, it toggles between manual (3) and auto (0) movie exposure mode. Not sure if other values are valid. This property is referenced from SetAeModeMovieToStorage. This function is not present in 500D firmware, so I'm not sure it will work, but I think it's worth trying.
Title: Re: 500d development
Post by: chuchin on 16 / March / 2011, 00:32:55
Alex, I couldn't get your code to work. Maybe someone else can. It looks like Trammell got movie manual exposure exposure to work.   http://chdk.setepontos.com/index.php?topic=3637.0. (http://chdk.setepontos.com/index.php?topic=3637.0.)    line 1044, this was way back with firmware 107. In the magic lantern release 0.0.5 he use this code

static const char __attribute__((section(".text"))) pc_buf_raw[4*1024];

// mvr_struct 0x1ee0
// Movie starts recording, r4->0x3c( r4->0x40, 0, 0 )

void my_sleep_task( void )
{
   int i;
   dmstart();
   thunk smemShowFix = (void*) 0xff82a90c;
   dm_set_store_level( 0x80, 0x16 );
   smemShowFix();

   //uint32_t lr = read_lr();
   msleep( 2000 );
   //dump_vram();
   //dumpf();

   // Try enabling manual video mode
   uint32_t enable = 1;
   EP_SetMovieManualExposureMode( &enable );
   EP_SetDebugLogMode( &enable );
   EP_SetLVAEDebugPort( &enable );

   //thunk t = (void*) 0xFFBDDB50;
   //t();
   //my_tab_header_app();

   // Kill the LVC_AE task
   //KillTask( "LVC_AE" );
   //thunk lvcae_destroy_state_object = (void*) 0xff83574c;
   //lvcae_destroy_state_object();

   //dispcheck();

   //dumpf();
   dmstop();

   //struct dialog * dialog = dialog_create( 0, 0x1a, test_dialog, 0 );
   //dialog_draw( dialog );

   void * file = FIO_CreateFile( "A:/TEST.LOG" );
   if( file == (void*) 0xFFFFFFFF )
      return; //while(1);

   //FIO_WriteFile( file, &lr, sizeof(lr) );

   dumpentire();

   for( i=0 ; i<6 ; i++ )
   {
      FIO_WriteFile( file, pc_buf_raw, sizeof(pc_buf_raw) );
      msleep( 1000 );
   }

   FIO_CloseFile( file );
}

I also had no luck with this code, please advice
Chuchin
Title: Re: 500d development
Post by: alins on 16 / March / 2011, 02:49:27
i could and is not working, unless i'm not doing the right thing. what i did is: in movie mode run the code that alex posted (through a debug menu entry) than try to change the aperture...and the aperture did not changed.

two things i can change in movie mode: iso and white balance. the shutter and aperture i can't change yet.
Title: Re: 500d development
Post by: a1ex on 16 / March / 2011, 04:19:59
Does the property change from 0 to 3 and back? (displayed in upper-left corner)

Were you able to change ISO before? (I don't know how 500D works)

It may be worth trying to set that property to 1 or 2... not sure if it's safe to do.

Chuchin: Trammell's code is identical to call("lvae_setmoviemanualcontrol",1); except for debugging info.
Title: Re: 500d development
Post by: zanak on 16 / March / 2011, 08:42:01
500d not able to change nothing on video.... its all automatic....
Title: Re: 500d development
Post by: vorob on 16 / March / 2011, 08:48:41
Guys i have a serious problem, i deleted firmware but DISKBOOT flag i left in camera. I took  few photos and turned off camera. When i took it after few hours it was warm! and battery was discharged!

No firmware, just this thing was left

"Uninstalling ML from the camera Edit
You don't have to do this unless you are asked to do so by ML developers. For most users, formatting the card will be enough to uninstall ML.
If you know what you are doing, put this in magic.cfg to reset the DISKBOOT flag from the camera:"

I'm really worried.
Title: Re: 500d development
Post by: a1ex on 16 / March / 2011, 08:55:00
You could at least read the text in bold from the install guide...

"WARNING - Do not put an "prepared" (bootable) card without autoexec.bin in the camera (it won't boot and you'll have to take the battery out). "

"Don't just delete the Magic Lantern files from the card! If you do, the camera won't boot and you'll have to take the battery out. "

Now boot the camera without card, and then format the card.
Title: Re: 500d development
Post by: vorob on 16 / March / 2011, 08:58:37
I deleted firmware 1 week ago and formated card in camera. And i didn't met

"If you encounter a "locked up" camera"

Will try again but... I'm worried now cause it was in this state for an hour.
Title: Re: 500d development
Post by: vorob on 16 / March / 2011, 08:59:35
"spending a few seconds wont harm your camera but waiting a couple of minutes will."

what exactly is overheating? Cpu or sensor?
Title: Re: 500d development
Post by: vorob on 16 / March / 2011, 09:07:40
Now i turned on camera without flashcard. Inserted flashcard while camera was on. And made lowlevel format. Is it enough?
Title: Re: 500d development
Post by: a1ex on 16 / March / 2011, 09:30:23
Problem solved :)
Title: Re: 500d development
Post by: vorob on 16 / March / 2011, 09:50:23
Well i was doing low level format back then and still camera was overheating. No logic.
Title: Re: 500d development
Post by: alins on 16 / March / 2011, 10:47:23
Does the property change from 0 to 3 and back? (displayed in upper-left corner)

Were you able to change ISO before? (I don't know how 500D works)

It may be worth trying to set that property to 1 or 2... not sure if it's safe to do.

Chuchin: Trammell's code is identical to call("lvae_setmoviemanualcontrol",1); except for debugging info.


I didn't see anything in the upper-left corner. i will try different values, see if something works. I "believe" i was able to change ISO before, now i'm not 100% sure..will have to test some more.

Trammell's code is using  EP_SetMovieManualExposureMode for which we _do_ have an entry in stubs. i also tried using this one and nothing so far. I was thinking to pass different values for  EP_SetMovieManualExposureMode, i tried only passing 0 and 1.
Title: Re: 500d development
Post by: RoaldFre on 16 / March / 2011, 12:14:06
Judging by the disassembled code, passing a zero should give you this output in the debug log

[LVAE] EP_SetMovieManualExposureMode() >> OFF

and passing any other value should give

[LVAE] EP_SetMovieManualExposureMode() >> ON

However, the explicit value you send does get stored at some struct at 0x16828, with an offset of 0x5C within that struct (so at 0x16884, if I understand the disassembled code correctly). Maybe that gets read somewhere else and it does matter what actual value you send (but I doubt it tbh).



There is also a EP_SetManualExposureMode function at 0xFF203C04 which takes a similar argument (did not find this in the stubs file at alins' repository. That file looks very incomplete(?), there are a couple more EP_* functions in that address range). Maybe that has some effect? It sets a value in the same struct, but at offset 0x58.
Giving it a 0 should log:
[LVAE] EP_SetManualExposureMode() >> OFF
anything else should give:
[LVAE] EP_SetManualExposureMode >> ON
(yes, without the parentheses :P)
Title: Re: 500d development
Post by: alins on 16 / March / 2011, 12:32:33
i've seen EP_SetManualExposureMode and i tried passing 1 without any effect. I did NOT check the debug log, i will do that tonight, see if something is written there.

If you follow the xref to EP_SetManualExposureMode you will find a more complex subroutine that does a whole bunch of things, one of them being EP_SetManualExposureMode... haven't called this one because i believe it requires two parameters and i don't know yet what i need to pass
Title: Re: 500d development
Post by: alins on 16 / March / 2011, 22:30:08
Judging by the disassembled code, passing a zero should give you this output in the debug log

[LVAE] EP_SetMovieManualExposureMode() >> OFF

and passing any other value should give

[LVAE] EP_SetMovieManualExposureMode() >> ON


you where right, i see this in the log:

 4583: 24066.870 [LVAE] EP_SetMovieManualExposureMode >> ON

now what?
Title: Re: 500d development
Post by: alins on 16 / March / 2011, 23:48:30
just for reference here's the code that i used to play with this:

Code: [Select]
static void
test_movie_manual_exp(void * priv)
{
    msleep( 2000 );
    //dump_vram();
    //dumpf();

    DEBUG("JUST BEFORE ENABLING MOVIE MANUAL MODE");

    // Try enabling manual video mode
    uint32_t enable = 1;
    EP_SetDebugLogMode( &enable );
    EP_SetLVAEDebugPort( &enable );
    EP_SetMovieManualExposureMode( &enable );
}

and yes, i see in the log: [LVAE] EP_SetMovieManualExposureMode() >> ON no matter what value i pass
Title: Re: 500d development
Post by: vorob on 18 / March / 2011, 14:29:20
Guys, if open card slot and take off sd card and then, leaving tray opened, i turn on camera it won't start. And no matter what i'll do after it nothing will happen. If i turn it off and close tray, if i insert card... anything. Camera won't boot untill i'll take off battery.

What is it? Consequence of changing bootfag?
Title: Re: 500d development
Post by: aznguy on 18 / March / 2011, 17:10:42
hmm looks like im not the only one who experienced that, any thoughts alins?
Title: Re: 500d development
Post by: Squibberling on 18 / March / 2011, 17:28:48
Can you guys make fine adjustments to the intervalometer so that it triggers every 0.5 seconds?
Title: Re: 500d development
Post by: zanak on 19 / March / 2011, 22:10:01
just use the program to remove the boot flag of the card ... you had to download that to set the sd card bootable remember?
Title: Re: 500d development
Post by: barbar84 on 22 / March / 2011, 18:58:54
Getting kinda quiet around here. Any updates from anyone?
Title: Re: 500d development
Post by: aznguy on 25 / March / 2011, 08:45:15
hmm feels soo stagnant, anybody still checking this forum?? i checked the dl count for the current version and it has almost 1000 downloads, it reached alot of people haha

we should have a donation via paypal or something for the developers, as an incentive to keep going?
Title: Re: 500d development
Post by: andrepk on 25 / March / 2011, 13:35:30
same
Title: Re: 500d development
Post by: mrsaccess on 25 / March / 2011, 20:16:29
hmm looks like im not the only one who experienced that, any thoughts alins?

I have this problem too and generally my camera use the batteries way more quickly than before. I am thinking of removing magic lantern for now entirelly (disable the boot flag).
Title: Re: 500d development
Post by: PHrag on 26 / March / 2011, 06:12:35
I have this problem too and generally my camera use the batteries way more quickly than before. I am thinking of removing magic lantern for now entirelly (disable the boot flag).
I don't think my battery life was lower, but because of the crashes (I described them before) I formated my SD card and it's running fine w/o ML, I kept the bootflag.
Title: Re: 500d development
Post by: mrsaccess on 26 / March / 2011, 07:49:51
I was running my camera too without ML (and just the bootflag) for the last 4 weeks but the problems (battery consumption, often the camera won't start if you remove and insert again the SD card) remained.

I removed yesterday the bootflag. The problem with the camera not booting after I remove the SD dissapeared. For the battery consumption I'll have to try it for a few weeks, just to be sure that it wasn't my batteries giving up.
Title: Re: 500d development
Post by: aznguy on 26 / March / 2011, 17:52:54
this is just odd now, I would pick up my camera and turn it on and nothing would happen. Turns out my battery kept being drained even when the camera was off... what the heck... why is this happening only recently? Happened twice already even though i'm sure that the battery was still charged when I put away my camera. (this is without using the memory card with ML on it, I store my camera with a regular card)
Title: Re: 500d development
Post by: pat_loonytoon on 27 / March / 2011, 23:02:14
always make sure to eject the battery for a few seconds after turning off the camera, that way any processes will really have no power to keep running.
Title: Re: 500d development
Post by: C0smo on 28 / March / 2011, 08:27:01
Hi Guys,

is it possible, to change the GUI of the Canon 500D (better say the Overlay from ML) ...... ?

I have a problem if i have turn off the Autofocus, the MF in the Display is behind a block.
What for a file must be edit in the Sourcecode to change the Overlay Positions in the Overlay GUI ?
And the LDC remot shoot dont work on my 500D .... what can i do ? Any Idea ?


Best regards

C0smo

PS: Sorry for my bad english
Title: Re: 500d development
Post by: madnish30 on 28 / March / 2011, 10:57:27
For me the bulb time feature ( shutter lock using ML ) is not working. What i do is got o M and set the camera to bulb mode then I go to ML menu and set Bulb time to lets say 60mins and then press DEL again.. and nothing happens.. I hit the shutter too and again nothing happens it shoots for the amount of time I hold the shutter...
What Am I doing wrong ?

Also the shooting function using proximity also ( LCD sensor shooting in which you don't have to touch the trigger ) is also not working, it used to work on earlier builds and help please ?
Title: Re: 500d development
Post by: andrepk on 28 / March / 2011, 14:08:03
Use the bulb timer in comination with intervallometer or audio remote shooting..that worked for me:)
Title: Re: 500d development
Post by: madnish30 on 28 / March / 2011, 14:19:43
Use the bulb timer in comination with intervallometer or audio remote shooting..that worked for me:)

Thanks ! Will try ! BTW does aurdio meter work otherwise ? And does your LCD proximity sensor trigger works ?
Title: Re: 500d development
Post by: andrepk on 28 / March / 2011, 14:45:06
Audiogain does work for me, but the Audio meter and the lcd-thingy do not.
Title: Re: 500d development
Post by: PHrag on 28 / March / 2011, 15:43:41
Thanks ! Will try ! BTW does aurdio meter work otherwise ? And does your LCD proximity sensor trigger works ?
Both audio meter and LCD trigger DON'T work. (and never did for me, same with the noise-trigger, don't know how you got it to work, never knew it was working)
Title: Re: 500d development
Post by: andrepk on 28 / March / 2011, 15:53:50
I have a question... what is rack focus/stack focus for?
Title: Re: 500d development
Post by: pat_loonytoon on 28 / March / 2011, 16:52:20
maybe the devs left because people keep asking silly questions. For a list of what features do go to http://magiclantern.wikia.com/wiki/550D/UserGuide. (http://magiclantern.wikia.com/wiki/550D/UserGuide.) Also if you have an issue you can try https://bitbucket.org/alins/magic-lantern-for-500d/issues (https://bitbucket.org/alins/magic-lantern-for-500d/issues) to see if it's already being worked on.
Title: Re: 500d development
Post by: madnish30 on 29 / March / 2011, 00:55:49
Thanks ! Will try ! BTW does aurdio meter work otherwise ? And does your LCD proximity sensor trigger works ?
Both audio meter and LCD trigger DON'T work. (and never did for me, same with the noise-trigger, don't know how you got it to work, never knew it was working)

Never got it working in the latest build, it was working in one of the previous builds.

BTW I have not read through the previous pages. Why has development stopped ?
Title: Re: 500d development
Post by: alins on 29 / March / 2011, 02:07:43
development hasn't stopped, just slowed down lately. i'm pretty busy now with my day job so i didn't had time to do any development. I do read this forum almost daily :)
Title: Re: 500d development
Post by: pat_loonytoon on 29 / March / 2011, 03:06:23
I check here daily as well, mostly to keep up with progress and questions
Title: Re: 500d development
Post by: andrepk on 29 / March / 2011, 10:21:32
same
Title: Re: 500d development
Post by: Coutts on 29 / March / 2011, 12:37:18
i got burned out when I tried to dive into things. it's way over my head lol. has anything big happened lately?
Title: Re: 500d development
Post by: alins on 29 / March / 2011, 16:00:40
i got burned out when I tried to dive into things. it's way over my head lol. has anything big happened lately?

This low level stuff is definitely out of my comfort zone, i never liked playing with bit masks and stuff as a result portions of ML code is just alien to me. Also ML code is pretty much undocumented which makes things a few orders of magnitude harder. I remember the first time i looked at the audio code i was thinking: whomever figure out this gazilion registries couldn't put a damn comment in the code what each thing does or at least a link to the documentation ?. (i'm sure somebody will point out that everything can be found on the mailing list..please don't)

my point is this: don't let it overwhelm you, take it slow, start by fixing (or implementing) very small things. definitely don't start by trying to improve FPS or trying to figure out how to enable manual control in movie mode.

If you are willing there are a couple of small things that you can work on: one will be to add support for a larger number of cropmark files. you just need to look into a predefined folder for files that end with bmp and add them into the menu list so people can select them...you know small things like this that while not huge in scope they are still important and by doing them you grow more confident in the the code base.

Title: Re: 500d development
Post by: Jamez on 30 / March / 2011, 11:51:04
Hi,
New t1i owner here (better late than never eh!).
I was wondering, am I presuming its possible to port most of alex`s excellent t2i stuff to the t1i?
If so other than the 2 gentlemen above, is anyone aware of anyone else working on this, on any other forum etc?

Maybe we can bring everyone together to one place?
I wonder if AJ Newman wants a new camera....
For the record im in Japan and can get the t2i for a few hundred $ now.

Id like to help out but dont know C, C+, or any other programming language.
Am fluent in php, css, javascript etc but that doesnt really help here  ::)
Title: Re: 500d development
Post by: rootsxi on 30 / March / 2011, 20:33:45
greetings, thanks to all who have brought development to this point, seriously. i have 500d with latest build of ML 1.12 installed and as with all t1i owners, i cannot wait to see 24fps and audiolevels. i take my battery out after every shoot after reading earlier posts about guy w/no logic after leaving his in! again thank you so much for trying to make the t1i all that it can be. very glad to see alins say he was sticking with developing this upgrade, cannot wait to see next build... how do i change builds once it drops? thanks
roots
Title: Re: 500d development
Post by: PHrag on 31 / March / 2011, 11:21:14
how do i change builds once it drops? thanks
just overwrite the autoexec.bin with a new one
Title: Re: 500d development
Post by: mrsaccess on 01 / April / 2011, 16:26:06
i take my battery out after every shoot after reading earlier posts about guy w/no logic after leaving his in! again thank you so much for trying to make the t1i all that it can be.

Removing the battery 3-10 times a day isn't a viable option. If you are a weekend shooter it may be ok but not for most people.

Furthermore by draining the battery completely (beyond the level where the camera asks for a new battery pack), you shorten your lithium battery's life and with ML you can't guarantee that this will never happen to you.

This is the fifth day without the ML bootflag and my batteries' life seems to have returned to normal levels.
Title: Re: 500d development
Post by: pat_loonytoon on 01 / April / 2011, 18:42:06
If you have issues log it here- https://bitbucket.org/alins/magic-lantern-for-500d/issues
Title: Re: 500d development
Post by: mrsaccess on 02 / April / 2011, 09:13:48
It is a known issue and the answer is "remove the battery after shoot", so no point adding it there, it will only be tagged as invalid.

I just say that the "remove the battery" approach doesn't work for everyone and I am not a person without logic as suggested, that's all.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / April / 2011, 12:59:17
Until someone looks into it, which might take a while, it will still be an issue with using the current build of ML. It still needs to get ironed out, just hasn't yet though.
Title: Re: 500d development
Post by: gas on 03 / April / 2011, 03:41:45
hi!

newbies question is:

i got the t1i (500d) and i followed the 550d installation guide, but i did the firmware update to 1.1.0 first.
now the magic lantern doesn't work in any way. I did the wiki-way, followed one on youtube...)
always the same message is running: update file cannot be found. plz check the memory card and reload the battery and try again.
the magiclantern.fir is on the card and the battery IS charged.
what's the prob?
Title: Re: 500d development
Post by: gravityrem on 03 / April / 2011, 08:55:19
just to clarify the situation, is it really possible to remove ALL the bootflag from the camera ?
And i dont expect just "leave the bootflag in you camera it doesnt matter .."

And i want to add that i dont wanna get rid of ML ! It's just for other users who would want to delete the bootflag for any reason...

Is it possible and what is the best way to remove the bootflag from the camera ? ( who can write something for the wiki about it ?

 
Title: Re: 500d development
Post by: utnuc on 03 / April / 2011, 12:04:28
There are two methods to remove the camera bootflag here:

http://magiclantern.wikia.com/wiki/500D/T1i_Installation#Uninstalling_ML_from_the_camera (http://magiclantern.wikia.com/wiki/500D/T1i_Installation#Uninstalling_ML_from_the_camera).

Method 1 didn't work for me, so I added Method 2.  The reason I wanted to uninstall the bootflag from my T1i: having the bootflag set to 'on' forced the camera to look for an autoexec.bin every time I turned on the camera.  This results in annoying significant delay in boot up time when not using ML.

BS
Title: Re: 500d development
Post by: arnarg on 03 / April / 2011, 12:06:56
hi!

newbies question is:

i got the t1i (500d) and i followed the 550d installation guide, but i did the firmware update to 1.1.0 first.
now the magic lantern doesn't work in any way. I did the wiki-way, followed one on youtube...)
always the same message is running: update file cannot be found. plz check the memory card and reload the battery and try again.
the magiclantern.fir is on the card and the battery IS charged.
what's the prob?
There is a separate installation guide for the 500D Here. (http://magiclantern.wikia.com/wiki/500D/T1i_Installation)

But guys, about the rack focus... is it working yet and I just don't know how to use it? I can't seem to find it in the issues page.
Title: Re: 500d development
Post by: Coutts on 03 / April / 2011, 12:28:21
i got burned out when I tried to dive into things. it's way over my head lol. has anything big happened lately?

This low level stuff is definitely out of my comfort zone, i never liked playing with bit masks and stuff as a result portions of ML code is just alien to me. Also ML code is pretty much undocumented which makes things a few orders of magnitude harder. I remember the first time i looked at the audio code i was thinking: whomever figure out this gazilion registries couldn't put a damn comment in the code what each thing does or at least a link to the documentation ?. (i'm sure somebody will point out that everything can be found on the mailing list..please don't)

my point is this: don't let it overwhelm you, take it slow, start by fixing (or implementing) very small things. definitely don't start by trying to improve FPS or trying to figure out how to enable manual control in movie mode.

If you are willing there are a couple of small things that you can work on: one will be to add support for a larger number of cropmark files. you just need to look into a predefined folder for files that end with bmp and add them into the menu list so people can select them...you know small things like this that while not huge in scope they are still important and by doing them you grow more confident in the the code base.


I tried looking into the crop marks last night, I think I remember chdk uses a cropmarks folder, so I did a quick look through the chdk code but couldn't find anything, going to look at it at another time.

I've been trying to figure out the ISO values. It's been pointed out before (I forget who, Alex I thinK?), but every time I try to set the ISO below 100, it just goes to Auto mode :( . I remember having iso50 on chdk back in the day (like 2 or 3 years ago), it'd be really nice if it was possible with ML, but it doesn't appear to be so..

The hex values for ISO, found using memspy, are as follows (going in a changing pattern of 8, 2, 8, 2, etc):
ISO - HEX
auto - 0
100 - 48
200 - 50
400 - 58
800 - 60
1600 - 68
3200 - 70
6400 - 78
12800 - 80

the iso25600 setting isn't working too.. the camera (and ML) registers iso25600 (the camera even says on the screen), but the picture is actually underexposed when compared to an identical exposure at iso12800.. so somethings not working here.

the ISO thing has been bothering me lately, I've been sifting through the code trying to figure this out but I can't get anything else to work. frustrating...
Title: Re: 500d development
Post by: Coutts on 03 / April / 2011, 12:52:10
changing the ISO values array to say "25605" instead of "25600" (as a test), shows ML registering ISO25600, but the camera still registers ISO25600, it looks like this picture below:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa5.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F181606_10150408877760344_704010343_17335109_8112517_n.jpg&hash=90721e45f02c09ae2201907e9e04d8a2)

Going to play around with ISO values some more. I'd really like ISO50, because when I shoot with strobes, 1/200th of a second is a really slow sync speed, especially when I want to stop my lens down for more bokeh.
Title: Re: 500d development
Post by: Coutts on 03 / April / 2011, 13:13:29
Another question:
A while ago I added the code for shutter speeds from 30sec to 1/30th of a sec in the ML menu, with this code here in shoot.c:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2F2n856l1.png&hash=734173ea9370e655c7c38af4575fae21)



I was looking through lens.c and found this code here, what exactly is this doing that's different from the code above?
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2F21l93ko.png&hash=056f6a6fbb172586205d826acd953f63)


edit
figured it out lol. the second picture is the code for the liveview data. okay. the more I sift through, the more I'm starting to pick up on how everything works  :)

Alins - I just noticed all of the builds I've been doing (from the latest bitbucket source) have 2 audio meters still - did you forget to update the bitbucket source with your latest build?
I think we need to make sure the source is up to date. Also, the ocd part of me says we need to start evaluating how old our code is to the latest builds of ML: what functions have changed since then, functions that have been re-written, etc.

How complete is the stubs file? what values still need to be found?
these are just some things I've been thinking about.
Title: Re: 500d development
Post by: Coutts on 03 / April / 2011, 21:00:38
i give up on the iso, i can't figure this out. no matter what i try, it just reverts to Auto iso. I've tried adding additional lower iso values to the 2 arrays in lens.h, and i've even tried calling a prop_request_change on PROP_ISO, and I couldn't get it to go.

I guess.. it's not possible? I can't understand why. Now I'm going to try to figure out why the focal length is always 2560 when you turn the camera on, but shows the correct focal length after you enter/exit live view mode.
Title: Re: 500d development
Post by: aznguy on 04 / April / 2011, 04:09:53
hey coutts which lens are you using here? http://www.flickr.com/photos/couttsphotog/5583173075/# (http://www.flickr.com/photos/couttsphotog/5583173075/#)
Gotta hand it to ya, your collection is awesome. How much editing do you do? or is it all natural in camera.
Title: Re: 500d development
Post by: Coutts on 04 / April / 2011, 13:26:53
^ thanks, that's my sigma 30mm f/1.4. It varies, but I just do adjustments from within Lightroom, sometimes I overprocess and sometimes I don't, all depends on how I'm feeling
Title: Re: 500d development
Post by: aznguy on 04 / April / 2011, 18:11:42
would you recommend the sigma for a f1.4 lens? im thinking about getting a canon f1.4 soon, my adapted nikon (old school lens) f1.8 works beautifully and is really sharp but with no auto focus or metering just, sucks....
Title: Re: 500d development
Post by: Coutts on 05 / April / 2011, 05:57:47
since i'm trying to get the latest 550d build to compile for the 500d (i don't like that the current codebase is older and a lot different), I used match.py to generate a stubs file from the 550d dump and stubs. I had to manually type the output from the console (couldn't copy/paste...), took about 3 hours but this is my new stubs file i'm working on. if I find the missing values (there's 30 of them), it should in theory work fine, as I now have a stubs file that's got everything the 550d stubs file uses.

I haven't slept in 2 days, so I'm going to get some sleep now. I just started the guessfunc.run command for the 500d, it should be done by the time I wake up (took ~6 hours earlier today when I tried it), then I'll start a full html dump. If I'm understanding things correctly, with that html dump I should be able to hopefully manually track down the missing values.

I'm slowly picking up on everything, it's a lot to wrap my head around still.



attached is the stubs file I started. take a look at it (andy, alex, etc), let me know if I could be onto something here. (I just realized I named the file with 550d, it should be 500d)
Title: Re: 500d development
Post by: arm.indiana on 05 / April / 2011, 13:20:07
Hi,

finsig can be used as explained here
http://magiclantern.wikia.com/wiki/Gensig_finsig (http://magiclantern.wikia.com/wiki/Gensig_finsig)

$ finsig.exe 500d_t1i_ff010000.bin 0xff010000 >500d_110.h

but each address must then be verified by hand.

See provided output.

Indy
Title: Re: 500d development
Post by: Coutts on 05 / April / 2011, 16:25:30
I couldn't get finsig to work for me, i explained in an email to you, but thank you for the output there. you have more dumps and stubs files to work with than me. I think between your file there and the stubs file I generated, I might be able to find some more values that were missing. for example, my stubs file contains AJ_guess_LED_ON & AJ_guess_LED_OFF functions, the values are different from the 550d's stubs file,so it looks like they might be right, but like you said I'm going to have to verify these by hand.

Can I just use idapro to verify these functions?
if all goes well, hopefully we might have a more functional 500d port (right off the back) soon. I'm just taking my time to find all of the values now instead of just disabling everything in the code so that it'll boot.
Title: Re: 500d development
Post by: arm.indiana on 05 / April / 2011, 16:51:04
check also this for an ML port
http://magiclantern.wikia.com/wiki/5d-hack (http://magiclantern.wikia.com/wiki/5d-hack)

yes IDA is great. compare 550d with .idc applied and suggested address from finsig.exe on 500d fw.
see also comments in stubs-550d*.S and stubs-60d*: it helps locating things

Indy
Title: Re: 500d development
Post by: Coutts on 05 / April / 2011, 18:27:09
check also this for an ML port
http://magiclantern.wikia.com/wiki/5d-hack (http://magiclantern.wikia.com/wiki/5d-hack)

yes IDA is great. compare 550d with .idc applied and suggested address from finsig.exe on 500d fw.
see also comments in stubs-550d*.S and stubs-60d*: it helps locating things

Indy
i have 500d_110_20100717.idc, is this only useful with the 500d? i opened a 500d dump in ida and saved an idc to compare file sizes and the other one is quite a bit larger, so what exactly is different?
Title: Re: 500d development
Post by: Liamykins on 05 / April / 2011, 19:00:08
I'm completely new here, but I'm just wondering if you manage to port the 550D 'firmware' to the 500D, will all of the 550D features be available? And if any of this is possible will it be a fast solution, or will it be really time consuming? Sorry for asking pretty dumb questions, I'm just curious. Thanks.
Title: Re: 500d development
Post by: Coutts on 05 / April / 2011, 19:20:10
we aren't porting any of the 550d's firmware, just the already made magic lantern code. i'm still pretty new to all of this, haven't quite wrapped my head around everything yet
Title: Re: 500d development
Post by: Coutts on 06 / April / 2011, 00:36:32
been spending a lot of time comparing the dumps of the 550d and 500d with the 550d's stubs file, and i've been confirming a lot of values now.

I FOUND AUDIO_THRESHOLDS
had to force convert all the code in the dump to see everything, found it hiding in 0xFF48E58C

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi52.tinypic.com%2F2qwjzmh.png&hash=5a9cab9d306cbfddf8fd4c32717f32b1)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2F2mnhb42.png&hash=e6aa1bd3b208278f4f8b5e6a2255d699)

more to come soon :)



edit:
interesting values I've come across (going to edit/update as I randomly see stuff):

in: loc_FF04CF98 --- 0xFF04CFA8 - aSFrameRateD ; "%s : FrameRate(%d)"
in: sub_FF05EAC8 ---- 0xFF05EAF0 - aEyefi     ; "EyeFi"
Title: Re: 500d development
Post by: pat_loonytoon on 06 / April / 2011, 03:19:18
This is why we pay you the big bucks Coutts...we are paying you right?
Title: Re: 500d development
Post by: Coutts on 06 / April / 2011, 03:57:54
err nope lol. don't pay me, pay chuchin, alex, indy, pelican and the other devs who have put in so much work to get us where we are now. i'm just poking around trying to learn it all haha.

edit:
i don't think that audio_thresholds value is correct, going to have to come back to it.
Title: Re: 500d development
Post by: alins on 06 / April / 2011, 11:17:06
coutts, you are the man  :). i knew you can do it.

i believe the audio threshold is correct, i played very briefly with that value last night and it seems to be working..the audio meter (just the upper one) is moving now. what makes you think the value is not correct?

sorry i haven't responded to your messages, i was off the grid on the last couple of days. I believe the code in bitbucket is up to date, i remember saying that i need to change the UI to show just one audio meter since 500d is mono, but i haven't got around to implement that. Unless something unexpected happens i will have some free time this weekend to work on ML. Two things on my agenda:

1. finalize the audio by incorporating the audio thresholds and maybe change the UI to show just one audio meter (unless you are already working on this :) ).
2. fix silent pictures (couple of people express a lot of interest in this feature)


Title: Re: 500d development
Post by: Jamez on 06 / April / 2011, 11:40:27
Hi guys,
Thanks for your work on this... incase your wondering whose adding the stuff to the 500D wiki of late... its me :)
Title: Re: 500d development
Post by: Coutts on 06 / April / 2011, 12:23:03
alins - i've spent the past 16 hours hand verifying the stubs I generated from the 550d's stubs file (using match.py) in IDA pro.

Also, I've downloaded the latest 550d build and I am basically re-porting using the latest codebase (i feel our current one is too outdated - lots of differences, not all the latest features, etc).

I've already found quite a few stubs values that are wrong in the current 550d's stubs file. malloc and gui_lock to name a couple.

I've learned so much in the past week, it's insane. I haven't gone to bed in 3 days, and I've logged close to 30 hours working on this since Sunday.

Now that I'm getting the hang of IDA, I'm finally able to find addresses that were previously missing / wrong :)
Title: Re: 500d development
Post by: pat_loonytoon on 06 / April / 2011, 13:07:14
you guys are awesome! One day when I grow up I hopefully I can be like you guys lol.
Title: Re: 500d development
Post by: alins on 06 / April / 2011, 13:28:35
Hi guys,
Thanks for your work on this... incase your wondering whose adding the stuff to the 500D wiki of late... its me :)

really nice stuff, i love it. keep up the good work
Title: Re: 500d development
Post by: Coutts on 06 / April / 2011, 13:33:13
^ shouldn't it say 500d 1.1.0 and not 1.0.9? lol.
Title: Re: 500d development
Post by: alins on 06 / April / 2011, 13:40:58
alins - i've spent the past 16 hours hand verifying the stubs I generated from the 550d's stubs file (using match.py) in IDA pro.

Also, I've downloaded the latest 550d build and I am basically re-porting using the latest codebase (i feel our current one is too outdated - lots of differences, not all the latest features, etc).

that's correct. alex is adding a lot of stuff almost every day, we are way behind 550d

Quote

I've already found quite a few stubs values that are wrong in the current 550d's stubs file. malloc and gui_lock to name a couple.



you found wrong values in 550d or 500d?

Quote

I've learned so much in the past week, it's insane. I haven't gone to bed in 3 days, and I've logged close to 30 hours working on this since Sunday.

Now that I'm getting the hang of IDA, I'm finally able to find addresses that were previously missing / wrong :)

i have to be honest with you: i'm really happy you are getting the hang of this, we really need more developers to hack on this code since i don't always have the time to give it the love it deserves (I still can't believe how many downloads we have for the last build).

You do have permission to submit into bitbucket right?.
Title: Re: 500d development
Post by: Jamez on 06 / April / 2011, 13:41:52
^ shouldn't it say 500d 1.1.0 and not 1.0.9? lol.

It will do soon  :D
I intend to make a little movie of each of the features, testing them out, then to update the progress percentages.

Keep up the good work Coutts. You da man.
Title: Re: 500d development
Post by: arm.indiana on 06 / April / 2011, 15:30:05
Coutts,

I do not understand why you want to rewrite 500D 1.1.0 stubs, I already made this 1 year ago
http://magiclantern.wikia.com/wiki/500D#Stubs-500d.110.s (http://magiclantern.wikia.com/wiki/500D#Stubs-500d.110.s)

Any reason I missed ?

you detected errors in this file ?

Are you using this code base ?
https://bitbucket.org/alins/magic-lantern-for-500d/overview (https://bitbucket.org/alins/magic-lantern-for-500d/overview)

Indy
Title: Re: 500d development
Post by: chuchin on 06 / April / 2011, 16:23:12
I think Coutts only wants to update the stubs to the current 550d stubs.
Title: Re: 500d development
Post by: Coutts on 06 / April / 2011, 16:46:36
Coutts,

I do not understand why you want to rewrite 500D 1.1.0 stubs, I already made this 1 year ago
http://magiclantern.wikia.com/wiki/500D#Stubs-500d.110.s (http://magiclantern.wikia.com/wiki/500D#Stubs-500d.110.s)

Any reason I missed ?

you detected errors in this file ?

Are you using this code base ?
https://bitbucket.org/alins/magic-lantern-for-500d/overview (https://bitbucket.org/alins/magic-lantern-for-500d/overview)

Indy
I'm modifying the latest 550d code to run on the 500d, so that we'd be up to date with all of the features added since then. I'm considering putting the code on a separate bitbucket account, for sake of organization.

As for the questions about the stubs:
I've sat down and compared the 550d and 500d using idapro, using the stubs file from the latest 550d build as my reference. I first used match.py to generate a new stubs for the 500d from a 550d dump/stubs, now I'm just finishing up checking all of the stubs addresses by hand to be 100000% sure they're correct. I'll post the updated stubs file containing all of the correct / new addresses for the 500d later tonight.



you found wrong values in 550d or 500d?
the 500d, yes, more than I expected. Here's a list of what's incorrect / new functions in the current 500d build:

incorrect values:
register_func
dm_set_store_level
malloc
gui_lock
sd_device
audiothresholds
FreeMemory
FIO_FindFirstEX
FIO_FindNextEX
vram_get_number
FIO_RemoveFile


new functions found:
AJ_guess_LED_OFF
AJ_guess_LED_ON
DispSensorStart
SetBitmapVramAddress
bootdisk_disable
bootdisk_enable
cfReadBlk
sdReadBlk
cli_save
free
mvrSetBitRate
sei_restore
vram_get_pos_and_size


I've got 12 left to do, so I should be posting a stubs file with the correct values (it'll be formatted like the 550d's stubs, and I'll add the extras like AE_MODE_MOVIE_ON / verify they're correct) later tonight. I hope all of this time I've spent in IDA will pay off!!



Quote from: alins
i have to be honest with you: i'm really happy you are getting the hang of this, we really need more developers to hack on this code since i don't always have the time to give it the love it deserves (I still can't believe how many downloads we have for the last build).

You do have permission to submit into bitbucket right?.
I'm really happy I'm finally getting the hang of it. I actually kind of like using idapro to find addresses. it's actually pretty fun  :)


edit:
some interesting things i came across, maybe someone knows how to use these (if they're worth anything)??
i'm gonna start noting any live view exposure related things I come across, I want a way to disable live view's "exposure preview", where it makes the screen as dark/bright as the picture is gonna be. this is useless if I'm shooting flash at 1/200th in a dark room, can't see anything!!! (this has gotten in the way multiple times in the past).

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi52.tinypic.com%2F2up9rab.png&hash=1acfd29579c5315a38c785ff5e411c74)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2F4t9iza.jpg&hash=09b693587a0ec2eba2ca24a2648570bc)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi54.tinypic.com%2F55qazp.png&hash=7c78b7fbd75574df0a6b552b41953af1)
Title: Re: 500d development
Post by: arm.indiana on 07 / April / 2011, 01:56:37

0xff06828 is "callByName"
FF067828 call

this function is property related
sub_FF05A57C

all FA_* functions means "Factory tests".
See http://magiclantern.wikia.com/wiki/ASM_Dictionary (http://magiclantern.wikia.com/wiki/ASM_Dictionary)

Indy
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 02:21:56
Aren't malloc and a couple other of those pretty serious / important things? Maybe that's the reason it's so buggy.
I'll try re-compiling with my stubs file as soon as I'm done to see if things work any smoother. I'm just putting it together now.

By the way, I did everything without using an IDC file and just searched for strings / hexadecimal until I found the right functions. Would an idc file have named all of the functions for easier reference?
Title: Re: 500d development
Post by: arm.indiana on 07 / April / 2011, 04:30:18
Yes, malloc is very important.

Yes, applying the .idc will ease a lot code reading.

Indy
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 06:38:21
So running the 1.12 build with my stubs file, things are a lot more stable. Audio levels work, and I think AGC might work (i can't tell if there's a difference in audio or not). Bit rate is working (i had a short clip at 60megs/sec but it buffered out fast), a lot more ML text shows up (like when you turn on lcd shooting).

I give up on trying to port the latest 550d code, this is just fun to play with lol. I'm working on audio.c right now to get rid of the other audio bar, and also I'm going to combine the digital gain settings into 1 setting since the audio is mono and 1 channel.
Title: Re: 500d development
Post by: bjacklee on 07 / April / 2011, 07:24:58
so excited!
Title: Re: 500d development
Post by: arnarg on 07 / April / 2011, 10:01:59
Nice! you're a hero. Can we expect a new build soon?  ::)
Title: Re: 500d development
Post by: gravityrem on 07 / April / 2011, 11:01:53
Are you guys for real ??

Good job Coutts, you're def the man !
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 13:03:40
Should be a new build soon, depends on who has the most time lol. I appreciate the recognition, but I don't deserver anywhere near the thanks indy, chuchin, alex, alins and pelican do (i think i covered everybody). they are the brains behind everything.

Attached is the stubs file I've been talking about. It's based off the 550d (so I just replaced the values, it's in the same format as the others). I'm still trying to get it to compile with the latest 550d code, slowly finding what I have to comment out. I do have a quesion for the devs: what's with the 0x8..... addresses, for say camera_engine and all of the prop values? that's outside of the range to be in the firmware dumps, so where are those coming from, and how does one investigate them?

In the somewhere around 40 hours I put into verifying all of those addresses (searching strings in idapro until I tracked down the right function, then noting the correct address for the function)

anyways, now that we have the audio_thresholds address everybodys been waiting for, let's crank out some new builds shall we? :)
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 13:16:30
ISO25600 still doesn't look to be working..  :(
i wonder if it's some hardware limitation?
Title: Re: 500d development
Post by: alins on 07 / April / 2011, 13:49:06
Should be a new build soon, depends on who has the most time lol. I appreciate the recognition, but I don't deserver anywhere near the thanks indy, chuchin, alex, alins and pelican do (i think i covered everybody). they are the brains behind everything.

don't hold yourself down coutts, you've done something that the rest of us hasn't, put a lot of precious time into figuring out the stubs. without the stubs we can't actually advance development for 500d, so as far as i'm concerned you _are_ the man

Quote
Attached is the stubs file I've been talking about. It's based off the 550d (so I just replaced the values, it's in the same format as the others). I'm still trying to get it to compile with the latest 550d code, slowly finding what I have to comment out.

i will make sure the stubs are submitted into bitbucket (unless you want to do that). If you want to create your own clone of ML for 500d please do, i personally don't care how many clones are out there. At the end of the day we all want the same thing, so the more the better.

aso...i don't think the 550d code will work on 500d out of the box like that (just changing the stubs), you need to take it slow and port one piece at a time.

Quote
I do have a quesion for the devs: what's with the 0x8..... addresses, for say camera_engine and all of the prop values? that's outside of the range to be in the firmware dumps, so where are those coming from, and how does one investigate them?

those are the properties. the best explanation that i found about what those things are is here:
http://groups.google.com/group/ml-devel/browse_thread/thread/e808262c0e02a31f/086c15e3923632e7?lnk=gst&q=)Properties+are+the+Camera#086c15e3923632e7 (http://groups.google.com/group/ml-devel/browse_thread/thread/e808262c0e02a31f/086c15e3923632e7?lnk=gst&q=)Properties+are+the+Camera#086c15e3923632e7)

properties are another reason why 550d code doesn't port directly on 500d, we need to figure out the  addresses for 500d using some of the tools out there. I personally never tried any of those tools, so i don't know how hard/easy is to find the properties

Quote
In the somewhere around 40 hours I put into verifying all of those addresses (searching strings in idapro until I tracked down the right function, then noting the correct address for the function)

anyways, now that we have the audio_thresholds address everybodys been waiting for, let's crank out some new builds shall we? :)

as i said, you _are_ the man
Title: Re: 500d development
Post by: a1ex on 07 / April / 2011, 14:26:45
See http://magiclantern.wikia.com/wiki/Properties (http://magiclantern.wikia.com/wiki/Properties)

And be sure to browse all the links from here:

http://magiclantern.wikia.com/wiki/550d_dev (http://magiclantern.wikia.com/wiki/550d_dev)
http://magiclantern.wikia.com/wiki/2.0.4_AJ (http://magiclantern.wikia.com/wiki/2.0.4_AJ)
http://magiclantern.wikia.com/wiki/Special:AllPages (http://magiclantern.wikia.com/wiki/Special:AllPages)
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 14:43:51
^ thank you alex. I just noticed that I did a rough job with that stubs file lol. At the bottom, for:

Code: [Select]
NSTUB( 0xFF0959A4, gui_post_10000085 ) // should be called post 100000a5 no ?
NSTUB( 0xFF096208, gui_init_event )
NSTUB( 0xFF095A30, gui_change_shoot_type_post )
NSTUB( 0xFF095AC8, gui_change_lcd_state_post )
NSTUB( 0xFF093108, gui_massive_event_loop )   // GUI_Control_Post
NSTUB( 0xFF1D2760, gui_timer_something )
I was able to match all of those, I just forgot to remove comments in the file (I just replaced the mem addresses, i was too excited to try it out).

so i guess now we try to verify all of the properties are correct?


also:
NSTUB(0xFF2676E0, gui_task_create)

for some reason in the 1.0.9 stubs file, this was commented out saying it couldn't be found. I was able to find it using the 1.0.8 stubs file (the subroutines matched up perfect when i finally found it in the 500d).

It really felt like a miracle every time I found the location for a sub. From what I understand I could have used an idc file to aid me, but I didn't know that at the time. I searched for strings and hexadecimal code. lol. well i guess at least I learned idapro :P
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 14:55:00
here is my "raw" stubs file that was generated from match.py, which I then went through 1 by 1 to confirm correct. There are a couple values that I just couldn't find in the 500d firmware, i literally spent 2-3 hours searching for each one with no luck, so I gave up. audio_thresholds was close - we're lucky that one worked, i was praying it would work.

when i ran match.py, my linux terminal didn't have the ability to copy/paste. I had to first write this whole file by hand, then I went through and compared everything by hand.

tl;dr
a lot of work went into this :P
Title: Re: 500d development
Post by: aznguy on 07 / April / 2011, 15:07:35
Your a beastt keep it up ! :D
Title: Re: 500d development
Post by: richie007bond on 07 / April / 2011, 15:10:52
I would just like to say that Coutts and the rest of the guys are doing a Fantastic job, am just looking for 24 fps on 1080p, that would make my day. I was considering selling my 500d for a 550d but i think ill hang back and see what pans out, and Coutts you really are the man. Cheers Bud :)
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 15:11:22
another thing I noted earlier today, in the make file, this part here, why are some files listed twice? not sure if this is intentional or not - just something i noticed.

Quote
# menu.o and debug.o must come before the modules
ML_OBJS-y = \
   magiclantern.lds \
   entry.o \
   5d-hack.o \
   stubs-500d.110.o \
   version.o \
   stdio.o \
   config.o \
   debug.o \
   menu.o \
   bmp.o \
   font-large.o \
   font-med.o \
   font-small.o \
   config.o \
   menu.o \
   debug.o \
   stdio.o \
   audio.o \
   lens.o \
   property.o \
   gui.o \
   bootflags.o \
   zebra.o \
   focus.o \
   shoot.o \
Title: Re: 500d development
Post by: arnarg on 07 / April / 2011, 15:25:50
...am just looking for 24 fps on 1080p...
That would be nice but all I ask for is manual settings in video mode, and maybe 25fps in 720p since I live in europe...  :P
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 18:31:00
Alright I'm not going to keep everybody waiting, so here's the first updated build in a long while. I got rid of the other audio levels bar. I'll upload my changes to alins' bitbucket for anyone curious to see. Also changed the about menu up a little bit. From my initial tests, here's what I noticed:

- Q-scale seems to be working nicely - I need a faster card :P
- AGC looks to be working as well - audio sounds cleaner (i had a fan running and it's less noticeable with AGC off than on).
- Digital Filters might be working? I thought it sounded cleaner at least, can't tell at the moment.
- It runs a little more stable it feels like too (not as flickery).
Try it out, let us know if you find anything. All issues should be reported here:
https://bitbucket.org/alins/magic-lantern-for-500d/issues?status=new&status=open

Alins I tried to setup mercurial with bitbucket but i can't concentrate. I need to gt some sleep
Title: Re: 500d development
Post by: pat_loonytoon on 07 / April / 2011, 18:52:40
just got my wireless mic today which works great with my T1i mic input hack. Can't wait to put ML back on to test it out! Thanks guys
Title: Re: 500d development
Post by: arnarg on 07 / April / 2011, 19:39:41
Is the 2.5mm remote jack used for mic input and A/V out/Digital for monitoring (if it's supported yet)?
Title: Re: 500d development
Post by: alins on 07 / April / 2011, 19:54:34
Alins I tried to setup mercurial with bitbucket but i can't concentrate. I need to gt some sleep

really nice job coutts. setting up mercurial is fairly simple, let me know if you have any problems.
Title: Re: 500d development
Post by: alins on 07 / April / 2011, 19:56:48
any volunteer to update our wiki page with the new build?
Title: Re: 500d development
Post by: Coutts on 07 / April / 2011, 20:25:26
any volunteer to update our wiki page with the new build?
^ i did it once and it took me longer to figure that out than it did to check those stubs LOL
Title: Re: 500d development
Post by: arnarg on 07 / April / 2011, 20:39:52
I just updated it... ;) let me know if something is wrong

Edit:
oops... forgot to change the date, but fixed know
Title: Re: 500d development
Post by: utnuc on 07 / April / 2011, 22:05:41
Looks like Qscale is working, nice job.  And it does run more smoothly here.
Title: Re: 500d development
Post by: rootsxi on 08 / April / 2011, 02:26:19
hello just ran a few quick tests with build and very happy with quality of it, much improved over 1,12! thanks coutts. i too need a better card <have class 6 need class10> is 24fps somehow part of qscale? i thought i saw a video on youtube that said it was 24fps on a t1i running ML at a -16qscale?? audio levels seem to be working! thanks for invigorating this build and thanks to all who have worked on it!
Title: Re: 500d development
Post by: Jamez on 08 / April / 2011, 04:28:57
Nice work  :)
You also single handedly killed most of the bugs reported in the bit bucket location by the looks of it.
Onwards and upwards
Title: Re: 500d development
Post by: PhrozeN on 08 / April / 2011, 06:57:58
Nice work guys....  :D

Lots of progress being made here. Looking forward to trying the new build.
Title: Re: 500d development
Post by: silasje1 on 08 / April / 2011, 08:13:14
problem here:
i cant see my 500d when i connect via USB....

more people having this problem?
Title: Re: 500d development
Post by: a1ex on 08 / April / 2011, 08:16:52
Disable hotplug.o in the Makefile, or upgrade to the latest one.
Title: Re: 500d development
Post by: Coutts on 08 / April / 2011, 09:07:58
Disable hotplug.o in the Makefile, or upgrade to the latest one.
config_audiomon isn't enabled in the make file so it isn't building hotplug.o

Any answer to my question previously about some *.o files being specified more than once in the make file?
Title: Re: 500d development
Post by: a1ex on 08 / April / 2011, 09:27:38
That file caused USB problems on 550D. I don't know what else might cause this.

Just leave only one .o file. Probably the compiler ignores this and that's why it worked. Look at the size of autoexec.bin to check if this is true or not.
Title: Re: 500d development
Post by: silasje1 on 08 / April / 2011, 11:39:56
i upgraded to the newest build :) but i worked before with 1.12 (i guess...) but not more with 1.13
Title: Re: 500d development
Post by: arm.indiana on 08 / April / 2011, 15:03:40
Great work Coutts!

Indy
Title: Re: 500d development
Post by: sbright33 on 08 / April / 2011, 15:31:40
Much more stable!  Silent picture Alex?  I'm so excited!  I will help by finding more bugs...
Title: Re: 500d development
Post by: Coutts on 08 / April / 2011, 16:54:35
^ I'm actually working on the silent picture / lcd release / audio release now. The audio release has been working for a couple builds but I'm just gonna look over everything.

Hopefully have a new build up tonight! :)
I got some sleep last night by the way, I was going on 5 days no sleep, I was starting to see hallucinations lol.

It's such a good feeling knowing that I started not knowing a thing, and now all of the countless hours I've put into learning is paying off :D :D
Title: Re: 500d development
Post by: arnarg on 08 / April / 2011, 18:35:05
Hopefully have a new build up tonight! :)
I got some sleep last night by the way, I was going on 5 days no sleep, I was starting to see hallucinations lol.
:o not to be ungrateful or anything, but you gotta be careful :P Ehm... (http://www.abovetopsecret.com/forum/thread34523/pg1)
Title: Re: 500d development
Post by: Coutts on 08 / April / 2011, 19:25:23
Still working on  some stuff now. Should have lcd trigger, audio triggering, and trap focus working tonight. gonna look into fixing the bulb_mode timer, and see if I can add the display bitrate / backlight brightness adjust features (not sure if they'll work or not, worth a shot :) )
Title: Re: 500d development
Post by: alins on 08 / April / 2011, 20:49:56
no rush or anything but did you had a chance to setup mercurial?
Title: Re: 500d development
Post by: Coutts on 08 / April / 2011, 21:18:21
no rush or anything but did you had a chance to setup mercurial?
not yet. can you pm me your email? it'd probably be faster for getting replies rather than waiting for eachother to get on the forum here.

i got it to compile but that's about it, trap focus still isn't working and I think i broke the intervalometer or something.

eek, you really have to do this 1 thing at a time, it's easy to get lost when you try to change too much at once.
Title: Re: 500d development
Post by: gravityrem on 09 / April / 2011, 10:00:24
coutts : Hope youre sleeping in right now ! you deserve it dude ! nice build !
Title: Re: 500d development
Post by: rebelT1i on 09 / April / 2011, 11:39:49
I joined just so I could give proper thanks! this is freaking great!! I wish I knew what I was doing and could help, but I think I may be able to help report bugs if I find them. I'll spend some time looking threw the thread before reporting any to make sure their not already known ones. But again, thanks so much to everyone that's worked on this to make it so great!
Title: Re: 500d development
Post by: pat_loonytoon on 09 / April / 2011, 14:22:49
Anyone else still having battery drain problems? I usually just take it out between shoots but I noticed when I forgot it still seemed to have the draining problem.
Title: Re: 500d development
Post by: PHrag on 09 / April / 2011, 14:47:43
Anyone else still having battery drain problems? I usually just take it out between shoots but I noticed when I forgot it still seemed to have the draining problem.
Nope, charged it last week, made like 200 pictures (have bootflag and battery all time in my camera), yesterday i placed ML on my SD with bootflag, made few pictures with audio trigger, ML SD and battery was in camera all night and my battery is still full.
Title: Re: 500d development
Post by: pat_loonytoon on 09 / April / 2011, 16:39:58
hmm ok cool, I'll keep the battery in my camera and see if I have the problem with the new build. Thanks PHrag.
Title: Re: 500d development
Post by: aznguy on 10 / April / 2011, 00:42:51
i still had the problem, i was fed up with it soo i just turned off the boot flag
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 01:02:36
no luck getting trap focus to work, trying to get HTP/ALO / MLU to work. i found out why it isn't so far, the custom function grouping differs from the 550d.

from the properties page on the 550d:
Quote

i=0: => CFn group I; all CFns off => value = 0xC
  CFn 1 => c / 10c
  CFn 2 => c / 1000c 
  CFn 3 => c / 100000c / 200000c
i=1 => CFn group II; off = 0
  CFn 4 => 0 / 1 / 2
  CFn 5 => 0 / 100 / 200 / 300
  CFn 6 => 0 / 10000
  CFn 7 => 0 / 1000000 / 2000000 / 3000000
i=2 => CFn group III; off=0
  CFn 8 => 0 / 1
  CFn 9 => 0 / 100 / 200 / 300
  CFn 10 => 0 / 10000 / ... / 50000
  CFn 11 => 0 / 1000000
i=3
  CFn 12 => 0 / 1

the 500d's grouping differs, it is grouped:

Quote
I - 1
I - 2
I - 3
II - 4
II - 5
II - 6
II - 7
III - 8
III - 9
IV - 10
Iv - 11
Iv - 12
Iv - 13

I think i'm on to something here, should have HTP / ALO / mirror lockup working before I go to bed... hopefully
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 01:45:53
got mirror lockup to work :) it's all implemented now. the auto setting automatically turns on MLU if you're in timer/remote drive mode, and switches off in other drive modes.

as for HTP/ALO.. not so much luck so far. the 500d has an extra custom function for auto lighting optimizer, the t2i doesn't.. so this is a little hard, I don't exactly understand how the custom functions are being changed, just testing different values until it works.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 03:24:43
New build: v1.14

Changes:
 - Added Mirror Lockup toggling in ML menu - Auto setting will automatically turn MLU on when drive mode is set to timer or remote.
 - Updated about page in menu, changed make file to make version specification easier for each  build (alins i need to setup mercurial for bitbucket now that i've changed the make file, you need it if you want to release further builds lol).

Tomorrow i'm gonna try to get some more easy things working - should be able to tackle bulb mode timer and maybe backlight brightness adjustment.

note for alo/htp: the 550d doesn't appear to have a custom function for auto lighting optimizer, so they set it using a prop_set to the alo property. i don't think this property is the same on the 500d (which explains alo/htp being broken atm), the 500d does however have a custom function for alo, so I think if I figure out some way to implement a new function to toggle alo, i should be able to get that to work. it's 4am and i have class in 7 hours, time for sleep. night everyone and let me know how it's working!
Title: Re: 500d development
Post by: aznguy on 11 / April / 2011, 03:44:59
mad props bro, hope your getting sleep haha
Title: Re: 500d development
Post by: pat_loonytoon on 11 / April / 2011, 04:14:30
Hey nice work Coutts. Just made a new video using latest build of ML, my mic input mod, and my wireless mic. http://www.youtube.com/watch?v=TIhs3NEqEJk# (http://www.youtube.com/watch?v=TIhs3NEqEJk#)
Title: Re: 500d development
Post by: RoaldFre on 11 / April / 2011, 08:11:18
I lost track of this thread for a few days, but just so you know in the future: if you are running a linux terminal in a graphical environment, you can usually copy/paste by selecting the text (drag over it with mouse) = copy, and middle mouse button clicking in a text field where you want to paste that selection.

Alternatively you can just pipe the output from a command to a file, eg:

Code: [Select]
$ some_command > dump.txt
If it's a process that takes a lot of time, you can -- in a seperate terminal -- do:

Code: [Select]
$ tail -f dump.txt
to follow the progress.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 10:07:39
I lost track of this thread for a few days, but just so you know in the future: if you are running a linux terminal in a graphical environment, you can usually copy/paste by selecting the text (drag over it with mouse) = copy, and middle mouse button clicking in a text field where you want to paste that selection.

Alternatively you can just pipe the output from a command to a file, eg:

Code: [Select]
$ some_command > dump.txt
If it's a process that takes a lot of time, you can -- in a seperate terminal -- do:

Code: [Select]
$ tail -f dump.txt
to follow the progress.
i'm doing all of my arm-console work in a linux virtual machine inside windows, and compiling ML under windows. both of them don't allow me to select text and copy/paste, but I wish I would have known that command to dump the output to a file -_-

thanks for the future notice though.
Title: Re: 500d development
Post by: alins on 11 / April / 2011, 10:44:13
hey coutts, if you use vmware you need to install vmware tools so vmware can communicate with windows clipboard. some thing for virtualbox.

i use vmware on windows and i can copy/paste just fine from the terminal.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 11:58:37
hey coutts, if you use vmware you need to install vmware tools so vmware can communicate with windows clipboard. some thing for virtualbox.

i use vmware on windows and i can copy/paste just fine from the terminal.
I don't use the virtual machine much, as I only need it for using the arm-console (i've been working on the C part of things lately). cygwin doesn't allow selecting text in the command prompt for some reason though.
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 12:09:30
Hey nice work Coutts. Just made a new video using latest build of ML, my mic input mod, and my wireless mic. http://www.youtube.com/watch?v=TIhs3NEqEJk# (http://www.youtube.com/watch?v=TIhs3NEqEJk#)

Lol, good job, You have quite the imagination!
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 12:22:57
I updated bitbucket, for anyone curious to see what I've changed, take a look at the changeset:

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/be45d09abb37
Title: Re: 500d development
Post by: Jamez on 11 / April / 2011, 12:28:44
Nice :)
I think its time to move it on from that "alpha" status, id say its at least beta with the next release...
Title: Re: 500d development
Post by: richie007bond on 11 / April / 2011, 15:40:05
Coutts your like a machine my friend, thanks for all your hard work and effort its much appreciated budd, i just wish i had the talent you have...
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 17:15:55
New build: v1.14

Changes:
 - Added Mirror Lockup toggling in ML menu - Auto setting will automatically turn MLU on when drive mode is set to timer or remote.
 - Updated about page in menu, changed make file to make version specification easier for each  build (alins i need to setup mercurial for bitbucket now that i've changed the make file, you need it if you want to release further builds lol).

Tomorrow i'm gonna try to get some more easy things working - should be able to tackle bulb mode timer and maybe backlight brightness adjustment.

note for alo/htp: the 550d doesn't appear to have a custom function for auto lighting optimizer, so they set it using a prop_set to the alo property. i don't think this property is the same on the 500d (which explains alo/htp being broken atm), the 500d does however have a custom function for alo, so I think if I figure out some way to implement a new function to toggle alo, i should be able to get that to work. it's 4am and i have class in 7 hours, time for sleep. night everyone and let me know how it's working!

I'm having issues now with "HDR Brack". I'll set it to lets say 5 images, It'll fire off 3 and quit and most the time rebooting the camera. I really enjoy this feature and hope it can be fixed.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 18:44:08
New build: v1.14

Changes:
 - Added Mirror Lockup toggling in ML menu - Auto setting will automatically turn MLU on when drive mode is set to timer or remote.
 - Updated about page in menu, changed make file to make version specification easier for each  build (alins i need to setup mercurial for bitbucket now that i've changed the make file, you need it if you want to release further builds lol).

Tomorrow i'm gonna try to get some more easy things working - should be able to tackle bulb mode timer and maybe backlight brightness adjustment.

note for alo/htp: the 550d doesn't appear to have a custom function for auto lighting optimizer, so they set it using a prop_set to the alo property. i don't think this property is the same on the 500d (which explains alo/htp being broken atm), the 500d does however have a custom function for alo, so I think if I figure out some way to implement a new function to toggle alo, i should be able to get that to work. it's 4am and i have class in 7 hours, time for sleep. night everyone and let me know how it's working!

I'm having issues now with "HDR Brack". I'll set it to lets say 5 images, It'll fire off 3 and quit and most the time rebooting the camera. I really enjoy this feature and hope it can be fixed.
trap focus, lcd/audio triggering, hdr and the bulb mode timer all are going to have to be fixed at once, as they all seem to tie into each other. i've been working at it all day, getting close to having trap focus working but it's just going to take time. i work 20 hours a week while going to school full time. i wish i had more time to sit down and do this lol. it's frustrating when i have to stop for class or work, but I am working on it 10+ hours a day.

hopefully have it fixed soon! the issue is just that the 550d codebase has changed so much since chuchin started the initial 500d port. i'm trying to update everything to how it is in the latest 550d build, but a lot has changed..
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 19:05:01
I appreciate all your hard work! I just wanted to make sure you were aware of it, I will wait patiently for an update!
Title: Re: 500d development
Post by: alins on 11 / April / 2011, 20:23:42
I appreciate all your hard work! I just wanted to make sure you were aware of it, I will wait patiently for an update!

Was your camera by any chance in AV mode ?
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 20:50:15
Quote
Was your camera by any chance in AV mode ?

Yes it was, I shoot all HDR in Av mode.
 is the problem only in Av?
Title: Re: 500d development
Post by: alins on 11 / April / 2011, 21:23:43
try in M mode. In AV mode ML will try to use exposure compensation which is limited by canon to 2 stops. in M mode ML is gonna change the shutter so the camera can take different exposures.
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 22:04:40
Using M mode it reacts the same way as in Av mode.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 22:47:32
i'm giving trap focus 1 more try. it's extremely frustrating to work on something for so long without any progress or insights.

everything is just too different between the 550d and 500d, the routines, how things are called / done... so many discrepancies...

if i can't get it this time i'm giving up, somebody else will have to figure it out. i don't know any other options at this point, everything is too different to just change or convert.

also i discovered there's a lot of stubs we still don't have.. with what we have now, the 500d will never have all of the features of the 550d unless somebody can figure all of this out.. there's just too much to keep track of and i'm losing my mind literally.

ugh.. very frustrated at this point.. i've hardly made any progress for the amount of time and work i've put into this.
Title: Re: 500d development
Post by: LaLaPico on 11 / April / 2011, 23:00:20
Don't give up bro. You're doing a fantastic job. I've been watching all the progress and it's amazing.
Title: Re: 500d development
Post by: Coutts on 11 / April / 2011, 23:12:34
at this point my optimism in this port ever being finished is pretty much gone. the fact nobody has touched it in months aside from the past week of progress, and the more i look through the code, the more i see how different everything is.

the port is just outdated.. unless somebody can re-port with the latest 550d code, we're going nowhere far. i'm starting to realize that this is all over my head, and i'm just not able to do this. the small things are easy, but any major progress... idk now.


edit
i'm not even going to try right now. i'm just done for the time being. this is too much. i've reached my limit and suddenly i just can't stand to look at this any longer. i think other devs saw this coming miles away and that's why nobody has really been doing much with the 500d.

well.. it was a good learning experience at least.
Title: Re: 500d development
Post by: rebelT1i on 11 / April / 2011, 23:20:15
I know what you mean coutts, In my line of work I'm often in the same situation, I find sometimes it's good to take a break and refresh, then go back at it. All you've done so far is just Amazing! And I'm happy to be using it just where it's at now, and it's 100% better then stock, so cut your self some slack, take a break and hopefully come back at it all refreshed!

Thanks again to anyone and everyone that's in any way helped the progress of ML for the 500d
Title: Re: 500d development
Post by: pat_loonytoon on 11 / April / 2011, 23:51:15
If there only was some way to have a straightforward process to educate people enough to be able to contribute, then you could delegate different portions to people to chomp through.
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 00:03:38
download the source code, use mercurial (download it).

http://bitbucket.org/alins/magic-lantern-for-500d (http://bitbucket.org/alins/magic-lantern-for-500d)

when you have mercurial installed, cd to that directory and run (ignore
Code: [Select]
[url] part, it wasn't supposed to be there).
Code: [Select]
hg clone [url]https://bitbucket.org/alins/magic-lantern-for-500d[/url]Then you will have the source downloaded to your computer.

Install the ARM-toolchain, it's hard to get going but chuchin posted a working setup for compiling under windows, that's how I compile.

http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)

Now once that is all setup, edit your make file to match your file paths. the make file on the bitbucket repository now is mine, i am using cygwin + yagarto on windows, so that will contain the right paths for you.

now start going through the code and start analyzing how it works and calls functions. you can download the latest 550d source to help port features like I'm doing, just run
Code: [Select]
hg clone -r 550d [url]https://bitbucket.org/hudson/magic-lantern[/url]
everything is written in C, so touch up if you don't know it yet (it's not hard to pick up on, i didn't know much previously but i'm starting to see how it all works now).

the code refers to the stubs file - 500d.110-stubs.S, and the constants file (i forget the name, it's const something) for certain things, that's why me finding the stubs values like audio_thresholds was so important.

that's a pretty good startup guide there, should get you off your feet.

just compare gui.c between the 500d and 550d, you'll see right there just how different everything in the 550d is, and how much work we have to do.
Title: Re: 500d development
Post by: Jamez on 12 / April / 2011, 00:16:48
Dont give up Coutts, the calvary is just around the corner!

I have been speaking to a few Japanese guys that work for a small company I know... Danon or something, I forget the name ;)
Anyway these guys are part of the team that wrote the fricking thing in the first place.

One of them is a good friend, and he promised me to "finish things up" if needed, the only problem is things are far from "normal" here in Japan... there was yet another big quake this morning, and there have been over 300 in the past month alone!
I also have another programmer friend in the UK who also said the same.
Both are single guys so have time on their hands LOL.

What I`d recommend is have a break... leave it for a few days/week and come back to the easier stuff.
You`ve basically burnt yourself out for now, but Im sure with a little rest you can come back to it.
Maybe Alins can help out a bit too?

Title: Re: 500d development
Post by: utnuc on 12 / April / 2011, 00:42:24
OK, I'll take a bite.  Installing per your instructions and gonna take a look at the code.  I expect to be looking at code that looks like its straight out of the Matrix, though.  Haven't written C since college. 

Ben

(T1i + Sigma 30 1.4 also  :))
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 00:49:02
^ nice. well, i'm in college and i don't know much of it. i learned visual basic when i was younger but only learned to read syntax and stuff for C.

i find after looking at this for so long though i'm picking up on how it all works
Title: Re: 500d development
Post by: utnuc on 12 / April / 2011, 01:17:26
OK, installed everything correctly (I think).  When I went to edit the paths in the Makefile a lot of the arm binaries were different.  I *think I got them all correct.  What is the command line syntax for compiling ML?
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 02:23:51
in the ML working directory,
Code: [Select]
make clean to ensure the directory is cleared up from previous builds, then run
Code: [Select]
make and pray it compiles. if it does, it'll spit out an autoexec.bin file that you just load on the camera.

if it doesn't, trace back the compile log and see where the error is. there's gonna be a lot of warnings, but it'll still build.
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 02:28:39
I have been speaking to a few Japanese guys that work for a small company I know... Danon or something, I forget the name ;)
Anyway these guys are part of the team that wrote the fricking thing in the first place.

hey now...that sounds amazing. Can you ask these guys how the FPS is locked in the firmware?. i mean is there a hardware limit or a software limit?

Quote
What I`d recommend is have a break... leave it for a few days/week and come back to the easier stuff.
You`ve basically burnt yourself out for now, but Im sure with a little rest you can come back to it.
Maybe Alins can help out a bit too?

i'm just about to come out of my burnout phase...:)

Title: Re: 500d development
Post by: Jamez on 12 / April / 2011, 03:03:59
Already asked this a long time ago. Its definately not hardware is what I was informed. As a general rule of thumb the hardware usually supports 30-50% more than the software ever pushes it. I was told its nearly possible to get 5d performance from a 500d if pushed but it wouldnt be stable (pixel limited due to hardware differences of course).

I know coutts is a little disheartened atm but i think this is building momentum with more devs interested all the time.

Cheers
James
PS Another quake here in Japan a few mins ago :(
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 10:47:42
sorry to hear about the quake Jamez.

i feel bad asking this question considering the situation there: i haven't seen anything in the firmware for 500d about fps so i'm suspecting the whole thing is hiding under a different name. any clue what is that name?.

to put this some other way: do you know if there are controls in the firmware that just need to be tweaked in order to get higher fps, or your friends are just saying that the hardware has the capability for higher FPS only the firmware doesn't fully uses that (which in turn will pretty much mean that we need to write our own code almost from scratch to record movies at higher fps).
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 10:49:54
random thought: how great will it be if canon opens the source code for 500d...something like this can create a great revolution in DSLR space.
Title: Re: 500d development
Post by: rebelT1i on 12 / April / 2011, 11:07:25
random thought: how great will it be if canon opens the source code for 500d...something like this can create a great revolution in DSLR space.

I couldn't agree with you more, It was the same with android phones, now that they can be opened up easily they are a much better consumer product and the sale's backup that statement.. Canon would if they knew what was best for them in the long run..
Title: Re: 500d development
Post by: Jamez on 12 / April / 2011, 11:47:58
I think this very project (CHDK) forum we are using now wouldnt exist if Canon werent a little open to these things.

Id bet my last yen that they`d never make it open source, and you have to remember this project is probably close to 10 years old, no one remembers what they did a decade ago. They have moved onto other bigger, and better things.

I have no ideas about the finer details of how things work and cant really ask direct questions as to how things work etc, I wont get answers. (its trade secrets after all, and people could lose their jobs over it). I will try to ply him with beer - if its available, its seriously running short here! and see if I cant get a few suggestions out of him to look at... Im guessing most Canon sw is similar be it 500D, or EOS1 or whatever theyre working on these days.

In terms of fps etc, I think a better approach would be to finalise A1ex`s 550D port, get things stable, then look at breaking it all with something new  ::)
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 12:05:57
i found a function in the 500d dump for change fps, let me post it here, combining screenshots now.
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 12:23:31
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2Fn5j7yv.jpg&hash=375292c37ea8f5ba9b6edf1b9254b6a5)

view full size:
http://i53.tinypic.com/n5j7yv.jpg (http://i53.tinypic.com/n5j7yv.jpg)
Title: Re: 500d development
Post by: gravityrem on 12 / April / 2011, 12:27:57
i knew you wouldnt give up like that Coutts !
Title: Re: 500d development
Post by: Vel on 12 / April / 2011, 12:31:10
I need a change of pants. Love what you've been doing the past couple of weeks Coutts (And those of you coming out of your burnout phases!). I might be holding on to my T1i quite a bit longer than I expected to with new revelations like these. I was just thinking, if it's possible to change the fps is it possible to hack shutter speeds faster than 1/4000?
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 12:36:39
I think this very project (CHDK) forum we are using now wouldnt exist if Canon werent a little open to these things.

i agree. i just wish they go one more step and at least let people write in camera apps (kinda like iphone/android apps).

Quote
I have no ideas about the finer details of how things work and cant really ask direct questions as to how things work etc, I wont get answers. (its trade secrets after all, and people could lose their jobs over it).

my apologies, i didn't explain my question very well. I didn't mean to imply that you should ask your friend about trade secrets. i was just hoping that we can get some very general direction, something along the lines of : "it's somewhere in the firmware, dig deeper" or "you have to implement your own thing, the firmware can't help you". well, maybe even this kind of directions are too specific..don't know.

Quote
In terms of fps etc, I think a better approach would be to finalise A1ex`s 550D port, get things stable, then look at breaking it all with something new  ::)

more people should start hacking on the code then.
Title: Re: 500d development
Post by: rebelT1i on 12 / April / 2011, 12:54:43
Quote
more people should start hacking on the code then.

What computer skills are involved? C+, Pearl, ect?
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 12:58:25
refer to my quick guide i wrote up last night for anyone interested in getting started:


download the source code, use mercurial (download it).

http://bitbucket.org/alins/magic-lantern-for-500d (http://bitbucket.org/alins/magic-lantern-for-500d)

when you have mercurial installed, cd to that directory and run (ignore
Code: [Select]
[url] part, it wasn't supposed to be there).
Code: [Select]
hg clone [url]https://bitbucket.org/alins/magic-lantern-for-500d[/url]Then you will have the source downloaded to your computer.

Install the ARM-toolchain, it's hard to get going but chuchin posted a working setup for compiling under windows, that's how I compile.

http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)

Now once that is all setup, edit your make file to match your file paths. the make file on the bitbucket repository now is mine, i am using cygwin + yagarto on windows, so that will contain the right paths for you.

now start going through the code and start analyzing how it works and calls functions. you can download the latest 550d source to help port features like I'm doing, just run
Code: [Select]
hg clone -r 550d [url]https://bitbucket.org/hudson/magic-lantern[/url]
everything is written in C, so touch up if you don't know it yet (it's not hard to pick up on, i didn't know much previously but i'm starting to see how it all works now).

the code refers to the stubs file - 500d.110-stubs.S, and the constants file (i forget the name, it's const something) for certain things, that's why me finding the stubs values like audio_thresholds was so important.

that's a pretty good startup guide there, should get you off your feet.

just compare gui.c between the 500d and 550d, you'll see right there just how different everything in the 550d is, and how much work we have to do.
Title: Re: 500d development
Post by: utnuc on 12 / April / 2011, 13:59:36
Can't get ML to compile.   :( Getting an error:

Code: [Select]
Makefile:240: *** target pattern contains no `%'.  Stop.
My suspicion is that I'm not using the correct compiler binaries.  Why would my version of yagarto not have the same binaries as the ones you have under your paths?

Baby steps here, I cant begin to mess around with this until I can get the dang thing to compile once.  Perhaps you could rar up your yagarto folder and post it here?  I dunno.

Ben
Title: Re: 500d development
Post by: Jamez on 12 / April / 2011, 14:05:12
@ alins - Dont worry we are on the same page, I know what your referring to. Nows not a good time for many reasons in this country but I will be doing some digging.

@ coutts - looks like hes found what your looking for :)
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 14:16:05
@ coutts - looks like hes found what your looking for :)

you think that's it??? i just don't know how to call it now..

@utnuc
post the first 10 lines of your make file and post the output from the compiler.
Title: Re: 500d development
Post by: utnuc on 12 / April / 2011, 14:27:21
ARM_PATH=c:/home/Ben\ C.\ Smith/yagarto/
ARM_BINPATH=$(ARM_PATH)/arm-elf/bin
GCC_VERSION=4.4.2
CC=$(ARM_BINPATH)/gcc.exe
OBJCOPY=$(ARM_BINPATH)/objcopy.exe
AR=$(ARM_BINPATH)/ar.exe
RANLIB=$(ARM_BINPATH)/ranlib.exe
LD=$(CC)
HOST_CC=gcc
HOST_CFLAGS=-g -Os -W -Wall
VERSION=1.14
USER=Smith

Output:

Makefile:240: *** target pattern contains no `%'.  Stop.

Title: Re: 500d development
Post by: Jamez on 12 / April / 2011, 14:31:25
@ coutts
Yes I think so, but seriously dont add that until other things are more figured out.
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 14:47:29
ARM_PATH=c:/home/Ben\ C.\ Smith/yagarto/
ARM_BINPATH=$(ARM_PATH)/arm-elf/bin
GCC_VERSION=4.4.2
CC=$(ARM_BINPATH)/gcc.exe
OBJCOPY=$(ARM_BINPATH)/objcopy.exe
AR=$(ARM_BINPATH)/ar.exe
RANLIB=$(ARM_BINPATH)/ranlib.exe
LD=$(CC)
HOST_CC=gcc
HOST_CFLAGS=-g -Os -W -Wall
VERSION=1.14
USER=Smith

Output:

Makefile:240: *** target pattern contains no `%'.  Stop.



your arm path should be something like c:/cygwin/home/[username]/yagarto

navigate to c:/cygwin/home/ etc to check the file paths of all the binaries too and fix accordingly.

mine:
Code: [Select]
CC=$(ARM_BINPATH)/arm-none-eabi-gcc-4.5.2.exe
5OBJCOPY=$(ARM_BINPATH)/arm-none-eabi-objcopy.exe
6AR=$(ARM_BINPATH)/arm-none-eabi-ar.exe
7RANLIB=$(ARM_BINPATH)/arm-none-eabi-ranlib.exe
Title: Re: 500d development
Post by: LaLaPico on 12 / April / 2011, 15:51:05
I'm at work so I can view that tinyurl link.. But I am ecstatic!

Hey, we should all pitch in and get Alins and Coutts something nice.
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 15:52:10
lol.. if anything chuchin deserves it. if he didn't set the bootflag for us, we'd be nowhere :)
Title: Re: 500d development
Post by: pat_loonytoon on 12 / April / 2011, 16:07:31
Yeah I concur. Hey, not trying to sound ignorant but I have cygwin installed @ d:\cygwin and the Mercurial 500d install @ d:\program files\Mercurial\magic-lantern-for-500d. So do I go into that magic-lantern-for-500d directory and command prompt type "make clean" and then "make" inside that directory? Or do I have to do that inside the Cygwin environment? Slightly new at this, wanted to get it working months ago but couldn't seem to compile it.

 Mostly I keep getting-
 "" was unexpected at this time
 make: *** [magiclantern.lds] Error 255

Edit: I also have the arm-toolchain installed inside D:\cygwin\home\user\
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 17:09:21
first edit "Makefile" and edit the top lines to point to your arm-toolchain. make sure all the values are correct. for example if you have

CC=$(ARM_BINPATH)/gcc.exe

then run something like this:

Code: [Select]
$ {$CC}
when you run this do you see gcc.exe running or you get an error?.

repeat above for all executables.

make sure the gcc version is correct

if everything works fine run

Code: [Select]
$ make clean;make
inside magic-lantern-for-500d folder.

and ML should compile
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 18:35:52
Tonight I'm going to write a wiki page for setting up cygwin / yagarto to compile under windows, as that's the only way I know how to do it.

I also have a virtual machine with the arm-console and toolchain working, I could send that to anybody who requests it, you'd just need to install vm player.

the only issue is getting the virtual machine to communicate between your computer and it (i couldn't get vmware tools to work), so not sure how you'd transfer compiled builds to the sd card.
Title: Re: 500d development
Post by: pat_loonytoon on 12 / April / 2011, 19:33:14
Thanks Coutts, yeah nothing I do seems to get me up and running. I'll have to look more into what could be making it come up with error 255
Title: Re: 500d development
Post by: alins on 12 / April / 2011, 19:36:04
are you sure you have the latest Makefile on your box?. i'm looking at the error that you get and it makes me think you have something weird in the Makefile
Title: Re: 500d development
Post by: utnuc on 12 / April / 2011, 19:41:40
Please send my the VB image, I think that would be more seamless.
Title: Re: 500d development
Post by: pat_loonytoon on 12 / April / 2011, 19:45:14
I downloaded the source code with mercurial
(hg clone https://bitbucket.org/alins/magic-lantern-for-500d (https://bitbucket.org/alins/magic-lantern-for-500d))

Then followed directions from (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)) for the arm-toolchain setup

I edited my make file to match the file paths.

Also used command "hg clone -r 550d https://bitbucket.org/hudson/magic-lantern (https://bitbucket.org/hudson/magic-lantern)"

Still cannot compile inside the magic-lantern-for-500d folder though.

First 12 lines of makefile:
ARM_PATH=D:/cygwin/home/user/arm-toolchain
ARM_BINPATH=$(ARM_PATH)/arm-elf/bin
GCC_VERSION=4.5.2
CC=$(ARM_BINPATH)/gcc.exe
OBJCOPY=$(ARM_BINPATH)/objcopy.exe
AR=$(ARM_BINPATH)/ar.exe
RANLIB=$(ARM_BINPATH)/ranlib.exe
LD=$(CC)
HOST_CC=gcc
HOST_CFLAGS=-g -Os -W -Wall
VERSION=1.14
USER=Patrick

Do I have to add those various paths to my environment variables in windows?
Title: Re: 500d development
Post by: Coutts on 12 / April / 2011, 20:04:45
^ post a screencap of your compiler output. you have to make sure those file names are right. mine is the make file you downloaded, which is already setup to run with cygwin and yagarto. the only thing you should have to change is the ARM_PATH= part. the binpath, CC, objcopy, etc should all be correct as i'm using the same environment.
Title: Re: 500d development
Post by: pat_loonytoon on 12 / April / 2011, 20:14:05
I'll be working on it tonight. You have more pressing matters Coutts ;)
Title: Re: 500d development
Post by: utnuc on 13 / April / 2011, 00:19:51
Installing Vbox/Debian and following the 550D build instructions here: http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D)

We'll see how it goes with your source code Coutts.
Title: Re: 500d development
Post by: Coutts on 13 / April / 2011, 08:38:40
I had no luck getting an arm-toolchain script to build the toolchain on linux for me, so that's why i use cygwin / yagarto on windows (that's how chuchin does too). I'll have to upload that virtual machine somewhere today for those that want to use it.
Title: Re: 500d development
Post by: utnuc on 13 / April / 2011, 10:54:20
How long should it take to compile the arm-toolchain?   My Core 2 Duo 1.8G has been churning on it for 2 hours.
Title: Re: 500d development
Post by: RoaldFre on 13 / April / 2011, 11:27:04
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2Fn5j7yv.jpg&hash=375292c37ea8f5ba9b6edf1b9254b6a5)

view full size:
http://i53.tinypic.com/n5j7yv.jpg (http://i53.tinypic.com/n5j7yv.jpg)

I just had a quick look at that code. It looks to be just a bit of information-dumping/logging code. I doubt that much would change if you were to call that (by calling 0xFF032914, it doesn't even take any arguments).

What it basically does up untill that line is:

Code: [Select]
int *pointer = (void *) (0x43A8);
int flagbits = *pointer;
int second_argument_to_FF010C08 = (flagbits & (1 << 8)) >> 8;

The first argument to 0xFF010C08 is the string "Change FPS = %1d\n".

That 0x43A8 value comes from:
Code: [Select]
int **pointer_in_r4 = 0xFF032584; //code at 0xFF032918
int *pointer = *pointer_in_r4; //code at 0xFF032A84
pointer = (int*) ((char*)pointer + 0x2000); //code at 0xFF032A88
                        //C code rather ugly for hacking with pointers
flagbits = *(int*) ((char*)pointer + 0x630); //code at 0xFF032A8C
                        //don't know if that will work as valid C
//alternative:
flagbits = pointer[0x630 / sizeof(int)]; //code at 0xFF032A8C


Everything in that routine (also the other things like 'enable frm save', 'enable RAW save', ...) seems to look at the bits of "flagbits", with the masking bit given by the amount of bits shifted by the lsr (here 8, at 0xFF032A94).

You could try reading that value yourself, or try toggling it on or off with:
Code: [Select]
int *pointer = (void *) (0x43A8);
int flagbits = *pointer;

//enable:
flagbits = flagbits | (1 << 8);
//disable:
//flagbits = flagbits & ~(1 << 8);
//toggle:
//flagbits = flagbits ^ (1 << 8);

*pointer = flagbits;

I'd really love help out more, but I'm really short on time right now. I'll be sure to help hacking in the summer, when I have more time on my hands (but that will have to wait for about three months).
Title: Re: 500d development
Post by: Coutts on 13 / April / 2011, 15:22:06
I don't think we're going to just be able to compile the 550d source using the 500d stubs and stuff, since there are some differences between the 2 cameras, like ALO being changed with a property in the 550d, while on the 500d ALO is an extra custom function (550d has 12 custom functions, 500d has 13). I think if we take it slow and just port 1 feature at a time, converting the code to use the 550d code, we should be able to get it pretty close.

There are still 5 stubs values that need to be found:

NSTUB( 0xFF020760, GUI_CONTROL
NSTUB( 0xFF31CFCC, ChangeColorPalette
NSTUB( 0xFF2CFA54, MirrorDisplay )
NSTUB( 0xFF2CFAB4, NormalDisplay )
NSTUB( 0xFF2CE1F0, redraw_maybe )

that's from the 550d's stubs file, so I'm going to try to find those now. After that we need to confirm that all of the properties and constants are correct, before proceeding any further. I've been pretty short on time so no guarantees when those stubs will be done.. I'll try though.
Title: Re: 500d development
Post by: Liamykins on 13 / April / 2011, 16:15:40
Yess Coutts! Slow and steady is the best option, do not try and rush anything, you are doing such an amazing job, and so is everyone else involved, I just wish I could code, because I would be trying my best to help out too. I can't thank you enough for trying to do this. I hope everything is going well.
Title: Re: 500d development
Post by: utnuc on 13 / April / 2011, 17:15:32
OK, step one complete.  I've got a workable compiler, was able to generate an autoexec.bin.

For anyone else interested in pitching in, here is an alternative to Coutt's method to set up a compiler environment:

Install VirtualBox
http://www.virtualbox.org/ (http://www.virtualbox.org/)

Install an Ubuntu virtual machine (tested and working on v 10.10)
http://www.ubuntu.com/desktop/get-ubuntu/download (http://www.ubuntu.com/desktop/get-ubuntu/download)

Follow the instructions here to set up the arm-toolchain:
http://magiclantern.wikia.com/wiki/Build_instructions/550D (http://magiclantern.wikia.com/wiki/Build_instructions/550D)
Of course, when you get to the part about downloading the source, use this instead:
Code: [Select]
hg clone https//bitbucket.org/alins/magic-lantern-for-500d
Now on to some real work, trying to understand some of this...
Title: Re: 500d development
Post by: Coutts on 14 / April / 2011, 13:02:53
working on HTP / ALO now. I'm doing thigns different from the 550d.. instead of just having htp or ALO, i'm making 2 menu settings, one for htp and one for alo. because maybe someone might want to use both together, not just one or the other.

got htp all setup, now i need to implement alo. after this works i'll update the bitbucket and post a new autoexec.bin
Title: Re: 500d development
Post by: utnuc on 14 / April / 2011, 13:12:57
Nice work, Coutts.  Looking forward to the new build.
Title: Re: 500d development
Post by: Coutts on 14 / April / 2011, 16:52:51
ugh, noticed the custom functions aren't working right at all (mirror lockup in the current build too). the custom function property has a length of 13 in the 550d and a length of 14 on the 500d, and the grouping for custom functions is all different. i'm trying to figure this out now, i don't understand how the custom functions are being changed exactly. hopefully have this figured out soon.
Title: Re: 500d development
Post by: Coutts on 14 / April / 2011, 20:31:56
updated bitbucket repository. a lot of the changes in the changeset are from tab spacing being different.. idk my computer screwed a lot of stuff up. but i commented out the old alo/htp functions, added a new menu item for ALO, and now they toggle independently.

the problem is you can't change the custom functions for group 2 from the custom function menu, long story short it's just going to have to be this way - they can only be changed from the ML menu. I'm going to have to add 2 more menu entries for the 2 other custom functions in group 2 (high iso and long exposure noise reduction). after that everything will be good though, you just have to change those 4 custom functions (htp, alo, high iso noise reduction, long exp noise reduction) from the ML menu.

i'm not releasing a new autoexec.bin because it's not done yet, but for anyone that wants to take a look just update your code with what's on the repository now.

i'm gonna have to write a big if statement that handles all of the possible combinations of alo/htp/noise reductions, unless somebody has a better way to do it. i've been working on this for about 8 hours now and that's all I can come up with.

also I'm not sure if I need to pass the length as 0xE or change it back to 0xD whenever there's a prop_request_change for prop_cfn. the length of prop_cfn on the 550d is 13, but i noticed today that the length on the 500d is 14, so I think leaving it at 0xE is right.. i haven't tried putting it back to 0xD yet, not sure if it wouldn't work or not.

my mind has been racing all day, it's going to explode.
Title: Re: 500d development
Post by: utnuc on 14 / April / 2011, 22:23:30
OK, decided to tackle the "simple" task of adding crop mark files.  For some reason I can't get the menu to show the 2 additional crop mark files I added.  Here's the code I think that is suspect:
Code: [Select]
crop_display( void * priv, int x, int y, int selected )
{
int index = *(unsigned*)priv;
bmp_printf(
selected ? MENU_FONT_SEL : MENU_FONT,
x, y,
"CropM:%s%s",
(index == 1 ? crop_file_1 + 3 :
(index == 2 ? crop_file_2 + 3 :
(index == 3 ? crop_file_3 + 3 :
(index == 4 ? crop_file_4 + 3 :
(index == 5 ? crop_file_5 + 3 :
"OFF"
))))),
(cropmarks || !index) ? " " : "!" // ! means error
);
}


I have properly defined crop_file_4 and crop_file_5, but I only see the first 3 when I compile and look in the menu.  Is there another piece of code controlling menu items?  Thoughts anyone?  I can't find any clear documentation on the bmp_printf function... it is not native C, must be something defined elsewhere perhaps?

Title: Re: 500d development
Post by: Coutts on 15 / April / 2011, 01:07:11
^ post your code for your menus. make sure you're using the right toggle function. probably going to have to write your own like shutter speed / aperture / iso use.
Title: Re: 500d development
Post by: aznguy on 15 / April / 2011, 03:09:04
Coutts glad your working again but rest up man!
Title: Re: 500d development
Post by: alins on 15 / April / 2011, 16:52:21
OK, decided to tackle the "simple" task of adding crop mark files.  For some reason I can't get the menu to show the 2 additional crop mark files I added.  Here's the code I think that is suspect:
Code: [Select]
crop_display( void * priv, int x, int y, int selected )
{
int index = *(unsigned*)priv;
bmp_printf(
selected ? MENU_FONT_SEL : MENU_FONT,
x, y,
"CropM:%s%s",
(index == 1 ? crop_file_1 + 3 :
(index == 2 ? crop_file_2 + 3 :
(index == 3 ? crop_file_3 + 3 :
(index == 4 ? crop_file_4 + 3 :
(index == 5 ? crop_file_5 + 3 :
"OFF"
))))),
(cropmarks || !index) ? " " : "!" // ! means error
);
}


I have properly defined crop_file_4 and crop_file_5, but I only see the first 3 when I compile and look in the menu.  Is there another piece of code controlling menu items?  Thoughts anyone?  I can't find any clear documentation on the bmp_printf function... it is not native C, must be something defined elsewhere perhaps?



look into 550d implementation of cropmarks, that's what we want to have for 500d.

If i remember the 550d correctly, the way it works is like this:
1. loads the cropmarks into an array of some sort by looking into the cropmrk folder for any file with extension bmp (i think it just looks for any filename + extension that ends in bmp).
2. the menu then cycles trough the array for the user to pick the cropmark

this way if you add one more cropmark file you don't actually need to change the code to know about it.

i hope this makes sense.
Title: Re: 500d development
Post by: Coutts on 15 / April / 2011, 20:17:07
I want the camera to use a config file on the card too, to save settings. I think that's implemented on the 550d, right?
Title: Re: 500d development
Post by: alins on 15 / April / 2011, 20:21:01
i believe the config file will work in 500d also.
Title: Re: 500d development
Post by: rebelT1i on 15 / April / 2011, 21:12:09
Here is a short video messing around with QScales. I'm so glad there is still people interested in developing this. My opinion is that this software is increasing the value of my camera, maybe not dollars wise, but diffidently in use! Thanks so much for all the hard work going into this project!

http://www.youtube.com/watch?v=9BP_a7yW46E# (http://www.youtube.com/watch?v=9BP_a7yW46E#)
Title: Re: 500d development
Post by: utnuc on 15 / April / 2011, 22:21:17
OK, decided to tackle the "simple" task of adding crop mark files.  For some reason I can't get the menu to show the 2 additional crop mark files I added.  Here's the code I think that is suspect:
Code: [Select]
crop_display( void * priv, int x, int y, int selected )
{
int index = *(unsigned*)priv;
bmp_printf(
selected ? MENU_FONT_SEL : MENU_FONT,
x, y,
"CropM:%s%s",
(index == 1 ? crop_file_1 + 3 :
(index == 2 ? crop_file_2 + 3 :
(index == 3 ? crop_file_3 + 3 :
(index == 4 ? crop_file_4 + 3 :
(index == 5 ? crop_file_5 + 3 :
"OFF"
))))),
(cropmarks || !index) ? " " : "!" // ! means error
);
}


I have properly defined crop_file_4 and crop_file_5, but I only see the first 3 when I compile and look in the menu.  Is there another piece of code controlling menu items?  Thoughts anyone?  I can't find any clear documentation on the bmp_printf function... it is not native C, must be something defined elsewhere perhaps?



look into 550d implementation of cropmarks, that's what we want to have for 500d.

If i remember the 550d correctly, the way it works is like this:
1. loads the cropmarks into an array of some sort by looking into the cropmrk folder for any file with extension bmp (i think it just looks for any filename + extension that ends in bmp).
2. the menu then cycles trough the array for the user to pick the cropmark

this way if you add one more cropmark file you don't actually need to change the code to know about it.

i hope this makes sense.

This does make sense.  Lemme look through the 550D codebase.  Thanks for the tips.
Title: Re: 500d development
Post by: Jamez on 16 / April / 2011, 12:32:17

There are still 5 stubs values that need to be found:

NSTUB( 0xFF020760, GUI_CONTROL
NSTUB( 0xFF31CFCC, ChangeColorPalette
NSTUB( 0xFF2CFA54, MirrorDisplay )
NSTUB( 0xFF2CFAB4, NormalDisplay )
NSTUB( 0xFF2CE1F0, redraw_maybe )

that's from the 550d's stubs file, so I'm going to try to find those now. After that we need to confirm that all of the properties and constants are correct, before proceeding any further.
Just wondering if you managed to find these Coutts?
I think if these were found it would be more stable.

PS Dont turn on the Digtal Filters
Title: Re: 500d development
Post by: Coutts on 16 / April / 2011, 15:13:59

There are still 5 stubs values that need to be found:

NSTUB( 0xFF020760, GUI_CONTROL
NSTUB( 0xFF31CFCC, ChangeColorPalette
NSTUB( 0xFF2CFA54, MirrorDisplay )
NSTUB( 0xFF2CFAB4, NormalDisplay )
NSTUB( 0xFF2CE1F0, redraw_maybe )

that's from the 550d's stubs file, so I'm going to try to find those now. After that we need to confirm that all of the properties and constants are correct, before proceeding any further.
Just wondering if you managed to find these Coutts?
I think if these were found it would be more stable.

PS Dont turn on the Digtal Filters

I talked to alex, mirror display and normal display were part of the april fools joke so no need to worry about those. i found changecolorpalette pretty easily, i don't think it's being used right now so that won't change stability at all.

redraw_maybe tells the camera to redraw all of it's canon gui elements, and gui_control is some event I think. I couldn't find either of these 2...


I'm trying to tackle ALO/HTP right now. i'll give everyone a rundown on how custom functions in ML work:

custom functions are grouped into 4 groups (you can see this grouping from your  custom function menu). the custom functions property has 4 buf's in the code. it's an array, it does something like this:

cfn[1] = buf[1];
cfn[2] = buf[2];
cfn[3] = buf[3] & 0xFF;

i don't know what that 0xFF thing does, but anyways.. there's a print statement commented out that's used for testing purposes, it prints the value of each "cfn group". each cfn "group" has a value of all the custom functions in it. EX: in the 500d, group 2 (cfn[1])'s value when everything in group 2 is turned off except for HTP being on, it's value is 10000. when you turn ALo from std (default value, 0) to low, the value of cfn[1] becomes 1010000 (add 1000000).

well MLU works fine, because everything in that group (cfn[2]) is either 100, 10, etc. so alex (or whoever wrote this function, [admin: avoid swearing please] genius) uses bitwise operations. so setting MLU on:

Code: [Select]
void set_mlu(int enable)
{
        if (enable) cfn[2] |= 0x100;
        else cfn[2] &= ~0x100;
        prop_request_change(PROP_CFN, cfn, 0xE);
}


says, if you pass a 1 to set_mlu, then the variable enable has a value, so:

if enable has a value, set cfn[2] to the result of a bitwise or operation of 0x100.
else, set cfn[2] to the result of a bitwise and operation with the inverse of 0x100
request prop change for prop_cfn..blah blah.

so a bitwise or operation:
this takes the value of 2 binary values and compares, if either bits are 1, then the result is 1, otherwise it's zero. example: turn MLU on, the original value of cfn[2] is 0. so the operation looks like this:

000 <-- old value
100 <-- new value
----
100 <-- result


then turning it off, a bitwise and operation takes each pair of bits and compares them, if they both are 1 then the result is 1, otherwise it's zero. well remember that tilde says to invert the bits of that 0x100. so turning MLU off it looks like:

100 <-- old value
011 <-- inverted 100
----
000 <-- result - MLU is turned off


so this works fine and dandy when you're only dealing with 1 and 0s, like the MLU function where MLU is 100 and the other custom functions in that group are 1000 or 10000, etc. SO THE PROBLEM WITH ALO IS, alo doesn't just use 1s and 0s, it uses 2s and 3s:

cfn[1] values:
ALO standard (default value) - 0
ALO low - 1000000
ALO high - 2000000
ALO off - 3000000

so we can't use these ingenious bitwise operations.. so the only solution i've come up with is include every custom function in group 2 in the ML menu, and just say from now on you adjust those from the ML menu (changing the custom function menu won't work right), and a huge if statement to cover every possible setting combination of htp/alo/high iso noise reduction/long exp noise reduction will have to be used to handle this. idk though, it's gonna be a HUGE if statement and probably going to slow ML down, as it'll always be checking this if statement in the shoot_task's while statement that runs as long as the camera is running.


so this is what I spent all day yesterday working on and figuring out. It took me literally all day to understand how the bitwise operations and stuff work. this is where I'm stuck now. We need a better way to handle this. in the 550d, Alex found the property location for ALO, to avoid this mess of the 2s and 3s and not being able to use simple bitwise operations. well, i tried finding the ALO functions in the 500d dump yesterday, NO LUCK.. so frustrating. prop_spy isn't working either for some reason, I think we need to verify our debug.c code with the 5d and 550d to make sure our prop_spy code isn't different.

we need to verify our properties are correct.. but without prop spy idk what to do.
Title: Re: 500d development
Post by: Coutts on 16 / April / 2011, 15:21:52
also I don't like the endless loops like shoot_task.. just seems like it's asking for trouble. I'm beginning to understand how the code can be "optimized". oh the joys of learning :) finally, i'm starting to make sense of things.
Title: Re: 500d development
Post by: Coutts on 16 / April / 2011, 19:03:07
prop_spy is now working. had to take code from the 5d repository because it looks like it doesn't work in the 550d (Alex, you should fix this).

updated bitbucket repository, everybody re-clone their working directory for the change.
Title: Re: 500d development
Post by: rebelT1i on 16 / April / 2011, 19:30:40
everybody re-clone their working directory for the change.

I don't know how to do this, Is it a big enough change for someone to explain how to do this for the other people here like me? Or am I the only one here that doesn't know how to do this?
Title: Re: 500d development
Post by: Coutts on 16 / April / 2011, 19:55:02
actually don't re-clone. i think prop_spy works on the 550d but for some reason it's not working on the 500d. i'm trying to get alex's prop_spy to work still.

edit:
it works - but it's being spammed by the alo/htp/mlu stuff. comment out the mlu/htp/alo stuff in shoot_task in shoot.c and it should be cleaner. i don't think it's showing all of the properties though. i want to mess with it now but i'm heading out for the night, I need a drink.

i'll look at it more tomorrow, if anyone finds anything post it up!!
Title: Re: 500d development
Post by: a1ex on 17 / April / 2011, 02:21:52
Coutts: prop_spy is disabled with an "#if 0" in debug.c. Change it to "#if 1".
Title: Re: 500d development
Post by: RoaldFre on 17 / April / 2011, 06:53:13
cfn[1] values:
ALO standard (default value) - 0
ALO low - 1000000
ALO high - 2000000
ALO off - 3000000

If I understand you correctly, the binary values are:

Code: [Select]
ALO standard 00000000
ALO low      01000000
ALO high     10000000
ALO off      11000000

You can change these as well using some bit twiddling by doing:

Code: [Select]
void set_alo(int mode)
{
        /*
         * mode:
         * 0 = standard
         * 1 = low
         * 2 = high
         * 3 = off
         */

        cfn[1] = (cfn[1] & (~0xC0)) | ((mode << 6) & 0xC0);
        //or, if you are sure that mode will only hold valid values (0 to 3):
        //cfn[1] = (cfn[1] & (~0xC0)) | (mode << 6));
        prop_request_change(PROP_CFN, cfn, xxxx);
}

I don't know what the third argument of prop_request_change should be out of the top op my head, though.
Title: Re: 500d development
Post by: RoaldFre on 17 / April / 2011, 06:56:19
updated bitbucket repository, everybody re-clone their working directory for the change.

Note: you don't need to issue a clone command. You can just pull the specific changes by doing:

Code: [Select]
hg pull
Title: Re: 500d development
Post by: Coutts on 17 / April / 2011, 10:37:45
^ hmm, i wonder if that would work. i'm trying to find the property location for ALO. I couldn't find it anywhere in the 500d dump.. i wonder if it even has one?
Title: Re: 500d development
Post by: Coutts on 17 / April / 2011, 10:42:29
Coutts: prop_spy is disabled with an "#if 0" in debug.c. Change it to "#if 1".
whenever i'd enable it the camera wouldn't boot for some reason. i realize there is code here to filter out frequent prop changes, but i could only get the prop_spy code from the 5d to work. i don't think it's showing everything though.. i'm not seeing anything showing up for focus confirmation or shutter half press.
Title: Re: 500d development
Post by: utnuc on 18 / April / 2011, 09:23:43
OK, I have fixed the cropmarks.  The code from the 550D pretty much worked, with some minor tweaking.  The new code allows you to add up to 9 cropmarks to your folder, and ML will find them and cycle through in the menu.  Known issues with the code:

CMs seem to not draw where the audio monitor resides
When you switch between CM files there seem to be some remnants of the old CM image

I don't know how to update the code repository, so I have attached the update zebra.c file (can someone help here?). 

Ben
Title: Re: 500d development
Post by: Jamez on 18 / April / 2011, 10:50:15
Nice Ben.
I have no practical programming experience unfortunately but do have a lot of project management experience, and can see things going a bit pearshaped with people working on different things etc, (of course we cant say who does what as its all volunteered)..

Im in the process of making some vids to show where we are at on all the features etc and have been updating the wiki here and there, improving spelling, and a few other minor things getting to know how it works.

Perhaps we can have some structure in here?
Id suggest the following...
- Contact whoever has global editing writes on the wiki to see if we cant get a line added to the index page of the wiki updating the news section saying that 500D/T1i/Kiss X3 is underway. (I will do this)
- Update the repository to includes Ben`s code above
- See if we cant finalise Ben`s code to clear up the second point, I read somewhere one of the functions clears the screen, so perhaps this needs adding on crop mark change. PS I dont think your first point is a bug at all, its meant to be like that I believe.
- Define whose currently doing what so duplication doesnt occur.
- Test where we are at now, see whats working fully etc (This is what Im doing currently).
- Define what needs to be done and who can volunteer to do it etc.

If we can have Coutts, Ben, and RoaldFre with a few pointers from Alex and Arm.Indy etc then it would be awesome.

Its important to realise to start small, rather than trying to jump in the deep end and try to adjust the frame rate etc, even if this is what we all really want.
Title: Re: 500d development
Post by: Coutts on 18 / April / 2011, 12:18:32
i'm gonna take a look at the crop marks right now and see if I can get that all finalized up.

While porting features is important, I'd still like to verify that all of our properties and constants are correct before we proceed any further.. we need to have our base all setup before we build on it.

I updated debug.c in the repository the other day with a working prop spy from the 5d. i don't think it's showing all of the properties though, so i'm gonna try to get the prop_spy code from the 550d to work. for some reason the camera doesn't turn on when i try to enable it though.. need to figure this out.
Title: Re: 500d development
Post by: Coutts on 18 / April / 2011, 15:46:37
the 500d has AllocateMemory defined in dryos.h, in the 550d i cannot find where AllocateMemory is defined.. it's nowhere. it's called in a bunch of different files but I can't find where the actual function is defined. WTF..

racking my brain here.
Title: Re: 500d development
Post by: a1ex on 18 / April / 2011, 16:45:35
Implicit declaration ;)
Title: Re: 500d development
Post by: utnuc on 18 / April / 2011, 16:48:05
I can't find it either, but is mentioned in stubs-5d2.110.S
Quote
/** AllocateMemory() and FreeMemory() are wrappers around malloc? */
NSTUB( 0xFF86DFE8, AllocateMemory )
NSTUB( 0xFF86AF60, FreeMemory )

/** AllocateMemory() calls this one */
NSTUB( 0xFF86ABD0, _malloc )
Title: Re: 500d development
Post by: Coutts on 18 / April / 2011, 20:29:30
Implicit declaration ;)
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2Fw1qixh.png&hash=2f7885fc109e2793d9ddb6717b072593)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2F1416rkn.jpg&hash=0d7c732950c2a7382c450350f9a16bbc)
Title: Re: 500d development
Post by: utnuc on 18 / April / 2011, 21:45:50
LOL.  I'm gonna report the original ML developers to ANSI. :D
Title: Re: 500d development
Post by: Jamez on 19 / April / 2011, 00:16:34
I was going to say... prob half the open source projects out there dont adhere to these kinds of standards.

Maybe you can say what your looking for, or what still needs to be found Coutts at this stage?
Title: Re: 500d development
Post by: a1ex on 19 / April / 2011, 15:20:04
It's a built-in function... in Canon firmware :D
Title: Re: 500d development
Post by: Coutts on 19 / April / 2011, 20:45:41
I updated the repository just now guys. I'm not releasing an autoexec since htp/alo still isn't all worked out yet.

- got prop_spy to work (alex/alins take a look, i defined num_properties with 2048 instead of 4096). had a buffer over flow problem when i'd try to use 4096 (5d code has 8192?? :o )
- cleaned up the boot process - got rid of some stuff in 5d-hack.c, particularly the my_sleep_task function. deleted it, it isn't needed and it was preventing ML from ever reaching debug_init in debug.c
- commented out a couple duplicates in the stubs file.

feels good to finally make some progress :D

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/de5b8ba29cbf




I started looking into making the menu close cleaner / be more stable. We need to find the location of redraw_maybe in the 500d, then we can use this to redraw all of the canon elements on the screen (i believe it's similar to when you cover the lcd sensor).
Title: Re: 500d development
Post by: utnuc on 19 / April / 2011, 22:27:44
Nice work Coutts. 

I've been just reading through the code trying to piece together what everything does.  The documentation is abysmal, to say the least.  Trying to figure out if there is anything I can fix just by tweaking the code.  I'm gonna look at rack focus for a few days and see what pans out, it seems that ML is appropriately getting the focal distance.  Any thoughts?

Good points, Jamez.  I think we are too disorganized as a group to really assign tasks... especially since we each have such varying levels of comfort with the code (at least, I know my level is low...). The list of items and their progress is listed here: http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i) under Features, but it is not up to date. 

Title: Re: 500d development
Post by: Jamez on 20 / April / 2011, 00:54:33
It was little old me that added that list of items a while ago, and I will be updating it this weekend with videos etc.
A lot of the stuff on there actually works  :)
It seems that Coutts seems to be jumping all over the place doing different things, that dont seem to be connected. (I dont mean this in a negative way, its just an observation, people really appreciate your efforts here).  I think we just need some logical way to first work out what we need to do, what doesnt work, then some way to try to look into the stuff that doesnt work.

I know there is massive differences in experience and level and comfort with the code.

Do we need to find any stubbs stuff still Coutts for example?
Im sure theres quite a few "easy" tasks that still need to be done, it seems that Coutts is the main man here, so perhaps he can spend a little time defining what needs to be done etc?
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 01:05:19
It was little old me that added that list of items a while ago, and I will be updating it this weekend with videos etc.
It seems that Coutts seems to be jumping all over the place doing different things, that dont seem to be connected. (I dont mean this in a negative way, its just an observation, people really appreciate your efforts here).  I think we just need some logical way to first work out what we need to do, what doesnt work, then some way to try to look into the stuff that doesnt work.

I know there is massive differences in experience and level and comfort with the code.

Do we need to find any stubbs stuff still Coutts for example?
Im sure theres quite a few "easy" tasks that still need to be done, it seems that Coutts is the main man here, so perhaps he can spend a little time defining what needs to be done etc?

if someone can find the redraw_maybe stub, i can implement the lv_redraw function from the 550d, and call it in the menu close function. that will fix all of the issues with pieces of ML being left on the screen (big stability increase).
Title: Re: 500d development
Post by: Jamez on 20 / April / 2011, 01:14:14
Ok and after we have found that Coutts?
Are there any other stubbs etc that need finding?
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 10:27:14
Ok and after we have found that Coutts?
Are there any other stubbs etc that need finding?
not really that I know of, but that would definitely help the menu a lot.
Title: Re: 500d development
Post by: utnuc on 20 / April / 2011, 10:28:34
Am I correct in assuming that the IDApro method of identifying stubs has been exhausted?

Ben
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 10:39:34
Well not exactly, that's still my preferred method as I know 100% if it is correct or not. The functions just aren't complete / look funky, we need a good idc file or something.
Title: Re: 500d development
Post by: Jamez on 20 / April / 2011, 10:43:31
Ok and after we have found that Coutts?
Are there any other stubbs etc that need finding?
not really that I know of, but that would definitely help the menu a lot.
Ok great :)

I can think of one tiny improvement that must be pretty easy.
At the bottom of the screen, the black bar where all the iso information, white balance, etc.
Is there any way to make that a little thinner so we get more real estate for the image?
Maybe I can make a little wishlist on the wiki?
It does seem to eat the batteries a little quicker from my findings too, but theyre so cheap anyway off ebay its not an issue :)

Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 10:48:24
I've been trying to understand the program flow of ML, where it starts and how it runs through everything. So far Alex has helped me a lot and has be going in the right direction. It all starts in 5d-hack.c. This is what I have mapped out so far:

Quote
5dhack.c
- copy_and_restart() // copy ML code into ram, soft reboot camera.
- my_dispatch_hook() // called by copy_and_restart. replace canon init tasks with ML ones so the camera calls ML tasks instead, before the soft reboot.
- call_init_funcs() //ML init functions
- my_init_task() //call canon's init task and display ML boot text
- menu_init() // menu.c - menu initialization
- debug_init() // debug.c - debug initialization
- call_init_funcs() // call all of the init functions
---end--of--5d-hack.c---
Title: Re: 500d development
Post by: utnuc on 20 / April / 2011, 11:36:27
Just talking through some of this out loud... I find it interesting that stack focus works, but rack focus does not.  This means that ML is able to accurately change focus (the hard part).  The only part that seems to be broken is when ML tries to set the beginning point of focus, I can't seem to get it to capture with either the "zoom out" button or the shutter half press...

I looked at focus peaking briefly yesterday... wow, that is some complicated code (maybe 1k lines?). 
Title: Re: 500d development
Post by: utnuc on 20 / April / 2011, 11:47:22
Code: [Select]
static void
focus_reset_a( void * priv )
{
focus_task_delta = 0;
}

The variable in question is focus_task_delta.  If I change this code to make the reset value 200, recompile, the rack focus runs perfectly with my Sigma 30 1.4 (with a fixed focal change of 200 mm).  This may be easy to fix...
Title: Re: 500d development
Post by: utnuc on 20 / April / 2011, 12:32:15
I think we need to find PROP_LV_FOCUS_DATA... referred to in 550D debug.c.  I assume this is a stub? 
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 12:45:10
I think we need to find PROP_LV_FOCUS_DATA... referred to in 550D debug.c.  I assume this is a stub?  

it's in property.h looks like. i don't know how to verify properties, i think it's gonna be a combination of examining dumps in idapro and maybe using prop_spy (since it's working now). Though, prop spy doesn't seem to show everything like button presses or af confirmation, so i'm not sure if it's just filtering out stuff yet or what.

i'm gonna try to add some more stuff this afternoon. mainly, I'm going to try to use the ALO prop set code from the 550d again.
we're slowly making our code match the 550d, 5d-hack.c is pretty much identical now (aside from a couple functions being different, had to use the task initialization code from the 500d, 550d's routines didn't work for some reason. i don't understand the trampoline / task stuff at all yet).
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 14:39:46
just updated repository again. lots of little changes, just porting more 550d code to the 500d.
Title: Re: 500d development
Post by: silasje1 on 20 / April / 2011, 15:30:34
i updated the wiki page. Tell me if it is good enough.
Title: Re: 500d development
Post by: pat_loonytoon on 20 / April / 2011, 19:56:14
As far as the audio menu I know audio gain seems to work in my camera, selectable input source isn't needed since it will always register as just the on-board mic, AGC can be disabled and digital filters don't seem to do anything. I've never used ML on another camera though so I have no idea what digital filters do or what is considered 100%. On-screen audio meters tend to work however it isn't as smooth as I think it could be. Hope that helps, someone else may have different results...not sure how but I suppose it's possible. Thanks for the team recognition, it gives me a warm fuzzy even though I still haven't got the code to compile on my system lol
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 21:09:56
i've been working on porting debug.c today. I've now got it compiling with debug.c, shoot.c, and zebra.z all fully ported. It's running on the camera but i'm working on getting the menu to display. Once this is polished, that means audio/lcd triggering, trap focus, rack focus, focus peaking, falsecolor, magic circles (zoom in on focus point in lv), almost all features added.

really close :) we might be closer to being done than we realize.
Title: Re: 500d development
Post by: rebelT1i on 20 / April / 2011, 21:55:27

really close :) we might be closer to being done than we realize.

That is the most encouraging thing I've heard in a LONG time! I hope that your right and if I knew who you were I'd buy you a beer for sure!!
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 22:43:22
^ haha thanks! Unfortunately I'm only 20 years old, so I wouldn't be able to go to any bars yet hahah.
Title: Re: 500d development
Post by: rebelT1i on 20 / April / 2011, 22:53:28
^ haha thanks! Unfortunately I'm only 20 years old, so I wouldn't be able to go to any bars yet hahah.

WOW 20? Very talented 20 yr old! Keep it up, you have so much potential!
Title: Re: 500d development
Post by: Coutts on 20 / April / 2011, 23:31:09
lol thanks. i've never really programmed much, so this is big for me, I'm becoming more and more comfortable reading this code every day.

right now i'm stuck, the camera is running all of the 550d code now, but the menu won't display. I'm using print statements to see how far through the code it's getting in 5d-hack.c, and it never reaches my_init_task(), but it keeps showing my_task_dispatch_hook(), even after i clear the screen with the lcd sensor. It's like it's stuck in the my_task_dispatch_hook() function and just keeps looping, showing the print statement with it.. i'm not sure what to do now, I need Alex's help.

once this is figured out and I can pull up the menus, we can finish this off finally :)
right now it's displaying the 550d ML elements (clock, iso and it says Flash: On under the clock), so we're running the 550d code at this point :)
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 00:08:37
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa7.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F215525_10150558848595344_704010343_18145219_642262_n.jpg&hash=75c736896e1f66862a135c2bf8fea922)

running 550d code now :) no features really work yet, but she's running alright :D :D :D


I updated the repository with the latest changes. I suggest everybody makes a copy of their current repository to keep a copy of the "old" 500d code, as a lot of files have changed now.
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 01:08:06
Here's the first beta release of Magic Lantern for the 500d!! It is buggy, but let us know what features work / don't work. false color is working awesome, it's pretty sick :D

It is running on almost all of the code from the 550d. This is the first major step to completion!  :)
Title: Re: 500d development
Post by: Vel on 21 / April / 2011, 01:27:30
Awesome.
Title: Re: 500d development
Post by: pat_loonytoon on 21 / April / 2011, 01:39:04
wow Coutts, you are the man- no matter what those guys around the water cooler say! Maybe I can buy you a soda (since of course alcohol is out of the question). You have a paypal account?
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 02:01:23
haha, thanks guys. here's another quick build. fixed the menu fonts and fixed the position of the audio meters bar in live view/video. i updated the bitbucket repository too.

THINGS THAT SEEM TO WORK
- false color
- zebras (BEAUTIFULLY)
- intervalometer
- audio meters
- crop marks
- auto save config
- power save (no more wasting battery!!)
- live view zoom settings (5x or 10x, or both)
- audio gain
- audio triggering
- lcd triggering (with wave)
- shutter/iso/aperture toggles (a little buggy but work)
- histogram (rgb/luminosity)
- white balance settings
- contrast, saturation and picture style
- flash AE comp
- lighting adjustment
- screenshot
- prop/mem/evt spy
- dm log dump
- config save / autosave (don't think delete is working at this time)

so looks like it's a good start!! :) now to get everything else working :D
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 02:23:36
Audio meters dont work at all here (on either of these new builds)
Where should the audio meters bar be out of interest?
At the top of the screen where it was, or have you moved it?

ah ignore me, global draw is set to off by default, enabling it brings back the audio meters :)
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 02:32:37
PS WOW What a toy!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
I feel like a kid playing with all the settings, those histograms are amazing.

Thanks for all your work here Coutts!
PS Magic Lantern for 550D in info screen ;) :D
PPS Wiki updated :)
Title: Re: 500d development
Post by: pat_loonytoon on 21 / April / 2011, 03:39:05
This has been fun to play with.
Quick notes:
movie logging must still be set to off in order to record video.
audio is being record properly in movie mode.
lcd remote shooting only works if lcd auto-off is turned on in camera menu.

last but not least, i need sleep
Title: Re: 500d development
Post by: arm.indiana on 21 / April / 2011, 03:55:57
I've been trying to understand the program flow of ML, where it starts and how it runs through everything. So far Alex has helped me a lot and has be going in the right direction. It all starts in 5d-hack.c. This is what I have mapped out so far:

Hi,

See
http://magiclantern.wikia.com/wiki/5d-hack (http://magiclantern.wikia.com/wiki/5d-hack)
http://magiclantern.wikia.com/wiki/Autoexec (http://magiclantern.wikia.com/wiki/Autoexec)

Indy
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 04:11:47
agc looks like it's working too! good tip on the movie_logging, that must not be working it looks like.
bit rate control is working too! I just shot a vid at 55mbps sustained!  :D
also mode remapping works too! you can remap video mode to creative auto (CA), or A-DEP.


:D :D
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 09:14:28
well at this point the next thing to do is map all of the yuv422 stuff and change consts and zebra.c file to match the right yuv422 locations.. anybody even know where to start?? i've been messing with it all night with no luck.
Title: Re: 500d development
Post by: mk11174 on 21 / April / 2011, 10:35:53
I am new here and know nothing about coding, but I have a T1i, and you guys especially Coutts are making my dreams come true, thanks for all ur hard work and sleepless nights 8], Does this mean Manual Control of shutter and Iso in movie mode might eventually be possible?, I have an old manual lens for aperture but would love Iso and shutter control, I hope its possible as I see many also hope for these features. Keep up the good work!!!!
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 12:05:10
I am new here and know nothing about coding, but I have a T1i, and you guys especially Coutts are making my dreams come true, thanks for all ur hard work and sleepless nights 8], Does this mean Manual Control of shutter and Iso in movie mode might eventually be possible?, I have an old manual lens for aperture but would love Iso and shutter control, I hope its possible as I see many also hope for these features. Keep up the good work!!!!
glad everybody is enjoying what's being done here! as far as manual control in video -- not yet. we're still trying to make everything else stable / work.

I've just updated the repository for the last time probably for today. I'm burned out, I've been working on this for the past 15 hours straight (didn't go to bed). As of right now though the 550d code is 99% ported over. The only files not fully ported are:

- 5d-hack.c --- can't get menu to work if i fully convert this file - has to do with my_task_dispatch_hook() function and gui.c as stated below.
- 422-jpg.py --- not sure what this does, haven't touched it.
- audio.c --- haven't fully ported yet, camera is working fine for now it seems. nothing extra to add that i know of.
- gui.c --- only code difference is in gui_main_task_550d(), related to menu problem with 5d-hack.c.


The next thing we need now is to find the stub for redraw_maybe. The menu will close a lot cleaner after this. We also need to verify/find all of the yuv422 related values, that should fix focus peaking, zoom overlays and a few other things.

Feel free to update your codebase with the latest and greatest. It was a successful night, this is the biggest progress yet for the 500d. :D
Title: Re: 500d development
Post by: Liamykins on 21 / April / 2011, 12:20:18
So much progress! I got mega excited when I read all of this, I have been messing around with the latest and when I switch between the canon menu and live view, I get 'err 70' sometimes, not everytime. Is this just because it's buggy? Amazing work, you should be very happy! :D
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 13:13:31
Well I guess we can say thanks to Alex for writing the user manual already :)

http://magiclantern.wikia.com/wiki/550D/UserGuide#Focus (http://magiclantern.wikia.com/wiki/550D/UserGuide#Focus)
Worth noting Coutts are the known issues.

err 70 bug info here...
https://bitbucket.org/hudson/magic-lantern/issue/373/err-70-err-80-due-to-ml-external-hdmi (https://bitbucket.org/hudson/magic-lantern/issue/373/err-70-err-80-due-to-ml-external-hdmi)

yuv422
I think is more related to silent pictures.
Title: Re: 500d development
Post by: vorob on 21 / April / 2011, 13:15:06
"Almost all of 550D features have been added, but not fully tested at present."

30fps in 1080p?
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 13:19:19
30fps in 1080p?
People keep mentioning this, but correct me if Im wrong, but its not a feature of Magic Lantern?

422-jpg.py
I think this is part of a python script alex wrote to convert 422 files (which are produced when taking pictures with silent mode on) to bmp files.

More info :> http://vimeo.com/groups/magiclantern/videos/18836012 (http://vimeo.com/groups/magiclantern/videos/18836012)
Title: Re: 500d development
Post by: Liamykins on 21 / April / 2011, 13:26:46
Also the LCD sensor doesn't seem to be working either, could the be due to some settings I have changed?
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 13:34:14
Also the LCD sensor doesn't seem to be working either, could the be due to some settings I have changed?
Yep, its working here, but if you change too many options, it stops working from what I have found so far.
Title: Re: 500d development
Post by: a1ex on 21 / April / 2011, 13:41:44
Latest user guide for 550D attached. The one from the wiki is a bit old.
Title: Re: 500d development
Post by: arm.indiana on 21 / April / 2011, 13:51:15
I've got some time to help, so :

// consts-500d.110.h

#define HIJACK_INSTR_BL_CSTART  0xFF012AE8
#define HIJACK_INSTR_BSS_END 0xFF01093C
#define HIJACK_FIXBR_BZERO32 0xFF0108A4
#define HIJACK_FIXBR_CREATE_ITASK 0xFF01092C
#define HIJACK_INSTR_MY_ITASK 0xFF010948
#define HIJACK_TASK_ADDR 0x1a74

// RESTARTSTART at 0x4D000

where to find 0x1a74

Code: (asm) [Select]
ROM:FF015DA4 sub_FF015DA4                            ; CODE XREF: sub_FF072738+4p
ROM:FF015DA4                 STMFD   SP!, {R4,LR}
ROM:FF015DA8                 BL      sub_FF075320
ROM:FF015DAC                 LDR     R12, =0x1A74 <------
ROM:FF015DB0                 LDR     R1, [R0]
ROM:FF015DB4                 LDR     R3, =0x31D8
ROM:FF015DB8                 MOV     R0, #0
ROM:FF015DBC                 MOV     R2, #0
ROM:FF015DC0                 STR     R1, [R12,#8]
ROM:FF015DC4
ROM:FF015DC4 loc_FF015DC4                            ; CODE XREF: sub_FF015DA4+38j
ROM:FF015DC4                 LDR     LR, [R3]
ROM:FF015DC8                 CMP     R0, LR
ROM:FF015DCC                 ADDLT   LR, R1, R0,LSL#3
ROM:FF015DD0                 STRLT   R2, [LR,#4]
ROM:FF015DD4                 STRLT   R2, [R1,R0,LSL#3]
ROM:FF015DD8                 ADDLT   R0, R0, #1
ROM:FF015DDC                 BLT     loc_FF015DC4
ROM:FF015DE0                 LDR     R0, [R3]
ROM:FF015DE4                 ADD     R0, R1, R0,LSL#3
ROM:FF015DE8                 STR     R0, [R12,#0x10]
ROM:FF015DEC                 SUB     R0, R0, #8
ROM:FF015DF0                 STR     R0, [R12,#0xC]
ROM:FF015DF4                 MOV     R0, #0
ROM:FF015DF8                 STR     R2, [R12]
ROM:FF015DFC                 LDMFD   SP!, {R4,PC}
ROM:FF015DFC ; End of function sub_FF015DA4

I can not test it, so I hope already is OK

Indy
Title: Re: 500d development
Post by: C0smo on 21 / April / 2011, 15:20:20
on my cam the HDR - Braket dont work ...

all other things work good, if i switch on the HDR Bracket ... no one function will work ...
no intervall, no audio shoot, no lcd shoot ...

@anyone the same ??

best regard cosmo
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 15:24:56
a lot of stuff is still in the air. we're all ported to the latest 550d source code so that's a huge step done. We need to fix yuv422 now, and make sure the init functions are all correct, and verify that it's loading itself in the right spot in memory, I think this will clear up a lot of bugs.

Indy, I'm confused what we are supposed to do with that - are those constants actually going to be used by ML? I can't find any calls to any of those.
Title: Re: 500d development
Post by: alins on 21 / April / 2011, 15:35:01
I've got some time to help, so :

// consts-500d.110.h

#define HIJACK_INSTR_BL_CSTART  0xFF012AE8
#define HIJACK_INSTR_BSS_END 0xFF01093C
#define HIJACK_FIXBR_BZERO32 0xFF0108A4
#define HIJACK_FIXBR_CREATE_ITASK 0xFF01092C
#define HIJACK_INSTR_MY_ITASK 0xFF010948
#define HIJACK_TASK_ADDR 0x1a74

.....
I can not test it, so I hope already is OK

Indy

if you don't mind Indy, what is this suppose to be and how exactly is this going to help?. i can't make heads and tails of it
Title: Re: 500d development
Post by: bkkenny on 21 / April / 2011, 15:36:52
on my cam the HDR - Braket dont work ...

Same problem as C0smo here.

Thanks for the great updates though!
Title: Re: 500d development
Post by: sbright33 on 21 / April / 2011, 15:49:05
When should I start testing Silent Picture?  Has anyone tried it?
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 15:50:46
^ silent picture won't work until we have all of the yuv422 stuff straightened out.
Title: Re: 500d development
Post by: arm.indiana on 21 / April / 2011, 16:24:11
if you don't mind Indy, what is this suppose to be and how exactly is this going to help?. i can't make heads and tails of it

there are the constants specific to the model and firmware for 5d-hack.c.

again, see the wiki: http://magiclantern.wikia.com/wiki/5d-hack (http://magiclantern.wikia.com/wiki/5d-hack)

60d-hack.c already use this kind of contants file:
https://bitbucket.org/sztupy/magic-lantern-for-60d/src/14fefec1ac13/60d-hack.c (https://bitbucket.org/sztupy/magic-lantern-for-60d/src/14fefec1ac13/60d-hack.c)

Indy
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 16:38:51
^ hey indy how did you come up with 0x4D000 as restartrestart for the 500d? did you mean to say restartstart, located inside the make file? it's currently:

Code: [Select]
# DryOSmemory map
# RESTARTSTART is selected to be just above the end of the bss
#
ROMBASEADDR = 0xFF010000
RESTARTSTART = 0x0008B000

looking at your 60d page, you took the bss_end address and added 28 (hex) to it to come up with 0x5f000, when I take bss_end from the 500d and add 28, I come up with 0x4c56c, you said it's 0x4d000. should i change the restartstart address in the make file to say 0x0004c56c or 0x0004d000? or neither?

  ???
Title: Re: 500d development
Post by: arm.indiana on 21 / April / 2011, 17:09:46
0x4d000 is after bss_end, nothing more.

bss_end:
ROM:FF01093C dword_FF01093C  DCD 0x4C544             ; DATA XREF: cstart+24r

yes, makefile must be updated with RESTARTSTART and ROMBASE

see http://magiclantern.wikia.com/wiki/Autoexec  (http://magiclantern.wikia.com/wiki/Autoexec) how it is used

Indy
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 20:02:29
updated repository with indy's changes, thanks.
Title: Re: 500d development
Post by: Coutts on 21 / April / 2011, 20:10:37
updated repository with changes from indy, thanks man!
Title: Re: 500d development
Post by: pat_loonytoon on 21 / April / 2011, 20:44:55
[edit] Keep up the good work guys. I'll be posting some problems on the wiki, but overall good :)
Title: Re: 500d development
Post by: Jamez on 21 / April / 2011, 23:41:20
I suggest instead of people putting comments about their testing here, noting what works, or doesnt. People update the wiki (anyone can edit it and it doesnt require registration), that keeps everything in one place rather than spread through this thread over many pages.

Added Manual/Userguide, and wishlist sections to the wiki, and also a Reported Bugs section for each feature.
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 00:00:19
I emailed indy, i need someone to figure out this yuv422 stuff, I stayed up all night looking at it and all day today and I can't figure it out.

Also I think somethings wrong with gui.c, it's not recognizing gui tasks right. half shutter doesn't work for one. I addded a bmp_print task in the function where it recognizes shutter half press, but I don't see anything printing on screen. Also event spy shows events 90 and 74 spamming the [admin: avoid swearing please] out of the log (probably about 5-10 a second).

anybody have any ideas? i'm going to bed btw. time to crash
Title: Re: 500d development
Post by: PHrag on 22 / April / 2011, 05:44:42
I was reading the updated wiki (nice job btw) and found out "30 FPS in 1080p (Note if you change to NTSC format rather than PAL this is already available)." Is this true? I think you can't record @30 fps in both pal and ntsc, wanted to try the ntsc but as soon as I press record the camera freezes (there's already an issue on that).
other than that: I'm in love with new zebras, they're almost real-time! wave LCD trigger is also awesome
thanks
Title: Re: 500d development
Post by: rootsxi on 22 / April / 2011, 06:58:05
that's so funny i was just coming here to ask about the 30fps in 1080 in ntsc mode on the wiki, and i see PHrag wonders same. Coutts, great job... all involved in this dev so far great job! i just tested a few things, zebras look good. ive had my camera "bind" on me a few times while switching throught ML functions, nothing battery removal didnt clear. if i can shoot at 30 fps in1080 this would be great as changing 30fps to 24 is way better looking than 20 to 24 but a native 24... may be too expensive for me right now! thanks again, looking forward to future builds from you all.
@RootsXI
Title: Re: 500d development
Post by: rootsxi on 22 / April / 2011, 06:59:37
is the qscale limited by my cards ability? it seems to be set/ unchangeable
thanks everyone for great job
rootsreport.org
Title: Re: 500d development
Post by: bjacklee on 22 / April / 2011, 07:50:43
I tried using the latest update, it seems that fps is not consistent.. I tried shooting a straight 1 minute 720p video but video gets choppy somewhere in the middle. Am I the only one experiencing this? :)
Title: Re: 500d development
Post by: Liamykins on 22 / April / 2011, 08:26:19
I was reading the updated wiki (nice job btw) and found out "30 FPS in 1080p (Note if you change to NTSC format rather than PAL this is already available)." Is this true? I think you can't record @30 fps in both pal and ntsc, wanted to try the ntsc but as soon as I press record the camera freezes (there's already an issue on that).
other than that: I'm in love with new zebras, they're almost real-time! wave LCD trigger is also awesome
thanks

To fix the camera freezing you need to turn 'movie logging' OFF under the movie tab in ML :).
Title: Re: 500d development
Post by: PHrag on 22 / April / 2011, 10:35:31
To fix the camera freezing you need to turn 'movie logging' OFF under the movie tab in ML :).
thanks, it works now. did two 1080p videos and only different thing is bitrate, slightly lower for NTSC.
deleted it from the wiki and added the thing with movie logging, I think people should see it
Title: Re: 500d development
Post by: Jamez on 22 / April / 2011, 11:00:50
ah my bad
I was refering to the 5D which now has 30FPS
http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki (http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki)

Its ok to have a wishlist but you have to understand that if the 5D magic lantern, or the 550D magic lantern doesnt have it, we have almost 0% chance here. You can write that you hopes it makes you toast in the morning if you want... it wont really get done unless the above is true (ie all of the points bar one on there so far) unless we get a talented programmer who has a fetish for toast onboard ;)

Its also important to realise that if your video stops because your using a class 2 card, its not a bug its just a limitation of the hardware your using. Any problems with slow recording are probably because your card is not of a high enough spec. I have tried all qscale settings with a class 10 card and didnt notice any problems at all, not conclusive testing however.
Title: Re: 500d development
Post by: pat_loonytoon on 22 / April / 2011, 11:36:55
Oh to filter out comments about 30 fps, what a glorious day that will be :)
Title: Re: 500d development
Post by: barbar84 on 22 / April / 2011, 11:48:16
ah my bad
I was refering to the 5D which now has 30FPS
http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki (http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki)

Its ok to have a wishlist but you have to understand that if the 5D magic lantern, or the 550D magic lantern doesnt have it, we have almost 0% chance here. You can write that you hopes it makes you toast in the morning if you want... it wont really get done unless the above is true (ie all of the points bar one on there so far) unless we get a talented programmer who has a fetish for toast onboard ;)

Its also important to realise that if your video stops because your using a class 2 card, its not a bug its just a limitation of the hardware your using. Any problems with slow recording are probably because your card is not of a high enough spec. I have tried all qscale settings with a class 10 card and didnt notice any problems at all, not conclusive testing however.

Its very likely that changing framerates will be a very tough one to crack, but as you stated, the 550d and 5d magic lantern do have the ability to manually set shutterspeed/ISO etc, and as the 500d and the 550d hardware are so similar it should be possible. As stated earlier, its been confirmed by a member of canon staff that all of these things, including a higher frame rate at 1080p are possible, its a software lockout thats preventing this so far. And wasn't 24fps hacked on the 5d (which was originally 30fps only at 1080p with no manual video controls) prior to canons original video firmware upgrade?
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 12:30:08
I was pulling 60mbps yesterday with my class 6 8gb card at qscale-16. I wonder if the cbr 30mbps setting actually works? Still something buggy with guide events.. I don't like it. Im looking into that next.

Also we need to figure out something for the menu and fonts. The 550d has 1.09 million pixels on its screen and we only have like .97 or something, I forget the numbers but the 550d screen has a different resolution.
Title: Re: 500d development
Post by: Jamez on 22 / April / 2011, 12:40:52
In short Coutts, no it doesnt (not from my testing anyway)
Anyone who wants 30F
Oh to filter out comments about 30 fps, what a glorious day that will be :)
Agreed.

@ Coutts, from my testing no the CBR 30MBPS setting doesnt seem to work here, but the other - numbers all seem to.
Incidentally I was doing more than 60 today at -16 qscale... going to have to get a bigger card me thinks (I have a Panasonic 16GB SDHC Class 10 ATM).

PS Anyone know if SDXC cards work with with the 500D?
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 12:48:43
I wish I shot more video. I've only done a couple videos in my life:
http://vimeo.com/user3451665/videos (http://vimeo.com/user3451665/videos)

I'm more interested in trap focus, and maybe having a setting to turn off exposure sim. in live view (i'm sure there's a prop setting we can find somewhere in the dump to implement this). Maybe for future builds, for Alex to look into for the 550d also, a file system explorer in the ML menu would be really neat. I know 5 years ago when I used chdk on a powershot sd1000, it had one.

but first, lets get this stable :)
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 13:32:49
in consts file,

Code: [Select]
#define GMT_FUNCTABLE 0xFF453E14
i just looked this up and it's not right for the 500d, need to fix this value and i think the button presses like half shutter should work.

- edit. nevermind, this is never used.
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 19:21:17
trap focus is almost working - the camera crashes when it tries to take a picture though.. hm.
Title: Re: 500d development
Post by: rootsxi on 22 / April / 2011, 19:22:12
thank you all for your dedicated and tireless work.
the issues page on wiki doesnt seem to me to be organized in order of build, as far as issues go, so...
 i guess i get the responses to 30fps comments. if we can get a bitrate of say, 60mbs or more, our footage is of exceptional quality and when encoded into say apple ProRes422 @ 24fps for use in FCP this footage can equal or surpass the quality of footage shot on more expensive cameras with native 24fps. im really glad ive got the editing software i do, im guessing not everyone has Final Cut Pro, which is why we all want these functions native. this build seems very noisy... im laughing right now because i just now understood play button changes values.... um.... ill finish this post after more testing...
thanks
xi
Title: Re: 500d development
Post by: rootsxi on 22 / April / 2011, 19:23:46
ps thanks Coutts
Title: Re: 500d development
Post by: Jamez on 22 / April / 2011, 20:19:53
@ rootsxi the issues page your refering to refer to the latest build only as it was just added recently.
Theres no point in having issues per build unless things want to get really complicated (unecessarily so IMO).
Title: Re: 500d development
Post by: pat_loonytoon on 22 / April / 2011, 20:54:52
Not quite sure what you are saying Jamez but I do think the Bitbucket issues page (https://bitbucket.org/alins/magic-lantern-for-500d/issues ) needs some cleaning as many of those issues are from older builds. I'm going through to see if any of those issues have occurred in later builds.
Title: Re: 500d development
Post by: sbright33 on 22 / April / 2011, 21:50:43
Hyperdeck Shuttle see link below.  This might affect which features you prioritize or implement in the near future?  There is the possibility of recording 1080i60 or 480p60 uncompressed from T1i.  The highest Q scale possible, uncompressed!  Faster frame rate.  Maybe this is easier than in Firmware?  The negative is the cost.  I will have a test unit to experiment with soon.

http://vimeo.com/groups/magiclantern/forumthread:239908 (http://vimeo.com/groups/magiclantern/forumthread:239908)
Title: Re: 500d development
Post by: rootsxi on 22 / April / 2011, 21:53:58
thanks guys.
here are a few issues
intervalometer stops and crashes camera after something like 20-30 shots
magic zoom that i saw looking so cool on a t2i doesnt seem to be working
menu isnt stable yet... hopefully the stubs Coutts is looking for solve this and other issues as he had hoped
is there going to be a new build based on the stuff from indy?
thanks
roots
Title: Re: 500d development
Post by: Coutts on 22 / April / 2011, 22:05:47
thanks guys.
here are a few issues
intervalometer stops and crashes camera after something like 20-30 shots
magic zoom that i saw looking so cool on a t2i doesnt seem to be working
menu isnt stable yet... hopefully the stubs Coutts is looking for solve this and other issues as he had hoped
is there going to be a new build based on the stuff from indy?
thanks
roots
soon. i have trap focus almost working.. i found the right values for focus confirmation and af_press for the constants file, but now lcd trigger doesn't work.

trap focus works, (it takes a picture as soon as it receives focus), but the camera crashes with the led on and it never saves a picture. lcd triggering does this too.. odd.

indy's code didn't change anything stability wise - it is just a better way to organize some code, which I implemented. New constants in the constants file (for cstart, bss_end, etc, they were in 5d-hack.c before directly). Also I got rid of 5d-hack.c and made it 500d-hack.c (similar to how it's being done on the 60d).


edit:
looks like adapting indy's code did mess with something - that seems to be what's causing trap focus / lcd triggering not to work. reversing everything back to  the old way.
Title: Re: 500d development
Post by: utnuc on 22 / April / 2011, 22:38:24
The beta ML release looks awesome, kudos Coutts.

I wonder if finding the correct focus confirmation and af_press values will help rack focus...  I thought I was making some progress there, but I'm pretty sure there are one or 2 focus stubs that are holding it back. 

I tried rewriting the rack focus section using the lens_info.focus_dist values, but they are horribly inaccurate.  There must be some other finely tuned variable describing focus point.

Regarding focus peaking, it's interesting that it sorta kinda is trying to work.  Hopefully we can get someone to look at yuv422 stuff, as I think this is a cool feature.

And yes, magic focus would be an awesome feature to have.  I might look at some of that code for a bit and see if I can make heads or tails of it.
Title: Re: 500d development
Post by: Coutts on 23 / April / 2011, 01:54:31
New Release - v1.2 Beta
- fixed menu fonts, everything fits nicer now
- updated info/about screen
- fixed issue with review mode and not being able to take pictures
- fixed consts values for focus confirmation/shutter half press (trap focus related)
- trap focus now working
- HDR bracketing appears to be working now, not sure if it was or not before.

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa4.sphotos.ak.fbcdn.net%2Fhphotos-ak-ash4%2F206252_10150561499715344_704010343_18174701_3072145_n.jpg&hash=2aa2b448bbc5aaa51c1a38d0ccf6d472)


Try it out guys, let me know if you find anything else that works/doesn't  :)
Title: Re: 500d development
Post by: pat_loonytoon on 23 / April / 2011, 02:10:50
yay first to download, thanks Coutts. You are awesome!
Title: Re: 500d development
Post by: Jamez on 23 / April / 2011, 02:36:13
Thanks Coutts  8)
Wiki updated, and videos of each function showing what works(or not) tomorrow...
Title: Re: 500d development
Post by: Coutts on 23 / April / 2011, 02:41:07
Glad you guys are liking it :)

I just updated the issue list on bitbucket. I closed any issues that weren't relevant anymore and updated the others.  It's good to see everybody helping in their own way now, it's really coming along fast. How long until we should start spreading the word on other forums about the 500d having ML now?
Title: Re: 500d development
Post by: pat_loonytoon on 23 / April / 2011, 03:00:04
well as long as you are cool with the following being asked daily-
"Hey where can I get 30 FPS in 1080p!?"
"24 FPS in both 1080p and 720p?? I live in Europe!"
"I do videos...blah blah blah...bring manual controls over shutter speed, ISO and aperture in video mode."
"60 FPS in 720p like the 550D or more fps lowering resolution?"
All which might be fine as long as in that group are people that know how to make it happen.
Title: Re: 500d development
Post by: Jamez on 23 / April / 2011, 03:10:03
I dont think theres any need to do that at present, its still quite unstable/buggy and im sure it will just bring a load more people asking when it will have 30FPS etc ;)
Maybe in a few more releases it would be more suitable to do that?

What do you think the next steps are to make it more stable?
I will add these to the wiki later but so far...
- My camera locked up after about 20 photos today requiring battery removal.
- Its no longer seen through the USB cable interface (with or without EOS Utilities).

Has anyone asked Alex if he could kindly help with the yuv422stuff?
Do we need focus confirmation and af_press values?
Title: Re: 500d development
Post by: silasje1 on 23 / April / 2011, 04:17:53
I dont think theres any need to do that at present, its still quite unstable/buggy and im sure it will just bring a load more people asking when it will have 30FPS etc ;)
Maybe in a few more releases it would be more suitable to do that?

What do you think the next steps are to make it more stable?
I will add these to the wiki later but so far...
- My camera locked up after about 20 photos today requiring battery removal.
- Its no longer seen through the USB cable interface (with or without EOS Utilities).

Has anyone asked Alex if he could kindly help with the yuv422stuff?
Do we need focus confirmation and af_press values?

i had /have the same issue with USB Cable :(

nice feature: http://vimeo.com/groups/magiclantern/videos/18782586 (http://vimeo.com/groups/magiclantern/videos/18782586)
more things maybe? http://magiclantern.wikia.com/wiki/VRAM/60D (http://magiclantern.wikia.com/wiki/VRAM/60D)
http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
http://magiclantern.wikia.com/wiki/GUI_Events (http://magiclantern.wikia.com/wiki/GUI_Events)
Title: Re: 500d development
Post by: Samsongas on 23 / April / 2011, 05:41:17
Focus assist is the best f****g ever
Title: Re: 500d development
Post by: Jamez on 23 / April / 2011, 09:46:38
Yea it is.. if it works LOL
Incidentally the revision before last it seemed to work of sorts, and in the latest Beta it doesnt.

Alex has just released an updated ML version for the 550D :)
http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/c6ac13142a2be64a?show_docid=c6ac13142a2be64a (http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/c6ac13142a2be64a?show_docid=c6ac13142a2be64a)
Title: Re: 500d development
Post by: utnuc on 23 / April / 2011, 10:47:55
Coutts, do you know where the code is for magic circles?  I can't find it in shoot.c.
Title: Re: 500d development
Post by: Coutts on 23 / April / 2011, 12:34:25
Coutts, do you know where the code is for magic circles?  I can't find it in shoot.c.
it's in zebra.c and called zoom overlays I believe.
Title: Re: 500d development
Post by: rootsxi on 24 / April / 2011, 01:16:40
hi, thanks again Coutts and all for your continued diligence on this...
when you say you are getting rates of 30-60mb/s, are your cards actually recording at that rate, like say is a 30 second video showing say, 30mbs is it showing up on the mac weighing in at 900MB? its not on mine? im getting like 5.1-5.4mb/s. if this is because of encoding or something like "zipping" the video or is this a bug. also i dont have magic zoom... maybe a setting i need to change...? the zebras look great except on standard def... i will hook up an hdmi cord int  an old dvi monitor later to test them on high def. thanks to all who are putting their obviously awesome talents to work on this. just a few questions to see where im at in the understanding of this. im crossing my fingers that im just using wrong setting for the magic zoom. i always use manual focus/zoom... is this a problem? also my usb connect works? doesnt transfer MLview to canon liveview....duh! thanks again
roots
Title: Re: 500d development
Post by: Coutts on 24 / April / 2011, 01:33:07
^ you can check the bitrate in quicktime, on my mac it's Window > Show Movie Inspector or something like that. But my 60mbps clip was 150mb and 20 seconds long. You have to remember that bitrates are in megabits/second, not megabytes.

150mb = 1200Mbit / 20sec = 60Mbps
Title: Re: 500d development
Post by: Jamez on 24 / April / 2011, 03:26:38
also i dont have magic zoom....... im crossing my fingers that im just using wrong setting for the magic zoom. i always use manual focus/zoom... is this a problem? also my usb connect works? doesnt transfer MLview to canon liveview....duh! thanks again
roots

No neither magic zoom, or USB connection works in this build at this time, its beta software meaning its buggy, and things dont work. In fact around 70% of the features dont work as expected (compared to 550D videos etc Ive seen) in the latest build.
Title: Re: 500d development
Post by: rootsxi on 24 / April / 2011, 05:04:13
megabits! thank you, Coutts i knew i was missing some fundamental part of the equation... or my card was bad... so with the bits, not bytes i got 43mb/s on a class 6 card. super! also my USB does work, for the canon software at least, though i usually use a card reader to dl images...thanks again, and yes it is buggy and the t2i has a lot of these features with ML, but i dont have a t2i and the AGC killer on this ML makes it pretty awesome. Heres a tip: a variable-rate NeutralDensity filter made from two CircularPolarizer filters with the front glass reversed makes those zebras lasso-able! just use a broccoli rubberband to stop the back CP from turning and as you turn the front one, the picture gets "denser" or "lighter", making those zebras dissapear! ive had a little photog phun with mine since the beta came out...
thanks again
roots
Title: Re: 500d development
Post by: sbright33 on 24 / April / 2011, 23:32:21
ND/Circular filter.  Isn't that the same as adjusting the Ev Exposure Compensation in the camera?  Ah I see, you can adjust it while recording and the camera will not compensate.  There's 2 modes.  1 is locked exposure.  Just make sure you start in the middle of range.
Title: Re: 500d development
Post by: Coutts on 25 / April / 2011, 00:20:07
I tried adding RLE bmp compression from the 60d, i dont' think it's working. I can cycle through the crop marks once (I loaded the crop marks from the 550d), but the 4th one doesn't load, it says "need memory", and after that i can't cycle through any more, it just says it needs memory.

soo... 500d is very limited on the amount of free memory it has i guess??

also after i turn it off after seeing the need memory error, I need to pull the battery to turn it back on.
Title: Re: 500d development
Post by: Jamez on 25 / April / 2011, 07:01:18
Hello Coutts,
Nice try.
I dont suppose you know python?
I think this might help the quest to finalise a lot of the settings etc perhaps...
http://groups.google.com/group/ml-devel/msg/212ae9f6f4552078 (http://groups.google.com/group/ml-devel/msg/212ae9f6f4552078)
Title: Re: 500d development
Post by: rootsxi on 25 / April / 2011, 16:51:09
more than one type of class10 card, and i knew that. big difference between them as well... one class10 at bestbuy was 20Mb/s which is only 5Mb/s more than my class6! the one i went with was a sandisk extreme thats rated at 30Mb/s. you would thing the larger the card, the smaller the price? a 16 at best buy was 300% of the price of the 8!? any how the card makes the magic lantern... i was getting 55+megaBITs a second. im not the most experienced phothog, but i think thats a big deal! this is what i have from tests im running, which even with the class10 30MBS card drops movies... i think that the audio somehow triggers these crashes, when i checked the little clips out that failed to keep recording, they were recording at like 80+mb/s
i think that the processor or something has tough time with audio peaking, even with agc off, seems to be part of these movies crashing... the more movement, sound etc the more info being written. patlooneytoon, have you had any similar issues with the ext mic, as it would be of way better quaity than built-in one? perhaps the pre-processor sound reduction sends less info to card? i dont know and im not a programmer, but i hope that helps those amazing individuals of us that are.
Title: Re: 500d development
Post by: pat_loonytoon on 26 / April / 2011, 00:55:04
hmm I've not used Q-scale with newer builds
Title: Re: 500d development
Post by: silasje1 on 26 / April / 2011, 09:49:03
qscale worked fine here on beta 1.2 I had problem with alpha versions though.

(info on last video:
Video: MPEG4 Video (H264) 1280x720 30.00fps [Video]
Audio: PCM 44100Hz mono 705kbps [Audio]


General
Complete name                    : C:\Users\Silas\Pictures\2011_04_25\MVI_2845.MOV
Format                           : MPEG-4
Format profile                   : QuickTime
Codec ID                         : qt 
File size                        : 158 MiB
Duration                         : 37s 267ms
Overall bit rate                 : 35.6 Mbps
Encoded date                     : UTC 2011-04-25 13:33:52
Tagged date                      : UTC 2011-04-25 13:33:52

Video
ID                               : 1
Format                           : AVC
Format/Info                      : Advanced Video Codec
Format profile                   : [email protected]
Format settings, CABAC           : No
Format settings, ReFrames        : 1 frame
Codec ID                         : avc1
Codec ID/Info                    : Advanced Video Coding
Duration                         : 37s 267ms
Bit rate mode                    : Variable
Bit rate                         : 34.9 Mbps
Width                            : 1 280 pixels
Height                           : 720 pixels
Display aspect ratio             : 16:9
Frame rate mode                  : Constant
Frame rate                       : 30.000 fps
Color space                      : YUV
Chroma subsampling               : 4:2:0
Bit depth                        : 8 bits
Scan type                        : Progressive
Bits/(Pixel*Frame)               : 1.261
Stream size                      : 155 MiB (98%)
Language                         : English
Encoded date                     : UTC 2011-04-25 13:33:52
Tagged date                      : UTC 2011-04-25 13:33:52
Color primaries                  : BT.709-5, BT.1361, IEC 61966-2-4, SMPTE RP177
Transfer characteristics         : BT.709-5, BT.1361
Matrix coefficients              : BT.601-6 525, BT.1358 525, BT.1700 NTSC, SMPTE 170M

Audio
ID                               : 2
Format                           : PCM
Format settings, Endianness      : Little
Format settings, Sign            : Signed
Codec ID                         : sowt
Duration                         : 37s 266ms
Bit rate mode                    : Constant
Bit rate                         : 705.6 Kbps
Channel(s)                       : 1 channel
Sampling rate                    : 44.1 KHz
Bit depth                        : 16 bits
Stream size                      : 3.13 MiB (2%)
Language                         : English
Encoded date                     : UTC 2011-04-25 13:33:52
Tagged date                      : UTC 2011-04-25 13:33:52

)
Title: Re: 500d development
Post by: Coutts on 26 / April / 2011, 18:08:26
i found that missing stub to redraw the screen, menu closes nicely now :) it's perfect.
also I'm fixing some of the gui event codes like half shutter. now the ML menu closes on half shutter like it should. just touching up some things with the menu, probably going to have a new release out tonight. stay tuned :)
Title: Re: 500d development
Post by: rebelT1i on 26 / April / 2011, 18:41:59
I'll be on the look out for it!
Title: Re: 500d development
Post by: Coutts on 26 / April / 2011, 22:15:19
Magic Lantern for 500d v1.3 Beta

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa1.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F227995_10150567168375344_704010343_18257215_8169974_n.jpg&hash=93961963f137d82378764b8abac7d3ff)


What's new:
- Made menus fit nicer
- Menu closes without leaving pieces behind now
- Half shutter closes menu now cleanly

I have an idea to fix the menu flicker problem, but first I need to figure out how to disable exposure metering while the ML menu is up. Maybe in the next build if I can figure it out. It's coming along :)
Title: Re: 500d development
Post by: rebelT1i on 26 / April / 2011, 22:29:43
Coutts, You are a machine!! Thanks again, so far it's looking pretty smooth! good job!
Title: Re: 500d development
Post by: mk11174 on 26 / April / 2011, 22:39:42
Coutts, keep it up, u r the man!!!!!
Title: Re: 500d development
Post by: aznguy on 27 / April / 2011, 00:53:18
ohh man coutts, your just dishing out builds left and right!, how do you have time? arnt u in college?
Title: Re: 500d development
Post by: Coutts on 27 / April / 2011, 01:40:29
ohh man coutts, your just dishing out builds left and right!, how do you have time? arnt u in college?
I'm doing my homework at 2am instead of during the day like I should have done it :lol

I haven't been sleeping much since starting to work on all of this. I usually stay up all night at least once a week now (when I first got in on everything I stayed up for 4 days straight  :blink: )




edit:
i just got an idea for the menus.

in menu_handler in menu.c, I'm going to try something like:

Code: [Select]
case METERING_START:
if ( FOCUS_CONFIRMATION_AF_PRESSED )
{
close_menu;
return(0)
}
else
{
redraw_menu;
break;
}

the function names aren't exact, but this should work, granted I can find the right Event ID for auto exposure metering. Still, the best way to do it would be to find a way to turn off metering while the ML menu is shown.
Tomorrow.. I've got 5.5/7 pages of this paper done, and it's 3:30am. It's due in 7.5 hours now. I'm gonna try to finish this up asap so I can at least get some sleep tonight.
Title: Re: 500d development
Post by: gravityrem on 27 / April / 2011, 03:28:35
Coutts : Nice Build ! The menu looks def better. Bravo

But rest up man !
Title: Re: 500d development
Post by: popermen on 27 / April / 2011, 16:47:12
i am inexperienced in this kind of stuff and is very good this firm ... as I install it on my camera to take advantage of as it should be, thanks. and excuse my English jejejeje
Title: Re: 500d development
Post by: Coutts on 28 / April / 2011, 02:10:14
been working on the menu all day, this is about as clean as it's gonna get as far as flickering goes. Unless somebody can figure out how to stop/kill AE metering while the magic lantern menu is drawn, this is as good as it's gonna get. the flickering happens after i use a half press shutter to close the menu, as you can see the EV meter starts blinking (meaning the camera is metering AE), when this happens it tries to clear the screen (menu looks fragmented then), so the code redraws the menu when this happens. This is the work around until we can figure out how to stop the metering. After a couple seconds metering stops and things return to normal, so it's actually pretty good now  :)

http://www.facebook.com/video/video.php?v=10150568819515344# (http://www.facebook.com/video/video.php?v=10150568819515344#)

haven't released a build yet, probably will tomorrow after i look into a couple other things.
Title: Re: 500d development
Post by: rootsxi on 28 / April / 2011, 02:22:32
once again, thank you Coutts.
Title: Re: 500d development
Post by: barbar84 on 28 / April / 2011, 04:00:24
thanks Coutts, your a legend.
Title: Re: 500d development
Post by: Coutts on 28 / April / 2011, 06:37:05
thanks to Alex, we now have the abililty to turn off Exp Sim in live view :)

this darkens/lightens the screen to simulate the exposure. this is useful sometimes but when shooting off camera flash where your shutter speed is 1/200th, live view will make the screen almost black - useless to use. not anymore :)

bit bucket is up to date also. all of my latest menu adjustments and now exp sim are now in the repository.
Title: Re: 500d development
Post by: agour on 28 / April / 2011, 13:24:09
Just signed up on here to say you guys are the best!
Can't wait to try it out once theres a slightly more stable version (mainly for the timelapse stuff, dont want it overheating and burning out!).


Keep up the good work!
Title: Re: 500d development
Post by: gedas5 on 28 / April / 2011, 17:45:01
Don't want to ruin the thread by posting something off topic but same as Agour wanted to pay my respect mainly to Coutts and others who contributed helping him for the amazing work! I bet there's hundreds of silent followers like me who are just watching and waiting for the release of the ML because we can't contribute to the thread as we don't know coding...but i believe more of us will come here when it will come to testing :)
p.s. wish one day to see all the functions posted in Wiki wishlist to see on my EOS 500D ;) if that's ever going to be possible...
Title: Re: 500d development
Post by: Coutts on 28 / April / 2011, 21:47:18
Don't want to ruin the thread by posting something off topic but same as Agour wanted to pay my respect mainly to Coutts and others who contributed helping him for the amazing work! I bet there's hundreds of silent followers like me who are just watching and waiting for the release of the ML because we can't contribute to the thread as we don't know coding...but i believe more of us will come here when it will come to testing :)
p.s. wish one day to see all the functions posted in Wiki wishlist to see on my EOS 500D ;) if that's ever going to be possible...
it all lies somewhere in the dump :)
Title: Re: 500d development
Post by: Jamez on 29 / April / 2011, 08:54:51
Alex has compiled another build for the 550D, hes prolific!

http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/b9fb788c5a83c27a?show_docid=b9fb788c5a83c27a (http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/b9fb788c5a83c27a?show_docid=b9fb788c5a83c27a)

PM Coutts
Title: Re: 500d development
Post by: mk11174 on 29 / April / 2011, 13:44:41
Hey Coutts, is there any links you can send me to, for learning on what your doing, like how to read code and rewrite it to make it do what you want, like what I will need software wise to get going, you this has really got me curious on how u do all this magical stuff??? 8]
Title: Re: 500d development
Post by: pat_loonytoon on 29 / April / 2011, 13:55:34
Coutts quick guide to getting started-
download the source code, use mercurial (download it).

http://bitbucket.org/alins/magic-lantern-for-500d (http://bitbucket.org/alins/magic-lantern-for-500d)

when you have mercurial installed, cd to that directory and run (ignore
Code: [Select]
[url] part, it wasn't supposed to be there).
Code: [Select]
hg clone [url]https://bitbucket.org/alins/magic-lantern-for-500d[/url]Then you will have the source downloaded to your computer.

Install the ARM-toolchain, it's hard to get going but chuchin posted a working setup for compiling under windows, that's how I compile.

http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b (http://groups.google.com/group/ml-devel/browse_thread/thread/53a24c0dad76db3b)

Now once that is all setup, edit your make file to match your file paths. the make file on the bitbucket repository now is mine, i am using cygwin + yagarto on windows, so that will contain the right paths for you.

now start going through the code and start analyzing how it works and calls functions. you can download the latest 550d source to help port features like I'm doing, just run
Code: [Select]
hg clone -r 550d [url]https://bitbucket.org/hudson/magic-lantern[/url]
everything is written in C, so touch up if you don't know it yet (it's not hard to pick up on, i didn't know much previously but i'm starting to see how it all works now).

the code refers to the stubs file - 500d.110-stubs.S, and the constants file (i forget the name, it's const something) for certain things, that's why me finding the stubs values like audio_thresholds was so important.

that's a pretty good startup guide there, should get you off your feet.

just compare gui.c between the 500d and 550d, you'll see right there just how different everything in the 550d is, and how much work we have to do.

Hope that helps :) If anything is different now with the process Coutts will tell.
Title: Re: 500d development
Post by: mk11174 on 29 / April / 2011, 13:59:53
Awsome, Thankyou
Title: Re: 500d development
Post by: Coutts on 29 / April / 2011, 17:31:05
That guide should get anyone up and going. But, anyone can figure it out, it just depends how dedicated/willing they are to figure it out ;) look how long it took me.. i had tried months before and couldn't figure it out. just have to stay at it.

i'm slowly learning more and more about how ML works, after looking at the code so long I've began to memorize what files certain tasks happen in, where functions are declared, etc. things make a lot more sense once you learn the whole program flow.

but i still don't know a lot about C, specifically with all of the vram / yuv422 stuff (silent pics, focus peaking, zoom overlays, etc in zebra.c), there's a lot of use of structs and pointers, and I don't yet understand those.. so i'm gonna have to do some reading.

it's all just a big learning experience to me :) the best feeling is when it clicks and you figure something out. i don't even know how many hours I've put into it at this point, hundreds? a lot, that's all I know :P
Title: Re: 500d development
Post by: Coutts on 01 / May / 2011, 05:02:27
~17 hours straight today, heading to bed now. got the menus just about perfect now. they're as good as they're gonna get, and i think i'm happy with em finally. tomorrow i'll probably look into the intervalometer to see why that's not workin yet.i need sleep now.. night guys.
Title: Re: 500d development
Post by: aznguy on 01 / May / 2011, 05:43:11
Once again bravo!, i just had a thought, it might be nothing or youve already thought of it but, Changing the shutter, iso and aperature when in live view under manual mode seems to behave like it would under movie mode if you could control it. Maybe theirs a way to replicate those calls under movie mode, because movie mode seems like basically live view but with recording. i dunno just a thought, i wish i have programming experience or the time to learn... and provide real help haha
Title: Re: 500d development
Post by: agour on 01 / May / 2011, 12:30:58
Title: Re: 500d development
Post by: utnuc on 01 / May / 2011, 12:45:50
I was working with my sigma 30/1.4 yesterday, taking some snapshots of my 5 month old... and had a brainstorm.  I have been dealing the the Sigma's front focus issue since I purchased it: I usually just try to focus on something behind the subject a centimeter or so, but that can be hard when shooting wide open, as the DOF is only a few centimeters close up.  

I know that you have a lot on your plate right now, Coutts, but I'd like to add something to the ML wishlist:  AF correction/adjustment.  Most lenses that miss focus do so predictably.  Once we have the other focus issues squared away (ie focus bracketing), then I think it'd be an easy addition.  Obviously this wasn't in the D5mk2 ML FW because the functionality is built into camera already.  

Anyone second this proposal?
Ben

PS Coutts, you should set up a Paypal account to accept donations... you might be surprised how many lurkers will send you some change.
Title: Re: 500d development
Post by: Coutts on 01 / May / 2011, 12:48:20
Once again bravo!, i just had a thought, it might be nothing or youve already thought of it but, Changing the shutter, iso and aperature when in live view under manual mode seems to behave like it would under movie mode if you could control it. Maybe theirs a way to replicate those calls under movie mode, because movie mode seems like basically live view but with recording. i dunno just a thought, i wish i have programming experience or the time to learn... and provide real help haha

while i was messing around with adding the live view sim toggle button, I found something that might set us closer to manual video controls. I remember while messing around with the prop_request_change command, I tried passing a different value to it (instead of 0 or 1, i tried 2), and the camera switched into waht it thought was movie mode (movie icon appeared in the lower right corner).. so maybe we could play around with this. really not sure yet, it's just going to be time until I better understand things.

i mean hell look how far i've come in the past month or 2 o_O. a couple months ago i was just another lurker on here cheering on the 500d progress. anyone can do what i'm doing, just have to be determined :)


I was working with my sigma 30/1.4 yesterday, taking some snapshots of my 5 month old... and had a brainstorm.  I have been dealing the the Sigma's front focus issue since I purchased it: I usually just try to focus on something behind the subject a centimeter or so, but that can be hard when shooting wide open, as the DOF is only a few centimeters close up. 

I know that you have a lot on your plate right now, Coutts, but I'd like to add something to the ML wishlist:  AF correction/adjustment.  Most lenses that miss focus do so predictably.  Once we have the other focus issues squared away (ie focus bracketing), then I think it'd be an easy addition.  Obviously this wasn't in the D5mk2 ML FW because the functionality is built into camera already. 

Anyone second this proposal?
Ben

PS Coutts, you should set up a Paypal account to accept donations... you might be surprised how many lurkers will send you some change.
hah, well i guess if anybody REALLY feels like donating anything, my paypal is here:
Code: [Select]
[email protected]
i've thought about trying to unlock AF micro adjustments, I've spoken to Alex about it too. Now that he has a 60d (that has this adjustment), maybe we will be able to see how it is called in the firmware and possibly implement it if the functionality is really hidden in there.

if you guys have any more feature requests (inb4 manual video controls and 24p video), just add them to the bitbucket issue list as an enhancement request :)
https://bitbucket.org/alins/magic-lantern-for-500d/issues?status=new&status=open
Title: Re: 500d development
Post by: Jamez on 01 / May / 2011, 13:22:32
Anyone second this proposal?
Ben
AF adjustment/correction is called manual focus I believe ;)
At this point in time there are well over 50 enhancements/features of ML, less than 10% are working correctly on the 500D right now. Id rather the other 40 odd are working first.
Alex just killed his new 60D .

Coutt`s paypal donation will be on the wiki soon, along with a1ex`s.
Title: Re: 500d development
Post by: LaLaPico on 01 / May / 2011, 14:05:11
Alex will get a $25 donation from me as well. Both of you are doing great work and it is greatly appreciated by all of us!
Title: Re: 500d development
Post by: gedas5 on 01 / May / 2011, 15:04:15
@ James
will wait for you to update wiki with Coutts paypal donations link. hope this will motivate him and serve as a reward for all the countless hours spent working on this. At least he'll be able to buy chocolates  :) as he is not allowed to drink in order to reward himself for hard labour  :D thanx James for Wiki and thanx Coutts for all the work.
Title: Re: 500d development
Post by: Coutts on 01 / May / 2011, 15:09:31
thanks for the donations guys!!!
Title: Re: 500d development
Post by: Coutts on 01 / May / 2011, 21:06:00
fixed some things today :)

- fixed FIORemoveFile stub (thanks alex), config auto save toggles now
- silent pics almost working (it takes them but the lv address/pitch isn't right)
- menus just about perfected now

should be a new build coming soon. progress :)
Title: Re: 500d development
Post by: Coutts on 01 / May / 2011, 22:45:22
Magic Lantern for 500d v1.4 Beta
New in this version:
- ability to toggle live view exposure sim
- silent pics almost work - need lv buffer address / pitch / height. saves files now though and works with half shutter (in live view)
- fixed config autosave toggle (FIO_RemoveFile stub was wrong, thank you alex)
- added back old shutter speed values for ML menu - full selection from bulb mode to 1/4000th now
- menus are now just about perfected. only flickers while metering (couple seconds max), then it's stable.
- ported back old gui_main_task code that was decompiled from 500d dump (not sure if fixed anything but good to have)
- ported some vram stuff in zebra.c, closer to having focus peaking / silent pics working. need some miracle help still.

well try this version out guys, tell me what works and what doesn't. I thank everybdoy who donates, it really feels good knowing I'm helping this many people!!

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi56.tinypic.com%2Ft6clk0.jpg&hash=40de107d2afc32dd7c0b08ae5b71eeb2)
Title: Re: 500d development
Post by: NewbieToobie on 01 / May / 2011, 23:59:48
I thank everybdoy who donates, it really feels good knowing I'm helping this many people!!
Does this mean that you'll be sharing equally with all coders and documentation authors from the whole CHDK project that have come before you?

Hint: This is why donations have never been allowed. It wasn't fair to everyone involved since day 1. But apparently that means little.
Title: Re: 500d development
Post by: Jamez on 02 / May / 2011, 00:10:48
Nice coutts, Alex`s and your paypal donation buttons are now on the wiki, 1.4 build also added, any chance of the source being updated when you release a new build please?7

@NewbieToobie I think your comments are a little harsh, where do you draw a line? Did the guy who start this project donate to Canon when they released important stuff to him to enable to start this project, I doubt it. Do we donate to Takeshi Mitarai, Goro Yoshida, Saburo Uchida and Takeo Maeda who started Canon in the 1930s? I understand that this is why its easier to say no donations, but no one is forcing anyone to donate, and some people just want to say thanks to Coutts/Alex/Others who have spent a lot of time on the project, I see nothing wrong with it personally. If someone has a problem in recognising that someone has spent a lot of their time on something, and without them it would be no where, thats there problem IMHO, to quote one of your own posts "Looks like I'll have to wait for V3". Having worked in open source projects before, I can assure you that the number of donations received will be almost none, and working in McDonalds is much more profitable from a finanical point of view. Im sure your well aware that CHDK and ML are actually very very different. Theres no need for green eyed monsters here :(

PS Coutts, 3 builds ago focus peaking was close to working, but has subsequently been changed to be worse, maybe this gives you a clue as to what to change.
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 00:19:28
I thank everybdoy who donates, it really feels good knowing I'm helping this many people!!
Does this mean that you'll be sharing equally with all coders and documentation authors from the whole CHDK project that have come before you?

Hint: This is why donations have never been allowed. It wasn't fair to everyone involved since day 1. But apparently that means little.
Donations are optional, I was even hesitant to give out my paypal at first, stating that all of the coders before me deserved more credit than me. I'm not asking for any donations, if I was in this for donations/money, or anything more than the greater interest of everybody, I wouldn't have hundreds of hours logged working on it.

I thank Trammell for making magic lantern free and open source. I'm sorry if anybody is offended, but believe me I am not motivated by promise of profit.


Nice coutts, Alex`s and your paypal donation buttons are now on the wiki, 1.4 build also added, any chance of the source being updated when you release a new build please?7
i've updated the source quite a lot recently, it's now up to date for v1.4:
https://bitbucket.org/alins/magic-lantern-for-500d
Title: Re: 500d development
Post by: NewbieToobie on 02 / May / 2011, 00:28:23
I'm not asking for any donations, if I was in this for donations/money, or anything more than the greater interest of everybody, I wouldn't have hundreds of hours logged working on it.
Then I guess you'll have no problems sharing proportionately with those who have put THOUSANDS of hours into all that is CHDK today. Or, remove your paypal address. Simple choices, no?

Title: Re: 500d development
Post by: Jamez on 02 / May / 2011, 00:31:20
It was me that added them Newbie, and you need to know that its not actually based on CHDK all that much, so your comment is not really valid, I suggest you look at any of the ML videos and not jump to conclusions. I think its fine to leave them there.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / May / 2011, 02:53:59
I think it's no biggie to take off the link, anyone that wants to donate can figure out how to give to people without such ties anyways. Lesson learned- PM the paypal so it doesn't offend those such as NewbieToobie. To quote the ML main wikia page "Magic Lantern has been developed by independent film makers in our spare time and at risk to our beloved cameras. We hope that it saves you time and aggravation on set, and we'd appreciate your support. You can help is through donating via PayPal, wishlists or through equipment donations. You can also contact me via email." The problem I have is the paypal goes to paying for the "MagicLantern on the Canon 5D Mark II" which is great, however not my camera. So...yeah I'll put my money wherever I choose. Now can we get back to real discussion about the 500d development? Your build looks great Coutts, can't wait to test the gamut of it's features ;)
Title: Re: 500d development
Post by: bjacklee on 02 / May / 2011, 03:10:38
Coutts deserves it... people saying negative things about it is not helping... Cmon guys, lets motivate our developers... ML for 500d wont progress without them...
@Coutts, I just downloaded you latest release, I havent tested it yet but this weekend I'll be uploading another test video... Thanks a lot Coutts! ur the man!

Title: Re: 500d development
Post by: bjacklee on 02 / May / 2011, 03:19:08
@pat_loonytoon, hows your external mic going on? Ive been planning to modify mine too... I hope I wont damage my 500d... lol!
Title: Re: 500d development
Post by: pat_loonytoon on 02 / May / 2011, 03:23:53
my external one is going great. I just shot some more video today, need to edit it but yeah ML seems to help in getting the input just how I want it. The stuff needed to do it is super easy to get. Just don't F up your camera though ;) Make sure you watch some videos of how to do it or follow a guide to be sure.
Title: Re: 500d development
Post by: bjacklee on 02 / May / 2011, 03:28:21
yeah but im willing to take the risk.. :D well, thats what ML is all about I guess. Taking risk to get the features we want and hope everything works well..
Title: Re: 500d development
Post by: reyalp on 02 / May / 2011, 03:54:58
Sorry to continue this OT in your development thread, there's a couple things I'd like to clear up.

Newbietoobie is entitled to his opinion, but he doesn't speak for the "CHDK team" or anything like that. There is no organized team as such. I don't speak for anyone else either, but FWIW I am currently the active developer in CHDK and I don't see any problem with Coutts having a paypal link.
Does this mean that you'll be sharing equally with all coders and documentation authors from the whole CHDK project that have come before you?
To the best of my knowledge, ML is not based on CHDK in any way, so that would be rather silly.
Quote
Hint: This is why donations have never been allowed. It wasn't fair to everyone involved since day 1. But apparently that means little.
Here's what the rules actually say:
Quote
Commercial projects based on CHDK cannot be discussed in this board. Furthermore, developers should keep in mind this a GPL based project, so any publication made here should upkeep to the license's rules;
One could quibble about where the line is between donations and "commercial project". I'd personally say welcoming paypal donations isn't much of a commercial project, but again, ML is not substantially based on CHDK.

Carry on.
Title: Re: 500d development
Post by: bjacklee on 02 / May / 2011, 04:00:47
so everything is clear now.. :) thanks reyalp..
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 04:11:05
if anyone wants to further development in terms of video at x FPS, start using prop/event/mem spy to record values that are changing in an attempt to see what the camera is doing.

anyone with the latest build an do it, prop/event/mem spy are located under the debug menu. prop spy shows property changes, event spy shows gui events (menu has to be up), and mem spy shows memory values changing.



(meanwhile here in america: http://www.youtube.com/watch?v=yl7POcfh9RU&feature=player_embedded# (http://www.youtube.com/watch?v=yl7POcfh9RU&feature=player_embedded#))
Title: Re: 500d development
Post by: gravityrem on 02 / May / 2011, 05:12:09
All right, ALL of that is such good news !!
Congrats Coutts for the menu.. it's stable whaow.. It makes it look more pro !
About this little war for/against donations, i'd like to show my support to Coutts and the others dev. I like the way you deal with that, so i guess ill make a donation one of these days, just so you can buy a new bag of coffee, cuz i guess you must be using a lot to stay awake huh !

But, i can't forget about Alins.. maybe his paypal should be in the wiki... ?


Title: Re: 500d development
Post by: gravityrem on 02 / May / 2011, 05:22:29
Is that normal that when the camera isnt in live view, i get more flickering problems in ML menu than i had before with v1.3 ?

EDIT : Sorry, im just dumb, turning "SENSORSHORTCUTS" off, fixed the problem.
Title: Re: 500d development
Post by: Jamez on 02 / May / 2011, 05:41:21
I just tried the intervelometer (sp) out on the latest build, and since testing it the screen refresh rate that coutts has spent so long on breaks in short, and looks worse than any alpha build :(
Removing battery, and restarting the camera doesnt fix it

Edit: Just tried disabling Sensor Shortcuts as per the suggestion above (its under the debug menu) and we are back to normal  :xmas

PS I PM`d alins about 2 weeks ago about the paypal donation thing, not heard back yet, hence there being a simple one liner under the donations part.
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 08:50:25
Hey Coutts, I have no clue if this means anything, but when I use the debug in cam and have set to Prop, I notice at the address 0000002e 0004 this number changes as you adjust the ISO while in movie mode, I use a flashlight aimed at lens and press the iso button as I put more light to lens and wait for iso to change, I notice the numbers are.
0=auto
48=100
50=200
58=400
60=800
68=1600
Also, I noticed when your able to change the shutter speed while pressing the iso button to set and lock it and also using hand to cover lens a bit if lit on bright object like sky, I noticed the numbers changing at differ shutter speeds at address 0000002c 0004

Is any of this info helpful, or am I getting the wrong info to help, just figured I would do what little I can 8]

Oh, I am also using an old manual type lens, so I haven't looked at aperture yet. I just set my lens to open for testing the iso and shutter.


Title: Re: 500d development
Post by: arnarg on 02 / May / 2011, 09:21:07
...I notice at the address 0000002e 0004...
Looks like 8000002e 004 to me ;) it's a really small font.

I noticed that 80050010 003 also changes a lot when pressing the iso button in different amounts of light, might be shutter speed?

EDIT: It's probably something else, it changes without any of the numbers on the bottom of the screen changing.
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 09:37:27
yep, ur right, the first number is an 8, but im sure coutts would of known what i meant anyway, 8] very small font, but im sure it has to be to fit all that debug info.
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 09:59:59
Ahh, and after throwing my kits lens on I see 8000002d 004 changes with aperture, the way to see that, is once u get iso and shutter set and locked you zoom in and out to force aperture change according to zoom range. Hope this info is useful in some way, would love to get the manual control in video mode 8]
Title: Re: 500d development
Post by: utnuc on 02 / May / 2011, 10:30:12
The only property that lights up blue when you change video resolution is 802000a 004 -> but it stays 1 the entire time.  Doesn't matter if you switch from 480p to 720p, or from 720p to 1080p.  This makes me think that the resolution and frame rate are not set by 2 different properties.  If this is true, this might be bad news for 1080 30p.   :(
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 11:02:33
Also, see that when you hold the ISO button down to set and lock these iso, shutter and aperture settings, I see that 8005000e 0002 = 1 and is 0 when released, maybe this set to 1 with the other addresses will help get it going, if again, if this is even what we are suppose to be looking for, for all I know, this is all the basic known stuff already, lol, but I am just trying to help Coutts 8]
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 11:52:34
most properties have been defined in property.h
https://bitbucket.org/alins/magic-lantern-for-500d/src/ed8ceb004a4a/property.h

but keep up the debugging everyone :)
I don't know why sensor shortcuts makes things go haywire now, but when that was on before the debug log was being spammed with messages saying the display sensor was being turned on and off continuously, this is gonna need looking into.

as far as manual video goes, maybe someone can start looking at the 500d dump in a disassembler like ida, and try to find functions that change fps??


one thing i noticed last week while working with exp sim: the exp sim property when set to i believe 2 (when i was messing around) puts the camera in "video mode" it looks like (video icon appears in lower corner in Live V). but when we're in video mode this property cannot be set for some reason. maybe if we find an event that happens when switch to live v / video modes, we can inject an event in video mode to make the camera think it's in live view mode, and then we might be able to adjust shutterspeed / aperture?

keep reporting bugs in the repository buglist as you guys find them!!!!
https://bitbucket.org/alins/magic-lantern-for-500d/issues?status=new&status=open


:D
Title: Re: 500d development
Post by: LaLaPico on 02 / May / 2011, 12:41:04
Quote
Then I guess you'll have no problems sharing proportionately with those who have put THOUSANDS of hours into all that is CHDK today. Or, remove your paypal address. Simple choices, no?

This is misguided. Several of us have ask him if we could donate to him. He never came up with the idea himself. I wanted to personally send him something for his hard work, because his work is directly supporting my camera and what I use it for. If a bit of cash from me will spur him to continue on through long nights, I'm all for it.

Title: Re: 500d development
Post by: LaLaPico on 02 / May / 2011, 12:47:28
I had a question --- I tried ML for the first time yesterday on my T1i. For me to change properties in the menus, I can only do this through the ML menus? I tried to change a picture profile (in the cannon menu( and a second or two after I saved it, the camera would flash to black and seem to restart, and the changes would be gone.
Title: Re: 500d development
Post by: Jamez on 02 / May / 2011, 12:49:02
as far as manual video goes, maybe someone can start looking at the 500d dump in a disassembler like ida, and try to find functions that change fps??
Maybe this will help?
http://groups.google.com/group/ml-devel/browse_thread/thread/159dd2a0c86b29c6# (http://groups.google.com/group/ml-devel/browse_thread/thread/159dd2a0c86b29c6#)

Request (well ok, its the same request as before), stabilise whats there first, before moving on mate ;)

@LaLaPico
What mode was your camera set to? Sometimes the ML stuff fights with Canon menus, and you can change the Canon Menu stuff easily from another mode first.
Title: Re: 500d development
Post by: LaLaPico on 02 / May / 2011, 13:18:43
P or M. I didn't test to much with it --- I couldn't even bring up the ML menus (didn't know how).
Title: Re: 500d development
Post by: LyncusBee on 02 / May / 2011, 14:15:49
I've been looking through the source files, with my intermediate knowledge of C.

Most interesting seems to be the lens.h functions declared as static inline void
 "lens_set_rawxxxx"; where xxxx is iso ;aperture; shutter etc.

Those utilise the function "prop_request_change" with parameters PROP_XXX (ISO, SHUTTER, APERTURE) then &XXX (again ISO, SHUTTER, etc.) which I think is a reference to memory '&' being the unary operator for memory address of variable, followed by some integer?

prop_request_change has a declaration in property.h which seems to take typedef long integers "uint32_t" which then are assigned hex memory addresses.

In short I am by far no expert but I think the key to cracking the manual controls in video may be to drill down the functions to work out how the "Movie" mode, being based on the live view, ignores button press events that could (indeed do in other modes) send the apropriate arguments passed through the chain of functions lens_set_rawxxx(...) > prop_request_change(...) etc?

Not trying to drip honey on the proverbial hornet's nest of these wanted functions; just first impressions at looking through the source code files which seem to use, throughout, struct's, references, pointers, and typedef'd variables for carrying memory addresses for the functionality we are after?
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 14:17:47
I had a question --- I tried ML for the first time yesterday on my T1i. For me to change properties in the menus, I can only do this through the ML menus? I tried to change a picture profile (in the cannon menu( and a second or two after I saved it, the camera would flash to black and seem to restart, and the changes would be gone.
there are still lots of little bugs like this, they are somewhat easy fixes, so please try to document any small bugs like this with as much detail as possible (what it's doing, what settings were changed, what mode you were in, does it happen in other modes, does it affect other settings, etc). the more detailed bug reports are, the easier they are for me / others to track down and fix.

as far as the money thing goes, i'm not going to turn down a donation, but remember i'm not doing this just for donations. i'm a fellow t1i owner as well. I want to see magic lantern fully ported to the t1i.

also, i've noticed it's a bit addicting - the more i'm working on this and becoming familiar with magic lantern (and how the code works), the more i find myself unable to put the code down lol.


here's some tips for debugging:
prop/event/mem spy work, although i forgot in the current build mem spy is only going to show smaller values, if you are able to compile the code yourself it's an easy fix. go in debug.c and change line 319:
Code: [Select]
int mem_spy_small = 1;to
Code: [Select]
int mem_spy_small = 0;

some events are defined already, a lot need confirmed. if you want to start mapping events / confirming if they are correct, the place for them is in gui.h
i corrected the values for press_halfshutter/unpress_halfshutter, and the 4 events defind below those. these are used in menu.c, there is a big case statement in menu_handler to handle gui events. from what i've tested, I know events 0x10000041 and 0x10000042 happen when the shutter is pressed half way or the AE lock button (star button) is pressed. i know that event 0x1000009f has something to do with the metering bar (blocking this event stops the EV bar from moving :-/ ), and 0x10000075 only shows up when in live view, and it's just spammed over and over and over, really not sure what it does.


some mem spy values are defined in the constants file:
https://bitbucket.org/alins/magic-lantern-for-500d/src/ed8ceb004a4a/consts-500d.110.h

this is how i fixed trap focus, the FOCUS_CONFIRMATION_AF_PRESSED value was wrong a while ago.



for people struggling to know where to start as far as understanding the code, i'll give some quick tips here. also these are just some thoughts going through my head right now:

- everything basically starts in 500d-hack.c. this is where ML copies itself into canon's memory at boot time, so that canon runs ML's init tasks, then ML calls a soft reboot, where it removes itself from memory and puts canon's init tasks back, canon's init tasks are run and the camera boots up like normal.
- i think from there control goes to debug_init in debug.c.
- any time the ML menu is up, the code in menu_handler in menu.c is runnning
- shoot_task() in shoot.c basically runs at all times (this handles audio/lcd triggering, MLU, etc)
- zebra.c contains everything related to focus peaking, intervalometer, hdr, silent pics, and a few other things.
- in gui.c, handle_buttons i think runs at all times, i'm still trying to figure this one out right now.
- events can be injected with the ctrlman_dispatch_event() function. i've been thinking we might be able to use this to make canon do different things. ex: inject event that we're in live view mode when we're actually in movie mode? could trick canon into letting us adjust shutterspeed/aperture.  the way to call this is:
Code: [Select]
ctrlman_dispatch_event( task_name, event_id, 0, 0);the task_name i believe is the name of the ML task, event id is the event you want to inject (0x10000042 for shutter half press for example), and the 2 zeros are just unknowns, i think we just leave those as 0 always.

example, i was trying to use this in menu.c while messing with menus.
Code: [Select]
ctrlman_dispatch_event( gui_menu_task, METERING_STOP, 0, 0);(i was trying to tell canon to stop metering when the ML menu was shown, didn't have any luck though. this event didn't stop metering).



umm, let's see..
yesterday i got silent pics to take with a half shutter press, i had to tweak gui.c, in the function get_halfshutter_pressed, as silent pics checked this function for a value. for some reason the gui event for half shutter wasn't being picked up (it's inside that handle_buttons function in gui.c), so I changed it to pickup on the mem value from the constants file (focus_confirmation_af_pressed), so now silent pics take (the vram stuff still isn't right yet so it's not dumping the right data). i don't like that a half press in the ML menu still takes silent pics, I tried telling it to check if the ML menu was up but couldn't figure out how to link gui.c to menu.c (if i defined a variable in menu.c in the menu_handler while ML menu was up, gui.c couldn't see this variable so i couldn't get it to work). if anybodys got any idea, shoot em.




so that's basically what's been on my mind since last night. i figure if i keep explaining things as i figure them out, hopefully others will pick up on it too.

whew... :)
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 14:26:41
I've been looking through the source files, with my intermediate knowledge of C.

Most interesting seems to be the lens.h functions declared as static inline void
 "lens_set_rawxxxx"; where xxxx is iso ;aperture; shutter etc.

Those utilise the function "prop_request_change" with parameters PROP_XXX (ISO, SHUTTER, APERTURE) then &XXX (again ISO, SHUTTER, etc.) which I think is a reference to memory '&' being the unary operator for memory address of variable, followed by some integer?

prop_request_change has a declaration in property.h which seems to take typedef long integers "uint32_t" which then are assigned hex memory addresses.

In short I am by far no expert but I think the key to cracking the manual controls in video may be to drill down the functions to work out how the "Movie" mode, being based on the live view, ignores button press events that could (indeed do in other modes) send the apropriate arguments passed through the chain of functions lens_set_rawxxx(...) > prop_request_change(...) etc?

Not trying to drip honey on the proverbial hornet's nest of these wanted functions; just first impressions at looking through the source code files which seem to use, throughout, struct's, references, pointers, and typedef'd variables for carrying memory addresses for the functionality we are after?

here's a run down to change properties:
- find the property with prop spy, or searching in the dumps, whichever method you prefer
- define it in property.h
- in the file you're going to use it, call a PROP_INT(PROP_[property_name, whatever you named it in property.h], value_variable_name)
- then you can call a prop_request_change, the arguments are property_name, value to change to (use & to refer to the address of this variable, i don't understand the exact significance of this, only that it's used like that everywhere and Alex says it's good practice), and length.
- the length can be found in prop spy (it's the number next to the property ID i believe?), or using a prop_handler instead of prop_int. Example for prop_cfn as used in shoot.c (for changing htp / mlu):
Code: [Select]
uint32_t cfn[4];
PROP_HANDLER( PROP_CFN )
{
        cfn[0] = buf[0];
        cfn[1] = buf[1];
        cfn[2] = buf[2];
        cfn[3] = buf[3] & 0xFF;
        //~ bmp_printf(FONT_MED, 0, 450, "cfn: %x/%x/%x/%x", cfn[0], cfn[1], cfn[2], cfn[3]);
        return prop_cleanup( token, property );
}
you would use a print statment like the one that's commented out above to view the values of each "buf" of the property. i don't understand this exactly, but in the case of CFN, htp is on buf[0] and mlu is on buf[1]. you can also just print the len variable inside a prop handler to print the length of that property.
- note: i also don't understand what prop_cleanup is used for, i notice it's used sometimes but not always.


i've noticed some prop changes don't happen while in video mode, ex: for exposure sim, i said this earlier but when i was messing with that, setting to 1 turned expsim on, setting to 0 turned it off, and setting to 2 made the camera look like it was in movie mode :o (from live view). trying to change this property in movie mode has no effect, almost like it's ignoring these property changes (same for shutterspeed / aperture).


i'm happy to see others are starting to look through the code now. just keep reading through it and learning, i've already come a long way since I started (as far as understanding goes).




here are some useful wiki pages:
http://magiclantern.wikia.com/wiki/GUI_Events/550D (http://magiclantern.wikia.com/wiki/GUI_Events/550D)
http://magiclantern.wikia.com/wiki/Extending_Magic_Lantern (http://magiclantern.wikia.com/wiki/Extending_Magic_Lantern)
http://magiclantern.wikia.com/wiki/Properties (http://magiclantern.wikia.com/wiki/Properties)
Title: Re: 500d development
Post by: LyncusBee on 02 / May / 2011, 14:39:50
Looks like I have a lot of reading to do ;)
Title: Re: 500d development
Post by: LyncusBee on 02 / May / 2011, 14:52:46
Quote
use & to refer to the address of this variable, i don't understand the exact significance of this, only that it's used like that everywhere and Alex says it's good practice)

Speed really; accessing a memory address directly using references or pointers to variables "unary operator '&'" means that unlike assigning "x=1" where the value of "x" is taken from memory put into the CPU buffer and then put back into memory after the arithmetic, absorbing CPU clocks, it is manipulated directly in memory ( of sorts)... much faster on arrays of polygons of a 3D mesh, or an array of pixels in an X megapixel image where one might iterate through a 3d or 2d array of millions of data cells...

Sorry not trying to do the whole "suck eggs thing"    
Title: Re: 500d development
Post by: Samsongas on 02 / May / 2011, 15:09:57
ML menu when not in LiveView flickers like hell for me, with the latest build.
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 15:53:49
yes, it does flicker alot without live view but still seems like the most stable build yet, especially in live view mode, such awsome progress 8]
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 16:26:15
disable sensor shortcuts, all fixed :)

not sure what they do yet, haven't really looked into it. when you really start getting into things, there are a looot of little bugs that need fixed.
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 19:01:12
some findings:
in video mode, the ISO button locks the exposure, and leaves it set for as long as the "metering timer" setting in the canon menu is set to (4sec, 16sec, 30sec, 1min, 10min, 30min). i just noticed this after owning this camera for 2 years now LOL.

but anyways, the exposure stays locked during this time. i noted 5 properties changing while toggling metering on / off with the 4sec setting.

The properties in question (note: all have a len of 4):
80000036
8000002d
80000035
8000002c
8000002e


idle, metering lock not engaged:
80000036 - 0
8000002d - 0
80000035 - 0
8000002c - 0
8000002e - 0


metering lock engaged (after pressing ISO button, these values remain at this until the metering time ends, they then return to the values above):
80000036 - 100048
8000002d - 10
80000035 - 100098
8000002c - ? (value changes, not sure what it's tied to)
8000002e - ? (value changes, not sure what it's tied to)


metering lock engaged - no lens attached
80000036 - 0
8000002d - 0

80000035 - 100098
8000002c - ? (still changes, unsure what it is still)
8000002e - ? (still changes, unsure what it is still)

idle, no lens attached
80000036 - 0
8000002d - 0
80000035 - 0
8000002c - 0
8000002e - 0


so this is something to look into. we may be closer to having manual video controls than we thought :)
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 19:09:09
dont tease us like that coutts LOL!!!!
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 19:32:46
8004001a is the property for the metering timer.
len: 4
metering seconds - property value
4sec - 4
16sec - 10
30sec - 1e
1min - 3c
10min - 258
30min - 708

this may be ISO related:
80050012
len: 4
iso - value
1600 - 10
100 - 0
I only notice it change from 0 or 10, only time it goes to 10 is at iso1600, every other iso value it stays at 0. needs looking into.


800200a
len: 4
value doesn't change but setting different recording modes (1080p, 720p, etc) makes it flash blue, it's always set to 1 looks like. could be related to recording mode though??




i might be able to use that property for metering timer to set that to some huge number (giving the effect of always having manual metering). i need to isolate iso from shutter speed somehow (to see what properties change when only one of these change), aperture is easy (just take lens off), but i'm not sure about the other 2. something to look into :)

note: i also just noticed that the properties for ISO, shutter speed and aperture don't change at all in video mode, almost like they aren't used anymore. maybe the camera relies on a different set of properties for these in video mode? just writing down some notes for myself later, have a lot to do right now. if anyone notices anything else like this post it up!!
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 19:47:25
keep going coutts, you sound like ur on to something, this will be the best news yet i am sure, if you can get manual control of iso and shutter, like u said aperture not a big deal, even if you can get just iso at start to get manual control of that so it can be locked so then anyone that wants to adjust shutter they can just aim at something bright and use there hand to cover slightly till the shutter drops to the speed you want then lock it, its hard to do it now cause while you press the iso button, both iso and shutter are adjusted by metering, i would love to be able to lock iso at 100 and i have a manual lens for my aperture so having the ability to adjust the shutter with no worries of iso moving, that would be a good start for sure, i always have my metering set to 30min so when i lock it with iso button i dont have to worry about it changing on me, but i like your idea to make it a crazy long time 8] And then of coarse I know everyone is hoping for full manual control, but you got to start somewhere thats for sure 8] GOOOOO COUTTS!!!!
Title: Re: 500d development
Post by: arnarg on 02 / May / 2011, 19:58:38
Very long metering time is a good idea if it's not a big deal to achieve but 30min is plenty, and I wouldn't have a problem with that. Great job Coutts!
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 20:19:18
Right now, the way I adjust my iso and shutter, is I first press and hold the AV button, i turn the main dial all the way to +2, I then aim at something bright, and just press the iso button repeately till i get an ISO of 100 and then, use my hand slightly over it till i get a shutter also of 50 or 60 while my iso is 100, its actually pretty easy and always works out nice, then it gives me my start point of 1/60 shutter, then to adjust my shutter I just press and hold AV button and turn dial down to get any shutter speed I need and my iso stays at 100, depending on the lighting you can get a really good shutter range to be adjustable to your needs, just figured I would share how I do it just in case someone in here dont know that trick, but of coarse this is with a manual lens that you can adjust aperture on the lens, or you can do the lens trick to lock aperture and unscrew lens, no need to go into that cause I know everyone knows that trick 8] I like shooting video at 100 iso cause I dont want any grain in my video, so if I cant shoot 100iso and a good shutter, I get more lighting to the shot, I dont like grain in my video at all. And after messing with the cam, I dont even thing the shutter speeds under 1/60 are real, you can get it to say 1/4 and lower, but it does not cause the normal motion blur you would expect to see, so I think the cam really only works as slow as 1/60 and faster.
Title: Re: 500d development
Post by: arnarg on 02 / May / 2011, 20:25:13
there's actually another trick to get the shutter to 1/60, unscrew the lens and when the screen comes telling you that the lens isn't attached press the record button and then the iso button (just half a second later or so) and the shutter will be 60. I don't know why though...
Title: Re: 500d development
Post by: rexman on 02 / May / 2011, 20:27:56
note: i also just noticed that the properties for ISO, shutter speed and aperture don't change at all in video mode, almost like they aren't used anymore. maybe the camera relies on a different set of properties for these in video mode? just writing down some notes for myself later, have a lot to do right now. if anyone notices anything else like this post it up!!

Could these values be used for taking still image during viedo recoring? and hence only change on metering to take the still?
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 20:32:49
yeah, i heard of that trick, but the bad thing is about it, bad thing is not really able to ever get to the iso you want and you have to do it again if it dont work, got annoying real fast, the way i do it seems real good, close to having manual control, i shoots lots of video, but obviously manual control of these things will be so much nicer cause you wont need to carry a flashlight with you or find a bright object anytime you want to set it up.
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 20:37:33
The only ones I notice change for ISO as you set and lock from auto to 1600 in movie mode are at address 8000002e
0=auto
48=100
50=200
58=400
60=800
68=1600
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 21:25:03
The only ones I notice change for ISO as you set and lock from auto to 1600 in movie mode are at address 8000002e
0=auto
48=100
50=200
58=400
60=800
68=1600
nice! that means 8000002e must be ISO in video, i wonder if we can just set that property to set the ISO. i can't play with it now as I've gotta finish up a bunch of work for my finals this week, and my camera battery is dead :-s

if 8000002e is ISO, then 8000002c must be shutter speed. i think we might be close :)
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 21:32:42
Yep, that the one that changes as I am able to dial my way through the shutter speeds doing it the way I explained earlier, and also 8000002d changes with aperture change. I will jot down every shutter property i can since I have time, if that will help.
Title: Re: 500d development
Post by: utnuc on 02 / May / 2011, 22:15:36
Some great finds here!  Wish I had time tonight to plop some values into 8000002e and see if we get manual control of ISO, maybe tomorrow.

Does anyone know if the other ML devs (eg 5dm2) have attempted fps control?  If so, can someone track down their CHDK forum discussions about this?  I searched a few weeks ago and came up empty.
Title: Re: 500d development
Post by: aznguy on 02 / May / 2011, 22:31:24
fps control doesnt seem all that much important... manual controls seems like the most realistic thing to implement. thats all im rooting for, but hey FPS would be nicee if it can happen :D
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 22:35:34
wish i knew how to plop some values into addresses and test things out, i have no job or school just time on my hands, lol
Title: Re: 500d development
Post by: aznguy on 02 / May / 2011, 22:36:29
you can start!! :) coutts started with pretty much no prior knowledge
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 22:51:15
I tried, I installed everthing as far as I can tell, but dont know what to do from there other then look at all the C and H files, mine open in Visual Studio so I dont know if thats even right, I have no idea how to compile or make the bin files like Coutts makes, might be best for me to leave that up to the pros, Coutts, hes so much farther ahead anyway, hes our best chance I am sure 8]
Title: Re: 500d development
Post by: Coutts on 02 / May / 2011, 23:23:45
I just use a simple text editor, that's it. just edit the files like that, then to compile just run "make" in the project directory in your compiler.

i posted some instructions a ways back for setting things up with cygwin / yagarto under windows.

this will explain how to apply property changes:
http://magiclantern.wikia.com/wiki/Properties (http://magiclantern.wikia.com/wiki/Properties)
Title: Re: 500d development
Post by: mk11174 on 02 / May / 2011, 23:43:32
yeah, i installed all that, not 100% sure it all works, i put the yagarto in the home directory of the cygwin folder, i changed the makefile directory to point to mine on my pc, i then load cygwin and goto the C:\Program Files\Mercurial\magic-lantern-for-500d folder from in there and type make and enter and it says Makefile:1: *** Recursive variable 'ARM_PATH" references itself <eventually>. Stop  So i must be doing something wrong 8/
Title: Re: 500d development
Post by: Jamez on 02 / May / 2011, 23:48:03
Heads up for Coutts... that menu work might not be as finished as we think.
http://groups.google.com/group/ml-devel/browse_thread/thread/47f8a4b186bd9a81/34e60c28b95f5929?show_docid=34e60c28b95f5929 (http://groups.google.com/group/ml-devel/browse_thread/thread/47f8a4b186bd9a81/34e60c28b95f5929?show_docid=34e60c28b95f5929)
Title: Re: 500d development
Post by: sbright33 on 03 / May / 2011, 00:12:19
@Coutts - Did this help for finding VRAM with Silent Picture?
http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 00:19:51
Shutter Properties at address 8000002c, without the sun I cant get to 4000 which seems to be its max shutter speed and 60 is its lowest shutter that effects the picture which sounds right cause 1/60 is the standard speed for video cameras anyway.
60 = 68
80 = 6b
100 = 6d
125 = 70
160 = 73
200 = 75
250 = 78
320 = 7b
400 = 7d
500 = 80
640 = 83
800 = 85
1000 = 88
1250 = 8b
1600 = 8d
2000 = 90
2500 = 93
3200 = 95
Title: Re: 500d development
Post by: Coutts on 03 / May / 2011, 00:26:11
Heads up for Coutts... that menu work might not be as finished as we think.
http://groups.google.com/group/ml-devel/browse_thread/thread/47f8a4b186bd9a81/34e60c28b95f5929?show_docid=34e60c28b95f5929 (http://groups.google.com/group/ml-devel/browse_thread/thread/47f8a4b186bd9a81/34e60c28b95f5929?show_docid=34e60c28b95f5929)
Alex is doing things differently with the menus in the 60d. I tried using his updated code but trashed it when I couldn't figure out which events were which on the 500d. i've re-written the whole menu handling routine quite a few times now lol. it's crazy how many different ways you can come up with to solve a problem. as far as I know we should be safe. i spoke to him earlier today and he said he thinks the thing that bricked his 60d was trying to call lv_redraw() at camera boot, or something along those lines.

@Coutts - Did this help for finding VRAM with Silent Picture?
http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
i've looked at that and tried adjusting the right numbers in the code but nothings working yet. i think we need the dma address, maybe things will work after that. dma address is in the constants file at the top.

Shutter Properties at address 8000002c, without the sun I cant get to 4000 which seems to be its max shutter speed and 60 is its lowest shutter that effects the picture which sounds right cause 1/60 is the standard speed for video cameras anyway.
60 = 68
80 = 6b
100 = 6d
125 = 70
160 = 73
200 = 75
250 = 78
320 = 7b
400 = 7d
500 = 80
640 = 83
800 = 85
1000 = 88
1250 = 8b
1600 = 8d
2000 = 90
2500 = 93
3200 = 95
thanks :) you only had to do it a few times actually haha, it should go in a pattern like the memspy values for shutter speed/iso/aperture in shooting mode :P

Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 00:28:50
yeah, i noticed, lol
Title: Re: 500d development
Post by: Coutts on 03 / May / 2011, 01:16:53
hm.. i can't change the iso here :-/ something is fighting it. the properties are set where they should be but they don't change.. gonna try to see if any events have to happen.
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 01:40:43
Can it be that the ISO button has to be activated to make them work, like when you press the iso the address 8005000e changes from 0 to 1???
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 02:11:20
Also noticed while at ISO 100 when changing movie mode shutter, the properties change at address 80050010:   But these properties are different when the ISO is not 100, so there will be a new property for the shutter speed at each ISO, plus the properties at 2c, but those properties stay the same no matter what ISO.
60 = 67486d
80 = 6b4871
100 = 6c4872
125 = 704876
200 = 75487b
250 = 77487d
320 = 7a4880
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 02:21:57
here are the properties of shutter speed 60 at differ ISO at address 80050010
iso 100
60 = 67486d
iso 200
60 = 675358
iso 400
60 = 67584d
iso 800
60 = 67604d
iso 1600
60 = 67654d
Title: Re: 500d development
Post by: adijiwa on 03 / May / 2011, 03:31:37
here are the properties of shutter speed 60 at differ ISO at address 80050010
iso 100
60 = 67486d
iso 200
60 = 675358
iso 400
60 = 67584d
iso 800
60 = 67604d
iso 1600
60 = 67654d

Is it possible that the first byte is the shutter speed value, the second byte is ISO speed. But what about the third byte?
Title: Re: 500d development
Post by: gravityrem on 03 / May / 2011, 04:14:24
aperture ?
Title: Re: 500d development
Post by: adijiwa on 03 / May / 2011, 04:17:52
aperture ?

I don't know...
What was the aperture value in each of these ISO speeds?

here are the properties of shutter speed 60 at differ ISO at address 80050010
iso 100
60 = 67486d
iso 200
60 = 675358
iso 400
60 = 67584d
iso 800
60 = 67604d
iso 1600
60 = 67654d
Title: Re: 500d development
Post by: gravityrem on 03 / May / 2011, 04:23:38
yep, i guess it's important to note the 3 values ( Aperture, shutterspeed, iso) when we pick memory values.
it wouldn't be the first time that several parameters would be joined at the same adress.
Title: Re: 500d development
Post by: adijiwa on 03 / May / 2011, 04:38:33
At last I established my own development environment for ML using cygwin+yagarto...
Well, I know C (but not very much), so I would like to contribute to this project.

When I compiled the project, there are sooo many warnings. Is that alright? I mean, are the warnings related tho the stability issues (random restarts, etc) ?
Title: Re: 500d development
Post by: Jamez on 03 / May / 2011, 05:47:21
@adijiwa thats normal for now, my friend compiled ML for me on my environment here, and I too saw them, theres just one or 2 ;)
It would be nice to get rid of a few (dozen) of those errors when it compiles.

@coutts glad to hear that we are stable on the menu
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 07:00:49
the aperture on all those debugs were f0, no lens cause i was using an old manual lens, so cant be aperture cause the last 2 values are not all the same 8/
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 07:34:11
i wish i knew what i did wrong, i still cant get mine going, now when i try to do make from the magic-lantern-for-500d directory, it says, "target pattern contains no # Stop." is it cause im using windows7, maybe its not meant for win7? Maybe I installed file-slurp in wrong folder? wasnt sure where to put it, so i put on root of my c drive, as did i cygwin, merc is in program files, not sure if that one matters, and yag is in the cygwin home.
Title: Re: 500d development
Post by: utnuc on 03 / May / 2011, 07:50:34
 Did you edit the first 8 lines of Makefile to make sure your compiler paths are correctly set?  I also had to edit line 237 to set the ARM_LIBC_A path.  I never could get the windows/cygwin environment to work.  I ditched it for a Linux VirtualBox, instuctions here:

http://chdk.setepontos.com/index.php?topic=5971.msg64796#msg64796 (http://chdk.setepontos.com/index.php?topic=5971.msg64796#msg64796)

Ben
Title: Re: 500d development
Post by: mk11174 on 03 / May / 2011, 07:59:19
aperture ?

I don't know...
What was the aperture value in each of these ISO speeds?

here are the properties of shutter speed 60 at differ ISO at address 80050010
iso 100
60 = 67486d
iso 200
60 = 675358
iso 400
60 = 67584d
iso 800
60 = 67604d
iso 1600
60 = 67654d
Scratch what I said about the last props changing, if you manually dial the ISO down, the last figures stay the same, and the other properties have to be ISO and Aperture like you suggested cause as you dial through the shutter and iso, the numbers do wind up the same as the ISO and Shutter Props I posted earlier, like as you dial the AV down you will get a couple clicks before it changes to the next ISO and shutter, so 1 click will say for instance if it was on ISO 1600, one click will be 68 the next click will be 65, and 68 is the ISO prop of address 8000002e so it seems its all related for sure.
Title: Re: 500d development
Post by: adijiwa on 03 / May / 2011, 08:17:50
i wish i knew what i did wrong, i still cant get mine going, now when i try to do make from the magic-lantern-for-500d directory, it says, "target pattern contains no # Stop." is it cause im using windows7, maybe its not meant for win7? Maybe I installed file-slurp in wrong folder? wasnt sure where to put it, so i put on root of my c drive, as did i cygwin, merc is in program files, not sure if that one matters, and yag is in the cygwin home.

I use Windows 7 + Cygwin + Yagarto.

My setup:
1. Install Cygwin to c:\cygwin
2. Install Yagarto to c:\cygwin\home\<YOUR_USERNAME>\yagarto
3. Put ML repository to c:\cygwin\home\<YOUR_USERNAME>\ml500d
4. Modify Makefile line 1, set ARM_PATH=/home/<YOUR_USERNAME>/yagarto
5. Modify Makefile line 237, set ARM_LIBC_A = lib/libc.a
6. Create a directory c:\cygwin\home\<YOUR_USERNAME>\ml500d\lib
7. Copy yagarto\arm-none-eabi\lib\libc.a to ml500d\lib\libc.a

I did steps 5, 6, and 7 because arm compiler keep complaining about file libc.a not found.
Title: Re: 500d development
Post by: Coutts on 03 / May / 2011, 10:23:23
set arm path to the full path to your compiler, ex:

c:/cygwin/home/<user_name>/yagarto
Title: Re: 500d development
Post by: arnarg on 03 / May / 2011, 11:36:10
Is it possible that when you press the iso button and the camera calculates the light and all that stuff, that it outputs a value to the 80050010 and _then_ the other addresses (ISO, Aperture and shutter speed) look at that value and change in relation to that? Just a thought  :) worth trying if the other stuff doesn't work.
Title: Re: 500d development
Post by: utnuc on 03 / May / 2011, 13:50:40
Is it possible that when you press the iso button and the camera calculates the light and all that stuff, that it outputs a value to the 80050010 and _then_ the other addresses (ISO, Aperture and shutter speed) look at that value and change in relation to that? Just a thought  :) worth trying if the other stuff doesn't work.
 

It does look like you're correct: the value of 50010 changes with increased light, even when Ap/Sh/ISO remain constant.  Interesting that the value locks down when you hit the ISO button, it's almost like it is tricking itself into thinking the light is constant so that it won't auto-adjust the other values.

Coutts: I wonder if we lock 50010 into one value, the camera will be tricked into thinking the light is constant - so it won't try to override our Ap/Sh/ISO prop inputs.
Title: Re: 500d development
Post by: arm.indiana on 03 / May / 2011, 15:04:45
in 400d hack code source:

   switch(CurIsoValue) // Set ISO String
   {
      case 0x6F: iso=i3200;break; //3200   
      case 0x6D: iso=i2500;break; //2500   
      case 0x6C: iso=i2000;break; //2000   
      case 0x68: iso=i1600;break; //1600   
      case 0x66: iso=i1250;break; //1250
      case 0x64: iso=i1000;break; //1000
      case 0x60: iso=i800;break;  //800
      case 0x5D: iso=i640;break;  //640
      case 0x5C: iso=i500;break;  //500
      case 0x58: iso=i400;break;  //400
      case 0x56: iso=i320;break;  //320
      case 0x53: iso=i250;break;  //250
      case 0x50: iso=i200;break;  //200
      case 0x4E: iso=i160;break;  //160
      case 0x4C: iso=i125;break;  //125
      case 0x48: iso=i100;break;  //100

it seems it is the byte in the middle

Indy
Title: Re: 500d development
Post by: Cane on 03 / May / 2011, 16:11:28
thank for your work! Very good developments here.  ::)

I read the values and addresses. Is it maybe possible that:

iso 100
60 = 67486d (case 0x48: iso=i100;break;  //100)

iso 400
60 = 67584d (case 0x58: iso=i400;break;  //400)

iso 800
60 = 67604d (case 0x60: iso=i800;break;  //800)

shutter speed
1/60 ---> (67YYZZ)

XXYYZZ

XX - Shutter value
YY - ISO value
ZZ - aperture value(?)  :blink:
Title: Re: 500d development
Post by: arm.indiana on 03 / May / 2011, 16:38:25
and aperture / shutter values in 5dm2:

https://bitbucket.org/hudson/magic-lantern/src/e82b8b1fff96/lens.h (https://bitbucket.org/hudson/magic-lantern/src/e82b8b1fff96/lens.h)
compared to EDSDK
http://groups.google.com/group/ml-devel/browse_frm/thread/6054bab11042ee45/8302504a467a0ea6?lnk=gst&q=properties#8302504a467a0ea6 (http://groups.google.com/group/ml-devel/browse_frm/thread/6054bab11042ee45/8302504a467a0ea6?lnk=gst&q=properties#8302504a467a0ea6)

Indy
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 00:41:18
i just updated the repository. fixed a few things with gui_main_task. now button events are being handled (finally..). i also added the debug console from the 550d, right now it's only working with event spy (i turned off the bmp_printfs, they weren't very useful since event spy only works while the menu up and things like shutter half press kill the menu). i fixed the button codes for shutter half press / release too. now we just have to verify all of the button codes defined in the constants file :D

you can see the changes here:
https://bitbucket.org/alins/magic-lantern-for-500d/changeset/8b0dbc9acef6 (https://bitbucket.org/alins/magic-lantern-for-500d/changeset/8b0dbc9acef6)



btw, my plans for the night  :p
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2Fv2zp8j.jpg&hash=677f4cada268be6a1279f74d62ba6f95)
Title: Re: 500d development
Post by: pat_loonytoon on 04 / May / 2011, 01:15:37
yeah Domino's has some good deals. I never buy from there without first searching for coupon codes online lol. Why not accept free stuff while buying some pizza :) Ever play on XBl, couldn't help but notice your controller.
Title: Re: 500d development
Post by: rebelT1i on 04 / May / 2011, 12:26:33
yeah Domino's has some good deals. I never buy from there without first searching for coupon codes online lol. Why not accept free stuff while buying some pizza :) Ever play on XBl, couldn't help but notice your controller.

He's got WAY too much work for XBL :D
Title: Re: 500d development
Post by: Jamez on 04 / May / 2011, 12:48:47
Hurrah hurrah hurrah,
With a lot of help from Alex I got ML to compile :)
 
AND with his help we`ve (well ok Alex) fixed the USB problem, but broke the fonts in the process LOL
Edit: And fixed them somewhat later.
Thank you very much to Alex for his help today!!!!
Title: Re: 500d development
Post by: arnarg on 04 / May / 2011, 12:57:06
Last exam done today, I might just give this programming thing a try myself :P
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 17:01:05
starting to fix some button codes. i'm trying to find DISPLAY_SENSOR_POWERED, i think this is why lcd shortcuts aren't working (and makes the menu flicker). it looks like the lcd sensor is flashing on/off in the same manner the ML menu flashes when sensor shortcuts are on.

edit:
got it :D
had to decompile the sub for DispSensorStart in the 550d and 500d to find the memory address of DISPLAY_SENSOR_POWERED. I also fixed the button codes for left/right/up/down press/unpress, so now sensor shortcuts are working :)

when in normal shoot mode, hold your finger over the sensor and hit up/down to adjust lcd brightness, and in live view hold finger over sensor and hit left/right to adjust kelvin white balance very easily :)

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/75113a2101b7
Title: Re: 500d development
Post by: Samsongas on 04 / May / 2011, 21:28:48
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 21:31:34
Title: Re: 500d development
Post by: zanak on 04 / May / 2011, 21:37:22
Iso / Shuter / iris working on video mode?
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 22:02:20
not yet. i just updated the repository again, bulb mode timer can be used with half shutter press, alex just added this to the 550d 5 day ago. now the bulb timer can be used like normal :)
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 22:02:59
not yet. i just updated the repository again, bulb mode timer can be used with half shutter press, alex just added this to the 550d 5 day ago. now the bulb timer can be used like normal :)

(wtf is with the connection problems right now on here???)
Title: Re: 500d development
Post by: rebelT1i on 04 / May / 2011, 22:12:32
How do I get the updated autoexec.bin? did you upload it somewhere?
Title: Re: 500d development
Post by: Coutts on 04 / May / 2011, 22:21:09
here i'll just upload the latest autoexec, it's not a new version so don't put it on the wiki (and version number is still 1.4), but all the recent changes are in it.
Title: Re: 500d development
Post by: rebelT1i on 04 / May / 2011, 22:28:06
Thanks coutts!!
Title: Re: 500d development
Post by: Jamez on 05 / May / 2011, 00:01:41
I also fixed the button codes for left/right/up/down press/unpress, so now sensor shortcuts are working :)

when in normal shoot mode, hold your finger over the sensor and hit up/down to adjust lcd brightness, and in live view hold finger over sensor and hit left/right to adjust kelvin white balance very easily :)

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/75113a2101b7 (https://bitbucket.org/alins/magic-lantern-for-500d/changeset/75113a2101b7)
-LCD Brightness adjusting is working here through that sensor :)
- Left/right for adjusting kelvin white balance, isnt unfortunately.
- Senor Shortcuts are working (obviously from the above).
- The mad flickering that was caused by it not working is fixed

PM Coutts
PS Another new build from Alex...
http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/fa6951b8fb111b12?show_docid=fa6951b8fb111b12 (http://groups.google.com/group/ml-devel/browse_thread/thread/850ec268bc883ceb/fa6951b8fb111b12?show_docid=fa6951b8fb111b12)
Title: Re: 500d development
Post by: mk11174 on 05 / May / 2011, 00:11:57
Kelvin works here, you got to keep pressing the buttons its is alot of pressing cause it goes through slow cause so many temps but does seem to work just fine 8]
Title: Re: 500d development
Post by: Coutts on 05 / May / 2011, 00:43:46
Tomorrow ill look into making it so you can hold the button down
Title: Re: 500d development
Post by: rebelT1i on 05 / May / 2011, 11:31:10
On my camera I can see Kelvin working in live view.
Title: Re: 500d development
Post by: mk11174 on 05 / May / 2011, 12:48:00
not sure how long it was working, my mind has been on the manual video control so much i never really checked, but rack focus and follow focus seem to work very nice 8]
Title: Re: 500d development
Post by: a1ex on 05 / May / 2011, 15:28:31
This code locks the exposure in 550D, when movie mode is set to auto:
Code: [Select]
void xx_test(void* priv)
{
SW1(1,0);
}

To use it, put AF on * button, then hit "Don't click me" after starting recording. To unlock the exposure (and be able to use other buttons), half-press the shutter button.
Title: Re: 500d development
Post by: utnuc on 05 / May / 2011, 20:24:00
not sure how long it was working, my mind has been on the manual video control so much i never really checked, but rack focus and follow focus seem to work very nice 8]

Nice pickup, although rack focus does not work the same as on the 550D.  To use: you have to set the focus using the follow focus buttons, not the "zoom out" button.  Be sure to keep your focus speed set to something low (7 or less) for small distances and narrow DOF for fine control of focus.  Now that some of the focus code is up and working, I'm gonna take another look at focus.c and try to see how it works.  (This is definitely one step closer to adding a microfocus adjustment function). 
Title: Re: 500d development
Post by: rebelT1i on 05 / May / 2011, 20:33:03
Nice pickup, although rack focus does not work the same as on the 550D.  To use: you have to set the focus using the follow focus buttons, not the "zoom out" button.  Be sure to keep your focus speed set to something low (7 or less) for small distances and narrow DOF for fine control of focus.  Now that some of the focus code is up and working, I'm gonna take another look at focus.c and try to see how it works.  (This is definitely one step closer to adding a microfocus adjustment function). 

I've been noticing it missing my focus, but I wasn't paying attention to the speed, I'm going to try again and pay attention to speed and see how good it nails the focus. But it's looking real good so far! Good job everyone!
Title: Re: 500d development
Post by: utnuc on 05 / May / 2011, 20:53:49
One bug I found with it, at least with my Sigma lens: rack focus won't work until after I do a shutter half-press.  The values for DOF Near/Far and Hyperfocal also remain 0 until I do the half-press.  Otherwise it seems accurate if a small focus speed it used.
Title: Re: 500d development
Post by: Coutts on 06 / May / 2011, 13:28:13
i too noticed some issues with rack focus. i wonder if it's just a problem with the sigma 30mm f/1.4 :-/
Title: Re: 500d development
Post by: mk11174 on 06 / May / 2011, 13:37:47
i like how it works, but i only use the kit lens and a 75-300mm canon lens
Title: Re: 500d development
Post by: rebelT1i on 06 / May / 2011, 16:07:46
I can't say for sure cause I don't know exactly how it's supposed to work, but it appears as if mine is working with both kit lens's. I have noticed it's missed focus a lot no matter the focus speed, It will nail focus on either the near OR far, but not both? I am taking responsibility on that till I can play with it more, but I think there may be a issue there?  

Don't mind the audio but here is a video showing it miss it's NEAR focus point.http://www.youtube.com/watch?v=-BPp4SsCzSw# (http://www.youtube.com/watch?v=-BPp4SsCzSw#)
Title: Re: 500d development
Post by: pat_loonytoon on 06 / May / 2011, 16:48:59
Before watching the video I thought you were mentioning the audio because of the lens focus sound lol. Good stuff though, haven't heard that song in years. I like the look of the rack focus though.
Title: Re: 500d development
Post by: mk11174 on 06 / May / 2011, 21:01:41
LOL, I almost made a stinky in my pants out of excitement, lol, I set up a prop request for PROP_SHOOTING_MODE and set it to 3 which is for Manual Mode, well, while in MOVIE MODE, I pressed the debug menu I set up for it, I then when back to lcd to play with it, I Pressed record button and it started recording fine, then I stopped recording to see if I can change all my settings, thats when I almost made a stinky, lol, all control were adjustable, but then I noticed, they were not effecting the exposure at all, so dang 8[ its kinda like remap to a-dep, but when you remap to a-dep you can't change no settings so thats why I tried it this way. 8/ Oh well, would be could if the settings actually effected the exposure especially since you can change them in MOVIE MODE this way.
Title: Re: 500d development
Post by: Coutts on 07 / May / 2011, 00:46:19
there's live view, shooting and movie mode i think for that property. i tried htis the other day too, except every video just buffered out for some reason and it was distorted / laggy. the screen displays 30fps too (even if recording at 20fps like at 1080p), that's just the fps for live view i think.
Title: Re: 500d development
Post by: rebelT1i on 07 / May / 2011, 10:59:33
Before watching the video I thought you were mentioning the audio because of the lens focus sound lol. Good stuff though, haven't heard that song in years. I like the look of the rack focus though.

ahhahaha, I was considering changing it but it kinda grew on me lol
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 15:39:06
Anyone know , where the constants values come from, how do they get them?
Title: Re: 500d development
Post by: Coutts on 07 / May / 2011, 17:30:15
Anyone know , where the constants values come from, how do they get them?
some are memory addresses, usually they have (*(int()) or whatever with them, some are found in dumps. all of the yuv422 stuff is vram, we need to figure those out :-/
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 17:45:13
is there a process to get the yuv422 stuff
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 18:25:44
anyone know how to add a value greater then 2 digits, like how most are 0 or 1 and some are 2 digits, but then you have some values that are 4 and 6 digits, do you just type for example 0x123456 as there int for the prop? or is that where that uint16 and uint32 come in?
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 20:41:43
Man, so frustrating, while remapping movie to manual and expsim on all the settings adjust the lcd screen as it should, all manual controls work fine, but as soon as you press record button, it records and the exposure goes back to auto, yet, all the cam settings still say the correct manual numbers, if we can only find out what changes once u press record to make everything go auto. 8/
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 20:53:48
if it could just record what the expsim sees in movie mode while its remapped to M mode, that would be great
Title: Re: 500d development
Post by: Samsongas on 07 / May / 2011, 21:16:29
Does not work if you press exposure lock after start recording?
Title: Re: 500d development
Post by: mk11174 on 07 / May / 2011, 21:34:54
nope, when remapping exposure lock has no effect anymore, nothing locks it once you press record, obviously exposure lock with iso button works fine with the normal movie mode, just stinks not getting it to work like manual mode, i dont even need manual mode really since you can do pretty well with a bright light and using iso button to lock then AV plus dial to adjust from there, but still, its just something that would be cool to get to work just because lol
Title: Re: 500d development
Post by: Jamez on 08 / May / 2011, 01:56:11
is there a process to get the yuv422 stuff
Some info is here on the 550D page as to find it, I have been speaking to Alex about this and hes been helpful in explaining, next approach bribing him (I know he reads this lol).
http://magiclantern.wikia.com/wiki/VRAM/550D (http://magiclantern.wikia.com/wiki/VRAM/550D)

Some values are on here
http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
Basically without this, Magic Zoom, and Silent Pics, and other interesting developments wont work on our 500D :(
Unfortunately I cant use Coutt`s latest build (got font problems), and if I remember correctly he removed the ability to dump the ram in a later build so it might be necessary to go back a build or so and use this version to find out this stuff.

Is anyone else getting font problems when compiling the latest source from bitbucket?
I see a blue font, on a blue background where the text should be. If anyone has any fixes for this id appreciate it, Ive already tried overwriting the fonts, and a few suggestions suggested by Alex to no avail :(
Title: Re: 500d development
Post by: Coutts on 08 / May / 2011, 14:16:09
is there a process to get the yuv422 stuff
Some info is here on the 550D page as to find it, I have been speaking to Alex about this and hes been helpful in explaining, next approach bribing him (I know he reads this lol).
http://magiclantern.wikia.com/wiki/VRAM/550D (http://magiclantern.wikia.com/wiki/VRAM/550D)

Some values are on here
http://magiclantern.wikia.com/wiki/VRAM/500D (http://magiclantern.wikia.com/wiki/VRAM/500D)
Basically without this, Magic Zoom, and Silent Pics, and other interesting developments wont work on our 500D :(
Unfortunately I cant use Coutt`s latest build (got font problems), and if I remember correctly he removed the ability to dump the ram in a later build so it might be necessary to go back a build or so and use this version to find out this stuff.

Is anyone else getting font problems when compiling the latest source from bitbucket?
I see a blue font, on a blue background where the text should be. If anyone has any fixes for this id appreciate it, Ive already tried overwriting the fonts, and a few suggestions suggested by Alex to no avail :(
i could enable the vram dump again, the problem is it will be fixed which address ranges it dumps (if nobody can compile / change). roaldfire says he'll have a chance to look at this later in the summer (like july), i've tried following that 550d guide but i guess it just isn't as similar, and things don't go as smoothly.

alex has advised I update the codebase, as we're still behind :-s
I'm gonna start merging changes today, maybe have it done late tonight?
Title: Re: 500d development
Post by: Samsongas on 08 / May / 2011, 19:27:32
if we only could controll ISO, we would controll settings with manual lenses (manual iris) and a torch (to chanche shutter and then lock)
Title: Re: 500d development
Post by: mk11174 on 08 / May / 2011, 20:31:42
yep, thats my main reason since i have a manual lens for aperture, i first use AV button and dial exposure comp up to +2, then i use a flashlight to set my iso to 100 and usually put it up to lens just right till shutter says 60 so i can use iso button to lock it at iso 100 and shutter 60 then i use AV button with dial to adjust shutter up. All is fine with this way, but having to carry around a flashlight just to do this can be annoying.
Title: Re: 500d development
Post by: zanak on 08 / May / 2011, 21:35:07
Title: Re: 500d development
Post by: williamweng on 08 / May / 2011, 22:48:13
At first,appreciate for your efforts. ^^
I'm the kiss x3 user.

Recently,I try to upgrade your firmware on my kiss x3.
but I find out some problem from the firmware.


1. Beta 1.40
When I upgrade the Beta 1.40 of firmware and recording video,
I playback the video file, the kiss X3 unexpectedly no sound appear.
But while I copy the file to my computer,the video sounds can be played.

2.Alpha 1.14
When I upgrade the Alpha 1.14 of firmware, that have not above problem.
But the other problem is "Trap Focus" can't be running.

Expect the new firmware version of Kiss x3 can be arrival as soon as possible.
Thank you very much.



Title: Re: 500d development
Post by: mk11174 on 08 / May / 2011, 23:04:51
well, i do it the way i do it cause for video i dont like using anything higher then iso 100 cause it is like a digital level adjust and introduces grain and digital noise, its very important to keep at iso 10 for max quality if you cant shoot at 1/60 shutter then you need more light, and this is true for video cams as well, for nice video lighting is very important. but either way if we get manual control of iso i am sure we will be able to get control of aperture and shutter cause whatever is keeping us from taking control, its the same thing blocking the control of all 3, so if we figure that out which i think its metering thats doing it, if we can disable it maybe that will do it, hopefully its not blocked by hardware though, that would stink.
Title: Re: 500d development
Post by: Samsongas on 09 / May / 2011, 00:42:44
Noise at 2.1 Mpx? I don't think so for a camera that reaches 1600ISO at 15mpx without issues.
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 02:02:32
no, ur right, it still does great even at 1600 iso, but i am one that likes to stay best quality possible at iso 100 8] just my pref.
Title: Re: 500d development
Post by: jessej on 09 / May / 2011, 06:44:10
Hi there,

I've got a slight problem with my 500D. The SD card slot pin seems to be broken, and the camera says it's not able to write on any SD card as a result - it thinks the write protect is on.

Is there any way to bypass the write protect check with a custom firmware so that I can use my camera again?

Alternatively I'll have to send it to Canon for an expensive repair, or find out a spare internal SD card reader for the 500D and do a diy replacement - anyone know where I could purchase one?
Title: Re: 500d development
Post by: a1ex on 09 / May / 2011, 08:05:49
http://www.youtube.com/watch?v=hJ4D5PPpIJ0# (http://www.youtube.com/watch?v=hJ4D5PPpIJ0#)

Quote
i dont like using anything higher then iso 100 cause it is like a digital level adjust
Take a RAW pic at iso 100 underexposed by 4 stops, and another one at ISO 1600, exposed properly. Develop both pics so that they have the same brightness (e.g. with UFRaw). Tell us your conclusion.
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 08:38:23
A1ex this is for movie mode we are referring to, as far as for raw pictures, i am a lightning photographer, i will never ever use higher then 100 iso for pictures, anything higher then iso 100 introduces digital grain and red/blue color noise on the night sky, not much at 200 and 400 iso but for sure at 800 and higher, but either way iso is the best quality iso to shoot at, the only reason to go higher then iso 100 is if you dont have the lighting and have to, i will never use higher then 400 though. I look at my photos very in detail and 100 iso is the best quality to use. As far as movie mode, when i shoot outside i use 100 iso and inside i just use whatever i can to get the video clear, but i have a f1.4 lens so that helps alot of coarse. Not sure why this subject keeps going on anyway, its a fact that the higher iso the more noise there is so obviously 100 is the best to use if u have the available lighting, this was all brought up anyway cause we want manual controls for video, no need to go on about it anymore 8] lets stick to the development of the 500d firmware 8]
Title: Re: 500d development
Post by: Jamez on 09 / May / 2011, 10:00:42
A few points here...

Firstly I think you should show some respect, we wouldnt have ML on our 500D if it werent for Alex. 2 if we get manual controls for video theres a very high chance that Alex can help us. 3 you should actually test the firmware, instead of speaking hypothetically, its very very far from having manual video controls added unless you want an unstable mess. 4 I dont really want manual controls for video, Id prefer to have magic zoom, and Silent pictures myself so you should write "I" not "we" as in the collective.

At the end of the day "we" can want the moon on the stick but unless some talented programmers such as Alex help us out we will have jack.
Title: Re: 500d development
Post by: jessej on 09 / May / 2011, 10:41:45
a1ex - thanks for that, but it's not the actual SD card that's broken - it's the SD card reader inside the camera. The write protection detection metal pin has been broken, and as a result the camera refuses to write to any SD cards - regardless of whether they are write protected or not.

Any tips?
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 11:43:43
lol, im not disrespecting anyone, wow thats got out of control fast, lol, calm down, i have read enough in here to know who has made huge accomplishments with the firmware, so calm down, im just saying what i know for sure about iso since i am a photographer, and i am learning also myself how to mess with the firmware, im not just sitting here waiting for them to do the work for me, i am trying my hardest and thankls to coutts, i am getting somewhere, and i am not waiting on someone to do manual controls either, i have tried everything also myself and can see that its just not possible yet, i am hoping for many of the other cool features as well, i dont even need manual controls the way i use the cam with the iso lock, i am only trying myself to give myself a goal so i can learn more myself how to tweak the code, i am not asking for manual controls at all anymore, just been trying myself, the only thing i ask in here anymore is for help on learning to tweak the code, and coutts has been awsome for that, so calm urself, i think everyone in here is great and I enjoy talking with everyone about this cool 500d development, just did not feel we need to go on more about this iso thing, its my pref as a photographer to use 100 cause it is the lowest noise iso. I know a1ex has helped you out alot and ur sticking up for him, but theres nothing to stick up for, i wasnt trying to disrespect anyone, especialy the mastermind a1ex 8] Oh, and i say we cause from what i have read in here and on the internet, there are many many people looking for manual controls on the t1i.
Title: Re: 500d development
Post by: Samsongas on 09 / May / 2011, 12:04:02
I'm whith Mk, Jamez. Please calm down.
No more to say.
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 12:14:37
And Jesse, if the pin really did break, then yeah, only way to fix it is to send it in or take it apart urself and bypass it, but thats prob not a good idear, i see what ur saying though, and u would think it would be possible to software hack the cam to tell it to ignore that switch, but i myself do not see anything in the sources for that ability yet, so it would be a long while you would be waiting for that hack, so if you dont have time to wait i would send it in for sure, but now u got me putting my card in much more careful, thats for sure, as i go back and forth putting it in and taking it out to try a new tweak while learning ML i dont even think about how bad i treat that, i just want to hurry to see if the new tweak works, lol, but a good heads up to all of us im sure, be careful if they break that easy, i know they are very very small if its the same on the rebel, i have taken that one apart to turn it into a Infrared camera, and my battery door pin broke on the small switch and i was able to bypass that one, but im sure there even smaller on the t1i 8/
Title: Re: 500d development
Post by: Jamez on 09 / May / 2011, 13:09:37
Im calm I just dont like peoples I WANT XYZ attitude sometimes thats all.
Moving on...
Title: Re: 500d development
Post by: Vel on 09 / May / 2011, 13:37:30
For the video ISOs (and probably images too!), multiples of 160 seem to work best. Proof here.

http://gizmodo.com/#!5797451/what-are-the-best-iso-settings-for-canon-video-dslrs (http://gizmodo.com/#!5797451/what-are-the-best-iso-settings-for-canon-video-dslrs)

Just food for thought.
Title: Re: 500d development
Post by: aznguy on 09 / May / 2011, 14:23:20
btw their using the technicolor cinestyle canon dslr profile, get it here and load it up on your camera. http://www.technicolor.com/en/hi/cinema/filmmaking/digital-printer-lights/cinestyle/cinestyle-downloads (http://www.technicolor.com/en/hi/cinema/filmmaking/digital-printer-lights/cinestyle/cinestyle-downloads)
Title: Re: 500d development
Post by: aznguy on 09 / May / 2011, 14:23:54
gives you a flat image that you can correct and work with later
Title: Re: 500d development
Post by: a1ex on 09 / May / 2011, 14:46:01
Quote
The write protection detection metal pin has been broken, and as a result the camera refuses to write to any SD cards - regardless of whether they are write protected or not.
CHDK does that (i.e. bypassing write protection), but I don't know the exact mechanism. Probably it's just a flag or a property to set. A starting point would be to compare two debug logs, one with SD card locked, and other without.

Quote
For the video ISOs (and probably images too!), multiples of 160 seem to work best.

These ISOs have a bit of negative digital gain (-1/3EV or so), and so they have a bit less noise, at the cost of a bit less dynamic range (i.e. highlights will clip earlier). I believe you can get the same effect with a curves adjustment, but I didn't try.
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 15:52:27
yes about the 160 iso, but the best we have now is by 100's unfortunatly for video, but at least its not to far off from 160, it is very interesting however how 320 and 640 are cleaner then 100 being that there higher numbers but yet 300 and 600 are worse, intersting why this is like this for video, i will do some tests with my lightning at 160 and 320 on stills to see if this is the same on stills, in my line of work of photography i grew up learning the higher the iso the more the grain, very cool info about this video though, thanks for sharing 8]
Title: Re: 500d development
Post by: reyalp on 09 / May / 2011, 16:35:51
CHDK does that (i.e. bypassing write protection), but I don't know the exact mechanism. Probably it's just a flag or a property to set. A starting point would be to compare two debug logs, one with SD card locked, and other without.
In P&S, there's a variable called GpioStatus (known as physw_status in CHDK) that has bits for the various switches and buttons. This is populated in the canon firmware in the PhySw task (kbd_task). The SD card lock is just one of those switches, and we mask it out in our replacement kbd_task.
Title: Re: 500d development
Post by: Coutts on 09 / May / 2011, 18:22:02
in 500d dump:

0xff206648
aLvae_setmoviemanualcontrol

this looks interesting...
Title: Re: 500d development
Post by: rootsxi on 09 / May / 2011, 18:25:55
Coutts, thats what youre looking for! (hopefully)
btw latest build is really clean!
Title: Re: 500d development
Post by: Rolink on 09 / May / 2011, 18:31:20
Freaking out with the 500d development.
Go on, and go well.
Just congratulate all the team working here.
GREAT WORK GUYS!!!
 
Title: Re: 500d development
Post by: arnarg on 09 / May / 2011, 18:33:08
this looks interesting...
It sure does! :P
Title: Re: 500d development
Post by: Coutts on 09 / May / 2011, 18:43:06
decompiled 0xFF203C04:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi56.tinypic.com%2F16k3kts.png&hash=8bcb7d78505f2bc8a0b354bb8e9e1d30)

arg0 = mem address that says if movie manual controls are on/off, 16884 in decimal is 0x41F4. I'm going to try right now and see what this address holds. if it's a 0 then this could be a start of figuring it out, it might just be a matter of "flipping a switch" in the camera and we'll have control like the 550d.


edit

yup, looks right. now to figure out how to change it's value (have to figure out how it's called in the firmware)). :)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2F112d21i.jpg&hash=fa7b8a202928701c242a30405f88e321)
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 19:10:29
WOW!!! Now that sound exciting, GREAT JOB!!!! Coutts
Title: Re: 500d development
Post by: zanak on 09 / May / 2011, 19:40:12
yes nice work !!!!!
Title: Re: 500d development
Post by: Machya on 09 / May / 2011, 19:49:52
GEEZUS!!! OMG it's so close! Coutts you are the beast! We love you!!!!
Title: Re: 500d development
Post by: aznguy on 09 / May / 2011, 20:00:41
omg... soo giddy now!!
Title: Re: 500d development
Post by: arnarg on 09 / May / 2011, 20:12:37
That is amazing!
Title: Re: 500d development
Post by: Coutts on 09 / May / 2011, 20:18:38
blah.. not looking good. setting that mem location to 1 isn't changing anything. :/
Title: Re: 500d development
Post by: aznguy on 09 / May / 2011, 20:26:05
Okay soo for any filmakers here that want the perfect flat image, theres actually a few options that i just became aware of today for do so on Canon DSLR. Their basically custom picture profiles that they coded themselves. The two best ones that ive tried out are the Marvel Cine Picture Style (http://marvelsfilm.wordpress.com/marvels-cine-canon/ (http://marvelsfilm.wordpress.com/marvels-cine-canon/)) and the Technicolor CineStyle (http://www.technicolor.com/en/hi/cinema/filmmaking/digital-printer-lights/cinestyle (http://www.technicolor.com/en/hi/cinema/filmmaking/digital-printer-lights/cinestyle)). Check them out. Good comparison test here http://www.youtube.com/watch?v=7ZtZbsPSr54&NR=1.# (http://www.youtube.com/watch?v=7ZtZbsPSr54&NR=1.#)

Man i did not know these exist.... shame that i didn't know earlier for my past projects...
Title: Re: 500d development
Post by: Coutts on 09 / May / 2011, 21:30:37
sub_FF1F6B1C looks interesting as well..

Code: [Select]

ROM:FF1F6B1C
ROM:FF1F6B1C ; =============== S U B R O U T I N E =======================================
ROM:FF1F6B1C
ROM:FF1F6B1C
ROM:FF1F6B1C sub_FF1F6B1C                            ; CODE XREF: sub_FF1F6CC0+80p
ROM:FF1F6B1C
ROM:FF1F6B1C var_18          = -0x18
ROM:FF1F6B1C
ROM:FF1F6B1C                 STMFD   SP!, {R3-R7,LR}
ROM:FF1F6B20                 CMP     R0, #1
ROM:FF1F6B24                 LDR     R0, =dword_FF44B028
ROM:FF1F6B28                 MOVNE   R4, #1
ROM:FF1F6B2C                 MOVEQ   R4, #0
ROM:FF1F6B30                 MOV     R6, R2
ROM:FF1F6B34                 MOV     R5, R1
ROM:FF1F6B38                 BL      sub_FF190C60
ROM:FF1F6B3C                 CMP     R6, #0
ROM:FF1F6B40                 BEQ     loc_FF1F6BC8
ROM:FF1F6B44                 CMP     R6, #2
ROM:FF1F6B48                 MOV     R3, R5
ROM:FF1F6B4C                 STR     R4, [SP,#0x18+var_18]
ROM:FF1F6B50                 BNE     loc_FF1F6C2C
ROM:FF1F6B54                 ADR     R2, aRecLv_rec_resolution_720pDD
ROM:FF1F6B58                 MOV     R1, #7
ROM:FF1F6B5C                 MOV     R0, #0x9B
ROM:FF1F6B60                 BL      DebugMsg
ROM:FF1F6B64                 MOV     R1, #2
ROM:FF1F6B68                 MOV     R0, #0
ROM:FF1F6B6C                 BL      sub_FF1F6AB4
ROM:FF1F6B70                 LDR     R0, loc_FF1F6E48
ROM:FF1F6B74                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6B78                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6B7C                 BL      sub_FF190C60
ROM:FF1F6B80                 LDR     R0, loc_FF1F6E4C
ROM:FF1F6B84                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6B88                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6B8C                 BL      sub_FF190C60
ROM:FF1F6B90                 CMP     R4, #0
ROM:FF1F6B94                 MOVEQ   R0, #2
ROM:FF1F6B98                 BEQ     loc_FF1F6BAC
ROM:FF1F6B9C                 CMP     R5, #3
ROM:FF1F6BA0                 CMPNE   R5, #4
ROM:FF1F6BA4                 MOVEQ   R0, #4
ROM:FF1F6BA8                 MOVNE   R0, #1
ROM:FF1F6BAC
ROM:FF1F6BAC loc_FF1F6BAC                            ; CODE XREF: sub_FF1F6B1C+7Cj
ROM:FF1F6BAC                 BL      sub_FF1F6A68
ROM:FF1F6BB0                 LDR     R0, loc_FF1F6E50
ROM:FF1F6BB4                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6BB8                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6BBC                 BL      sub_FF190C60
ROM:FF1F6BC0                 LDR     R0, loc_FF1F6E54
ROM:FF1F6BC4                 B       loc_FF1F6CA0
ROM:FF1F6BC8 ; -- -------------------------------------------------------------------------
ROM:FF1F6BC8
ROM:FF1F6BC8 loc_FF1F6BC8                            ; CODE XREF: sub_FF1F6B1C+24j
ROM:FF1F6BC8                 MOV     R3, R5
ROM:FF1F6BCC                 ADR     R2, aRecLv_rec_resolution_1080iDD
ROM:FF1F6BD0                 MOV     R1, #7
ROM:FF1F6BD4                 MOV     R0, #0x9B
ROM:FF1F6BD8                 STR     R4, [SP,#0x18+var_18]
ROM:FF1F6BDC                 BL      DebugMsg
ROM:FF1F6BE0                 MOV     R1, #0
ROM:FF1F6BE4                 MOV     R0, #1
ROM:FF1F6BE8                 BL      sub_FF1F6AB4
ROM:FF1F6BEC                 LDR     R0, loc_FF1F6E80
ROM:FF1F6BF0                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6BF4                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6BF8                 BL      sub_FF190C60
ROM:FF1F6BFC                 LDR     R0, loc_FF1F6E84
ROM:FF1F6C00                 BL      sub_FF190C60
ROM:FF1F6C04                 CMP     R4, #0
ROM:FF1F6C08                 MOVNE   R0, #1
ROM:FF1F6C0C                 MOVEQ   R0, #3
ROM:FF1F6C10                 BL      sub_FF1F6A68
ROM:FF1F6C14                 LDR     R0, loc_FF1F6E88
ROM:FF1F6C18                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6C1C                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6C20                 BL      sub_FF190C60
ROM:FF1F6C24                 LDR     R0, loc_FF1F6E8C
ROM:FF1F6C28                 B       loc_FF1F6CA0
ROM:FF1F6C2C ; ---------------------------------------------------------------------------
ROM:FF1F6C2C
ROM:FF1F6C2C loc_FF1F6C2C                            ; CODE XREF: sub_FF1F6B1C+34j
ROM:FF1F6C2C                 ADR     R2, loc_FF1F6E90
ROM:FF1F6C30                 MOV     R1, #7
ROM:FF1F6C34                 MOV     R0, #0x9B
ROM:FF1F6C38                 BL      DebugMsg
ROM:FF1F6C3C                 MOV     R1, #1
ROM:FF1F6C40                 MOV     R0, #0
ROM:FF1F6C44                 BL      sub_FF1F6AB4
ROM:FF1F6C48                 LDR     R0, loc_FF1F6EB4
ROM:FF1F6C4C                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6C50                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6C54                 BL      sub_FF190C60
ROM:FF1F6C58                 LDR     R0, loc_FF1F6EB8
ROM:FF1F6C5C                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6C60                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6C64                 BL      sub_FF190C60
ROM:FF1F6C68                 CMP     R4, #0
ROM:FF1F6C6C                 BNE     loc_FF1F6C78
ROM:FF1F6C70
ROM:FF1F6C70 loc_FF1F6C70                            ; CODE XREF: sub_FF1F6B1C+164j
ROM:FF1F6C70                 MOV     R0, #1
ROM:FF1F6C74                 B       loc_FF1F6C88
ROM:FF1F6C78 ; ---------------------------------------------------------------------------
ROM:FF1F6C78
ROM:FF1F6C78 loc_FF1F6C78                            ; CODE XREF: sub_FF1F6B1C+150j
ROM:FF1F6C78                 CMP     R5, #3
ROM:FF1F6C7C                 CMPNE   R5, #4
ROM:FF1F6C80                 BNE     loc_FF1F6C70
ROM:FF1F6C84                 MOV     R0, #4
ROM:FF1F6C88
ROM:FF1F6C88 loc_FF1F6C88                            ; CODE XREF: sub_FF1F6B1C+158j
ROM:FF1F6C88                 BL      sub_FF1F6A68
ROM:FF1F6C8C                 LDR     R0, loc_FF1F6EBC
ROM:FF1F6C90                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6C94                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6C98                 BL      sub_FF190C60
ROM:FF1F6C9C                 LDR     R0, loc_FF1F6EC0
ROM:FF1F6CA0
ROM:FF1F6CA0 loc_FF1F6CA0                            ; CODE XREF: sub_FF1F6B1C+A8j
ROM:FF1F6CA0                                         ; sub_FF1F6B1C+10Cj
ROM:FF1F6CA0                 ADD     R0, R0, R5,LSL#3
ROM:FF1F6CA4                 LDR     R0, [R0,R4,LSL#2]
ROM:FF1F6CA8                 LDMFD   SP!, {R3-R7,LR}
ROM:FF1F6CAC                 B       sub_FF190C60
ROM:FF1F6CAC ; End of function sub_FF1F6B1C
Title: Re: 500d development
Post by: Coutts on 09 / May / 2011, 21:31:21
decompiled:

Code: [Select]
                                                                     
                                                                     
                                                                     
                                             
*(-4 + sp0) = lr0
*(-8 + sp0) = unk_R7
*(-12 + sp0) = unk_R6
*(-16 + sp0) = unk_R5
*(-20 + sp0) = unk_R4
*(-24 + sp0) = arg3
sub_FF190C60(0xff44b028: pointer to 0xc0f08100, arg1, arg2, arg3) => ret_sub_FF190C60_FF1F6B38
if arg0 == 1:
    *(-24 + sp0) = 0
    if arg2 != 0:
        if arg2 != 2:
            DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6C38
            sub_FF1F6AB4(0x0, 0x1) => ret_sub_FF1F6AB4_FF1F6C44
            sub_FF190C60(*(89820 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C54
            sub_FF190C60(*(90036 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C64
            if 0 != 0:
                if arg1 != 3:
                    if arg1 != 4:
                        sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C88
                    if arg1 == 4:
                        sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6C88
                if arg1 == 3:
                    sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6C88
            if 0 == 0:
                sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C88
            sub_FF190C60(*(90900 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C98
            sub_FF190C60(*(90252 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
        if arg2 == 2:
            DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6B60
            sub_FF1F6AB4(0x0, 0x2) => ret_sub_FF1F6AB4_FF1F6B6C
            sub_FF190C60(*(89892 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6B7C
            sub_FF190C60(*(90108 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6B8C
            if 0 != 0:
                if arg1 != 3:
                    if arg1 != 4:
                        sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6BAC
                    if arg1 == 4:
                        sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6BAC
                if arg1 == 3:
                    sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6BAC
            if 0 == 0:
                sub_FF1F6A68(0x2) => ret_sub_FF1F6A68_FF1F6BAC
            sub_FF190C60(*(90972 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6BBC
            sub_FF190C60(*(90324 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
    if arg2 == 0:
        DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6BDC
        sub_FF1F6AB4(0x1, 0x0) => ret_sub_FF1F6AB4_FF1F6BE8
        sub_FF190C60(*(89964 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6BF8
        sub_FF190C60(0xff41f428: pointer to 0xc0f11240, 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C00
        if 0 == 0:
            sub_FF1F6A68(0x3) => ret_sub_FF1F6A68_FF1F6C10
        if 0 != 0:
            sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C10
        sub_FF190C60(*(90828 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C20
        sub_FF190C60(*(90180 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
if arg0 != 1:
    *(-24 + sp0) = 1
    if arg2 != 0:
        if arg2 != 2:
            DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6C38
            sub_FF1F6AB4(0x0, 0x1) => ret_sub_FF1F6AB4_FF1F6C44
            sub_FF190C60(*(89824 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C54
            sub_FF190C60(*(90040 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C64
            if 1 != 0:
                if arg1 != 3:
                    if arg1 != 4:
                        sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C88
                    if arg1 == 4:
                        sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6C88
                if arg1 == 3:
                    sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6C88
            if 1 == 0:
                sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C88
            sub_FF190C60(*(90904 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C98
            sub_FF190C60(*(90256 + arg1), 0x1, 'Rec: LV_REC_RESOLUTION_VGA (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
        if arg2 == 2:
            DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6B60
            sub_FF1F6AB4(0x0, 0x2) => ret_sub_FF1F6AB4_FF1F6B6C
            sub_FF190C60(*(89896 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6B7C
            sub_FF190C60(*(90112 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6B8C
            if 1 != 0:
                if arg1 != 3:
                    if arg1 != 4:
                        sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6BAC
                    if arg1 == 4:
                        sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6BAC
                if arg1 == 3:
                    sub_FF1F6A68(0x4) => ret_sub_FF1F6A68_FF1F6BAC
            if 1 == 0:
                sub_FF1F6A68(0x2) => ret_sub_FF1F6A68_FF1F6BAC
            sub_FF190C60(*(90976 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6BBC
            sub_FF190C60(*(90328 + arg1), 0x2, 'Rec: LV_REC_RESOLUTION_720P (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
    if arg2 == 0:
        DryosDebugMsg(0x9b, 0x7, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_DryosDebugMsg_FF1F6BDC
        sub_FF1F6AB4(0x1, 0x0) => ret_sub_FF1F6AB4_FF1F6BE8
        sub_FF190C60(*(89968 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6BF8
        sub_FF190C60(0xff41f428: pointer to 0xc0f11240, 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C00
        if 1 == 0:
            sub_FF1F6A68(0x3) => ret_sub_FF1F6A68_FF1F6C10
        if 1 != 0:
            sub_FF1F6A68(0x1) => ret_sub_FF1F6A68_FF1F6C10
        sub_FF190C60(*(90832 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', arg1) => ret_sub_FF190C60_FF1F6C20
        sub_FF190C60(*(90184 + arg1), 0x0, 'Rec: LV_REC_RESOLUTION_1080I (%d-%d)', lr0) => ret_sub_FF190C60_FF1F6CAC
!end

it's right before bzero32 in the dump. soo maybe frame rate?? or is this for hdmi output?
Title: Re: 500d development
Post by: mk11174 on 09 / May / 2011, 21:55:50
thanks for the link aznguy, very cool addition!!
Title: Re: 500d development
Post by: rootsxi on 10 / May / 2011, 05:31:43
ditto that, aznguy! what an addition to our t1i the technicolor profile and s-curve reader for fcp is! now a user-definable iso in video mode would make the ML! im only saying that because thats what cinevate says! thank you again, to everyone whose hard work, late hours and dedication have gone into this ml. btw, i had downloaded and installed  the update you put up yesterday, Coutts, but the canon menus when pushing the <set> button in video mode werent avilable, so i downgraded to the version 1.14, and they were back. by the way i really hope you crack this iso/shutter speed/ap thing, i know it would mean alot to all the guys like me that really couldn't re-make the investment in a t2i that we made in our t1i's, plus it would shut the mouths of those who say it cannot be done.. keep up the good work. 
Title: Re: 500d development
Post by: arm.indiana on 10 / May / 2011, 14:06:18
yup, looks right. now to figure out how to change it's value (have to figure out how it's called in the firmware)). :)

it seems they are called by name

ROM:FF2063F4                 LDR     R1, =lvae_setmanualcontrol
ROM:FF2063F8                 ADR     R0, aLvae_setmanualcontrol ; "lvae_setmanualcontrol"
ROM:FF2063FC                 BL      sub_FF0677CC
ROM:FF206400                 LDR     R1, =lvae_setmoviemanualcontrol
ROM:FF206404                 ADR     R0, aLvae_setmoviemanualcontrol ; "lvae_setmoviemanualcontrol"
ROM:FF206408                 BL      sub_FF0677CC
ROM:FF20640C                 LDR     R1, =lvae_setcontrolbv
ROM:FF206410                 ADR     R0, aLvae_setcontrolbv ; "lvae_setcontrolbv"
ROM:FF206414                 BL      sub_FF0677CC

be careful, there are debug functions

Indy
Title: Re: 500d development
Post by: Coutts on 10 / May / 2011, 18:51:39
i had no other leads, i couldn't decompile any functions i found using the console, so i don't know i guess i'm giving up for now. more important things to fix now (like dma address!!)
Title: Re: 500d development
Post by: Coutts on 10 / May / 2011, 21:28:18
i'm close to having the dma / yuv422 stuff squared away :) thanks alex for answering my questions earlier.

as of right now, this is what i've just gotten to work:
live view spot meter (shows percentage and everything)
histograms (rgb and luminosity)
wave form
motion detection

close to having magic zoom and focus peaking working. magic zoom displays a box but it looks like the pitch/height are wrong still. close :)

big release coming soon everyone :) :) :)
Title: Re: 500d development
Post by: williamweng on 10 / May / 2011, 21:31:44
i'm close to having the dma / yuv422 stuff squared away :) thanks alex for answering my questions earlier.

as of right now, this is what i've just gotten to work:
live view spot meter (shows percentage and everything)
histograms (rgb and luminosity)
wave form
motion detection

close to having magic zoom and focus peaking working. magic zoom displays a box but it looks like the pitch/height are wrong still. close :)

big release coming soon everyone :) :) :)

At first,appreciate for your efforts. ^^
I'm the kiss x3 user.

Recently,I try to upgrade your firmware on my kiss x3.
but I find out some problem from the firmware.


1. Beta 1.40
When I upgrade the Beta 1.40 of firmware and recording video,
I playback the video file, the kiss X3 unexpectedly no sound appear.
But while I copy the file to my computer,the video sounds can be played.

2.Alpha 1.14
When I upgrade the Alpha 1.14 of firmware, that have not above problem.
But the other problem is "Trap Focus" can't be running.

Expect the new firmware version of Kiss x3 can be arrival as soon as possible.
Thank you very much.
Title: Re: 500d development
Post by: pat_loonytoon on 10 / May / 2011, 21:44:23
William, report your issues on this list-
https://bitbucket.org/alins/magic-lantern-for-500d/issues
Title: Re: 500d development
Post by: williamweng on 10 / May / 2011, 22:24:21
William, report your issues on this list-
https://bitbucket.org/alins/magic-lantern-for-500d/issues

pat_loonytoon
Thank your reminding.
I have post my question on the web site.
Title: Re: 500d development
Post by: Coutts on 10 / May / 2011, 22:43:42
repository updated, new changes:
- motion detection working now
- histogram (rgb/luminosity) works now
- waveform works
- spotmeter in live view works

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/e408506a3654
Title: Re: 500d development
Post by: pat_loonytoon on 10 / May / 2011, 22:59:14
Enough change for a new build?
Title: Re: 500d development
Post by: Vel on 10 / May / 2011, 23:06:21
Enough change for a new build?

close to having magic zoom and focus peaking working. magic zoom displays a box but it looks like the pitch/height are wrong still. close :)

big release coming soon everyone :) :) :)

I'm guessing not til after he gets that finished off.  ;)

And 40 seconds later.... VVVVV lol.
Title: Re: 500d development
Post by: Coutts on 10 / May / 2011, 23:06:52
Beta v1.5 Release
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2Fqxrwwo.jpg&hash=853cc5b17f43a80489b14ca1157cd1e3)

What's new:
- full merge to latest 550d codebase
- tweaks menu
- live view spot metering override
- histograms (rgb & luminosity)
- motion detection
- display profiles
- picture quality
- waveform
- spot meter percent
- false color palettes
- rgb/luminosity zebras
- sensor shortcuts with display sensor (in live view for now, haven't fixed outside). up/down lcd brightness, left/right kelvin adjust.
- bulb mode timer

coming along :) focus peaking / magic zoom soon!!
Title: Re: 500d development
Post by: Jamez on 10 / May / 2011, 23:29:33
Cool work on Coutts behalf, and thanks to Alex for his help.
If you put this logo on your SD card, you will get the logo showing when ML boots up (not the biggest fan of how the logo looks here to be honest) as theres a new splash screen too.
Wiki updated
Incidentally ML starts up much faster than it did before :)
Title: Re: 500d development
Post by: utnuc on 11 / May / 2011, 00:10:48
Impressive update Coutts.  Can't wait to finish up my shift and try this stuff out at home.

Smith
Title: Re: 500d development
Post by: aznguy on 11 / May / 2011, 00:14:25
Is the shutter count working and accurate? i dont have the bootloader enabled at the moment so i cant check.
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 00:17:31
Is the shutter count working and accurate? i dont have the bootloader enabled at the moment so i cant check.
37147 for my count, sounds accurate.
also when you turn the camera on, pressing half shutter a few times right before the screen comes up will display MAGIC OFF, magic lantern won't boot until the next time the camera is started. kind of like a switch for ML for on/off. ported with latest 550d code.
Title: Re: 500d development
Post by: aznguy on 11 / May / 2011, 00:30:30
sounds awsome!, but im still iffy about leaving the bootloader on :( it still drains my batteries even after i took out the battery for a while and put it back in... really annoying.
Title: Re: 500d development
Post by: rootsxi on 11 / May / 2011, 00:33:40
cool addition, Jamez love the trammel startup. Coutts great job again, this old camera becomes more of a tool for serious filmamking every build. the menu flickers more now, you surely know that. really love that 1.16 seems to be right around the corner with magiczoom! has anyone tried to save any other images as logo.bmp and had success adding different boot images? thanks to all from trammell to Jamez with Coutts, arm.indiana alins alex patlooneytoon and all the rest along the way, great job!
Title: Re: 500d development
Post by: Jamez on 11 / May / 2011, 01:06:51
@rootski why dont you try it?
You just need a 228 x 228 bitmap image called logo.bmp and it should work. The splash screen is part of the latest 550D code, looks pretty cool when it starts up :)

@aznguy, shutter count is working and accurate here, and no battery drain probs (there was in some alpha builds for me but not in the betas).

V1.5 is less stable than 1.4 for sure, but its considerably better IMHO and is definately the way forward!
Title: Re: 500d development
Post by: aznguy on 11 / May / 2011, 01:27:15
really? cause i thought it was cause of the bootloader itself. because i usually store my camera without the ML SD card, and somehow it drains while being off
Title: Re: 500d development
Post by: rootsxi on 11 / May / 2011, 01:46:01
i will try, thanks again, Jamez, the wikis sharp.
Title: Re: 500d development
Post by: pat_loonytoon on 11 / May / 2011, 02:23:34
For the logo I upscaled mine to 700 x 460 and it fills the entire screen. The only problem I keep having is the color pallet keeps showing up strange if I try to alter the image.

Edit: It seems it must be grayscale and not too bright or dark.
Title: Re: 500d development
Post by: Jamez on 11 / May / 2011, 03:13:17
Interesting logos Pat, I might steal the top one, but I prefer the smaller size, as other things are going on on the screen at the same time as the logo is shown.

Maybe its better if we start to link to zips which have the latest autoexec.bin, the manual, cropmarks, and logo all bundled in one package instead of just the autoexec. For sure we will need that manual when you start playing with it.

About the wiki there seems to be about 6 people editing it, its not just myself.
Title: Re: 500d development
Post by: pat_loonytoon on 11 / May / 2011, 03:22:47
Hey Jamez,
Here's the logo at the original small size.
Title: Re: 500d development
Post by: Jamez on 11 / May / 2011, 03:26:55
Thanks, I had already resized it.
Edit: And decided that the original is a bit clearer to actually see so reverted back to that.
Title: Re: 500d development
Post by: a1ex on 11 / May / 2011, 05:27:03
For logo, see also:
http://magiclantern.wikia.com/wiki/File:Logo-full.png (http://magiclantern.wikia.com/wiki/File:Logo-full.png)
http://magiclantern.wikia.com/wiki/Cropmarks (http://magiclantern.wikia.com/wiki/Cropmarks)
http://magiclantern.wikia.com/wiki/Remap.py (http://magiclantern.wikia.com/wiki/Remap.py)
http://www.flickr.com/groups/magiclanternfirmware/discuss/72157626435319057/ (http://www.flickr.com/groups/magiclanternfirmware/discuss/72157626435319057/)
Title: ---
Post by: altair on 11 / May / 2011, 09:58:19
---
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 11:55:52
focus peaking and magic zoom look pretty cool :)

new build coming tonight
Title: Re: 500d development
Post by: pat_loonytoon on 11 / May / 2011, 12:16:22
Coutts, you are amazing (which you already know :) )
Edit: And Alex you too  8)

Altair, thanks for the aco. I finally got the colors to show correctly
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 12:37:20
i'd be nowhere without Alex, so make sure he gets credit too ;)

it's kinnnd of working. nothings squared away fully yet but it seems to at least be working now. I'm uploading a video now to show what it looks like.
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 12:57:49
http://www.youtube.com/watch?v=-5nEz6oMGBU# (http://www.youtube.com/watch?v=-5nEz6oMGBU#)

sorry about the quality :-/
Title: Re: 500d development
Post by: Liamykins on 11 / May / 2011, 13:02:35
Seriously amazing! Such good work, I was showing my friend at college magic lantern today and he was amazed. Can't wait for the new build! <33
Title: Re: 500d development
Post by: mk11174 on 11 / May / 2011, 15:36:50
jesus, how many cams u have, lol, great work u guys, I am really learning how much work goes into what u guys r doing, your really amazing!!! keep it up 8]
Title: Re: 500d development
Post by: sbright33 on 11 / May / 2011, 17:34:03
I can sense Silent Picture is coming soon!  Time to celebrate!
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 19:23:16
^ silent pictures do work :)

i've got things working if I use the live view buffer, so that means nothing is guaranteed in video mode or while recording (yet), working to locate the 2 hd vram buffers (i have one, kind of). hopefully soon!

the silent pics right now will be 720x424 pixels (0.3mp), small.. but finally working at least!!
Title: Re: 500d development
Post by: aznguy on 11 / May / 2011, 19:34:55
hey coutts, i saw a "do not click" option in the menu, what does that do?? haha im soo tempted to click....
Title: Re: 500d development
Post by: pat_loonytoon on 11 / May / 2011, 19:51:41
haha yeah me too!
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 20:03:35
silent picture from hd buffer:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi54.tinypic.com%2Foqaopi.jpg&hash=a856e575adfe8f70de1e164d56c48678)
Title: Re: 500d development
Post by: rebelT1i on 11 / May / 2011, 20:07:44
hey coutts, i saw a "do not click" option in the menu, what does that do?? haha im soo tempted to click....

A1EX just responded to this here http://vimeo.com/groups/magiclantern/forumthread:240604 (http://vimeo.com/groups/magiclantern/forumthread:240604)
Title: Re: 500d development
Post by: Coutts on 11 / May / 2011, 21:08:20
might have found possible other hd buffers? not sure about their size yet.

spying on a few locations that i found contain 0x46000080 (one working hd address we have), using hunt.py from alex. Below are a few locations and the values i noted they cycle through in live view:

--0x157f84--
0x46000080
0x06000080
0x48000080
0x08000080

--0x869a70--
0x46000080
0x48000080

--0x48a0--
0x46000080
0x48000080

I have now confirmed that 0x46000080 and 0x48000080 work (using dimensions 928x616 with pitch 1856), as noted on the vram page for the 500d. the 0x44000080 value on that wiki appears to be wrong, because silent pics/magic zoom weren't right at all.

I'm going to try some of these other values now.



edit:
0x06000080 works
0x08000080 works
so now we have 4 lv_hd_buffer addresses: (0x06000080, 0x08000080, 0x46000080, 0x48000080). with a possible dma address at 0x157f84 switching between all 4, or 0x869a70 switching between 0x46000080 and 0x48000080.

the only odd thing is that focus peaking is offset, vertically lower than the actual display, so the whole focus peaking map is off by a little bit -_-
it isn't like this on the lv address, but it is on all 4 of these hd vram addresses... i'm stumped.

everything is working beautifully now.
Title: Re: 500d development
Post by: rootsxi on 11 / May / 2011, 22:32:25
yay, Coutts! you are a coding machine! thanks a1ex!
Title: Re: 500d development
Post by: mk11174 on 11 / May / 2011, 23:25:47
awsome, i have been anxious to mess with focus peaking and silent pictures!!! wow, what a leap foward!!!!
Title: Re: 500d development
Post by: a1ex on 12 / May / 2011, 05:25:23
Not sure how many of you know about Magic Lantern User Group, since it isn't mentioned on the wiki: http://vimeo.com/groups/magiclantern (http://vimeo.com/groups/magiclantern)

Tutorials page: http://vimeo.com/groups/magiclantern/album/2367 (http://vimeo.com/groups/magiclantern/album/2367)
Title: Re: 500d development
Post by: RoaldFre on 12 / May / 2011, 06:46:04
might have found possible other hd buffers? not sure about their size yet.

spying on a few locations that i found contain 0x46000080 (one working hd address we have), using hunt.py from alex. Below are a few locations and the values i noted they cycle through in live view:

--0x157f84--
0x46000080
0x06000080
0x48000080
0x08000080

--0x869a70--
0x46000080
0x48000080

--0x48a0--
0x46000080
0x48000080

I have now confirmed that 0x46000080 and 0x48000080 work (using dimensions 928x616 with pitch 1856), as noted on the vram page for the 500d. the 0x44000080 value on that wiki appears to be wrong, because silent pics/magic zoom weren't right at all.

I'm going to try some of these other values now.



edit:
0x06000080 works
0x08000080 works
so now we have 4 lv_hd_buffer addresses: (0x06000080, 0x08000080, 0x46000080, 0x48000080). with a possible dma address at 0x157f84 switching between all 4, or 0x869a70 switching between 0x46000080 and 0x48000080.

the only odd thing is that focus peaking is offset, vertically lower than the actual display, so the whole focus peaking map is off by a little bit -_-
it isn't like this on the lv address, but it is on all 4 of these hd vram addresses... i'm stumped.

everything is working beautifully now.

Strange, I'm sure I found an actual image at 0x44000080 in one of my old dumps. Maybe the location varies between 0x44..., 0x46... and 0x48... or so.
Also, I always assumed that the first nibble of the address somehow did not really matter, apart from 0x1 and 0x5 (garbage), and high values (0x8 and higher iirc).
Either way, now that we have the location of the dma pointer, we can always be sure instead of guessing :-).

With regards to those 0x0 and 0x4 addresses in the dma pointer at 0x157f84. That's a really interesting find! Maybe that 0x0 and 0x4 page arent the same after all? Or maybe that second bit is a flag for something -- like "this buffer is still being written to atm", as the other addresses don't seem to mention anything in the 0x0 section.

Regarding the offset peaking: the HD buffer maybe uses a different pixel ratio than the liveview buffer, so you will possibly need to do some resampling to get it to map correctly to the vram that ML writes to. Just about every resolution found on the vram wiki page has a different aspect ratio...

One final note, I found the 0x48000080 buffer to contain a 1576x1048 image once (when recordig at 1080p), you might try to check this to see if this breaks the current code (ie if the features don't work when actually recording at 1080p).

I'm trying to get my camera to boot ML again asap, but something fishy has happened (probably whist dumping vram) that makes it impossible to boot from the autoexec (tried pretty much everything). Grrr.
Title: Re: 500d development
Post by: vorob on 12 / May / 2011, 08:03:06
Few thoughts about custom firmware i expressed in my video:
http://www.youtube.com/watch?v=ThV6coqkIk0# (http://www.youtube.com/watch?v=ThV6coqkIk0#)
Sorry for my english and few rude words :)

Topics:

- menu flickers
- pressing SET button to change values is really boring
- custom iso randomly changes from what i set
Title: Re: 500d development
Post by: arnarg on 12 / May / 2011, 08:38:16
you can press the DISP button to go back in the ML menu
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 09:11:26
hey guys,

First of all, i'd like to congrat everybody who puts time and effort into that project. (like usual lol)
 Maybe this is gonna sound weird because it must be a detail for now, but i was wondering if we could imagine a french (or other language) version of ML.
I would be happy to translate it.  ;) I havent tried yet to get started with the Arm toolchain and stuff, and honnestly im still a little bit confused with all that, but i guess i can learn the basics, so that i could translate the menus. Im not sure, but i guess i wouldnt need to touch the actual code for that right ??
So here's my question : is that possible for someone like me who doesnt know much about code, C, etc.. ?

i'm sure there's a lot of people in France who would want to help with the development of ML, but it's really hard cause all the documents,resources, forums, and stuff are in english.   :(


I think im gonna start with the translation of the UserGuide.

Title: Re: 500d development
Post by: Coutts on 12 / May / 2011, 09:16:19
to clear some things up:
-when i merged to the latest 550d codebase last week, that new tweaks menu was added, so as a result things don't fit on the screen anymore. i have to change the menu position, alex says the menu on the 550d is full screen so i might have to do that.

- the screen only flickers when the camera is metering and that EV bar is moving around, every time it moves canon redraws it's screen so as a result ML's menu is cleared and must be re-drawn. The only perfect solution to this is to somehow block metering from working while the ML menu is shown. I've tried block events and injecting different events but have had no luck, the best we can do is make the ML menu try to re-draw as fast as possible.

- set toggles forward, disp toggles back, and the LV button will auto select for some settings (iso, shutterspeed, white balance too i believe). you can also use the LV button on some settings like focus peaking and zebras to adjust different settings. i think i looked into the wheel but the problem is it generates the same event no matter which way it's clicked, so i couldn't figure out how to use it for this.

- you must have accidently hit the LV button when that iso value changed on it's own, if it was yellow at that time (hard to tell) then that means that an auto setting was selected. it's also possible things aren't working yet. after i merged the latest codebase a lot of things changed / stopped looking.

i'm trying to concentrate on one thing at a time right now, before i release another build i want to square away this vram stuff for focus peaking, magic zoom and silent pics.

but thank you for trying it out :)

Title: Re: 500d development
Post by: sbright33 on 12 / May / 2011, 09:20:46
Coutts you are a hacking God!  Along with the help of a few others like Alex.  I know nothing of this code, but I've been coding in C for 25 years.  If you ever get stuck and have a question, Skype me Brighteyes3333.  I'm going to create so many cool videos with Silent Picture.  I'll thank you in every one of them!  I have a project coming up and will need Silent Picture mode.  You finished it just in time.  Thanks again!  Steve
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 09:28:04
Actually, i read my post just above, and it's really not clear :lol:

So what i wanna know is : in the code, the actual name of the features (as they are written in the menu, (for exemple "focus peaking")) matters ?

so for a translation, would i need to re write all the code, or i could just transalte the menu ?


damn it.. Still confusing...sorry i hope you understand.

i guess i should just try to follow your tutorial to get started, and take a look at that code myself.
Title: Re: 500d development
Post by: a1ex on 12 / May / 2011, 09:45:07
gravityrem: to translate the manual, you need to work on this file:
https://bitbucket.org/hudson/magic-lantern/history/doc/FEATURES.txt (https://bitbucket.org/hudson/magic-lantern/history/doc/FEATURES.txt)

This is the manual for 550D. I don't see this file on 500D repo. If you know python and LaTeX, you can play with mkdoc.py; if not, send it to me.

David Quiles maintains a translation for Magic Lantern user guide in Spanish, but he re-formatted the document from scratch: http://www.davidqonline.com/2008/01/manual-magic-lantern-para-550d-firmware.html (http://www.davidqonline.com/2008/01/manual-magic-lantern-para-550d-firmware.html)

Maybe it's good to have a single manual for all cameras, as most features work the same. And maybe mark camera-specific issues/features in some way... ideas?

The code isn't really ready to handle menus in other languages, since all the messages are hardcoded. There is also a limit on autoexec.bin size, and we are very close to it. For example, to add a few help tips for each menu item (in latest 550/60D build), I had to remove a few library functions and replace them with stubs to keep code size small.

On the other way, to use ML you need a bit of knowledge; it's definitely not a toy for beginners, but a tool for power users.

vorob: constructive feedback is welcome, but what you did is not. Nobody forced you to use ML. If you don't read the manual, at least look at video tutorials first.
Title: Re: 500d development
Post by: Coutts on 12 / May / 2011, 09:53:04
Actually, i read my post just above, and it's really not clear :lol:

So what i wanna know is : in the code, the actual name of the features (as they are written in the menu, (for exemple "focus peaking")) matters ?

so for a translation, would i need to re write all the code, or i could just transalte the menu ?


damn it.. Still confusing...sorry i hope you understand.

i guess i should just try to follow your tutorial to get started, and take a look at that code myself.
i think you could leave all of the code but change strings (like what's printed) to french. strings are inside double quotes "".

ex:

bmp_printf( FONT_MED, 0, 0, "this is a print statement" );
Title: Re: 500d development
Post by: a1ex on 12 / May / 2011, 09:59:19
You can do that, but who will maintain the code afterwards? It's not so easy.

Language files (like CHDK does) would be a much better solution in the long run, but they have some overhead.
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 10:07:10
All right. thanks for you answer Alex.

You're absolutly right, Ml is def a powerful tool. That's why i think it's very important to understand clearly what every feature does in order to enjoy shooting/working with it.

to be honnest, i haven't been looking into that code yet, so i have no idea about the structure of that code. That's why i was wondering if it was even possible.
But you're right, it's really not that important to have the menus in an another language, Having a good user manual is for sure more important.

Imma work on it. Let's keep a single manual for all cameras for now. And we can add the specific stuff later. I guess there's only a few features that dont work the same.

Can i Pm you for any question about the behaviour of any feature ?
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 10:18:26
Actually, i read my post just above, and it's really not clear :lol:

So what i wanna know is : in the code, the actual name of the features (as they are written in the menu, (for exemple "focus peaking")) matters ?

so for a translation, would i need to re write all the code, or i could just transalte the menu ?


damn it.. Still confusing...sorry i hope you understand.

i guess i should just try to follow your tutorial to get started, and take a look at that code myself.
i think you could leave all of the code but change strings (like what's printed) to french. strings are inside double quotes "".

ex:

bmp_printf( FONT_MED, 0, 0, "this is a print statement" );


oh.. That's different.. So it would be "kinda easy".. I would just need to translate and replace the english term with a french one.
I guess that would help keeping the autoexec small. (alex when you say "there is also a limit on autoexec.bin size, and we are very close to it", how close are we ? Does a few more (or less depending on the traduction) characters would be a problem ?

And i know you guys are real code beasts and that you guys are releasing a new build every 30 minutes :D, but the menu doesn't change that much at every builds. So it wouldnt be a big work at all to keep the french/span/jap/whatever version updated.

On the other hand it's probably not the best solution, cause that means there would be a different Autoexec for each language..
Title: Re: 500d development
Post by: utnuc on 12 / May / 2011, 10:37:10
 I think was a1ex was getting at is that there is not enough room for one ML firmware that supports multiple languages.  Changing the titles of the menus and recompiling in a different language would need to be done for each new build.  It wouldn't change the filesize drastically enough to worry about anything.  Having a separate French autoexec.bin is the best solution.

 I can write a bash script (using sed) to search and replace each menu item with the French equivalent.  This would streamline the distribution of each new French build (especially since Coutts is rocking the house with a new build every few days).  If you want, just send me the menu translations and I can put it together (and maintain the most updated build in French).

Ben
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 10:49:54
Yep Utnuc. That's what i meant.

We can give it a try, and see.. :)
Title: Re: 500d development
Post by: Jamez on 12 / May / 2011, 12:19:02
Few thoughts about custom firmware i expressed in my video:
Sorry for my english and few rude words :)

Topics:

- menu flickers
- pressing SET button to change values is really boring
- custom iso randomly changes from what i set
The answers to your questions are very very very very very simple.
Its BETA software, here is a wikipedia link for you to study this term...
http://en.wikipedia.org/wiki/Beta_software#Beta (http://en.wikipedia.org/wiki/Beta_software#Beta)

There is no comparison comparing beta software with professional released software as you have done in the video. I suggest you read the manual then you will realise that there is a way to get the values to go backwards instead of forwards.

@gravityrem
No it wouldnt be "kinda easy" at all, you will need to go through hundreds of lines of code, and as soon as an update is released you will need to start again and do it all again. A better approach would be translating the manual IMO. From my experience, France is similar to Japan, ie there is no real concept of Open Source in its true sense.

@a1ex
Good idea, will link to those files on the wiki :)
Edit: Its been there all along ;)
Title: Re: 500d development
Post by: pat_loonytoon on 12 / May / 2011, 12:29:05
haha my thoughts exactly! I just watched The Terminal (with Tom Hanks) for the first time last night and I felt like he sounded almost like Tom Hanks lol.

@Vorob- Maybe complaining to Canon about their firmware would be more productive.
Title: Re: 500d development
Post by: sbright33 on 12 / May / 2011, 12:30:10
@Vorob - It works great the way it is.  You just have to read the manual.  If you don't like it change it!  First you have to learn C.  We're not doing this custom for you, it's for everybody!  Please try to keep your comments focused on an issue that matters.  Great job Coutts!
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 12:53:21
We can use a script to do the job.
Title: Re: 500d development
Post by: Jamez on 12 / May / 2011, 12:57:26
@gravityrem
But what would be the point of using a script?
All you are going to get are questions, what does this do, how does this work etc, its not all that clear to the novice or especially non native speaker. You would need to learn a lot just to achieve a little, and then still need to translate the manual, and support it in French.
Title: Re: 500d development
Post by: gravityrem on 12 / May / 2011, 13:08:14
Exactly Jamez !
It's pointless for now to do that.
and in my previous post, i was saying that the most important thing is to have a clear manual.

Then there's no need to translate the menus. After that, it's easy (even for a french guy :lol:) to use ML efficiently. Even if he doesnt understand the meaning of the words "focus peaking" at least he knows what this features does, and how to use it.
Title: Re: 500d development
Post by: arnarg on 12 / May / 2011, 14:29:02
Do French people not speak English very well? :P Here in Iceland we start learning English in 5th grade. (I'm sorry, I know this is wayyyy off topic)
Title: Re: 500d development
Post by: LaLaPico on 12 / May / 2011, 19:14:51
Does focus peaking only work with auto lenses? Using my manual lenses that have been converted doesn't seem to work
Title: Re: 500d development
Post by: rebelT1i on 12 / May / 2011, 19:32:41
Does focus peaking only work with auto lenses? Using my manual lenses that have been converted doesn't seem to work

IIRC, Coutts was saying just a few pages back that he's still trying to get that working. Someone correct me if I'm wrong, but I have all auto lens and I haven't had any luck with focus peaking.
Title: Re: 500d development
Post by: Coutts on 12 / May / 2011, 19:34:47
still working out vram addresses..

i've been going through and testing every address / width/ pitch combo on the 500d vram page, while recording to try to narrow down what needs found and what works now.

focus peaking is offset from the picture when i use the hd vram buffer.. not sure how to fix it yet.
Title: Re: 500d development
Post by: aznguy on 12 / May / 2011, 21:51:57
gahh.... my camera drained overnight... i hate the autoboot... somehow even after i turn the camera on with out the ML card and popped out the battery to clear processes it still drains.... Does anyone here experience this?? I could just leave the battery out of the camera but I rather not lol.
Title: Re: 500d development
Post by: rootsxi on 12 / May / 2011, 22:17:47
same happened here, aznguy. i thought it could have been just me, now i know. i was surprised to find i had actually left battery in! i hope all is well, Coutts in your vid it didnt seem like the focus peaks were all that off...? thanks btw i havent quite caught up to all the new features in my testing, but  wow, very impressive build. im so stoked with the technicolor LUT and color profile and how gorgeous it looks without the slightest bit of tweaking, with the magic lantern making the tough parts of production like how much light and where easier. also, btw theres a cool app for the ipad or iphone called dslr slate... digital remake of the old black birch  and chalkboard clapper.
roots
Title: Re: 500d development
Post by: Coutts on 12 / May / 2011, 22:24:25
@rootsxi
the hd buffer makes focus peaking offset, the lv buffer works though. focus peaking, magic zoom and silent pics all use the HD buffer. zebras use the lv buffer. if we use the lv buffer it will work but won't be very high res for silent pics.
Title: Re: 500d development
Post by: Coutts on 12 / May / 2011, 22:42:06
here are some tests, using silent pics and converting them to see what they look like. this is using the information roaldfire put on the 500d vram page.



While Recording
0x44000080 / 0x4600008

0x44000080:
resolution: 1576x630
pitch: 3152
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F1.jpg&hash=3698490347fb5d534323529345bf2243)

wrong address, looks like this in all 3 recording modes (used the same resolution size, but doesn't matter because it's obviously not a valid buffer address).


0x46000080:
resolution: 1576x630
pitch: 3152
1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F2.jpg&hash=0ba70bcf905ca8f5cfe75bbd4fdc3c56)


720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F3.jpg&hash=67d0fed79a53499bf3f38485bee170cb)

resolution: 720x480
pitch: 1440
480p:
(can't convert file? 422-jpg.py thinks it's a hi-res silent pic (2x1) but fails saying the other parts are missing. only happens in 480p mode.

resolution: 1576x1048
pitch: 3152
1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F4.jpg&hash=20d81c2962125c675e598f573afc96c7)

(looks good!!!)


0x4FCB6C00
resolution: 720x624
pitch: 1440
1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F5.jpg&hash=1567a5334d1e19af19888b7ab91f0a18)

720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F6.jpg&hash=ebd5e30979526a963f72935828603dc9)

480p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F7.jpg&hash=e57565c6ee2127ec6de77f0326ac2066)

notice there are very very slight differences between them. It almost looks like zebras? I didn't have them turned on (nor should they be showing up in the buffer?). Odd..



I also note that magic zoom doesn't display a clear picture when i turn the camera on and start recording. I must first close the magic zoom window, stop recording, start recording, and then when i open the magic zoom window (preview for how things are gonna look in the silent pic basically), everything is clean then. This only happens for the first recording after turning the camera on. happens in every mode too (720, 1080, 480).

0x41B07800 / 0x43738800 / 0x43B48800
0x41B07800:
resolution: 720x424
pitch: 1440

1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F8.jpg&hash=7ac87e45200d56e44914f83ea9dd374d)

720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F9.jpg&hash=f140847f067fbd4588963b3ac16e8b0d)

480p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F10.jpg&hash=c947a239ea166ead69ea67ba9380d3c4)


0x43738800:
resolution: 720x424
pitch: 1440

1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F11.jpg&hash=e9282b6066f52504e3d9e27de11eb405)

720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F12.jpg&hash=571f859b577ab583e34f097d1aea58e2)

480p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F13.jpg&hash=570ce7e1cdc536a398099e5232744c47)



0x43B48800
resolution: 720x424
pitch: 1440

1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F14.jpg&hash=87be03378d525e7d8996e312ad85017e)

720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F15.jpg&hash=8fdd67b9db9de121d74fdd4b5c588f48)

480p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F16.jpg&hash=a0b4caf5402411ccb77938ce5a248c3e)



0x4d02800
resolution: 1280x732
pitch: 2560

err70 once, and video buffered out on one. silent pics won't convert like the earlier 480p buffer (none of them work this time though). magic zoom looked like a wrong address pic, so i dont' think this address is valid (at least all of the time).

0x48000080
resolution: 1576x1048
pitch: 3152

1080p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F17.jpg&hash=3e9f23a2401d3e069c0f360b6b2a0624)

720p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F18.jpg&hash=5bcfd7eb1cddfef6bda09df1d0253237)

480p:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi867.photobucket.com%2Falbums%2Fab235%2Fcouttsphotog%2F19.jpg&hash=080cb675061b252cf9b2862ccf2f9eed)

(wrong resolution for buffer)




so that's that, every known/documented buffer on the 500d vram page has been tested in recording mode, so we know what works and doesn't now.

tomorrow i'll try to do the same in movie mode idle, and hopefully have the hd stuff all squared away, so that it works in recording as well :)

no guarantees for anything hdmi related yet, i haven't even tried touching that (i need to get a cable first).
Title: Re: 500d development
Post by: pat_loonytoon on 12 / May / 2011, 23:56:50
Looks great Coutts! Thanks for the hard work and effort.
Title: Re: 500d development
Post by: gravityrem on 13 / May / 2011, 10:49:19
once again coutts : Bravo ! ;)

Do you still have time to go out take pictures ?
Title: Re: 500d development
Post by: Coutts on 13 / May / 2011, 11:14:24
thanks guys :D
i haven't taken any pictures in a while, lol. this is a pretty time consuming project but i enjoy working on it. constantly learning new things.

so i've now confirmed for 1080p recording and idle, this is what works (largest buffer we know of):

0x06000080 / 0x08000080 / 0x46000080 / 0x48000080
resolution: 1576x1048
pitch: 3152


so that takes care of 1080p being all set, now to figure out 720p and 480p.
Title: Re: 500d development
Post by: utnuc on 13 / May / 2011, 11:31:28
Coutts, Here is the inexpensive mini HDMI cable I bought.  Only $6, works well.

http://tinyurl.com/miniHDMItoHDMI (http://tinyurl.com/miniHDMItoHDMI)

Keep up the good work.
Title: Re: 500d development
Post by: Jamez on 13 / May / 2011, 12:53:55
Ive managed to get the help messages to display, ported from the 550D code - one line of text explaining what each function does at the bottom of the screen, and the menu is a little bigger, and also has some other small tweaks, white text on a black background in parts that wasnt there before.
I`ll share my code with Coutts, so hopefully he can put it in the next build.
Coutts didnt mention but USB support is now also fixed (it didnt work in the alpha builds).
Shared the stuff with Coutts, and we worked on fixing the menu a little together, and tested it. The furthest (i) part of the menu can now be seen :)
Title: Re: 500d development
Post by: pat_loonytoon on 13 / May / 2011, 14:46:52
When you say USB support you are referring to connecting it to the computer right? USB audio monitoring while in record mode,which you set as resolved, still has issues and does not work. Just want to make sure we are talking on the same level here.
Title: Re: 500d development
Post by: sbright33 on 13 / May / 2011, 21:57:39
@Coutts - I tested the autoexec.bin you sent me.  All of the JPG's from Silent Picture are blank.  Maybe I am doing something wrong when I convert them using python script?
Title: Re: 500d development
Post by: sbright33 on 14 / May / 2011, 08:42:59
No, I looked at the raw data with a hex editor.  Am I doing something wrong in the camera?
Title: Re: 500d development
Post by: Coutts on 14 / May / 2011, 08:55:29
Try in movie mode at 1080p.
Title: Re: 500d development
Post by: Jamez on 14 / May / 2011, 08:58:40
@sbright33 try using this converter Alex wrote, I dont think a hex editor will work, and follow coutts post where hes put all the photos that work, any other settings wont work atm afaik.
https://bitbucket.org/hudson/magic-lantern/downloads/422-jpg-v2.exe (https://bitbucket.org/hudson/magic-lantern/downloads/422-jpg-v2.exe)

Video here
http://vimeo.com/18836012 (http://vimeo.com/18836012)
Title: Re: 500d development
Post by: Coutts on 14 / May / 2011, 09:25:59
The script I sent should work. I had to edit it to recognize the resolution of whatever buffer is being used in that build.
Title: Re: 500d development
Post by: Coutts on 14 / May / 2011, 18:47:03
ugh, i think my computer at work got turned off. either that or it's ip address might have changed, i can't connect with remote desktop or ping the ip. can't work on anything until monday, sorry guys :(
Title: Re: 500d development
Post by: rootsxi on 14 / May / 2011, 19:02:48
wow, Coutts! a much-needed vacation from the code to enjoy the build youve put together or just relax, but know that youve made my camera way awesome, thanks...
Title: Re: 500d development
Post by: sbright33 on 15 / May / 2011, 09:30:14
Tried 1080 movie mode.  Viewed 422 with hex editor it's filled with ff ff ff ff...  Skype me.
Title: Re: 500d development
Post by: Coutts on 15 / May / 2011, 15:26:25
Tried 1080 movie mode.  Viewed 422 with hex editor it's filled with ff ff ff ff...  Skype me.
make sure you're taking a single silent pic, in 1080p recording or idle, hit the shutter half way to take a silent pic, it will say it saved a silent pic, it'll be a .422 file on your sd card.

put this file through the 422-jpg.py script:

Code: [Select]
python 422-jpg.pyand it will pop up a file open dialog, select the .422 file and it'll spit out a jpeg in the same folder as the 422 file.

if you have multiple 422 files to convert,
Code: [Select]
python 422-jpb.py /folder_path/.
the period says to do every 422 file in that folder.
Title: Re: 500d development
Post by: sbright33 on 15 / May / 2011, 16:36:20
I figured out the py script.  I didn't change it.  JPG's are all white.  To verify that the problem is in the camera I looked at the raw data with a hex editor.  All ff ff ff ff...  The camera says saved when I do half press.  But it saves all white, not what I see on the screen.  I've tried the modes you suggested.  I'm guessing the buffer is in a different place for me!
Title: Re: 500d development
Post by: bjacklee on 15 / May / 2011, 17:12:42
Hi guys! does anyone knows a download link for EOS UTILITY mac version? I dont have my disk with me.. :( I keep searching in the net for installers but I only get an update not the full version... Sorry guys this is way off the topic.. I just really need the utility badly... Thanks!
@Coutts, Thanks for the hard work in making my 500d glow! :D
Title: Re: 500d development
Post by: mk11174 on 15 / May / 2011, 18:54:32
thats the same problem i had with i think version 1.4 but at that time i knew he just got it working and he mentioned the buffer address had to be figured out, with 1.5 i dont even get a conversion anymore it just says unknown file size, dont know what that is about i only checked cause i see everyone talking about silent pictures working, but also see he says he still got to get address right so i wasnt sure, so i tried it and get no conversion at this point.
Title: Re: 500d development
Post by: sbright33 on 15 / May / 2011, 20:50:50
Can I test the Lores buffer version/build?  Maybe it's more stable and the buffer is referenced by a pointer instead of our guessing?
Title: Re: 500d development
Post by: Coutts on 15 / May / 2011, 21:20:06
Can I test the Lores buffer version/build?  Maybe it's more stable and the buffer is referenced by a pointer instead of our guessing?
in 1080p mode if you flip on magic zoom does it show anything? it will probably flicker when you first enable it, start/stop recording and it won't flicker until the next time you turn the camera on. not sure what causes this. but anyways magic zoom uses the same buffer so if you can see in magic zoom then you know silent pics are good.
Title: Re: 500d development
Post by: sbright33 on 15 / May / 2011, 21:29:05
Magic Zoom does not do anything in this Build.  User error?  No flicker.  I know for certain the 422 files are not good.  Can I try the Lores buffer with SP?
Title: Re: 500d development
Post by: Coutts on 15 / May / 2011, 21:48:14
can't work on anything until tomorrow night. i hope this doesn't mean that buffers differ from camera to camera... !?!???!?
Title: Re: 500d development
Post by: mk11174 on 15 / May / 2011, 21:53:51
i see magic zoom and i get a wrong image size error when using the 422-jpg exe and the script to convert pictures, in case it helps to know other peoples situation.
Title: Re: 500d development
Post by: sbright33 on 15 / May / 2011, 22:01:15
@mk - FYI i have a different build.  It's probably some setting that is different.  We cannot count on those buffers to stay put.  We need the pointer.  Tomorrow I can try the Lores?
Title: Re: 500d development
Post by: mk11174 on 15 / May / 2011, 22:37:52
ok, i wasnt sure, i didnt know there was a differ build past 1.5, so yep, im guessing thats it then, thanks.
Title: Re: 500d development
Post by: Coutts on 16 / May / 2011, 09:34:27
alright unfortunately progress might be slow/halted over the next month. today is the start of summer classes for me, so for the next 6 weeks I have class from 8am-2pm monday-friday, and i'm going to be working from 2pm-5pm monday-friday as well. not a lot of free time unfortunately...
Title: Re: 500d development
Post by: sbright33 on 16 / May / 2011, 10:27:12
Coutts will be doing some learnin!  Can you make the Lores build for me first?
Title: Re: 500d development
Post by: Coutts on 16 / May / 2011, 10:39:10
i won't be able to look at it right now. the latest commit to bitbucket is using the lv buffer for focus peaking  / magic zoom. just download/compile the code
Title: Re: 500d development
Post by: sbright33 on 16 / May / 2011, 14:26:56
Anyone have an autoexec.bin that works for Silent Picture?  I can't get any to work.
Title: Re: 500d development
Post by: Coutts on 16 / May / 2011, 16:43:25
thought i might have found another buffer.. but doesn't look like it. this was in recording mode, idle, in 720p mode.

0x5023500
resolution: 928x538
pitch: 1856

odd.png:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2F2ccnu4y.png&hash=0977bedcf987ff8df9d7860ed10362de)


but when i try to use it on the camera it looks like an invalid buffer address. alex suggests it could be malloc'd and changes whenever the camera turns on, oh well.


where i found it:
Code: [Select]
s = readseg("./0.bin", 84030976, 1000250)
Title: Re: 500d development
Post by: sbright33 on 16 / May / 2011, 18:24:20
Which one works reliably for you?  Lores?  Turn camera off and on, do a few things before testing.  Can I try that autoexec?  I'm batting 0 for silent pics.
Title: Re: 500d development
Post by: Jamez on 16 / May / 2011, 22:28:33
sbright33 in short silent pics dont work as expected, some work still needs to be done on this.
Title: Re: 500d development
Post by: Coutts on 17 / May / 2011, 17:06:49
haven't had much time today but i started this wiki page that i'll update as I get ideas. kind of a scratch pad to help organize my thoughts.

http://magiclantern.wikia.com/wiki/500d_Development_Todo (http://magiclantern.wikia.com/wiki/500d_Development_Todo)
Title: Re: 500d development
Post by: sbright33 on 17 / May / 2011, 19:34:16
Just spent the day using Motion Detection and a few other features.  Tested Q-scale.  It corrupted my memory card again 3rd time.  Lost everything on it.  This has never happened without ML.  Motion detection has much potential overall works great.  Here are some problems.  I cannot figure out how to turn off the display.  It only works in LV.  So there are 3 clicks with each picture.  This scares the birds and wildlife.  SP will not work in this case, because I need a fast shutter speed.  The biggest part of the delay is caused by switching the mirror from LV.  This will go away if you do not require LV mode, which is impossible?  I wish we could detect movement anywhere in the frame, instead of just the center.  I'm expecting a Bear tonight!  So many things are flaky.  They don't work at first and start later.  I'm using MD for wildlife.  It takes a picture when the bird lands, and when it takes off to leave.  But not the whole time it's here. not moving.  A delay would be helpful for this.  Can MDetect work in movie mode?

I noticed magic focus kinda works, but it's garbled with lines like static on TV.  The colors change when I pan the camera.  So it is a buffer of sorts.  This is of course related to my SP problem.

Keep up the good work!  Baby steps!  SP for all...
Title: Re: 500d development
Post by: sbright33 on 17 / May / 2011, 20:05:50
Great Wiki page!  We can see what you're working on.  Great minds think alike.  Where can I list bugs related to what you're currently working on?  Suggestions in reply to your Wiki?  Feature requests related to these few topics?  Of course we would use the bitbucket generally.  Skype me if you have any questions that I might help with.  I think I'm a great tester because nothing seems to work on my camera when it comes to buffers  ;)
Title: Re: 500d development
Post by: Coutts on 17 / May / 2011, 20:08:41
report any bugs on the repository:
https://bitbucket.org/alins/magic-lantern-for-500d (https://bitbucket.org/alins/magic-lantern-for-500d)


I just took a video using magic zoom and focus peaking (pretty mediocre quality again.. i really need a better camera to tape with). magic zooms working here :-s (sorry about the glare)

http://www.youtube.com/watch?v=w2-4D4njQOs# (http://www.youtube.com/watch?v=w2-4D4njQOs#)
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 20:20:35
just curious, is the silent picture in full hd mode suppose to work with the new repository updates, i know u have been tweaking the buffers and it seems u have 1080p figured out ok, was wondering if u had that set in the new updates or is it just me that cant get the 422 images to convert, i just get wrong image size when i try to convert them?
Title: Re: 500d development
Post by: Coutts on 17 / May / 2011, 20:27:04
that's due to the 422-jpg.py script, it doesn't know how to read our sizes. just open it in a text editor and add the right dimensions:

720x480
928x616

just look at how the other ones are setup and mimic it, should only take a minute or 2 to do.
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 20:28:22
ahh, gotcha, thanks, 8]
Title: Re: 500d development
Post by: sbright33 on 17 / May / 2011, 20:46:22
@mk - If you get it to work, maybe you can walk me thru the steps starting with when you turn the camera on.  I can't get anything that looks like a picture.  If we have the same camera, and the same build, we should get the same results right?  Even if the buffers could potentially move.  Did you get the Lores SP working?
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 21:08:31
sbright33, no luck for me, sorry, i changed the script, silent pic says it took the pictures just fine, i tried in live view full hd and record mode, no matter what way i do it i get this error during conversion using the script with python:
Traceback (most recent call last):
  File "422-jpg.py", line 138, in <module>
    convert_422_bmp(input, change_ext(input, ".jpg"))
  File "422-jpg.py", line 114, in convert_422_bmp
    raise Exception, "unknown image size: %d" % len(data)
Exception: unknown image size: 610560

This is what I changed in script:
 elif len(data) == 720*480*2:
        w, h = 720, 480
    elif len(data) == 928*616*2:
        w, h = 928, 616

I am using the latest repository update I compiled on my machine. Its been same results since slient pic started coming alive from Coutts magic coding.
Title: Re: 500d development
Post by: sbright33 on 17 / May / 2011, 21:59:39
I've tried a few different builds.  Never got that error.  Just funny looking images.  Does your magic focus look like a picture?  If so can you send me your build of autoexec.bin?  Then I can help with your error.
Title: Re: 500d development
Post by: sbright33 on 17 / May / 2011, 22:03:13
Should be 720x424   Not 480.  That will do it for you!
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 22:08:08
Sbright i PM u the link for it.
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 22:10:02
And thanks sbright, thats what it was 424, thanks. 8]
And yes Magic zoom seems to work, sometimes it gets scrambled but dont rememer what i was doing at time and all pictures converted fine 8] they look good
Title: Re: 500d development
Post by: Coutts on 17 / May / 2011, 22:28:42
sbright33, no luck for me, sorry, i changed the script, silent pic says it took the pictures just fine, i tried in live view full hd and record mode, no matter what way i do it i get this error during conversion using the script with python:
Traceback (most recent call last):
  File "422-jpg.py", line 138, in <module>
    convert_422_bmp(input, change_ext(input, ".jpg"))
  File "422-jpg.py", line 114, in convert_422_bmp
    raise Exception, "unknown image size: %d" % len(data)
Exception: unknown image size: 610560

This is what I changed in script:
 elif len(data) == 720*480*2:
        w, h = 720, 480
    elif len(data) == 928*616*2:
        w, h = 928, 616

I am using the latest repository update I compiled on my machine. Its been same results since slient pic started coming alive from Coutts magic coding.
interesting.. that 610560 is the x*y*2, ex: 720*480*2=691,200.
that means that for some reason your pictures are smaller? hm. you are using the latest code from the repository? odd.. does magic zoom appear to work?

nothings even checked for video mode, i'm just concentrating on live view for now so don't bother testing video mode yet as i know nothing probably works yet for that (focus peaking, silent pics and magic zoom at least).
Title: Re: 500d development
Post by: mk11174 on 17 / May / 2011, 23:42:16
sbright33, no luck for me, sorry, i changed the script, silent pic says it took the pictures just fine, i tried in live view full hd and record mode, no matter what way i do it i get this error during conversion using the script with python:
Traceback (most recent call last):
  File "422-jpg.py", line 138, in <module>
    convert_422_bmp(input, change_ext(input, ".jpg"))
  File "422-jpg.py", line 114, in convert_422_bmp
    raise Exception, "unknown image size: %d" % len(data)
Exception: unknown image size: 610560

This is what I changed in script:
 elif len(data) == 720*480*2:
        w, h = 720, 480
    elif len(data) == 928*616*2:
        w, h = 928, 616

I am using the latest repository update I compiled on my machine. Its been same results since slient pic started coming alive from Coutts magic coding.
interesting.. that 610560 is the x*y*2, ex: 720*480*2=691,200.
that means that for some reason your pictures are smaller? hm. you are using the latest code from the repository? odd.. does magic zoom appear to work?

nothings even checked for video mode, i'm just concentrating on live view for now so don't bother testing video mode yet as i know nothing probably works yet for that (focus peaking, silent pics and magic zoom at least).
Yes, am using latest repository, and magic zoom works fine, and I was only checking SP in movie mode cause you were talking about being in HD mode, but either mode seems to take the SP the same except when recording, I see the slice in the pic, I dont know how to switch to the bigger SP though the 928x616 you mentioned, but yeah, MZ works great actually!! 8] and SP works both in single and burst mode.
Title: Re: 500d development
Post by: mk11174 on 18 / May / 2011, 08:48:38
i just noticed that Coutts had a newer repos update right after i got the latest one, so now it does 928x616 as it should since I see Coutts updated the zebra.c with those values, great job!!! I am guessing the slice in the screen is just the rolling shutter cutting the image when not on tripod, cause it gives the same effect as rolling shutter gives when you video tape around flashers, so it seems to work just fine, no way to fix rolling shutter since that is just how cmos cams are made, just in case anyone tests it while hand held, so they know not to blame it on the firmware. 8]
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 09:16:45
Finally it works for me! Stayed up late testing it. Don't know what I was doing wrong before. Thanks everyone! Will wait for official release of SP HD.
Title: Re: 500d development
Post by: mk11174 on 18 / May / 2011, 09:19:35
sbright do u need the compile of the 928x616 version, the one i sent you is the version right before the latest which only did 720x424?
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 09:42:48
If it works reliably, yes please!
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 10:11:00
Noticed a few things with Motion Detect and SP.  Display never goes off.  It does fine with Intervelometer!  But it comes on every interval.  The ML menu gets stuck on.  Will not go away.  ML/trash button fails to work from then on.  I guess these will be hard to track down, even though they are repeatable.
Title: Re: 500d development
Post by: Jamez on 18 / May / 2011, 12:08:17
Sbright, please put them here
https://bitbucket.org/alins/magic-lantern-for-500d/issues?status=new&status=open
Preferably each one seperately so they can be tracked, things soon get lost on here.

Coutts is really busy now but hes just told me how to work out the rest of the values, so Im going to give it a try tomorrow :)
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 15:18:23
Sure no problem!  Got 5x and 10x focus zoom working for Silent Pictures.  Who should I talk to?
Title: Re: 500d development
Post by: Coutts on 18 / May / 2011, 15:50:42
live view x5 zoom buffer is located at:


0x41b0b5e0
resolution: 720x413
pitch: 1440

odd.png:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2Frwibdu.png&hash=f66154a9679d2f4d0beb3cb9fd2fa480)


a 3x3 silent pic with this will be ~2.7mp :)
Title: Re: 500d development
Post by: arnarg on 18 / May / 2011, 16:44:30
Since SP is what everyone is talking about these days, I'd like to ask... When are they useful really? :P I just don't get why having them is useful.
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 16:59:53
I'm finding it's useful for many things.  Not scaring wildlife like birds together with Motion Detection.  Taking 5000 shots without wearing out your shutter.  The life is 100k?  HDR time lapse.  Does 3x3 hires work yet?
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 17:05:33
I can also get 5-10x zoom from your build without modifying the code.  Just a tiny change to 422 Python script.
Title: Re: 500d development
Post by: Coutts on 18 / May / 2011, 17:07:18
alex tweaked memspy to spy on dma pointer addresses :)
i have to run right now, but if someone wants to look at this and figure out the pattern it changes addresses, it'd help!

Code: [Select]

0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 41b07800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 43738800
0x26a8: 43b48800
0x26a8: 41b07800
0x26a8: 43738800

i'd do it but i have to leave work and I'm meeting with my group for a class to work on a project. really busy with school now unfortunately.
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 17:54:03
My x5 zoom buffer is bigger than 413 lines.  But there's a problem.  Any movement at all divides the image into 2 pieces that don't match up.  Like they are cut horizontally and not lined up.  You can guess how this happened.  The top half was one scan of the sensor, the bottom half the previous one.  Rarely the line is near the bottom or top.  Even with zero movement there is a difference in exposure that you can see above and below the line if it's in the sky.  That was the 616 line buffer from coutts build.  Oh well back to the drawing board.
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 19:08:22
There's another major problem with the 616 line SP build.  Sometimes it works.  Sometimes it doesn't.  Today I took 500+ images during one session.  All of them are exactly the same.  I turned the camera off.  Took out the memory card.  Changed modes.  Took shutter pics and videos.  All during this session.  Yet all 500 422 images are exactly the same.  Maybe like my first picture of the day.  What a waste of time!  Maybe I was in movie mode for a few of those shots, by mistake.  Maybe I did something else wrong.  But many times I did it correctly.  Not one picture was different than the rest.  Testing Lores SP build next.
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 19:24:55
The 720 x 424 build is not as bad.  The line is more often near the top or bottom of the image.  The shift is not so big.  Crop mode works with the same buffer.  But it still sucks!  I have verified again that I'm not crazy.  Sometimes the HD build works for me.  Sometimes 500 of the same image. 

It's all about the timing.  You cannot sample the buffer while it's being written to.  We can solve this with a few lines of C.  I would be happy to discuss it.

Does ML on the 550d do the same thing?
Title: Re: 500d development
Post by: a1ex on 18 / May / 2011, 19:46:42
You are welcome to submit a patch. You only need to find a few extra MB of memory (see reyalp's ExMem routines), or rewrite FIO_WriteFile to make it a few times faster, or pause the digic while saving a picture.
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 20:18:52
Before we implement my idea, we need a stable HD version for SP.  The LV buffer is not so bad as it stands.  I propose we look for data to change at the end of the buffer.  Then read it.  It's a hack but it'll work.  Only a few lines of code.  Alternatively, and more simply, can you see when the buffer pointers change?  Maybe if you wait until the time is right?
Title: Re: 500d development
Post by: Coutts on 18 / May / 2011, 20:57:52
well i found the buffer for 5x/10x zoom in LV and been testing it with 5x5 silent pics, I get a 4680x3120 pixel picture, that's ~14.6mp :) pretty good

i don't know if it's the 422-jpg.py script or something else but the pieces don't line up perfectly, i'll ask alex tomorrow but might be getting closer now! :)

buffer information from zebra.c inside get_yuv422_hd_vram() (in lv, haven't tried video yet):
Code: [Select]
_vram_info.vram = 0x46000080;
_vram_info.width = 944;
_vram_info.pitch = 1888;
_vram_info.height = 632;
Title: Re: 500d development
Post by: sbright33 on 18 / May / 2011, 21:58:29
Let me know when you've fixed the HD SP.  I don't mean to rush you at all.  I know your time is limited.  But keep in mind that it's not even close as tested.  I'm happy with Lores for now!
Title: Re: 500d development
Post by: Coutts on 18 / May / 2011, 22:12:40
here's my silent pic i was talking about above:

http://farm4.static.flickr.com/3431/5735547840_3de3972aa8_o.jpg (http://farm4.static.flickr.com/3431/5735547840_3de3972aa8_o.jpg)
Title: Re: 500d development
Post by: mk11174 on 19 / May / 2011, 00:01:08
well i found the buffer for 5x/10x zoom in LV and been testing it with 5x5 silent pics, I get a 4680x3120 pixel picture, that's ~14.6mp :) pretty good

i don't know if it's the 422-jpg.py script or something else but the pieces don't line up perfectly, i'll ask alex tomorrow but might be getting closer now! :)

buffer information from zebra.c inside get_yuv422_hd_vram() (in lv, haven't tried video yet):
Code: [Select]
_vram_info.vram = 0x46000080;
_vram_info.width = 944;
_vram_info.pitch = 1888;
_vram_info.height = 632;
Hmm, I put those values in the Zebra.c, and I am guess I was suppose to bypass the other values temporarily, so I did that, and now MZ is garbled all the silent pictures are garbeled as well like how MZ gets, but at least theres something there, last time I tried the 5x5 and others, it came out white.
I went back and re-added the old values with these values just to see if it did anything, and MZ works now but 5x5 and all others are still garbeled.
Title: Re: 500d development
Post by: a1ex on 19 / May / 2011, 02:36:16
I propose we look for data to change at the end of the buffer.  Then read it.  It's a hack but it'll work.

It will not work, you can't save the image fast enough on the card (and you will catch the next DMA cycle).
Title: Re: 500d development
Post by: Samsongas on 19 / May / 2011, 04:22:33
Why don't make 24 silents pics for second? jajaja
Title: Re: 500d development
Post by: Coutts on 19 / May / 2011, 07:49:51
Sbright: you need to modify silent_pic_take_sweep() in shoot.c. im hoping this weekend ill have the time to sit down and figure out all of the buffers (now that memspy can see buffer dma pointers :) thnx alex). Just need some free time..
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 10:11:14
Alex let's talk about this.  Good point above!  Some HD pics are without a line even with constant panning movement and a vertical bar as a subject.  Sometimes it's near the top or bottom.  The key is that there is only 0-1 line max.  So it is possible to save it fast enough.  It's just a matter of timing.  Some experimentation is needed.  Instead of varying the timing delay, we can vary which part of the image buffer to detect change in.  For example, if you look at the last line as a trigger, the camera DMA may catch up to the saving process.  Assuming it's faster.  So we might try using the first line as the trigger.  If the saving/reading process is slower it wont catch the DMA cycle while it's writing.  It'll stay behind it.  Understand?  Good theory?

Even if this works for HD, or any specific buffer size and rate, a different strategy may be needed for the LV buffer.  There may be a delay between scans or a different frame rate.  Certainly there is less memory to fill or save.  Maybe the opposite process is faster in this case.  Maybe the writing is faster but there's a pause between frames.  Maybe you are correct, if the attempted buffer size is too big there will be 2 or more lines.  Then we cannot save fast enough to stay in sync.  Only in this case would it be impossible.  5x5 for example.

I volunteer to do a simple experiment when it's time.  This has to be done for each mode and memory buffer.  They might not share the same result.  Pan to the left and see which half is shifted left, the top or the bottom.  This will prove which of the 2 processes, reading or writing, is faster.  One of you has probably already done this experiment?  I can't remember which way I was panning for a particular picture.

It would be much simpler if you could just look at the pointers to get the timing of the buffers.  Unfortunately this only tells you when each buffer is ready, not when it's started.  Or maybe it tells you when it's started.  Maybe we'll get lucky.  But it cannot do both, and no way will it tell us when it's 1/2 written.  Which may be needed.  I'll explain those details later.

Some of these ideas may help Hires 5x5 stay in sync across buffers?  Baby steps.
Title: Re: 500d development
Post by: a1ex on 19 / May / 2011, 10:26:24
Jeremy's tests showed around 4fps in burst mode. One buffer refreshes at 12.5fps on 550D.

On the other hand, saving times are not equal; there may be some caching involved.

Experiment with vsync function: it waits until some value changes (you need to pass a pointer to that value as argument). For very low-res silent pics it may work.

To stop the digic from updating the buffers, you can call SleepLiveViewDevice. But then you have to wake it up again (and I don't know how). This function might reduce power draw, too (i.e. a power saving mode in liveview even stronger than just turning the display off).

Or just find the address of raw/jpeg buffers (which is not used during LiveView, and might be safe to write to them), and copy the silent pic buffer there before saving it on the card.
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 10:47:56
While I'm thinking about it: I wanted to make a note here in case it comes up later.  If there are exactly 2 lines for a Hires buffer.  Maybe 5x5 or 3x3 or 2x2 has only 2?.  It's possible to sync up to avoid one of them.  The other can be removed with interlacing. 

I may have to speed up the WriteFile routine to reduce the number of lines to 2 first. 

What good is 5x5 if it only works when the image is completely still?  Can you think of a use for it?
Anyone?  Why not just take a shutter picture?

If you cannot find higher than 500 lines x5 zoom let me know, I found one.  The problem with it is discussed above.

I'm getting way ahead of myself.  Slow down.  Take a breath...
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 10:57:55
Great ideas Alex!  I especially like using the raw/jpeg buffers.  With this we may be able to get 5x5 working better!  According to your numbers, that buffer might have 4 lines in it.  3 with syncing.  I'm not suggesting we can keep up with any sized buffer.  But we CAN handle 616 even without using those buffers intermediately.  I can see it's going to get very complicated if we do use them.
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 11:10:43
Will you please try a test for me?  Use SleepLiveViewDevice to stop the Digic.  Then require the user to manually start it?  By toggling the Liveview button?  Or would you have to turn it off completely?  This would be wonderful for individual 5x5 shots!  Not Timelapse obviously.
Title: Re: 500d development
Post by: Jamez on 19 / May / 2011, 11:52:26
Id prefer to just get things working solidly before developing things further as per your suggestions sbright. As you say nothing works quite correctly at the moment so I find it bizarre that your suggesting improvements at this stage, no?

From what Im reading Alex is giving details as to why your suggestions cant be done?
Title: Re: 500d development
Post by: a1ex on 19 / May / 2011, 12:11:58
My ideas won't help at all with matrix (i.e. hi-res) modes. They may only help with a single silent pic, but they are not easy to do. I did a few experiments with SleepLiveViewDevice; it froze LiveView, but then got err70. It's only a starting point for investigation, and you do need to be familiar with the code to try this. Before posting, try to understand how things work, don't just fill the forum with nonsense.
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 13:57:30
I'm noting this bug here, because I don't have an official build.  Although it's happened 3x before, last month.  I turned my 500d off normally at night, with a fully charged battery.  Using the off switch.  In the morning it's dead.  Anyone else?
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 14:05:49
@Jamez - I agree completely!  First step is stability.  I was just thinking ahead.  Sometimes it helps us to think before we plan specifics or begin to implement.  Notice I have not begun coding my ideas.  There are many problems with the 616 buffer build.  Too many to list.  I will be the first one to test it as it gets closer to working.  I seem to be the best person at making it fail!  In many different ways.  It's my specialty ;)

Your SleepLiveView would help!  I agree the intermediate buffer will be difficult.  Way down the road.  I will be familiar with your code before I begin changing it.  That's why I asked for your test results.  I think some of my ideas are good like using your Vsync function.

I am great at testing and documenting bugs.  I am an expert in C and C++, just not this particular code.  I have worked on a similar project involving video sampling years ago.  There were similar issues in synching to overcome.  I don't mean to sound like a know it all.  I just wanted to express my ideas in case they are useful.  If not, you are welcome to ignore them!  I realize your understanding is far advanced to mine when it comes to Magic Lantern.  Coutts and Alex.  Hence the questions.

Have a Great Day!
Title: Re: 500d development
Post by: Jamez on 19 / May / 2011, 14:15:32
It would be nice to see some of this expertise come out in the code then sbright :)
Its easy to test something and say it doesnt work....
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 14:35:47
I will be happy to contribute when it comes time to implement my syncing idea.  Yes, you are right, it is easy to test and say it doesn't work.  Someone has to do this testing properly!  The sync problem must be solved.  First as an idea.  Then implemented.  Otherwise HD Silent Picture is not useful in the real world.  You would not even be able to make a Time Lapse.  Agreed?

We need a project manager to assign tasks.  What specifically can I do to help?
Title: Re: 500d development
Post by: Coutts on 19 / May / 2011, 14:53:21
so today i've been writing down everything and getting all of the buffers straightened out. made an interesting observation :)

6 new addresses, only present while recording (not in video mode idle), and 2 unique addresses in each recording mode.

i think i might have stumbled on the video buffer :)
Title: Re: 500d development
Post by: a1ex on 19 / May / 2011, 15:00:23

The Americans and the Japanese decided to engage in a competitive boat race. Both teams practiced hard and long to reach their peak performance. On the big day the Japanese won by a mile.

The American team was discouraged by the loss. Morale sagged. Corporate management decided that the reason for the crushing defeat had to be found, so a consulting firm was hired to investigate the problem and recommend corrective action.

The consultant's finding: The Japanese team had eight people rowing and one person steering; the American team had one person rowing and eight people steering. After a year of study and millions spent analyzing the problem, the American team's management structure was completely reorganized. The new structure: four steering managers, three area steering managers, and a new performance review system for the person rowing the boat to provide work incentive.

The next year, the Japanese won by two miles!

Humiliated, the American corporation laid off the rower for poor performance and gave the managers a bonus for discovering the problem.

:)
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 15:14:26
I can see the syncing issue does not look so bad on the 550d.  This may be because Alex is using a buffer that updates less often than our 616 line buffer?  So the writing to the buffer overtakes the reading much less often statistically or randomly.  I mean while the reading is in the middle of happening.  Yet it does still happen on the 550d.  I'm hoping Coutts is able to find a slower buffer.  But still HD?  Perhaps it is slow only in movie mode?  I hope I'm using the correct words so everyone can understand me.  I will wait patiently to hear from Coutts.
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 15:29:10
Haha very funny!  True to life.  I'm actually the coach for the girls Outrigger team.  I stand on the power boat and tell them how to paddle.  Doing nothing myself.  That's not the role I want here.

I've noticed something interesting about Outrigger Paddling.  Often I'm the steersmen.  It seems more efficient sometimes when I don't paddle at all.  I focus on keeping the boat straight only.  We have better race times this way.  It's been a tradition for many decades for the steersmen to refrain from paddling, except to steer the boat.  Yet in the 1950's the opposite was true.  He paddled like crazy!  That takes more talent than I have.  To keep the boat straight and paddle hard.  We've discovered the best method thru trial and error.  One person focuses on the direction the boat will take.  Everyone else paddles.

We need some sort of project manager, even on some basic level.  I don't think I would be the best choice.  Although it's what I do at Tricon.  Especially if we have 4+ people contributing to the code.  If someone volunteers to manage the logistics, I will do some coding!  We need someone to steer us.  Find some testers, gather the results, choose what improvements to make.  Decide what is the priority.  Coutts is doing it all now.  And managing himself quite well!
Title: Re: 500d development
Post by: sbright33 on 19 / May / 2011, 15:32:00
Great job Coutts!  I could also be the Cheerleader.  I bet some of those buffers have a slower FPS rate?
Title: Re: 500d development
Post by: Coutts on 19 / May / 2011, 17:14:55
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa2.sphotos.ak.fbcdn.net%2Fhphotos-ak-ash4%2F227341_10150601303335344_704010343_18623229_5326884_n.jpg&hash=1aa139a09c19efae79cbb609a006bb08)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa4.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F229155_10150601304115344_704010343_18623240_4697530_n.jpg&hash=bd0ab31c499f2c07567d14560581772b)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa1.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F228120_10150601304640344_704010343_18623247_3740924_n.jpg&hash=b7a0647b3f5afe871a272103689f7ff0)
Title: Re: 500d development
Post by: Coutts on 19 / May / 2011, 17:27:14
some odd findings...

i began investigating the new addresses i found that are only present while recording (from the 0x8404 pointer above)...



720p recording
dma pointer: 0x8404
buffer locations from pointer: 0x46026830 / 0x48026830
odd.png from img.py using 0x46026830:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi52.tinypic.com%2F2pytgs5.png&hash=5a8375017571be4317d54b28533beffa)

after playing with it and adjusting things:
buffer location: 0x46027002 after adjustments
resolution: 928x530
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi52.tinypic.com%2Frr02n4.png&hash=fac32ee0491f1aafafd7f594f33edb1a)


1080p recording
dma pointer: 0x8404
buffer locations from pointer: 0x46041720 / 0x48041720
odd.png from img.py using 0x48041720:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2Fawrsew.png&hash=6e3a12930b1f20c25210f98b2304c693)

after playing with it and adjusting things:
buffer location: 0x46042fb0 after adjustments
resolution: 1576x961
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi52.tinypic.com%2F152c3gz.png&hash=a173532aca04a70d645800d69a5558a4)

so i don't know.. the buffer addresses from that dma pointer are wrong??
btw i'll try to finish the testing tomorrow. when i'm all done i'll compile a wiki page with everything so it's well documented.
Title: Re: 500d development
Post by: lhwkk on 19 / May / 2011, 22:28:02
Title: Re: 500d development
Post by: Coutts on 20 / May / 2011, 09:12:35
that should be fixed soon, it only happens with magic off, correct?

also i got my hdmi cable yesterday, so I'm going to start locating the hdmi buffers.
Title: Re: 500d development
Post by: sbright33 on 20 / May / 2011, 09:18:34
How about a volunteer simply to organize, manage, update, or clean the Bitbucket site for this project?
https://bitbucket.org/alins/magic-lantern-for-500d/issues

So the programmers can program.  And the testers can test.
Sort of a human interface between them?
Anyone?
Title: Re: 500d development
Post by: Jamez on 20 / May / 2011, 10:15:34
Been doing it for months Sbright, and the wiki.
There is nothing stopping you adding things there yourself rather than asking for others to do it...
Title: Re: 500d development
Post by: sbright33 on 20 / May / 2011, 10:36:21
Great news!  I'm happy to hear it!  Love the Wiki Thanks!  I hadn't read it for months.

As you can see I have added bugs to Bitbucket in the past.  I wasn't aware that it was actively being read by Coutts or anyone fixing them.  I have a huge list to add shortly.  I'm glad you are updating it when a bug gets fixed!  I hope you can delete or respond to silly requests by new users.  Saving Coutts some valuable time.  Would you like some help doing that? 

I assume I cannot update the Wiki myself?  Good work keep it up!  I'm impressed.
Title: Re: 500d development
Post by: Jamez on 20 / May / 2011, 10:44:26
Anyone can update the wiki/bitbucket bug list to be honest most added are duplicates so far.

Coutts is not actively fixing any bugs, no one is AFAIK at the moment. I have spoken to Alex about some and he has offered advice and areas where to look etc.

To be honest, we need the VRAM stuff sorting and as see from Coutt`s posts its what hes been working on. It doesnt require any coding skills as such, just time, and testing. So many of the features of ML require this.
Title: Re: 500d development
Post by: sbright33 on 20 / May / 2011, 12:17:27
VRAM is my priority too!  Making it more stable.  I will be helping Coutts when he has time to Skype me.  I hope to be more valuable with testing and adding the Vsync feature when the time is right.  More than just testing, I can try to understand what is causing the problem...
Title: Re: 500d development
Post by: Coutts on 20 / May / 2011, 12:46:06
I've began to compile a new vram wiki page for the 500d with all of my confirmed findings. This will bring everything together in 1 spot.

http://magiclantern.wikia.com/wiki/500d_VRAM_Info (http://magiclantern.wikia.com/wiki/500d_VRAM_Info)

I'm updating it as I add stuff today. It's going to be nice to have everything in one spot.
Title: Re: 500d development
Post by: arm.indiana on 20 / May / 2011, 16:23:06
I just understand that at
NSTUB( 0x37304, vram_info )

we have got a table with 3 records, with structure is 'struct vram_info'
struct vram_info
{
        uint8_t *               vram;           // off 0x00
        uint32_t                width;          // maybe off 0x04
        uint32_t                pitch;          // maybe off 0x08
        uint32_t                height;         // off 0x0c
        uint32_t                vram_number;    // off 0x10
};

see https://bitbucket.org/hudson/magic-lantern/src/7c9dc58abd31/vram.h
found by Trammel months ago.

so the 3 YUV buffer addresses, size and pitch should be there..

this is confirmed with 550d 1.0.9 and 0x40D07800 / 4c233800 / 4f11d800


Indy
Title: Re: 500d development
Post by: Coutts on 20 / May / 2011, 17:24:33
There are many more than just 3 addresses. So far I have found 8. I have just found 2 new ones with a resolution of 1576x961 while recording in 1080p mode. There will be 2 other new ones in 720p and in 480p modes (while recording).

I wonder just how many are out there??
Title: Re: 500d development
Post by: sbright33 on 21 / May / 2011, 11:31:59
Killing my battery Dead!

This is the 5th time it has happened to me.  Multiple builds for T1i 500d.  I turned my camera off at night with the switch.  In the morning it's dead.  This is very annoying and will get quite expensive!  Could it be that I took out my memory card while it was off?

Anyone else experiencing this for 500d or 550d?
Title: Re: 500d development
Post by: bkkenny on 21 / May / 2011, 12:01:12
I've only had that once, taking the battery out and putting it back in again after using ML usually avoids this problem.
Title: Re: 500d development
Post by: sbright33 on 21 / May / 2011, 12:29:52
That sounds like it might work.  At night it's easier just to leave the battery out!  Put it back in the morning.  Sounds like a solution from the 1970's remember?
Title: Re: 500d development
Post by: utnuc on 21 / May / 2011, 13:52:15
sbright33: It has happened to me 3-4 times as well, regardless of whether my ML card is in or not.  

One potential solution would be to leave the line:
Code: [Select]
magic.disable_bootdiskf = 1in magic.cfg, and leave magiclantern.fir on your card (along with your autoexec.bin).  That way, when you want to use ML, you flash to set the bootflag and reboot.  When you reboot you'd have one session with ML, and the bootflag will be turned off saving your battery when you switch to OFF again.  A hack/workaround that shouldn't be necessary, but suffices for now.

Ben

ps I don't know the ramifications of repeatedly reflashing the bootflag... anyone have any insight here?
Title: Re: 500d development
Post by: mk11174 on 21 / May / 2011, 14:22:39
isnt it just easier to just simply take the battery out when ur not using it, it helps to avoid natural drain anyway, i always take bat out when im not using it, i do this for all my cameras.
Title: Re: 500d development
Post by: sbright33 on 21 / May / 2011, 15:44:22
Yes, that is the best solution.  There is no drain without ML.  It lasts for months.  The problem is it's so difficult for my fingers to open the battery door!  Can we add a garage door opener feature to the next version?
Title: Re: 500d development
Post by: aznguy on 21 / May / 2011, 17:44:13
haha, yea ive posted many times about the battery issue.... just something is really buggy about the bootflag being set. doesnt seem like theres a solution.... i wonder if people using 5D II and the t2i have the same problem.. maybe its just the t1i that has issues..
Title: Re: 500d development
Post by: rexman on 21 / May / 2011, 18:29:39
This from AJ build for 5d

============   (which *only* runs on 5D2 @ 2.0.4)  *BETA*-TEST-VERSION
> === AJ 5.5 ===
> ============    Download 2.0.4 from
> http://www.moiraobrien.com/magiclantern/ (http://www.moiraobrien.com/magiclantern/)


> This version has the following Changes:


> *ML SHUTDOWN:*  Enhancement & Bugfix


> After hearing reports that some ML remnant was sapping power after in
> AJ5.4, added a defence-against-the-dark-arts feature to AJ5.5.  When ML
> shutsdown now, you will see:
> +) Sensor Cleaning
> +) Flashing CF Red LED,
> +) A new flashing* B**l**u**e **LE**D*.  When this Blue light stops
> flashing - ML has shut down completely.


> It works as follows:  I have scattergunned code in every ML tasks loop
> where that increments a counter.   In the shutdown process - It checks every
> 2 seconds until this counter stops increasing.  If it keeps flashing ... you
> Need to take the battery out (and let me know if this is reproducible).
> Using this DATDA measure .. I found and fixed a process that wasn't shutting
> down.  This should solve the Battery Drain issue reported.




haha, yea ive posted many times about the battery issue.... just something is really buggy about the bootflag being set. doesnt seem like theres a solution.... i wonder if people using 5D II and the t2i have the same problem.. maybe its just the t1i that has issues..
Title: Re: 500d development
Post by: a1ex on 21 / May / 2011, 18:55:01
Early 2010 builds of 550D were affected by this, but now it's no longer an issue.

On 550D, it happened when starting the camera without config file. Trying to open an inexistent file on certain cards caused memory corruption. You could detect easily this bug by trying to start the camera again (it won't restart until you take the battery out).

Now it still happens if ML would emulate half-pressing the shutter a lot of times per second (which was needed for trap focus without having to hold the shutter button). This feature is disabled (for this reason).

Here, when the shutdown event appears, all ML tasks will terminate at the next call to msleep. I'm not sure why AJ has problems with this; could be an autoexec.bin too large (on 550D this would cause problems).
Title: Re: 500d development
Post by: sbright33 on 21 / May / 2011, 23:45:39
I have an easier solution to avoid opening the difficult battery door.  Turn off, put in normal memory card.  Turn on, turn off. Go to bed.
Title: Re: 500d development
Post by: aznguy on 22 / May / 2011, 00:35:32
soo as long as we have the memory card with ML inside the camera at the time of turn off then the camera should not drain?
Title: Re: 500d development
Post by: Coutts on 22 / May / 2011, 02:27:19
soo as long as we have the memory card with ML inside the camera at the time of turn off then the camera should not drain?
take your battery out and put it back in, no worries of drained battery then :)

remember ML is still beta...
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 03:36:31
@aznguy - It was in every time when I turned it off.  I removed it to download the images while it was off.  When I turned it on in the morning it was dead.
Title: Re: 500d development
Post by: aznguy on 22 / May / 2011, 05:02:04
yea same here

I have an easier solution to avoid opening the difficult battery door.  Turn off, put in normal memory card.  Turn on, turn off. Go to bed.

yea i tried to do the same before but no luck.

and yea Coutts, thats the only way atm haha thanks for you continuing work btw :)
Title: Re: 500d development
Post by: Jamez on 22 / May / 2011, 08:34:46
Never have I seen someone make such a fuss about removing a battery before!
Amazing.

FWIW, I tested leaving the camera on all night last night with a half charged battery.
The autoshut off worked, and this morning... I still had half a full battery.
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 10:12:47
It's not that I'm too lazy to take the battery out.  What about the 1000 future Canon/ML users who are not aware of this problem?

Your cynical tone is not appreciated.  I'm trying to help!  Please try to understand my point of view Jamez.  I have found a solution on my own without getting into the code.  This was a major problem for me.  If the battery goes dead SOMETIMES, how can I predict when it will happen again?  It is too often.  It can happen while I stop shooting to eat lunch.  It can happen during the day when I'm awake.  You want me to take out the battery 10x a day?  This is too much work.  I am sorry, but my fingers can not operate the battery cover.  There must be a better solution.  I have described it above.  Just because you have success one time, does not mean there is no bug.

I did not leave the camera on.  I turned it off with the switch.  Different circumstances.

Why can't we all just get along?  And be nice!
Title: Re: 500d development
Post by: bjacklee on 22 / May / 2011, 10:40:30
I never encounter this battery problem so far. lucky me... :D
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 10:48:09
The problem has been solved for the 550d.  Why can't we do the same thing here?  It seems like a worthwhile effort considering the frequency and consequences of the error.  Am I the only one who feels this way?  Then I guess I'm the only one working on it...  ;)
Title: Re: 500d development
Post by: pat_loonytoon on 22 / May / 2011, 11:33:20
No offense sbright23 but this is better meant for https://bitbucket.org/alins/magic-lantern-for-500d/issues under issue #63. We keep issues there so that things are a bit more clean on here. The guys do read them and get to them but you gotta be patient.
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 11:46:07
Jamez has asked me to refrain from posting issues on this forum.  He seems to be the person in charge here.  Goodbye everyone!  Those who need to reach me for help programming know how to do it already.
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 11:52:50
Pat thanks for your kindness!  That's the politeness I've come to expect as a professional.  Coutts, I'm glad you have recognized that my issue is valid.  Your solution is great, but you cannot expect it to work for a new ML user as your firmware gets more popular.
Title: Re: 500d development
Post by: bjacklee on 22 / May / 2011, 11:57:56
OooopS! All I can do is smile.. :) guys lets just be positive on this.. ML exist to make 500D users happy! :D @Coutts: Thanks a lot for the effort and to the rest of the developers... thank you! :D
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 12:25:30
The reason I have been posting issues and concerns here for the last 5 months, is that I wanted to get feedback and inform those users who do not read the bug list daily on the other website.  Anyone want me to continue?
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 12:27:58
What are the guidelines for me to consider before I post?
Title: Re: 500d development
Post by: arnarg on 22 / May / 2011, 13:24:26
What are the guidelines for me to consider before I post?
Start using the modify button so you don't double post?
Title: Re: 500d development
Post by: Samsongas on 22 / May / 2011, 13:26:45
Could you please calm down? We are in a community, it is normal to have people who is a little bit unkind, prepotent, etc. If you can't withstand, you are not in the right place. Just don't overflood.
Title: Re: 500d development
Post by: Jamez on 22 / May / 2011, 13:38:29
Jamez has asked me to refrain from posting issues on this forum.  He seems to be the person in charge here.  Goodbye everyone!  Those who need to reach me for help programming know how to do it already.
Yes I did in a PM as a reply to your question. If all your going to do is just go over the same battery issue thats already logged, whats the point in flooding the forum. Over one third of your posts you have made are about this.

Incidentally I ported Alex`s Night vision color palette for false color and will give the code to Coutts.
Title: Re: 500d development
Post by: Coutts on 22 / May / 2011, 16:51:51
Jamez has asked me to refrain from posting issues on this forum.  He seems to be the person in charge here.  Goodbye everyone!  Those who need to reach me for help programming know how to do it already.
Yes I did in a PM as a reply to your question. If all your going to do is just go over the same battery issue thats already logged, whats the point in flooding the forum. Over one third of your posts you have made are about this.

Incidentally I ported Alex`s Night vision color palette for false color and will give the code to Coutts.
just push it to the repository ;)
Title: Re: 500d development
Post by: MikeEYK on 22 / May / 2011, 17:20:50
new.

i want to check out the beta a friend told me to mod my camera.
 ive been looking into it following this board for a while. well this specific thread, and wiki page.
it seems stable enough to give a try but i have some questions and i figure id ask you guys since you seem to know the most.

- will it erase my firmware i have now? can i get it again?
- is the new firm ware pretty easy to figure out?
- can someone post a link(s) to whatever i wil need to download.

i just want to be able to take more shots per second and adjust the recording to 60 fps if possible.. is that possible?

i dont know if i should ask some where else.im sorry in  advance if i should have.
Title: Re: 500d development
Post by: aznguy on 22 / May / 2011, 17:27:26
Welcome to ML, as of now manual movie controls and fps changes are not possible.

If you still want to have ML on hand just go here http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i) for all information and download links as well as a installation guide. ML does not flash (overwrite) your current firmware in anyway besides setting a bootflag that will enable your camera to boot the ML firmware off of your memory card. Whenever a new ML release comes you, all you have to do is replace the current ML firmware file on your memory card with the new one, simple as that.

I hope this helps. Read the installation guide to get started and download the current versoin (beta 1.5 i believe) from the link i posted above
Title: Re: 500d development
Post by: sbright33 on 22 / May / 2011, 17:32:29
I don't understand what you mean by the modify button and double posting.  Jamez that's not true.  I have replied over 100x total.  Only a few about the battery.

Modified: Oh I see thank you.  I didn't mean to inconvenience you.
Title: Re: 500d development
Post by: aznguy on 22 / May / 2011, 17:34:53
I don't understand what you mean by the modify button and double posting.

just go to your previous post and look to the right of the title where the quote button is. if the posts is yours, you should have a modify button that will let you revise your post instead of posting another one.
Title: Re: 500d development
Post by: sbright33 on 23 / May / 2011, 08:25:22
Something is wrong with Bitbucket today.  The entire site?  Is it just me seeing it?
https://bitbucket.org/alins/magic-lantern-for-500d/issues
Title: Re: 500d development
Post by: mk11174 on 23 / May / 2011, 09:07:54
Something is wrong with Bitbucket today.  The entire site?  Is it just me seeing it?
https://bitbucket.org/alins/magic-lantern-for-500d/issues
hmm, i dont see anything wrong with the site, unless i am looking for the wrong thing, it all seems up and running fine.
Title: Re: 500d development
Post by: Coutts on 23 / May / 2011, 11:04:35
can a mod please clean this thread up? the last couple pages at least, i'd like to get back on topic..

i'll send some home made cookies to anyone who can figure out the property for video recording mode on the 500d :D that's all that's holding me back from implementing all of the resolutions I found.
Title: Re: 500d development
Post by: sbright33 on 23 / May / 2011, 11:48:18
The site has cleared up it's certificate problems and is now working.

@Coutts - I'm sorry about all the drama created by certain individuals who don't like to discuss technical issues.  I'll stick to the facts from now on.
Title: Re: 500d development
Post by: Jamez on 23 / May / 2011, 12:36:42
new.

i want to check out the beta a friend told me to mod my camera.
 ive been looking into it following this board for a while. well this specific thread, and wiki page.
it seems stable enough to give a try but i have some questions and i figure id ask you guys since you seem to know the most.

1)- will it erase my firmware i have now? can i get it again?
2)- is the new firm ware pretty easy to figure out?
3)- can someone post a link(s) to whatever i wil need to download.

4)i just want to be able to take more shots per second and adjust the recording to 60 fps if possible.. is that possible?

i dont know if i should ask some where else.im sorry in  advance if i should have.

1) No it wont erase your firmware
2) Not really to be honest, the next version released has help text lines ported from Alex`s 550D code, and the manual helps
3) Its all on the wiki
4) No, this is not possible at present.

For our resident expert coder who still has done precisely 0 coding....
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fwww.russiablog.org%2FDontFeedtheTrolls.jpg&hash=f677061735d394fbfc9bc92cb432c543)
Title: Re: 500d development
Post by: observer on 23 / May / 2011, 13:12:43
Coutts has written less than 10 lines of code so far. As for Coutts being "talented" nothing could be further from the truth, he's getting daily help from Alex who is helping him fix things. The last 5 builds were mostly through Alex giving Coutts help. Coutts jumps from A to Z with no idea what hes doing, or what hes trying to achieve. I know this as I speak to him almost daily.
Title: Re: 500d development
Post by: sbright33 on 23 / May / 2011, 13:17:53
HEY Jamez!  Please stop picking on Coutts.  He is great at figuring things out in the code.  He has been doing an excellent job here.  Let us get some work done while you grow up.  Go back to your list of bugs and change the status of them all to Resolved.  Please go away.

Modified:  The purpose of this forum is NOT to answer questions from new users.  Coutts kindly asked you to clean this mess up and stop whining.  It is for developers to discuss code and raise issues to be resolved.  You can't blame a newbie for asking.  Please take it offline to another forum.
Title: Re: 500d development
Post by: Jamez on 23 / May / 2011, 13:21:19
Grow up sbright, for the record im in Tokyo Japan, lets see where the IP traces back to, Ill be a billion quid its not here.
Title: Re: 500d development
Post by: sbright33 on 23 / May / 2011, 13:32:26
> For our resident expert coder who still has done precisely 0 coding...

You said it in YOUR post.  Aren't you the moderator on here?  Check the IP's to see who is logging in with your username.  You sure act like you're in charge anyway.  Stop arguing and go fix some bugs!
Title: Re: 500d development
Post by: Jamez on 23 / May / 2011, 14:22:27
I was quoting your post Steve
I am an expert in C and C++
Im not arguing with anyone, neither am I logging into other sites, pretending to be other people trying to cause trouble. We are still looking forward to your expertise... its nice to have an "expert" on board.
Title: Re: 500d development
Post by: PHrag on 23 / May / 2011, 15:49:57
where are the times when everybody requested 30fps@1080p, just stop with this guys, take your productive discussion on PMs :-)
On a side note, I showed ML to my teacher of photography class and he was really surprised by it. He loved audio trigger and LCD remote trigger, trap focus and all the stuff. Then he said that he's sad he has nikon ^^
Title: Re: 500d development
Post by: sbright33 on 23 / May / 2011, 16:06:10
I second that!  Why can't we all just get along?  Peace at last.  When are we going to have 30fps?  ;)
Title: Re: 500d development
Post by: mk11174 on 23 / May / 2011, 16:23:22
i third that, when r we gonna have manual video control, lol 8]
Title: Re: 500d development
Post by: a1ex on 23 / May / 2011, 16:49:47
PHrag: did you show him the option with "Take pics like crazy"? :)

BTW, Nikon has trap focus as far as I know. Also, they can zoom in after taking a picture without having to press Play. With Magic Lantern, you can do the same on Canon.
Title: Re: 500d development
Post by: Coutts on 23 / May / 2011, 19:45:50
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2F2w3vlo4.jpg&hash=8015b06110175762392d742efcfb98d7)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi56.tinypic.com%2Fzlevo.jpg&hash=0205f30203473cb676955bd77e8e4987)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2Fjz8gf8.jpg&hash=13aeebadd8630648dcc4a6252688482d)

clicking on restricted mode:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi56.tinypic.com%2Fzxqqyu.jpg&hash=bd2a051b0687569d68185715435c2af9)

the same password screen comes up for the system admin one too.. i can move through the character selection but pressing set doesn't enter anything.

hmm... what do we have here???
Title: Re: 500d development
Post by: arnarg on 23 / May / 2011, 19:53:32
That looks interesting! how did you get that?

EDIT: nevermind, saw it on twitter :P
Title: Re: 500d development
Post by: mk11174 on 23 / May / 2011, 20:34:30
wohhhh!!! that looks exciting, what the heck is it for? hope u find out!!!
Title: Re: 500d development
Post by: rexman on 23 / May / 2011, 23:16:25
This may explain a little

http://thephoblographer.wordpress.com/2010/10/28/quick-hands-on-with-the-canon-7dsv/ (http://thephoblographer.wordpress.com/2010/10/28/quick-hands-on-with-the-canon-7dsv/)

Looks like a leftover from the 7d Studio Version.
Title: Re: 500d development
Post by: mk11174 on 24 / May / 2011, 04:46:21
This may explain a little

http://thephoblographer.wordpress.com/2010/10/28/quick-hands-on-with-the-canon-7dsv/ (http://thephoblographer.wordpress.com/2010/10/28/quick-hands-on-with-the-canon-7dsv/)
hmmm, that does make u wonder if canon uses it to restrict us from the features that t2i has, like 24p and manual video control in movie mode, damn canon!!!
Title: Re: 500d development
Post by: gravityrem on 24 / May / 2011, 05:35:07
Would it be that easy Mk ?

Ok, what would be the best way to try to find the password ?
any idea where to start ?
compile Canon's firmware ? is that possible ?
Title: Re: 500d development
Post by: mk11174 on 24 / May / 2011, 05:39:52
would be nice, but on that webpage rexman posted it says the menu is used to restrict access to features such fps shooting, etc.. so that sounds like it might be what they can use, why would they hide it and use a password, so it does sound interesting, but can these guys get past the password to find out???
Title: Re: 500d development
Post by: aznguy on 24 / May / 2011, 05:43:16
Thats soo cool! i wonder if we can find a way to get the pw....
Title: Re: 500d development
Post by: mk11174 on 24 / May / 2011, 06:21:22
anyone know how to simulate a constant press of the exsposure lock button, the little star button also known as the zoom out button, i notice that when you switch to one of the odd iso number like 160, 320, 640, well after you switch using magic lantern, it goes back to its estimated iso in a couple seconds, the only thing that holds it in place is if you press and hold that star button, once you release it, it goes back to estimated in a few seconds???

forget it, it seems it stays only in live view while using ML, if your out of live view it thats when it resets in a few seconds, but at least it stays set in live view just fine even though canons menu shows the estimated iso setting, would be nice to figure out how to get it to stay put in non live view mode though other then holding in the shutter half way, or the dof, or the ae lock button, all seem to keep it locked until you let it go while in non live view mode 8/
Title: Re: 500d development
Post by: a1ex on 24 / May / 2011, 07:35:40
Basically, simulating button presses can be done by injecting fake events in GUI main loop.

See http://magiclantern.wikia.com/wiki/DevFAQ (http://magiclantern.wikia.com/wiki/DevFAQ) for how it's done on 550D, but keep in mind that 500D's loop is different.

Another method may be to send messages to gui_main_task's message queue.
Title: Re: 500d development
Post by: Jamez on 24 / May / 2011, 09:26:23
Why would you want to limit features/functions?
I cant think when/why that would come in use.

PS Alex has fixed a bug with the intervalometer today, and ive ported it, and whilst im there
- Also added Focus delay
- Wider range of stack focus ranges
- Lens focus delay
- Bug fix on Rack focusing
- Moved the menu left a bit so we can see all of the options the last (i) wasnt being shown properly
- NB Code is not on bitbucket at present.


PPS I`ll match Coutts offer of free cookies for the property value we need to get all the VRAM related features working properly....
Title: Re: 500d development
Post by: Coutts on 24 / May / 2011, 11:22:02
Basically, simulating button presses can be done by injecting fake events in GUI main loop.

See http://magiclantern.wikia.com/wiki/DevFAQ (http://magiclantern.wikia.com/wiki/DevFAQ) for how it's done on 550D, but keep in mind that 500D's loop is different.

Another method may be to send messages to gui_main_task's message queue.
ctrlman_dispatch_event() can inject events, I've tried this a couple times.
we can't use fake_simple_button() though because of the differences in the 500d and 550d. The 500d is more like the 5d than the 550d for some reason.
Title: Re: 500d development
Post by: sbright33 on 25 / May / 2011, 11:25:33
I'm writing this bug here because I didn't want to paste links in Bitbucket without interaction.  You might be interested because of the newest bug fix in the Intervalometer mentioned above.  I have taken 10,000+ pictures so far in 2 days.  The problem is consistent across builds, at least when the interval is less than 20 seconds or so.  I have reset my camera and deleted the config.  Here is my description:  

3 pictures are triggered at about the desired interval.  Then it skips, or pauses, for 5 seconds or more.  Is this the bug you have fixed?  I would be happy to paste a link to the video or individual JPG's.

Am I eligible for the cookies if I suggest or implement a workaround?  An alternative to Properties.
Title: Re: 500d development
Post by: bkkenny on 25 / May / 2011, 11:32:48
Title: Re: 500d development
Post by: a1ex on 25 / May / 2011, 11:56:16
When display is off, the camera enters in some kind of sleep mode, where msleep calls may take much longer than normal. 550D ML tries to avoid this by simulating half-shutter presses every second when display is off.

To select NoWait mode, press the LV button (I think). On 550D it's [Q].
Title: Re: 500d development
Post by: adijiwa on 25 / May / 2011, 11:57:34
On the 500D it doesn't seem possible to change out of the "Wait" mode. Thoughts anyone?

Use the LV button to switch to Wait/NoWait.
Title: Re: 500d development
Post by: sbright33 on 25 / May / 2011, 12:06:39
I have spent 10 hours of my time making this video and trying to fix the problem.  It's much easier to see it than explain the defect.  It's subtle, but something that must be fixed before the Intervalometer can be used creatively on the 500d.  I'd be happy to help, but first I want to understand what has already been done to remedy the issue.

Thanks Alex I will try your suggestion!  Will get back to you shortly.
FYI my camera is not set to sleep, the screen is always on during this process.
Title: Re: 500d development
Post by: sbright33 on 25 / May / 2011, 12:52:05
Tried NoWait, the problem is much worse.  Using 1 s interval, sometimes the pauses are up to 20 s long.  The results are random.  Using 3 s interval it is a little better, still sometimes 10 s.  Using 10 s interval, it is barely noticeable, but still sometimes takes up to 15 s.  Instead of looking at the actual results I've learned to read the red light on the camera, after taking 10,000 shots in 20 different locations.  Sometimes it works, but usually not!  

This issue is making matters worse: The display turns off randomly between intervals, when set to sleep.  Am I on to something?  This may be related?  But the problem still exists in either mode.

Alex, if this is the bug you have already fixed I will try the newest build again.  It didn't seem to make a difference the last time I tested it.

Edit: Tried it in Shutter mode, the problem is still there, but not as bad or as obvious.  Since you would never use 1 s for long anyway, it appears to be perfect, but that is just an illusion if you investigate further.  PS- I may be on to another hint for the battery problem.  It appears to get warm consistently whenever you take out the card, even when the switch is off?  If this is the case the problem could occur at any time during a shoot, whenever the card is out.
Title: Re: 500d development
Post by: Coutts on 25 / May / 2011, 18:21:16
I've been going through the dump all day, I decided to look around for some more things related to fps and manual video controls, just for the hell of it.

I think i stumbled on the property for video size :)

this output from the decompiler was interesting looking:
http://i53.tinypic.com/dw3udc.png (http://i53.tinypic.com/dw3udc.png)

then Alex pointed out that this looked similar to how the property was called in the 550d for video resolution. So I put in a prop_handler for 0x2050010 and it looks like it might be it!!

now to see if we can change this property ;)
Title: Re: 500d development
Post by: gedas5 on 25 / May / 2011, 19:08:34
Will keep fingers crossed for Coutts that fps and manual video controls will finally work as well as video size...that would be simply amazing...  :)
Title: Re: 500d development
Post by: pat_loonytoon on 25 / May / 2011, 20:02:01
Hopefully a build will be made if it is :) It's been a little while since the last one.
Title: Re: 500d development
Post by: Coutts on 25 / May / 2011, 20:55:33
something interesting, i was going through the dump some more and found a function that printed information about free memory, here's where the 500d stands, I'm curious how the 60d and 550d are. I'll have Alex try it out tomorrow.

location: 0xFF1DE0D8


from dmlog:
Code: [Select]
[FAC] GetFreeSizeOfMemory Free[3534280]
[FAC] GetTotalSizeOfMemory [10485760]
[FAC] GetSizeOfMaxRegion [3329964]
[FAC] GetNumberOfAllocatedBlock [5230]

Soo exaclty 10mb of memory with 3mb free still????
Title: Re: 500d development
Post by: Jamez on 26 / May / 2011, 01:52:56
Hopefully a build will be made if it is :) It's been a little while since the last one.
Thats because theres been no real progress on anything, nothing else is really fixed at this point so little point in releasing one until it is.
Having said that though have a look at this (sorry about the photo, its from my phone)....
Alex`s new coloured menu, with icons ported
(You can also see the help messages at the bottom of the screen that I ported recently)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fimg843.imageshack.us%2Fimg843%2F8703%2F1105261454481.jpg&hash=7d9162bdb97ade833cda58ecba87b7b1) (http://imageshack.us/photo/my-images/843/1105261454481.jpg/)
Title: Re: 500d development
Post by: pat_loonytoon on 26 / May / 2011, 02:27:29
I know, just anxious :)
Title: Re: 500d development
Post by: gravityrem on 26 / May / 2011, 02:28:20
geeze, jamez it's even getting sexy lookin' ! good job on the help messages. That's gonna help the beginners, and make that awsome firmware popular. You guys really deserve it !
Title: Re: 500d development
Post by: Jamez on 26 / May / 2011, 03:03:07
Interestingly the icons (which change when you change the settings incidentally) show where some of the problems lie, ie property values that havent been found, ie you cant turn some things off.
Ive also ported some of alex`s recent fixes (another intervalometer one).
PS Porting is pretty easy in comparison to actually understanding how everything works, and writing it, all thanks go to Alex.
Title: Re: 500d development
Post by: Coutts on 26 / May / 2011, 07:50:32
Try porting debug.c from the early alpha stages to recent 550d builds,  tel me how easy that is ;)

Im curious what other properties reside in 0x20500xx range.
Title: Re: 500d development
Post by: sbright33 on 26 / May / 2011, 08:59:00
Thanks everyone for listening and working so hard. Should I test it again? Was his fix related to my post? Let me know when you're ready.

Edit: I've gotten no response since yesterday, so I looked in your code.  Clearly this fix will not resolve the issue I raised.
Title: Re: 500d development
Post by: Coutts on 26 / May / 2011, 15:05:47
i think there might be properties for the custom function groups:

0xFF2DD158 - GUI_SetCFnForTab1 - 0x80010004
0xFF2DD204 - GUI_SetCFnForTab2 - 0x80010005
0xFF2DD390 - GUI_SetCFnForTab3 - 0x80010006
0xFF2DD400 - GUI_SetCFnForTab4 - 0x80010007

Right now only the property for cfn tab 1 is defined / used, and bitwise operations are used to turn different custom functions on/off (HTP, MLU, etc). This might fix ALO toggle (right now it's either ALO std or HTP, different ALO values aren't selected for some reason).
Title: Re: 500d development
Post by: Coutts on 26 / May / 2011, 21:36:18
merged to the latest 550d codebase again, took all day to figure out. Had to find 14 new stubs so that took the longest time, but no problem because I'm really getting comfortable with the 500d dump and IDA :)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa2.sphotos.ak.fbcdn.net%2Fhphotos-ak-ash4%2F250718_10150613038205344_704010343_18740514_5635548_n.jpg&hash=1d1248e105790a491af8bfa5525046e5)

full screen menu is implemented too, but we have one roadblock. I've emailed AJ asking for a fix so we'll see, crossing my fingers that he has an idea! Here's some of what I sent to him, to bring everybody up to speed:

Quote
Alex has a function called fake_simple_button which simulates button presses. The 550d has a function at 0xFF020878 which is called by fake_simple_button (defined as GUI_CONTROL in stubs I believe). The 500d (like the 5d2), has this function built inside gui_main_task, so as a result fake_simple_button does not work.

In this version of Alex's latest code he has switched to a full screen menu, which fakes a menu button press when the ML menu task starts (to bring up the canon menu), thus eliminating the menu flicker problem associated with the EV bar redrawing the screen while metering was active.

So the problem is, I can't implement this right now, because I can't use fake_simple_button. I am going to look into things and see if maybe I can call ctrlman_dispatch_event() to inject an event (I first have to see if there is an event that happens when the menu button is pressed), it might not work.

The only other option I can think of is find a function in the dump that opens the menu dialog, and just call that. But I'd need to find that first.

so getting closer :)


-by the way, GuiEdLedOn / GuiEdLedOff defined in the stubs file operates the blue led on our direct print / live view button, boy is that sucker bright :)
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 00:11:52
Glad to see you decided to keep the black background rather than grey :)
Incidentally theres a small bug that I reported to Alex, Under shoot > HDR Bracketing the icons are reversed (ie green is showing when its off).
Edit: Looks like he fixed the above as its not in the latest code.
Title: Re: 500d development
Post by: silasje1 on 27 / May / 2011, 01:23:44
can you release a new build? im going to F1 monaco :)
Title: Re: 500d development
Post by: pat_loonytoon on 27 / May / 2011, 01:58:41
Monaco is pretty plush, you have family there?
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 06:40:16
silasje1 - check your email, likewise yours pat.
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 08:09:52
it's not very stable - might want to use magic_off ;)

after flipping your the camera on, immediately start pressing the shutter half way and releasing a few times, it should say MAGIC OFF and ML won't boot :)
Title: Re: 500d development
Post by: silasje1 on 27 / May / 2011, 08:23:54
Monaco is pretty plush, you have family there?
going there forf Formula 1 (F1)
Title: Re: 500d development
Post by: gravityrem on 27 / May / 2011, 08:26:30
Some underground Builds are sent via email ? huh ? lol
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 08:30:50
yep :)
Thats usually the way in software development, a select few get it before the rest, usually those that have actively worked on the project in some way, and dont just criticise it. You can compile the code on bitbucket if you want, its all there but its more buggy than the last release.
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 08:57:58
Criticize?  It's called Testing!  

Something we will need to do,  sometime in the future.  Let's all try to keep our feelings out of the development process OK?  Coutts is on board with that!

My code has branched off from Coutts efforts, if anyone wants a stable build where the Intervalometer actually works, instead of a pretty menu.  Sorry Jamez I couldn't wait anymore!

Another cool feature I've implemented is Silent Picture 5-10x zoom without any lines in the middle.  Even during panning. Need a descriptive name for this anyone?  Superzoom?  Spyzoom?  Magic Telephoto?

I've been focusing my testing efforts on a specific issue because you keep saying you fixed it here in the forum.  I got tired of going in circles and fixed it myself instead.  I've been hoping we can integrate our code development and our efforts, but it looks like this will be impossible without cooperation.

Here is an example of what is possible with a working Intervalometer and a short interval.
https://sites.google.com/site/myvid33/clouds
Title: Re: 500d development
Post by: a1ex on 27 / May / 2011, 09:23:57
Why not posting a link to your bitbucket clone, or a patch?
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 09:38:12
I don't feel the need to use Bitbucket, since it appears I'm going to be working alone anyway.  How do I make my build into a patch?  Your code has changed so much since I've started.  I know how the process is supposed to work in theory, at my job for example, but it requires communication when there is more than one developer.
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 09:54:00
LOL that made me laugh Steve, Alex has communicated pretty much every single colon hes coded, your clearly looking in the wrong place.

And whilst im here a very fundamental basic approach that any so called project manager studies is error reporting.
At the very least any novice  (let alone an "expert" like yourself) knows that you need to report the following..
1) What build version you tested
2) How to replicate the error.
As you have failed to do even this, I suggest you take your own advice!

PS if you care to look theres at least half a dozen or more new features in that "pretty menu".
Display profiles, more debugging options, new cropmark options, exposure simulation, Motion Detect, Buffer warning level, ability to force liveview, ghost image, and split screen for just a start.
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 10:05:06
The problem occurs in all builds I have tested.  I specifically stated that repeatedly.  Anyone can replicate the error.  Start by resetting the Canon Menu's and deleting the ML config.  Any questions about that bug, please just ask politely.  The process to replicate that error is simple.  Just attempt to use the feature with a short interval less than 10 seconds.  It happens every time.  It's not hard to replicate.  Why do you choose to be so difficult during this process?

Alex has been great!  I meant communication with you.  You are the one who is "Porting" into our Bitbucket almost daily, while ignoring the real issues multiple users have verified.
Title: Re: 500d development
Post by: arnarg on 27 / May / 2011, 10:06:13
It smells an awful lot like there's a troll among us...
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 10:10:07
I don't see the big deal here. If sbright wants to make his own branch, let him. It's an open source project, anybody can work on it and do with it what they please.

If however you are now starting your own branch, I will ask that you refrain from posting here any further as your input is no longer relevant to the "official" 500d ML project. If you want to continue to test my builds, feel free, but please do a better job of summarizing posts. I'd prefer to keep this as a development thread as the title suggests.

With that out of the way, I'm going to start working out some bugs today. AJ got back to me about fake_simple_button but i am still unsure what I'm going to end up doing. For now I'll fix what I can, and hopefully in due time as I continue to learn more, I will be able to fix more.

2 months ago I couldn't even setup a compiler :P
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 10:15:33
The problem occurs in all builds I have tested.  I specifically stated that repeatedly.  Anyone can replicate the error.  Start by resetting the Canon Menu's and deleting the ML config.  Any questions about that bug, please just ask politely.  The process to replicate that error is simple.  Just attempt to use the feature with a short interval less than 10 seconds.  It happens every time.  It's not hard to replicate.  Why do you choose to be so difficult during this process?

Alex has been great!  I meant communication with you.  You are the one who is "Porting" into our Bitbucket almost daily, while ignoring the real issues multiple users have verified.
I am the only one who has committed to the bitbucket in the past 2 months, and to be honest, i find it offensive that you are attacking me, telling me that you aren't happy with the hundreds (probably close to 1000 if not more) hours I have put into this. In the past 3 days alone I've put over 25 hours into it. If you aren't' happy, take your business elsewhere. If you aren't happy with the progress, feel free to contribute. You've done nothing but report issues and claim you have been fixing them, but we have yet to see any source.

The least of my worries at this point are the smaller features, there are bigger things that need to be fixed related to the overall stability of magic lantern.

I'm growing tired of this, and to the best of my knowledge you already don't have the best reputation in the magic lantern community outside of the 500d. I suggest you stop now before proceeding any further.
Title: Re: 500d development
Post by: a1ex on 27 / May / 2011, 10:24:17
A developer making his own fork doesn't mean he works separately; anyone can make forks just for the purpose of sharing his changes. Whenever he makes something interesting, he may send pull requests.

Let these be your friends:
Quote
hg clone <repo>
hg pull <repo>
hg commit -m "I did this and that"
hg push
hg diff > my.patch
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 10:31:46
I didn't mean to criticize you at all Coutts.  It's exactly that stability that I've been working on.  My previous post about Porting is not referring to your development efforts at all, you have misunderstood.  I'm very happy with your efforts!

FYI Jamez, my build includes all of the features you listed except one: Major instability!  No offense to Coutts.
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 10:44:47
picture of focus peaking being offset, james says this doesn't happen for him :o

it's just focus peaking, so i'm gonna have to look in zebra.c


(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2Fr6wcbo.jpg&hash=9923ce0969e3d6333c42d1e3ff283928)
Title: Re: 500d development
Post by: gravityrem on 27 / May / 2011, 11:02:07
@coutts : im sending you my email, if you want i can try your build and tell you if the focus peaking is offset or not on my camera.
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 11:20:11
hmmm ive just tested this again, and can report the same Coutts (now I can see what your refering to, I thought you were referring to something else). It wasnt like this in the previous build im pretty sure, so prob worth comparing the 2 files, maybe the pitch is wrong?

Edit: Alex informs me its not the pitch thats wrong
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 11:39:01
It's obvious, you can see it by looking.
Title: Re: 500d development
Post by: RoaldFre on 27 / May / 2011, 12:25:56
Hi guys,

I've been playing with ML some time ago (very early alpha builds). I've done some memory dumps to figure out some initial VRAM addresses back then. One day, when making a memory dump, ML stopped booting and  I can't get it to boot ever since. The standard Canon stuff is still fine, though.

Possible cause:
Around that time, I was performing memory dumps in the 0x4 segment (on a very alpha code base). I also did repeated two succesive series of dumps from 0x0 to 0x4, though that would crash the camera often midway.
I also tried some dumps of the higher segments (all the way up to 0xF). The segments above 0xC (iirc) seemed very slow to dump (mapped to (slow?) rom?) and caused very frequent crashes. I never really tried  dumping those again, but I believe that's about the time the problem started, so it may be related.
If I recall correctly, those crashes involved that the camera would stop dumping to the card midway dump (write LED of sdcard turned off) and I could not turn the camera off by flicking the on/off switch, so had to pull out battery.
I may have gotten some err:xx as well, don't remember exactly.

I've been unable to lead any autoexec.bin file since.


Tried remedies:
Obviously, I made sure the card was bootable, and double checked by dumping and examining the first sectors of the sdcard.
I've tried using churchin's .fir file from the opening post to set and unset/set the boot flag multiple times, without succes.
I've tried reflashing the stock Canon firmware and re-installing ML, without succes.

Peculiarity:
If I recall correctly, using Churchin's .fir to set the boot flag is supposed to crash the camera. The install guide explicitly says to take out the battery when the write LED goes off.
When installing ML for the first time, that .fir file did indeed crash the cam iirc, in the way that flicking the on/off switch did not turn the camera off and I needed to take out the battery.
If I use the .fir file now, I can just turn of the camera normally afterward. It turns of cleanly and I get the "sensor clearing" picture.
This makes me think it's somehow not setting the actual flag.

Another thing:
Trying to disable the bootflag from the config file by adding the line:
magic.disable_bootdiskf = 1
to the file magiclantern.cfg (and I've also tried magic.cfg, as they both seem to be mentioned here and there) still makes the .fir display "Set bootflag". Is this normal, even if you want to unset it?


Questions:
1) Has anyone ever had something similar happen and/or has a fix?
2) For the .fir file from churchin at the opening post of this thread: if you set the config file to unset the bootflag, is it supposed to show something different then "Set bootflag" on the screen?
Title: Re: 500d development
Post by: Jamez on 27 / May / 2011, 12:37:02
I think its meant to say **disable_bootdiskf** if its working
Source: http://groups.google.com/group/ml-devel/browse_thread/thread/63e3d3160f08bd65/391b3fd04bbaaf4d?lnk=gst&q=bootflag#391b3fd04bbaaf4d (http://groups.google.com/group/ml-devel/browse_thread/thread/63e3d3160f08bd65/391b3fd04bbaaf4d?lnk=gst&q=bootflag#391b3fd04bbaaf4d)
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 12:56:26
I had a similar problem when I was doing memory dumps with the latest build 1.50.  Look I mentioned a build number!  The only solution I could find was to return the camera to Canon under warranty.  If you're doubtful, James, I have the receipt.  

Be careful Developers!  Anyone USING a popular build should not worry about this.

To anyone who is interested in all the drama going on behind the scenes by PM:
If you want to verify my personal integrity and honesty I offer you my password to this account.
There in my Inbox you will see all the BS I have to put up with daily.
A bunch of children calling each other names!!!
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 14:52:50
after playing around with things for about an hour or so, I finally figured out how to catch the AV button event :) so I set the AV button as the button to center the LV AF frame.

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/8a6a84a4cda6
Title: Re: 500d development
Post by: mk11174 on 27 / May / 2011, 15:17:55
after playing around with things for about an hour or so, I finally figured out how to catch the AV button event :) so I set the AV button as the button to center the LV AF frame.

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/8a6a84a4cda6

Yeah Yeah Yeah, stop showing off mr smarty, lol, nice find, great job figuring that one out!!!
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 16:47:33
working on fixing up menu flickering now (making menu stable again). shouldn't be any flickering at all now now that we're using the full screen menu from alex :)
Title: Re: 500d development
Post by: mk11174 on 27 / May / 2011, 16:57:31
working on fixing up menu flickering now (making menu stable again). shouldn't be any flickering at all now now that we're using the full screen menu from alex :)
awsome cant wait to try fullscreen mode, been holding off on compiling it myself till you get that going 8]
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 17:28:45
check latest commit. there's 1 bug where the af box won't stay put in movie mode, but i'll fix that later tonight. menus are pretty much perfect though as far as stability goes.
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 18:43:52
Alex has demanded from me a public Apology to Jamez so here it goes...

I'm sorry for repeating what Jamez wrote to me with a PM forwarded to 3 members here.  It was inappropriate, and from now on I will mind my own business if you two want to fight.  If you do not believe what I'm saying is true I will offer my Chdk password so a third party can verify what I'm saying.  Just go to my Inbox and look at Jamez email from 5/22.  There are 5 Emails, each worse than the last, and they go like this:

Coutts has written less than 10 lines of code so far. As for Coutts being "talented" nothing could be further from the truth, he's getting daily help from Alex who is helping him fix things. The last 5 builds were mostly through Alex giving Coutts help. Coutts jumps from A to Z with no idea what hes doing, or what hes trying to achieve. I know this as I speak to him almost daily.
- Jamez

OR WE CAN JUST STOP THIS RIDICULOUSNESS AND GET TO WORK!
Title: Re: 500d development
Post by: a1ex on 27 / May / 2011, 18:55:12
And an apology for you using a fake account named "Jamez"?

http://www.cinema5d.com/viewtopic.php?f=39&t=31257 (http://www.cinema5d.com/viewtopic.php?f=39&t=31257)
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 19:04:10
Grow up!  For anyone left who cares after all this arguing...

I offer my password to this account.  There you can see all the Messages I have received from Jamez complaining about Coutts.  It's ridiculous.  Like a frickin soap opera.  You want to continue???

I have an idea!  Let's pretend this is a job and act professional!

Even Coutts is getting into it now?  That's a first!  He's been very professional so far.

http://www.cinema5d.com/viewtopic.php?f=39&t=31257 (http://www.cinema5d.com/viewtopic.php?f=39&t=31257)
Title: Re: 500d development
Post by: Coutts on 27 / May / 2011, 19:56:14
Pot calling the kettle black?
Title: Re: 500d development
Post by: sleds4ever on 27 / May / 2011, 21:38:58
Let me start off by saying I don't have a horse in this race. I'm hoping to add a bit of an outsider perspective on the current drama.

I'm a huge fan the peeps like Coutts, Alins, and crew working to make our cameras better. Not so much when it comes to the pissing match.

Look sbright33 and Jamez, I know you guys got butt hurt over some things that were said. I understand that. But, it's time to move on.

No one wants anyone else's password. We just want to get back on track.

Maybe the long weekend, beer, and BBQ will provide some perspective.


P.S. If you guys decide you can't let it go, would you mind moving it to another thread? Some amazing development has been made in a short amount of time and it'd be a shame to lose momentum because the waters got poisoned.


Brian


Title: Re: 500d development
Post by: bkkenny on 27 / May / 2011, 21:44:21
Hear hear.
I agree wholeheartedly Brian.
Title: Re: 500d development
Post by: sbright33 on 27 / May / 2011, 21:50:02
You won't hear another Peep from me!  I only came back because Alex asked me to apologize to Jamez.
Title: Re: 500d development
Post by: mk11174 on 27 / May / 2011, 23:45:48
Liking the new menu and the stability of it
Title: Re: 500d development
Post by: Coutts on 28 / May / 2011, 00:20:17
well the menu is fixed but now the center lv AF frame isn't working..

it works in every mode but video mode. is anyone else having intermitted problems? sometimes when i take a picture the quick review is black and there's a picture of a little white key at the top of the screen, then going into play mode it works fine (i can see the picture), but can't delete pictures. re making the autoexec.bin seems to fix it.

the autoexec.bin file is ~172kb now, I wonder if we're getting close to the max file size. I remember Alex mentioning that on the 550d once the autoexec.bin file got to a certain size, things started getting funky randomly (lots of intermitted problems).

hm.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 00:26:06
well the menu is fixed but now the center lv AF frame isn't working..

Yep, I noticed, just didnt bother saying anything cause you already made it very clear earlier, and i understand this is all beta stuff so there will be glitches for now. 8]
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 00:33:38


 is anyone else having intermitted problems? sometimes when i take a picture the quick review is black and there's a picture of a little white key at the top of the screen, then going into play mode it works fine (i can see the picture), but can't delete pictures. re making the autoexec.bin seems to fix it.


[/quote]

No issues here like that, only one I had right away was recording in movie mode froze after 20seconds and it corrupted my card, but after a reformat all seems to work fine and records fine again, I think its cause I was trying a to high qscale bitrate -14 it err70 and my card would not record past 20 sec without freezing cam, but all ok now and using -12 qscale stable.
Title: Re: 500d development
Post by: Coutts on 28 / May / 2011, 01:40:05
everything in bitrate.c changed with the new CBR routines (recent changes by Alex in the 550d/60d tree). I haven't gotten to that yet -_-

I'm getting to the bottom of the AF frame thing though. I'm detecting press/unpress of the AV button now (so it doesn't jiggle around in the middle now), but the problem is still in movie mode. I've disabled it in movie mode for now, not a big deal IMO. If anyone has a solution, speak up :D


for whatever reason, the up/down/right buttons all generate the same event code as the AV button.. but only in movie mode, and the left button doesn't? this is odd. some of the things canon decided to do...I swear.
Title: Re: 500d development
Post by: pat_loonytoon on 28 / May / 2011, 04:04:19
Yeah in movie mode I am kicked out of ML menu anytime I press up, down, or right. Left is happy though :) Also camera obviously still doesn't like doing rack focus in movie mode  :-[ Error 70 payed me a visit many time
Title: Re: 500d development
Post by: gravityrem on 28 / May / 2011, 04:39:21
Something weird is going on on my camera with that build.
ML menu doesnt want to appear.
When i turn on my camera, ML loads, i can see ML stuff like "flash ON", the time etc.. but when i press the trash button nothing happens except the audiometer that appears.
I took off the battery. Same issue.

I can still take picture, sometimes i can delete them sometimes i can't.

I was wondering : What's the name of your camera ? 500D, T1i ? Are they all really the same camera but the name ?


EDIT : And that's true with the 2 autoexec you sent me coutts.
Title: Re: 500d development
Post by: RoaldFre on 28 / May / 2011, 05:23:30
I had a similar problem when I was doing memory dumps with the latest build 1.50. [...]!  The only solution I could find was to return the camera to Canon under warranty.  [...] 

Did you experience the exact same problem (not being able to boot ML, but camera fine otherwise)?
What did you say @ warranty, and what did they do?
Title: Re: 500d development
Post by: sbright33 on 28 / May / 2011, 08:38:35
Your description of the symptoms fits mine exactly.  It worked perfectly without ML.  I tried everything you did and more.  I had to make up a story about intermittent shutdown, only happens once in awhile.  This seemed to satisfy them, I don't think they looked for a problem.  Please let me know how it turns out for you.  Maybe Alex can help?  This should be of interest to all the other Developers, because it is a real danger if your camera is out of Warranty.
Title: Re: 500d development
Post by: Jamez on 28 / May / 2011, 09:28:37
You won't hear another Peep from me!  I only came back because Alex asked me to apologize to Jamez.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 10:54:41
Something weird is going on on my camera with that build.
ML menu doesnt want to appear.
When i turn on my camera, ML loads, i can see ML stuff like "flash ON", the time etc.. but when i press the trash button nothing happens except the audiometer that appears.
I took off the battery. Same issue.



I had the no show ML menu to on the fullscreen repos one first time, it flashed at boot up and pressing trash did not make it come up then after pressing the menu button the canon menu came up, i then pressed menu again and when i turned canon menu off there was ML menu, dont know if this is the same problem, but just in case, but since then I dont have any issues, just my first time loading the new repos compile.
Title: Re: 500d development
Post by: gravityrem on 28 / May / 2011, 11:04:41
the problem is kinda the same, to make the menu show up, i need to press the trash button and then the canon menu.
is that normal ?

and i have the same issue than coutts, the focus peaking is offset.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 11:31:58
the problem is kinda the same, to make the menu show up, i need to press the trash button and then the canon menu.
is that normal ?

and i have the same issue than coutts, the focus peaking is offset.

Its not normal i am sure, but since its still in beta Im sure its just the usual glitch that now we brought it up will eventually be looked at, thats why we post 8] I wasnt to suprised, it seems everytime something gets added theres a new bug, but in the end it will all work out and be fixed. Its always risky testing this kinda stuff, we just have to be prepared for bugs and post them for the developers. And yes, focus peaking is off on mine as well just like Coutts picture he posted earlier, just another thing I know he is hoping to figure out sooner or later.
Title: Re: 500d development
Post by: gravityrem on 28 / May / 2011, 11:46:36
oh dont worry i know it's beta software :)
i was just wondering, it could have been the "new" normal behavior. Cause aside from that, it works well. The new full screen menu looks good, and it seems really stable.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 11:48:23
oh dont worry i know it's beta software :)
i was just wondering, it could have been the "new" normal behavior. Cause aside from that, it works well. The new full screen menu looks good, and it seems really stable.

I know right!!! the fullscreen is really nice and solid on there, very nice for sure 8]
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 12:15:25
sometimes when i take a picture the quick review is black and there's a picture of a little white key at the top of the screen, then going into play mode it works fine (i can see the picture), but can't delete pictures. re making the autoexec.bin seems to fix it.

I finally had this happen, I was taking pictures in movie mode forgetting I was in movie mode and I saw a black screen with some display at top with a key symbol also, I took a few more wondering if my exposure was not right cause I was inside just messing around, then I switced to Manual mode, same thing, would not show in play either, just a total black screen, but all was fixed simply turning cam off then on again, and so far I have not been able to reproduce the glitch.
Title: Re: 500d development
Post by: sbright33 on 28 / May / 2011, 13:19:52
Skype me if you want to see what I've done with your latest build.
Title: Re: 500d development
Post by: Coutts on 28 / May / 2011, 13:30:07
got magic zoom, focus peaking, etc etc working in all movie modes :)

just gonna fix up afew more things and then it'll be time for v1.6!!
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 13:41:37
got magic zoom, focus peaking, etc etc working in all movie modes :)

just gonna fix up afew more things and then it'll be time for v1.6!!
Sounds good, I was just thinking, just having fullscreen was good enough for a new version, but good you waited with all these fixed features.
Title: Re: 500d development
Post by: barbar84 on 28 / May / 2011, 15:01:58
Great stuff coutts and the rest. It's good to see things on here are back to being development focused after all the drama! Was getting worried some people might get offended by all the negative speak and just leave. There are a lot of people who are very greatful for the work of all and any developers of 500d ML.   
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 16:36:19
Can anyone tell me what image size I need to program into the 422 script with an error of this
Exception: unknown image size: 1193216
I know how to get the image size, just dont know what the dimentions would be, like 720*424*2 = 610560 just dont know what like the width or height should be to solve the equation?

NM, it was 944x632, der, lol
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 17:21:37
just have to say, that slit scan feature is pretty neat, this is the first time i have seen it work, pretty cool fx you can make with it 8], i thought it was going to be a black and white image cause it was in liveview but turned out to be color when converted.
Title: Re: 500d development
Post by: Coutts on 28 / May / 2011, 18:03:42
Can anyone tell me what image size I need to program into the 422 script with an error of this
Exception: unknown image size: 1193216
I know how to get the image size, just dont know what the dimentions would be, like 720*424*2 = 610560 just dont know what like the width or height should be to solve the equation?

NM, it was 944x632, der, lol

http://magiclantern.wikia.com/wiki/500d_VRAM_Info (http://magiclantern.wikia.com/wiki/500d_VRAM_Info)

refer to the wiki page there, for the resolutions of the vram buffers.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 18:06:23


http://magiclantern.wikia.com/wiki/500d_VRAM_Info (http://magiclantern.wikia.com/wiki/500d_VRAM_Info)

refer to the wiki page there, for the resolutions of the vram buffers.

thanks, but i got it figured out, it works good, other then the split of coarse, i like playing with slitscan 8]
Title: Re: 500d development
Post by: pat_loonytoon on 28 / May / 2011, 19:33:11
How did you get the .422 files to convert? 422-jpg-v2 seems to have some issues with the files, as you well know.
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 19:37:16
How did you get the .422 files to convert? 422-jpg-v2 seems to have some issues with the files, as you well know.
using python and using the python script from the repository, but of coarse after editing in the image sizes so it recognizes the new image sizes coutts has programed.
Title: Re: 500d development
Post by: a1ex on 28 / May / 2011, 19:46:56
Did you get some nice examples of slit-scan pictures? I wasn't able to get anything usable yet :)
Title: Re: 500d development
Post by: mk11174 on 28 / May / 2011, 20:01:46
Did you get some nice examples of slit-scan pictures? I wasn't able to get anything usable yet :)
just some fooling around ones, i tried having my daughter twist her head and body during a scan, looks freaky, i will mess around on the tripod later and see if i can get creative 8]

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi51.tinypic.com%2F2n9ch3s.jpg&hash=f49e1c5b03b6774ffdaf460c690c5978)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.tinypic.com%2F2j5zzw6.jpg&hash=483ac7bb1ca9c673f85459c3bbfb851f)

Its warped alot more on the left side cause I pulled cam away to let her see after the scan past her body 8] i will do more stuff on a tripod in the day for better quality, this is inside no light but pc monitor 8/
Title: Re: 500d development
Post by: Coutts on 28 / May / 2011, 22:39:50
re-wrote the constants file to be a little more organized like AJ's code :)
just a little snippet from it:
Code: [Select]
//////////////////////////////////////////////////////////////////////////////////
//                                                                                                                                                              //
//      Various things are declared here that are used throughout Magic Lantern.        //
//                                                                                                                                                              //
//      Organized (finally) by Coutts. Feel free to help find some of the missing       //
//      stuff, we could use an extra hand :)                                                                            //
//                                                                                                                                                              //
//////////////////////////////////////////////////////////////////////////////////


//////////////////////////////////////////////////////////////////////////
//      VRAM Information                                                                                                        //
//      Everything is confirmed and correct as far as vram goes - Coutts.       //
//                                                                                                                                              //
//      For more information regarding VRAM, please visit this WIKI page:       //
//      [url=http://magiclantern.wikia.com/wiki/500d_VRAM_Info ]Error[/url]                                      //
//////////////////////////////////////////////////////////////////////////
// ONLY used by slit-scan pics in shoot.c
#define YUV422_LV_BUFFER 0x43738800
#define YUV422_LV_PITCH 1440
#define YUV422_LV_HEIGHT 424

// Everything else (zebras, focus peaking, etc etc) use this DMA pointer
#define YUV422_LV_BUFFER_DMA_ADDR (*(uint32_t*)0x26a8)
#define YUV422_HD_BUFFER_DMA_ADDR (*(uint32_t*)0x48a0)
//--------------------------------end-----------------------------------//


//////////////////////////////////////////////////////////////////////////
//      Bitrate.c related things                                                                                        //
//      see mvrGetBufferUsage, which is not really safe to call => err70        //
//      macros copied from arm-console                                                                          //
//////////////////////////////////////////////////////////////////////////
#define MVR_752_STRUCT (*(void**)0x1e90)
#define MEM(x) (*(int*)(x))
#define div_maybe(a,b) ((a)/(b))
#define MVR_BUFFER_USAGE_FRAME ABS(div_maybe(-100*MEM(316 + MVR_752_STRUCT) - 100*MEM(324 + MVR_752_STRUCT) - 100*MEM(496 + MVR_752_STRUCT) - 100*MEM(504 + MVR_752_STRUCT) + 100*MEM(320 + MVR_752_STRUCT) + 100*MEM(328 + MVR_752_STRUCT), -MEM(316 + MVR_752_STRUCT) - MEM(324 + MVR_752_STRUCT) + MEM(320 + MVR_752_STRUCT) + MEM(328 + MVR_752_STRUCT)))
#define MVR_BUFFER_USAGE_SOUND div_maybe(-100*MEM(452 + MVR_752_STRUCT) + 100*MEM(440 + MVR_752_STRUCT), 0xa)
#define MVR_BUFFER_USAGE MAX(MVR_BUFFER_USAGE_FRAME, MVR_BUFFER_USAGE_SOUND)
//---------------------------------end----------------------------------//


//////////////////////////////////////////////////////////
//      Event codes and button press event related things       //
//      Everything is fixed for the 500d at this point          //
//      found using EVT spy with the debug console                      //
//////////////////////////////////////////////////////////
// CURRENT_DIALOG_MAYBE related things
// 3aa0 seems to reflect the same values but doesn't reset to 0 sometimes? this seems to be the right one.
#define CURRENT_DIALOG_MAYBE (*(int*)0x3a9c)
#define DLG_WB 6
#define DLG_FOCUS_MODE 0xA
#define DLG_DRIVE_MODE 9
#define DLG_PICTURE_STYLE 5
#define DLG_PLAY 1
#define DLG_MENU 2
#define DLG_Q_UNAVI 0x1E
#define DLG_FLASH_AE 0x21
#define DLG_PICQ 26
#define DLG_MOVIE_ENSURE_A_LENS_IS_ATTACHED 0x1b
#define DLG_MOVIE_PRESS_LV_TO_RESUME 0x1B

// button codes as received by gui_main_task
#define BGMT_PRESS_LEFT 0x39
#define BGMT_UNPRESS_LEFT 0x3a
#define BGMT_PRESS_UP 0x3b
#define BGMT_UNPRESS_UP 0x3c
#define BGMT_PRESS_RIGHT 0x37
#define BGMT_UNPRESS_RIGHT 0x38
#define BGMT_PRESS_DOWN 0x3d
#define BGMT_UNPRESS_DOWN 0x3e
#define BGMT_PRESS_SET 0x4
#define BGMT_UNPRESS_SET 0x5
#define BGMT_TRASH 0xA
#define BGMT_MENU 6
#define BGMT_DISP 7
#define BGMT_Q 8
#define BGMT_Q_ALT 0xF
#define BGMT_PLAY 9
#define BGMT_PRESS_HALFSHUTTER 0x23
#define BGMT_UNPRESS_HALFSHUTTER 0x24
#define BGMT_PRESS_FULLSHUTTER 0x25
#define BGMT_UNPRESS_FULLSHUTTER 0x26
#define BGMT_PRESS_ZOOMIN_MAYBE 0xB
#define BGMT_UNPRESS_ZOOMIN_MAYBE 0xC
//-----------------------end--------------------------//


edit:
some of the forward slashes got messed up after committing I guess, meh. you get the idea, it's more organized now :)
Title: Re: 500d development
Post by: pat_loonytoon on 28 / May / 2011, 23:29:24
wow python really hates me...oh well :/
422-jpg refuses to compile based on no Imaging module however PIL refuses to find python. Guess I'll wait until someone can compile it :(
Title: Re: 500d development
Post by: Coutts on 29 / May / 2011, 01:05:20
wow python really hates me...oh well :/
422-jpg refuses to compile based on no Imaging module however PIL refuses to find python. Guess I'll wait until someone can compile it :(

???
open 422-jpg.py in notepad, add the dimensions, file > save and run it. that's all I've done and it works fine for me, no compiling :-s
Title: Re: 500d development
Post by: pat_loonytoon on 29 / May / 2011, 01:15:02
I mean I can't run it. I don't want any more time wasted on me though. I might figure it out...
[Edit: Guess someone here had the same problem and but no fix suggested https://bitbucket.org/hudson/magic-lantern/issue/304/converting-422-files-to-jpeg]
Title: Re: 500d development
Post by: sbright33 on 29 / May / 2011, 04:35:17
Now you can see what I had to go thru to fix it ;)  I've got a version that detects any sized buffer no matter what the pitch is.  It even works with Zoom x5 in various modes.  PM if you want help.
Title: Re: 500d development
Post by: Coutts on 29 / May / 2011, 09:36:11
Whys it such a big secret??!?
Title: Re: 500d development
Post by: Coutts on 29 / May / 2011, 09:42:33
The lv buffers are present in every mode with the same resolution. See the 0x26a8 pointer. Zebras use the lv buffers and work in every mode for example.
Title: Re: 500d development
Post by: pat_loonytoon on 29 / May / 2011, 11:17:05
*Facepalm*
Title: Re: 500d development
Post by: Coutts on 29 / May / 2011, 14:35:24
buffer usage % works. CBR initial support now, and qscale works. all thanks to alex :)

seriously he's like a bottomless pit of knowledge O_O


i've done a few test videos, my class 6 sdhc scandisk card can handle CBR 3x and qscale -16. cbr 3x produced ~50mbps and qscale -16 produces ~60mbps (not moving much, the buffer was pretty high at 60-70%).

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/0bab2a418317

still need to fix all of the offsets in bitrate.c
Title: Re: 500d development
Post by: gedas5 on 29 / May / 2011, 14:50:42
good news!  :) Coutts would you be able to upload CBR and Qscale videos alongside with the normal mode video to see if there's any major difference and benefits using these modes? Would love to see video quality improvement. Also did you face and issues using them?
Title: Re: 500d development
Post by: barbar84 on 29 / May / 2011, 17:48:06
Hey folks. Set up a facebook group for people to talk all things 500D ML, shooting methods, testing methods and discuss wishlist ideas without wrecking the heads of the developers working hard here. Everyone welcome!!!

http://www.facebook.com/pages/Canon-500d-Magic-Lantern/223219844372760?sk=wall (http://www.facebook.com/pages/Canon-500d-Magic-Lantern/223219844372760?sk=wall)
Title: Re: 500d development
Post by: a1ex on 29 / May / 2011, 18:06:06
Magic Lantern is playing Farmville :)
Title: Re: 500d development
Post by: arnarg on 29 / May / 2011, 18:33:02
I just found Magic Lantern in compare hotness!
Title: Re: 500d development
Post by: barbar84 on 29 / May / 2011, 19:04:17
Think to many good men and women have been lost to that Alex  :D
Title: Re: 500d development
Post by: vorob on 30 / May / 2011, 12:42:37
No guys, its just doesn't work for me. I'm taking pictures, turn off camera, take card out, work with it on my pc and then i see that my camera is hot! I just don't get it.

And this continue even i after i low formated card via camera.
Title: Re: 500d development
Post by: sbright33 on 30 / May / 2011, 13:25:38
I had a similar problem while taking a time lapse in the sun.  The camera freaked out switching into various modes and now it doesn't work the same with ML.  It gets Hot even after I do a power cycle.
Title: Re: 500d development
Post by: IloveML on 30 / May / 2011, 14:45:18
 
Whys it such a big secret??!?
He needs attention?? maybe..  ;)
Title: Re: 500d development
Post by: sbright33 on 30 / May / 2011, 19:17:46
It's not a secret, I'm offering it to anyone who asks!
Title: Re: 500d development
Post by: sleds4ever on 30 / May / 2011, 20:07:02
Whys it such a big secret??!?
He needs attention?? maybe..  ;)

This is not productive.
Title: Re: 500d development
Post by: sleds4ever on 30 / May / 2011, 20:12:01
Looking forward to 1.6! For what it's worth, I saw much less battery drain in 1.5 vs 1.4.

One problem that popped up under 1.4 (haven't seen it in 1.5, yet) is sometimes the photo wouldn't take. Shutter would open and screen would go black like it's going to review the pic, but it appears to restart the firmware/program and the image file would either not be there or it would be corrupted.

This usually happens when taking pictures in succession, not continuous shooting, more like shoot-reframe-shoot-reframe-shoot.

Anyone else see this?

Brian
Title: Re: 500d development
Post by: Coutts on 30 / May / 2011, 20:47:26
spent all day working on mvr_config in dryos.h... this CBR stuff might be a little out of my league. I don't understand it all very well yet. But this is where things stand as far as mvr_config:

https://bitbucket.org/alins/magic-lantern-for-500d/changeset/14096f4a90bd

anything with a / after the address is forsure correct. all i've done is correct the address/offsets in the comments, and removed what isn't present in the 500d. This struct has to be modified to match the struct in the 500d (it is pretty different from the 550d with our lack of video shooting modes).

gah...
Title: Re: 500d development
Post by: gravityrem on 31 / May / 2011, 02:11:33
well Coutts, youre working on it even on memorial day..
whow..

im not gonna complain huh !


i still have that issue about the menu that doesnt show up. i need to press trash+menu to make it pop up !
Title: Re: 500d development
Post by: Coutts on 31 / May / 2011, 07:05:51
well Coutts, youre working on it even on memorial day..
whow..

im not gonna complain huh !


i still have that issue about the menu that doesnt show up. i need to press trash+menu to make it pop up !
yup, that's fixed in the new version. the ML menu is accessed from within the canon menu now (i have no way to fake a menu press event like it's done in the 550d, so we just have to do it manually :) )
Title: Re: 500d development
Post by: gravityrem on 31 / May / 2011, 07:58:44
ok so i take it back, it's not an issue anymore then !

V1.6 soon ?
Title: Re: 500d development
Post by: Coutts on 31 / May / 2011, 09:41:23
soon yes, I want to figure out all of this bit rate related stuff first though. it's semi-working but I still need to fix up bitrate.c a bit (and dryos.h).

and i still need to learn more about how it works, before I can fix it :P



The CBR stuff is kind of working - here's a test video I shot earlier of my diy air conditioner to try to cool my room down in my apartment :lol

http://www.youtube.com/watch?v=tfbU-XyFREw# (http://www.youtube.com/watch?v=tfbU-XyFREw#)

1080p @ 20fps (fffuuuu)
CBR 2x
43.19mbps bit rate

can anyone notice any kind of quality difference? I can't tell if this actually helps at all.
Title: Re: 500d development
Post by: gedas5 on 01 / June / 2011, 03:42:10
@ Coutts

hard to say unless we saw normal mode video as well  :) but nice DIY  :D
Title: Re: 500d development
Post by: gravityrem on 01 / June / 2011, 03:48:50
Hard to say without any comparison video.
But on my 27" screen, the video looks good, it seems the dark tone fades are better. I mean there are less steps like Grey/DarkGrey/Black/DeepBlack. You can't see the edge of the color, it's smoother.  yaykx hard to explain..
Im really sorry, i can't speak english..
Know what i mean ?
Title: Re: 500d development
Post by: pat_loonytoon on 01 / June / 2011, 04:26:07
lol Coutts that is awesome! I totally have a DIY air-conditioner/fan in my garage that looks just as ghetto if not more so. I have my copper tubing wrapping around my fan and then going into a icebox where my fish pump cycles the water. Stupid thing only helps by 1 or 2 degrees oddly enough. I guess that's what being in college is about hehe.
Title: Re: 500d development
Post by: bkkenny on 01 / June / 2011, 05:17:50
Looks very nice, was that using the Sigma lens in your signature?
Title: Re: 500d development
Post by: adijiwa on 01 / June / 2011, 07:25:01
Hard to say without any comparison video.
But on my 27" screen, the video looks good, it seems the dark tone fades are better. I mean there are less steps like Grey/DarkGrey/Black/DeepBlack. You can't see the edge of the color, it's smoother.  yaykx hard to explain..
Im really sorry, i can't speak english..
Know what i mean ?

I agree with you. Coutts' video contains less noticeable color banding/steps. Color gradation, especially the dark one,  *subjectively* looks smoother. :D
Title: Re: 500d development
Post by: Coutts on 01 / June / 2011, 08:35:01
yes @ the sigma :)


so.. a small victory towards manual video controls. by blocking a couple events that seem to change the iso, I can now select my own value from the ML menu.. but as soon as I start recording and open the ML menu, the buffer fills up and the camera crashes with an err70.

but, small victory for now :)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa8.sphotos.ak.fbcdn.net%2Fhphotos-ak-snc6%2F248764_10150620438245344_704010343_18836040_5331739_n.jpg&hash=eca00ac2e4fdc5cce2aad2f6c6496cca)
Title: Re: 500d development
Post by: bjacklee on 01 / June / 2011, 08:43:49
WOW! Congratz Coutts! this is what everyone is waiting for... manual controls over the video.. :D so xcited for the next build.. :)
Title: Re: 500d development
Post by: Coutts on 01 / June / 2011, 08:58:12
I think different events block different iso values possibly, I have to look into this.

i didn't go to bed last night (https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi53.photobucket.com%2Falbums%2Fg52%2Fmsbae001%2FEmoticons%2Fth_Emoticon-Suicide.gif&hash=0f2326fd381a437c158920fc25ec2092)
Title: Re: 500d development
Post by: sbright33 on 01 / June / 2011, 09:27:36
Sorry if this is too obvious to mention: One of those events is writing the buffer?  Keeping it from filling...  Try them one at a time to narrow it down?  Let us know which one did it.

Is it valuable to be able to change the ISO?  The goal is to go beyond 1600?  For me I think this would be rare, because the processing time to remove noise is prohibitive.  Wouldn't shutter speed be the most useful parameter to control, since we can already control aperture?  This would give us indirect control over ISO, allowing it to increase on it's own as we need it.  

I don't mean to discourage you from allowing us to manually control ISO it would be wonderful in some cases to use 6400!

Nice Smiley icon!  I fell asleep at 5:30am...  Up at 7!  :blink:
Title: Re: 500d development
Post by: adijiwa on 01 / June / 2011, 09:33:06
Is it valuable to be able to change the ISO?  The goal is to go beyond 1600?  For me I think this would be rare, because the processing time to remove noise is prohibitive.  Wouldn't shutter speed be the most useful parameter to control, since we can already control aperture?  This would give us indirect control over ISO, allowing it to increase on it's own as we need it. 

I don't mean to discourage you from allowing us to manually control ISO it would be wonderful in some cases to use 6400!


Very valuable. In certain situation, when we need static aperture and shutter speed, the only way to control the exposure is changing the ISO. Able to use very high ISO speed is not the main goal.

Please CMIIW.
Title: Re: 500d development
Post by: sbright33 on 01 / June / 2011, 09:39:22
Already ISO will change on it's own automatically if we were able to fix the shutter speed.  Already we can use a static aperture.  This is currently working for ISO when the shutter speed is at its Max.  In my opinion this is a feature:  That it is limited to 1600 and will not go beyond.  Others may disagree.  So I'm glad Coutts is working on this!  I think we're actually saying the same thing.  ISO needs to change when the other 2 are static.

Which brings up another point.  There may be no need to increase the ISO beyond 1600.  For this discussion I'm assuming an extreme bitrate or no compression using the Hyperdeck.  Instead of using 6400 you can increase the Brightness and/or Contrast in Post.  The final result as far as noise is nearly the same?  But it gives you more control if you want less noise in Post.  You can choose later instead of while shooting.  Then you will be using a bigger monitor.  Either way you would want to use noise reduction software, which adds to the processing time.  We're talking about 2 stops here.  Not a big difference, no matter which path you choose.

Fixing the shutter speed and allowing the ISO to change is very different from fixing the ISO and allowing the shutter speed to change.  We want to use 180 degree shutter.  The first one is preferable.

http://blog.tylerginter.com/?p=385 (http://blog.tylerginter.com/?p=385)
Title: Re: 500d development
Post by: bjacklee on 01 / June / 2011, 09:57:04
 ???
Already we can use a static aperture.
Meaning we can now set the aperture manually? I didn't know that... ???
Title: Re: 500d development
Post by: adijiwa on 01 / June / 2011, 10:14:56
???
Already we can use a static aperture.
Meaning we can now set the aperture manually? I didn't know that... ???

Yes, we can. But via a tricky way :D
See http://vimeo.com/groups/canoneos500d/forumthread:8176 (http://vimeo.com/groups/canoneos500d/forumthread:8176)
Title: Re: 500d development
Post by: sbright33 on 01 / June / 2011, 10:47:36
That's a great link Adijiwa!  Especially the Quick Tips.  I can verify they work.  With practice it is very fast and easy to set the maximum aperture size, which is what I use daily.
Title: Re: 500d development
Post by: Coutts on 01 / June / 2011, 11:06:15
so i had been doing a full html analysis dump of the 500d, I started the other day at midnight and this morning around 5am it failed at 70%...

So i spent all day setting up the arm-console on my macbook (yayy).

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi55.tinypic.com%2F6e3ojl.png&hash=2bd452722781d65739218914a13f3a7c)

Now I can actually copy/paste from the terminal, and hopefully it'll be a little quicker.


For anybody looking to setup the console on a macbook, couple tips:
1) install yagarto, it's the ARM toolchain (super easy with yagarto compare to running the build script on the wiki)
- yagarto just has an installer, you can snag that from here(scroll down to mac os x): http://www.yagarto.de/ (http://www.yagarto.de/)
2) install macports, you can use this to install many of the requirements
- the bigger requirements will take a while to install - set aside a good 3-4 hours for this.
3) install fink - it's like the apt-get equivilant for OS X, some packages can be found on fink (but are missing from macports).
4) Follow this guide here for getting matpotlib setup (it can be a nightmare): http://sublimated.wordpress.com/2009/01/20/how-to-install-matplotlib-and-scipy-using-macports/ (http://sublimated.wordpress.com/2009/01/20/how-to-install-matplotlib-and-scipy-using-macports/)
- one fix - when you go to run python_select, it won't work, the correct syntax (it's since been updated? idk) is:
Code: [Select]
sudo port select python python265) follow the wiki page for setting up the console here: http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console (http://magiclantern.wikia.com/wiki/GPL_Tools/ARM_console)
6) even though cheetah, python-profiler and a couple other things were installed as pre-reqs during the macports installs, I still had to install them manually for some reason, setup is super easy - just download, unzip and run
Code: [Select]
sudo python setup.py install for each of them.
- I used yappi for python-profiler: http://code.google.com/p/yappi/downloads/list (http://code.google.com/p/yappi/downloads/list)
- I got cheetah from here - http://www.cheetahtemplate.org/download.html (http://www.cheetahtemplate.org/download.html)
start analyzing :D
Title: Re: 500d development
Post by: sbright33 on 01 / June / 2011, 11:42:22
Thanks Coutts!  Looks like getting setup on the Mac is a big project!  Will try it.
Title: Re: 500d development
Post by: Coutts on 01 / June / 2011, 11:48:18
No prob. Surprisingly things have been easier on the mac. yagarto definitely makes it easy (thanks to chuchin for his initial setup guide where he uses yagarto).

It's nice using eclipse for working on ML, keeps things much better organized.
Title: Re: 500d development
Post by: mk11174 on 01 / June / 2011, 17:01:44
Very cool you finally figured out someway to control ISO manually, its a huge first step for sure, so at least it gives hope it is probably possible to get control of everything, just got to keep learning Coutts, u will do it 8]
Title: Re: 500d development
Post by: Coutts on 01 / June / 2011, 22:08:41
Bad news. Macbook died today. It was fine all day and all of a sudden was locking up. Within 3 hours it wouldn't boot. Disk repair isn't working... calling apple tomorrow to see if I can get whatever is broken replaced. Gonna be without my laptop for a couple weeks... looks like I have to take a short vacation from ML :(

Sorry guys.. this really sucks.
Title: Re: 500d development
Post by: mk11174 on 01 / June / 2011, 22:46:40
oh man!!!! thats sux, i hope u get it fixed and didnt lose and personal stuff, that really sux when that happens, best of luck coutts 8[
Title: Re: 500d development
Post by: pat_loonytoon on 01 / June / 2011, 22:51:34
My heart = broken
Title: Re: 500d development
Post by: aznguy on 01 / June / 2011, 23:14:25
o.0 sounds like hd failure.... ohh no!!! hope you have all your personal stuff backedup
Title: Re: 500d development
Post by: gravityrem on 02 / June / 2011, 04:24:47
yaykx..
Sorry for your Macbook dude.
Apple is really good about that kind of things, they should take care of it.
But i really hope you wont loose too much of your personal stuff.
Title: Re: 500d development
Post by: sbright33 on 02 / June / 2011, 10:14:22
I wish we were organized enough to buy you a new Macbook and have it shipped overnight!  On the other hand you could use a break...

I'd like to interrupt the regularly scheduled "Programming" for this question.  Please don't get mad at me for asking.  I think it might be valuable during this break.  I will refrain from answering it, since you've heard so much from me already.  I won't even comment until you're finished.  If you feel it's inappropriate on this forum, you can just ignore me, no harm done.  We already know what the most requested features are.  24p and manual video controls.  What is the biggest bug or problem to be fixed, besides these 2 features?  

Edit to clarify: I'm NOT asking for a poll to determine which of these 2 features are most desired.

I mean that's important to your everyday use of the camera.  Nothing too complex, something easy to understand at least.  1 or 2 sentences.  I don't mean to get into the details or overshadow the Bitbucket Issues which is for this purpose.  Just a simple poll to see what everyone is thinking.

I'm asking this question because I want something to work on.  I'm not going to list what I've already fixed.  Those who know me already have the latest build.

I'm certainly not criticizing anyone!  Please don't take it that way.  I am the biggest fan of Magic Lantern, I use it daily at my job.  And Coutts is amazing!  The hardest working programmer I've ever met!

Title: Re: 500d development
Post by: zanak on 02 / June / 2011, 10:14:34
my vote is for shuter control too ... low shuter = image flicken with moviments
Title: Re: 500d development
Post by: sbright33 on 02 / June / 2011, 10:46:25
@Zanak - Oh sorry, just realized maybe you weren't answering my latest question at all!  Looked at the timestamps, it seems you were replying to a prior topic.  It's so easy to have a misunderstanding here on the forum.

That's a feature not a bug!  Or "Das ist ein Feature und kein Bug" as they say in Germany...

Sorry for the confusion, I guess my question wasn't clear:
We already know what the 2 most requested features are, there's no need to discuss them.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / June / 2011, 14:28:05
I think most of us want that feature, and you've been helpful to discussion...just curious what a peep means now though...

You won't hear another Peep from me!  I only came back because Alex asked me to apologize to Jamez.
Title: Re: 500d development
Post by: sbright33 on 02 / June / 2011, 15:15:08
Please read the question again.  Of course we want that feature!  It means I'm not debating anyone.  No drama.  No technical debates.  I'm easygoing, agreeable, and polite.  Do you have a problem with those terms?

The "Peep" was in reference to my video that I posted and a prior posting about all the Peeps on here.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / June / 2011, 16:16:10
hehe alright, just checking. So...anyone working on something on the side while Coutts is out?
Title: Re: 500d development
Post by: Jamez on 02 / June / 2011, 23:56:09
Jamez has asked me to refrain from posting issues on this forum.  He seems to be the person in charge here.  Goodbye everyone!  Those who need to reach me for help programming know how to do it already.
You won't hear another Peep from me!  I only came back because Alex asked me to apologize to Jamez.
Thats twice Steve that you said you would never post on this forum. Your not very good at keeping your own promises.
You have also impersonated others, trying to stir up trouble elsewhere which is illegal.

Let me guess, you have fixed it to have whatever FPS you want, and your not going to share your code, just like you have fixed everything else, and not commited one line of code anywhere.... we are still waiting Steve after all you are an "expert" (your words not mine).

Coutts isnt out, he still has access to another PC, hes trying to decompile the whole of ML into html code at present to make things easier to figure out. FPS has been discusssed to death, go back 90 pages and start reading there, theres no "bug" to fix.
Title: Re: 500d development
Post by: sbright33 on 03 / June / 2011, 00:47:53
I'm not Posting issues.  But I am ignoring Jamez to avoid drama.  At least this way I don't have to open any PM's.  Sorry everyone!  Now we all have to read it or just skip over it.  Can we get back on track?
Title: Re: 500d development
Post by: Jamez on 03 / June / 2011, 01:14:28
Steve its easy to give it the billy bollox Im the best thing since sliced bread, Ive fixed everything spiel, put your money where your mouth is and contribute the code or stop posting BS, thats my only request.
FPS is done to death, there is no "bug" you refer to, I suggest you read the forum, stop posting BS, and contribute if your able to...
Title: Re: 500d development
Post by: gravityrem on 03 / June / 2011, 02:57:36
oh men... Again...
Title: Re: 500d development
Post by: barbar84 on 03 / June / 2011, 03:47:07
here we go again. This is why I created a facebook page.
 so this page could be let to constructive discussions about development.
http://www.facebook.com/pages/Canon-500d-Magic-Lantern/223219844372760 (http://www.facebook.com/pages/Canon-500d-Magic-Lantern/223219844372760)

Lets not start this again.

Title: Re: 500d development
Post by: mk11174 on 03 / June / 2011, 03:50:20
i agree, text and make up already, geeez!!!!
Title: Re: 500d development
Post by: sbright33 on 03 / June / 2011, 07:05:41
Let him keep going.  I will not respond except to say, let him keep going.
Title: Re: 500d development
Post by: Jamez on 03 / June / 2011, 09:43:42
Whatever Steve, you keep living in your dreamworld whilst continuing to contribute nothing to this project whilst the rest live in the real world.

I have the latest release, have created a working 422 converter, and have created a better readme with links, and lot more, I need to catch Coutts then I`ll see if we can release it.
Title: Re: 500d development
Post by: sbright33 on 03 / June / 2011, 10:45:18
No reply again.  I'm getting good at this non-confrontational thing!
Title: Re: 500d development
Post by: Samsongas on 03 / June / 2011, 11:00:27
I want a 5D Mark III
I want a 5D Mark III
Title: Re: 500d development
Post by: gedas5 on 03 / June / 2011, 11:12:42
@ Jamez

well done for carrying on the great work while Coutts is away (hopefully his MacBook will be fine)...
Title: Re: 500d development
Post by: Jamez on 03 / June / 2011, 11:18:54
Actually its Coutts` work primarily on the autoexec, I just fixed the 422 script, and bundled the lot together with a readme collating everything as you may see if I can catch Coutts at work I know he wanted to fix a few more things first, but all things considered it might take a little time before hes back into it.
Title: Re: 500d development
Post by: Vel on 03 / June / 2011, 13:53:59
No reply again.  I'm getting good at this non-confrontational thing!

No. No reply would mean not even replying with that post. That's in no way a "no comment" statement, it's a tout. Take all of your conversations to PM, they're not adding anything to the development thread except unnecessary bickering.

They're not provoking you, you're provoking them. Enough already.
Title: Re: 500d development
Post by: a1ex on 04 / June / 2011, 09:28:59
Just found a more portable method for faking buttons (credits goto 0xAF from 400D thread):

Code: [Select]
void fake_simple_button(int bgmt_code)
{
static struct event e;
e.type = e.obj = e.arg = 0;
e.param = bgmt_code;
msg_queue_post(gui_main_struct.msg_queue_60d, &e, 0, 0);
}

This works by sending events to gui_main_task's message queue. The function for sending messages is TryPostMessageQueue in the IDCs.

To fake 2 buttons or more, you have to wait until the previous button was handled. Here is an implementation with semaphores:
https://bitbucket.org/hudson/magic-lantern/src/8720f389876c/gui.c

Title: Re: 500d development
Post by: Samsongas on 05 / June / 2011, 04:06:39
No reply again.  I'm getting good at this non-confrontational thing!

No. No reply would mean not even replying with that post. That's in no way a "no comment" statement, it's a tout. Take all of your conversations to PM, they're not adding anything to the development thread except unnecessary bickering.

They're not provoking you, you're provoking them. Enough already.

I just love when an argue is ended and someone wants show himself as the super-moderator and righteous, and makes the [admin: avoid swearing please] came back again, and again and again, [...]
Title: Re: 500d development
Post by: vorob on 06 / June / 2011, 00:51:09
I turn my camera off, take out the card, put camera on shelf and after few hours i find out that its discharged. How this can be possible? I surely need to delete all from camera bout ML.
Title: Re: 500d development
Post by: a1ex on 06 / June / 2011, 05:01:34
https://bitbucket.org/alins/magic-lantern-for-500d/issue/63/killing-my-battery-completely-dead-at (status: open)

If you want to help, help; if you want to troll, do it without pressing the "Send" button ;)
Title: Re: 500d development
Post by: sbright33 on 06 / June / 2011, 13:53:23
Alex, are you implying you don't want to hear this report from anybody?  Or this is the wrong forum for it despite 100's of previous bugs reported here?  Or are you guessing that this is somehow related to me?  Certainly it is not.  Just trying to help by communicating about unresolved issues, either here or on the Bitbucket issues list.  This is annoying to you?  How would you like Vorob to help? Please do not attack me again, I would appreciate a civil conversation.
Title: Re: 500d development
Post by: a1ex on 06 / June / 2011, 14:08:36
http://freshmeat.net/articles/how-to-report-bugs-effectively (http://freshmeat.net/articles/how-to-report-bugs-effectively)

Vorob's post contains exactly 0 bits of (new) information, so it does not help at all in locating and fixing the problem.
Title: Re: 500d development
Post by: pat_loonytoon on 06 / June / 2011, 14:19:43
Nice resource. I've just bookmarked it. Does anyone have any recent work, or progress, on the code? I know Coutts is out but I doubt he is the only one working on this.
Title: Re: 500d development
Post by: LaLaPico on 06 / June / 2011, 14:20:00
What a1ex is asking is that people make an effort to see if what they want is already requested, instead of just blinding posting repetitive requests. I mean, hell, even if those people would just read some of this thread they will see it's a known issue.

Though, I have to say, I haven't experienced it myself.

Title: Re: 500d development
Post by: sbright33 on 06 / June / 2011, 21:00:38
He was able to verify that it may be related to removing the card while the power was off.  I was unable to remember if that is what I had done.  One more piece of data to add to the pile!  Thanks for listening!
Title: Re: 500d development
Post by: alins on 07 / June / 2011, 00:59:49
what is the world is going on in here?. i just come back to this thread after some time and i find that it has become some sort of dumping ground for personal egos and all kinds of weird communications.

I mean seriously, have we forgot how to be civil here?. or should i assume that if anybody posts anything (REGARDLESS IF IT HAS BEEN ASKED 1000 TIMES) he/she will be blasted to dare asking something that somebody responded 50 pages ago. Is there too much to ask to kindly point the person to the right information and also kindly to point them to the wikia page or whatever documentation has the answer?. Is this the kind of community that you guys want to build?.

If i offended anybody here you have my deepest apologies. My message is not meant to be an insult or a personal attack, i'm just raising the issue that "maybe" the community here took the wrong turn. or maybe is just me, so feel free to point that out to me in public please no personal messages and i will shut up.

I turn my camera off, take out the card, put camera on shelf and after few hours i find out that its discharged. How this can be possible? I surely need to delete all from camera bout ML.

Vorob: contrary to what people have been saying here is has nothing to do with you removing the card. You need to remove the battery. removing the card doesn't help. To be sure that nothing runs on the camera (regardless if you turn the camera off or not) you need to remove the battery for few seconds.

hope this helps.

for future reference, please read this page: http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i)
Title: Re: 500d development
Post by: pat_loonytoon on 07 / June / 2011, 02:08:44
Point well made. There is a place to post issues Vorob at https://bitbucket.org/alins/magic-lantern-for-500d/issues , and the issue in which you speak is already listed https://bitbucket.org/alins/magic-lantern-for-500d/issue/63/killing-my-battery-completely-dead-at  Thanks for the heads up though just in case :)

I think some just need a mental break from this project, to clear the air and to reignite some love for the core of the project...and for people for that matter.  I'm sorry if I've even been uncivilized to anybody on this thread :-[
Title: Re: 500d development
Post by: sbright33 on 07 / June / 2011, 10:28:50
That's what I've been saying Alins!  As you can read 20 pages back I got blasted for saying it.  I hope you receive a different response.  Let's continue.

Removing your card doesn't help, it hurts.  If you leave it in everything will be fine?  I took mine out because I wanted to copy the pictures to my PC.  That was a mistake.  Way back Alex offered a solution, just recycle the power or remove the battery every night.  This may work.  I will suggest another:

Don't take the card out!   (unless you also remove the battery)

Does that sound correct to everyone?  I'm sorry if this has been documented elsewhere.  I have not seen it, and I've been searching.
Title: Re: 500d development
Post by: Jamez on 07 / June / 2011, 10:49:58
The solution as has been previously posted, and is posted by others, and which is on the bitbucket bug report is to take your battery out. You can put it back in, you only have to take it out for a few seconds.
Title: Re: 500d development
Post by: sbright33 on 07 / June / 2011, 12:49:23
This seems important.  Stop me when you've heard enough of this topic.  I will be happy to comply.  I'd like to clarify, based on my experience.  If you cycle the power by removing the battery for a few seconds.  THEN remove the memory card.  You will sometimes be left with a dead battery in the morning.  The same thing happens during lunch break.  It doesn't seem to matter what you do with the On/Off switch.  Cycling the power BEFORE you remove the card does not work.

I will repeat it again, until we've come to an agreement, or agree to disagree.  I've tried to simplify the statement below:

AFTER you take the ML memory card out, you should also remove the battery, at least for a moment.

This will prevent the problem.

We're saying the same thing, Jamez and I.  The important point is to do it at the right time.  Not every time you take a short break in shooting.  Not only at night, that will not prevent the problem.  Enough said!  Any questions I would prefer to answer by PM.  I don't want to waste everyone's time on the forum, anymore than I already have.  @Alins PM 2u.
Title: Re: 500d development
Post by: Jamez on 07 / June / 2011, 13:00:48
Please stop Steve, its been reported to death and repeating yourself is not achieving anything. The common sense solution so ridiculously simple it doesnt even need saying again but I will.

Just remove the battery totally, it takes seconds to do.

Sometimes there are very simple common sense solutions to every day problems, and this is definately one of them.
Title: Re: 500d development
Post by: alins on 07 / June / 2011, 13:34:47
ok, let me see if i can explain this:

short answer: you can remove the card at any time (before/after/during the battery removal). the card has NOTHING to do with the battery getting drained. if you read the wikia page you will see that it's explained there.

long answer: the reason why the battery is getting drained is because ML tasks (the ML code if you want) are not stopping properly when you turn off the camera. by removing the battery the memory is getting cleaned up and any code that still runs will be removed. Removing the card doesn't stop the tasks from running since they are running in memory not on the card.

sbright33: does this makes sense?. if it doesn't let's talk about it now and put this topic to sleep. I agree with Jamez here, the solution is very simple: remove the battery. Anything else that you have done which _seems_ to fix the problem is just confusing the issue.
Title: Re: 500d development
Post by: sbright33 on 07 / June / 2011, 14:18:14
I sorta agree with the long answer.  More experiments which I will not share unless asked.
Title: Re: 500d development
Post by: alins on 07 / June / 2011, 14:36:50
good. now we can move on
Title: Re: 500d development
Post by: soren on 07 / June / 2011, 15:12:28
...
Title: Re: 500d development
Post by: alins on 07 / June / 2011, 15:26:05
Soren, i agree with you on everything you said 100%. That my friend is a great post. I hope that you will spend more time here and post more often.
Title: Re: 500d development
Post by: RoaldFre on 07 / June / 2011, 16:12:04
Nicely formulated, soren!

As a small idea about exlaining why you should remove the battery: it may be beneficial to try to explain it as follows:
Switching the camera from on to off is just the same as a 'button press'. It does not cut physically the power immediatly (you see that 'sensor cleaning' animation even after the switch is in the 'off' position!) and the software could even ignore that button event and keep running happily.

Think of it as a stand-by button, like that of your computer. If the camera receives that signal, it goes into a very low power state ('stand by'), but it's not completely shut down (I assume, or maybe it is actually in a true zero power state, ie cleared RAM etc? -- looks unlikely, given that bug). If ML injects some code here and there, there is a possibility (though a bug that should be fixed) that this code is still executing and draining the battery.

If you actually physically remove the battery for a few seconds, you actually cut the power and the camera shuts off completely. There is no power any more, the ram doesn't get refreshed and thus gets cleared.

If you now re-insert the battery, the Canon firmware will probably do some initialization (I assume, correct if wrong) and then go to the regular 'off' state (the low power 'stand by' state). However, because the ram has been cleared and you are basically doing a cold restart and ML hasn't started running any functions yet (I assume, once again, possibly wrong), you no longer have that battery drain.

I hope that the difference between a 'stand by' state, and a fully 'off'/'powered down' state will make things clear.
Title: Re: 500d development
Post by: a1ex on 07 / June / 2011, 16:27:49
Thanks soren.

I hope I have a nice surprise here:
Code: [Select]
call("lv_ae", 1);
or
Code: [Select]
call("lv_ae", 0);

I've tested on 550D in movie mode (automatic exposure) and in photo mode (Av). It locks the exposure (and prevents you from taking pictures, as a side effect).
Title: Re: 500d development
Post by: LaLaPico on 07 / June / 2011, 16:35:42
Does not compute
Title: Re: 500d development
Post by: Coutts on 07 / June / 2011, 21:16:40
if someone wants to implement what alex posted there, there's a "test function" for easily running tests like this in debug.c, line 142:

Code: [Select]
void xx_test(void* priv)
{
}

it is the "don't press this" option under the debug menu (clicking that menu option calls that function).


change it to:

Code: [Select]
void xx_test(void* priv)
{
call( "lv_ae", 0);
}

to turn off auto exposure for video mode (should allow changing of aperture/iso/shutterspeed from ML menu? can't confirm, haven't tried it yet).


for a simple "toggle", do this:

Code: [Select]
int xx_toggle = 0;
void xx_test(void* priv)
{
call( "lv_ae", xx_toggle );
xx_toggle = !xx_toggle;
}

should be a quick on/off toggle for it if anybody would like to test. If this doesn't work, I'm sorry, just going off of what I think I know about C now :P
Title: Re: 500d development
Post by: mk11174 on 08 / June / 2011, 02:54:10
Thanks soren.

I hope I have a nice surprise here:
Code: [Select]
call("lv_ae", 1);
or
Code: [Select]
call("lv_ae", 0);

I've tested on 550D in movie mode (automatic exposure) and in photo mode (Av). It locks the exposure (and prevents you from taking pictures, as a side effect).

Darn, It seems to lock the exposure, but you cant change anything at all, it works pretty much like the ISO button does, but doesnt allow you to tweak the exposure control at all once it locked, so it seems to turn off Autoexposure, but thats it, and then after you try to record it just freezes the live view window and u need to remove battery to get back to normal.
Title: Re: 500d development
Post by: a1ex on 08 / June / 2011, 03:42:14
That's bad.

Other question: do you have access to exposure compensation from ML, with lens_get_ae and lens_set_ae ?

If yes, you can try to read the current exposure value (i.e. raw_iso - raw_shutter - raw_aperture), and as soon as it changes, apply some negative feedback with lens_set_ae. Something like this (not tested):

Code: [Select]
raw_iso, raw_shutter, raw_aperture = DECODE(PROP_WHICH_CONTAINS_ISO_SHUTTER_AND_APERTURE);
int current_exposure = raw_iso - raw_shutter - raw_aperture;
int reference_exposure = 80 - 101 + 44; // ISO 200 - 1/48 - f4.5, look in lens.h to make up some values
int delta = reference_exposure - current_exposure;
if (delta) lens_set_ae(lens_info.ae + delta);

And call this from some loop (e.g. debug_loop_task), maybe 10 times per second or so.
Title: Re: 500d development
Post by: RoaldFre on 08 / June / 2011, 03:43:20
Code: [Select]
int xx_toggle = 0;
void xx_test(void* priv)
{
    call( "lv_ae", xx_toggle );
    xx_toggle = !xx_toggle;
}

A nicer way would be to declare a static variable for that function only (try to limit the use of globals):

Code: [Select]
void xx_test(void *priv)
{
    static int xx_toggle = 0;
    call( "lv_ae", xx_toggle );
    xx_toggle = !xx_toggle;
}

Declaring it as satic means that it's still preserved after the function returns, so it's still there in its previous state when you call the function again. But because it was declared within that function's scope, it isn't visible for other functions.
Title: Re: 500d development
Post by: mk11174 on 08 / June / 2011, 04:15:43
That's bad.

Other question: do you have access to exposure compensation from ML, with lens_get_ae and lens_set_ae ?

If yes, you can try to read the current exposure value (i.e. raw_iso - raw_shutter - raw_aperture), and as soon as it changes, apply some negative feedback with lens_set_ae. Something like this (not tested):


I am able to access the ML menu after enabling this feature but nothing is changeable, I set up the toggle type so at least I can turn it off and on for testing, which i am able to just fine without cam freezing, I am not like Coutts so not sure what I need to do for the new code test you mentioned, I just new how to change the simple code lol, I wish I knew more so I could test out the 2nd option you mentioned, 8/

Am not sure how to do the debug loop test and am confused about the DECODE part, am I suppose to put a PROP command in there, and not sure how to make it 10x per sec 8/ Not sure if this goes in menu.c or debug.c or where.
Title: Re: 500d development
Post by: a1ex on 08 / June / 2011, 04:36:26
The decode part is pseudocode, look back in this thread and use your binary arithmetic skills :)
Title: Re: 500d development
Post by: gravityrem on 08 / June / 2011, 05:04:46
yay ! looks like things move on here ! amazing.
I don't know if guys now, but it's really exciting to see you guys brainstorming like hell !

Well, sorry for talking about that battery problem again, but i just wanted to share a little trick.
I bought a very cheap grip on ebay. like this one : http://cgi.ebay.fr/Poignee-Grip-de-Batterie-B5G-pr-Canon-450D-500D-1000D-/130443122632?pt=FR_IQ_PhotoVideo_Accessoires_Accessoires_Photo&hash=item1e5f0417c8#ht_4263wt_1141 (http://cgi.ebay.fr/Poignee-Grip-de-Batterie-B5G-pr-Canon-450D-500D-1000D-/130443122632?pt=FR_IQ_PhotoVideo_Accessoires_Accessoires_Photo&hash=item1e5f0417c8#ht_4263wt_1141)

i wasn't sure it would be reliable etc.. but.. Seriously im very happy with it, it doesnt look cheap at all.I can't see any difference between the grip finis, and the camera. anyway..

Then, i added a very small ON/OFF switch, to cut the physical power line.
Very simple mod, very cheap, very quick to do.. and no more battery drain problem.
i ll take pictures of the inside, if someone wanna give it a try :D

Sorry agin if this has nothing to do with this thread.. Just tell me, i'll delete it.
Title: Re: 500d development
Post by: mk11174 on 08 / June / 2011, 05:24:16
The decode part is pseudocode, look back in this thread and use your binary arithmetic skills :)
Sorry, just dont know what I am suppose to do, if anyone wants to tell me exactly what to type and where, I will gladly be the ginnie pig, lol I am super curious if your idea will do anything but just dont know enough to do it on my own, sorry 8/
Title: Re: 500d development
Post by: sbright33 on 08 / June / 2011, 07:54:32
Sounds great Gravityrem!  I have also done a mod, to the battery itself, which makes things much easier.  I'd like to see your pictures of the inside if no one objects, maybe you should send it by message if I'm the only one.  Seems relevant to me since we all have to remove our batteries daily.
Title: Re: 500d development
Post by: Coutts on 08 / June / 2011, 08:07:24
So I gave that code a shot. Ae turns off, and I can change settings while not recording, but if I open the ml menu while recording it cycles through whatever setting is selected, then it buffers out and err70. Hm
Title: Re: 500d development
Post by: mk11174 on 08 / June / 2011, 08:13:13
So I gave that code a shot. Ae turns off, and I can change settings while not recording, but if I open the ml menu while recording it cycles through whatever setting is selected, then it buffers out and err70. Hm
how did u do it, lol, u guys r so smart, anyway you can tell me the code and where to put it so i can see it work even though u get err70
Title: Re: 500d development
Post by: LaLaPico on 08 / June / 2011, 09:42:53
So I gave that code a shot. Ae turns off, and I can change settings while not recording, but if I open the ml menu while recording it cycles through whatever setting is selected, then it buffers out and err70. Hm

But, when not recording, do your changes to the settings actually hold and apply to the next recording? Such as, if you change the shutter speed, is it affecting the live view only? Or is the next recorded video the same?
Title: Re: 500d development
Post by: Wreckless on 08 / June / 2011, 09:48:29
I could use some help with some features from Magic Lantern and I didn't know where to turn. I've tried another forum and reading the manual. Has anyone used native ISO settings? VBR in the newest version?
Title: Re: 500d development
Post by: Jamez on 08 / June / 2011, 12:31:58
VBR has been worked on and improved in the latest unreleased version.
It doesnt work all that well in V1.5

For anyone with battery problems... try changing the setting under Movie > Movie Restart to off.
PS: Hot off the press Alex has fixed every single warning when compiling on the 550D branch, anyone who has compiled ML knows there was a BIIIIIIIIIIIIIIIIIIIG list of warnings when it compiled, and now..... they have all gone. Well done Alex.  :)
Title: Re: 500d development
Post by: adijiwa on 08 / June / 2011, 13:30:12
Related to the 'big list of warnings' stuff in 500D branch, if no one willing to do the 'janitor' task (clean the warnings, etc.), i'm offering myself to do the task.
Title: Re: 500d development
Post by: Jamez on 08 / June / 2011, 13:49:56
Its already been done Adijiwa :)
Title: Re: 500d development
Post by: adijiwa on 08 / June / 2011, 20:53:49
Eh, really? :blink:
The bitbucket log says the last commit is 9 days ago, and it still produces lot of warnings. Or i'm missing something? :P
Title: Re: 500d development
Post by: Jamez on 08 / June / 2011, 20:59:59
Yes, the code hasnt been committed at this time, thats all.
Its based on this changeset from Alex.
https://bitbucket.org/hudson/magic-lantern/changeset/1a91bf897f02
I can pull data from bitbucket using mercurial, but for some reason cant push, ive been playing about with the tortoisehg workbench stuff to see if I can push data using that, if not ill just zip it up and put a download link or something.
Title: Re: 500d development
Post by: arm.indiana on 09 / June / 2011, 01:56:55
You need write access to push data to Hudson tree.
The usage is to create your own repository by cloning Hudson's one.

Indy
Title: Re: 500d development
Post by: adijiwa on 09 / June / 2011, 10:15:17
Why push to Hudson's tree, not to 500D tree @ https://bitbucket.org/alins/magic-lantern-for-500d ?
Btw, is there any coding related stuff that i can help?
Title: Re: 500d development
Post by: Jamez on 09 / June / 2011, 10:31:47
Sorry I didnt make it clear, I was trying to push to alins tree that I have been granted access to, not hudsons.
I`ll work it out..
Title: Re: 500d development
Post by: a1ex on 09 / June / 2011, 10:37:17
For everybody who wants to help with development (adijiwa and others):

You are the one who knows what your skills are and what you can do; I suggest you to play with the code and fix/tweak things. For this, you can make your own clone (fork) of ML tree.

When you do something interesting, we'll pull your changes and integrate them in main builds. When you like something from someone else's repository, you will pull the changes from there. You can use this mechanism for sharing your code changes with us and also keeping your source tree up-to-date.

To make it easier for us to follow your changes, it is recommended to push one feature/bugfix at a time.

Also, it would be nice if you could document the internals of Magic Lantern on the wiki. Before jumping into the code, I've tried to understand the original ML for 5D2 (written by Trammell Hudson), and somehow documented the API.

You can continue this quest, this will be very helpful for new developers.

A few of those pages:
http://magiclantern.wikia.com/wiki/Magic_Lantern_API (http://magiclantern.wikia.com/wiki/Magic_Lantern_API)
http://magiclantern.wikia.com/wiki/Extending_Magic_Lantern (http://magiclantern.wikia.com/wiki/Extending_Magic_Lantern)
http://magiclantern.wikia.com/wiki/DevFAQ (http://magiclantern.wikia.com/wiki/DevFAQ)

This should be the startup page for developer information, and I recommend you to read everything linked from there (on 550D and 5D2 pages there are two heaps of must-read links):

http://magiclantern.wikia.com/wiki/For_Developers (http://magiclantern.wikia.com/wiki/For_Developers)

Also take a look at CHDK's excellent development pages.
http://chdk.wikia.com/wiki/Category:Development (http://chdk.wikia.com/wiki/Category:Development)
Title: Re: 500d development
Post by: Coutts on 09 / June / 2011, 11:10:21
i suggest using yagarto for your arm toolchain. i've successfully used it both on windows and os x.


edit
I have started my own bitbucket repository for daily builds / testing. I will be including the autoexec.bin in each new commit, so you can always try the latest.

It is located here:
https://bitbucket.org/coutts/magic-lantern-500d/wiki/Home
Title: Re: 500d development
Post by: silasje1 on 10 / June / 2011, 16:49:06
with your version, couts i cant get the video function working :(
Title: Re: 500d development
Post by: Coutts on 10 / June / 2011, 17:21:33
I wrote a huge wiki page today for setting up the toolchain to compile magic lantern, along with the arm-console for firmware analysis, step by step for mac os x 10.6.7:

http://magiclantern.wikia.com/wiki/Magic_Lantern_Development_on_Mac (http://magiclantern.wikia.com/wiki/Magic_Lantern_Development_on_Mac)


take a look :)


Yes, if you are using the version from my repository I don't have very many things fixed up yet (and I still need to merge to the latest 550d source as well).
Title: Re: 500d development
Post by: Coutts on 10 / June / 2011, 21:48:21
anyone notice that live view appears to take faster burst shots than outside of lv???

Title: Re: 500d development
Post by: RoaldFre on 11 / June / 2011, 05:19:02
Possibly because the mirror does not have to come down and back up again? Now that I think about it, I don't really hear a difference between LV and regular burst shots, I *assume* the mirror stays down, but I can't hear it.

Also, purely subjectively speaking, I didn't really notice a difference in burst speed. You can try timing it by recording the clicking of the camera with a microphone and examining the time signal on a computer. That should allow you to get a rather accurate view of the precise burst rate in both cases.
Title: Re: 500d development
Post by: Coutts on 11 / June / 2011, 17:07:20
only the first 2 shots are faster in live view

so say it goes like this outside of live view:
click....click....click....click....click

in live view (at least my camera) it's like:
click..click....click....click....click

only the second shot in the burst seems quicker, and alos in live view I notice the screen for when it's busy looks different (it's a different font), compared to outside of LV there is no busy screen (it just stays black while the led is lit).

Yesterday I tried calling "lv_jukai" and now apparently this is being enabled at every boot. still not sure what it does. check out a debug log from last night (i was messing around with e-shutter and this was still in there??):

Code: [Select]
 1048:  2129.013 [LV] LV_JUKAI_OFF_TO_ON
  1049:  2135.259 [LVFD] [DETFEN] DetectFace_InDRAM BaseWidth : 960
  1050:  2135.289 [LVFD] [DETFEN] XB:960, YB:640, Dir:0
  1053:  2157.304 [LVFD] LVCPF_SortPrimaryFace( Num = 0 )
  1054:  2157.369 [LVFD] &&& ( V2mode, SetZoomArea ) = ( 1, 1 )
  1055:  2157.391 [LVFD] &&& ( m_fIncorrect, m_bPrimaryFirst ) = ( 0, 1 )
  1056:  2157.416 [LVFD] **PreFace( ID=1, (0, 0), Size=0, Num=0 )
  1057:  2178.915 [LV] LV_JUKAI_ON


I also found a function that prints some debug messages related to live view debugging. Function is located at 0xff205bd0. I wonder what all of these references to Bv and Bv_control are???

Code: [Select]
6134: 13108.508 [LVAE] print LiveViewAE Gero >> version:256, size: 908
 6135: 13108.538 [LVAE] >> ShootBv:0x26, Bv:0x26, SubjectBv:0x24, WBDetectBv:36
 6136: 13108.565 [LVAE] >> EXP > Tv:0x60[741], Av:0x11, ISO:0x68, Bv:0x41
 6137: 13108.590 [LVAE] >> LST > Tv:0x60[741], Av:0x11, ISO:0x68, Bv:0x41
 6138: 13108.615 [LVAE] >> CTRL > Tv:0x60[741], Av:0x11, ISO:0x68, Bv:0x41
 6139: 13108.638 [LVAE] >> Es:-83, Ea:-81, DeltaBvAve:-86, Fno_corr:0
 6140: 13108.657 [LVAE] >> Gamma:0, Alpha:0, CenterP:0, PixOverCorr:0
 6141: 13108.681 [LVAE] >> LENS_ID:169, AVEF:17, AVO:16, AVMAX:72, AVFIX:0
 6142: 13108.699 [LVAE] >> Vignetting(V0:0, V1:2, V2:5, V3:8)
 6143: 13108.716 [LVAE] >> LiveViewMode:0, ExposureImageMode:2
 6144: 13108.728 [LVAE] >> SensorScanMode:1
 6145: 13108.742 [LVAE] >> MeteringMode:0, FocusingMode:0
 6146: 13108.769 [LVAE] >> AFWindowPosition:(792,468), AFWindowSize:(158,211)
 6147: 13108.789 [LVAE] >> FaceWindowPosition:(0,0), FaceWindowSize:(0,0)
 6148: 13108.800 [LVAE] >> CameraPosition:0
 6149: 13108.826 [LVAE] >> WBGain:(R:1962, G1:1094, G2:1094, B:2164)
 6150: 13108.847 [LVAE] >> ExposureCompValue:0, AEBCompValue:0, FlickerStatus:0
 6151: 13108.868 [LVAE] >> Y (Top:13, Center:71, Bottom:2)


A search of strings containing bv from the 500d dump:
Quote
In [11]: s Bv
ff2007cc: '[LVAE] >> TargetBv:0x%02X(%d), CtrlBv:0x%02X, DeltaBv:%d'
ff200816: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff200c80: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff200cba: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff2010f4: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff4412d7: ' Bv'
ff205890: '[LVAE] >> ControlBvLimit:%d'
ff2014d8: '[LVAE] >> Bv[%d]:0x%02X(%d), DeltaBvTemp:%d(%d,%d), Accel:%d'
ff201518: '[LVAE] >> Bv[%d]:0x%02X(%d), DeltaBvTemp:%d(%d,%d)'
ff435914: '0Bv'
ff4532a8: '[LVAE] >> OUT[%d] > Tv:0x%02X[%d](Gain:%d), Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff202488: ' fTrustBv=FALSE'
ff20083c: '[LVAE] >> Bv[%d]:0x%02X, DispGain:%d'
ff203adc: '[LVAE] EP_SetControlBvLimit >> ControlBvLimit:%d'
ff203ca4: '[LVAE] EP_SetControlBv() >> EP_ControlBv:%d'
ff200c48: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff41f0f0: 'GetFirstAeParameter ISO:%d Dsp:%d Acm:%d Sub:%d Bv:%x WB:%x %d %d'
ff205620: '[LVAE] >> BvThres_Hi: %d, %d, %d, %d, %d'
ff20564c: '[LVAE] >> BvThres_Lo: %d, %d, %d, %d, %d'
ff205678: '[LVAE] >> BvThresF50Hz_Hi: %d, %d, %d, %d, %d'
ff2056a8: '[LVAE] >> BvThresF50Hz_Lo: %d, %d, %d, %d, %d'
ff2056d8: '[LVAE] >> BvThresF60Hz_Hi: %d, %d, %d, %d, %d'
ff205708: '[LVAE] >> BvThresF60Hz_Lo: %d, %d, %d, %d, %d'
ff205ed8: '[LVAE] >> EXP > Tv:0x%02X[%d], Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff205f18: '[LVAE] >> LST > Tv:0x%02X[%d], Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff205f5c: '[LVAE] >> Es:%d, Ea:%d, DeltaBvAve:%d, Fno_corr:%d'
ff2010b8: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
ff2066b4: 'lvae_setcontrolbvlimit'
ff201144: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d, Accel:%d'
ff4535f4: '[LVAE] >> CTRL > Tv:0x%02X[%d], Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff1771f0: '[IMP][MDECRSZ] pPbV Den = %ld, Num = %ld'
ff24de4c: '[DDD] Bv:%#x( Thresh=0x62 )'
ff247aa4: '[H264Resize]pPbV Den = %ld, Num = %ld'
ff1fddb0: '[LVAE] Warning >> Limit of ControlBv:0x%02X > 0x%02X'
ff206668: 'lvae_setcontrolbv'
ff0fd810: 'FDist=F:%d-L:%d FRatio=%ld (Full) Bv:%X<4A'
ff452ee8: '[LVAE] >> MovExpCtrlBvThres_init[%d]:0x%02X, ApartureValue:0x%02X'
ff4719be: 'EngInt PBVD'
ff4531cc: '[LVAE] >> INe > Tv:0x%02X[%d](Gain:%d), Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff452e54: '[LVAE] >> MovExpCtrl(IN) > ControlBv:0x%02X, Av:0x%02X, FlickerMode:%d'
ff453264: '[LVAE] >> Bv:0x%02X, PreBv:0x%02X, InterlockBv:0x%02X, DeltaBv:%d'
ff452e9c: '[LVAE] >> MovExpCtrl_init(IN) > ControlBv:0x%02X, Av:0x%02X, FlickerMode:%d'
ff452f70: '[LVAE] >> SetSafeReturnParam: Bv:0x%02X, WBBv:0x%02X, ResultExposureParamNum:%d'
ff452fc0: '[LVAE] >> fValidResult:%d, fExpSim:%d, fCompAEForTVAF:%d, fTrustBv:%d'
ff453008: '[LVAE] >> OUT[0] > Tv:0x%02X[%d](Gain:%d), Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff1fdd6c: '[LVAE] >> ControlBv:0x%02X > Tv:0x%02X, Av:0x%02X, ISO:0x%02X'
ff453218: '[LVAE] >> INl > Tv:0x%02X[%d](Gain:%d), Av:0x%02X, ISO:0x%02X, Bv:0x%02X'
ff4532f8: '[LVAE] >> CalcLVAEParameter() > Bv:0x%02X, LastExpBv:0x%02X, LastExpAv:0x%02X'
ff453348: '[LVAE] >> CalcLVAEParameter() > Bv:0x%02X, fHDR:%d, IntervalH:%d'
ff45338c: '[LVAE] >> OUT > Tv:0x%02X[%d](Gain:%d), Av:0x%02X, ISO:0x%02X, Bv:0x%02X\n'
ff2b8970: '***** MenuModel.c GetPopupAEBValue: unknown(0x%lx)'
ff4535ac: '[LVAE] >> ShootBv:0x%02X, Bv:0x%02X, SubjectBv:0x%02X, WBDetectBv:%d'
ff200278: '[LVAE] >> TargetCtrlBv:0x%02X, SpotBv:0x%02X, DeltaSpotBv:%d'
ff0e3e58: 'CameraSv=%d (PROP_BV)'
ff2b8940: '***** GetPopupAEBValueForFuncNo hDialog is NULL'
ff43aab3: ' Bv'
ff0fadd4: 'SetAFAEMode Bv=0x%X FrameRate=%d FlickerStatus=%d'
ff0fb268: 'SetAFAEMode fSaturt=%d BvSft=%d AfDrvMode=%d Av=0x%X IcuTm=%d'
ff0db970: 'AfAeMode BV:0x%X FnoM:%d(%d) FL:%d Dist=%d FR:%d'
ff1fd6a4: '[LVAE] >> deltaBv_sky:%d'
ff0fd7e4: 'FDist=F:%d-L:%d FRatio=%ld (Full) Bv:%X>4A'
ff0fd870: 'FDist=F:%d-L:%d N:%ld FR:%ld Adj:%ld Bv:%X>4A'
ff1fdcd8: '[LVAE] >> DeltaBv0_24:%d, gamma_24:%d, Bv:%d'
ff0fd8a0: 'FDist=F:%d-L:%d N:%ld FR:%ld Adj:%ld Bv:%X<4A'
ff1de538: 'FA_SetObWindow H:%d,V:%d,BH:%d,BV:%d'
ff43e5b9: ' Bv%'
ff1de870: 'FA_SetProjectionWindow V:%d,BV:%d'
ff1feb84: '[LVAE] >> MovExpCtrlBvThres_Lo[%d]:0x%02X, AvThres_Hi:0x%02X'
ff1febc4: '[LVAE] >> MovExpCtrlBvThres_Hi[%d]:0x%02X, AvThres_Lo:0x%02X'
ff1fec04: '[LVAE] Error >> ControlBv:0x%02X, AvThres(Hi:0x%02X, Lo:0x%02X)'
ff43f4fd: ' Bv'
ff0df658: 'WB-Bv 0x%lX Line:%ld'
ff1fff10: '[LVAE] >> TargetDispBv:0x%02X, ControlBv:0x%02X'
ff200870: ' KeepOnExpCtrlCount:%d, DeltaBv_24:%d'
Title: Re: 500d development
Post by: silasje1 on 13 / June / 2011, 14:14:02
btw, i noticed the ML firmware doesnt get conmpletly removed after install official canon firmware. Im not able to record videos anymore :( the button now makes a normal picture sound, but doesnt save it?
Title: Re: 500d development
Post by: a1ex on 13 / June / 2011, 16:35:46
Post more details (what happened before reinstalling canon firmware; why did you reinstall it; what happens if you clear settings...)
Title: Re: 500d development
Post by: agour on 13 / June / 2011, 18:19:26
I haven't read much on the going on recently, but whats the status on the intervelometer? :)
Title: Re: 500d development
Post by: silasje1 on 14 / June / 2011, 02:46:56
Sorry it seems to work now??? weird....

but the focus button does werid things in video mode. It does focus, but with taking pitures sound?
Title: Re: 500d development
Post by: a1ex on 14 / June / 2011, 03:30:10
It sounds like you are using the "shutter killer" focusing mode ("Quick" in Canon menus). Clear your camera settings to restore the defaults.

BTW, yesterday I've tried to write to a possible HD VRAM buffer (I'm not actually sure that that buffer even exists). It seemed to worked fine at first; but after turning off the camera, it didn't start any more (only the viewfinder showed the info and sometimes "Err").

After changing a few modes and rewriting the bootflags and autoexec.bin on the card, it started again :)
Title: Re: 500d development
Post by: silasje1 on 14 / June / 2011, 03:37:02
oke thanks :)
Title: Re: 500d development
Post by: RoaldFre on 14 / June / 2011, 12:27:19
[...]
After changing a few modes and rewriting the bootflags and autoexec.bin on the card, it started again :)

What do you mean by "changing a few modes"?
Title: Re: 500d development
Post by: a1ex on 14 / June / 2011, 12:46:52
P, Tv, Av, M, movie...
Title: Re: 500d development
Post by: Wreckless on 15 / June / 2011, 11:16:50
Seem like there something wrong with the Issues list on Bitbucket? Is this true for everyone? I'm unable to post a bug Ive found like I did before.
Title: Re: 500d development
Post by: mk11174 on 18 / June / 2011, 21:39:28
So sad how things died off in here 8[
Title: Re: 500d development
Post by: bjacklee on 19 / June / 2011, 07:01:10
No more updates? :(
Title: Re: 500d development
Post by: Wreckless on 19 / June / 2011, 09:27:11
No more place to report bugs except where it's full of garbage and no one reads it anyway...
Title: Re: 500d development
Post by: Coutts on 21 / June / 2011, 14:45:43
Sorry I've kind of not worked on it at all lately. I guess I got bored with it  :-X

A friend of mine had been complaining about only having ISO1600 and a bunch of other dumb stuff on his rebel xs (1000d), so I have been working on getting something started on that lately. I've finally gotten code to run on the camera (with help from indy and chuchin for signing a .fir file), so things should be taking off soon :)


my classes are almost done as well so I will have a lot more time to work on everything. Roaldfre says his classes are almost over as well, so hopefully he will be able to get his camera fixed and maybe start working on the 1000d :)
I don't know if anyone else is familiar with Roaldfre, he found all of the initial 500d vram information (http://magiclantern.wikia.com/wiki/VRAM/500D), and his camera hasn't worked since doing all of the RAM dumping for that, specifically, dumping the 0xC range he thinks is what caused it (so beware when dumping ram).


sorry guys :-/


oh and as far as bitbucket, I'm not sure what's happening with issues there, has someone been cleaning them up maybe? Keep in mind each new "merge to latest 550d code" commit kind of changes everything and old issues won't be valid. Another major update will be needed whenever someone starts this again.
Title: Re: 500d development
Post by: RoaldFre on 21 / June / 2011, 17:39:31
I just spent a bit of time on trying to build a .fir of the latest build and getting it to load on my cam. It worked, code at:
http://bitbucket.org/roaldfre/magic-lantern-for-500d/ (http://bitbucket.org/roaldfre/magic-lantern-for-500d/)

I also split off the makefile config stuff to a separate file so it's easier to work on that with multiple devs. Pull request sent to alins.

It looks as though the current build is dumping a lot of memory info on screen? I'll look into that tomorrow (or the day after tomorrow, or ... :P) and try to reset my bootflag so I can start ML from the autoexec.bin instead of from the .fir file.
Title: Re: 500d development
Post by: Coutts on 21 / June / 2011, 20:52:18
ah yes, that's bmp_hexdump :) look in zebra.c, i think it's in there (or debug.c). I was bmp_hexdump'ing mvr_config while trying to fix some of the bitrate.c stuff. That's going to need looked at, the struct in there must be fixed to match the 500d's struct (which is drastically different because of the lack of frame rates and resolution modes).

It probably looked something like this :P

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fa4.sphotos.ak.fbcdn.net%2Fhphotos-ak-ash4%2F246705_10150618407375344_704010343_18811499_208841_n.jpg&hash=8ab6fe4ba8cc247188d5106d104fb927)
Title: Re: 500d development
Post by: vitus on 22 / June / 2011, 12:47:50
u suck i waited months and now i bought a 550d :)
Title: Re: 500d development
Post by: silasje1 on 22 / June / 2011, 14:55:54
u suck i waited months and now i bought a 550d :)

good for you then... just go back to your own isolation cell
Title: Re: 500d development
Post by: gravityrem on 22 / June / 2011, 15:13:57
yay ! looks like the project isnt dead !
Title: Re: 500d development
Post by: RoaldFre on 22 / June / 2011, 17:10:22
Jamez, could you make a bitbucket account and share your changes wrt cleaning the warnings. They are driving me mad and they really obscure *important* warnings and errors.

I don't feel like cleaning that out myself if you've already done it ;-).

Send a pull request to alins' or my repo if you have the code online.
Alternatively, you could just put a patch on some pastesite somewhere so we can apply it that way if you don't feel like creating a bitbucket account/repo (I'm not that familiar with hg, but it should be easy to make a patch).
Title: Re: 500d development
Post by: Coutts on 23 / June / 2011, 02:12:27
for windows use tortoisehg and mac use Mac hg :)
Title: Re: 500d development
Post by: adijiwa on 24 / June / 2011, 06:19:28
Jamez, could you make a bitbucket account and share your changes wrt cleaning the warnings. They are driving me mad and they really obscure *important* warnings and errors.

I don't feel like cleaning that out myself if you've already done it ;-).

Send a pull request to alins' or my repo if you have the code online.
Alternatively, you could just put a patch on some pastesite somewhere so we can apply it that way if you don't feel like creating a bitbucket account/repo (I'm not that familiar with hg, but it should be easy to make a patch).

Hi,
I just removed the (most of) compiler warnings. Please see https://bitbucket.org/adijiwa/magic-lantern-for-500d if you're interested. I didn't mean to take over James' work. Borrowing your words, 'they are driving me mad', too. :)

If you don't mind, please check if there is any regressions in my commit.
Title: Re: 500d development
Post by: Jamez on 24 / June / 2011, 06:26:13
Its no problem well done, Alex has basically done it all already and I just used it for our 500D.
I have had to buy another laptop recently after my microwave fell on top of my last laptop in a bigish quake here killing both in the process :(
(Thats laptop number 3 im on since March 11th).

Ive almost got all the software and everything set back up.
On laptop 2 I could pull from alins repository but not push for whatever reason, I hope laptop number 3 has more luck :)
Title: Re: 500d development
Post by: RoaldFre on 27 / June / 2011, 17:27:21
I've fixed a bug that caused the remote audio triggering to go off on the sound of the shutter when using the camera self timer. I'm not sure if I had to fix it in the audio trigger code, or to make remote_shot() do the appropriate waiting so it's "fixed" for all code (still haven't looked at the code deeply enough to know everything that depends on remote_shot()).

Change here: https://bitbucket.org/roaldfre/magic-lantern-for-500d/changeset/f1fd1bbb3d91
This probably needs to be pushed to the 550D branch as well.

There is also another bug, I think -- patched here: https://bitbucket.org/roaldfre/magic-lantern-for-500d/changeset/28208abed6d1
Did not have any cases where it went wrong, but the flow of the code seemed odd to me (first draw the default icon, then call display() so it can override if necessary).
Probably needs to be in 550D as well.


Lastly, I've noticed that we have drifted quite a bit from the 550D branch code. I would recommend trying to get in sync with them again.
However, the code at both ends needs some refactoring to maintain workable between the different branches. For example, zebra.c is *full* of 'magic numbers'. All literal constants (eg adresses, resolutions, ...) should belong in a separate header file as defined named constants. The only literals you should potentially use are 0, 1, 255, 256, etc (and even then you should be careful).
This would allow the 550D and 500D branch to use pretty much the exact same code, but with the appropriate header files differing in their values.

Also, zebra.c (and others) seem to be full of logic spread here and there, with monolithic functions that are hundreds of lines long. This could use some refactoring into separate functions, trying to separate logical decision structure from the raw data manipulations etc and giving more overview (and documentation) and maintainability.

(Just my 2c)
Title: Re: 500d development
Post by: Coutts on 27 / June / 2011, 19:25:43
I've got things back up to date with the latest 550d commit, and I put the fake_simple_button() implementation from the 60d in so that works now.

https://bitbucket.org/coutts/magic-lantern-500d/overview
Title: Re: 500d development
Post by: a1ex on 28 / June / 2011, 03:21:36
I've fixed a bug that caused the remote audio triggering to go off on the sound of the shutter when using the camera self timer. I'm not sure if I had to fix it in the audio trigger code, or to make remote_shot() do the appropriate waiting so it's "fixed" for all code (still haven't looked at the code deeply enough to know everything that depends on remote_shot()).

The bug is more complex, and I think the right fix is to make remote_shot wait until a picture is taken, even if the self-timer is active. I'll look into it.

Quote
There is also another bug, I think -- patched here: https://bitbucket.org/roaldfre/magic-lantern-for-500d/changeset/28208abed6d1
Nope, that's a feature :)

Quote
This would allow the 550D and 500D branch to use pretty much the exact same code, but with the appropriate header files differing in their values.

I'm actually thinking to borrow CHDK's approach of splitting camera-specific code (in platform directory), and be able to compile ML for all cameras from a single source tree.

In zebra.c, the code is written with the assumption that LiveView image buffer has the same size as BMP overlay buffer (in 550D, 720x480). This simplifies the code a bit (as there's no scaling to be done), but causes HDMI issues (where the buffer sizes vary a lot). But since we can force HDMI resolution back to SD (i.e. 720x480), I think we can still assume 1:1 scaling.

Also, I think it's worth trying to convert the code back to plain array addressing (instead of pointers); maybe the latest gcc (4.6.0) is able to optimize these loops.
Title: Re: 500d development
Post by: aznguy on 28 / June / 2011, 15:32:06
Theres a new T1i Firmware, just released, seems like nothing new...
"
Firmware Version 1.1.1 incorporates the following fixes.

    Fixes incorrect indications in the Arabic and Portuguese menu screens."

I wonder if anything else is added (doubt it), anyone wanna check it out?
Title: Re: 500d development
Post by: Coutts on 28 / June / 2011, 22:44:30
I think I have the mvr_config struct in dryos.h fixed up, I've spent about 10 hours on it now. Ours is pretty different from the 550d, i hope this works.

500d:
Code: [Select]
struct mvr_config
{
uint16_t debug_flag; // 0x00, 85f4, 1 = write debugmsg's
uint16_t qscale_mode; // 0x02, 85f6, 1 = QScale, 0 = CBR
uint16_t db_filter_a; // 0x04, 85f8, no effect
uint16_t db_filter_b; // 0x06, 85fa, no effect
int16_t def_q_scale; // 0x08, 85fc, works when qscale_mode = 1
int16_t qscale_limit_L; // 0x10, 85fe
int16_t qscale_limit_H; // 0x12, 8600
uint16_t time_const; // 0x14, 8602, unknown
uint32_t fullhd_20fps_opt_size_I;// 0x16, 8604, works when qscale_mode = 0
uint32_t fullhd_20fps_opt_size_P;// 0x1a, 8608
uint32_t D1_20fps; // 0x1e, 860c
uint32_t D2_20fps; // 0x1c, 8610
uint32_t x8610_unknown; // 0x20, 8614
uint32_t hd_30fps_opt_size_I; // 0x24, 8618
uint32_t hd_30fps_opt_size_P; // 0x28, 861c
uint32_t x861c_unknown; // 0x30, 8624
uint32_t x8624_unknown; // 0x34, 8628
uint32_t vga_30fps_opt_size_I; // 0x38, 862c
uint32_t vga_30fps_opt_size_P; // 0x3c, 8630
uint32_t vga_30fps_D1; // 0x40, 8634
uint32_t vga_30fps_D2; // 0x44, 8638
int32_t IniQScale; // 0x4c, 8640
int32_t actual_qscale_maybe; // 0x50, 8644
uint32_t IOptSize; // 0x54, 8648
uint32_t POptSize; // 0x58, 864c
uint32_t IOptSize2; // 0x5c, 8650
uint32_t POptSize2; // 0x60, 8654
uint32_t GopSize; // 0x64, 8658
uint32_t B_zone_NowIndex; // 0x68, 865c
uint32_t gop_opt_array_ptr; // 0x6c, 8660
uint32_t _D1; // 0x70, 8664
uint32_t _D2; // 0x74, 8668
uint32_t x8668_unknown; // 0x78, 866c -- 1080p = 0x9, 720p/480p = 0xE
uint32_t fullhd_20fps_gop_opt_0; // 0x7c, 8670
uint32_t fullhd_20fps_gop_opt_1; // 0x80, 8674
uint32_t fullhd_20fps_gop_opt_2; // 0x84, 8678
uint32_t hd_30fps_gop_opt_0; // 0x88, 867c
uint32_t hd_30fps_gop_opt_1; // 0x8c, 8680
uint32_t hd_30fps_gop_opt_2; // 0x90, 8684
uint32_t vga_30fps_gop_opt_0; // 0x94, 8688
uint32_t vga_30fps_gop_opt_1; // 0x98, 868c
uint32_t vga_30fps_gop_opt_2; // 0x9c, 8690
} __attribute__((aligned,packed));

550d:
Code: [Select]
struct mvr_config
{
uint16_t debug_flag; // 0x00, 67bc, 1 = write debugmsg's
uint16_t qscale_mode; // 0x02, 67be, 1 = QScale, 0 = CBR
uint16_t db_filter_a; // 0x04, 67c0, no effect
uint16_t db_filter_b; // 0x06, 67c2, no effect
int16_t def_q_scale; // 0x08, 67c4, works when qscale_mode = 1
int16_t qscale_related_1; // 0x0a, 67c6
int16_t qscale_related_2; // 0x0c, 67c8
int16_t qscale_related_3; // 0x0e, 67ca
int16_t qscale_limit_L; // 0x10, 67cc
int16_t qscale_limit_H; // 0x12, 67ce
uint16_t time_const; // 0x14, 67d0, unknown
uint16_t x67d0; // 0x16, 67d2
uint32_t fullhd_30fps_opt_size_I;// 0x18, 67d4, works when qscale_mode = 0
uint32_t fullhd_30fps_opt_size_P;// 0x1c, 67d8
uint32_t D1_30fps; // 0x20, 67dc
uint32_t D2_30fps; // 0x24, 67e0
uint32_t x67e4; // 0x28, 67e4
uint32_t fullhd_25fps_opt_size_I;// 0x2c, 67e8
uint32_t fullhd_25fps_opt_size_P;// 0x30, 67ec
uint32_t fullhd_25fps_D1; // 0x34, 67f0
uint32_t fullhd_25fps_D2; // 0x38, 67f4
uint32_t x67f8; // 0x3c, 67f8
uint32_t fullhd_24fps_opt_size_I;// 0x40, 67fc
uint32_t fullhd_24fps_opt_size_P;// 0x44, 6800
uint32_t fullhd_24fps_D1; // 0x48, 6804
uint32_t fullhd_24fps_D2; // 0x4c, 6808
uint32_t x680c; // 0x50, 680c
uint32_t hd_60fps_opt_size_I; // 0x54, 6810
uint32_t hd_60fps_opt_size_P; // 0x58, 6814
uint32_t hd_60fps_D1; // 0x5c, 6818
uint32_t hd_60fps_D2; // 0x60, 681c
uint32_t x6820; // 0x64, 6820
uint32_t hd_50fps_opt_size_I; // 0x68, 6824
uint32_t hd_50fps_opt_size_P; // 0x6c, 6828
uint32_t hd_50fps_D1; // 0x70, 682c
uint32_t hd_50fps_D2; // 0x74, 6830
uint32_t x6834_kinda_counter; // 0x78, 6834
uint32_t vga_60fps_opt_size_I; // 0x7c, 6838
uint32_t vga_60fps_opt_size_P; // 0x80, 683c
uint32_t vga_60fps_D1; // 0x84, 6840
uint32_t vga_60fps_D2; // 0x88, 6844
uint32_t x6848; // 0x8c, 6848
uint32_t vga_50fps_opt_size_I; // 0x90, 684c
uint32_t vga_50fps_opt_size_P; // 0x94, 6850
uint32_t vga_50fps_D1; // 0x98, 6854
uint32_t vga_50fps_D2; // 0x9c, 6858
uint32_t x685c; // 0xa0, 685c
int32_t another_def_q_scale; // 0xa4, 6860
int32_t IniQScale; // 0xa8, 6864
int32_t actual_qscale_maybe; // 0xac, 6868
uint32_t IOptSize; // 0xb0, 686c
uint32_t POptSize; // 0xb4, 6870
uint32_t IOptSize2; // 0xb8, 6874
uint32_t POptSize2; // 0xbc, 6878
uint32_t GopSize; // 0xc0, 687c
uint32_t B_zone_NowIndex; // 0xc4, 6880
uint32_t gop_opt_array_ptr; // 0xc8, 6884
uint32_t _D1; // 0xcc, 6888
uint32_t _D2; // 0xd0, 688c
uint32_t x6890_counter_maybe; // 0xd4, 6890
uint32_t fullhd_30fps_gop_opt_0; // 0xd8, 6894
uint32_t fullhd_30fps_gop_opt_1; // 0xdc, 6898
uint32_t fullhd_30fps_gop_opt_2; // 0xe0, 689c
uint32_t fullhd_30fps_gop_opt_3; // 0xe4, 68a0
uint32_t fullhd_30fps_gop_opt_4; // 0xe8, 68a4
uint32_t fullhd_25fps_gop_opt_0; // 0xec, 68a8
uint32_t fullhd_25fps_gop_opt_1; // 0xf0, 68ac
uint32_t fullhd_25fps_gop_opt_2; // 0xf4, 68b0
uint32_t fullhd_25fps_gop_opt_3; // 0xf8, 68b4
uint32_t fullhd_25fps_gop_opt_4; // 0xfc, 68b8
uint32_t fullhd_24fps_gop_opt_0; // 0x100, 68bc
uint32_t fullhd_24fps_gop_opt_1; // 0x104, 68c0
uint32_t fullhd_24fps_gop_opt_2; // 0x108, 68c4
uint32_t fullhd_24fps_gop_opt_3; // 0x10c, 68c8
uint32_t fullhd_24fps_gop_opt_4; // 0x110, 68cc
uint32_t hd_60fps_gop_opt_0; // 0x114, 68d0
uint32_t hd_60fps_gop_opt_1; // 0x118, 68d4
uint32_t hd_60fps_gop_opt_2; // 0x11c, 68d8
uint32_t hd_60fps_gop_opt_3; // 0x120, 68dc
uint32_t hd_60fps_gop_opt_4; // 0x124, 68e0
uint32_t hd_50fps_gop_opt_0; // 0x128, 68e4
uint32_t hd_50fps_gop_opt_1; // 0x12c, 68e8
uint32_t hd_50fps_gop_opt_2; // 0x130, 68ec
uint32_t hd_50fps_gop_opt_3; // 0x134, 68f0
uint32_t hd_50fps_gop_opt_4; // 0x138, 68f4
uint32_t vga_60fps_gop_opt_0; // 0x13c, 68f8
uint32_t vga_60fps_gop_opt_1; // 0x140, 68fc
uint32_t vga_60fps_gop_opt_2; // 0x144, 6900
uint32_t vga_60fps_gop_opt_3; // 0x148, 6904
uint32_t vga_60fps_gop_opt_4; // 0x14c, 6908
uint32_t vga_50fps_gop_opt_0; // 0x150, 690c
uint32_t vga_50fps_gop_opt_1; // 0x154, 6910
uint32_t vga_50fps_gop_opt_2; // 0x158, 6914
uint32_t vga_50fps_gop_opt_3; // 0x15c, 6918
uint32_t vga_50fps_gop_opt_4; // 0x160, 691c
} __attribute__((aligned,packed));


edit:
it works!! i think. I can use qscale and cbr now, but for some reason opt0 is 0, so "opt_set: err!" is displayed on the screen. 3x cbr buffered out after 9 seconds (class 6 card) but the bitrate of the video was 53mbps (not much happening in it, seems to be working). My repository is updated here:
https://bitbucket.org/coutts/magic-lantern-500d

So.. it works?? :P

I'll look at it more tomorrow, I'm throwing in the towel for today.
Title: Re: 500d development
Post by: a1ex on 29 / June / 2011, 07:00:44
Almost there; you still need to improve your hex couting skills :)

Offsets for FULLHD OPT are 0x10/0x14; others are correct (0x24/0x28, 0x38/0x3c). Also, make sure you have the right number of in-between variables (so the offset of each field in the structure should match the offset in the comment).

You also need to make a new constant, MOV_GOP_OPT_STEP = 3, and keep MOV_OPT_STEP = 5. I've assummed these two are equal; they are in 550D/60D/600D.
Title: Re: 500d development
Post by: Coutts on 29 / June / 2011, 15:17:30
alright it looks like q-scale and cbr should be working now (finally). Big thanks to Alex for everything (as usual :P ), seriously this whole project would be nowhere without him answering all of my questions.

This is what the final mvr_config struct looks like, it seems to be working now so I think this is finally it!!
Quote
struct mvr_config
{
   uint16_t      debug_flag;            // 0x00, 85f4, 1 = write debugmsg's
   uint16_t      qscale_mode;         // 0x02, 85f6, 1 = QScale, 0 = CBR
   uint16_t      db_filter_a;         // 0x04, 85f8, no effect
   uint16_t      db_filter_b;         // 0x06, 85fa, no effect
   int16_t         def_q_scale;         // 0x08, 85fc, works when qscale_mode = 1
   int16_t       qscale_limit_L;         // 0x0a, 85fe
   int16_t       qscale_limit_H;         // 0x0c, 8600
   uint16_t      time_const;            // 0x0e, 8602, unknown
   uint32_t      fullhd_20fps_opt_size_I;// 0x10, 8604, works when qscale_mode = 0
   uint32_t      fullhd_20fps_opt_size_P;// 0x14, 8608
   uint32_t      fullhd_20fps_D1;            // 0x18, 860c
   uint32_t      fullhd_20fps_D2;            // 0x1c, 8610
   uint32_t      x8610_unknown;         // 0x20, 8614
   uint32_t      hd_30fps_opt_size_I;   // 0x24, 8618
   uint32_t      hd_30fps_opt_size_P;   // 0x28, 861c
   uint32_t      hd_30fps_D1;         // 0x2c, 8620
   uint32_t      hd_30fps_D2;         // 0x30, 8624
   uint32_t      x8624_unknown;         // 0x34, 8628
   uint32_t      vga_30fps_opt_size_I;   // 0x38, 862c
   uint32_t      vga_30fps_opt_size_P;   // 0x3c, 8630
   uint32_t      vga_30fps_D1;         // 0x40, 8634
   uint32_t      vga_30fps_D2;         // 0x44, 8638
   uint32_t      x8638_unknown;         // 0x48, 863c
   int32_t       IniQScale;            // 0x4c, 8640
   int32_t       actual_qscale_maybe;   // 0x50, 8644
   uint32_t      IOptSize;            // 0x54, 8648
   uint32_t      POptSize;            // 0x58, 864c
   uint32_t      IOptSize2;            // 0x5c, 8650
   uint32_t      POptSize2;            // 0x60, 8654
   uint32_t      GopSize;            // 0x64, 8658
   uint32_t      B_zone_NowIndex;      // 0x68, 865c
   uint32_t      gop_opt_array_ptr;      // 0x6c, 8660
   uint32_t      _D1;               // 0x70, 8664
   uint32_t      _D2;               // 0x74, 8668
   uint32_t      x8668_unknown;         // 0x78, 866c -- 1080p = 0x9, 720p/480p = 0xE
   uint32_t      fullhd_20fps_gop_opt_0;   // 0x7c, 8670
   uint32_t      fullhd_20fps_gop_opt_1;   // 0x80, 8674
   uint32_t      fullhd_20fps_gop_opt_2;   // 0x84, 8678
   uint32_t      hd_30fps_gop_opt_0;      // 0x88, 867c
   uint32_t      hd_30fps_gop_opt_1;      // 0x8c, 8680
   uint32_t      hd_30fps_gop_opt_2;      // 0x90, 8684
   uint32_t      vga_30fps_gop_opt_0;   // 0x94, 8688
   uint32_t      vga_30fps_gop_opt_1;   // 0x98, 868c
   uint32_t      vga_30fps_gop_opt_2;   // 0x9c, 8690
} __attribute__((aligned,packed));



If anyone wants to test it out, recording is still a bit unstable and you will probably get err70 unless you turn off other settings like wb save. I am pulling relatively high numbers with CBR, so it appears to be working. this isn't an official release or anything, but feel free to try it out.

:D
Title: Re: 500d development
Post by: Rolink on 29 / June / 2011, 17:24:30
I was wonder for the future, when developers get to work in frame rate, if it is too much ask to take into account a 25 fps too?
I sow the wiki and 25 fps is not in.
Thanks!
Title: Re: 500d development
Post by: Coutts on 30 / June / 2011, 08:12:14
Judging by how much goes into frame rate selection (just take a look at that mvr_config struct), it's not going to be easy. It's not just a simple property that needs to be changed like iso or shutter speed, so  framerate adjustment isn't looking possible in the short term at least (unless someone else wants to try).
Title: Re: 500d development
Post by: gedas5 on 30 / June / 2011, 15:18:45
@ Coutts

that is pretty sad to hear that... 30fps that we have are useless in any kind of amateur cinematography...i guess if nothing works in the region of frame rates after so much that you've and others done trying to perfect our beloved 500D...i might be moving to 550D some time down the road...which i would be really hesitant to do...
Title: Re: 500d development
Post by: Coutts on 30 / June / 2011, 15:34:46
@ Coutts

that is pretty sad to hear that... 30fps that we have are useless in any kind of amateur cinematography...i guess if nothing works in the region of frame rates after so much that you've and others done trying to perfect our beloved 500D...i might be moving to 550D some time down the road...which i would be really hesitant to do...
you can down sample to 24fps in post processing, obviously it won't be as good as native 24fps footage, but it's still a fix for us.
Title: Re: 500d development
Post by: Rolink on 01 / July / 2011, 20:28:18
Hey Coutts,
wasn't a direct question for you so I'm editing previous post.
It seems you are alone here, I hope that no.
I changed/edited the Wishlist in the wiki, but I don't really know if I have rights to do that.
I can see through mvr_config, but i can't help.
Thanks anyway!
Title: Re: 500d development
Post by: Coutts on 02 / July / 2011, 22:19:28
another small build:

- fixed audio meter
- fixed live view lcd shortcut display
- fixed audio menu items (removed unused ones)
- fixed version string

https://bitbucket.org/coutts/magic-lantern-500d/changeset/80baaacedbeb
Title: Re: 500d development
Post by: Coutts on 02 / July / 2011, 22:52:55
- Implemented display of current kelvin wb in live view when sensor shortcuts display is active (while you have the sensor covered). helpful to know what your current white balance is without having to open the ML menu to check.
Title: Re: 500d development
Post by: gravityrem on 03 / July / 2011, 03:30:25
cool coutts !

So you're still in the game ? Your macbook is fixed ?
Title: Re: 500d development
Post by: PHrag on 03 / July / 2011, 04:35:59
these also contain all the unreleased fixes and tweaks right?
EDIT: sorry, tryied it, everything new is there  :)
Title: Re: 500d development
Post by: Coutts on 03 / July / 2011, 16:41:30
-Fixed focus peaking overlay offset in live view mode ONLY. No guarantees for movie recording yet (still very unstable for some reason).

https://bitbucket.org/coutts/magic-lantern-500d/changeset/f82ec9e69b7f

I have fixed it temporarily by using the LV buffer for focus peaking, as it seems to work on the LV buffer fine but is offset with the HD buffer. So, it works, but the drawback is the LV buffer is a lower resolution, which means a lower resolution/quality focus map. This will work for now, but is going to need work.

I think Indy has been looking into making vram buffers at will at any size, so when he figures that out, buffers won't be an issue anymore.
Title: Re: 500d development
Post by: Coutts on 03 / July / 2011, 19:57:19
Crop marks semi-working, no guarantees while recording though. ML bottom bar in LV is showing too, eventually it will only show when canon bottom bar is hidden (need to find that pointer).

https://bitbucket.org/coutts/magic-lantern-500d/changeset/827a82673ae3
Title: Re: 500d development
Post by: RoaldFre on 04 / July / 2011, 05:28:09
I think Indy has been looking into making vram buffers at will at any size, so when he figures that out, buffers won't be an issue anymore.

Do you mean "instructing the digic to give us a buffer of arbitrary resolution", or "making zebra work with the different buffer resolutions of the different camera models"?
Title: Re: 500d development
Post by: a1ex on 04 / July / 2011, 07:50:11
Indy has been looking at getting the size of VRAM buffers via some functions; right now we can get the size of LV buffers (with vram_info), but only for built-in LCD (not HDMI).

http://groups.google.com/group/ml-devel/msg/0ad6be691f2f5992 (http://groups.google.com/group/ml-devel/msg/0ad6be691f2f5992)
Title: Re: 500d development
Post by: arm.indiana on 05 / July / 2011, 13:24:43
I'm sure we can learn how vram buffers pointer are updated by understanding this state object
ROM:FF0601B4 create_display_device_state_object      ; CODE XREF: InitializeDisplayDeviceController+90p
(550d 1.0.9)

See http://magiclantern.wikia.com/wiki/VRAM_ADDR_from_code (http://magiclantern.wikia.com/wiki/VRAM_ADDR_from_code)

Indy


Indy has been looking at getting the size of VRAM buffers via some functions; right now we can get the size of LV buffers (with vram_info), but only for built-in LCD (not HDMI).

http://groups.google.com/group/ml-devel/msg/0ad6be691f2f5992 (http://groups.google.com/group/ml-devel/msg/0ad6be691f2f5992)
Title: Re: 500d development
Post by: a1ex on 06 / July / 2011, 02:26:10
In existing ML code (which should be cleaned up), stateobj_disp[1] is the same as YUV422_LV_BUFFER_DMA_ADDR (i.e. a pointer to current LV buffer). LiveView image (LV) is triple-buffered.

If we can find a similar stateobj for HD buffer, it will solve magic zoom problems in 60D and 600D; not sure if the same issue is present on 500D.

On 550D, that stateobj might be around 0x4c5c (found with mem-spy). But I wasn't able to find it neither on 60D, nor on 600D.
Title: Re: 500d development
Post by: arm.indiana on 06 / July / 2011, 14:59:04
maybe this one ? (550 109)

ROM:FF0601BC                 LDR     R4, =0x23D8

ROM:FF0601D8                 MOV     R3, #4

ROM:FF0601E0                 STR     R3, [SP,#0x10+TotStates] ; TotStates
ROM:FF0601E4                 LDR     R0, [R4,#4]     ; name == DisplayStateWithImgMute
ROM:FF0601E8                 LDR     R2, =dword_FF456AC8 ; ValSubList
ROM:FF0601EC                 MOV     R3, #0x18       ; TotInputs
ROM:FF0601F0                 MOV     R1, #0          ; zero
ROM:FF0601F4                 BL      CreateStateObject
ROM:FF0601F8                 STR     R0, [R4,#0x88]

Title: Re: 500d development
Post by: arm.indiana on 06 / July / 2011, 15:14:17
Antony also pointed out this function on 5dm2, here are for other models:

550d 109: ROM:FF0C2D60 sub_FF0C2D60
60d  109: ROM:FF0DA0A8 sub_FF0DA0A8
600d 101:ROM:FF0DA2E4 sub_FF0DA2E4
500d: FF0BC2B4

Indy
Title: Re: 500d development
Post by: Coutts on 11 / July / 2011, 00:51:27
for anyone interested, I've been analyzing IDLE Handler for a couple days now, I'll be updating this wiki page as I figure out more gui event codes:

http://magiclantern.wikia.com/wiki/500d_Idle_Handler_Addresses#Breaking_down_GUI_Events (http://magiclantern.wikia.com/wiki/500d_Idle_Handler_Addresses#Breaking_down_GUI_Events)

lots of work :)
Title: Re: 500d development
Post by: vorob on 12 / July / 2011, 08:54:44
Guys, its been a long time, any chance for 30fps in 1080p and manual contols in video?
Title: Re: 500d development
Post by: Coutts on 12 / July / 2011, 08:57:26
Guys, its been a long time, any chance for 30fps in 1080p and manual contols in video?
start re-writing all of the movie recorder functions ;)
otherwise.. no. it's a lot more complicated than people realize. there are limits to what can be done. it's not like there's just some property for recording size and stuff, a lot of stuff has to work together.. qscale profiles, the frame rate of the screen, exif info of the video, etc etc. i'm sure it can be done, but it's way over my head.
Title: Re: 500d development
Post by: pat_loonytoon on 12 / July / 2011, 13:10:13
Any official Canon developers reading this thread, we need a miracle  :'(
Title: Re: 500d development
Post by: Coutts on 12 / July / 2011, 14:43:07
take a look at 0xFF1C8F54

it's the function that says 1080p is 20fps and 720p/480p are 30fps.
Title: Re: 500d development
Post by: kushanagi on 12 / July / 2011, 15:22:27
Long time lurker, first time poster.
Firstly, I want to say thank you to both Alex and Coutts for their hard works. I've got three questions:
First, Coutts: before you had problem with your laptop, I think you mentionned you had a new version nearly done for a release. I'm still at 1.50 and can't wait for the next one!

Second, a lot of people are asking for the 1080p 30 fps. I know it's really difficult, so would it be easier to get 24fps in 720p?

And last, I'm a computer engineer student and want to give back to you guys. I've never tried developping a firmware but I'm pretty good in C (well, better in C++ but...). How can I help you guys? I'm kinda worried to brick my camera tho.
Title: Re: 500d development
Post by: Martin007 on 12 / July / 2011, 16:21:58
Quote
Insert Quote
take a look at 0xFF1C8F54
it's the function that says 1080p is 20fps and 720p/480p are 30fps.

Hello :) Can you tell me in which file I can find this function I look closer at this function

https://bitbucket.org/coutts/magic-lantern-500d/src

thx :)
Title: Re: 500d development
Post by: Coutts on 12 / July / 2011, 16:26:11
Long time lurker, first time poster.
Firstly, I want to say thank you to both Alex and Coutts for their hard works. I've got three questions:
First, Coutts: before you had problem with your laptop, I think you mentionned you had a new version nearly done for a release. I'm still at 1.50 and can't wait for the next one!

Second, a lot of people are asking for the 1080p 30 fps. I know it's really difficult, so would it be easier to get 24fps in 720p?

And last, I'm a computer engineer student and want to give back to you guys. I've never tried developping a firmware but I'm pretty good in C (well, better in C++ but...). How can I help you guys? I'm kinda worried to brick my camera tho.
check a page back, i released i think 2 or 3 other builds last week. as for fps, it's not any easier unfortunately. for any mode it's going to be the same process. and if you're skilled in C, you should download the code and start looking through it. It's just a matter of learning how ML works as a whole. If you want, you can start exploring the camera firmware in either the arm-console or IDA (if you have it).

I almost think people make a bigger deal than it should be that you could brick your camera. My camera has been through a lot (with all of these test builds and all), and I was even running ML on the wrong firmware version initially (doh!) and I'm still fine. I get err70 crashes daily, they're a normal occurrence to me. As far as I'm concerned, I wouldn't be very worried about anything happening.

now, if you were to try something risky such as writing to rom or something like that, I can't guarantee anything, but you should be fine just running ML code.
Title: Re: 500d development
Post by: Coutts on 12 / July / 2011, 16:28:51
Quote
Insert Quote
take a look at 0xFF1C8F54
it's the function that says 1080p is 20fps and 720p/480p are 30fps.

Hello :) Can you tell me in which file I can find this function I look closer at this function

https://bitbucket.org/coutts/magic-lantern-500d/src

thx :)

any address in the notation 0xFFxxxxxx is located in the firmware dump, not ML code ;)
Title: Re: 500d development
Post by: sideshowbob on 13 / July / 2011, 11:11:26
I have a 500D with a Nikon adapted lens, which provides manual focus and manual aperture. This gives nearly all the manual controls, but the camera seems to still automatically adjust the gain (ie: I close the aperture, and camera compensates by increasing the gain). Would it be possible to add a function to lock this gain control?

I commend this project and everyone working on it - just loaded the most recent release and wow - amazing!
Title: Re: 500d development
Post by: Coutts on 13 / July / 2011, 11:55:28
as of now - not possible yet. by the way, in the latest builds you will notice that opening the ML menu while recording results in err70, I've narrowed it down to something wrong with fake_simple_button() in gui.c

also.... my sd card died today.. no ML until i can get a new one.
....this was like a $90 card too..damnit.

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FIlwEX.jpg&hash=1a12100e6243274c18fe63ffff7ec8ca)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FFwkux.jpg&hash=fff202674371c5d1f05a69805a6fc4af)

the scotch tape was only going to hold for so long, it was inevitable. i need to setup PTP installing so I can just use a usb cable.

alex??? :P
Title: Re: 500d development
Post by: Vel on 13 / July / 2011, 16:09:20
Only $15 now for a 8GB class 6.

http://www.newegg.com/Product/Product.aspx?Item=N82E16820208453 (http://www.newegg.com/Product/Product.aspx?Item=N82E16820208453)
Title: Re: 500d development
Post by: kushanagi on 13 / July / 2011, 16:45:52
Damn Coutts, first your laptop and then your SD Card? What are you doing with your electronics? are you in a warzone?
Title: Re: 500d development
Post by: a1ex on 14 / July / 2011, 15:00:47
http://magiclantern.wikia.com/wiki/PTP-CHDK (http://magiclantern.wikia.com/wiki/PTP-CHDK)

Code: [Select]
make ptpinstall

;)
Title: Re: 500d development
Post by: LaLaPico on 14 / July / 2011, 20:57:28
Hey guys! I did a test with my T1i and Qscale. Check it out!

http://www.youtube.com/watch?v=MVPVqu6Lrrc# (http://www.youtube.com/watch?v=MVPVqu6Lrrc#)
Title: Re: 500d development
Post by: Coutts on 16 / July / 2011, 08:03:34
Well, Alex talked me into it :P I presented my concerns about adding the 500D to the unified tree but he pointed out that none of my concerns were big issues, so I've started to merge it in.

Constants file is done (well, some constants still need found, but it should compile and run), moving onto gui.c now.

also a discussion on manual video controls and fps:
http://groups.google.com/group/ml-devel/browse_thread/thread/31f8b0089f0069c9 (http://groups.google.com/group/ml-devel/browse_thread/thread/31f8b0089f0069c9)
Title: Re: 500d development
Post by: 2X3 on 17 / July / 2011, 18:38:03
Hi Coutts. Thanks for all your work and other developers.

I'm a chinese  and using EOS Rebel T1i now mostly on taking photos and sometimes videos.  I have an EF 50mm F1.8 and always bothered about the focus precision especially at large aperture (I often shoot people at the aperture near F2.5 .  When I want to shoot people at large Aperture, I usually put the camera in the Tripod and manual focus at LiveView 10x.

So your work acturally make that much easier. And I often shoot ppls with external flashes in manual mode, the exp.sim always make the CCD too dark to see, So I should turn the mode wheel to AV to check the focus and composition, and roll it back to Manual mode to shoot. With the exp.sim being able to turning off, it is no longer a problem.

There is an thread about the Magic Lantern project on a popular camera bbs in china, and lots of ppl excited about it.

Just want to say thanks. Great work.
Title: Re: 500d development
Post by: 2X3 on 19 / July / 2011, 01:45:59
Title: Re: 500d development
Post by: TinFoil on 20 / July / 2011, 16:32:15
Come on 500D (T1i) with this unified Magic Lantern!!! Seeing what the 550D can do really bums me out being a 500D owner...

Thanks for all the hard work!
Title: Re: 500d development
Post by: Coutts on 21 / July / 2011, 09:11:38
I've given up on the unified merge for now.. i got it to compile but had too many problems (more issues than we have now).


EDIT
got some more done today, fixed a few more constants. only a couple remain now :)
once again thanks to alex for all of the help. a few things that should be fixed now:
- time remaining while recording should work
- AV value in ML live view display works now (displays AE value, -2 to +2)

bugs still present:
- bitrate stuff still buggy..ugh
- recording in general is unstable (except 480p for some reason)
- menu button while recording = crash
- ML menu while recording = good chance of crash
- exiting play mode with half shutter = black screen, have to pull battery


bugs are getting annoying  ;)


p.s.
is anyone editing the wiki still??? it could use some cleaning and re-vamping i think
Title: Re: 500d development
Post by: LaLaPico on 21 / July / 2011, 18:21:31
Keep up the hard work, Coutts.. You've been doing a fantastic job.
Title: Re: 500d development
Post by: Coutts on 22 / July / 2011, 12:01:12
homework for someone:

find an address that changes when you lock exposure in video mode, then i could add an indicator to the ML bottom bar display to show when exposure is locked or not. A start appears normally, but when you have canon's display hidden for the cleaner ML one (just hit display button until bottom bar disappears and ML one appears), there isn't a star to indicate if exposure is locked or not.

Something even cooler would be to add a countdown timer for whatever the exposure timer lock is set at so you know how long until it runs out.
Title: Re: 500d development
Post by: LaLaPico on 22 / July / 2011, 17:14:15
How can I do this? Is it in debug mode?
Title: Re: 500d development
Post by: Coutts on 22 / July / 2011, 17:30:18
there's a few ways:

-look through the firmware dump (maybe figure out how the exposure locking works - could put us a step closer to implementing manual controls).
-use memspy to monitor changing values in memory:
---edit the make file and set debugmsgs to 1 to enable debug features (menu icons will disappear, this is because the autoexec.bin file gets too large, odd things begin to happen like that).
---change the men spy settings in debug.c (all of the mem_spy_ variables starting at line 78)
---explore different areas of memory and look for values that change with the exposure lock.

those are a couple of ways, there may be other ways but this is what comes to mind first for me.
Title: Re: 500d development
Post by: Coutts on 22 / July / 2011, 18:14:46
unrelated but this looks interesting:

Quote
ROM:FF1C72EC sub_FF1C72EC
ROM:FF1C72EC                 STMFD   SP!, {R4-R6,LR}
ROM:FF1C72F0                 CMP     R1, #5
ROM:FF1C72F4                 MOV     R6, R2
ROM:FF1C72F8                 MOV     R4, R0
ROM:FF1C72FC                 MOVCC   R3, R1
ROM:FF1C7300                 LDMCCFD SP!, {R4-R6,LR}
ROM:FF1C7304                 MOVCC   R1, #6
ROM:FF1C7308                 MOVCC   R0, #0x83
ROM:FF1C730C                 ADRCC   R2, aIsodatatostringBufferLengthD ; "***** IsoDataToString Buffer Length(%d)"...
ROM:FF1C7310                 BCC     DryosDebugMsg
ROM:FF1C7314                 MOV     R0, R6
ROM:FF1C7318                 BL      sub_FF1C84BC
ROM:FF1C731C                 CMP     R0, #0
ROM:FF1C7320                 MOVNE   R0, #0x48
ROM:FF1C7324                 MOV     R5, #0
ROM:FF1C7328                 BNE     loc_FF1C7340
ROM:FF1C732C                 MOV     R0, R6
ROM:FF1C7330                 BL      R0_equals_0_p3
ROM:FF1C7334                 CMP     R0, #0
ROM:FF1C7338                 BEQ     loc_FF1C734C
ROM:FF1C733C                 MOV     R0, #0x4C
ROM:FF1C7340
ROM:FF1C7340 loc_FF1C7340                            ; CODE XREF: sub_FF1C72EC+3Cj
ROM:FF1C7340                 STRB    R0, [R4]
ROM:FF1C7344                 STRB    R5, [R4,#1]
ROM:FF1C7348                 LDMFD   SP!, {R4-R6,PC}
ROM:FF1C734C ; ---------------------------------------------------------------------------
ROM:FF1C734C
ROM:FF1C734C loc_FF1C734C                            ; CODE XREF: sub_FF1C72EC+4Cj
ROM:FF1C734C                 CMP     R6, #0x5B
ROM:FF1C7350                 ADREQ   R1, a500        ; "500"
ROM:FF1C7354                 BEQ     loc_FF1C7430
ROM:FF1C7358                 BGT     loc_FF1C73C8
ROM:FF1C735C                 CMP     R6, #0x50
ROM:FF1C7360                 ADREQ   R1, a200        ; "200"
ROM:FF1C7364                 BEQ     loc_FF1C7430
ROM:FF1C7368                 BGT     loc_FF1C73A0
ROM:FF1C736C                 CMP     R6, #0x40
ROM:FF1C7370                 ADREQ   R1, a50         ; "50"
ROM:FF1C7374                 BEQ     loc_FF1C7430
ROM:FF1C7378                 CMP     R6, #0x48
ROM:FF1C737C                 ADREQ   R1, a100        ; "100"
ROM:FF1C7380                 BEQ     loc_FF1C7430
ROM:FF1C7384                 CMP     R6, #0x4B
ROM:FF1C7388                 ADREQ   R1, a125        ; "125"
ROM:FF1C738C                 BEQ     loc_FF1C7430
ROM:FF1C7390                 CMP     R6, #0x4D
ROM:FF1C7394                 BNE     loc_FF1C743C
ROM:FF1C7398                 ADR     R1, a160        ; "160"
ROM:FF1C739C                 B       loc_FF1C7430
ROM:FF1C73A0 ; ---------------------------------------------------------------------------
ROM:FF1C73A0
ROM:FF1C73A0 loc_FF1C73A0                            ; CODE XREF: sub_FF1C72EC+7Cj
ROM:FF1C73A0                 CMP     R6, #0x53
ROM:FF1C73A4                 ADREQ   R1, a250        ; "250"
ROM:FF1C73A8                 BEQ     loc_FF1C7430
ROM:FF1C73AC                 CMP     R6, #0x55
ROM:FF1C73B0                 ADREQ   R1, a320        ; "320"
ROM:FF1C73B4                 BEQ     loc_FF1C7430
ROM:FF1C73B8                 CMP     R6, #0x58
ROM:FF1C73BC                 BNE     loc_FF1C743C
ROM:FF1C73C0                 ADR     R1, a400        ; "400"
ROM:FF1C73C4                 B       loc_FF1C7430
ROM:FF1C73C8 ; ---------------------------------------------------------------------------
ROM:FF1C73C8
ROM:FF1C73C8 loc_FF1C73C8                            ; CODE XREF: sub_FF1C72EC+6Cj
ROM:FF1C73C8                 CMP     R6, #0x68
ROM:FF1C73CC                 ADREQ   R1, a1600       ; "1600"
ROM:FF1C73D0                 BEQ     loc_FF1C7430
ROM:FF1C73D4                 BGT     loc_FF1C740C
ROM:FF1C73D8                 CMP     R6, #0x5D
ROM:FF1C73DC                 ADREQ   R1, a640        ; "640"
ROM:FF1C73E0                 BEQ     loc_FF1C7430
ROM:FF1C73E4                 CMP     R6, #0x60
ROM:FF1C73E8                 ADREQ   R1, a800        ; "800"
ROM:FF1C73EC                 BEQ     loc_FF1C7430
ROM:FF1C73F0                 CMP     R6, #0x63
ROM:FF1C73F4                 ADREQ   R1, a1000       ; "1000"
ROM:FF1C73F8                 BEQ     loc_FF1C7430
ROM:FF1C73FC                 CMP     R6, #0x65
ROM:FF1C7400                 BNE     loc_FF1C743C
ROM:FF1C7404                 ADR     R1, a1250       ; "1250"
ROM:FF1C7408                 B       loc_FF1C7430
ROM:FF1C740C ; ---------------------------------------------------------------------------
ROM:FF1C740C
ROM:FF1C740C loc_FF1C740C                            ; CODE XREF: sub_FF1C72EC+E8j
ROM:FF1C740C                 CMP     R6, #0x70
ROM:FF1C7410                 ADREQ   R1, a3200       ; "3200"
ROM:FF1C7414                 BEQ     loc_FF1C7430
ROM:FF1C7418                 CMP     R6, #0x78
ROM:FF1C741C                 ADREQ   R1, a6400       ; "6400"
ROM:FF1C7420                 BEQ     loc_FF1C7430
ROM:FF1C7424                 CMP     R6, #0x80
ROM:FF1C7428                 BNE     loc_FF1C743C
ROM:FF1C742C                 ADR     R1, a12800      ; "12800"
ROM:FF1C7430
ROM:FF1C7430 loc_FF1C7430                            ; CODE XREF: sub_FF1C72EC+68j
ROM:FF1C7430                                         ; sub_FF1C72EC+78j ...
ROM:FF1C7430                 MOV     R0, R4
ROM:FF1C7434                 LDMFD   SP!, {R4-R6,LR}
ROM:FF1C7438                 B       strcpy
ROM:FF1C743C ; ---------------------------------------------------------------------------
ROM:FF1C743C
ROM:FF1C743C loc_FF1C743C                            ; CODE XREF: sub_FF1C72EC+A8j
ROM:FF1C743C                                         ; sub_FF1C72EC+D0j ...
ROM:FF1C743C                 MOV     R3, R6
ROM:FF1C7440                 ADR     R2, aIsodatatostringDefaultD ; "IsoDataToString default(%d)"
ROM:FF1C7444                 MOV     R1, #3
ROM:FF1C7448                 MOV     R0, #0x83
ROM:FF1C744C                 BL      DryosDebugMsg
ROM:FF1C7450                 ADR     R1, asc_FF1C7534 ; "    "
ROM:FF1C7454                 B       loc_FF1C7430
ROM:FF1C7454 ; End of function sub_FF1C72EC
Title: Re: 500d development
Post by: a1ex on 25 / July / 2011, 03:25:45
Another idea for exposure lock: find the semaphore used by AE tasks, and "take" it ;)
Title: Re: 500d development
Post by: Coutts on 25 / July / 2011, 10:47:19
the instability while recording i think is caused with bmp_sem not being implemented right in gui.c, alex can you please explain how this semaphore is used? I can't implement from just the 550d code since our gui_main_tasks differ.
Title: Re: 500d development
Post by: a1ex on 25 / July / 2011, 15:17:03
BMP_SEM should not be used in gui.c (it was an experiment of mine, which didn't work). See gui.c from the unified version.

BMP_SEM (which is defined as take_semaphore(bmp_sem); do some action; give_semaphore(bmp_sem)) makes sure only one graphics operation runs at a time (other tasks wanting to call BMP_SEM will have to wait).

This makes sure no redraws will be performed in the middle of, let's say, drawing the zebra. If ML draws on the screen during a redraw, those graphics elements will freeze on the display (and will not be cleared by subsequent redraws).

Problem: if you have something like BMP_SEM(... BMP_SEM(...) ... ), this will freeze the camera.

Solution used now: make sure there won't be such calls (i.e. use BMP_SEM only with high-level graphic primitives).

Recommended solution: the VxWorks manual mentions some semaphores which can be "taken" many times from the same task, and only the first call takes effect. These are called "mutual exclusion semaphores" (look for "Recursive Resource Access" in VxWorks Programmer's Guide). The solution is to find the functions for these semaphores in DryOs, and update the BMP_SEM definition.
Title: Re: 500d development
Post by: Coutts on 28 / July / 2011, 16:28:31
sort of a new direction for the 500d, I've began to port some of AJ's code. I've got his shutdown led blinking feature working on gui_main_task now. If a task doesn't shutdown right, instead of you finding your battery dead the next time you grab your camera, it will blink the blue led to let you know to pull the battery. AJ's code is much easier to understand with all of his comments :P

here's a quick video of what it looks like (sorry for blurry video... droid x doesn't focus for videos). I rigged gui_main_task to just run forever to demonstrate what it will look like if a task where to not shutdown.

http://tinypic.com/r/9as21w/7 (http://tinypic.com/r/9as21w/7)

:D
Title: Re: 500d development
Post by: LaLaPico on 28 / July / 2011, 19:09:24
Nice!! What tasks generally do not shut down fully?
Title: Re: 500d development
Post by: utnuc on 28 / July / 2011, 19:56:07
Very nice work, Coutts.  A lot of ML 500D lurkers will be quite pleased with the addition of this feature.
Title: Re: 500d development
Post by: gravityrem on 29 / July / 2011, 05:40:50
sounds like a very good new ! great job Coutts !
Title: Re: 500d development
Post by: aznguy on 30 / July / 2011, 12:12:31
ohh man... ive been gone from here way too long! look at the progress!, soo to get things straight, it looks like there's tons of mini builds? and no major release as of yet from 1.5, am i correct?
Title: Re: 500d development
Post by: sbright33 on 30 / July / 2011, 15:25:06
I've noticed that MOST of the times when I remove the memory card without removing the battery, it is soon dead.  It is very simple and predictable.  I have not seen any other failure modes similar to this.  Nor have any of my testers.  Otherwise tasks do not run when you turn off the camera.

I've been reading about the attempts to record in Crop movie mode using ML firmware.  This already works great with the Hyperdeck, I've been doing it for months.  You can use a cheap hard drive.
Title: Re: 500d development
Post by: Coutts on 01 / August / 2011, 21:10:08
AJ 5.9 running on 500d:

 http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9 (http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9)
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / August / 2011, 05:37:42
Hi,

First of all, I'd like to thank you all very much for your hard work that you have done here with Magic Lantern. I really do appreciate it and I hope, I will be able to help you too sometime in the future when I have the time to gather the knowledge from your wiki pages and the source code itself needed to start the work.

As for the sbright33's issue with removing memory card mentioned above, I think that this issue regards the CardDoorEmergency_Func() that I have actually found being called in the mainctrl.c file in the 400D's trunk (http://code.google.com/p/400plus/source/browse/trunk/mainctrl.c (http://code.google.com/p/400plus/source/browse/trunk/mainctrl.c)). I wasn't able to find this file in alins' branch , however, so I do not even know if this function is located and used within the 500D's code.

Anyway, the problem with memory card removal, as I think, is caused by removing it too early after opening the card door. If you open the card door and do not remove the memory card itself, you can see the red LED blink after two seconds or so (probably an emergency function like I have mentioned). If you remove the card after the LED has already switched off, I can say, it is absolutely safe as I haven't ever had any problem with it. However, if you remove the card too early (before the LED is lit or even while it is still shining), the camera becomes stuck and doesn't turn on after you close the card door, nor does with the memory card inside, so you have to pull out the battery to force the stuck tasks to interrupt.

A similar situation may become when you open the battery door as the red LED is lit too. The only difference with removing the battery is that the code that probably runs in the processor is hardly interrupted after the battery removal (again, if it is removed too early).

This is the real problem and although I believe that the Coutts' feature for blinking the blue LED when the camera is in loop may prove useful in such situations (if any other exists), the root has to be fixed here instead with the card emergency function.

And again, thank you for your great job, guys!
Title: Re: 500d development
Post by: Coutts on 02 / August / 2011, 07:28:44
AJ's feature ***

;)
Title: Re: 500d development
Post by: a1ex on 02 / August / 2011, 08:45:34
Quote
Anyway, the problem with memory card removal, as I think, is caused by removing it too early after opening the card door. If you open the card door and do not remove the memory card itself, you can see the red LED blink after two seconds or so (probably an emergency function like I have mentioned).

At shutdown, ML saves its config file on the card. On 60D, if I remove the card too early, the LED remains on (also config file is no longer found, and I have to run fsck / chkdsk).

On the cameras from the unified branch, ML activates the card LED and keeps it on. Therefore, if something goes wrong at shutdown (i.e. after PROP_STARTUP_SHUTDOWN, and after all ML tasks finished), the LED will remain on.

When I had shutdown problems, they were because Canon tasks were left in some inconsistent state (e.g. after trying to open a non-existent file, or after emulating half-shutter presses too often, or after calling functions in the firmware to test things). In all these cases, LED remains on at shutdown, so you will know you have to remove the battery.
Title: Re: 500d development
Post by: Ulysses on 02 / August / 2011, 08:46:41
AJ 5.9 running on 500d:

 http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9 (http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9)

Coutts, that means manual video controls finally??? And FPS??

Regards
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / August / 2011, 09:19:32
AJ's feature ***

;)

I'm sorry then but I hope, everybody understood what feature I have meant.


At shutdown, ML saves its config file on the card. On 60D, if I remove the card too early, the LED remains on (also config file is no longer found, and I have to run fsck / chkdsk).

Well, this has happened to me only once - that the LED stayed on after I removed the card - and I cannot remember if it was with the beta 1.50 ML firmware from wiki or the Coutts' one from this post at http://chdk.setepontos.com/index.php?topic=5971.msg69788#msg69788 (http://chdk.setepontos.com/index.php?topic=5971.msg69788#msg69788) that I am actually using now. With the Coutts' firmware (maybe a bit old already), I was only able to get the camera stuck with the red LED off as it turns off immediately when I remove the memory card (even if I remove it while the LED is still glowing).

Also, I have never had to run fsck over the card as it has been working well until now, without formatting. I am not sure how saving the configuration file at shutdown is to be related to this issue as I was talking about removing the card when the camera is turned off (so if the configuration file is saving to the card at shutdown, it should already be saved, not doing it hours and hours after the camera shutdown, that well is in fact only hibernated or something, just when I decide to pull the card out). I have tried now also removing the card when the camera is switched on (with ML loaded) and it worked well, only displaying "No card" when I shut the door.
Title: Re: 500d development
Post by: a1ex on 02 / August / 2011, 09:23:15
Wait... you can leave the camera on while you swap the cards? Both 550D and 60D would turn off.
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / August / 2011, 09:26:56
Well, you're right. Opening the card door while camera is switched on makes it to shutdown and switch on again once the door is shut.
Title: Re: 500d development
Post by: Coutts on 02 / August / 2011, 09:45:46
AJ 5.9 running on 500d:

 http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9 (http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9)

Coutts, that means manual video controls finally??? And FPS??

Regards
i wish :P

i decided to start looking at AJ's code since the 500d is more similar to the 5d2 than the 550d/60d/600d in the unified branch.

I'd like to have some kind of hybrid working eventually, to have the best of both worlds :D ie: AJ's code in live view / movie mode and Alex's branch outside of LV (for shooting features). this also applies to the 50d.
Title: Re: 500d development
Post by: Ulysses on 02 / August / 2011, 19:54:34
AJ 5.9 running on 500d:

 http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9 (http://groups.google.com/group/ml-devel/browse_thread/thread/dd8c45c1d9f033e9)

Coutts, that means manual video controls finally??? And FPS??

Regards
i wish :P

i decided to start looking at AJ's code since the 500d is more similar to the 5d2 than the 550d/60d/600d in the unified branch.

I'd like to have some kind of hybrid working eventually, to have the best of both worlds :D ie: AJ's code in live view / movie mode and Alex's branch outside of LV (for shooting features). this also applies to the 50d.


Yeah. I remember when both cameras were launched: 5DII and 500D (bought mine few months later and read a lot about it at the time). There were only the 2 available in the market. They should have been used similar manners of building both. Of course hardware is different, but they may be more similar to the other than it looks.

There was the case that 5D needed only a firmware update to "change" de option to select manual features for video. 500D should be the same case. I just can imagine how difficult it can be for you and the others to find out without any support from Canon.

Must be something we couldnt find yet. Some detail or kind of. You know those times when we finally figure out something and in the end we think "It was simpler than I thought.."
Title: Re: 500d development
Post by: sbright33 on 03 / August / 2011, 15:16:24
Kyse... Your explanation makes sense!  That would explain why it only happens most of the time.  It didn't happen as much in the beginning.  I have gotten faster at removing it.  Your solution is much easier than taking out my battery EVERY time I remove the card.
Title: Re: 500d development
Post by: Coutts on 04 / August / 2011, 11:55:24
if someone has the updater .fir file from that 5d2 update, we might be able to examine the payload to see what changes were made to the ROM, and maybe implement on the 500d.
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / August / 2011, 12:54:28
if someone has the updater .fir file from that 5d2 update, we might be able to examine the payload to see what changes were made to the ROM, and maybe implement on the 500d.

I do not have it stored anywhere but I was able to find a working download link for the latest one (2.0.9) there: http://support-hk.canon-asia.com/contents/HK/EN/0400032202.html (http://support-hk.canon-asia.com/contents/HK/EN/0400032202.html)

As I'm not sure which one did you mean (there were several firmware updates for the 5D Mk.II in the past), there is also the 2.0.4 version that fixed some audio issues in the 2.0.3 that actually brought the manual video exposure features into the camera: http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/ (http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/) (the alternate download links are still working). As for the original 2.0.3, somebody may have stored its own copy but I haven't found it on the Internet.

And last, if you were interested in the older versions, you may have to be aware of the issues fixed in the later versions mentioned on the Canon Rumors webpage in the EOS 5D Mark II category: http://www.canonrumors.com/category/photography/canon-5d-mark-ii/ (http://www.canonrumors.com/category/photography/canon-5d-mark-ii/)
Title: Re: 500d development
Post by: Coutts on 04 / August / 2011, 13:05:59
if someone has the updater .fir file from that 5d2 update, we might be able to examine the payload to see what changes were made to the ROM, and maybe implement on the 500d.

I do not have it stored anywhere but I was able to find a working download link for the latest one (2.0.9) there: http://support-hk.canon-asia.com/contents/HK/EN/0400032202.html (http://support-hk.canon-asia.com/contents/HK/EN/0400032202.html)

As I'm not sure which one did you mean (there were several firmware updates for the 5D Mk.II in the past), there is also the 2.0.4 version that fixed some audio issues in the 2.0.3 that actually brought the manual video exposure features into the camera: http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/ (http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/) (the alternate download links are still working). As for the original 2.0.3, somebody may have stored its own copy but I haven't found it on the Internet.

And last, if you were interested in the older versions, you may have to be aware of the issues fixed in the later versions mentioned on the Canon Rumors webpage in the EOS 5D Mark II category: http://www.canonrumors.com/category/photography/canon-5d-mark-ii/ (http://www.canonrumors.com/category/photography/canon-5d-mark-ii/)
i think we'll ned the update that fixed the manual video controls, because in that payload will be the actual changes made to the ROM. The 5d2 and 500d are pretty similar, so it may even be changes that can be implemented easily on the 500d.
Title: Re: 500d development
Post by: gedas5 on 04 / August / 2011, 13:43:14
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / August / 2011, 14:01:04
Yep, that's the one available at http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/ (http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-4-available/) as I mentioned.

This is not, however, the very first firmware version with other video modes/framerates and (semi- ?) manual exposure, that was in fact the 2.0.3 (see http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-3-available/ (http://www.canonrumors.com/2010/03/5d-mark-ii-firmware-2-0-3-available/)). Anyway, there have been some issues with this version, maybe the 2.0.4 should be used instead.
Title: Re: 500d development
Post by: gedas5 on 04 / August / 2011, 14:07:30
@ kyselejsyrecek
yeah looks like 2.0.4 firmware officially introduced video controls due to the demand from the professional photographers. I'm not sure if Couts will find some early stages of video controls in 2.0.3 version but if he does the we might need to find even earlier version for him to understand what code was introduced.
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / August / 2011, 14:10:38
sure :-)
Title: Re: 500d development
Post by: LaLaPico on 04 / August / 2011, 20:33:38
Coutts,

What's the status on the 70 Err?
Title: Re: 500d development
Post by: Ulysses on 04 / August / 2011, 22:47:45
I think we're finally on the right path looking and comparing the 5D firmware chages. Go ahead, Coutts. Youre gonna get it this time for all of us and make Canon shut up for not giving us this deserved support!
Title: Re: 500d development
Post by: utnuc on 05 / August / 2011, 08:25:56
Exciting new approach here Coutts, wonder why I didn't think of this earlier.  The 5DM2 ML FW was the only one that actually had to tackle the frame rate and manual control issues.  Godspeed.   :)
Title: Re: 500d development
Post by: Coutts on 05 / August / 2011, 16:32:16
well heres where I'm at now:

I modified fir_tool2.py to decrypt/dump from the updater offset to the end of the file (to include the payload), instead of just dumping from the updater offset to the end of the updater.

say 0 is the flasher, 1 is the updater area and 2 is the payload area:

beginning of FIR file --> 0==1====2================== <-- end of FIR file

normally fir_tool2.py only processes the area of 1, but I made it process both 1 and 2 areas.


result: two ~8mb .bin files that I am going to load into alex's arm-console to output the asm code in plain text, to finally do a diff/compare and see what's different. I'm doing this with the 2.0.3 and 2.0.4 updates.


here goes nothing ;)
Title: Re: 500d development
Post by: gedas5 on 05 / August / 2011, 17:46:07
@ Coutts
what do you mean by 'here goes nothing'? does that mean that you didn't find anythig in these two firmwares?
Title: Re: 500d development
Post by: LaLaPico on 05 / August / 2011, 19:59:42
"Here goes nothing" is an old saying. It's like rushing into battle without knowing what will happen, or going into a situation that might turn out bad.
Title: Re: 500d development
Post by: Ulysses on 05 / August / 2011, 20:07:43
Looks likes its kinda our "last" and best alternative to run for. Let's just hope it work out as we all expect. Go Go Coutts! Thousands, no, Millions, no, Billions, no, Trillions of us are counting on you!

heheheheh
Title: Re: 500d development
Post by: arm.indiana on 06 / August / 2011, 07:19:37
well heres where I'm at now:

I modified fir_tool2.py to decrypt/dump from the updater offset to the end of the file (to include the payload), instead of just dumping from the updater offset to the end of the updater.

say 0 is the flasher, 1 is the updater area and 2 is the payload area:

beginning of FIR file --> 0==1====2================== <-- end of FIR file

normally fir_tool2.py only processes the area of 1, but I made it process both 1 and 2 areas.

here goes nothing ;)
http://magiclantern.wikia.com/wiki/Firmware_file (http://magiclantern.wikia.com/wiki/Firmware_file)
Update payload is encrypted with aes 128. Do not waste your time. And the reverse is already done.
Indy
Title: Re: 500d development
Post by: gedas5 on 10 / August / 2011, 08:49:21
@ Coutts
any update? i think everyone is waiting to see what you going to say after having a look at the codes...
hopefully we'll get some good news
Title: Re: 500d development
Post by: Ulysses on 10 / August / 2011, 10:04:14
I'm pretty confident too!

 :D

 8)
Title: Re: 500d development
Post by: gedas5 on 12 / August / 2011, 07:26:57
just wondering if the old saying 'no news is good news' will apply in this case as Coutts seems to be quiet for a while...maybe on holidays :) or maybe just working ;)
Title: Re: 500d development
Post by: Coutts on 12 / August / 2011, 08:21:50
I work 8-5 every day, and works been busy. I haven't made much progress on the 500d specifically, but I've been making some progress understanding the firmware a little more.

the other day I figured out how dm_set_store_level and dm_set_print_level affect the debug log. From this I found that the debug log contains a lot of information - interesting enough it contains all of the vram buffers I spent hours finding, so all of the work looking at RAM dumps trying to locate buffers isn't necessary :P
Title: Re: 500d development
Post by: LaLaPico on 13 / August / 2011, 02:51:25
Well, I think you've done a fantastic job. You could use a break. The only thing at this point I would like to see is maybe the Err 70 nipped :P Otherwise, I think it works damn good, with a lot of features.
Title: Re: 500d development
Post by: LaLaPico on 14 / August / 2011, 11:35:10
You know, yesterday I disabled a lot of the processed, and pretty much, I only have global draw, focus peak, and QScale enabled. Everything else is off.. The Err 70 hasn't happened since. So which one of those processes that I disabled is causing it..
Title: Re: 500d development
Post by: fth92 on 15 / August / 2011, 03:41:24
Hello,

Congratulations for the work. I just take the plunge, I installed on my ML
500d I find great new features.
But I have a big problem with "front-focus" on my 500d.
Coutts, I saw that you worked on ML for 50d
I am interested by the function of AF micro-adjust the 50d.
Think it would be possible to bring the AF Micro Adjust on the 500d?

I will continue to test ML.

Thank you in advance.

Regards.

Cordialement
Title: Re: 500d development
Post by: Coutts on 16 / August / 2011, 16:56:15
http://groups.google.com/group/ml-devel/browse_thread/thread/4b4dc8975821dfb4 (http://groups.google.com/group/ml-devel/browse_thread/thread/4b4dc8975821dfb4)

first success of FPS control :)
Title: Re: 500d development
Post by: gedas5 on 16 / August / 2011, 18:34:04
@ Coutts
almost got too happy too soon when i saw word FPS :) but the link sent me straight back to earth :P would have been much more pleased if the frame rate that you got was not 20FPS but 20FPS+4FPS = 24FPS :D or 20FPS+40FPS =60FPS ;)
but anyway great work as always and we are still keeping close eye to the stuff you are creating here ;) keep it up
Title: Re: 500d development
Post by: LaLaPico on 16 / August / 2011, 19:02:49
You're a genius!
Title: Re: 500d development
Post by: RoaldFre on 17 / August / 2011, 13:09:35
Some thoughts to verify framerate (you say it looked odd): make a movie of a clock and verify that the time still runs normally. It's possible that the actual framerate of the recording and the framerate of the playback (encoded in the headers of the avi) are not equal. This will probably also do strange things to the sound synchronisation/pitch/... if it is not correct.

Also [admin: avoid swearing please] YEAH!
Title: Re: 500d development
Post by: Coutts on 17 / August / 2011, 13:13:54
http://www.youtube.com/watch?v=TkaRmCTz7cQ# (http://www.youtube.com/watch?v=TkaRmCTz7cQ#)

1080p @ 30fps works!!!!!

big big news :D
Title: Re: 500d development
Post by: aznguy on 17 / August / 2011, 13:20:16
HOLY SH**!!!! thats reallly big alright!!! YOU DA BOMB COUTTS
Title: Re: 500d development
Post by: ilguercio on 17 / August / 2011, 13:22:25
WOW!
Title: Re: 500d development
Post by: kushanagi on 17 / August / 2011, 15:08:02
I can't beleive my eyes :| Any problem with it ? I really hope we will be able to get 720p @ 60fps and 1080 @ 24fps !
Title: Re: 500d development
Post by: PHrag on 17 / August / 2011, 15:14:42
AWESOME! May I ask - what ML build you run that code on? the AJ's mark2 or alex's 500D? Will it work on both?
Title: Re: 500d development
Post by: gravityrem on 17 / August / 2011, 15:19:20
Putain !!! He made it...
Coutts ! Amazing work ! Some details about your work ?

Guess a new "official" build will be released soon right ??
Title: Re: 500d development
Post by: Ulysses on 17 / August / 2011, 15:53:24
youtube just gave me 720p...sure its 1080?
Title: Re: 500d development
Post by: Martin007 on 17 / August / 2011, 16:17:18
I just wanna say : YOU ARE THE BEST !!!  - Thank you ;)
Title: Re: 500d development
Post by: utnuc on 17 / August / 2011, 16:18:57
Monumental day for the 500D ML build.  Kudos, Coutts.  Makes my daily read of this forum for 6 months well worth it.

@Ulysses, just change the resolution from the default.
Title: Re: 500d development
Post by: Cane on 17 / August / 2011, 16:27:51
Gigantic work!
Title: Re: 500d development
Post by: Ulysses on 17 / August / 2011, 16:35:03
@utnuc, i know, but it only gives me the maximum option to 720...
Title: Re: 500d development
Post by: utnuc on 17 / August / 2011, 18:26:18
Coutts, any more progress getting the buffer to handle the higher throughput? 
Title: Re: 500d development
Post by: pat_loonytoon on 17 / August / 2011, 18:46:20
True T1I owners never give up hope, and our joy is complete with your progress.
Title: Re: 500d development
Post by: Liamykins on 17 / August / 2011, 19:06:14
Oh my god! I've been reading this for months and it's finally happened, and just to make it extra special, it happened on my birthday! Couts you are amazing. Keep it up man, I knew you could do it. <3
Title: Re: 500d development
Post by: Coutts on 17 / August / 2011, 22:35:43
NOT AN OFFICIAL RELEASE


(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FcEPka.png&hash=531fb37a955173dfcd2f87bc7be6a652)

I'm suspecting the video might be "sped up", it looks like it to me at least. I think I need to mess with the timecode possibly still. But, here's a test build for everyone to try out. New menu option is under the movie tab.

changeset:
https://bitbucket.org/coutts/magic-lantern-500d/changeset/d096174935f7 (https://bitbucket.org/coutts/magic-lantern-500d/changeset/d096174935f7)
Title: Re: 500d development
Post by: Liamykins on 18 / August / 2011, 04:53:49
I just tested the 30fps, in live view mode before you press record it still displays the kinda jumpy 20fps preview, if you flick between 720p and 1080p you will notice the difference, I know nothing about all of this but my guess is that it's recording in 20fps and then playing back at 30fps, hence the sped up video? So You might be changing the play back function instead of the recording, but like I said, I have little knowledge to do with this so it's just a guess. Huge progress though! Thanks
Title: Re: 500d development
Post by: adijiwa on 18 / August / 2011, 05:05:11
I just tested the 30fps, in live view mode before you press record it still displays the kinda jumpy 20fps preview, if you flick between 720p and 1080p you will notice the difference, I know nothing about all of this but my guess is that it's recording in 20fps and then playing back at 30fps, hence the sped up video? So You might be changing the play back function instead of the recording, but like I said, I have little knowledge to do with this so it's just a guess. Huge progress though! Thanks

I think it's beauce video stream from sensor is still 20fps, but video file header says 30fps.
CMIIW
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / August / 2011, 11:09:21
Coutts, I can confirm that the frame rate didn't actually change, only the playback is sped up (by one half probably). It can be easily seen with a simple snapping test - the video is played faster than the recorded audio.

Anyway, I'm getting many err70, even with normal 720p. I have enabled audio meters, histogram, zebras and focus peak.

By the way, I have tried removing the card too fast after opening the door and the blue LED isn't lit although the camera becomes stuck. It does blink once for a while, however, when the camera shuts down.
Title: Re: 500d development
Post by: Coutts on 18 / August / 2011, 13:15:26
I'm going to be doing a lot of re-writing of the entire 500d ML. There's a lot of stuff that needs to be removed / updated / re-organized.

I was excited about the framerate deal, i guess we're at least getting closer :-s
Title: Re: 500d development
Post by: Liamykins on 18 / August / 2011, 15:07:36
Do silent pictures work? Tonight I want to do a timelapse over night with silent pictures, would that be possible with the intervalometer? And do I need a special program to view the files because I tried silent pictures ages ago and I had these odd files that I had no idea what to do with them. Thanks
Title: Re: 500d development
Post by: bjacklee on 22 / August / 2011, 04:31:11
Any good news? :)
Title: Re: 500d development
Post by: Coutts on 23 / August / 2011, 18:27:30
sorry it's been a while guys - went out over the weekend (welcome weekend), got sick and now classes just started. i'm pretty tied down, i'll try to work on some stuff this weekend but i'm out of ideas for the 30fps thing. sorry i got everyone pumped up :-s
Title: Re: 500d development
Post by: fisuk on 24 / August / 2011, 05:37:34
Hiya guys! First of all, I'd like to thank all the people who have made ML for 500D possible!

Then to the point at hand: So what you've managed to do is find the encoding subroutine (or at least a routine that precedes the actual encoding routine) from the Canon firmware. Now that you know the label of the encoding function, wouldn't it be possible to find and check all the other subroutines that call that encoding function? I'd think there's not many functions that require H.264 encoding in the firmware.

Then another point: as the Live View seems to reflect the FPS and resolution of the actual recording, could it be that the Canon firmware actually just uses a Live View buffer for the video mode? This would then mean that the it's the Live View that dictates the frame rate and resolution of the recording. How video mode is implemented in 5d Mk2, 550D, 600D etc. ? Or if it's not implemented using the LV, would it be possible to implement a new video recording function in ML by utilizing the LV buffers?

I was also wondering if it's possible that all the cameras record the video natively at 1080p and the video then is just cropped and rescaled according to the actual recording settings (480p, 720p)? I do realize that rescaling is not as trivial as one might think, but since it's probably a hardware function it shouldn't require many too many cycles to do RT rescaling. At least to me it seems the 720p recording looks like it's scaled down, but that might just be my imagination and due to the encoding settings.

I'd like to dip my toes to ML development, but I'd guess I'd need IDA to disassemble the FW.. and it's a bit too commercial for me.

Disclaimer: These are just wild guesses as I have very little to zero knowledge of how the Canon firmware operates. I have nonetheless read the whole thread through. If you feel that I've asked something that has been answered before, or that this speculation is plain stupid: just ignore me :-)
Title: Re: 500d development
Post by: scrax on 24 / August / 2011, 05:39:58
@Coutts Hi, I've updated the layout of all the camera pages related to ML to helpin making the wiki more clear, the http://magiclantern.wikia.com/wiki/500D (http://magiclantern.wikia.com/wiki/500D) pages is updated but still redirects to the http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i) like before my editing because I prefer that you check it before making changes.
Can I ask if are you thinking about merging it to the unified?

@ ALL
If some other what help more by helping Coutts, Alex and other devs keeping it updated, we need screenshot of the menu, liveView, photo mode and so on. So go on the wiki and help adding what is missing on the page (you need to press the edit button to see it until the redirect isn't removed)

Title: Re: 500d development
Post by: Ebanhawk on 28 / August / 2011, 17:17:14
My 500D has firmware 1.1.1 is there any chance for me to install magic Lantern??
I have search for firmware 1.1.0 but there is none on canons homepage :(
If i had 1.1.0 would i be able to downgrade somehow??

btw good job on the hack ;)

I solved it, my friend had the firmware and i could downgrade to 1.1.0 and i got it to work now, thx.
Title: Re: 500d development
Post by: Coutts on 29 / August / 2011, 19:33:34
Progress towards integrating ML into canon's dialog system so that it will feel more light-weight :)
I've been talking to 0xAF about this as he is familiar with the 400plus project, which uses the canon dialogs completely. Here's what I've done so far:

Code: [Select]
void * dialog_token = CreateDialogBox(0, 0, my_button_handler, 0x90);
dialog_redraw(dialog_token);

stubs:
CreateDialogBox - 0xFF2688D8
dialog_redraw - 0xFF2691DC (named pDialog_pSignature_related_p3 in current IDC file [from AJs 5d2 IDC])


and I get this (and an unresponsive camera as I haven't written a button handler :P ):
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FN2VWn.png&hash=d3cd944b8027976892d6d24c11aa0463)

My handler function is empty so nothing is handled, not even the power switch so the only way to close it for now is to pull the battery. Here's a short explanation:

CreateDialogBox:
arg0 - always 0?
arg1 - always 0?
arg2 - button handler function (like idle handler)
arg3 - dialog template

0x90 is the ISO dialog template (as you can see here). So, todo:
- Find a suitable template to use for the ML menu
- Write a button handler
- Find the function to write strings to menu items (to construct our menu)
- implement ML menu into dialogs

:)
Title: Re: 500d development
Post by: a1ex on 30 / August / 2011, 02:17:20
Great!

Fully working code here. DISP - changes dialog; SET - changes palette.
https://bitbucket.org/hudson/magic-lantern/changeset/6e88af1ef585 (https://bitbucket.org/hudson/magic-lantern/changeset/6e88af1ef585)
(ported http://code.google.com/p/400plus/source/browse/trunk/menu_developer.c (http://code.google.com/p/400plus/source/browse/trunk/menu_developer.c) )
Title: Re: 500d development
Post by: pat_loonytoon on 30 / August / 2011, 02:24:40
Sweetness! This totally makes up for everyone making fun of my "Fan of Coutts" tattoo.
Title: Re: 500d development
Post by: a1ex on 30 / August / 2011, 03:04:02
This is great discovery. 0% flicker in these dialogs, without any special handling; tested on 550D and 60D.

There are also templates which are not full-screen (which can be used for notifications). A lot of redraw bugs will go away :)

Feel free to play with the code (port the changeset above and those following it), and improve this page:

http://magiclantern.wikia.com/wiki/DialogTemplates (http://magiclantern.wikia.com/wiki/DialogTemplates)
Title: Re: 500d development
Post by: arm.indiana on 30 / August / 2011, 14:35:52
Edit: I put the widgets.txt online again
and DryOS dialog functions from http://magiclantern.wikia.com/wiki/DryOS_API (http://magiclantern.wikia.com/wiki/DryOS_API)

// dialogs and windows (550d 108)
ROM:FF2B5EEC CreateDialogBox // (== ROM:FFA5499C dialog_create() in 5d2 107)
ROM:FF2B614C dialog_window_prepare() // mapped from 5d2 107
ROM:FF2B6154 ; void __fastcall dialog_resize(struct dialog *dialog, int w, int h, int unknown) // mapped from 5d2 107 and dialog.h
ROM:FF2B61F8 ; void __fastcall MoveAllDialogItem(struct dialog *dialog, int x, int y) // (ROM:FFA54CA4 dialog_move() in 5d2 107) and dialog.h
ROM:FF2B63D4 ; void __fastcall dialog_label_item(struct dialog *dialog, unsigned int id, const char *label, int len_maybe, int unknown)  // mapped from 5d2 107 and dialog.h
ROM:FF2B67F4 ; void __fastcall dialog_draw(struct dialog *dialog) // mapped from 5d2 107 and dialog.h
ROM:FF2B71B4 ; void __fastcall dialog_window_resize(struct dialog *dialog, int w, int h, int unknown) // mapped from 5d2 107 and dialog.h
ROM:FF2B7474 ; void __fastcall dialog_move_item(struct dialog *dialog, int x, int y, int index) // mapped from 5d2 107 and dialog.h
ROM:FF2B7564 ; void __fastcall dialog_set_origin_type(struct dialog *dialog, int type) // mapped from 5d2 107 and dialog.h
ROM:FF2B7744 ; void __fastcall dialog_window_draw(struct dialog *dialog) // mapped from 5d2 107 and dialog.h


Excellent work guys !

see http://magiclantern.wikia.com/wiki/DryOS_API (http://magiclantern.wikia.com/wiki/DryOS_API)
where I mapped dialog functions from Trammel 5d2 107 stubs to 550d 108.

and dialog.h from  Trammel
https://bitbucket.org/hudson/magic-lantern/src/9f843c096fda/dialog.h (https://bitbucket.org/hudson/magic-lantern/src/9f843c096fda/dialog.h)

where we have :
extern struct dialog *
dialog_create(
        int                     id,      // must be unique?
        int                     level_maybe,
        dialog_handler_t        handler,
        void *                  arg1,
        void *                  arg2
);

Indy

This is great discovery. 0% flicker in these dialogs, without any special handling; tested on 550D and 60D.

There are also templates which are not full-screen (which can be used for notifications). A lot of redraw bugs will go away :)

Feel free to play with the code (port the changeset above and those following it), and improve this page:

http://magiclantern.wikia.com/wiki/DialogTemplates (http://magiclantern.wikia.com/wiki/DialogTemplates)
Title: Re: 500d development
Post by: arm.indiana on 30 / August / 2011, 14:38:02

and also widgets structures in 550d 108.

see attached file

Indy
Title: Re: 500d development
Post by: 0xAF on 30 / August / 2011, 18:13:16
Hi there, i will subscribe to this thread too, the interesting part for me is the first 2 args of CreateDialogBox (dialog_create)... if someone find anything interesting about them please post.

from the Trammel's description posted by indy i see the first arg should be some ID, but what is it ?
it seems it does not have to be unique, at least, we call it with 0 every time... perhaps the second one "level" can explain a bit ... if we have OSD dialogs (OnScreenDisplay, dialogs which does not take the whole screen), but so far we call the second one with 0 too ...

another thing i need to understand is some special events like

        GUI_GOT_TOP_OF_CONTROL         = 0x800,
        GUI_LOST_TOP_OF_CONTROL        = 0x801,
        GUI_INITIALIZE_CONTROLLER      = 0x802,
        GUI_UNKNOWN0                   = 0x804,

this is from 400plus....

please if someone can explain this events, will be appreciated...
(i left the unknown0, one because its close to the others and i do not know what it is)


so far we are calling one canon's button handler to take care of the unknown-to-us events... if you do not handle them, you will have problems...


i've talked with alex and coutts about something important for navigating the menus
you will need this routines too:
GUI_Select_Item()
GUI_Highlight_Sub() // opens submenu in menu dialog template or highlights item.
GUI_Disable_Item()
these were found by Sergei and so far i haven't implemented them in 400plus...
for now we are calling the same canon's handler to move the highlighted item up and down when we have UP/DOWN button pressed...



p.s.
i really want to see that widgets.txt file from indy, but the forum seems to be broken and i cannot download it.
Title: Re: 500d development
Post by: Coutts on 31 / August / 2011, 17:24:53
I might be onto something figuring out why the video buffers out when shooting 1080p @ 30fps (that'd be one hurdle down!).

When mvrRecStart is called, one of the things it does is retrieves what size buffer to use.

Code: [Select]
ROM:FF150454                 BL      MOVW_SetCameraInfo
ROM:FF150458                 CMP     R0, #0
ROM:FF15045C                 STR     R0, [SP,#4]
ROM:FF150460                 LDRNE   R0, [R4,#0xC]
ROM:FF150464                 ADRNE   R2, aMvrrecstartMovw_setcamerainf @ "mvrRecStart : MOVW_SetCameraInfo"
ROM:FF150468                 ANDNE   R0, R0, #0xFF
ROM:FF15046C                 BNE     loc_FF1504B0
ROM:FF150470                 ADD     R0, SP, #0x10
ROM:FF150474                 BL      MOVW_SetMovieInfo
ROM:FF150478                 CMP     R0, #0
ROM:FF15047C                 STR     R0, [SP,#4]
ROM:FF150480                 LDRNE   R0, [R4,#0xC]
ROM:FF150484                 ADRNE   R2, aMvrrecstartMovw_setmovieinfo @ "mvrRecStart : MOVW_SetMovieInfo"
ROM:FF150488                 ANDNE   R0, R0, #0xFF
ROM:FF15048C                 BNE     loc_FF1504B0
ROM:FF150490                 ADD     R0, SP, #0xC
ROM:FF150494                 BL      MOVW_GetBufferSize
ROM:FF150498                 CMP     R0, #0
ROM:FF15049C                 STR     R0, [SP,#4]
ROM:FF1504A0                 BEQ     loc_FF1505C4
ROM:FF1504A4                 LDR     R0, [R4,#0xC]
ROM:FF1504A8                 ADR     R2, aMvrrecstartMovw_getbuffersiz @ "mvrRecStart : MOVW_GetBufferSize"
ROM:FF1504AC                 AND     R0, R0, #0xFF

MOVW_GetBufferSize calls a function at 0xFF14B878 called MovwGetBufferSize, which does the actual calculating it looks like. It looks at the value of *(0x1E84) off_0xB4 when deciding the buffer size. This offset is interesting, I have some notes here:

720p (30fps) recording - off_0xB4 = 30
1080p (20fps) recording - off_0xB4 = 20
1080p (30fps) recording - off_0xB4 = 30

So, what I am thinking is that the camera just has 2 profiles, 20fps and 30fps. The 20fps "profile" has a buffer capable of handling 1080p video, while the 30fps "profile" has a buffer capable of handling 720p and 480p video. I'm curious if I can trick the camera into thinking it's still recording the 1080p video @ 20fps (find a way to change off_0xB4 to 20), it might not buffer out after ~10 seconds like it's doing now.


The problem:
The values in *(0x1E84) only change when recording starts. They are set from another location (this is the location I will want to change), but I can't find it. It's passed in arg0 to mvrRecStart, but mvrRecStart is called from the StateObject and not directly in the ROM, so I have no way of knowing the arguments passed to it without doing some testing with RAM dumps.


I believe the actual "algorithm" for calculating what size buffer to use is in this section of MovwGetBufferSize:
Code: [Select]
loc_FF14B8AC:
                LDR     LR, =0x708
                LDR     R0, [R0,#0xA0]
                MUL     R3, LR, R12
                CMP     R0, #0
                MOVNE   R2, LR
                ADD     R0, R3, R3,LSL#1
                ADD     R0, R0, R2
                MOV     R0, R0,LSL#2
                STR     R0, [R1]
                MOV     R0, #0
                LDMFD   SP!, {R4,PC}

I'm going to look at it more soon, I just wanted to let everyone know I'm still working on things when I get time :P



edit:
So I've found the 2 buffer sizes:
20fps = 439,200
30fps = 655,200

so maybe it's not so much the recording size that matters as much as the framerate?
Title: Re: 500d development
Post by: utnuc on 31 / August / 2011, 21:53:39
Glad to see that you are back into the code Coutts.  It will be impressive if you guys are able to fully implement ML with Canon's dialog system, exciting stuff.
Title: Re: 500d development
Post by: bkkenny on 02 / September / 2011, 04:21:00
Sorry for posting here rather than in Bitbucket but I experienced a bug on the autoexec.bin Coutts posted on August 18th. Since it's an unofficial release I thought to post here. (Was I right to do so?)
The bulb timer set did not function. Can anybody else replicate this?
I know stuff like that is to be expected from an unofficial release but I thought it would be worth posting in case this gets into the next beta.
Regards,
Ben

EDIT: This was the advert at the bottom of the page. Grrr! https://rapidshare.com/files/4254183347/550D.PNG
Title: Re: 500d development
Post by: pat_loonytoon on 02 / September / 2011, 14:53:47
 Not sure on your first part but my friend mr. AdBlock can help you with your advert annoyance :D
Title: Re: 500d development
Post by: arm.indiana on 03 / September / 2011, 03:18:44
Coutts, 0xAF and A1ex,

I updated my previous post with widgets and dialogs functions signatures.

Indy
Title: Re: 500d development
Post by: a1ex on 03 / September / 2011, 03:48:41
Now we need a proper way to call them without crashing. No success yet.

There seems to be a locking mechanism for winsys, but it doesn't work. Calling stuff from gui_main_task and adding the lock/unlock functions is not enough.

http://magiclantern.wikia.com/wiki/DialogTemplates#Locking_mechanism (http://magiclantern.wikia.com/wiki/DialogTemplates#Locking_mechanism)
Title: Re: 500d development
Post by: Ulysses on 13 / September / 2011, 17:40:06
Well, its hard to say but i'm selling my 500D. I'll try to go for a T3i or a 60D.
Title: Re: 500d development
Post by: arm.indiana on 14 / September / 2011, 14:54:12
Well, its hard to say but i'm selling my 500D. I'll try to go for a T3i or a 60D.
if you wait Q1 2012, you can buy 650D / T4i and become our ML developer on this model ;-)

Indy
Title: Re: 500d development
Post by: gedas5 on 14 / September / 2011, 17:04:54
@ Coutts
I guess you are stuck with the further development of ML but i would like to express my appreciation for all the hard work you put into this! thanx
p.s. a1ex and arm.indiana as well as some others deserve great respect too ;)
Title: Re: 500d development
Post by: zanak on 20 / September / 2011, 22:37:34
going to 7d ... gl to all ....
Title: Re: 500d development
Post by: bjacklee on 21 / September / 2011, 13:27:08
No more updates? :(
Title: Re: 500d development
Post by: pat_loonytoon on 22 / September / 2011, 13:46:43
Maybe everyone sold their T1i and already are playing with the T2i...
That or Canon hired the top posters on here...
Title: Re: 500d development
Post by: Coutts on 22 / September / 2011, 14:51:24
haha, i wish canon hired me and i didn't have to finish my degree.

unfortunately i've been extremely busy with school lately. i haven't had any time to do anything. ML for the 500d isn't dead necessarily, as I still own a t1i :P

hopefully i'll have some spare time soon
Title: Re: 500d development
Post by: LaLaPico on 23 / September / 2011, 00:08:38
Coutts,

I check this page multiple times a week.. There's still a lot of us out there rooting. You needed a break from this, and glad to here you will continue sometime.
Title: Re: 500d development
Post by: a1ex on 23 / September / 2011, 02:05:39
Some tricks:

- Exposure lock works in 50D's movie mode, with the old trick from this thread, with lv_ae
- with call("lvae_setdispgain", x) you have night vision, set x from 1024 (0EV) to 65535 (+6EV) (working on 50D, 550D, 60D, 600D)
- calling lvae_setdebugmode enables DebugMsg output from LVAE module (tested on 550D only)
- calling lvae_printgero shows more parameters (tested on 550D only)
- calling other lvae_* functions may result in nice surprises
- lvae_emd* might be related to aperture control
- you have a macro named DEBUG_LOG_THIS in debug.h for logging one function call only
Title: Re: 500d development
Post by: LaLaPico on 24 / September / 2011, 17:32:08
Night vision would be awesome...
Title: Re: 500d development
Post by: Liamykins on 24 / September / 2011, 18:37:45
I'm still checking up on this every other day in hope with my 500d by my side! Lots of support your way!
Title: Re: 500d development
Post by: LaLaPico on 26 / September / 2011, 22:38:05
For a while now, I have had every feature, except Global Draw (obviously), Focus Peak and QScale. This eliminated the Err 70. But today I turned on Spotmeter, and immediately started getting the Err.
Title: Re: 500d development
Post by: Coutts on 27 / September / 2011, 19:05:42
in the most recent build i put out a while ago i forgot i had removed everything from the button handler except the ML menu button, so that may explain why some features haven't worked since then.

I need to sit down and finish porting to the unified tree, our current codebase is just too outdated / mixed up with new/old code. also, when this happens it will be running on firmware v1.1.1. with alex's help last week I got a firmware dump of the new firmware and started correcting stubs. ML is booting now on v1.1.1, I can see the changed version string but that's it, nothing else works yet. I'm going to just add things one at a time using the unified tree codebase (and not our old one).

so.. surprises await in the future :)
Title: Re: 500d development
Post by: LaLaPico on 28 / September / 2011, 03:55:03
I meant to say, I have every feature disabled besides those three. But in any event, good news Coutts :)
Title: Re: 500d development
Post by: Coutts on 28 / September / 2011, 19:26:51
spent today looking at the 60d and 500d trying to learn more about the 60d's different recording modes, if anyone's up for reading check it out :P

http://groups.google.com/group/ml-devel/browse_thread/thread/d7d2d1e1e471a8dd (http://groups.google.com/group/ml-devel/browse_thread/thread/d7d2d1e1e471a8dd)
Title: Re: 500d development
Post by: LaLaPico on 28 / September / 2011, 21:56:26
Nice job.. Very interesting way to research!
Title: Re: 500d development
Post by: gedas5 on 29 / September / 2011, 03:22:52
Coutts: I'm bound to figure
out something eventually right? :)

...and I'm sure you will ;)
Title: Re: 500d development
Post by: g1_ on 04 / October / 2011, 04:31:50
I just installed 1.5 on my camera yesterday and went out to try out my new time lapse mode. Awesome stuff, thanks to all for the hard work.

Just a quick question. I can't figure out if these 2 features are not yet implemented or if I'm being stupid:
- 60fps 720p
- manual exposure video mode

Are they implemented yet?

I was hoping to use 60fps at a shoot on sunday (9th Oct), which was the driver for installing ML.

Once, again thanks to Coutts and A1ex and whoever else!
Title: Re: 500d development
Post by: utnuc on 05 / October / 2011, 08:14:18
http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i/Kiss_X3 (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i/Kiss_X3), see Features and Wishlist.

There has been no stable implementation of alternative frame rates as of yet.  :blink:

Ben
Title: Re: 500d development
Post by: g1_ on 06 / October / 2011, 04:01:02
Sorry for not understanding but just to confirm then that manual exposure for video is also not yet functional?

I did see the wiki but was not sure if it was up-to-date.

Thanks!
Title: Re: 500d development
Post by: utnuc on 06 / October / 2011, 11:25:22
You are unfortunately correct.  =/
Title: Re: 500d development
Post by: richie007bond on 10 / October / 2011, 16:29:03
I just bit the bullet and bought a canon 600d, sold my 500d it was fun while it lasted, keep up the good work guys.
Title: Re: 500d development
Post by: Coutts on 11 / October / 2011, 14:00:34
I've been looking through the dump to figure out how state objects work: what they are, how they are made, how they work, how they change states, what the different states do, etc etc. I've found there are a few structures used, that point to other structures. the main structure looks like this:

Quote
off_0x00  -  "[state_object_name]"
off_0x04  -  [pointer to CreateTaskClass() structure]   //points to the location of the task class structure for the state object
off_0x08  -  unk //different numbers for different state objects - not sure how it's used yet.
off_0x0C  -  [pointer to CreateStateObject() structure]

I've found a function for the LVC_AE state object that seems to handle properties. This is exciting to me because for the longest time i've been trying to figure out why some properties become inert in video mode like ISO, shutter speed and aperture.


Also, maybe triggering state changes could open more doors for things we can do with magic lantern.


If you want to see my notes, I've been compiling a wiki page here:
http://magiclantern.wikia.com/wiki/Rebel_T1i_/_500d_State_Object_Initialization (http://magiclantern.wikia.com/wiki/Rebel_T1i_/_500d_State_Object_Initialization)
Title: Re: 500d development
Post by: ilguercio on 11 / October / 2011, 17:45:33
So there's a chance to control those 3 values in movie mode?
:P
Looks very nice.
Title: Re: 500d development
Post by: Ian_ on 12 / October / 2011, 14:50:23
Hello, I'm new to Magic Lantern, and I was wondering if there was a way of ending the Bulb Timer other than pressing the shutter button. I like to use the Audio release function, and would like to end the bulb capture by making a second noise. Also I was wondering if there was a way to keep the camera in remote timer mode when doing HDR Bracketing. After releasing the camera with an external remote, and taking a single bracket set, the camera goes to continuous mode. So this would make using a remote with bracketing set impossible. I'm using the test build from August 18th with a 500d. Thanks in advance.
Title: Re: 500d development
Post by: Coutts on 18 / October / 2011, 16:41:48
some new progress:

http://pic.twitter.com/2Qidx6bJ (http://pic.twitter.com/2Qidx6bJ)
Title: Re: 500d development
Post by: Coutts on 19 / October / 2011, 12:10:24
menu works now. still very early in the porting process. coming along :)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fp.twimg.com%2FAcIX8rfCIAAHfl5.jpg%3Alarge&hash=7225e4d4761068e9920475ace0a2cab5)
Title: Re: 500d development
Post by: gedas5 on 19 / October / 2011, 15:02:27
@ Coutts

very nice to see progress! keep it up!
Title: Re: 500d development
Post by: Coutts on 20 / October / 2011, 18:39:23
- all vram features (zebras, focus peaking, magic zoom, live de-fishing, etc etc)
- custom AF point patterns
- format sd card without losing magic lantern files / sd bootflag
- bitrate control (i have done 70mbps while testing!)
- intervalometer
- crop marks
- no err70 while recording
- night vision (disp gain adjustment) video
- fast zoom in play mode
- display presets

all working now!! expect a possible alpha release this weekend :)
Title: Re: 500d development
Post by: justshady on 20 / October / 2011, 19:26:12
Awesome Job man, I took my t1i off ebay  :D
Title: Re: 500d development
Post by: LaLaPico on 20 / October / 2011, 20:03:21
Great work!!
Title: Re: 500d development
Post by: AirQuad on 22 / October / 2011, 01:04:41
Quote
expect a possible alpha release this weekend

wait, wait! O Great and Terrible Coutts: o  :o
Title: Re: 500d development
Post by: Boldten on 22 / October / 2011, 09:43:50
cannot wait for this to be released!! Does it feature extended bracketing for t1i/500d and as unified download only?

Thanks!
Title: Re: 500d development
Post by: Chuchin on 22 / October / 2011, 10:33:27
Ha, updated to 1.1.1 last night and MlL is working fine,
500d 111 Coutts ML (http://vimeo.com/30942660)
Title: Re: 500d development
Post by: AirQuad on 22 / October / 2011, 11:35:15
Very Good news!
where can I download?
Title: Re: 500d development
Post by: xoliper on 22 / October / 2011, 13:31:57
Hi.. (Sorry for my bad English)
I am grateful to the creator for the modifications, but someone could explain me how to install it?
I know that the description of the installation is at the project website but I don`t understand it ;(
Thanks in advance!
Title: Re: 500d development
Post by: Coutts on 22 / October / 2011, 17:04:48
Ha, updated to 1.1.1 last night and MlL is working fine,
500d 111 Coutts ML (http://vimeo.com/30942660)
:o wow, im surprised because quite a few stubs changed locations with the update. Most important functions stayed the same (like cstart, bzero32, etc).

just wait until you play with the unified version of ML :) download the latest unified source from the main repo and compile it for yourself, it's very stable so far :D

few things left on the list before the first alpha release - expect it this coming week!!! For now though I am very busy shooting events this weekend, so I have no time to finish up ML until later this week :P
Title: Re: 500d development
Post by: ilguercio on 22 / October / 2011, 17:08:39
Looks like you've found the key to manual exposure in movie mode.
Is there any progress in respect to that?
How can you force the camera to think it's on M while in video mode rather that in AE?
Title: Re: 500d development
Post by: Chuchin on 22 / October / 2011, 23:47:04
I did change the stubs to the new addresses. But I was a little surprise. I never get things to work in the the first try.
Title: Re: 500d development
Post by: ARkristian on 22 / October / 2011, 23:50:50
hi guys! where can i download the updated ML for 500d? please reply.. thanks and more power!
Title: Re: 500d development
Post by: adijiwa on 23 / October / 2011, 02:59:40
Hi,

I compiled ML for 500D from unified branch revision 7985950eaeaa [1]. The autoexec.bin boots in my 500D, buttons and menus are operational, but the fonts are garbled. See [2] or picture below.

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Farc.itb.ac.id%2F%7Ejiwandono%2Fmagiclantern%2FGARBLEDFONT.BMP&hash=67dacb4ec749ec36ac02791def8cd62e)

I am using Windows 7 64bit, Cygwin, and Yagarto GCC 4.6.0. I didn't change anything except binary paths in Makefile. My firmware is version 1.1.1.

Any help?

links:
[1] https://bitbucket.org/hudson/magic-lantern/changeset/7985950eaeaa (https://bitbucket.org/hudson/magic-lantern/changeset/7985950eaeaa)
[2] http://arc.itb.ac.id/~jiwandono/magiclantern/GARBLEDFONT.BMP (http://arc.itb.ac.id/~jiwandono/magiclantern/GARBLEDFONT.BMP)
Title: Re: 500d development
Post by: Coutts on 23 / October / 2011, 03:27:28
you need all of the files on the card - download the latest unified release and use the autoexec.bin file you compile. make sure to include the fonts file, the docs directory and everything else in the unified tree. should look like this:

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fp.twimg.com%2FAcIX8rfCIAAHfl5.jpg%3Alarge&hash=7225e4d4761068e9920475ace0a2cab5)
Title: Re: 500d development
Post by: a1ex on 23 / October / 2011, 06:58:37
Quote
fonts are garbled
Fixed.
https://bitbucket.org/hudson/magic-lantern/changeset/8fbe03be5116
Title: Re: 500d development
Post by: gedas5 on 23 / October / 2011, 08:41:52
@ Coutts

looking every hour for the release :) as i want to give intervalometer a go and also see how other ML functions work ;) hope to see it today unless you are working on some more additional features or simply don't have time to do that ;)
Title: Re: 500d development
Post by: mk11174 on 24 / October / 2011, 02:09:40
Anyone want to share there autoexec.bin they might have compiled to tests Coutts current setup for 500d??? And the exact link to the ML firmware i would need to get to use his autoexec.bin, or do i still use the old firmware for now?
Title: Re: 500d development
Post by: adijiwa on 24 / October / 2011, 08:30:14
Anyone want to share there autoexec.bin they might have compiled to tests Coutts current setup for 500d??? And the exact link to the ML firmware i would need to get to use his autoexec.bin, or do i still use the old firmware for now?

This is autoexec.bin compiled in my computer. Sources taken from https://bitbucket.org/hudson/magic-lantern/changeset/7985950eaeaa. Camera won't boot with this autoexec.bin if the firmware version is 1.1.0. Don't forget to copy FONTS.DAT.

Use this autoexec.bin at your own risk.  :)
Title: Re: 500d development
Post by: mk11174 on 24 / October / 2011, 09:52:55
Anyone want to share there autoexec.bin they might have compiled to tests Coutts current setup for 500d??? And the exact link to the ML firmware i would need to get to use his autoexec.bin, or do i still use the old firmware for now?

This is autoexec.bin compiled in my computer. Sources taken from https://bitbucket.org/hudson/magic-lantern/changeset/7985950eaeaa. (https://bitbucket.org/hudson/magic-lantern/changeset/7985950eaeaa.) Camera won't boot with this autoexec.bin if the firmware version is 1.1.0. Don't forget to copy FONTS.DAT.

Use this autoexec.bin at your own risk.  :)
Thankyou for that autoexec.bin, but was wondering am I suppose to do something else? or just format my sim card copy ml and the autoexec to it and thats it? cause when i goto the firmware thing it says Update file cannot be found and i already updated to canon 1.1.1, I went to http://magiclantern.wikia.com/wiki/Unified#Downloads (http://magiclantern.wikia.com/wiki/Unified#Downloads) and clicked on the little camera to get the unified 0.2.1 file and unzipped that whole thing to my sd card and just replace that autoexc.bin with the one you compiled, is that right at all or am i totally wrong 8/???
Title: Re: 500d development
Post by: Coutts on 24 / October / 2011, 17:24:37
Alex has sent me an installer FIR to test - and it works! So, I guess this is the first alpha release for the 500d on the unified tree now :)

Unified Magic Lantern for Rebel T1i / 500d - Alpha Release

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FeZGQu.png&hash=2752f081fd64b88ec2467f663f657db2)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FpHhTo.png&hash=d659d4c11834e2bde3008b3499538dc8)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FCmsg6.png&hash=8bd193f271fbcd0cf4f8079892b432bc)

couple things:
- audio_thresholds moved somewhere.. i can't find it, so no working audio meter yet.
- expect bugs: this is the first alpha release where you tell me what's wrong and I fix it :)
- use at own risk as always.
- docs aren't updated yet for 500D - if anyone is up for the task, it would help everybody a lot!
- ***UPGRADE TO v1.1.1 FIRST***


Install Procedure:
- Upgrade to v1.1.1 firmware first.
- Download the .zip file and unzip it to your sd card.
- Run the firmware update on your camera
That's it :)

If all went well, your card is now bootable, and when you turn your camera off/on, it will boot the autoexec.bin that's already on the card, and you're ready to start using magic lantern.

Report any bugs to the official repo:
https://bitbucket.org/hudson/magic-lantern/issues (https://bitbucket.org/hudson/magic-lantern/issues)

The sourcecode to this build can be found in my fork here (until Alex pulls it into the main repository at least):
https://bitbucket.org/coutts/magic-lantern/overview (https://bitbucket.org/coutts/magic-lantern/overview)

Download:
http://bit.ly/t1MYYm (http://bit.ly/t1MYYm)


Enjoy!!!
Title: Re: 500d development
Post by: mk11174 on 24 / October / 2011, 19:04:10
Great Alex and Coutts, works like a charm!!! Awsome!!
Title: Re: 500d development
Post by: Coutts on 24 / October / 2011, 19:10:10
just spotted a big bug:
vram address for recording in 720p isn't right ( for features like magic zoom, focus peaking, etc).

dumping ram now to figure out the right address :P
Title: Re: 500d development
Post by: justshady on 24 / October / 2011, 19:14:52
this is great update. Manual exposure on T1i. Bravo. Donating once I get my next paycheck.
Title: Re: 500d development
Post by: Coutts on 24 / October / 2011, 19:29:27
this is great update. Manual exposure on T1i. Bravo. Donating once I get my next paycheck.
?! i wish we had manual exposure mode :(
Title: Re: 500d development
Post by: pat_loonytoon on 25 / October / 2011, 02:40:08
You should've waiting until after he sent the check lol ;)
Title: Re: 500d development
Post by: bjacklee on 25 / October / 2011, 03:41:56
You should've waiting until after he sent the check lol ;)
Good advice! lol! :D
Title: Re: 500d development
Post by: Ian_ on 25 / October / 2011, 05:04:33
I'm not sure if its a bug or not, but I can't get Audio RemoteShot to work for my 500d with this unified version. I've tried it on level 5, 20, 30. It was working for me with the August test build. Please help!
Title: Re: 500d development
Post by: adijiwa on 25 / October / 2011, 06:44:45
I'm not sure if its a bug or not, but I can't get Audio RemoteShot to work for my 500d with this unified version. I've tried it on level 5, 20, 30. It was working for me with the August test build. Please help!

couple things:
- audio_thresholds moved somewhere.. i can't find it, so no working audio meter yet.
- expect bugs: this is the first alpha release where you tell me what's wrong and I fix it :)
- use at own risk as always.
- docs aren't updated yet for 500D - if anyone is up for the task, it would help everybody a lot!
- ***UPGRADE TO v1.1.1 FIRST***
Title: Re: 500d development
Post by: Ian_ on 25 / October / 2011, 07:48:05
adijiwa, I know there isn't a working audio meter yet, but does that also mean no audio remoteshot either? Sorry, but I'm new to ML.
Title: Re: 500d development
Post by: adijiwa on 25 / October / 2011, 08:16:33
adijiwa, I know there isn't a working audio meter yet, but does that also mean no audio remoteshot either? Sorry, but I'm new to ML.

Audio remote shot works by checking audio level. Because the address for reading audio level is different in firmware version 1.1.1, audio-related features (audio remote shot, audio meter, etc) is not working yet.

CMIIW...
Title: Re: 500d development
Post by: adijiwa on 25 / October / 2011, 08:50:39
Just want to share my experience (problems, to be exact :P ) when compiling ML.

After setting right path and binary names (changing arm-elf to arm-none-eabi) for yagarto in Makefile.inc, typed make 500D, I got these errors.

1) libc.a: No such file or directory

~/yagarto/4.6.0/bin/arm-none-eabi-ar xv /home/Seula/yagarto/4.6.0/arm-none-eabi/lib/libc.a lib_a-set
jmp.o lib_a-strcmp.o lib_a-strlen.o lib_a-strncmp.o
C:\cygwin\home\Seula\yagarto\4.6.0\bin\arm-none-eabi-ar.exe: /home/Seula/yagarto/4.6.0/arm-none-eabi
/lib/libc.a: No such file or directory
make[1]: *** [lib_a-setjmp.o] Error 9
make[1]: Leaving directory `/home/Seula/magic-lantern/platform/500D.111'
make: *** [500D] Error 2


Solution:
Modified Makefile.inc around line 251
replace
ARM_LIBC_A = $(ARM_PATH)/arm-none-eabi/lib/libc.a
with
ARM_LIBC_A = libc.a
and manually copied libc.a from yagarto arm lib directory to ML source tree in platform/500D.111

After make clean and make 500D again, i got error below


2) /bin/sh: line 2: readelf: command not found

[ LD       ]   autoexec
stat: cannot stat `autoexec.bin': No such file or directory
/bin/sh: line 2: readelf: command not found
make[1]: *** [autoexec] Error 1
make[1]: Leaving directory `/home/Seula/magic-lantern/platform/500D.111'
make: *** [500D] Error 2


Solution:

Modified Makefile.inc around line 337,
replace
readelf -l magiclantern | grep -C 2 MemSiz
with
$(ARM_BINPATH)/arm-none-eabi-readelf -l magiclantern | grep -C 2 MemSiz

Did a make 500D once more, autoexec.bin produced.

Error no. 2 should be easy to fix.
I think error no. 1 occured because i used cygwin, not a native unix environment?
Title: Re: 500d development
Post by: Ian_ on 25 / October / 2011, 16:42:41
adijiwa, I know there isn't a working audio meter yet, but does that also mean no audio remoteshot either? Sorry, but I'm new to ML.

Audio remote shot works by checking audio level. Because the address for reading audio level is different in firmware version 1.1.1, audio-related features (audio remote shot, audio meter, etc) is not working yet.

CMIIW...

Oh man, that sucks...I was really starting to use this in my pano workflow. Hopefully this can be fixed soon.
Title: Re: 500d development
Post by: Boldten on 25 / October / 2011, 18:39:23
I basicly just want ML for HDR - so i'm sad to say that the HDR setting will only go from -2 - +2 and not further. I hope this will be corrected :) Besides, thank you VERY MUCH for your work!

Title: Re: 500d development
Post by: Coutts on 26 / October / 2011, 00:57:07
http://i.imgur.com/PIfSf.jpg (http://i.imgur.com/PIfSf.jpg)

http://i.imgur.com/Eouh5.jpg (http://i.imgur.com/Eouh5.jpg)

silent pics are really cool :) the hd buffer is pretty decenlty sized too at 1576x1048!
Title: Re: 500d development
Post by: FireR on 26 / October / 2011, 09:09:34
Alex has sent me an installer FIR to test - and it works! So, I guess this is the first alpha release for the 500d on the unified tree now :)

Unified Magic Lantern for Rebel T1i / 500d - Alpha Release

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FeZGQu.png&hash=2752f081fd64b88ec2467f663f657db2)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FpHhTo.png&hash=d659d4c11834e2bde3008b3499538dc8)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FCmsg6.png&hash=8bd193f271fbcd0cf4f8079892b432bc)

couple things:
- audio_thresholds moved somewhere.. i can't find it, so no working audio meter yet.
- expect bugs: this is the first alpha release where you tell me what's wrong and I fix it :)
- use at own risk as always.
- docs aren't updated yet for 500D - if anyone is up for the task, it would help everybody a lot!
- ***UPGRADE TO v1.1.1 FIRST***


Install Procedure:
- Upgrade to v1.1.1 firmware first.
- Download the .zip file and unzip it to your sd card.
- Run the firmware update on your camera
That's it :)

If all went well, your card is now bootable, and when you turn your camera off/on, it will boot the autoexec.bin that's already on the card, and you're ready to start using magic lantern.

Report any bugs to the official repo:
https://bitbucket.org/hudson/magic-lantern/issues (https://bitbucket.org/hudson/magic-lantern/issues)

The sourcecode to this build can be found in my fork here (until Alex pulls it into the main repository at least):
https://bitbucket.org/coutts/magic-lantern/overview (https://bitbucket.org/coutts/magic-lantern/overview)

Download:
http://bit.ly/t1MYYm (http://bit.ly/t1MYYm)


Enjoy!!!

I can not open the url http://bit.ly/t1MYYm (http://bit.ly/t1MYYm) in mainland china. We will all be very appreciated if somebody could have the file as attachments here in this forum. Thank you very much!
Title: Re: 500d development
Post by: a1ex on 26 / October / 2011, 09:17:01
It seems Dropbox is blocked in China.

Try this link:
https://dl.dropbox.com/u/33161628/ml-500d-unified-coutts-10-24-2011.zip (https://dl.dropbox.com/u/33161628/ml-500d-unified-coutts-10-24-2011.zip)

More info here: http://forums.dropbox.com/topic.php?id=18113 (http://forums.dropbox.com/topic.php?id=18113)
Title: Re: 500d development
Post by: FireR on 26 / October / 2011, 10:38:21
It seems Dropbox is blocked in China.

Try this link:
https://dl.dropbox.com/u/33161628/ml-500d-unified-coutts-10-24-2011.zip (https://dl.dropbox.com/u/33161628/ml-500d-unified-coutts-10-24-2011.zip)

More info here: http://forums.dropbox.com/topic.php?id=18113 (http://forums.dropbox.com/topic.php?id=18113)

Thank you a1ex for the fastest reply, but unfortunately can Not open the Url or download the zip file here.
sss~~somebody help me please!
Title: Re: 500d development
Post by: FireR on 26 / October / 2011, 10:44:10
Good news!!
The Url can not been opened but the zip files are downloaded now!
Thanks a lot to alex and everyone on this project!Love you all!
Title: Re: 500d development
Post by: adijiwa on 26 / October / 2011, 12:02:35
Hi,

i think i found the address for audio_thresholds
it's somehere around 0xFF4631F4.
After using that address, audio meter looks like in the image attached. Audio meter reacts when i make noises. Notice that audio level is that high although there is no sound in my room when i took the screenshot, only noise from my PC.

So, wrong address or audio meter need to be calibrated?
Title: Re: 500d development
Post by: a1ex on 26 / October / 2011, 12:43:01
Edit: audio_thresholds does not exist in 500D firmware.

Fixed here: https://bitbucket.org/hudson/magic-lantern/changeset/385b23741f95
Title: Re: 500d development
Post by: adijiwa on 26 / October / 2011, 13:31:15
Nice! Now audio meter and audio remote shot work properly. :D
But, i don't understand. If audio_thresholds does not exist in 500D, what is 0xFF4631F4?

Edit (add):
Btw, there is audio_thresholds in ML for 500D non-unified version, pointed to 0xFF48E58C (firmware 1.1.0), and audio features work with no problems...

Edit (again):
Changed audio_thresholds address to 0xFF48E6AC. It gives similar effect to your fix, and audio remote shot works  with this address...
Title: Re: 500d development
Post by: a1ex on 26 / October / 2011, 13:34:22
I have no idea... and I've closed the console now :)

Edit: the values were roughly close to the real ones, so it worked... sort of. But I think the units were not dB.

The values from 550D are used by Canon code in computing audio level, so I think those are correct. If you would like to brush up your math skills, you can check them by hand.
Title: Re: 500d development
Post by: Coutts on 26 / October / 2011, 15:35:58
so i guess it's simply a reference for db values. ie: if raw level is x, then it's y db. alex said the db reading in the old ML builds was reading about 2db higher than the actual sound.
Title: Re: 500d development
Post by: pat_loonytoon on 26 / October / 2011, 15:50:16
Maybe a dumb question but is there a purpose why +5 and +6 in Nightvision turns green?

Also, would increasing the gain in post-process yield the same results as using this feature?
Title: Re: 500d development
Post by: a1ex on 26 / October / 2011, 15:56:01
I guess there's some kind of overflow in Canon's white balance code.

Post-processing uses different curves (you don't know exactly Canon's curve) and is applied after compression. I guess that's the only difference.

A quick test here: http://groups.google.com/group/ml-devel/browse_thread/thread/3a810f3b7430e903 (http://groups.google.com/group/ml-devel/browse_thread/thread/3a810f3b7430e903)

Try bulb ramping to see Canon's curve (the correspondence between EV and brightness values).

Probably night vision is more useful for framing and focusing in very low light (when display is almost black with original firmware).
Title: Re: 500d development
Post by: pat_loonytoon on 26 / October / 2011, 16:25:34
On the lower settings I think the gain is acceptable and could be useful in recordings.
For timelapse photography at night this feature I'm sure is useful as well.

For Infrared Night Vision I suppose a camera hack or Infrared Filter would have to be used in addition to some Infrared light.
Title: Re: 500d development
Post by: a1ex on 26 / October / 2011, 16:31:24
http://www.lifepixel.com/tutorials/infrared-diy-tutorials/canon-drebel-t1i-ir (http://www.lifepixel.com/tutorials/infrared-diy-tutorials/canon-drebel-t1i-ir)

;)
Title: Re: 500d development
Post by: DjGRuff on 26 / October / 2011, 17:16:27
Whoa, what a giant step!

Thank you again for this cool hack!

Is with this new firmware hack any news about videos?
Title: Re: 500d development
Post by: Ian_ on 26 / October / 2011, 23:27:50
Nice! Now audio meter and audio remote shot work properly. :D
But, i don't understand. If audio_thresholds does not exist in 500D, what is 0xFF4631F4?

Edit (add):
Btw, there is audio_thresholds in ML for 500D non-unified version, pointed to 0xFF48E58C (firmware 1.1.0), and audio features work with no problems...

Edit (again):
Changed audio_thresholds address to 0xFF48E6AC. It gives similar effect to your fix, and audio remote shot works  with this address...

This sounds like great news, does this mean that we can look forward to a build for this soon?
Title: Re: 500d development
Post by: Coutts on 26 / October / 2011, 23:48:59
new build up ;)

http://groups.google.com/group/ml-devel/msg/b1c7c49cb5e48a2f (http://groups.google.com/group/ml-devel/msg/b1c7c49cb5e48a2f)
Title: Re: 500d development
Post by: FireR on 27 / October / 2011, 03:54:27
new build up ;)

http://groups.google.com/group/ml-devel/msg/b1c7c49cb5e48a2f (http://groups.google.com/group/ml-devel/msg/b1c7c49cb5e48a2f)

Dear Coutts and anyone here,
The URL:http://bit.ly/ug9Fjg is always a tragic to me. I cannot open the http://bit.ly/ug9Fjg (http://bit.ly/ug9Fjg) here.
Please be kind to paste out the Zip file address or give an attachment to be downloaded in this forum.
Thanks a lot to all of you!!~~
Title: Re: 500d development
Post by: caladeira on 27 / October / 2011, 07:30:56
Awesome work from everyone involved.

I just have one question on the install procedure:

Install Procedure:
- Upgrade to v1.1.1 firmware first.
- Download the .zip file and unzip it to your sd card.
- Run the firmware update on your camera

I've already used magic lantern on my 500D (with firmware 1.1.0) before the unified version came out and I'd like to know if the step "Run the firmware update on your camera" from the install procedure is needed.

Since I already have the boot flag active I think I don't need it, am I right?

Thank you.
Title: Re: 500d development
Post by: a1ex on 27 / October / 2011, 08:02:24
If the camera doesn't boot ML, run upgrade firmware. If it does... no need to do this :)

Direct dropbox link: https://dl.dropbox.com/u/33161628/ml-unified-500d-coutts-10-26-11.zip
Title: Re: 500d development
Post by: Jamez on 27 / October / 2011, 09:04:30
Yes, you need to upgrade to 1.1.1 first, it wont run on 1.1.0.
Im working on updating the docs, and will have it done by Sunday.
Title: Re: 500d development
Post by: gedas5 on 27 / October / 2011, 09:30:30
@ anyone

i think i'm going crazy :) where's Q button? and how to work with it for auto tunning of WB? :)

@ Coutts

finally i installed ML :) YAY!!! :) thanx a lot

I wonder if you will try to work on video mode as this release is pretty good. Just had few ERR70, i think the body heats a little more...but apart from that i like it ;)
Title: Re: 500d development
Post by: Jamez on 27 / October / 2011, 11:18:58
Q button is the "record" button, the one next to the red dot on the back of your camera.
See Alex`s guide regarding your other question, on the ML site.
Title: Re: 500d development
Post by: Eli on 27 / October / 2011, 13:02:52
First, thanks to all for the amazing work on this project.

Next, realizing that this is a work in progress, should playback of audio through the camera speaker be currently working, or have I missed something. Maybe I should ask, which audio features are currently confirmed operational.

As a long time user of Canon cameras, thanks again for breathing new life into the T1i.
Title: Re: 500d development
Post by: mk11174 on 27 / October / 2011, 14:19:13
Yeah same here I love the new update with the firmware file and all, all is working nice so far except for in vid mode when i record at 1280x720, i actually get lots of err70 with or without features turned on, but dont worry I expect issues since its still in alpha phase, 640x480 seems pretty stable, only thing in photo mode that is differ then the old releases i am curious about is the follow focus, in the old releases u could niceley fine tune the focus with the arrow keys, but now you dont have that small fine tuning ability anymore, it just goes to a set range or something when you press the keys, so no way to fine tune like before, not sure if the old way was the way it was suppose to work or if this way is how it should really work? The old way was much better to be able to get that nice fine tuning in small incerments, but i like all the new features in this realease so its worth it, just wondering if this is one of those things that can be eventually fixed or is it actually working fine now and before it was working wrong? thanks again alex and coutts for making the 500d fun again!!!
Title: Re: 500d development
Post by: Coutts on 27 / October / 2011, 15:59:22
i've just ordered the rca adapter needed for audio monitoring, it should be here by the end of next week. once that comes I'll be able to fix audio monitoring (finally) and audio playback.
Title: Re: 500d development
Post by: Ian_ on 27 / October / 2011, 22:50:20
Well I have to give praise to ML gods  :D The audio remote works perfect!

I noticed that the mic input source has an option for external as well as internal. I have a Bluetooth audio receiver found here -
http://www.amazon.com/Miccus-BluBridge-mini-jack-Rx-Bluetooth/dp/B0038MA11U/ref=wl_it_dp_o_npd?ie=UTF8&coliid=I1FBLA2KBUQK5X&colid=2WCK3R4T70C6Y (http://www.amazon.com/Miccus-BluBridge-mini-jack-Rx-Bluetooth/dp/B0038MA11U/ref=wl_it_dp_o_npd?ie=UTF8&coliid=I1FBLA2KBUQK5X&colid=2WCK3R4T70C6Y)
I would like to be able to release my camera from a far distance with it using a smart phone. I know the 500D doesn't have an external mic input, but does anyone know if there is an adapter I can get to plug in the usb or remote inputs for the receiver to work with remote shot?

Right now I'm using a small Bluetooth headset with some sticky velcro next to the internal mic to release the camera from my phone using an android app called photoirmote -
https://market.android.com/details?id=com.wegroo.ircamshooter&feature=search_result (https://market.android.com/details?id=com.wegroo.ircamshooter&feature=search_result)
The app plays beeps that can be converted to an ir signal using ir emitter plugged into the phone.  But I just use the app to play a beep on the headset.  The main downside is that I have to turn the gain up high because the headset isn't that loud, and then moving the camera or making any kind of noise at all sets the camera off.
Title: Re: 500d development
Post by: pat_loonytoon on 28 / October / 2011, 00:47:24

Obviously a firmware hack can't enable a hardware feature like external mic input.  I just added an external mic input.  I plan on making and instructables for it but for now I followed this youtube video.

http://www.youtube.com/watch?v=WKNREMo924E# (http://www.youtube.com/watch?v=WKNREMo924E#)


I also have used this hack on my camera. I cannot record sound from the built in mic since it was rewired to an external port. In earlier version, back in early 2011, the setting had to be set at internal mic to work as there is nothing telling the camera it is actually a external port and not the built in mic.

Sound is still mono so don't get any high hopes about things...but even my el cheapo wireless mic has better sound than the on board mic.

Anyways, if there is a way to go through usb now that'd be pretty sweet, doubt it though.
Title: Re: 500d development
Post by: arm.indiana on 28 / October / 2011, 07:32:57
Hi,
a contrib to find audio_threshold on 500d. no success yet, and I have to go...

Indy

Nice! Now audio meter and audio remote shot work properly. :D
But, i don't understand. If audio_thresholds does not exist in 500D, what is 0xFF4631F4?

Edit (add):
Btw, there is audio_thresholds in ML for 500D non-unified version, pointed to 0xFF48E58C (firmware 1.1.0), and audio features work with no problems...

Edit (again):
Changed audio_thresholds address to 0xFF48E6AC. It gives similar effect to your fix, and audio remote shot works  with this address...

This sounds like great news, does this mean that we can look forward to a build for this soon?
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / October / 2011, 10:17:03
I would like to thank Coutts for his work as it is great as usually :-).
I really like the new features including all the stuff displayed in the bottom bar in Live View and others.

For me, there wasn't any Err70, but I haven't played much with movies yet.

Only what I have discovered is that LCD sensor shortcuts like changing WB in Kelvins and adjusting LCD backlight aren't functional at all.
Title: Re: 500d development
Post by: Eli on 28 / October / 2011, 13:06:44
Coutts,

As a newcomer to this development, it occurred to me that maybe a different approach to the audio issues might be helpful. I'm not a programmer, so if this is off the mark, please ignore this post.

The T1i, without ML, naturally ports audio through the usb using a closed circuit that disables the speaker. For ML users (and folks that add the external mic input), it seems that what is important is added audio meters, audio triggering (enabled by the audio meters), and agc disabling. And, of those, the most important being agc disabling. If only meters and agc control are added, then the camera can do what it does naturally, audio usb out.

I realize that his does not address the live audio monitoring, certainly an important addition. My only thought was that whatever is disabling the playback audio, might be interfering with the real-time as well.

An over simplification for a complex problem, I know. Thanks again for your work.
Title: Re: 500d development
Post by: FireR on 29 / October / 2011, 10:56:06
Bug or not??
I am not sure if it is a bug or not. But it happened in ML 1.55beta version but not in ML 1.50 version.
While recording in video mode it is oftern stopped with a 100% filled buffering notice just at 16second everytime. Almost every time at 16S!!
What's the matter? because 20fps to 30fps matter?? Did anybody meet this problem before? Tell me how to solve the strange stuff.
Title: Re: 500d development
Post by: DjGRuff on 29 / October / 2011, 16:14:03
I think to buy a 600D because I got a very good deal , but i am not shure if the all ML feature works like on 550D, like manual ISO, F & shutter speed in Video Mode.

Did the Magic Lantern for Canon EOS 600D have the same Features like 550D for the Video Recording and Time Lapse?
Is there a comparison list of all features that works with 550D/600D?
Title: Re: 500d development
Post by: a1ex on 29 / October / 2011, 16:50:15
http://magiclantern.wikia.com/wiki/Unified#Feature_Comparison (http://magiclantern.wikia.com/wiki/Unified#Feature_Comparison)
Title: Re: 500d development
Post by: DjGRuff on 29 / October / 2011, 17:50:12
http://magiclantern.wikia.com/wiki/Unified#Feature_Comparison (http://magiclantern.wikia.com/wiki/Unified#Feature_Comparison)
Thank you Alex.  ;)

I see that all the manual controls in video mode are like the 550D, now i should sell my 500D for buy a 600D. :)

Thanks anyway at all of you with this 500D ML, it is incredible how you change this camera.
Title: Re: 500d development
Post by: a1ex on 30 / October / 2011, 03:25:49
That's right, the only major problem with 600D is audio (you can't change the analog volume at all). The slider from Canon menu is digital, i.e. it should be always at zero.
Title: Re: 500d development
Post by: DjGRuff on 30 / October / 2011, 14:21:34
That's right, the only major problem with 600D is audio (you can't change the analog volume at all). The slider from Canon menu is digital, i.e. it should be always at zero.

Ok, is there problem with external mic too? I think to buy one.
Title: Re: 500d development
Post by: a1ex on 30 / October / 2011, 14:32:34
Look here for more info: http://www.dvinfo.net/forum/all-things-audio/498727-agc-disable-magic-lantern-vs-juicedlink-2.html (http://www.dvinfo.net/forum/all-things-audio/498727-agc-disable-magic-lantern-vs-juicedlink-2.html)

I believe 600D is similar; at least users are having problems with it. The audio chip is different, so ML can't fix it yet.
Title: Re: 500d development
Post by: FireR on 31 / October / 2011, 10:26:31
Dear A1ex, Coutts and everyone,
Thanks a lot for bring us the Magic ML, but the 16second video limitation of my 500D in ML version is still a nightmare to me, and Error 70 happened several times . :'( Because the firmware have already updated to 1.1.1, I have to turn off the ML and shift to the Canon default Version, in which way the limitation will disappear.  :blink: If anyone know how to eliminate the 16S video limitation in ML, please be kind to tell me! Thank you very much!~
BTW, I have found that the Video recorded  in ML have been updated to 30frames per second. Does anyone know it is original from the CMOS or just produced by CMOS in 20fps and recorded in 30fps?
Sincerely,FireR
Title: Re: 500d development
Post by: Coutts on 31 / October / 2011, 12:31:55
I'm getting to the bottom of the audio issue - it's kind of a big problem I've been ignoring. So basically I discovered that onboard audio worked when i disabled the task_override and one of the prop handlers in audio.c.

So I began looking into things further before I realized the 500d has a different audio chip, Ak4636, while all of the other cameras which record stereo audio have an ak4646 chip. This says that we have no hope for stereo audio on the 500d except for external recording, sorry :(

Good news to that (on that note):
- when sound recording is disabled on camera, the video buffer is free'd up a lot, allowing bitrates of 70mbps with lower class cards.

Now, what has to happen:
I am studying the AK4636 manual now to see how it works, and which registers need to be re-written for our analog gain. There is also digital gain. The AGC registers are the same on the 2 chips, which explains why AGC toggling has worked in the  past.

So, in the next build we will have full audio working, along with audio monitoring, and who knows: maybe I'll discover new possibilities for audio after studying this manual :)
hint: we have a "digital microphone" option, which isn't in AK4646, so i wonder what it does??!?
Title: Re: 500d development
Post by: Eli on 31 / October / 2011, 12:56:49
That's good news Coutts.

The lack of stereo is not a disappointment. Never really expected anything but mono on this camera. But, having a fully operational mono system, complete with agc disable, gain control, audio meters, and external monitoring does make the T1i a more substantial and useful tool. In fact, adding an external mic input is now all the more justified.

Thanks for the great work.



Title: Re: 500d development
Post by: Jamez on 02 / November / 2011, 10:46:03
Im sure Alex can take the mono audio source and duplicate it over the L and R channels to get Stereo.
In theory it doesnt sound too hard ;)
Title: Re: 500d development
Post by: pat_loonytoon on 02 / November / 2011, 15:37:15
I think you may be missing the point of stereo sound...
Title: Re: 500d development
Post by: mk11174 on 02 / November / 2011, 15:56:58
yeah, that would not do any good since it will still be mono source since the chip only records mono, you cant get stereo out of a mono chip or source, you can only add the one mono source to the other channel just as you would do in an editing program, so it would be pointless to have alex try to create a code for that feature. i like the idea of use a separate audio recorder for audio and turn the audio record feature off on the came to free up buffer like coutts mentioned, this way you will have real stereo sound plus nice high bitrate for best video quality with camera 8]
Title: Re: 500d development
Post by: Coutts on 02 / November / 2011, 21:25:26
Im sure Alex can take the mono audio source and duplicate it over the L and R channels to get Stereo.
In theory it doesnt sound too hard ;)
the audio chip isn't configured for stereo audio, apparently the 500d and 600d are the only cameras that don't have the AK4646 stereo audio chip of the 5d2, 550d, 60d, etc. :(

Trust me after studying this audio chip for how many hours i've spent, I know that's probably not a feasible task, lol.


White boards make things easy, some things just make more sense when they're written down :)
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FG3gmC.jpg&hash=75d1a4f7e7e82ccee1c10532205fa00d)
Title: Re: 500d development
Post by: Jamez on 03 / November / 2011, 05:47:07
Ooops, I thought that stereo was just over the 2 channels, its actually over the 2 channels from 2 different sources.
I will go sit in the corner with my dunce hat on for a while...
Title: Re: 500d development
Post by: Ian_ on 03 / November / 2011, 09:12:07
Forgive me if this is a stupid question, but I am confused, is it possible to have an external mic with the 599d and ML as of right now or not, or is being worked on? Even if it is in mono, just using it for audio remote shot, it wouldn't matter.
Title: Re: 500d development
Post by: gliendo on 04 / November / 2011, 23:04:46
Hi all.

Long time lurker, first time poster. I finally decided to give ML a try tonight and must say it's quite great even in its alpha stage. Congrats to all involved.

However, I do have a question. Can we change the aperture while shooting video? The ML unified comparison chart says the 500D version can, but when I try to do it, it brings up the interface but doesn't change the value and after a second it goes back to the menu, now with the aperture setting having a red dot next to it.

Would love to have this as I don't like to shoot my 50 wide open and would rather be able to shoot at f2 or other apertures as needed.

Thanks for your work.
Title: Re: 500d development
Post by: ilguercio on 05 / November / 2011, 08:02:01
Hi all.

Long time lurker, first time poster. I finally decided to give ML a try tonight and must say it's quite great even in its alpha stage. Congrats to all involved.

However, I do have a question. Can we change the aperture while shooting video? The ML unified comparison chart says the 500D version can, but when I try to do it, it brings up the interface but doesn't change the value and after a second it goes back to the menu, now with the aperture setting having a red dot next to it.

Would love to have this as I don't like to shoot my 50 wide open and would rather be able to shoot at f2 or other apertures as needed.

Thanks for your work.
No, you can't, yet.
500D is similar to 50D, both can do videos but it's fully automatic.
There should be a way to have manual control over the exposure, we have to wait a bit.
Meanwhile you can lock the exposure for iso and shutter, aperture will remain fully open.
If you want to set it you have to press the dof button and twist the lens a bit just to interrupt the electrical contacts.
Title: Re: 500d development
Post by: gliendo on 06 / November / 2011, 16:29:05
Hi all.

Long time lurker, first time poster. I finally decided to give ML a try tonight and must say it's quite great even in its alpha stage. Congrats to all involved.

However, I do have a question. Can we change the aperture while shooting video? The ML unified comparison chart says the 500D version can, but when I try to do it, it brings up the interface but doesn't change the value and after a second it goes back to the menu, now with the aperture setting having a red dot next to it.

Would love to have this as I don't like to shoot my 50 wide open and would rather be able to shoot at f2 or other apertures as needed.

Thanks for your work.
No, you can't, yet.
500D is similar to 50D, both can do videos but it's fully automatic.
There should be a way to have manual control over the exposure, we have to wait a bit.
Meanwhile you can lock the exposure for iso and shutter, aperture will remain fully open.
If you want to set it you have to press the dof button and twist the lens a bit just to interrupt the electrical contacts.

ah ok. thanks.
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / November / 2011, 09:43:01
Hi :-)

I've just read an article about the new Canon digital camcorders and I saw an interesting idea in it.

Wouldn't it be great to have a "Pre-record" feature available in EOS DSLRs?

(see http://dancarrphotography.com/blog/2011/11/06/10-things-you-may-not-know-about-the-canon-eos-c300-future-of-cinema-eos/ (http://dancarrphotography.com/blog/2011/11/06/10-things-you-may-not-know-about-the-canon-eos-c300-future-of-cinema-eos/) , paragraph 8 – 3 Second Pre-Record)
Title: Re: 500d development
Post by: pat_loonytoon on 07 / November / 2011, 13:37:40
wonder how large the buffer is if you can record 3 seconds of HD video to the internal buffer
Title: Re: 500d development
Post by: Coutts on 07 / November / 2011, 19:34:57
wonder how large the buffer is if you can record 3 seconds of HD video to the internal buffer

it's just an area in RAM allocated for the buffer, I'm sure it probably has more free memory than the 500d to accommodate this feature.

Im not going to have much time to work on ML until december. anybody else want to take over in the mean time??
Title: Re: 500d development
Post by: adijiwa on 07 / November / 2011, 22:00:55
Im not going to have much time to work on ML until december. anybody else want to take over in the mean time??

Maybe you can share your ML to-do list so anyone with free time or resource can contribute...
Title: Re: 500d development
Post by: gedas5 on 08 / November / 2011, 04:47:11
@ Coutts

I am not sure if anyone else has it but video mode is giving me err70 isue and stops recording. I haven't changed any settings of video mode since I installed ML so not sure what could be causing it.
Does anyone else have issues with video mode?
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 05:23:53
Troubleshooting:
- try with globaldraw off
- turn off any features you don't use
- try more versions (including the latest experimental versions from the wiki)

If you can compile the code:
- find a way to reproduce the problem quickly (i.e. start camera in video mode, press REC => err70)
- disable tasks (in boot-hack.c, comment the line with task_create("ml_init"...)
- disable property handlers (property.c, last line)
- disable modules (include "disable-this-module.h") - try disabling audio, zebra, shoot, tweaks, movtweaks, debug, focus...
- do binary search through the code until you can isolate the problem
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 09:34:32
Question: is focus peaking aligned with this autoexec?
http://dl.dropbox.com/u/4124919/bleeding-edge/autoexec.bin (http://dl.dropbox.com/u/4124919/bleeding-edge/autoexec.bin)

Can you post a few screenshots?
Title: Re: 500d development
Post by: PHrag on 08 / November / 2011, 10:50:51
Can you post a few screenshots?
I'd like to, but as soon as I switch to live view the screenshot countdown just stops. Also can't activate ML menu in LV in any unified build (must help it with going to play mode and back, when switching back press delete, or press zoom in/out button with it, sometimes works). Peaking looks like it's few pixels to right. Is the menu supposed to show only a few of the tabs in top(in this build)? for example i don't see the liveview tab outside of LV, not sure if feature/bug.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 11:27:58
There's no screenshot countdown, only LED blinking.

That's the first time I hear you can't open the menu in LV.

You can adjust focus peaking from VRAM menu (adjust lv2hd.tx to move it horizontally).

You are supposed to read help texts from the menu ;)
Title: Re: 500d development
Post by: ats1995 on 08 / November / 2011, 11:53:15
a1ex: The autoexec doesn't seem to work for me. The camera won't boot. I use the 27 Oct unified build. The camera is totally dead with it.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 11:58:17
Are you sure? Check file size (988k).
Title: Re: 500d development
Post by: ats1995 on 08 / November / 2011, 12:16:37
weird, now it works. I get screenshots, but their not what I see on screen. Here is one

Edit: I'm not able to convert the 422 file, but here it is. At least I think it's the right one :/
Title: Re: 500d development
Post by: ilguercio on 08 / November / 2011, 12:25:48
weird, now it works. I get screenshots, but their not what I see on screen. Here is one
You should attach the .422 file as well so Alex can see the real image that there's on the screen :)
Title: Re: 500d development
Post by: PHrag on 08 / November / 2011, 12:38:04
There's no screenshot countdown, only LED blinking.
I know, that's what I meant.  After playing with it for a bit, both ML menu and screenshot break when global draw is on and Zebra, focus peak or false color is selected (or magic zoom is being displayed); Ghost image, spotmeter and Histogram/wave is fine(and magic zoom too, when not showing stuff). Another thing is there's huge red cross (like on  ats1995's screen, but complete) filling the screen. Also camera crashes when global draw is enabled (even if it's alone) and shutter is half pressed to clearscreen.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 12:48:28
If the image doesn't match what you see on the screen, take a photo with a camera phone.

If you disable clearscreen, does it still crash?

With the attached autoexec, does it crash? Many elements from LiveV menu are disabled.

Title: Re: 500d development
Post by: Coutts on 08 / November / 2011, 13:01:19
tips for developing:

- for testing, use xx_text() in debug.c. any code inside this function will run when you click "don't click me" under the debug menu.
- use bmp_printf() in debug loop task (debug.c) to print the value of a certain location in memory if you want to nkow it's value. ie: bmp_printf( FONT_MED, 0, 100, "value of 0x1234: 0x%x", MEM(0x1234) );
- use bmp_hexdump() to view areas of memory live on screen. an example is in the debug loop task already commeneted so you know how to use it. *make sure the length viewed is a multiple of 32*
- my latest IDC file for the 500d v1.1.1 firmware can be found here: http://dl.dropbox.com/u/33161628/500d.111.0xff010000.coutts.idc.zip (http://dl.dropbox.com/u/33161628/500d.111.0xff010000.coutts.idc.zip)
- for help setting up a mac (10.6/10.7) for compiling ML / the arm-console, see my page: http://magiclantern.wikia.com/wiki/Magic_Lantern_Development_on_Mac (http://magiclantern.wikia.com/wiki/Magic_Lantern_Development_on_Mac)
- use the LED to help you track where code is hanging up at. use GuiEdLedOn(); to turn the led on and GuiEdLedOff(); to turn it off (blue led that is). The stubs are already in the 500d's stubs.S file.
- audio.c still needs finished. My routine for setting gain works, but I cant figure out how to configure the chip for audio monitoring, or to toggle agc on/off (I can turn it off but that's it). This is my (incomplete) version of audio.c I was going to use only for the 500d: http://pastebin.com/NAX87R2Y (http://pastebin.com/NAX87R2Y)
- to make a change that only applies to the 500d, use "#ifdef CONFIG_500D" and "#endif" around the block of code in question. Refer to how it's used all over ML right now for a reference.

im available to answer questions almost all day (im always on google talk either from my phone or computer throughout the day): [email protected]

After you work with ML for long enough you really become familiar with it. I forget who said it, but ML really is like an SDK - it gives us a framework to build from, and there are a lot of powerful tools / routines already written which are available at your disposal.
Title: Re: 500d development
Post by: ats1995 on 08 / November / 2011, 13:08:32
a1ex: When desableing clear screen am I not able to crash it.
Title: Re: 500d development
Post by: PHrag on 08 / November / 2011, 13:14:09
With the attached autoexec, does it crash? Many elements from LiveV menu are disabled.
Yep, still does. Found out that it won't crash on first halfpress, but on second.  So you go to LV with clearscreen enabled, halfpress once, do whatever you want ( i tryied going to ML menu, canon menu, waiting 10 seconds, turning off stabilizer) and on second halfpress it crashes. If clearscreen is disabled, it won't crash.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 13:44:15
Now it should no longer crash due to clearscreen. I've replaced the functions for disabling bitmap overlay with a softer method (a fake dialog box which clears the screen). It kills all Canon graphics, but ML might still draw something over it (but at first test it seems fine).

This autoexec has disabled top and bottom bar disabled (but everything else enabled). Does it still crash?
Title: Re: 500d development
Post by: PHrag on 08 / November / 2011, 13:59:26
This autoexec has disabled top and bottom bar disabled (but everything else enabled). Does it still crash?
Awesome, no more crashes! Even screenshots and ML menu works.

regarding my previous question about only a few tabs displayed in the top of ML menu (it was full in previous builds) is that right?
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 14:03:46
Quote
You are supposed to read help texts from the menu ;)
^^^

Now this autoexec has everything enabled (including top and bottom bars). We'll see now if these were causing crashes.
Title: Re: 500d development
Post by: mk11174 on 08 / November / 2011, 16:33:25
Very interesting, that first Autoexec.bin Alex sent that says the ML bars turned off works stable as anything even in movie mode where with the latest Alpha err70 on 1280x720 and 1920x1080 recording, even sound playback works, on the 2nd Autoexec,bin he sent, that one err70's but seems to only happen if you have Canons Audio recording turned On, if you turn Audio recording off it is very stable and I tested with all the cool features on too, weird how the 1st one works stable audio on or off but the 2nd one crashes with audio on but very stable with it off and works fine on all the other features as well till you turn audio on.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 16:55:48
So, with 1720 is fine and with 1722 is not?

The only difference between these two is top and bottom bars (lens.c).
Title: Re: 500d development
Post by: mk11174 on 08 / November / 2011, 17:00:46
So, with 1720 is fine and with 1722 is not?

The only difference between these two is top and bottom bars (lens.c).
Yeah, from those 2 autoexec you sent, the one with the bars disabled works super stable when recording in movie mode in any res and with audio on or off, the last one u sent works just as good as long as audio is set to off in canon menu, once on, it crashes to err70 like in the alpha release, and also audio playback works in these bins unlike in the alpha release. 8]
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 17:03:35
Well.. this one has the top bar disabled.
Title: Re: 500d development
Post by: a1ex on 08 / November / 2011, 17:05:14
... and this one has the bottom bar disabled.

Which one could be the problem?

Also, on #1722, try to set "ML info bars" to "inside 3:2". Does it fix anything?
Title: Re: 500d development
Post by: mk11174 on 08 / November / 2011, 18:12:59
Geez!!! I went back to that 2nd autoexec you uploaded with everything enabled when these 2 new ones err70 on me, and found that it was stable till I pressed the display button and showed the botton ML info bar, then it crashed then when I pulled batt and retried with or without displaying the bottom bar it crashed, but was fine up till the first time i tried to display the bottom bar, so thats weird, but no matter what though, turning Audio off in canon menu makes it work fine, all bars on or off and all fancy features used, it runs perfect if audio is set to off, so obviously the bottom bar makes it less stable on the 500d, but even when off it still eventually crashes. But audio off seems to be the way to go, great if you have a seperate audio recorder.
Title: Re: 500d development
Post by: mk11174 on 08 / November / 2011, 18:30:51
Hmmm!!! Another interesting find, Using the 2nd Autoexec.bin u posted that has everything back on, I found to get it to record stable with Canon audio on, is before you record, cycle through the display with the Disp button till you go past the ML bar and only see the canon display at bottom, it will record stable, but you have to first to a cycle at least 1 time when you first turn cam on, while ur recording if you press display to show ML bottom bar it will crash right away and after a bat rest it will still crash even if bottom bar is off untill you do a full cycle through display menus past the ML bottom bar is not on, so the bottom bar is one issue, but even with the Autoexec you sent to disable the bottom it will still crash, but hope this helps in some way, knowing that you can use the everything enabled Autoexec as long as you cycle through your display past the ML bottom bar before u record, seems to be very stable that way 8]. But also remember that you can utilize the ML bottom bar display stable if audio is off in canons menu
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 00:49:11
So we can narrow it down to bottom bar?

Try to set "ML info bars" to "inside 3:2". This will confirm (or infirm) my hypothesis about what's causing the crash.

With 1720, can you use magic zoom, focus peaking and false colors without problems?
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 01:22:03
In 1720 it still crashes if you are recording and dont flip through the display before you record, it holds stable a few times but then eventually crashes, the only way then is to quickly run through the displays again till you are at the canon onscreen display even though there is no ML info bar there on the screen cause you disabled it, 1722 crashes right away if it the ML bottom bar is on, but if you simply flip through the display past it to canon display it stays stable no crashes, so both will crash but flipping through the display real quick before you record makes it stable, magic zoom, focus peaking and zebras dont seem to effect the results on or off, magic zoom is flashing alot in video mode all the time but works. So the bottom bar is for sure the result of the crash, but even in 1720 you have it gone and it still crashes if you flip through the displays and wind up at the point where the bottom bar would display which is the screen right before canon bottom bar info shows, on 1720 its blank of coarse, 1722 it ML bottom bar, its that point in the display that seems to crash it wether you see the ML bottom bar or not. And of coarse no crashes at all with audio turned off in canon menu, even recording at 3.0 bitrate as well, was pretty nice actually, just no audio cause its turned off. Oh, and setting the bars in or out dont seem to change the results either.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 01:34:01
Another hypothesis: if you disable time indicator and recording info, does it influence anything?
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 02:03:05
Another hypothesis: if you disable time indicator and recording info, does it influence anything?
Actually I had those turned off at start and turned them on later to test out what I can use out of this new build, it doesnt seem to change anything, I am loving the 1722 build, even with Audio turned on i can use zebras, focus peaking and magic zoom fine and the record bitrate and time left, as long as i cycle through the displays a full once over till i get past the ML display, if I do that everytime before I record it works stable even with audio on, if you try to record a 2nd time without a cycle through the disp it will usually crash a few sec later, and its always 100% crash if you try to show the ML bottom bar for sure unless Audio is turned off then you can use ML bottom bar. I can even take a picture during recording without a crash if Audio is off and bottom bar is on. If I try to take a picture during recording with Audio on, even doing the cycle through display trick first, it will crash after a few shots, just doing a half shutter also crashes it, I see the ML displays come on during a half shutter press so I guess thats the same as trying to record using ML bottom bar with Audio on.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 02:10:43
That's right. But we have isolated the problem (it's within around 500 lines of code :P ), we have a way to reproduce it and we can fix it. Plus, it sounds like it might be a hidden bug in all other cameras (just with not-so-visible symptoms).

This autoexec only has the first items from each toolbar (clock and shooting mode). A possible suspect is in some floating-point computation in bottom bar.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 02:55:29
1734, crashes just like the others, with or without global draw even on or off, same results unless I turn audio off then works fine still. I turned every feature on and off that i can, started record, pressed shutter a few time halfway and eventually it froze to err70, seems the same for sure even though I only see the Mv on the bottom bar or turning draw off alltogether, it seems to work little longer with global draw off though at least, but just a few seconds. I tried differ option in the ML audio menu with audio on, no change always crash unless Audio is off altogether. And just like all the rest versions even the really nice 1722 it seems fine with Audio on, using Draw options also, if you cycle through the displays past ML info before recording each time, it seems to not freeze still.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 03:08:33
What about this one?

Only test it with sound enabled (I'm sure it will work without sound).
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 03:27:24
And if it's what I suspect (ML drawing past BMP boundary), this autoexec should fix the problem.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 03:42:28
no, neither was any differ, i saw hello on the 1736 yet it did not crash during the hello, it did crash eventually while pressing the dis button during recording or just stop then starting a new recording it would crash after a few seconds, the 1737 crashed right away when the ml bottom bar was displayed. so the 1736 was more stable and took a few button presses and re records to make crash, but in the end was same results unless you do a full cycle with disp button before every record, but no issues with the hello display, it did not make it crash like the colorful full ml bottom bar info.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 03:47:20
This is getting fishy...
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 04:06:08
1739 worked like the Hello one except there was no info this time at bottom, seemed stable but after a record stop then record it would freeze and of coarse was fine if I ran it through a display till I got to canons info again it seemed fine, but in all these tests at least you know the canon full bottom bar crashes it for sure right away, you cant even record a second unless audio is off of coarse then its safe like we noticed. Obviously in still mode its peachy, just while recording video. Maybe the 500d is just a wimp and cant handle to many things at once lol!!!
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 04:16:32
Actually I will correct that, that one seems fine without doing the cycle through disp, i noticed if u wait a few seconds before recording the screen does some kinda recycle thing, u see it recycle good with focus peaking on, it seems to do it twice and the after the 2nd one you can record without a crash. I was pressing record to fast on that last autoexec.bin 1739 cause my bat is dieing lol, but seems to record fine, no bottom bar but records fine if you dont rush it.

I went back to try the Hello one to wait for the screen refresh in between recordings and that one crashed.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 04:19:30
Can you test 1720 again?
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 04:23:53
Can you test 1720 again?
ok ill retest 1720

ok, i went back to 1720, i was patient waited for the screen refresh thing on the 3rd recording it crashed, i didnt press any buttons while recording just recorded 10 sec each stopped it, waited till it refreshed the screen and started recording again, 3rd one crashed it, ill try 1739 again see how many recording i can get before crash if it crashes soon as my 2nd bat finishes charge.

Ok, went back, 1739 still good, i made it through 10 records with no crash, no going through display cycle, just being patient and waiting for screen to refresh or whatever its doing those 2 times in a row after each recording, and seems fine as long as u dont try pressing the shutter button or disp while recording then it gets flakey will crash every so often if u do that while recording.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 04:36:51
So the problem seems to be somewhere else...

All the LiveView tasks are disabled here. Redraw is also disabled (and replaced with a "clear screen").

Side note: there was a similar problem on 550D a month ago; I was able to reproduce it only by taking pictures while recording, at ISO 6400 RAW+L, and it crashed at the third or fourth movie. Since fixing that, most random ERR70 problems disappeared magically. But it took me a couple of hours just to isolate the problem... and then 5 minutes to fix it :)
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 04:44:37
174
So the problem seems to be somewhere else...

All the LiveView tasks are disabled here. Redraw is also disabled (and replaced with a "clear screen").

Side note: there was a similar problem on 550D a month ago; I was able to reproduce it only by taking pictures while recording, at ISO 6400 RAW+L, and it crashed at the third or fourth movie. Since fixing that, most ERR70 problems disappeared magically. But it took me a couple of hours just to isolate the problem... and then 5 minutes to fix it :)
4 as is turning on cam and pressing record crashes it right away, if it would of been best to reset the config data first, but thats what happened just loading that one, i of coarse saw only audio meter.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 04:51:57
Hmm.. it runs very well on 550D.

Disabled the audio module.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 05:16:12
Hmm.. it runs very well on 550D.

Disabled the audio module.
On this one I saw I could get into ML menu unlike last one, this one seemed fine at first then crashed after 2 then 3 records 8/ no focus peaking even though it was turned on just plain canon screens and still crash just recording normal, sound i noticed during playback was louder, maybe cause of the agc??? So 1722 still seems to be the winner as long as you dont try to take a picture during recording and cycle through displays before a re-record, 1739 worked without cycling through displays as long as u waited a few seconds before each recording, and of coarse dont press any buttons while recording cause it randomly crashes. Thats for anyone just reading in of coarse, alex already knows all this from working so hard tonight to try to pinpoint this, thanks alex, I am glad u got 1722 out there though, its nice to have all the features enabled and still being able to record in vid with a little trick that seems to work, I myself am hooking myself up with a portable digital recorder next month that will mount on the shoe of the 500d, so I can turn audio off and ML then works awsome on it, so for me, this version is perfect but crossing my fingers for everyone else that dont have a digital audio recorder to take care of the sound.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 05:23:34
Alex, does the follow focus work correctly on the 550, I remember in the old 500d autoexec.bins with the 1st ML the follow focus was nice, you can easily fine tune the focus just by pressing the arrow buttons, on these new versions since the new firmware, you cant finetune it anymore, all 4 buttons seem to just go a set amount, top and bottom are faster then the left and right ones, but you cant fine tune little by little anymore, its just goes back and forth till something that says soft focus was reached? is that how it works on the 550 as of now or does it seem to be just on 500d.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 05:25:05
Maybe it's easier to go from the other end.. with everything disabled, start enabling stuff.

This one will set the version string in Canon menu and do a tiny bit of initialization.

Follow focus works very well on all other cameras (550d/60d/600d/50d/1100d).
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 05:53:59
Maybe it's easier to go from the other end.. with everything disabled, start enabling stuff.

This one will set the version string in Canon menu and do a tiny bit of initialization.

Follow focus works very well on all other cameras (550d/60d/600d/50d/1100d).
On that one i saw no ML menu at all and from what u said I guess that is correct, it didnt even seem like it was loaded, even at the format menu it didnt show the option to format and save ML, I just went there to check, just letting u know everything i saw to see if this what u expected??? Recording was 100% stable no matter what i messed with during it.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 06:05:03
That's right, everything was disabled.

After some code cleanup ( http://groups.google.com/group/ml-devel/browse_thread/thread/2fd0bb4dd410a7fc (http://groups.google.com/group/ml-devel/browse_thread/thread/2fd0bb4dd410a7fc) ) I've discovered (and fixed) a potential stability problem. Also, arrow key codes were not defined in 500D, which may explain why follow focus was not working.

So here's a full autoexec.
Title: Re: 500d development
Post by: Coutts on 09 / November / 2011, 06:08:21
^ that may fix lcd shortcuts then (they weren't working).
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 06:20:34
That's right, everything was disabled.

After some code cleanup ( http://groups.google.com/group/ml-devel/browse_thread/thread/2fd0bb4dd410a7fc (http://groups.google.com/group/ml-devel/browse_thread/thread/2fd0bb4dd410a7fc) ) I've discovered (and fixed) a potential stability problem. Also, arrow key codes were not defined in 500D, which may explain why follow focus was not working.

So here's a full autoexec.
Well, same crashes, no advanced ML menu, just freezes if you try, cam records a few seconds with bottom bar shown but then crashes even if everything turned off from basic menu, follow focus now works like i remember except the left arrow key, that one still scrolls focus to whatever and where it says soft focus reached, but all other 3 work as i remember, so thats a plus 8]
Title: Re: 500d development
Post by: PHrag on 09 / November / 2011, 12:18:28
I confirm everything what mk said above, and found out that Magic zoom flickers alot. Wanted to track the problem, but after trying the 1708 my camera won't boot with it anymore. It did yesterday. Even after removing the card it doesn't do anything. I have to remove the battery and boot it without card or with newer autoexec. (<- doesn't matter anyway). Anyway, last build it worked without flickering was 1668 by Coutts. Also the boarders never turn green as said in the help. I'm sorry about the /too few tabs in the top/ thing, I was just blind, found it out today haha.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 12:48:42
Let's continue troubleshooting the stability problem.

This time I've disabled most modules.

Follow focus should work.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 13:42:00
Let's continue troubleshooting the stability problem.

This time I've disabled most modules.

Follow focus should work.
Ok, testing and thanks again alex, for all the trouble u r going through for all of us 8]

Test update: I see the ML menu fine, not much in it obviously, can access advanced menu now, all buttons work follow focus perfect and recording is 100% stable 8] no matter what i do during recording.
Title: Re: 500d development
Post by: ats1995 on 09 / November / 2011, 14:00:31
It works very well. When focus delay "wait + xx ms" is enabled, this happends: Stepsize 2 and 3 are way too large. With the 18-55 IS on focus step 1, there are 37 focus steps from one end to another, which is nice. When using step size 2 or 3 there are just 6 step from one end to the other. When disabling "wait", the problem doesn't occur. Then everything is smooth and functioning as it did on beta 1.5, etc.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 14:01:04
Great!

Enabled a bit more (tweaks and movie).
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 14:12:23
Great!

Enabled a bit more (tweaks and movie).
That one shows wakeup message the whole time and err70 a few sec after recording, and wakeup flickers as well. menu twitches back and forth to live view screen, seems to be inline with the wakeup message on the screen

Update: it only seems to crash when flipping through with the display button during recording, like right after its blank screen, not every time but most of the time it does it right away, taking pictures seems fine during recording.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 14:15:04
Sorry, forgot it in debug mode.
Title: Re: 500d development
Post by: ats1995 on 09 / November / 2011, 14:19:30
"wakeup: 0" is displayed all the time, even canon menus and review. It changed to "wakeup: 63" during record and after record. It flickered to 25 and 36 sometimes too.
The "signs"(don't know any good word for that) doesn't show. You'll see in a screen shot. The focusing part seem still very stable during record.
What I didn't picked up during the last autoexec was that after every touch on the follow focus, it takes a big step, similar in size to the steps during step size 2 or 3. I noticed this just after posting last time.

Edit: with the 1760 autoexec the signs show normally :)
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 14:22:41
Sorry, forgot it in debug mode.
very nice, no crashes no matter what i do with buttons during record. night vision works as well, no crashes

Update: I noticed using follow focus during record is fine, but when you get to the point to where it displays the text Soft Focus reached, the texts flashes and err70 happens, you have to go back and forth and both end, but only err when text appears and u try to go other way.
Title: Re: 500d development
Post by: PHrag on 09 / November / 2011, 14:28:35
Still crashes for me (err 70 and can't turn it off) when recording and going to ML menu(don't even need to press anything there).

But outside of ML no crashes!
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 14:45:33
Does 1755 crash with menu open while recording, and with follow focus?
Title: Re: 500d development
Post by: PHrag on 09 / November / 2011, 14:53:27
Does 1755 crash with menu open while recording, and with follow focus?
Follow works fine, but crashes with menu open too.
Title: Re: 500d development
Post by: ats1995 on 09 / November / 2011, 15:00:51
For me the 1760 is stable as ever. I can do close to everything in ML menu during record, and press any button.
The focus jumping is still present to me. It's not consistent, but bothers a whole lot. Focus step sizes do affect it. Focus step size 1 has a smaller jump at the end of most focus pulls, and 2 and 3 have equally sized jumps.

Edit: sorry for the mistake, but I might have had the audio recording off, which explains a lot :/
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 15:02:30
Does 1755 crash with menu open while recording, and with follow focus?
No crash with follow focus on 1755 but yes with open of ML menu, that is one thing I never ever tried for all these tests is opening ML menu during recording, every normal button just never ML menu, so most likely it obviously cause a crashed on all those tests to, but only during recording of coarse, it does crash otherwise.

Update: I also noticed in 1760 I noticed in the upper left corner the canon overlays get erased on and off, and when my card got full and it showed the full grey area in the center it looked like the shape of the magic zoom box was flickering the canon overlay on and off, this didnt happen in 1755.

Update2: I figured out what caused the dissapearing canon overlay section in 1760, it only happens when you use the option to hide AF frame, and i noticed when u turn it to Show instead of hide, the overlay is not erased and guess what, no follow focus crashes. 8]
Title: Re: 500d development
Post by: ats1995 on 09 / November / 2011, 16:02:40
Yep, mk11174's update 2 fixes the upper left corner. But "AF frame display: Auto off" doesn't seem to work. My AF frame is always there. It doesn't even flicker like when this function is working, it's all solid.
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 16:19:07
Sounds good (but I need to double-check boundary conditions for bmp_fill).

Now I've enabled the Shoot menu.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 16:47:21
Sounds good (but I need to double-check boundary conditions for bmp_fill).

Now I've enabled the Shoot menu.
Ok, working fine, no square shape erase going on in this one either wether AF frame display is set to show or auto hide, but it still crashes when set to auto hide while running follow focus when the soft focues text appears, but when set to show it run stable even when text appears, shoot menu works good, sliscan silent pictures, etc.. only issue on a crasj was when i tried lcd remote shoot, it started the record, but when you wave ur hand again over it while recording, it says rack focus error then err70 happens. other then that all stable 8]
Title: Re: 500d development
Post by: a1ex on 09 / November / 2011, 16:55:48
OK, keep AF frame as "show" for now (i.e. ML won't try to hide it).

I've also enabled LiveView module.
Title: Re: 500d development
Post by: mk11174 on 09 / November / 2011, 17:36:41
OK, keep AF frame as "show" for now (i.e. ML won't try to hide it).

I've also enabled LiveView module.
Ok, all seems fine until the ML colored info is showing at the bottom, no issues with the smaller font showing temp and all, thats on screen all the time and i can take pictures while recording and follow focus, just when the colored info is shown it crashes.

Update, if you set the bars to inside, you can see the tiny text with temp and all is nice and solid, but the colored font with shutter and all makes the canon overlay area flicker behind it if that means anything?

Update 2, just say this build seems really stable, i was messing around allot with it trying to crash, it, it really only seems to crash during the bottom bar of ML is displayed for sure, its very stable otherwise.

Update 3 Another cool thing I just happened to notice, with these new updates alex is posting since starting fresh, not sure about the ones right before this one, but this one finally locks the x160 iso in photo mode, for some reason none of the other versions could ever hold the x160 iso when changed in ML menu, it would always flash back to the closest x100 number unless u kept pressing a half shutter to keep it there or use the half shutter press option in ML that repeatedly did it auto but of coarse limited other features cause of the half shutter press, NOW!!!! it just stays put like any other number changed in ML, so that has to be interesting to Alex that he fixed something new for sure while trying to get record mode stable.
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 00:16:02
Now we only have half of the colored bar (with the same modules enabled).
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 00:27:27
Now we only have half of the colored bar (with the same modules enabled).
KOOL KOOL Stable and does not make the canon overlay behind the text flicker either 8]
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 00:53:13
Now I've enabled shutter and aperture displays (which use floating-point for computations)
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 00:56:04
Now I've enabled shutter and aperture displays (which use floating-point for computations)
Still stable 8D
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 01:06:23
Now the full color bar is there (only that it's 10 pixels above the very bottom). I've also replaced most floating point computations with integers (but didn't test them yet).
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 01:16:14
Now the full color bar is there (only that it's 10 pixels above the very bottom). I've also replaced most floating point computations with integers (but didn't test them yet).
oh geez, u went and broke it again, lol, so that one crashed it right away when recording with bottom bar visible


text also flickers on that bottom bar every so often if that means anything
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 01:21:42
I can't see the flicker, so I can't tell what it is. Conflict with Canon's bottom bar?

Just to test a hypothesis: try 1775 with this option in config file:
Code: [Select]
shutter.display.degrees = 1

It should display shutter value in degrees in movie mode.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 01:34:32
I can't see the flicker, so I can't tell what it is. Conflict with Canon's bottom bar?

Just to test a hypothesis: try 1775 with this option in config file:
Code: [Select]
shutter.display.degrees = 1

It should display shutter value in degrees in movie mode.
Yes, its in degress, im guess u meant 1775 right? And on that one, the bottom text is very solid with no flickers and of coarse no crashes, on the one u just made, the text just does a really faint flicker even when not recording, its barely noticeble, but you can tell on this one it flickers real fast every so often and when it does flicker during recording thats when it crashes, 1775 is perfectly solid no flicker at all, just thought that might hint something to u that might help. no canon menus up at the time of coarse when it flickers, I thought it was metering, but you cant seem to make it do it, it just does it like a refesh rate flickers.
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 01:43:51
Good, now the full color bar should be there without flicker.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 01:47:50
Good, now the full color bar should be there without flicker.
that one is stable!!!!!!
just to note in case cause its a differ cam, is the black behind the bottom bar font suppose to connect all the way across or is it suppose to be in 4 sections? on my cam its in 4 sections if thats important or not?

Forget that last note: i was using my manual lens, with my auto its in many sections, so basically i guess i should ask, is each info suppuse to be seperated or on a contiunous black bar, lol, looks fine to me either way i am just making sure u see what i see so u know everything
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 01:52:54
Great!

This one has flicker, but it's just to test my boundary checks.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 01:58:06
Great!

This one has flicker, but it's just to test my boundary checks.
This one was solid black behind everythhing on bottom bar only and froze right away when i hit record
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 02:05:21
This should explain the menu freezing too. Boundary checks are OK now, ML menu is even a bit smaller than normal, so I doubt it writes outside image buffer limits.

Let's try Trammell's workaround (NOP instructions inside bmp_fill loop).

Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 02:17:44
This should explain the menu freezing too. Boundary checks are OK now, ML menu is even a bit smaller than normal, so I doubt it writes outside image buffer limits.

Let's try Trammell's workaround (NOP instructions inside bmp_fill loop).


DANG!!!! U THE MAN!!! Nice and stable!!!
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 02:24:34
Yay!

This one has everything enabled (changeset 5297a7d2a67c).

You can also try to enable AF frame clearing.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 02:37:55
Yay!

This one has everything enabled (changeset 5297a7d2a67c).

You can also try to enable AF frame clearing.
Yep!!! AF Frame ok too!!!! Awsome!!!
Title: Re: 500d development
Post by: rexman on 10 / November / 2011, 04:28:36
Is anyone experiencing compile errors with latest changest.
I cant compile past tweaks.c, looking for nonexistent zebra.h

Adam
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 04:41:04
Fixed.

Can you take a look at defishing and ghost image? I've changed the graphics engine since Coutts aligned them.
Title: Re: 500d development
Post by: rexman on 10 / November / 2011, 05:11:26
Thanks Alex,
Clean Compile.
At work without camera.So will have to test once home.

Adam
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 06:23:33
I've tested defishing on the HDMI monitor (there, the screen layout is somewhat similar to 500D's) and should be OK now.
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 10:05:23
Quick question: is the menu still working in this one?
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 10:26:25
I've tested defishing on the HDMI monitor (there, the screen layout is somewhat similar to 500D's) and should be OK now.
I dont have a cable to view hdmi, but on cam, difishing still works, its a greyscale preview on here that cant be recorded or taken a picture of if thats how its suppose to work, and ghost image i cant get to work, but never could on any build, i goto play, i select an image, i press record button, it shows the image like it strts doing what it should be doing, the displays go away, then if u try to move it around or whatever it just goes back to regular play mode to select an image. Doesnt crash or anything.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 10:30:32
Quick question: is the menu still working in this one?

yes menu still works, i actually was able to access menu for a little while while recording, it took a few seconds before it crashed, i scrolled through the menus, it was slow, but didnt crash right away, never tried with the last couple before this though, just thought of it this time cause u asked about menus

Update: yeah, i could access menu while recording with the last few before this one, sometimes i got further sometimes it crashed right away. i doubt anyone cares bout accessing it while recording anyway, 8] i love these new builds!!!!!
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 10:35:50
It crashed?!

Tell me the number which appears on the screen. Go to play mode and back a few times. There are two possible values, tell me both.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 10:40:38
It crashed?!

Tell me the number which appears on the screen. Go to play mode and back a few times. There are two possible values, tell me both.
ok, ill try now, and yeah, it crashed only while trying to open ML menu while recording, its always done that though but works longer before a crash now, other than that its stable on anything else.

36b8100  the lower case b twitches once in awhile to which looks like an 8, way to fast to read it, it does it when u go back and forth with play or its just a regular debug twitch and it no new number or letter at all, looks like an 8 if anything

update, the b changed to a 3 when i made it crash by going to the ML menu while recording in case u needed to know that tooo

update 2: just to note, i went back and tried 1755 the crash happens on that one to, the highlight menus turn red too if u try to view it while recording, but unless it bugs u wondering y it crashes, i wouldnt stress about that one cause its very stable while recording, u did great and finally having it stable during recording is the more important thing im sure 8]
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 10:53:53
Sounds good. I went even further and replaced my BMP VRAM copy (allocated dynamically) with Canon's idle buffer for all operations. On 550D, focus peaking is much faster and on HDMI is way better.

So the question is: is this one as stable as previous ones?
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 11:05:25
Sounds good. I went even further and replaced my BMP VRAM copy (allocated dynamically) with Canon's idle buffer for all operations. On 550D, focus peaking is much faster and on HDMI is way better.

So the question is: is this one as stable as previous ones?
hmmm, that one actually crashed during recording and trying to do a follow focus, stable otherwise, the bars seem to go away for a second randomly, didnt notice that before ill have to go check, focus peaking looks real fast while not recording, when recording it lags and is off a bit, ill have to go check the other ones to see if thats the case on them now.

update, this one is crashing a few times, not like crazy and doesnt seem to be like the old crash, cause it just randomly does it while recording, bottom bar doesnt sem to make it crash in anyway.
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 11:09:15
That's not so good if it's less stable... because the new bitmap buffer simplifies coding a lot. And ML uses now 500K less memory.
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 11:31:17
That's not so good if it's less stable... because the new bitmap buffer simplifies coding a lot. And ML uses now 500K less memory.
I will need to play with the version before this, which 2 do u feel its best for me to compare, its very hard to make this one crash, got to really play around with follow focus and disp with focus peaking, I cant make a crash, it just happens after using it for awhile, I never really spent that much time on the other versions cause it was stable on recording, but maybe if i play with both alot maybe the other one will crash as well, but good thing is, its really hard to crash.
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 11:33:08
That's good, so probably the change in BMP buffers didn't cause problems :)

Can you run the stability test from the Debug menu?
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 11:44:11
That's good, so probably the change in BMP buffers didn't cause problems :)

Can you run the stability test from the Debug menu?
the quick test went fine, will a fresh charge bat last the 2 hours it says on the longer test or is the quick one all u wanted me to try?
Title: Re: 500d development
Post by: a1ex on 10 / November / 2011, 11:45:32
The quick test covers most things, so... passed :)

Same on 550D/60D, even with HDMI on high resolution, where it had problems before.

I should think at a stronger one, maybe a bit more randomized. Like this:
http://www.yendor.com/testing/ (http://www.yendor.com/testing/)
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 11:49:41
The quick test covers most things, so... passed :)

Same on 550D/60D, even with HDMI on high resolution, where it had problems before.

I should think at a stronger one, maybe a bit more randomized. Like this:
http://www.yendor.com/testing/ (http://www.yendor.com/testing/)
Awsome Alex, thanks for doing all this work for us, u rock!!! I will finally feel comfortable recording hd with ML installed, I was always waiting for a crash before and it always happened when trying to record, nice to see it so stable now, it feels like its suppose to be part of the cam now. 8]
Title: Re: 500d development
Post by: LaLaPico on 10 / November / 2011, 18:37:44
Where can I find the new build?
Title: Re: 500d development
Post by: mk11174 on 10 / November / 2011, 18:41:43
Where can I find the new build?
Goto previous forum page 120 read up look for the very last autoexec.bin reply #1798
Title: Re: 500d development
Post by: Coutts on 10 / November / 2011, 19:06:16
i pushed my audio.c file to the repo and put it under the 500d platform directory, just to get the code up there.

If anyone can figure out which registers need to be written to implement audio loopback for headphone monitoring, please help :P

basic process:
- study audio.c's function audio_configure() to see which registers are written in the AK4646 chip (which bits are set/cleared).
- look at the AK4646 pdf to figure out what each bit that is set/cleared does.
- look at the AK4636 pdf to figure out which equivalent bits need to be set/cleared in the 500d.
Title: Re: 500d development
Post by: Ulysses on 11 / November / 2011, 05:47:41
Hey, sorry if I'm asking a dumb question but... I was looking at the new start page of the ML Wiki, which is much, much better, very complete and easy to follow along. But looking at the features tables I couldnt be sure as it looks like its saying that we finally get control over aperture, shutter and iso in movie mode. It wasnt specifically saying movie mode, so thats where I'm asking here do confirm.

I did read the last 10 pages as I was out and didnt see the progress. BTW, A1ex, you look like a wizard! Man, you rock! Like we've been amog alien tech and for you its just a child's game.
Title: Re: 500d development
Post by: a1ex on 11 / November / 2011, 05:57:23
If you find things which are not working, edit them on the wiki. Probably the user who completed the table only tested aperture and shutter in photo mode (where I believe it's working).

You can add a notice like "photo mode only".
Title: Re: 500d development
Post by: a1ex on 11 / November / 2011, 06:25:04
Only for the adventurous: if you would like to try to enable scrollwheel in ML menu in LiveView, you can try this:

Code: [Select]
#define GUIMODE_ML_MENU guimode_ml_menu // in consts.h
// in menu.c: uncomment code fragments which refer to dbg_menu
// in menu.c, after SetGUIRequestMode(GUIMODE_ML_MENU), add msleep(2000) or so
// recompile with make clean && make

What this does: it allows you to change the GUIMode (as named by Canon engineers). With different modes, camera receives different key events. Some of them will allow wheel events and LiveView at the same time.

The process takes a lot of time (there are maybe around 100 gui modes), you will get a lot of ERR70, black screens or restarts (maybe even worse, hopefully not) and also fake error messages (you get only the dialog boxes, not the actual error).

So far, GUI mode 1 is play mode, 2 is Canon menu, 0 is idle mode. Others are photo mode dialogs (which will cause problems if you try to enable them in LiveView) and others are LiveView dialogs (we are looking for one of those).

Other things to look for:
Code: [Select]
// choose a gui mode which lets you:
// * use the wheel and all other keys for menu navigation
// * optional: send PRESS SET and UNPRESS SET events (if it doesn't, add an exception under EVENT_1)
// * see LiveView image under menu
// * go back safely to mode 0 (idle) without side effects (check display, Q menu, keys etc)
// * does not interfere with recording

After you change a GUI mode value from the menu, it will take effect when you open the menu next time.

If you get stuck with a gui mode which doesn't let you open the menu, go to Play mode and open ML menu from there. In Play mode, ML doesn't change gui mode, since it already receives wheel events there.

If you get black screen instead of LiveView image, you can usually restore it by pressing PLAY and then shutter half-way.

After you find this constant, look at 550D's consts.h and redefine GUIMODE_ML_MENU in a similar way, with your value (which may be different, e.g. one value good for LiveView, another for "simple" photo mode etc).

P.S. One of the GUI modes in 550D displayed this logo (animated).
Title: Re: 500d development
Post by: ats1995 on 13 / November / 2011, 16:20:17
The 11.11.11 version seems very stable, but to me it's too stripped down. Now I can't view silent pics, show time lapses, etc, or only use 5 or 10 times zoom in live view. I do neither see the point of hiding such as the live view tab when not in live view. I would like to have the ability to set settings that doesn't affect the current shooting mode. These opinions are mine, but I'm sure some people share at least some of my points.

Edit: MY BAD !
Title: Re: 500d development
Post by: PHrag on 13 / November / 2011, 17:53:18
I do neither see the point of hiding such as the live view tab when not in live view. I would like to have the ability to set settings that doesn't affect the current shooting mode. These opinions are mine, but I'm sure some people share at least some of my points.
To enable advanced menus you must press the Menu button while in ML. Took me a while too at first.
Title: Re: 500d development
Post by: ats1995 on 14 / November / 2011, 06:38:37
PHrag: thanks a LOT!
Title: Re: 500d development
Post by: a1ex on 16 / November / 2011, 10:45:50
Testing a major backend change in GUI engine (details at http://magiclantern.wikia.com/wiki/VRAM/BMP (http://magiclantern.wikia.com/wiki/VRAM/BMP) ).

Is the upside-down mode working with this autoexec?

If you can make some screenshots or a short movie, would be great.
Title: Re: 500d development
Post by: ats1995 on 16 / November / 2011, 13:43:13
All menus, info and overlays are upside down. Live view picture, audio meter in menu :P and the review picture are not upside down.

Update: The "Kill Canon GUI" doesn't do anything anymore. You can click it, but no draws are removed.
Title: Re: 500d development
Post by: a1ex on 16 / November / 2011, 14:01:05
Great!

This will give me complete control on overlay graphics :D
Title: Re: 500d development
Post by: silasje1 on 17 / November / 2011, 04:22:05
What happend to the 500D wiki page??? http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i) was the link but it is empty now??? Where can i find the latest builds  and so then??? Nice job btw a1ex and Coutts
Title: Re: 500d development
Post by: mk11174 on 17 / November / 2011, 16:35:49
Testing a major backend change in GUI engine (details at http://magiclantern.wikia.com/wiki/VRAM/BMP (http://magiclantern.wikia.com/wiki/VRAM/BMP) ).

Is the upside-down mode working with this autoexec?

If you can make some screenshots or a short movie, would be great.
Also confirm upside is fine, and to note from what u asked about in one of the other forums, on the 500D the err70 is still there in movie mode during record with the experimental update.
Title: Re: 500d development
Post by: a1ex on 18 / November / 2011, 02:09:23
The err70 is only when you open the menu while recording? What are the exact steps for reproducing it?
Title: Re: 500d development
Post by: ats1995 on 18 / November / 2011, 02:23:05
I don't have the camera right here, but when recording the error70 occures after a couple of seconds in ML menu. If your quick, it might not crash thoug.
Title: Re: 500d development
Post by: mk11174 on 18 / November / 2011, 02:28:09
The err70 is only when you open the menu while recording? What are the exact steps for reproducing it?
Yes, only during recording, you record, if you try to open ML menu you get to play with it for a few seconds it works faster for some reason now so u can actually get a chance to change something before err70, before it would be sluggish while recording and moving through the menu so you really didnt have time to change anything, but it at least seems faster now while recording.
Title: Re: 500d development
Post by: a1ex on 18 / November / 2011, 03:56:03
Faster... compared to which version?

On my cameras, the menu is always fast.

Can you show me a movie where the slowness in the menu is visible? It may give clues about what's going on.
Title: Re: 500d development
Post by: mk11174 on 18 / November / 2011, 04:43:20
Faster... compared to which version?

On my cameras, the menu is always fast.

Can you show me a movie where the slowness in the menu is visible? It may give clues about what's going on.
Actually I guess it only happens when its about to crash, it was hard to get it to slow down, I dont remember which one it was, it was during the week we tested all the ones in the one night, it happened on the one you just released before the upside down one, when recording, and when u goto ml mode, it only sometimes reacts very slow to ur button presses, it lags when u try to scroll then all of a sudden crashes, but for sure not all the time so prob just depends on what the cam is doing at the moment i guess, but on this version i havent had it do that just crashes, not menu lag, but could just be coincedence, but yet, i really never have a reason to use menu while recording, so i only noticed it when testing those others the other day.

Update: I went all the way back to the first one where u started enabling things and that one worked the same way while recording, it only slows every so often right before it goes to err70, so it seems its just depending on what the cam is doing at the moment, one thing i noticed on this upside down version and the very first version where u just started enabling things for testing from scratch, while in the menu during record, of coarse u only get a few seconds sometimes longer, its never the same amount of time, but one thing i notice that happens is, whatever is highlight, the selection changes right before it chashes, like if your on movie logging for instance, if its set to off, it will switch to on by itself right when it crashes, but the setting is back to off when you restart. Maybe that might help u figure something out, but that always happens.
Title: Re: 500d development
Post by: vorob on 18 / November / 2011, 09:15:04
http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i (http://magiclantern.wikia.com/wiki/Canon_EOS_500D/T1i)

Not a single word about FPS on 500d, so? Is there 1080h with 30 fps?
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 12:02:29
Here's a binary with all the bells and whistles removed from the menu. Don't be scared about how it looks. Does it fix err70?
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 12:56:44
Here's a binary with all the bells and whistles removed from the menu. Don't be scared about how it looks. Does it fix err70?
No, still same results, also still there, also still acts like it presses the select button on the highlighted menu item right as it crashes.
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 13:17:46
Do you have a deterministic method for reproducing the crash? Can you tell me the exact steps?

When it changes the selection, does it do SET, PLAY or Q? On "movie logging" and other boolean items, all 3 do the same thing.

Here's one autoexec with button handling disabled in the menu. You can open and close it, but you can't navigate.
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 14:09:58
Do you have a deterministic method for reproducing the crash? Can you tell me the exact steps?

When it changes the selection, does it do SET, PLAY or Q? On "movie logging" and other boolean items, all 3 do the same thing.

Here's one autoexec with button handling disabled in the menu. You can open and close it, but you can't navigate.
Ok, good note about all 3 buttons doing the same thing, I never noticed that, I used zebra and its the record button that is being activated right at crash, the 1826 bin seems to crash without going into menu, its acting like old crash where when the colored bottom bar is on it gets unstable and crashes, but pretty much crashes instantly now when you open ML menu, it works more stable if you flip through the display before recording to only show canons info though, I will try 1828 now

1828 is not crashing when I open the menu, that was the longest I was ever able to record while menu was open, I did 3 records one after another as well to be sure cause sometimes the very 1st record is somewhat stable but once it crashes finally every one after crashes right away. But this one seemed to stay recording.
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 14:29:42
So 1828 is crashing or not?
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 14:32:49
So 1828 is crashing or not?
1828 seems to be just crashing at ML so far
ooops scratch that sorry, 1828 was fine in ml menu, i was playing around with 1826 again, but yes 1828 ok in ml
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 14:38:12
I don't understand, how to crash at ML?!
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 14:43:02
I don't understand, how to crash at ML?!
When it does crash, it happens when you record, then press play to open ML menu, then it fine for a few seconds then it changes the highlighted menu, which we found was the record button option, the it freezes and crashes, everytime too, but 1828 stayed recording when opening ML menu during a record, its stable if your not recording, no issues in ML menu at all.

1828 seems to be crashing when the ml bottom bar is on, the more I try it the more its crashing, before I was just testing the ml menu, now, just trying to record it seems to be crashing, Ill try to do a recording of me playing with the cam to get it to crash.

Ok, I am uploading a video now, ill post link when its uploaded 8]

Lets see if the link posts ok from this board, never posted a link before on here: http://youtu.be/mpdzfZlHPs8 (http://youtu.be/mpdzfZlHPs8)
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 15:18:14
This one has bmp_fill and Q button disabled.

The Q button is the same as the record button here, right?
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 15:44:17
This one has bmp_fill and Q button disabled.

The Q button is the same as the record button here, right?
yes Q is same as record.

Update!!! Wow, you seemed to have fixed both the crash while bottom bar is on again and now can use ML menu while recording, when I press record button now in menu it dont change the Q option it just stops the recording, but went back and forth and no crashes!!!!

Update 2: Only issue in this version is the ML menus overlay over eachother as you scroll through left to right, text is left over from each menu and make a mess of the screen till you exit ml menu then screen is clear and when you go back into ml menu all is normal till you scroll left to right again through the menus, and that happens wether your recording or not.
Title: Re: 500d development
Post by: a1ex on 19 / November / 2011, 16:15:35
Quote
Only issue in this version is the ML menus overlay over eachother
Of course, that was the feature which was disabled :)

Let's try to enable it (that's bmp_fill), but disable the cache.
Title: Re: 500d development
Post by: mk11174 on 19 / November / 2011, 16:51:46
Quote
Only issue in this version is the ML menus overlay over eachother
Of course, that was the feature which was disabled :)

Let's try to enable it (that's bmp_fill), but disable the cache.
Ok 1836 crashes like before while ML bottom bar is on and crashes in ML menu now but no change in the selection option before crashing, just crashes.
Title: Re: 500d development
Post by: a1ex on 20 / November / 2011, 02:35:08
At least we have narrowed down the problem to bmp_fill function (in bmp.c). Now, somebody who has the camera and can compile the code can play with this function (maybe slow it down or adjust the caching bits?) until it works well.
Title: Re: 500d development
Post by: mk11174 on 20 / November / 2011, 09:24:30
At least we have narrowed down the problem to bmp_fill function (in bmp.c). Now, somebody who has the camera and can compile the code can play with this function (maybe slow it down or adjust the caching bits?) until it works well.
Ok A1ex, and thanks for doing as much as u did to narrow it down. And does that mean for 500d its best to keep the our rec button disabled in ML to avoid err70 also? Or do u think its totally because of the bmp function?
Title: Re: 500d development
Post by: a1ex on 20 / November / 2011, 09:38:34
The stability problem is only from bmp_fill function (it probably blocks the movie recording task or prevents access to memory, because it changes a large area of memory in a short time).

Menu got toggled because recording stopped (and Canon stops recording by simulating a button press on that button).
Title: Re: 500d development
Post by: a1ex on 20 / November / 2011, 10:21:01
For now, I've disabled bmp_fill calls from the bottom bar (their role is only to fill a few gaps and to cleanup some mess from HDMI displays).

http://bit.ly/ml-nov20 (http://bit.ly/ml-nov20)
Title: Re: 500d development
Post by: mk11174 on 20 / November / 2011, 13:38:21
For now, I've disabled bmp_fill calls from the bottom bar (their role is only to fill a few gaps and to cleanup some mess from HDMI displays).

http://bit.ly/ml-nov20 (http://bit.ly/ml-nov20)
Dang!!! whatever u did on this version this one works great while recording, ML has no crashes while recording or not recording, seems great, i like the new battery symbol too on bottom bar, everything looks great!!! no err70s yet. 8D
Title: Re: 500d development
Post by: a1ex on 20 / November / 2011, 13:45:56
Also when menu is active? That's interesting.

Can you also try the one from this message? http://groups.google.com/group/ml-devel/msg/c0d46be1f97e46e5 (http://groups.google.com/group/ml-devel/msg/c0d46be1f97e46e5)

There's a tiny difference in bmp_fill between those two.
Title: Re: 500d development
Post by: mk11174 on 20 / November / 2011, 13:52:26
Also when menu is active? That's interesting.

Can you also try the one from this message? http://groups.google.com/group/ml-devel/msg/c0d46be1f97e46e5 (http://groups.google.com/group/ml-devel/msg/c0d46be1f97e46e5)

There's a tiny difference in bmp_fill between those two.
that one crashed as soon as i opened ml menu during record
Title: Re: 500d development
Post by: a1ex on 20 / November / 2011, 14:11:58
OK, enabled the same workaround again (i.e. drawing the image backwards :P )
Title: Re: 500d development
Post by: mk11174 on 20 / November / 2011, 14:28:19
OK, enabled the same workaround again (i.e. drawing the image backwards :P )
Still working good 8D awsome!!!!
Title: Re: 500d development
Post by: mk11174 on 21 / November / 2011, 03:21:26
OK, enabled the same workaround again (i.e. drawing the image backwards :P )
Still working good 8D awsome!!!!
not sure what got it working but also with this release ghost image actually works on my cam, I know it was not working with the release from the ML site that was the last time i tried it and it wasnt working, but now it seems everything is working 8] thanks A1ex!!!
Title: Re: 500d development
Post by: a1ex on 21 / November / 2011, 03:52:54
At some point I did some refactoring in event handling code, probably that was it.

Can you check the 500D issues from here and see which ones are still valid?
https://bitbucket.org/hudson/magic-lantern/issues?status=new&status=open
Title: Re: 500d development
Post by: mk11174 on 21 / November / 2011, 05:08:17
At some point I did some refactoring in event handling code, probably that was it.

Can you check the 500D issues from here and see which ones are still valid?
https://bitbucket.org/hudson/magic-lantern/issues?status=new&status=open
Dont know how to view SP Hires, only slitscan and regular liveview sized pictures preview after done, SP Hires works and all just can see what it looks like in the end.

No Lcd shortcuts seem to work still other than lcd remote shoot.

And everything about follow focus seems to be perfect, up and down are faster then left and right and symbols are in good spots.

Audio meter in upside down mode is upside down like the rest of the bars.

No issues with getting magic zoom on the screen but does still flicker in both photo mode and movie more in movie

And HDR seems to work fine with LCD Remote shoot but not by pressing shutter button, pressing shutter button make timer shot active for some reason and only takes 2 pictures when it does, but its flawless with LCD remote shoot on.
Title: Re: 500d development
Post by: a1ex on 21 / November / 2011, 07:22:49
SP hires can't be previewed inside the camera (only the convertor should be able to see them).

For some reason, PROP_DISPSENSOR_CTRL was commented out for 500D (no idea why). Enabled now.

I've also increased magic zoom priority a bit, to the same level as in 550D/60D.

Also try the HDR, I've added some debug messages.
Title: Re: 500d development
Post by: mk11174 on 21 / November / 2011, 12:01:06
SP hires can't be previewed inside the camera (only the convertor should be able to see them).

For some reason, PROP_DISPSENSOR_CTRL was commented out for 500D (no idea why). Enabled now.

I've also increased magic zoom priority a bit, to the same level as in 550D/60D.

Also try the HDR, I've added some debug messages.
shortcuts work now!!! brightness and volume that is.

HDR working with shutter button more then 2 pictures, still 2 sec timer used when pressing shutter button i dont know if thats how it is suppose to be for that mode, lcd remote shoot still works without timer both work fine though.

Magic zoom working better, only a twitch at the bottom it seems every so often, i think it depends on exposure changes, but nothing like before where it flickered to black real fast, works same in vid and photo mode, I do notice it flickers steady if you focus with follow focus, but manually its fine.

I tried the 422tojpg2.exe on the SP highres shots, they convert but every section is seperated by black border and every section is scrambled, the slitscan and single wont convert with it cause image size is unknown, i guess i need to get python installed and try script for those, So i will get back on those.
Title: Re: 500d development
Post by: a1ex on 21 / November / 2011, 12:44:00
I've increased magic zoom priority even more (and decreased priority of other things), so it should flicker a bit less now.

Does this cause any stability issues?

Bracketing works with 2-sec timer when triggered from the shutter button (to avoid shake).
Title: Re: 500d development
Post by: mk11174 on 21 / November / 2011, 12:53:24
I've increased magic zoom priority even more (and decreased priority of other things), so it should flicker a bit less now.

Does this cause any stability issues?

Bracketing works with 2-sec timer when triggered from the shutter button (to avoid shake).
Wow, very nice and solid now and no, no stabilty issue at all can still open ml menu while recording with it on and everything, very nice!!!

Update: SP single and Slit-scan convert and look fine at 928x616, All the HR SP are scrambled and used python script to convert them this time.

Is there an easy way to make the lcd shortcut plus arrows control the white balance and flash comp instead of volume and brightness, im guessing its something one with my cam would have to do themself and compile but figured i would ask just in case 8]

And if not with the Lcd shortcut, maybe theres an easy reason why the flash shortcut dont work to adjust the Kelvin?
Title: Re: 500d development
Post by: freeman656 on 22 / November / 2011, 14:03:31
hi everybody,
I'm new in this forum and i first want to thank all people who are working on this project.

Indeed, I'm using a 500d and tried to install it.
Everything seems to be fine (firm 1.1.1-ml-2011.11.1), I get the new Live mode display,
 but I don't get the new ML menu with all the cool features, I still have the old Canon menu.

Do you think i did something wrong when installing ?

Thanks you for any advise.
Title: Re: 500d development
Post by: ats1995 on 22 / November / 2011, 14:16:08
Welcome!
Try toggling trough the display modes with the DISP. button.
Title: Re: 500d development
Post by: freeman656 on 22 / November / 2011, 14:26:05
thank for your response, but I'm not sure its works better or I didn't understand :)

Camera is set on Manual mode:
- I get quite the same screen as the canon one to modify all shooting settings (Speed, aperture, iso, image quality, focus, etc). The only new features are the SD Card remaining size (bottom right) and the actual time (bottom left).

Now if I hit the menu button, I get the standard Canon menu.

If I hit the Live view button (erase),  I get the live view, with all the ML stuff at the bottom.

But no menu :'(

Any idea ?
Title: Re: 500d development
Post by: berner on 22 / November / 2011, 15:30:36
Freeman656: I found the full ML menu by pressing the trash can button when on the main Canon menu (manual mode) - hope that helps.

--
Berner
Title: Re: 500d development
Post by: ats1995 on 22 / November / 2011, 16:00:08
Haha, I misunderstood :D and by pressing menu button in ML menu you will get a LOT more options to play with. If you wonder what some functions are, just it disp, and some info should appear.
Title: Re: 500d development
Post by: freeman656 on 22 / November / 2011, 16:49:54
Freeman656: I found the full ML menu by pressing the trash can button when on the main Canon menu (manual mode) - hope that helps.

--
Berner

Oh right, erase button is OK to get the menu, I hit the wrong button... so dumb :p

Sorry for this guys :)
Title: Re: 500d development
Post by: omel on 24 / November / 2011, 01:36:01
hi everybody,
I'm new in this forum and i want to thank all people who are working on this project. This is great,

I have tried to install the ML and with good luck,  Can anybody tell me how to reset the ML settings to "Normal"  so all will be as the first time I install the ML



Title: Re: 500d development
Post by: ats1995 on 24 / November / 2011, 03:50:43
Activate "advanced menu" by hitting the native menu button. Then go to the "Config" tab n the ML menu and delete "config file". Turn the camera off, and all ML settings should be reset.
Title: Re: 500d development
Post by: freeman656 on 24 / November / 2011, 04:38:57
Hi,

One more quesion,
I read about a lot of possible configuration for the framerate and resolution of the videos in the User manual.
But how can I change those settings in the ML menu ?

All the possible configs are listed in the power consumption chapter, is that an exhaustive list ?

Thanks,
Title: Re: 500d development
Post by: Coutts on 24 / November / 2011, 14:57:19
manual video exposure controls unlocked!

details (and link to a demonstration video):
http://groups.google.com/group/ml-devel/msg/935657ebceeff96a (http://groups.google.com/group/ml-devel/msg/935657ebceeff96a)

Alex has made my day :)
Title: Re: 500d development
Post by: RoaldFre on 24 / November / 2011, 15:02:00
<AND THE CROWD GOES WILD>
Title: Re: 500d development
Post by: ats1995 on 24 / November / 2011, 15:41:24
I thought my day was good, but DAMN, how AWSOME!!!!! Alex is the man!  :P :P
No crashes yet, only some weirdness when choosing aperture. Every click doesn't change the displayed value. I guess it's adjusted in 1/8 stops, but not yet displayed in 1/8 stops.
One again, AWSOME!

Update: I can also select aperture values under what the lens can :)

Update 2: LV Display gain doesn't work. You can change the value, but nothing happends.
Title: Re: 500d development
Post by: s1r7o8y on 24 / November / 2011, 16:11:31
sounds like really great news, thanks guys for all the work you put in this!

but as i try it - the manual exposure in video mode won´t work for me yet... i downloaded the autoexec.bin from alex´ news in the google group and put that on my card instead of the old version (special edition 11-11-11). am i supposed to do something else in order to see the activation option in the debug menu? or is it just so hidden i don´t see it?

or could anybody just post another download link in case i misunderstood and picked up the wrong file?

thanks a lot! this is the most important thing i waited for so i´m quite excited about this... ;-)
Title: Re: 500d development
Post by: Coutts on 24 / November / 2011, 17:13:42
press canon menu button in ML menu to enable advanced settings, should do it for ya
Title: Re: 500d development
Post by: s1r7o8y on 24 / November / 2011, 17:30:59
now i got it... wow, thats really cool and seems to be quite stable!

thanks a lot, coutts! :-)
Title: Re: 500d development
Post by: gedas5 on 24 / November / 2011, 17:32:41
Wow this is huge news!!! thanx Alex!!! if there was a chance that you could implement 60fps and 24fps it would feel like Christmas ;) thanx again Coutts and Alex for not giving up
Title: Re: 500d development
Post by: LaLaPico on 24 / November / 2011, 19:43:49
A1ex, you are the bomb homie! You guys have really done a fantastic job!
Title: Re: 500d development
Post by: utnuc on 24 / November / 2011, 20:58:12
Awesome news.  Nice work guys.  Looking forward to trying this out with my Christmas present ( Canon 17-55 2.8 )!

Is it just me, or is your sample video jerky/stuttering, Coutts?

B
Title: Re: 500d development
Post by: adijiwa on 24 / November / 2011, 22:51:48
Wow! What a breakthrough!!!

It works nicely. But, rotating focus ring sometimes change the aperture, even with manual exposure hack enabled.
Title: Re: 500d development
Post by: mk11174 on 24 / November / 2011, 23:42:56
HOLY COW!!!!!! YES!!!!! Thanks A1ex!!!!
Title: Re: 500d development
Post by: g1_ on 25 / November / 2011, 02:20:44
Awesome news!  :)
Title: Re: 500d development
Post by: PHrag on 25 / November / 2011, 08:31:11
HOLY FCING COW! I lost all the hope for this and now I come from school and BANG! It's right here!
Thanks!!

test video

Canon 500D - Manual video controls (http://www.youtube.com/watch?v=m0waEh7TqQs#ws)
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 14:02:21
So since we are stuck at 30 frames, in the video above is every one of those 30 frames each capturing light for 1/600 seconds? Trying to figure out what I believe is most likely a simple premise :-[

Shutter speed at 1/24 is not technically possible unless we had 24 fps right?
Title: Re: 500d development
Post by: PHrag on 25 / November / 2011, 14:49:55
So since we are stuck at 30 frames, in the video above is every one of those 30 frames each capturing light for 1/600 seconds?
Shutter speed at 1/24 is not technically possible unless we had 24 fps right?
1) That should be right
2) Dont know O_o just wrote what was in the menu
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 15:26:04
and you're using a florescent light above that sink?
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 15:36:20
The shutter speed can be slower than the frame rate, the camera just spreads each exposure over multiple frames.  Since 24 does not easily multiply to get 30, I suspect the camera is doing a 3:2 pulldown to get your 30 fps.
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 16:40:07
This video helped to visual it-
6. Shutter Speed and FPS (http://player.vimeo.com/video/19603537)
Title: Re: 500d development
Post by: ats1995 on 25 / November / 2011, 16:58:13
Or maybe it doesn't do 1/24. Since you can choose an aperture larger or smaller then the lens is capable of, it might not do as you tell it all the time. Even though my lens is f/2.8, it only changes the aperture two button presses after f/3.2,
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 17:02:16
So I is it possible to get more that 1/24 with the hardware on the T1i? I realize it would be at the cost of things appearing blurry but in low light and for certain projects (shots of water flowing) it would be quite helpful. Lens also has no bearing on shutter speed also as that is done in the camera body correct? and likewise shutter speed also shouldn't have any bearing on the depth of field as DOF is contingent on focal length correct?
Title: Re: 500d development
Post by: ats1995 on 25 / November / 2011, 17:41:48
I'm not an expert in filming, so I don't know if it's possible to have a longer shutterspeed than the amount of frames per second. Other canon cameras don't do that, at least.
After a quick test, I can't notice any brightness difference between 1/24 and 1/31. But something is happening, since I get some flickering when choosing under 1/31th second. The flicker is something like fluorescent bulbs, even without being close to fluorescent light.

Update: This is wrong, no flickering with shutter speeds lower tan 1/31 second :/ it might have been a fluorescent bulb...
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 17:48:00
You're right that the electronic shutter is lens independent, and depth of field is contingent upon focal length and aperture.  I don't know what the lower limit of shutter is for the 500d, but 24 gets pretty choppy as is.

With the manual aperture I can't seem to get it lower than 5.6, it never cycles back around.  Thoughts?  Am I missing something?
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 18:08:19
Everything I'm reading is saying shutter speed slower than frame rate is not possible.  So unlocking FPS is really what one would have to do to get longer than 1/30th of sec. shutter speed
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 19:43:38
Ok, sweet.  Got ML to drop my aperture, always good to read the manual (duh).  I can't seem to get ML to remember my manual exposure settings, or the auto exposure override.  Is this just not yet implemented?
Title: Re: 500d development
Post by: ats1995 on 25 / November / 2011, 19:53:33
Mine doesn't remember exposure settings eather, normally it's at 1/120 an f/5.6 when boot up, but every once in a while it remembers it :) like in this writing moment. Now I started in M, and switched over to a-dep(remapped to movie mode). It remembered shutter speed and aperture, but it's always ISO 400 while doing this.
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 20:08:25
Yeah, mine defaults to 400/120/5.6 also.  Even if I do a config save, ML defaults to these settings.

And I echo previous comments that all apertures showing.  I wish my Sigma 1.4 went lower, but it just stops stopping at 1.4  :D Correction: the aperture actually stops stopping at 1.6, it seems that the numbers are a tad off. 

I'm loving this new feature though, Alex.  Thanks so much for your efforts.  I'm not trying to complain, just beta test.  You know if you gave us a bag of gold we'd complaint that it was too heavy.
Title: Re: 500d development
Post by: pat_loonytoon on 25 / November / 2011, 20:21:39
Didn't see any settings for it in magic.cfg after saving so I assume nothing gets logged.
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 20:22:35
I looked there too, didn't see anything about override or ISO/Sh/Ap.

Just playing around with the camera, I'm guessing these are the 500D's default video settings.  If I turn on camera, enable exposure override the numbers are 400/120/5.6.  If I then disable exposure override and half-press shutter, the camera takes over.  If I then re-enable exposure override, the settings stay at whatever the camera's last auto settings were (800/30/1.4 here). 

How is this supposed to work, Alex?
Title: Re: 500d development
Post by: ilguercio on 25 / November / 2011, 20:39:58
Alex told me that Exp override can't be set saved as on because it interferes with photo mode.
I'm trying to understand how the 50D handles iso, aperture and shutter.
Do you guys have a 1/0 ss setting?
Do you need more than a click to change aperture from a third of a stop to another?
What iso can you actually choose? On my 50D i can choose 3200 iso and then i get nothing at 6400 and 12800 but i gain another stop at 25600.
But, taking a picture at this setting, i discovered that ML doesn't set 25600 but 6400 because the exposure is just a stop above 3200.
That's strange.
What i think it does is ML enables iso up to 25600 for photo mode, 25600 being the extra stop for the camera (50D can go up to 12800 with expansion), while in video mode maximum iso would be 3200 since it doesn't recognize H1 and H2. So, i guess, 25600 would be the extra stop for video mode resulting in being 6400 and not 25600 as reported. Can you guys do a few tests so i know if my assumption is right?
Title: Re: 500d development
Post by: ilguercio on 25 / November / 2011, 20:52:39
Yes, i can confirm i'm right.
Can you guys tell me what happens on the 500D?
Title: Re: 500d development
Post by: utnuc on 25 / November / 2011, 23:22:52
I'll look into your ISO question in the morning. 

It seems like the exposure override feature could be automatically set to disable when you switch out of video mode.  Does your 50d do the same thing?  That seems like it'd be a simple fix.
Title: Re: 500d development
Post by: ilguercio on 26 / November / 2011, 03:21:13
The 50D enters video mode via LV as the 5DII but doesn't have any menu where its options can be changed.
It would be nice to have video mode set to be available in C2 mode, for instance, so you could actually just turn the dial and select it rather than going into ML menu and toggle it on or off.
I think i'll be easier to make exp. override stick to video mode for 500D users, a bit less to have it working properly on the 50D but let's just wait monday.
Title: Re: 500d development
Post by: ilguercio on 26 / November / 2011, 10:15:49
One more thing, i just tried the fastest shutter speed i could use for recording on my 50D and though i could dial it down to 1/25-24 it actually didn't change the exposure after 1/29.
That makes sense because you can't select a SS faster that the reciprocate of your fps.
So, can you guys select 1/20 when recording at 1080 at 20fps? I don't know why the last speed is 1/24th, though. It could mean 24fps mode is possible or it could just be a fixed value for every canon obviously according to 24p mode.
What's the last SS selectable on the 500D? Enable exp sim and tell me if the exposure changes when you scroll down the last SS.
Title: Re: 500d development
Post by: mk11174 on 26 / November / 2011, 15:00:15
One more thing, i just tried the fastest shutter speed i could use for recording on my 50D and though i could dial it down to 1/25-24 it actually didn't change the exposure after 1/29.
That makes sense because you can't select a SS faster that the reciprocate of your fps.
So, can you guys select 1/20 when recording at 1080 at 20fps? I don't know why the last speed is 1/24th, though. It could mean 24fps mode is possible or it could just be a fixed value for every canon obviously according to 24p mode.
What's the last SS selectable on the 500D? Enable exp sim and tell me if the exposure changes when you scroll down the last SS.
On my 500d in movie mode of coarse ML dials down to 1/24 in al modes, but as for exposure effect it only changes to 1/29 in 640x480 and 1280x720 and in 1920x1080 it changes exposure down to 1/24 so it looks like with live view anyways, fps means something when it comes to shutter speed cause it makes sense since all modes are 30fps except for 1920x1080 which is 20fps so i am guessing in 1080 mode if ML had a 1/19 or 1/20 setting i am guessing we would be able to use that in 1080, and if one day ml can take control of our frame rate and we can get 24fps in 1280x720 mode then we can make use of 1/24 shutter speed in movie mode.
Title: Re: 500d development
Post by: pat_loonytoon on 26 / November / 2011, 15:05:21
Yeah 1/30th is technically now the slowest shutter speed, but as you mentioned unless we had 24 fps it isn't going to do anything.
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / November / 2011, 09:21:14
I can't help feeling that the manual control firmware from Alex is quite unstable. If I press the Erase button in movie mode or in Live View, the ML menu doesn't show until I press the menu button (then it shows about a half of a second after the Canon menu flickers) or zoom in button for example. It then still behaves strangely sometimes and the menu is reopened only if I quit Live View enter it again (when it may be shown right after entering live view, the mirror goes up just after I close the ML menu) or I am not able to close it.

Another thing that I can notice is that the zebras in live view respect the 16:9 top and bottom borders used only in movie mode, which is wrong in live view that shoots 3:2 and it starts 1px below the top border (there's 1px high space between zebras and the top border, but t doesn't overdraw the bottom one - maybe the bottom border overrides zebras?). Also, the AF frame isn't hidden in neither movie mode nor live view and when going from live view to a remapped movie mode (A-DEP in my case), it shows A-DEP mode instead of movie mode and I have to press the Q button that causes showing of the normal shooting display for A-DEP mode (outside of live view) for about 4 seconds and then movie mode is automatically turned on. Also the histogram isn't shown in any of the two modes - the last histogram frame is drawn over the table after exiting movie/lv mode (again, it is not drawn there every time). Another strange behaviour that I have also seen in previous ML versions is, that if I press the menu button when viewing images and then do it again so that the ML menu disappears, it shows the viewed picture overdrawn with LV features (zebras, histogram, spotmeter - no audio meter or bottom bar).

But thank you very much Alex, it has made my day as much as the Coutts' one. It is nice to have manual video controls working finally.
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / November / 2011, 09:38:56
I have also discovered that it takes a lot of time to show the Canon zoom using zoom in button in movie mode. I think it might be because of the priority changes. And it is also evident that focus peak is a way stretched on the vertical. Things near to the upper border are overdrawn by focus peak too low and things near the bottom border are overdrawn too high. Maybe I can take a picture of it.
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / November / 2011, 09:44:08
.. I wonder where has the "Take a screenshot" option gone?
Title: Re: 500d development
Post by: a1ex on 28 / November / 2011, 10:14:50
Quote
I can't seem to get ML to remember my manual exposure settings, or the auto exposure override.
Not implemented yet.

Quote
I can't help feeling that the manual control firmware from Alex is quite unstable. If I press the Erase button in movie mode or in Live View, the ML menu doesn't show until I press the menu button (then it shows about a half of a second after the Canon menu flickers) or zoom in button for example. It then still behaves strangely sometimes and the menu is reopened only if I quit Live View enter it again (when it may be shown right after entering live view, the mirror goes up just after I close the ML menu) or I am not able to close it.

As you can see, I'm only developing based on feedback from other users (I don't have a 500D). Many user interface issues are 500D-specific and can only be fixed by someone who has this camera.

Quote
Another thing that I can notice is that the zebras in live view respect the 16:9 top and bottom borders used only in movie mode, which is wrong in live view that shoots 3:2 and it starts 1px below the top border (there's 1px high space between zebras and the top border, but t doesn't overdraw the bottom one - maybe the bottom border overrides zebras?).

In recent cameras, the screen is 3:2, so the top and bottom bars have to be somewhere. I prefer to have simpler code, so drawing zebras in 16:9 frame is pretty safe.

I don't understand the issue with that 1px.

Quote
Also, the AF frame isn't hidden in neither movie mode nor live view and when going from live view to a remapped movie mode (A-DEP in my case), it shows A-DEP mode instead of movie mode and I have to press the Q button that causes showing of the normal shooting display for A-DEP mode (outside of live view) for about 4 seconds and then movie mode is automatically turned on.
Show me.

Quote
Also the histogram isn't shown in any of the two modes - the last histogram frame is drawn over the table after exiting movie/lv mode (again, it is not drawn there every time).
Canon histogram or ML histogram? Does this camera have a table? How it looks like?

Quote
Another strange behaviour that I have also seen in previous ML versions is, that if I press the menu button when viewing images and then do it again so that the ML menu disappears, it shows the viewed picture overdrawn with LV features (zebras, histogram, spotmeter - no audio meter or bottom bar).
That's a feature.

Quote
I have also discovered that it takes a lot of time to show the Canon zoom using zoom in button in movie mode. I think it might be because of the priority changes.
Try an autoexec compiled before the priority changes.

Quote
.. I wonder where has the "Take a screenshot" option gone?
In "Display" menu.

Quote
focus peak is a way stretched on the vertical.
Found and fixed.

Title: Re: 500d development
Post by: ats1995 on 28 / November / 2011, 10:51:42
I'm not experiencing any of these things, only a minor thing when switching from live view to remapped video mode(A-dep). Then the screen goes black. Going into canon menu and back fixes it

Update: when recording the Magic Zoom works fine, unless you want to turn it off. For example, when having it to be activated by focusing and the + button,  can start with MZ off, focus-> activating MZ, but not being able to turn it off. It's also flickering a bit when starting the record.
Title: Re: 500d development
Post by: mk11174 on 28 / November / 2011, 11:22:09
Same here, no unstable issues that I have noticed with this version, camera has never been better with ML as far as I am concerned getting better every update, GO Alex!!!!!!
Title: Re: 500d development
Post by: bjacklee on 28 / November / 2011, 11:33:23
hello guys... were can I find the latest autoexec.bin? Thanks in advance.
Title: Re: 500d development
Post by: ats1995 on 28 / November / 2011, 11:38:48
bjacklee: I'm using this one: http://bit.ly/ml-nov25 (http://bit.ly/ml-nov25) You can all new builds and updates on ML wikia: http://magiclantern.wikia.com/wiki/Unified (http://magiclantern.wikia.com/wiki/Unified)
Title: Re: 500d development
Post by: bjacklee on 28 / November / 2011, 11:42:17
bjacklee: I'm using this one: http://bit.ly/ml-nov25 (http://bit.ly/ml-nov25) You can all new builds and updates on ML wikia: http://magiclantern.wikia.com/wiki/Unified (http://magiclantern.wikia.com/wiki/Unified)

Thanks a lot ats1995.. :)
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / November / 2011, 12:21:45
Well, what I have ment by the "table" is the normal camera display when shooting showing shutter, aperture, iso, wb, shooting mode, af mode, ... in what regards the zebras, they start 1px below the top border so there's one row of the live view (of 1px height) where the zebras aren't drawn as if they were shifted 1px lower.

I'll take a look at the other points sometime later when I have the time.
Title: Re: 500d development
Post by: a1ex on 28 / November / 2011, 14:18:04
This autoexec should remember manual exposure settings.

I can't really test it myself, because 500D and 550D behave in different ways in auto movie mode.
Title: Re: 500d development
Post by: mk11174 on 28 / November / 2011, 15:48:29
This autoexec should remember manual exposure settings.

I can't really test it myself, because 500D and 550D behave in different ways in auto movie mode.
yep that did it 8]
Title: Re: 500d development
Post by: rebelT1i on 28 / November / 2011, 16:25:35
This autoexec should remember manual exposure settings.

I can't really test it myself, because 500D and 550D behave in different ways in auto movie mode.

I haven't posted here in a long while (mostly cause I don't have much to contribute) but I wanted to say a big thanks to everyone that's worked on this, you all are amazing!

A1ex, I tried the autoexec.bin posted above and played a little with it and it seams to be all working the way you expected it to and is saving the exposure settings! Thanks again for all your hard work!
Title: Re: 500d development
Post by: s1r7o8y on 28 / November / 2011, 17:58:43
I cannot confirm any of these unstable issues - me too, I never had a more reliable version of ML than the new one with the manual exposure feature. For the first time video recording isn´t interrupted after some seconds due to an err70 as it used to be before with my camera.

But do you also have the new behaviour that the camera forgets date and time and prompts to set it again almost every time you switch the camera on? When switched off before while being in one of the non-video modes it seems to me as if everything´s okay switching on again.

Not a crucial thing, just wondering - and easily avoidable, I guess...

Thanks again for all the great work, guys!
Title: Re: 500d development
Post by: utnuc on 28 / November / 2011, 19:33:59
Alex, for me this new build does remember my settings.  However, when I switch to off and back on ML defaults again to 400/120/5.6 until I disable then reenable Auto exposure override.  It then goes to my saved settings. 

B
Title: Re: 500d development
Post by: mk11174 on 29 / November / 2011, 10:02:26
Just curious, if SP is suppose to only create proper pictures in single and slit scan mode, everything works, but of coarse anything except single and slit scan are garbled here are 3 images, one showing it working fine in single mode, next showing it scrambled when in zoom in 5x and then a 5x5 version, if there is a tweak i need to attempt to get it going, is there any tip on what i need to do to unscramble it, i cant compile the code since the unified ml version i dont really know what i am doing, but i used to be able to compile it, and when i did, i knew how to change settings if someone told me what to change obviously 8] any idears???
http://farm8.staticflickr.com/7175/6425123055_1af7f1255f_b.jpg (http://farm8.staticflickr.com/7175/6425123055_1af7f1255f_b.jpg)
http://farm8.staticflickr.com/7150/6425123213_d974207844_b.jpg (http://farm8.staticflickr.com/7150/6425123213_d974207844_b.jpg)
http://farm8.staticflickr.com/7023/6425126219_440651230e_b.jpg (http://farm8.staticflickr.com/7023/6425126219_440651230e_b.jpg)
hope the image links work if not, sorry ;/
Title: Re: 500d development
Post by: ats1995 on 29 / November / 2011, 10:39:50
The autoexec from 1908 works seamless! Photo mode is not affected, and it remembers the settings! Superb!!
Title: Re: 500d development
Post by: Coutts on 29 / November / 2011, 13:11:21
Just curious, if SP is suppose to only create proper pictures in single and slit scan mode, everything works, but of coarse anything except single and slit scan are garbled here are 3 images, one showing it working fine in single mode, next showing it scrambled when in zoom in 5x and then a 5x5 version, if there is a tweak i need to attempt to get it going, is there any tip on what i need to do to unscramble it, i cant compile the code since the unified ml version i dont really know what i am doing, but i used to be able to compile it, and when i did, i knew how to change settings if someone told me what to change obviously 8] any idears???
http://farm8.staticflickr.com/7175/6425123055_1af7f1255f_b.jpg (http://farm8.staticflickr.com/7175/6425123055_1af7f1255f_b.jpg)
http://farm8.staticflickr.com/7150/6425123213_d974207844_b.jpg (http://farm8.staticflickr.com/7150/6425123213_d974207844_b.jpg)
http://farm8.staticflickr.com/7023/6425126219_440651230e_b.jpg (http://farm8.staticflickr.com/7023/6425126219_440651230e_b.jpg)
hope the image links work if not, sorry ;/

It looks like the buffer locations for x5 and x10 zoom modes have changed in v1.1.1. Here are my vram findings on v1.1.0 firmware: http://magiclantern.wikia.com/wiki/500d_VRAM_Info (http://magiclantern.wikia.com/wiki/500d_VRAM_Info) the process will have to be repeated with v1.1.1 using img.py to locate the buffers and find their correct resolutions.

additionally, the 422 conversion script needs to be modified to include the resolutions of the 500d buffers, in order for the silent pics to be processed correctly.
Title: Re: 500d development
Post by: kyselejsyrecek on 29 / November / 2011, 14:08:17
Alex, firstly, I'd like to apologize, I do appreciate your work a lot and I realize that you don't have the camera available to test the build. I only wanted to point out all issues that I have found when using it to make it even more better than it is now and make possible to fix some issues at least this way because I really don't have the time now to get the compiler and all things to work as well as to understand the code. So I am sorry if my comments yesterday looked somehow rough or anyhow else.

The "stability problems" weren't much about stability, ML doesn't crash or show any error. It is just the menu that comes on only if it wants to. I thought that it might be due to my memory card is almost full (there's only a few tens of MBs left on it) or an old configuration file. I have removed the old config file and started from scratch. The menu showed right when I pressed the erase button, so I was a bit surprised. Anyway, I started enabling features one by one and I was stopped at the Focus Peak. This is the one that, if enabled, refuses the ML menu to show on the screen until I press the Menu button, no matter how I set it, just turning it on is enough.

I have also found the Take a screenshot option finally, so I will attach a screenshot of the zebras in movie mode to show you how it is 1px off on top. Well, using the screenshot option, it won't capture ML overlays like zabras so I have to take a picture with my mobile phone.. hopefully it will be recognizable this time (..the file size limit here on the forum is perfectly annoying - tha't my 8th try to send the message, event when the picture has 900kB! well, I'll rather send it somewhere - http://imageshack.us/photo/my-images/85/dsc00100vu.jpg/ (http://imageshack.us/photo/my-images/85/dsc00100vu.jpg/)). Simply, the first line of pixels of the movie area doesn't show any zebra overlay, it's shifted 1px down.

I have recorded a video of changing the shooting mode from live view to remapped movie mode (MOV00109.MP4 (http://www.youtube.com/watch?v=rpPk5br94J8#)) - sorry for my English. I have also noticed that if the camera is awaken by pressing the shutter button half-way for example after a few minutes of inactivity when it fell asleep to save the battery, it will not turn on the remapped movie mode if it's set by the main dial, it will start shooting in the original shooting mode instead (A-DEP in my case). Turning the dial one step forward and back fixes it.
Title: Re: 500d development
Post by: kyselejsyrecek on 29 / November / 2011, 14:10:06
Quote
Quote

    Also the histogram isn't shown in any of the two modes - the last histogram frame is drawn over the table after exiting movie/lv mode (again, it is not drawn there every time).

Canon histogram or ML histogram? Does this camera have a table? How it looks like?

I have meant the ML histogram in live view. It turned out that this is Focus peak related. If I turn Focus peak off, the histogram shows normally. If Focus peak is on, the histogram isn't shown at all but (most of the time) is drawn over the shooting screen if I turn the main dial to another shooting mode (that's what i have meant by the "table"). I attach another photo of it.
Title: Re: 500d development
Post by: kyselejsyrecek on 29 / November / 2011, 14:28:08
Quote
Quote

    Another strange behaviour that I have also seen in previous ML versions is, that if I press the menu button when viewing images and then do it again so that the ML menu disappears, it shows the viewed picture overdrawn with LV features (zebras, histogram, spotmeter - no audio meter or bottom bar).

That's a feature.

Sorry, I didn't know that. It might surely be helpful when viewing images displayed in full screen, although again, zebras respect the 16:9 ration from movie and thus, there is a space without zebras on the bottom (as well as on the top, but there isn't even written any info (shutter, aperture,AE comp., ... as it was before turning ML menu on - but it displays once you change to another image). However, I barely view images using full screen mode - I rather view them in the mode with histogram and all the info below the preview. The zebras are then drawn all over the black space (respecting the 16:9 - probably - borders), overdrawing all text that there originally was - that was why I called it a bug - is it really what it is supposed to do? I'll attach a photo here. And I really don't understand the spotmeter's role here.

Thank you for the stretched focus peak fix, it really seems that it has been fixed :-). I'll try your older ML builds in order to test if the priority change has made the difference in the speed of reacting to zoom in press.

The last thing that I have discovered is, that the Flash button shortcuts (to set Kelvin temperature, ..) don't work at all. They only move the AF frame. But this might be already known and I suppose that it is camera related.
Title: Re: 500d development
Post by: kyselejsyrecek on 29 / November / 2011, 14:40:55
After a while, I have discovered that the zoom latency in live view is also focus peak related. It shows immediately when focus peak is off. It works great with the 1845 ML with Focus peak on, even the ML menu in movie mode shows normally and immediately after pressing Erase button. I have addressed both of those issues to the 1850 version. That's when the Focus peak started causing issues.
Title: Re: 500d development
Post by: a1ex on 30 / November / 2011, 08:30:11
I've reduced LiveView task priority by one notch. Can you check if there are side effects in menu and with magic zoom?

You can also preview a little facelift in menus.
Title: Re: 500d development
Post by: kyselejsyrecek on 30 / November / 2011, 09:00:36
Well, it didn't fix any of the issues that I mentioned, focus peak is still causing latency problems, histogram isn't shown (or shows sometimes after tens of seconds or so, just for a while), ML menu still isn't opening until I press also the menu button. I cam see that the focus peak algorithms have been renamed to D1xy and D2xy.. When focus peak is enabled, it also takes a lot of time for the "Vol+, Vol-" etc. LCD sensor shortcuts to appear on the screen (this was also present in the older builds, but they rather weren't displaying at all).
Title: Re: 500d development
Post by: mk11174 on 30 / November / 2011, 09:05:53
I've reduced LiveView task priority by one notch. Can you check if there are side effects in menu and with magic zoom?

You can also preview a little facelift in menus.
dont notice any glitches, seems the same to me, the menu facelift is neat though 8]

Update: Note, This version for me is no differ then any version even before the manual exposure add on, but I do notice that when focus peaking is turned on, histogram and wave for update slower and magic zoom has an occasional flicker if I am moving the camera but only while focus peak is on, turning it off everything runs smooth and fast, while recording, focus peaking does become slow to react at the objects in the view, I dont really use focus peaking though and thought it was just normal that it would slow things down a bit when on, seems to work fine when not recording, you only notice the slow down if you try to load histogram at the same time. I am not having any crashes or anything all seems the same just like the past few updates, these are not knew problems for me or anything just maybe confirming what is going on with kyselejsyrecek, but his seem much worse, cause i never had the huge delays in things turning on, like zoom and lcd shorcuts.
Title: Re: 500d development
Post by: a1ex on 30 / November / 2011, 09:22:53
Slowed it down even more.

With zebras and peaking enabled, histogram refreshes every second or so on 60D.

The algorithms were not just renamed.
Title: Re: 500d development
Post by: mk11174 on 30 / November / 2011, 09:40:25
Slowed it down even more.

With zebras and peaking enabled, histogram refreshes every second or so on 60D.

The algorithms were not just renamed.
With focus peak, zebra and histogram on histogram seems to update about every sec maybe little slower depending on how you count i guess, no crashes of coarse with focus peak off histo seems pretty fast.
Title: Re: 500d development
Post by: mk11174 on 30 / November / 2011, 12:17:02
Slowed it down even more.

With zebras and peaking enabled, histogram refreshes every second or so on 60D.

The algorithms were not just renamed.
Here is a test video of the 500D for u to see how everything is working, best way to show u was to use video out port so u can see things like I see them. Only things that are differ in that comes from video out port then what i see on cam lcd is the ml display, on the cam everything is at bottom and not cut off on the sides, on video out it is, just letting you know so you dont think its like that all the time on cam, all is fine with the display bars on cam.
http://youtu.be/A1_bTLaN7TE (http://youtu.be/A1_bTLaN7TE)
Title: Re: 500d development
Post by: kyselejsyrecek on 30 / November / 2011, 12:40:00
Well, I really have no clue what is wrong with it, but your video looks pretty fast for sure, mk11174. In my case, however, I am not even able to get to the ML menu with focus peaking enabled, if I don't press also menu button after I press the erase button. The Canon's zoom starts several seconds after I press the button, sensor shortcuts onscreen help (Vol+, Vol-, ...) show tens of ceconds after I cover the LCD display and the ML histogram doesn't show at all (yours is showing and is even pretty quickly refreshed). I have tested all the latest builds that you have posted, a1ex, of course, including the 1923 one. I'll try to play with it even a little more, but...
Title: Re: 500d development
Post by: a1ex on 30 / November / 2011, 13:01:19
You could try clearing all your camera settings.

For external monitors you can choose a different screen layout (in Display menu). With default settings, ML is optimized for 16:10 HDMI monitors. On 550D it looks a bit better, the area above the 16:9 bar becomes fully transparent.
Title: Re: 500d development
Post by: kyselejsyrecek on 30 / November / 2011, 13:21:32
Sure, that was the first thing that I have done.

I have noticed that everything (including histogram, menu, ...) works well in live view in manual mode. If I turn the dial to Av, Tv or P then, when LV is still on, everything still works fine. But if I turn the live view on from a shooting mode other than manual (Av, Tv, P, Mv), the described issues will occur and won't disappear even in manual mode until the LV is turned off and turned on again from manual mode. So in the default configuration, it is impossible to get it to work in movie mode because it is placed on the other end of the main dial (separated from manual and semi-manual modes by those fully-automatic ones like portrait etc. that will forcibly turn the live view off). If I set the movie mode remap function to A-DEP, start the live view in manual mode and then turn the dial to A-DEP, screen gets dark and nothing happens.... camera reacts on pressing shutter but the screen doesn't switch on until I turn the dial to the manual mode again. Starting "live view" from the remapped movie mode in A-DEP position works fine as well as doing it with movie mode non-remapped.
Title: Re: 500d development
Post by: Ulysses on 30 / November / 2011, 20:39:33
Alex, my "fade LV" and other fades are not working. They did in previously builds, but not now. Just giving you a feedback as you asked. :)

Aaaand... I´m just worried about overheating and battery time. In the first manual exposure autoexec version it was horrible. The battery wouldnt last half an hour with many things disabled, now its much better but I dont know if you can improve it, wich I think should be directly linked to the overheating.

And of course... 24p in 720p and mainly in 1080p... would be just like living a dream! Please, take a look at that! Please, please, pleaseeeeeeee! :D
Title: Re: 500d development
Post by: mk11174 on 01 / December / 2011, 08:43:20
Alex, my "fade LV" and other fades are not working. They did in previously builds, but not now. Just giving you a feedback as you asked. :)

Aaaand... I´m just worried about overheating and battery time. In the first manual exposure autoexec version it was horrible. The battery wouldnt last half an hour with many things disabled, now its much better but I dont know if you can improve it, wich I think should be directly linked to the overheating.

And of course... 24p in 720p and mainly in 1080p... would be just like living a dream! Please, take a look at that! Please, please, pleaseeeeeeee! :D
I too am noticing the cam temp is not getting so hot, i was normally running at 163 and sometimes 167, now its stay mostly at 153, highest i get for now, normally doing what i was doing in the earlier video i posted my temp would surely be 167 as i did all that, but it seemed to stay at 153 the whole time and i did not feel the usual warming on the side with the sd card. So something helped that.
Title: Re: 500d development
Post by: a1ex on 01 / December / 2011, 16:10:34
If powersave is not working, something might "wake up" the camera. This autoexec will tell you what.

Under normal operation, camera should only wake up when you press some buttons (or cover the sensor, turn focus ring... whatever).
Title: Re: 500d development
Post by: Ulysses on 01 / December / 2011, 17:08:35
I just need to return to you the numbers, right?
Title: Re: 500d development
Post by: Ulysses on 01 / December / 2011, 17:19:40
Well, when its iddle and when it should enter the powersave option, its not returning any number, the menu on the screen just blinks about every second, and the AF frame becomes visible again, then hide, then the screen blinks again, etc.

By screen I mean only the info, including global view.
Title: Re: 500d development
Post by: Ulysses on 01 / December / 2011, 23:23:14
Another thing I noticed since previous build. When I press DISP button with Global Draw on, the bottom bar of Global Draw disappears (dont show along with Canon info anymore, only in one of the 3 states of the DISP button, the one without Canon info on screen) and no matter what I do it dont show again until I reboot the camera.
The "wakeup:0" on screen also disappears but before that, it shows for about 3 seconds showing the number of last pressed button, like 63 for half shutter, 7 for DISP, etc...
When I was going to write whis, I just noticed when this happaned, the DIM Display function started to work. Maybe its a clue to solve this bug...

:)
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 00:15:21
One more...
The Exposure settings are really saved, but they are not applied when I turn on the camera, only after I change the exposure override to off then back to auto or on, then the last used settings for exposure are applied.

Hope I'm helping. :)
Title: Re: 500d development
Post by: utnuc on 02 / December / 2011, 00:29:07
@Ulysses

I'm glad I'm not the only one seeing this bug.  I mentioned it 2 pages ago:

Quote
Alex, for me this new build does remember my settings.  However, when I switch to off and back on ML defaults again to 400/120/5.6 until I disable then reenable Auto exposure override.  It then goes to my saved settings. 
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 02:26:00
Quote
When I press DISP button with Global Draw on, the bottom bar of Global Draw disappears (dont show along with Canon info anymore, only in one of the 3 states of the DISP button, the one without Canon info on screen)

The bottom bar should only be visible when Canon info is hidden (otherwise they will overlap). At least that's true in new camearas (not sure about 500D).

Quote
The "wakeup:0" on screen also disappears but before that, it shows for about 3 seconds showing the number of last pressed button, like 63 for half shutter, 7 for DISP, etc...

That's the normal behavior. 0 and negative numbers are internal ML events (for example, -1 is LCD sensor).

So, powersave is actually working?

Another bug reported from Vimeo group: magic zoom flickers in movie mode, but only during the first movie. Can you reproduce it?

The attached autoexec should restore manual settings properly. I think it was restoring them before reading the config file (so it was using the defaults).
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 07:46:48
Well, turning on the camera gives me the Canon info and also the Global Draw info, so I need to choose inside, 16:10 to better fit on screen. I thought it was the default behaviour. Only when DISP button is pressed the powersave starts to work and bottom bar from Global Draw appears only when no Canon info display is choosen.
I tought it was just when I turned on the camera, like exposure override, but I forgot it on the DISP state with no Canon info on the screen and when I turned it on powersave and Global Draw were working as they should. So its not necessarily a bug, but the thing is, if I just turn on the camera I can get both infos on the screen, but no powersave, if I press DISP at least once, powersave starts working and Global Draw bottom bar only appears with no Canon info on screen.

I´m only testing the video mode options, not the photo ones. I cant figure a way to make Magic Zoom work. Dont know if its some settings Im not turning on... I just get a red message at the bottom "Magic Zoom does not work well in current video mode" and Magic Zoom is always with the red dot.

Gonna try the new autoexec right now and report.
Title: Re: 500d development
Post by: mk11174 on 02 / December / 2011, 07:51:09

So, powersave is actually working?

I am using the latest update from twitter with facelift menus and all power save features work for me just fine, they always seem to as far as i remember when playing with them.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 08:05:58
@a1ex

just tried the new autexec.

Now its like the previous versions. Exposure Override is always starting off when I turn on the camera, so when I turn it on the last exposure settings are remembered. Its kind of what it was before, just with off instead of auto turned on when we turn on the camera.
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 08:11:24
The "ON" setting for exposure override is not persistent. Only the "auto" is.

Maybe powersave doesn't work when Canon info is displayed on the screen? In this case, there should be some code which "wakes up" the camera even when you don't press any buttons.

The message from magic zoom is only a warning; it should work, but on some cameras it may flicker.
Title: Re: 500d development
Post by: mk11174 on 02 / December / 2011, 08:44:43
The "ON" setting for exposure override is not persistent. Only the "auto" is.

Maybe powersave doesn't work when Canon info is displayed on the screen? In this case, there should be some code which "wakes up" the camera even when you don't press any buttons.

The message from magic zoom is only a warning; it should work, but on some cameras it may flicker.
power save features work with canons display on screen.

also i noticed the exposure setting for overide only seems to go to default if you have a chip lens or auto lens attached, when i use my kit lens it seems to always goto [5.6 1/120 400] but with old manual lens or kit lens unscrewed to deactivate it, the manual settings hold, when the kit lens is attached and you go into ML menu to turn overide off then back to on or auto ur last manual settings are back, so ML is saving the settings just fine, it seems when a kit or sensor lens is attached it just for some reason starts with those default settings.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 08:49:15
Yes, but the camera always turns on with exp. overr. set to off now(Canon auto exp.).
Before it was always set to auto, and to remember the last settings we needed to turn it to off and the back to auto.

Now its always off and when I set it to auto then it remembers the last settings.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 08:50:49
About powersave, the screen blinks about every second in that case (both infos). So it could be something related to the overlays...
Title: Re: 500d development
Post by: mk11174 on 02 / December / 2011, 08:54:01
on the #1923 bin the exposure overide seems to work fine with kit lens now and manual and loads by itself to auto when i turn cam on so all works fine with this update, my last update where it was not working was the facelift menu twitter version.

update, the power saving only work while live view is active, maybe thats what you meant? if live view is off and the canon menu is on, then they dont do anything.

weird thing, when i turned magic zoom on to always, there was no way to turn it off, even when you set it to off it just would not turn off unless you chose a differ setting like like Zr+Focus, then turning it off and on worked fine from the main menu for it.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 08:56:07
Sorry, I read "present" not "persistent". Now its working and remembering the last settings. Just when I turn the camera on, I need to press half-shutter for the screen to update and show the settings for exposure. In ML menu its the same, only show the last settings after half-shutter press, but it applies the settings since from beggining, just dont show it until half-shutter..

:)
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 08:57:31
@mk11174

facelift is working on these last builds a1ex posted here. :)
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 09:00:46
CORRECTION: It starts with Canon auto (exp. over. set to off), when I press half shutter it then applies last settings turning exp. over. to auto.
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 09:36:06
Magic zoom and exposure override should be fine now.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 09:44:36
gonna try it now...
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 09:50:59
Yes, its working! Just takes about 1 second to apply the settings like its "loading", same time to show Global Draw.
I just cant trigger Magic Zoom, I only can use it if I set it to "always on", then it works just fine. I´m not using a chipped lens now so dont know if it triggers with focusing ring (I´m too lazy to change to the kit lens...)

Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 09:56:36
Confirming: Magic Zoom triggers with focusing ring (but not with any button). When recording it triggers too but blinks and its just useless.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 09:58:00
battery and overheating are just fine.
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 10:02:27
Were able to trigger it in previous versions?

Maybe the zoom button codes are incorrect. Use the autoexec which shows wakeup messages and check the button codes for zoom in. They may be different when recording and when not.

If it flickers, try a smaller window or smaller magnification.

Edit: Just did a test on 60D, with small and 1:1 in 720p 50fps mode (where it was unusable due to flicker). It did not flicker at all!

There was only little flicker in medium 2:1.

Large 2:1 is unusable even in 25p.

In 60fps, small 1:1flickers quite a bit when idle. When recording it's quite usable...
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 10:09:23
I tried the smallest.

Gonna try and see the button codes and return to you.

About the 1 second for exposure settings to apply, is that the way it is or it could be adjusted to be right on sooner than that?
Title: Re: 500d development
Post by: mk11174 on 02 / December / 2011, 10:12:56
Magic zoom works every way for me but Zrec Zrec+foc works, Zrec never worked in any version, and now it turns off fine when set to always, thanks Alex

Correction, Zrec does work, didnt realize I had to cover sensor, lol it works fine.

As far as Magic zoom flickering it only does on 1st record if u stop and start again its solid.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 10:18:02
with a smaller magnification it worked. the strange thing is: when I got it working on recording, then I changed to all modes (magnification and size) and it worked just fine. Rebooting the camera made it flicker again till I changed the magnification.

So, when it got right, it worked with the other configurations for magnification and size. It just starts wrong. The button thing is the same, cant trigger it recording or iddle.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 13:19:13
When I take the card out and put it back, the camera only turns on if I remove the battery for at least 2 seconds. Is it normal or a bug to be fixed?

Well, was a bit hard to distinguish some numbers but it looks like they are the same recording or iddle. Except for the "+/Zoom in", wich in record mode was flickering between 11 or 12 (coudlnt be sure), 63 and the -2345. Here they are:

DISP: 7
*/(-): 35
Zoom in/(+): 11 (maybe 12, couldnt be sure)
Half shutter: 36
left: 57
right: 55
up: 59
down: 61

When recording, stays on screen: -2345
When iddle after pressing any button: 63

This with no Cano info on screen. With Canon info the iddle number staying on screen is 0.

What the number 63 means?
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / December / 2011, 13:30:25
Taking the memory card out of the camera too quickly causes it to lock up. After you open the card door, you have to wait a moment for the red LED to blink and when it stops glowing, then it is safe to remove the card and the camera will stay off as normally (otherwise it would run in a cycle and consume all the battery power).
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 13:33:35
Ok, kyselejsyrecek! Thanks!
I think I was too used to use the card without ML.
:)
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / December / 2011, 14:03:31
Could anyone please help me with getting the source tree compile? I have installed all the tools needed for compiling using the summon-arm script (with a few changes made to it), cloned hudson's 500d branch and unzipped the ml-500d-111.fir file from the latest magiclantern-2011.11.11.550D.60D.600D.50D.500D.zip in hudson's branch but the compiler stops with many "undefined reference" errors:

...
magic-lantern/gui.c:139: undefined reference to `lens_focus_stop'
gui.o:(.task_overrides+0x0): undefined reference to `gui_main_task'
collect2: ld returned 1 exit status
make: *** [magiclantern] Error 1

The make command also yields some error messages like:
[: 1: unexpected operator
[ CC       ]   property.o
but these do not really stop the compilation or affect it in any way, I believe.
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 14:16:02
You may have to select the unified branch, not "default".
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 14:28:50
@a1ex

Did my numbers help you?
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / December / 2011, 14:30:19
Oh, great. Thank you, a1ex.
However, it now stops with this kind of errors:

boot-hack.c:(.text+0x454): relocation truncated to fit: R_ARM_PC24 against symbol `dumpf' defined in *ABS* section in magiclantern
boot-hack.c:(.text+0x458): additional relocation overflows omitted from the output
collect2: ld returned 1 exit status
make[1]: *** [magiclantern] Error 1
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 14:37:51
Look here: http://magiclantern.wikia.com/wiki/Build_instructions/550D#Fixing_common_compiling_problems (http://magiclantern.wikia.com/wiki/Build_instructions/550D#Fixing_common_compiling_problems)

@Ulysses: button code for zoom is correct (11/12), and 0 is only sent at startup. So it's still a mistery for me.
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / December / 2011, 14:53:16
Oh my, you're right, it was there. I am sorry, I read through the common problems but didn't find it there. Now it compiles normally and the build is working. Thanks
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 15:23:01
Couldnt change the shortcut for the magic zoom so instead of using the lcd sensor use something like the iso button? I find it very odd to use this shortcut. Its useful only if you using a tripod, and not so useful since you have to put your finger in front of everything...

The thing with magic zoom: I did a lot of tests. Right when you turn the camera on, it flickers when recording. If I change any setting from MZ facelift, then the MZ works ok when recording and flickers no more. Any clues?
Title: Re: 500d development
Post by: a1ex on 02 / December / 2011, 15:30:20
If you first change the setting, how it works?

If you record two movies without changing settings, how it works?

Zrec is "zoom while recording", i.e. only meant to be used while recording (when Canon 5x zoom is not available). The sensor shortcut is only for convenience. Use the (+) setting instead.
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 15:53:59
First movie flickers, second ok! Tried changing from small, medium and large settings.

First change the settings: same thing, flickers. Strange as I remember that 1 or 2 builds ago it flickered even with 2 movies in sequence...
Title: Re: 500d development
Post by: Ulysses on 02 / December / 2011, 15:58:35
And I tried the (+) but thats the thing... it doesnt work.
Well, I dont care too much about these things and they kind of work, just need one or to details to be corrected.

Lets skip to the most wanted feature after manual exposure: FRAME RATE!!!

Im your guinea pig. Lets rock!

:D
Title: Re: 500d development
Post by: pat_loonytoon on 03 / December / 2011, 03:04:26
Guinea pigs roll more than rock,as they have wheels and...ah forget it
Title: Re: 500d development
Post by: Ulysses on 03 / December / 2011, 06:37:17
hahahahahhahahahaha!
:)
Title: Re: 500d development
Post by: bjacklee on 03 / December / 2011, 07:01:39
frame rate control... the last missing piece of 500d ML.. :D i hope this will be the next feature.. :)
Title: Re: 500d development
Post by: mk11174 on 03 / December / 2011, 09:36:03
yep, framerate control, who knows, we once though manual controls were going be impossible, if anyone can do it, alex surely can, i bet coutts was on the right track too but school has to come first of coarse, one of these guys will eventually get it going i bet. 8]
Title: Re: 500d development
Post by: Ulysses on 03 / December / 2011, 09:57:13
Yes! they have done an amazing job adding all the features going through the code and stuff. We rely on them and lets help in whatever we can. GO FRAME RATE. GO!
Title: Re: 500d development
Post by: Ulysses on 03 / December / 2011, 10:00:28
Hey, a1ex,
Just wondering... isnt it possible to have the pressing of buttons to run across the numbers as we hold the button pressed? I think in many cases it would be very handy and more appreciated than having to press the button many times to get to the desired number. Or make the main dial to also work changing values... it would be awesome!
:)
Title: Re: 500d development
Post by: kyselejsyrecek on 03 / December / 2011, 11:15:53
A1ex, I have tried to play a little with the zebra offset and it proved to be more complicated than I originally thought.

I have found the os.off_169 variable in vram.c and I could make the zebras start where it should by adding - 1 at the end of the expression. I have thought that it is caused by rounding down so I have changed the expression to "os.off_169 = (os.y_ex - (os.y_ex*3*9 +2*16-1) /2 /16) / 2" to make it round up but zebras still stayed 1px lower than they should (that's logic, os.y_ex is 426 and so the result always stays 33 in this case). I then found out from a screenshot that the top border is 32px high and the botton one 34px high (I have no clue why so weirdly, maybe they are not drawn correctly or Canon developers have made a mistake?). So it is possible to add a precompiler condition and set it forcibly to 32 for 500D and for the other cameras use the original expression. I just wonder whether the computation shall be what it is now or changed somehow to correspond to the Canon's one, if they compute it for all cameras the same way, assuming that the borders are drawn correctly and there may be another camera with the same issue.

As the variable is used many times in the code, it is probably an issue of many overlays, although I have noticed that focus peak for example starts even about 10px lower than zebras.

And the other half of the problem is that changing os.off_169 has only shifted zebras (and whatever else) 1px higher, so there is now 1px space between zebras and the bottom corner -.-
I was not able to find a variable that would fix this.

I attach the screenshot that I have talked about.
Title: Re: 500d development
Post by: a1ex on 03 / December / 2011, 11:35:29
If you want to play with screen layout, take a look here:
http://magiclantern.wikia.com/wiki/VRAM/Geometry (http://magiclantern.wikia.com/wiki/VRAM/Geometry)

The reason for doing all the computations is to keep the graphics code compatible with external displays (where resolution and black bar size/positions differ).

You may want to alter the area where LiveView image is present (that is, "os" structure). It's named like that by a German developer, so I don't know exactly what it stands for (it's shortcut for bmp_ov_loc_size or something like this).

In 550D, if I remember well, there's also a difference of 1px between top and bottom border.

Focus peaking has a little offset in order to avoid the horizontal edge which appears at the top and bottom of the image buffer. That offset is in zebra.c (draw_zebra_and_focus_peaking).

@Ulysses: For main dial in LiveView, see here:
http://chdk.setepontos.com/index.php?topic=5971.msg75759#msg75759 (http://chdk.setepontos.com/index.php?topic=5971.msg75759#msg75759)
Title: Re: 500d development
Post by: mk11174 on 03 / December / 2011, 12:17:10
Alex, I finally got ML to compile again, can you give me a hint or idea on what I need to change or look at to change it so the kelvin can change with the sensor and arrow instead of volume + and - the flash button does not work on the 500d to change the 2 things it should change. I like the lcd brightness on the keys but would rather have kelvin adjustment then volume????

update: no worries alex, i actually figured it out suprisingly, lol found it in debug.c made it work now i just need to change the display so it dont say vol+ and vol- but i already know how to do that part 8]
Title: Re: 500d development
Post by: mk11174 on 03 / December / 2011, 22:23:11
After changing the Vol and LCD brightness buttons to ISO and KELVIN I noticed while using Grid#1 its much nicer to set the displays for them after the 1st grid line and also for the AF Frame hide box change its size and pos to just cover the 1 square so it dont overwrite the grid, just in case anyone uses the grid might like to try it, just looks nicer with the displays not on top of a grid line.

these are the settings I used for the ISO, KEL, FF displays

      bmp_printf(FONT_MED, 360 - 150 - font_med.width*2, 210 - font_med.height/2, "-FF ");
      bmp_printf(FONT_MED, 360 + 155 - font_med.width*2, 210 - font_med.height/2, "FF+ ");
      bmp_printf(FONT_MED, 360 - font_med.width*2, 240 - 115 - font_med.height/2, "FF++");
      bmp_printf(FONT_MED, 360 - font_med.width*2, 240 + 60 - font_med.height/2, "FF--");

      bmp_printf(FONT_MED, 360 - 150 - font_med.width*2, 210 - font_med.height/2, "-Kel");
      bmp_printf(FONT_MED, 360 + 155 - font_med.width*2, 210 - font_med.height/2, "Kel+");
      bmp_printf(FONT_MED, 360 - font_med.width*2, 240 - 115 - font_med.height/2, "ISO+");
      bmp_printf(FONT_MED, 360 - font_med.width*2, 240 + 60 - font_med.height/2, "ISO-");

      bmp_printf(FONT(FONT_MED, COLOR_WHITE, 0), 360 - 150 - font_med.width*2, 210 - font_med.height/2, "    ");
      bmp_printf(FONT(FONT_MED, COLOR_WHITE, 0), 360 + 155 - font_med.width*2, 210 - font_med.height/2, "    ");
      bmp_printf(FONT(FONT_MED, COLOR_WHITE, 0), 360 - font_med.width*2, 240 - 115 - font_med.height/2, "    ");
      bmp_printf(FONT(FONT_MED, COLOR_WHITE, 0), 360 - font_med.width*2, 240 + 60 - font_med.height/2, "    ");

And here is the setting for the AF Hide Box
bmp_fill(0, COERCE(xaf,100, BMP_WIDTH-100) - 100, COERCE(yaf,100, BMP_HEIGHT-100) - 45, 200, 95 );

Only posting here cause I dont know where I am suppose to post info like this, sorry if it annoys anyone cause I posted here if I am not suppose to.
Title: Re: 500d development
Post by: freeman656 on 04 / December / 2011, 05:03:11
Hi,

I'm using the 11.11.11 firmware and can't get the ghost image work on the 500D.

Is the ghost image working on the 500D ?


Thx,
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 07:33:48
I have uncommented lines 91-94 in consts.h for 500D and commented lines 100-103 and the Flash popup button worked as a shortcut for setting Kelvin temperature, ISO and display preset. It seemed to work well for a while but the Camera behaved strangely, the flash shortcut help appeared on the screen randomly without pressing the flash button, so that's the reason for disabling it for now. Maybe other cameras will have an additional condition to distinguish flash button press from other events but I doubt it would be usable for 500D.

I have also found and corrected some os structure variables as the black top bar in play mode is 52px high instead of 54px and as the vertical screen resolution is 480px, os.y_ex has to be adjusted to 480 - 52, instead of 480 * 8/9. It has to be 424 for movie mode / live view instead of 426 (which is floor of 480 *8/9). Someone should verify these values at least for the 50D which uses the same code for it (I assume 5D2 is defined well, vram.c:123).

Also, if I press the display button in play mode to show the additional info for the photo (including Canon histogram), the top black bar is 48px high then (and the area for zebras is 340*204px, x offset is 48px). If 2*2 or 3*3 pictures are shown, it is all different again but in my opinion, there shouldn't be drawn any overlays as the photo previews contain top and bottom black bars of inexact height - as the photo is scaled down, the bars are anti-aliasingly merged with it - and also there isn't any space for 4, 9 respectively, histograms. I just don't know how to distinguish those play modes from each other.

I wasn't able to make zebras fill the last pixel row in movie mode, although I have tried many y_ex values - I don't understand why it is not respecting it. I can only make zebras draw starting at the first row below the top 16:9 bar.

And when I was experimenting with it, I also slightly changed line 1076 in zebra.c so that zebras will fill whole screen in live view / play mode and respect 16:9 crop bars in movie mode. I only found out that the bottom ML info bar in LV was on a blue background when zebras started from os.y0 = 0 instead of black. If I set os.y0 to 1, the bar background was black again. It then turned out that the background was blue only when there were drawn zebras in the top left corner, so it must be borrowing the color somewhere from a buffer or something, this shall be fixed somehow. The only altered line is:

for(int max = os.y_max - ((PLAY_MODE || shooting_mode != SHOOTMODE_MOVIE) ? 0 : os.off_169), y = os.y0 + ((PLAY_MODE || shooting_mode != SHOOTMODE_MOVIE) ? 0 : os.off_169); y < max; y += 2 )

I have noticed that if the battery goes low (red bat indicator), the Canon's red battery icon blinks over the ML red battery icon (it blinks as normally but it overrides ML bottom bar in LV). Also, if the shutter is pressed half-way in movie mode, the background below audio meter gets overwritten by the bottom grey 16:9 bar and isn't overwritten back by black.

If I shall post those things somewhere else, please tell me. I may also send somewhere the code that I have changed. I will attach my autoexec.

And the last thing, I have noticed - zebras are not drawn as diagonals under 45°.. well, they are but every, let me say, 10px, there is an approx. 3px wide "vertical row" with more compressed blue zebras. I don't know if it is a HW issue or it could be fixed in ML somehow. Well, and the zebras in play mode contain a few 1px high black areas of random length (about 20px most of the time) (instead of zebras) that are progressively filled with zebras for about 5 seconds. They appear only near the bottom edge of the screen, where ML info bar would be placed in live view. Also, the canon info in the top bar above the photo in play mode isn't shown after the overlays are drawn - there's simply a clear black bar.
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 07:38:07
freeman656: Yes, you can try the autoexec that I have just posted or the latest from a1ex one or two pages before. I've tested it with mine and it's working well.
Title: Re: 500d development
Post by: freeman656 on 04 / December / 2011, 07:41:20
ok thx, I'll try it asap
Title: Re: 500d development
Post by: a1ex on 04 / December / 2011, 08:21:23
That's a good start. You can attach your code as a patch (it's easier to follow). Use "hg diff" for that.

For Play mode, I'm thinking to write an autodetection routine (to count the pure black pixels and figure out the crop area). I only need to be able to detect when it's a photo (3:2) or a movie (16:9); on HDMI, pixels are not always square. This will make sure ghost image can be created from any display mode.

To figure out the playback type you may try mem-spy ( http://magiclantern.wikia.com/wiki/Memory_Addresses (http://magiclantern.wikia.com/wiki/Memory_Addresses) ). You need to compile in debug mode (CONFIG_DEBUGMSG = 1).
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 09:23:39
Thanks, a1ex.

I have also fixed the focus peak area as I realized that the previous edit didn't touch it and was related only to zebras, although I still do not quite understand why is focus peak offset exactly 8px from each screen edge. And if there are any other overlays respecting 16:9 bars, they should be edited as well.

As you talk about the picture format, you reminded me of photos taken vertically ("portrait photos") these too do not fill whole screen as they have black areas on their sides.

Thanks for the hint, I will maybe try sometime later, it's something that I have never done before.

I attach the autoexec with fixed focus peak areas and the diff.
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 12:40:35
Got AF frame autohide in movie mode to work by changing tweaks.c:512 to:

if (!lv && shooting_mode != SHOOTMODE_MOVIE) return;

I have also fixed the issue with camera not responding when focus peak is active by making it sleep for 20ms. In live view, 10ms was enough but the camera still didn't respond in movie mode. The time needed probably differs within different cameras as you didn't even notice it if I understood it well. With this workaround, camera always reacts in much less than 1s (zebra.c:1064)

msleep(20);

And the background of ML info bar in LV is fixed by adding "|| lv" to the condition in lens.c:220

if (is_movie_mode() || lv || gui_menu_shown()) bg = COLOR_BLACK;

@593
if (lv || gui_menu_shown()) bg = COLOR_BLACK;

..and fixing bitrate.c to make it consider position of the bar:

@218
FONT(FONT_MED, COLOR_WHITE, get_screen_layout() >= SCREENLAYOUT_UNDER_3_2 ? COLOR_BLACK : TOPBAR_BGCOLOR),

@241
FONT(FONT_MED, COLOR_WHITE, get_screen_layout() >= SCREENLAYOUT_UNDER_3_2 ? COLOR_BLACK : TOPBAR_BGCOLOR),

@296
time_4gb < time_indic_warning ? time_indic_font : FONT(FONT_MED, COLOR_WHITE, get_screen_layout() >= SCREENLAYOUT_UNDER_3_2 ? COLOR_BLACK : TOPBAR_BGCOLOR),

It seems to be working as far as I have tested it. Hopefully this approach is correct and will work on other cameras, I have copied it from audio.c and slightly altered.
I again attach the new autoexec and diff with the latest hudson's unified  branch.

And please, could you tell me, a1ex, what and how did you disable or change within compilation as your builds are ~50kB smaller? Thanks :-)
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 12:54:33
Sorry, I have just realized that I could have replaced (shooting_mode == SHOOTMODE_MOVIE) by is_movie_mode() to make it more readable. So there's the corrected diff file and I give up for tonight. And thanks for all your help, a1ex!
Title: Re: 500d development
Post by: a1ex on 04 / December / 2011, 13:20:31
Great!

Basically, all 4:3 cameras (500D/50D/5D2) have the same screen layout, and the same is true for 3:2 cameras (550D/60D/600D). So I'll apply your changes for 50D/5D2 too.

On 3:2 cameras, ML info bars are transparent in photo mode (there's no black bar where they can be placed). In movie mode it's easier, there are the 16:9 bars.

is_movie_mode() is the right (i.e. portable) way to check for movie mode.

About msleep: probably the lowest msleep value in older cameras is 20ms (or 16ms, not sure). You can check with fps_ticks (uncomment the bmp_printf in zebra:c:3393 and play with the delays).
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / December / 2011, 13:29:33
Another thought, it would be good practice to turn off the IS when play mode or menu is active. This is a Canon FW bug, in movie mode, the IS is still active and going to ML/Canon menu or play mode doesn't turn it off even after much time (this is simply deducible from the sound coming from the lens), whereas in LV, it is activated only by half shutter press and turned off ~2s after the shutter button is unpressed. If there was a way to get rid of IS, ML could disable it in play mode and ML/Canon menu and even add a menu item to the Power menu to only start the IS when recording and by DOF preview button for example to save an additional power.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 10:48:24
Applied some of the patches; can you check if there are any stability issues?

I didn't apply yet the 3:2 zebras and the new position for FF+/- indicators.

Instead, I've tried to erase the AF frame without disturbing the grid lines (too much). This one has the potential to give ERR70 on 500D (just like bmp_fill did before).
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 11:21:29
I get no crasch with this build - tested with zebras, focus peak, magic zoom, ML menu while recording, and tried to record many videos.

In the very first video (I have to restart the camera to get what I call the very first one, changing shooting mode isn't enough), Magic zoom flickers really a lot, several times per second, and if zebras and/or focus peak are shown, there flickers an overlay, that, I would guess, is computed for the first frame of the video. This flicker is very often but not so much as with magic zoom as zebras and focus peak refresh less times per second.

Magic zoom cannot be toggled on/off when recording, I don't know if this is correct behaviour. And focus peak is again stretched on the vertical axis, this time only when recording. I hope, it's all.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 11:46:01
Thanks for the changes, Alex.
It's nice to see them in upstream. And especially the MIN_MSLEEP is a great idea. I have experimented a little with the values that you have advised me and found out that msleep (16) is still working great on 500D (I haven't tested values from 15 to 11 and 10 was not enough for video mode - maybe it had no effect in real)
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 12:02:58
And, I think that this line https://bitbucket.org/hudson/magic-lantern/changeset/43645fd41f40#chg_src/vram.c_newline148 overrides the os.off_169 = 32 from the previous condition for 3:2 cameras - that's why I added "else" after the line 137 and moved lines 148 & 149 above 146 & 147.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 12:29:38
I still don't know how focus peaking should be aligned, as I've toggled it a few times and people kept saying it's wrong.

Basically there are two HD buffer ratios when not recording: 3:2 or 16:9. In 600D it's always 16:9, in 550D/60D it's always 3:2 when not recording. In 500D there were both versions; now it's 16:9.
Title: Re: 500d development
Post by: mk11174 on 05 / December / 2011, 12:34:03
Applied some of the patches; can you check if there are any stability issues?

I didn't apply yet the 3:2 zebras and the new position for FF+/- indicators.

Instead, I've tried to erase the AF frame without disturbing the grid lines (too much). This one has the potential to give ERR70 on 500D (just like bmp_fill did before).
All is fine, no err70, this is where I have my indicators located, I have the FF in the same spot obviously, mine say ISO and Kel cause I swapped the sensor shortcut for LCD and Vol to work those cause for me there more used. I moved the indicators so there nice and center on the viewable area, just seems to look nicer to me anyways, and I moved the + and - symbols on the outer edge on the left side rather then on the inside of the letters makes it look more even as well.
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi482.photobucket.com%2Falbums%2Frr189%2Fmk11174%2FTEST.jpg&hash=64d61957e9160c9d4a9dde75efffd9ff)
Title: Re: 500d development
Post by: mk11174 on 05 / December / 2011, 12:44:41
I still don't know how focus peaking should be aligned, as I've toggled it a few times and people kept saying it's wrong.

Basically there are two HD buffer ratios when not recording: 3:2 or 16:9. In 600D it's always 16:9, in 550D/60D it's always 3:2 when not recording. In 500D there were both versions; now it's 16:9.
This one seems to only align focus peaking when in center of display, I didnt notice anything wrong with focus peaking on the previous updates, maybe Im not looking for the right problem, but it all seems to align fine in the vid I uploaded a couple days ago.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 12:45:23
Alex, I have tried to play a little with the msleep values and the least value in msec was 11 for 500D - this makes it respond normally in movie mode with focus peak (10 is too low, 16 uselessly much).

And well, this focus peak alignment change was pretty wrong. It has made the focus peak stretched as it is when recording, but also when not recording. try to go the other way if you can :D
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 12:49:54
... does the 500D record 16:9? Are the 16:9 bars black or semitransparent?

mk11174: can you check the position of FF+/- with my autoexec? I've applied your changes, but adapted them in a more generic way (to be compatible with other cameras and external monitors).
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 13:05:01
500D records in 720p30 and 1080p20 so it's 16:9 of course. The ML info bar is in bottom altogether with audio meters (as it is shown in mk11174's screenshot here above and it is/should be black in both, movie mode and live view (there's a black bar in bottom of both + semi-transparent 16:9 bars in movie mode - there's also a 640*480@30fps video mode that has semi-transparent crop bars on sides - that's where zebras are lacking at the top and bottom and are also offset ~3ps from the left and 1px from the right - I didn't notice this before as I didn't try this mode).

..and focus peak is finally fixed! Thank you very much, Alex! :-)
Title: Re: 500d development
Post by: mk11174 on 05 / December / 2011, 13:06:14
... does the 500D record 16:9? Are the 16:9 bars black or semitransparent?

mk11174: can you check the position of FF+/- with my autoexec? I've applied your changes, but adapted them in a more generic way (to be compatible with other cameras and external monitors).
yep those positions will do, maybe the right indicator a tiny bit more to the right so its not right up against the grid, but good enough now no big deal 8]
Title: Re: 500d development
Post by: mk11174 on 05 / December / 2011, 13:13:36
... does the 500D record 16:9? Are the 16:9 bars black or semitransparent?

mk11174: can you check the position of FF+/- with my autoexec? I've applied your changes, but adapted them in a more generic way (to be compatible with other cameras and external monitors).
Yeah its all black in all the areas, i dont know why the screen shot backs everything white in those areas, everything that is whit on my image is black on the cam, the gray areas above the ml info are semi transparent on cam unless i use 16:9 cropmarks which then makes them black, I am not using the cropmarks at current time.

And focus peaking working perfect in record mode and no record mode, nice!!!

Alex, is there an easy way for me to apply the change for the iso and kel to the shortcut rather then changing it manually in the source and recompiling it everytime theres a new update? Or is that the easy way? lol, not hard to do, just wondering if i am doing it the hard way?
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 13:22:42
The easy way is to save your changes as a patch, something like this:
Code: [Select]
hg diff > mychanges.patch

Then, when you want to recompile:
Code: [Select]
hg pull
patch -p1 < mychanges.patch
make clean && make
Title: Re: 500d development
Post by: mk11174 on 05 / December / 2011, 13:30:22
The easy way is to save your changes as a patch, something like this:
Code: [Select]
hg diff > mychanges.patch

Then, when you want to recompile:
Code: [Select]
hg pull
patch -p1 < mychanges.patch
make clean && make

ok, thanks, sounds good, i will attempt it 8]
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 13:35:07
About that possible err70: it can only appear when you move the AF frame around. So the test for this would be to move the box when recording.. I guess.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 13:38:22
Alex, changing this line https://bitbucket.org/hudson/magic-lantern/changeset/59734c48eac5#chg_src/zebra.c_newline3641 has broken the camera latency in movie mode again. It shall remain MIN_MSLEEP. Just to let you know.

And as I discovered, my workaround for zebra/focus peak areas doesn't take care of the 640*480 video mode of course so there are spaces above and below the 16:19 area - I don't know how to handle this video resolution change.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 13:42:37
About that possible err70: it can only appear when you move the AF frame around. So the test for this would be to move the box when recording.. I guess.

No, it doesn't crash in any video mode. Nor when recording.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 13:58:14
It shall remain MIN_MSLEEP.

Doesn't this cause magic zoom to flicker?
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 14:15:26
It shall remain MIN_MSLEEP.

Doesn't this cause magic zoom to flicker?

Yes, it does. But I can access the ML menu, LCD shortcuts and press zoom buttons without having to wait half of a minute. But it really fixed the flicker when not recording or when recording other than very first video. In the first video the magic zoom still flickers horribly.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 14:32:31
But when magic zoom is turned off, you still can't access ML menu without a large delay?

Edit: can you try this changeset?
https://bitbucket.org/hudson/magic-lantern/changeset/7692df85a863

It should only "overcrank" it at 10ms when magic zoom is active, otherwise it should be relaxed.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 15:07:02
Yes, when magic zoom was turned off, I still couldn't access ML menu without a large delay.

The changeset has fixed the delay with focus peak and magic zoom no longer flickers. But this time it's the magic zoom what causes the camera not to respond immediately (it may take several seconds up to ~a half of a minute), this is worse when recording (only with magic zoom turned on, otherwise the camera responds immediately), although magic zoom no longer flickers.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 15:13:19
OK, so my last workaround is to allow MZ to flicker once every 50 frames or so; this should make buttons respond in around one second. You can tweak it further if you like.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 15:37:10
Yes, it does exactly what you have told. Except that the maximum delay that I have experienced is about 3s, but that's only sometimes. I have thought, it could be caused by the magic zoom not being refreshed at 50fps so I have enabled the fps yelling code and I was surprised. With magic zoom (no matter if I was recording or not), it showed up to 80fps. With histogram only 25fps, with zebras 23fps and with focus peak 18-22fps. That's when I have noticed that if only histogram is shown, it gets refreshed about 3-5 times a second. With focus peak turned on it is about 3 times slower - but that's probably ok as it is just much CPU hungry.

I have noticed that the red "Not recording" cross has been enlarged. The LCD shortcut titles are a few pixels out of it.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / December / 2011, 15:39:44
This is the screenshot for you to figure out.
Title: Re: 500d development
Post by: a1ex on 05 / December / 2011, 16:06:58
80 fps is a lot, at this rate it should work even in 60fps video modes...

The proper fix for this is to find the hook for vertical sync (which is called at 30fps, 25fps, 60fps.. whatever value used for refreshing the screen) and draw magic zoom for there. That should ensure perfect sync without CPU usage overhead.

The red frame should be fixed by this:
Code: [Select]
movtweaks.c:605:
int rx = os.y_ex * 7/15;

or maybe some other value.

Did you know Canon's AF frame has the golden ratio?
Title: Re: 500d development
Post by: mk11174 on 06 / December / 2011, 00:33:51
Alex, since your doing alot of menu tweaks, would it be hard to make a menu option to switch back and forth from lcd shortcut and flash button for the iso, kel, lcd, and vol, so like have a menu selection to select if you want iso and kel on the current flash button option or if you would rather have it on the lcd shortcuts option, this way for cam models like the 500d that the flash button is none working for, they can decide what is more needed and can easily switch by menu, for me, i just switch it manually in the debug.c code, but im sure im not the only 500d user that would love kelvin and iso as a quick adjustment using the sensor shortcut and maybe other cam models would like to have the option to switch those features as well. Its easy to switch them around manually in the code, but i dont know the code good enough to attempt a new menu 8/ if u get time and its not to hard, i think that might make a useful menu option for all models.
Title: Re: 500d development
Post by: kyselejsyrecek on 06 / December / 2011, 11:10:32
The red frame should be fixed by this:
Code: [Select]
movtweaks.c:605:
int rx = os.y_ex * 7/15;

or maybe some other value.

Did you know Canon's AF frame has the golden ratio?
[/quote]

Yes, that fixed the problem :-)
Now the shortcut titles override only the denser grid but this would be really hard to fix as its lines pass through the center of the screen, never mind.

About the golden ratio, no, I didn't know that :-)

The vsync fix for magic zoom is evident, that's a good idea. Only the event has to be isolated.
Title: Re: 500d development
Post by: kyselejsyrecek on 06 / December / 2011, 13:13:43
I have made a patch for zebras and focus peak so that they use all the image area available (except crop bars in movie mode). It now recognizes also 480p video mode to fully use the area available in 4:3 ratio (I have moved local off_43 variable from update_vram_params() in vram.c to the os structure).

I have also tried to adjust a little bit more the background for ML info bar parts but it proved to only work with the "outside" ML info bar placement modes - the inside ones that I have let unchanged suffer from the issue that I have fixed for the ML info bar "outside" placements (the color of the background may change from transparent to the color of a ML overlay drawn in the top left pixel and if transparent, it will make a transparent rectangle inside ML overlays) so that might need an additional tweaking.

This patch contains also change of the "Not recording" red rectangle so that it doesn't get in conflict with LCD/flash shortcut titles on the screen.


I only do not understand why 4:3 and 16:9 crop bars are drawn over zebras and focus peak - I can set the area of those overlays to whatever I want and crop bars will always show only clear image below them (with 4:3 crop bars including 3px and 2px space at the inner edge). Are those really Canon overlays or ML ones? I'll post a screenshot of these spaces.
Title: Re: 500d development
Post by: a1ex on 06 / December / 2011, 14:16:36
The bars are from Canon (they are gray). ML only draws black bars on 50D (because it needs to kill all Canon graphics, they are too aggressive there) and it darkens them on 550D (users like it better that way, looks like on 60D/600D).

I would propose some refactoring: let's define the area where we should draw zebras, peaking and other stuff in the os structure (similar to x0/y0/x_max/y_max). This will simplify the for loops quite a bit.

Something like:
Code: [Select]
for(int y = os.yv0; y < os.yv_max; y += 2 )
    for (int x = os.xv0; x < os.xv_max; x += 2)
       ...

And those 4 parameters will take different values according to current mode (video 16:9, video 4:3, photo, screen layout...)

For debugging, call "draw_cropmark_area" to draw a rectangle with an X showing the rectangles. It now shows the visible LiveView area (including gray bars) and the recording buffer area (which sometimes is smaller, and may or may not include the gray bars).
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / December / 2011, 01:04:36
I would propose some refactoring: let's define the area where we should draw zebras, peaking and other stuff in the os structure (similar to x0/y0/x_max/y_max). This will simplify the for loops quite a bit.

Something like:
Code: [Select]
for(int y = os.yv0; y < os.yv_max; y += 2 )
    for (int x = os.xv0; x < os.xv_max; x += 2)
       ...

And those 4 parameters will take different values according to current mode (video 16:9, video 4:3, photo, screen layout...)

OK, I am working now on a more complex changeset to change all code using the "safe LV area" and will probably split it up to a few separated patches.

Do you think, it is better to define also os.xv_ex or to use (os.xv_max - os.xv0) instead when needed?

Also, can I ask you, Alex, about the bar_x and bar_y variables at the end of update_vram_params()? Does it mean that other cameras than 600D and 500D have the grey crop bars visible only when recording? And may I ask why the 500D's bar_* are set to zero?
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 01:50:40
On most cameras, the gray bar is always visible, but the recording buffer (HD) is 3:2 when the camera is idle (otherwise is 16:9). bar_x and bar_y basically say if the recording buffer (not directly visible) includes the bars or not.

In 600D it never includes the bars in video mode. In 500D it seems to always include them (check with silent pictures). You told me focus peaking is working with that setting (both at zero) :P

Edit: I've noticed two glitches from this video:

- Rack focus direction seems reversed, so the user had to move the focus manually back to the starting point (couldn't reproduce on 550D)
- Recording did not start automatically (but it did stop); that's movie_start in shoot.c . Maybe button code for recording is incorrect?

Canon 500D FREE Rack and Follow Focus (http://www.youtube.com/watch?v=VVz0OG1sJuw#ws)
Title: Re: 500d development
Post by: brady5885 on 07 / December / 2011, 02:50:18
Alex, i have followed instructions to put ML on my 500d/T1i.... i have updated the firmware, removed battery, put ML onto my card, replaced card and battery, but now my camera wont switch on, i tried formatting the card, and a card i have used previously on the camera.

I think i was missing AUTOEXEC.BIN files now looking on the net, but im still unsure on what to do!
Exactly what files do i need and where do i find them(card is formatted), please help, im a noob to all this so please keep it simple and with links if possible! im goin on holiday in a few days and need the camera :(

Hope you can help!
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / December / 2011, 08:23:30
brady5885, you have to download the zip file from http://www.google.com/url?sa=D&q=http://bitbucket.org/hudson/magic-lantern/downloads/magiclantern-2011.11.11.550D.60D.600D.50D.500D.zip&usg=AFQjCNGY3uo8WD_m0E_1AsSrGVXT9G40zQ (http://www.google.com/url?sa=D&q=http://bitbucket.org/hudson/magic-lantern/downloads/magiclantern-2011.11.11.550D.60D.600D.50D.500D.zip&usg=AFQjCNGY3uo8WD_m0E_1AsSrGVXT9G40zQ) and simply follow the steps in the wiki page (http://magiclantern.wikia.com/wiki/500D/T1i_Installation#First-time_installation (http://magiclantern.wikia.com/wiki/500D/T1i_Installation#First-time_installation)) or in the pdf file from the zip.

You have to unzip all files from the zip archive on the root of the card except the pdfs and *.fir files (you only need the 500D firmware file for once to set the bootflag in the camera and make the card bootable, after this installation process, you can safely delete it).
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / December / 2011, 10:06:45
Edit: I've noticed two glitches from this video:

- Rack focus direction seems reversed, so the user had to move the focus manually back to the starting point (couldn't reproduce on 550D)
- Recording did not start automatically (but it did stop); that's movie_start in shoot.c . Maybe button code for recording is incorrect?

Well, I really don't know how the rack focus should work as it behaves somehow strangely.
After I have set the end point, it of course didn't move to the start (should it? how?) and no, recording didn't start automatically after any of the three controlling buttons was pressed. Actually, after pressing the button, the movie screen gets a bit corrupted - Canon 16:9 crop bars are not shown at all also with the blinking red battery icon - maybe they have been killed? - there's a gray non-transparent bar on the top with a white ~1px line below it and some ML info bars in it on black background, normally not shown at all or they are drawn below audio meters, not sure, so they are visible only for a moment when the shutter is half-pressed) ..and well, now I'm not even able to set the end point anyhow, I give up.

Edit:
The BGMT_LV is set to 0xf for 500D which is the same as BGMT_Q so it should work fine.
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 10:48:13
I think I found the problem: the recording button is actually used in menu navigation in 500D. In newer cameras, the LiveView button is free (so you can start recording while you are in the menu).

You can try it.

The bars do not match Canon's because ML is in "menu hidden" mode, which is not tweaked at all for 500D. It just mimics the layout of 3:2 cameras.
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / December / 2011, 12:35:12
I am finally done with the live view safe area patch for all ML overlays that use it - there are much more functions that had to be modified than only zebras with focus peak.

I have also corrected the os.y_ex for 500D as it was 1px less than it really is and a new problem rose. Since the value is 425px (odd number) and zebras/focus peak seem to calculate two pixel lines in one cycle, it has the ability to overdraw the first ML info bar line.

Second problem, the crop bars are not of the same width/height - neither 16:9 ones nor 4:3 ones. Therefore some computations that are assuming equal sizes of both bars are plus or minus wrong. It would be great if we could verify their dimensions on various cameras. And I may take a look at the computations and correct them e.g. by using always the top/left bar instead of the bottom or right one.

I think I found the problem: the recording button is actually used in menu navigation in 500D. In newer cameras, the LiveView button is free (so you can start recording while you are in the menu).

You were right that the button is assigned to navigation in ML menu, however, your patch doesn't fix the automatic recording.
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 12:48:51
Probably it's best to leave 1px below the zebras then; I don't think it's something that matters.

One pixel in those cameras is much smaller than one pixel on the monitor; they have around 300dpi (288dpi in 550d). So I don't think we should make a big fuss about this.
Title: Re: 500d development
Post by: kyselejsyrecek on 07 / December / 2011, 12:55:31
Yes, I know. Letting it as it is isn't anyhow better, however. The infos in ML bottom bar shift to the lv image area then.
Title: Re: 500d development
Post by: brady5885 on 07 / December / 2011, 13:42:25
brady5885, you have to download the zip file from http://www.google.com/url?sa=D&q=http://bitbucket.org/hudson/magic-lantern/downloads/magiclantern-2011.11.11.550D.60D.600D.50D.500D.zip&usg=AFQjCNGY3uo8WD_m0E_1AsSrGVXT9G40zQ (http://www.google.com/url?sa=D&q=http://bitbucket.org/hudson/magic-lantern/downloads/magiclantern-2011.11.11.550D.60D.600D.50D.500D.zip&usg=AFQjCNGY3uo8WD_m0E_1AsSrGVXT9G40zQ) and simply follow the steps in the wiki page (http://magiclantern.wikia.com/wiki/500D/T1i_Installation#First-time_installation (http://magiclantern.wikia.com/wiki/500D/T1i_Installation#First-time_installation)) or in the pdf file from the zip.

You have to unzip all files from the zip archive on the root of the card except the pdfs and *.fir files (you only need the 500D firmware file for once to set the bootflag in the camera and make the card bootable, after this installation process, you can safely delete it).

Hello thank you for your first reply, but i just want to make sure that im correct as i fear i have ruined my camera!

So after Unzipping the file you linked me to and deleting the PDFs and the *fir files not associated with my camera im left with,   cropmks, doc, autoexec (mplayer video file), FONTS.DAT, ml-500d-111.fir, README, rectilin.lut............. are they all the correct files of am i missing or do i have too many?

Next they all go into the root of my formatted 8gb HDSC card .... so like .... 'G:/'.....
I have tried the above, and also tried it with out the cropmks and doc file, still nothing, this is what i did the first time (all 7 files) and it wouldnt boot.

You talk about 'set the bootflag in the camera and make the card bootable' is this done automatically with the .fir file? or do i have to do something else???
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 13:59:08
Did you follow the steps from the install guide? (including those in Troubleshooting section)
Title: Re: 500d development
Post by: brady5885 on 07 / December / 2011, 14:09:23
Did you follow the steps from the install guide? (including those in Troubleshooting section)

Yes i thought i followed the instructions, as per you troubleshooting, i also tried turning it on without a card, and with a card that didnt have ML onto it.

I may not have 'Restore your camera to default settings (Clear all camera settings, from Wrench 3 menu)' after firmware update/before putting ML onto the card....

If thats what i have done is there any way of saving it?
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 14:15:02
What happened when you ran "firmware update" ? (describe as detailed as possible)

Did you try to remove the battery? Is it charged? Are all the doors properly closed?
Title: Re: 500d development
Post by: brady5885 on 07 / December / 2011, 14:29:22
I apologise for wasting time and space on this forum,

I have redone it all again and seems to work, im sure i did it all the same but it now works!!!!

Phewwww, no longer regretting messing with it, ML looks awsome!

Thanks!
Title: Re: 500d development
Post by: a1ex on 07 / December / 2011, 16:43:54
Is bracketing still working with latest changeset?
Title: Re: 500d development
Post by: g1_ on 08 / December / 2011, 08:11:46
Not sure if this is a bug or if I'm just doing it wrong (I'll consult the manual when I get home from work).

I've got the first version with manual exposure. It seems that silent pictures aren't working? You take the picture and it displays the result on the screen, but if you then review pictures it doesn't seem to save it to the memory card.
Title: Re: 500d development
Post by: kyselejsyrecek on 08 / December / 2011, 10:59:52
Is bracketing still working with latest changeset?

Yes, HDR bracketing is still working.

Not sure if this is a bug or if I'm just doing it wrong (I'll consult the manual when I get home from work).

I've got the first version with manual exposure. It seems that silent pictures aren't working? You take the picture and it displays the result on the screen, but if you then review pictures it doesn't seem to save it to the memory card.

The pictures are saved in a with a .422 suffix so that the camera doesn't recognize them in the DCIM/***CANON folder and they have to be converted using the 422-jpg.py script (https://bitbucket.org/hudson/magic-lantern/raw/b98d038b4b09/src/422-jpg.py or Windows .exe https://bitbucket.org/hudson/magic-lantern/downloads/422-jpg-v2.exe)

BTW, I was not able to convert silent pics, it gives me an error that the file size is unknown (Alex?):
Code: [Select]
Traceback (most recent call last):
  File "/usr/local/bin/422-jpg.py", line 136, in <module>
    convert_422_bmp(input, change_ext(input, ".jpg"))
  File "/usr/local/bin/422-jpg.py", line 112, in convert_422_bmp
    raise Exception, "unknown image size: %d" % len(data)
Exception: unknown image size: 1143296
Title: Re: 500d development
Post by: a1ex on 08 / December / 2011, 11:58:06
Try this one:
https://bitbucket.org/hudson/magic-lantern/raw/tip/src/422-jpg.py
Title: Re: 500d development
Post by: kyselejsyrecek on 08 / December / 2011, 12:06:27
Yes, that one works :-)
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 12:11:14
Yet the number of bytes is exactly the same for both...
I will run a diff.
How many different versions are there?
So far I've counted 5.
Confusing to users!

The files are identical.  Did I download the same file twice?
How does downloading the same file solve your problem?
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 12:18:26
https://bitbucket.org/hudson/magic-lantern/raw/b98d038b4b09/src/422-jpg.py
and
https://bitbucket.org/hudson/magic-lantern/raw/tip/src/422-jpg.py
are the same file!

I did a byte by byte diff, after cutting and pasting from the browser.
So they are exactly the same.

Neither one of them is capable of converting a 422 file
where the file size does not match the W x H x 2 as is often the case. 

Does this python script work with Hires 5x5 images?
Title: Re: 500d development
Post by: kyselejsyrecek on 08 / December / 2011, 12:20:48
Well, I might have used an old revision by mistake. They are identical, really.
Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 12:48:44
Yes, the script does convert all images, but the only ones that are useable are 928x616 and 1576x1048 and only silent picture scans and single silent picture, non of the hi-res are useable or the low res ones if you try capturing at 5x or 10x, they all convert but are scrambled images, it doesnt seem to be a highres issue, since you get the same scrambled image zooming and the hires shots zoom in to create the image it seems its just while zoomed it gets scrambled, if that was fixed then all images would look fine. 8/
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 12:59:28
What do you mean hi-res is not usable?  They do not look like normal pictures?  Oh you mean 5x5.  Some of the 1576x1048 HD do work for me!  What does 5x5 look like for you?  Can you post one?  Or is it just looking like noise?  A broken TV?  There is no need to post that.

Do you get purple and image shifts sometimes with 1576x1048?

I have an old version of this script that works for 5x and 10x. 

I think the filesize matches one of the if cases in the python code, but the resolution is wrong.  In other words the buffer is saved in ML with a different resolution, but the file size is not adjusted to match the actual resolution of the image.  That is why these modes look scrambled.

Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 13:09:21
What do you mean hi-res is not usable?  They do not look like normal pictures?  Oh you mean 5x5.  Some of the 1576x1048 HD do work for me!  What does 5x5 look like for you?  Can you post one?  Or is it just looking like noise?  A broken TV?  There is no need to post that.

Do you get purple and image shifts sometimes with 1576x1048?

I have an old version of this script that works for 5x and 10x. 

I think the filesize matches one of the if cases in the python code, but the resolution is wrong.  In other words the buffer is saved in ML with a different resolution, but the file size is not adjusted to match the actual resolution of the image.  That is why these modes look scrambled.


2x2 to 5x5 are are scrambled like a broken tv, you can tell the image is there is all scrambled like a tvs horizontal hold is out of wack. these modes use zoom to create there images, and hd works fine but if you zoom they get scrambled, so basicaly anything that does not use zoom works and shows a normal image, anything thats zoomed or uses zoom is horizontal hold out of wack image.

And yes, sometimes you get image shifts because the picture is taken in the middle of a scan so you get the split image effect.
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 13:20:26
According to Alex these horizontal lines occur in Burst mode only.  I'm talking about where half the picture is purple and it's shifted nearly 500 pixels to the right in Single mode.  You won't notice this if you only take a few pictures, one at a time.  You will see it when you take 100's.

Hires 5x5 works for me except these 3 major issues:
1) Each of the 25 images are shifted by a few pixels so they don't line up perfectly
2) Horizontal lines in each
3) Sometimes one of the images is brighter than the rest

I understand that not using a tripod would cause all of these.
But I am using a very sturdy tripod with no wind or tree movement (inside).
Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 13:30:02
According to Alex these horizontal lines occur in Burst mode only.  I'm talking about where half the picture is purple and it's shifted nearly 500 pixels to the right in Single mode.  You won't notice this if you only take a few pictures, one at a time.  You will see it when you take 100's.

Hires 5x5 works for me except these 3 major issues:
1) Each of the 25 images are shifted by a few pixels so they don't line up perfectly
2) Horizontal lines in each
3) Sometimes one of the images is brighter than the rest

I understand that not using a tripod would cause all of these.
But I am using a very sturdy tripod with no wind or tree movement (inside).

where did u get the script that shows 5x5 un scrambled?
Title: Re: 500d development
Post by: a1ex on 08 / December / 2011, 13:48:55
To avoid the shifting, adjust line 78.

To get constant brightness, turn on ExpSim. ML should do this by itself... in theory.

In the near future I'll add some headers to silent pictures, to declare their size and other parameters there. So the converter will be pretty generic, not camera-specific.
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 15:31:15
I am trying to adjust line 78 but there is missing image information.  In other words when using cx,cy= -60, -40 there are black lines between the individual panes of the window.  Note the minus signs.  This way lines line up the way they should.  But instead of each zoom image overlapping, there is missing data between them.  Columns 2,3,4,5 have a different spacing then between 1,2.  The same with the rows.  Between 1,2 the correct parameter is about +60 (overlapping).  Between the rest -60, displaying the black lines of missing data.  There is a black space around the top and left of the final JPG, about 30 pixels.  I'd like to work with you on this.  Can you change the ML code to fix the spacing between each individual 25 images?
Title: Re: 500d development
Post by: a1ex on 08 / December / 2011, 15:40:53
First I need to know if a simple silent pic taken in x5 mode works properly.

It's declared as 944x632 in vram.c (add this resolution to the convertor).
Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 16:06:15
not on
First I need to know if a simple silent pic taken in x5 mode works properly.

It's declared as 944x632 in vram.c (add this resolution to the convertor).
not on my cam, on my cam a simple silent picture at 5x mode is scrambled like horizontal hold out of wack
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 16:24:55
944x632 is correct, except the file is truncated to 944x605.  Someone forgot to write the last 27 rows.
Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 16:36:36
Can anyone tell me why my images are scrambled, i use the latest version updated in twitter and i use the script from inside the src folder. My images are scrambled when taking a silent picture in normal mode at 5x and 10x but fine unzoomed
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 16:43:32
It's a bug we are working on.  I'm using an old version of ML and a script from way back in May.  It appears nobody has ever gotten this to work.  When Alex gets the images to overlap in Hires 5x5 I will rewrite the script and post it here.
Title: Re: 500d development
Post by: mk11174 on 08 / December / 2011, 16:53:38
It's a bug we are working on.  I'm using an old version of ML and a script from way back in May.  It appears nobody has ever gotten this to work.  When Alex gets the images to overlap in Hires 5x5 I will rewrite the script and post it here.
Ahh, sounds good thanks!!!
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 17:22:32
I've noticed a problem in Turn off LCD and LV mode together with Hires 5x5.
The first 12 zoom pictures are different as you would like,
then it repeats the last one from 13-25 because LV is off.
Title: Re: 500d development
Post by: Ulysses on 08 / December / 2011, 17:24:11
A1ex, any chance FPS Override to work on the 500D?
Title: Re: 500d development
Post by: Gary on 08 / December / 2011, 17:51:20
By default why is HDR enabled?
This could be confusing to a new user.
Title: Re: 500d development
Post by: gedas5 on 09 / December / 2011, 12:30:16
I've been enjoying ML since Coutts released new version and A1ex fixed few issues? Thanx guys!

But i'm not sure if Bulb Ramping is working properly with Intervalometer...It does not change ISO automatically, only the Shutter Speed...anyone got any issues with it?
Title: Re: 500d development
Post by: Ulysses on 10 / December / 2011, 07:06:14
Tried the new build but que Zoom + button doesnt launch Magic Zoom when recording. When iddle it just works fine. Did some quick tests and Magic Zoom didnt flicker.
Title: Re: 500d development
Post by: mk11174 on 10 / December / 2011, 09:57:55
Alex, what do you need from us 500d users to attempt to get fps override going on our cam? I am sure we all want to mess with it too even though its only in testing phase 8]
Title: Re: 500d development
Post by: Gary on 10 / December / 2011, 10:31:48
Alex, let me know when you're ready for me to test Hires.  Are you stuck, or just busy adding 10 new features to ML every week?
Title: Re: 500d development
Post by: a1ex on 10 / December / 2011, 10:34:37
FPS may not work on older cameras (only 600D and 60D have the debug strings for this).

Silent pics: see post 2049 and the one from Coutts (don't know the exact number).
Title: Re: 500d development
Post by: mk11174 on 10 / December / 2011, 10:43:45
Alex, do you know what the number 1 symbol is for drawn to the right of white balance on the ML bottom bar, its in a pink box as well, only shows in movie mode with your new build with the few bug fixes?
Title: Re: 500d development
Post by: a1ex on 10 / December / 2011, 10:51:14
Yes, I know.
Title: Re: 500d development
Post by: kyselejsyrecek on 10 / December / 2011, 10:52:13
Here's the LV safe area patch for ML overlays including a fix for background of ML bars.

COLOR_BG may be replaced with COLOR_EMPTY in TOPBAR_BGCOLOR, bmp.h:248. I have used COLOR_BG to make the information readable on bright images.
Title: Re: 500d development
Post by: a1ex on 10 / December / 2011, 11:27:46
Looks great. I'll try it on the HDMI monitor (this will take a while, since there are many modes) and apply it.
Title: Re: 500d development
Post by: mk11174 on 10 / December / 2011, 12:37:46
I noticed when re-enabling the flash button in Const.h 500D file, lines 91-94 and turning off lines 100-103, I noticed just as kyselejsyrecek mentioned, it works, but I noticed when you press the up, down, right, buttons, it acts like the flash button is being pressed again, the left button has no effect on it.
Title: Re: 500d development
Post by: a1ex on 10 / December / 2011, 12:51:12
To see all GUI events, look in debug.c, spy_event. You may the first "if" into "if(1)" to display them always.
Title: Re: 500d development
Post by: mk11174 on 10 / December / 2011, 13:23:55
To see all GUI events, look in debug.c, spy_event. You may the first "if" into "if(1)" to display them always.
it seems the flash button changes solid to 3f at address 1000020 all other buttons when press start at there own id like 3d with no address but then real fast flicker to 3f 10000020, so it looks like all buttons, not just the up, down, and right do the same thing except left which stays solid on 3f with no address.

Not sure what this means but: I put all flash button code back to normal which disables the feature on the 500D to make ISO, Kel and Display Profile change, I then checked the button codes with the spy event and all buttons but left button dont show the normal info
Left = 39      0/
all other buttons change from 3a to 3f   1000020/ unless you hold the flash button down, then all other buttons on cam show there own number  with no address
right = 37  0/
up = 3b    0/
down = 3d   0/
and once you press any other button the 3f comes on and stays on except left which is 39 and when left is released it goes back to 3a
If your holding flash button and press say right it will show 37 then go to 38 if you let go of right but keep flash button in, all other go to the next higher number, like up goes from 3b to 3c down from 3d to 3e but without flash button held it goes to 3f and the address is 20/ from 10000020/ while pressed.
Title: Re: 500d development
Post by: mk11174 on 10 / December / 2011, 18:13:27
So, is there any certain reason why the Left key is the only button that gives a normal reading in spy event? why all others are 3f 0x1000020 arg 9 unless u press and hold flash button then arg 9 changes to arg 0 and address changes to 0x20? Just curious if its just how it has to be or is it not normal even though everything is working?
Title: Re: 500d development
Post by: a1ex on 11 / December / 2011, 01:04:45
Look at handle_buttons_being_held (debug.c) and try returning 1 for BGMT_FLASH_MOVIE. It may solve the mistery.
Title: Re: 500d development
Post by: mk11174 on 11 / December / 2011, 02:46:29
Look at handle_buttons_being_held (debug.c) and try returning 1 for BGMT_FLASH_MOVIE. It may solve the mistery.
no, 8/ doesnt seem to change the effect, i dont even know y it bothers me, lol, sensor shortcut is perfectly fine for doing the iso and kel, but ever since i started reading the spy_events, it got me curious y it is acting like that, just seems so weird that left key is the only key that displays normal results, any other button is acting like flash button is being pressed and it always says 3f unless the left key is pressed then it stays on 3a till any other key is pressed on cam then goes back to 3f, seems so strange
Title: Re: 500d development
Post by: a1ex on 11 / December / 2011, 02:59:59
Try editing handle_buttons in gui.c:
- Comment out lines 38-45 (i.e. starting from handle_common_events_by_feature )
- Try catching flash button events in a clean environment (maybe just call handle_buttons_being_held and print the status of flash button)


Title: Re: 500d development
Post by: mk11174 on 11 / December / 2011, 03:24:30
Try editing handle_buttons in gui.c:
- Comment out lines 38-45 (i.e. starting from handle_common_events_by_feature )
- Try catching flash button events in a clean environment (maybe just call handle_buttons_being_held and print the status of flash button)



well I got the commit out part fine, lol dont know what code to type on the catching flash button event part 8/ sorry, im just a newb lol
Title: Re: 500d development
Post by: Gary on 11 / December / 2011, 11:13:48
I thought I answered your question about 926 x n.  I don't see Coutts post on this topic.  What is the next step?
Title: Re: 500d development
Post by: a1ex on 11 / December / 2011, 12:15:49
Next step is to make silent_pic_take_sweep generic (i.e. compatible with all camera generations, not just 550D/60D/600D).

Basically you need to replace SENSOR_RES_X and SENSOR_RES_Y with 5 x size of one frame (i.e. size of hd_buffer), and 1024x680 with the size of one frame. Then adjust things in the converter until you get proper alignment.
Title: Re: 500d development
Post by: mk11174 on 11 / December / 2011, 12:38:37
Try editing handle_buttons in gui.c:
- Comment out lines 38-45 (i.e. starting from handle_common_events_by_feature )
- Try catching flash button events in a clean environment (maybe just call handle_buttons_being_held and print the status of flash button)



Never mind, I will just leave well enough alone, if it aint broke dont try to fix it lol.
Title: Re: 500d development
Post by: Gary on 11 / December / 2011, 21:26:38
Alex, you do the first 2, and I'll do the 3rd!
Title: Re: 500d development
Post by: mk11174 on 11 / December / 2011, 23:56:34
so it seems 944 x 632 is the setting in vram.c to change to for video_mode_resolution == 1 ? to make it silent picture take a picture in 5x mode, but then magic zoom gets scrambled, so how can it be set so it stays in 928x616 mode untill u try to take a 5x mode picture????
Title: Re: 500d development
Post by: Coutts on 12 / December / 2011, 09:06:33
IIRC, the flash button and AV button send identical events in movie mode and there's no way to distinguish them (i think i found this out a few months ago), i never figured out a way to adapt the flash button shortcuts on the 500d.

@mk11174 find the dimensions of the HD / LV buffers in zoom mode. run:
dump_big_seg(4, "4.bin");
dump_big_seg(4, "4_1.bin");

to get 2 copies of the 0x4 range of memory on the card. then use img.py to locate buffers and determine their dimensions:
http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example (http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example)
Title: Re: 500d development
Post by: mk11174 on 12 / December / 2011, 10:35:20
IIRC, the flash button and AV button send identical events in movie mode and there's no way to distinguish them (i think i found this out a few months ago), i never figured out a way to adapt the flash button shortcuts on the 500d.

@mk11174 find the dimensions of the HD / LV buffers in zoom mode. run:
dump_big_seg(4, "4.bin");
dump_big_seg(4, "4_1.bin");

to get 2 copies of the 0x4 range of memory on the card. then use img.py to locate buffers and determine their dimensions:
http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example (http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example)
Ok, I guessing I will come up with same result you have right, or maybe some differ cause maybe cam differ? All your resolutions worked on your vram page just fine, I finally figured out where to program them into the code, lol, only thing I couldnt figure out is how to have both 944x632 for zoom mode and 928x616 be used at same time cause for 944x632 if set for any of the 3 res to get a silent picture while in zoom mode, you get a scrambled image out of zoom and of coarse magic zoom is then scrambled, so i gave up and just set 944x632 for 640x480 mode since i dont use that mode anyway, so if i want a silent picture in zoom mode i just switch to that resolution cause it dont matter if magic zoom is scrambled cause i am not going to be using it there anyway. Only thing is, I thought getting a zoom picture to finally be unscrambled on my cam would solve the hi res problem of been scrambled, it didnt, my hi res versions are scrambled still. I added 944x632 to the convertor for the single versions to convert and also set it up so i get the preview on cam, but am i suppose to change something somewhere to make the hi res unscrambled, it converts and all to a jpg, just all scrambled still with thick black borders in betwen each section???
Title: Re: 500d development
Post by: mk11174 on 12 / December / 2011, 10:40:24
And to bad theres prob no way to figure out res and pitch setting for alexs idea of zooming while recording, that was a neat idea, works fine in 640x480 with audio off buffer dont seem to fill up, i set to zoom x5 in the xx_test, I went to 640x480 press record then went to xx_test to engage zoom it zoomed it looked fine, but playback is scrambled once zoomed, I tried all ur vram settings on all modes in the code but none seem to have any effect on it, but cool idea of his if there was a address and pitch that was findable to use for it.
Title: Re: 500d development
Post by: rebelT1i on 12 / December / 2011, 15:50:51
Thanks again to everyone working on this, I wanted to share a short clip I took using the focus peaking to keep the subject in focus, I got confused for a second but I am really happy with it so far! keep it up

Galapagos tortoise Close up. (http://www.youtube.com/watch?v=amMvTUG-Hqs#ws)
Title: Re: 500d development
Post by: Gary on 12 / December / 2011, 15:54:33
@mk - Did you do these?
> Basically you need to replace SENSOR_RES_X and SENSOR_RES_Y with 5 x size of one frame (i.e. size of hd_buffer), and 1024x680 with the size of one frame.

If so I will fix the script.  Send me the autoexec.bin.
Title: Re: 500d development
Post by: mk11174 on 12 / December / 2011, 19:13:53
IIRC, the flash button and AV button send identical events in movie mode and there's no way to distinguish them (i think i found this out a few months ago), i never figured out a way to adapt the flash button shortcuts on the 500d.

@mk11174 find the dimensions of the HD / LV buffers in zoom mode. run:
dump_big_seg(4, "4.bin");
dump_big_seg(4, "4_1.bin");

to get 2 copies of the 0x4 range of memory on the card. then use img.py to locate buffers and determine their dimensions:
http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example (http://magiclantern.wikia.com/wiki/VRAM/550D#Step-by-step_example)
hey Coutts, thanks, I actually got it going, it took some time trying to gwet it going cause i could not get Ubuntu to install pylab, so i tried on windows, but that was saying could not compare the to arrays so back to Ubuntu and it worked with python 2.6 installed, i got the plot part, this might be dumb question but is the plot suppose to turn into image as u adjust?

Update: scratch that, i just noticed the images being created in my home folder, i was looking on my desktop, lol sorry.
Title: Re: 500d development
Post by: mk11174 on 12 / December / 2011, 19:42:07
@mk - Did you do these?
> Basically you need to replace SENSOR_RES_X and SENSOR_RES_Y with 5 x size of one frame (i.e. size of hd_buffer), and 1024x680 with the size of one frame.

If so I will fix the script.  Send me the autoexec.bin.
i tried but wasnt sure if i was doing it on the right one or the right way, wasnt sure if i was suppose to replace the 1024x680 or the whole line: and there was other 1024x680 a few lines down didnt know if those were suppose to be replaced as well.

As far as the Sensor_Res change, is it the one in shoot.c or const.h?  if its the one in shoot.c Do I erase the code (SENSOR_RES_X - NC * 1024) / 2; and put the number in its place or just change the 1024 in it to the 5x number?
Title: Re: 500d development
Post by: mk11174 on 12 / December / 2011, 22:49:43
ok, i did all the steps, on 1 picture, now, do i look for more then 1 picture in the bin, or just the one at the 10000000 position, and also, do i have to re dump the bin files in every mode, so like do a dumb during zoom, and another no record then record, etc and recheck the bin for there info again like i just did. Its pretty cool how it all works though isnt it, putting in the right settings till u have a full image, kinda fun 8]
Title: Re: 500d development
Post by: mk11174 on 13 / December / 2011, 09:45:49
Hey Alex, first off, nice clean update!!! And now I see you fixed the way the buffers work so now in 5x mode it uses 944x632 and in normal it uses 928x616 which now fixes the silent picture 5x zoom problem of scrambled images on my cam, maybe ur next update you can add else if (size == 944*632*2)  { w = 944;  h = 632; } to zebra.c for the 500D users to get the 422 quick preview going when taking a silent picture in zoom mode, I already set mine up, but I am sure other users will like to have it set that way now that its working right. No luck with Hi-Res though still all scrambled separated boxes.

Update never mind on the Hi res, I got it to work, 5x5 creates 4760x3200 image on my cam, I just edited the Const.h
#define SENSOR_RES_X 4720
#define SENSOR_RES_Y 3160

Then is Shoot.c I changed all the 1024x680 from lines 1064 to 1080 and set the to 944x632

Then in 422-jpg.py script I changed all the 1024x680 to 944x632  then in line 66 I changed  NC to 952 and NL to 640.

All converted fine except some overlapping in a few places, but no scrambled areas at all finally 8]

Not sure if I had to go through all this, but it worked when nothing else would.

Also take note to add   
else if (size == 944*632*2)  { w = 944;  h = 632; } // 500d x5 x10 
in the area of line 4464 that will give you previews of zoom silent pictures, and also make sure you add     
elif len(data) == 944*632*2:        #x5 zoom
        w, h = 944, 632
to your 422-jpg.py script in the 500D section, and double check you have
elif len(data) == 1576*632*2:      #3.3MP from HD buffer in 1080p mode (same size recording and idle)
        w, h = 1576, 632
in there as well just to have all the resolutions ready for conversion.

Hope this helps any newbies like me out there.
Title: Re: 500d development
Post by: Gary on 13 / December / 2011, 12:42:42
Please post your autoexec.bin for testing.  Also the 422 python script.  Maybe I can fix the overlapping.  At what point will Alex include this in the official build?  Before or after we fix the overlapping?
Title: Re: 500d development
Post by: pzotalis on 13 / December / 2011, 15:08:49
Hello,

I'm new in ML. I have a 500D and still testing this great future you are developing. Sorry my english, I'm from Argentina.

I have a suggestion to make regarding the ISO options in Photo mode. Sometimes I think it would be great to be able to set a limited Auto ISO by establishing minimun and maximun ISO.
For instance, I believe that 60D has Adjustable Auto ISO limit.

For example, setting 400 as min and 1600 as max.

It would be a usefull tool.

Thanks for all the work you are doing, the 500D owners really appreciate!!
Title: Re: 500d development
Post by: mk11174 on 13 / December / 2011, 16:02:11
Please post your autoexec.bin for testing.  Also the 422 python script.  Maybe I can fix the overlapping.  At what point will Alex include this in the official build?  Before or after we fix the overlapping?
Not sure if Alex will include this in his updates, I am sure if he feels its nessacery he will. Here are both the edited 422-jpg.py script and the autoexec.bin my bin is everything from Alex latest update except the addition of what I posted plus for me, i dont have any use for lcd brighness and volume control and since our flash button is useless with ML I have the iso and kelvin set for sensor shortcut, hope thats ok.

http://www.mediafire.com/file/3fq43odeoho7j89/autoexec.bin (http://www.mediafire.com/file/3fq43odeoho7j89/autoexec.bin)
Title: Re: 500d development
Post by: Gary on 14 / December / 2011, 15:59:24
I think you sent me the wrong python script?
or the wrong autoexec?
They do not match.
What mode should I use?
P mode on dial then Liveview or Video mode idle?
The resulting filesize is the same for both.
Maybe it is user error and I need some instructions.

The size of my file is 29,830,400
What should it be?
Line 138 is elif len(data) % 1024*680*2 == 0:
There is only 1 call to convert_422_hires(input,output)
Unfortunately 29,830,400 mod 1024*680*2 not = 0 so it raises an exception in line 141:
Unknown image size.

I should change to 944,632 in how many places?
Title: Re: 500d development
Post by: mk11174 on 14 / December / 2011, 16:23:23
I think you sent me the wrong python script?
or the wrong autoexec?
They do not match.
What mode should I use?
P mode on dial then Liveview or Video mode idle?
The resulting filesize is the same for both.
Maybe it is user error and I need some instructions.

The size of my file is 29,830,400
What should it be?
Line 138 is elif len(data) % 1024*680*2 == 0:
There is only 1 call to convert_422_hires(input,output)
Unfortunately 29,830,400 mod 1024*680*2 not = 0 so it raises an exception in line 141:
Unknown image size.

I should change to 944,632 in how many places?
hmm, ur right it is the wrong script, i reuploaded it right after i sent the first link, i guess i sent it to fast cause it kept the wrong one, ill re up it, the autoexec is the right one though just got to resend script, sorry.

Here is the correct 422-jpg script : http://www.mediafire.com/file/xoougnyck2f9x3x/422-jpg.py (http://www.mediafire.com/file/xoougnyck2f9x3x/422-jpg.py)
Title: Re: 500d development
Post by: mk11174 on 14 / December / 2011, 18:24:57
As far as I can see, the overlaping doesnt seem to be in the script, cause if u use the script to separate all the section by a few pixels you can see that theres no way they will ever line up, it looks more like a scan line issue that is captured during most of them, funny, 3x4 and 3x3 seem perfect so far, no scan line caught yet, all other modes seem to catch one, the shift has nothing to to with the individual images its just usuall in 1 or 2 places across the screen just like scanlines, take 3x3 and 3x4 see if urs is fine every try like mine, just might be lucky no scan line happened during them though.

update, lol, was wrong they all have scan line issues, maybe im wrong, but they sure seem like scan lines to me, no matter how much you even try to correct the image, sometimes the scan line is only on one side so as you adjust the settings in the script all the section will adjust evenly so if you try to fix the bad scan line area the rest of the image will get messed up.
Title: Re: 500d development
Post by: mk11174 on 14 / December / 2011, 19:56:56
Hey Alex, just wondering if u can help me understand something, to see if i got it right in my head??? Is the reason we can not force a record at 5x zoom in movie mode because we can not tell the cam to record a movie on a differ buffer and in movie mode the cam is recording to its default movie record buffer even if we force zoom, and the only thing we can do is capture the buffer and do a print out which is to slow obviously for an actual movie, is this how things work on the cam and with ML? Hope u can answer, I am just trying to understand how this all works.
Title: Re: 500d development
Post by: Gary on 14 / December / 2011, 20:01:46
Thanks!  I think I understand what's going on, give me a bit of time to fix it.
Title: Re: 500d development
Post by: a1ex on 15 / December / 2011, 01:06:17
For 5x recording, I think it will work if you disable sound. The FPS hack requires the same thing (otherwise goes to buffer overflow quickly).

The video can be "deinterlaced", but I'm sure there will be heavy compression artifacts.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 01:27:31
For 5x recording, I think it will work if you disable sound. The FPS hack requires the same thing (otherwise goes to buffer overflow quickly).

The video can be "deinterlaced", but I'm sure there will be heavy compression artifacts.
Yeah, I already tried it, I didnt have any issues with buffer cause I already had audio turned off, but like you explain in a topic awhile back, the pitch is off so it records a scrambled video, is there a way to set a new pitch then during that mode or is it impossible because its recording to the memory card through camera not ML, is it unadjustable other then in something like silent picture type captures. My code is all adjusted right now for ML silent pictures, I can capture good 5x stills fine, but even though the video looks fine while recording at a forced 5x mode, it still plays back scrambled.
Title: Re: 500d development
Post by: a1ex on 15 / December / 2011, 02:18:16
The general idea to unscramble it is to load every frame (maybe in 422-jpg), convert it to plain RGB data and then encode it with a different pitch.

In memory, they are stored like this:

Code: [Select]
[ a b c
  d e f
  g h i ] => [a b c d e f g h i]

That would be with a pitch of 3. If we change it to 4, we'll get:
Code: [Select]
a b c d
e f g h

I guess this needs to be done in RGB colorspace. But I don't think the results will be nice, especially due to 420 sampling which happens after scrambling. The compressor will "see" a lot of false detail, which will force a low quality factor.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 02:32:06
The general idea to unscramble it is to load every frame (maybe in 422-jpg), convert it to plain RGB data and then encode it with a different pitch.

In memory, they are stored like this:

Code: [Select]
[ a b c
  d e f
  g h i ] => [a b c d e f g h i]

That would be with a pitch of 3. If we change it to 4, we'll get:
Code: [Select]
a b c d
e f g h

I guess this needs to be done in RGB colorspace. But I don't think the results will be nice, especially due to 420 sampling which happens after scrambling. The compressor will "see" a lot of false detail, which will force a low quality factor.
so you can adjust the pitch in the 422-jpg to, is that what the *2 is at the end of each size format, would you be tweaking the 2 to a new pitch for the resolution till it is correct? And also, I do you capture it to 422 just take a silent picture while record zooming or would u have to have a special code to capture them?
And could u tell me what exactly would i adjust in the code if i come up with new addresses and pitches to test, I have been playing with the vram 4 dumps and would like to test some of my findings?
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 04:05:15
If anyone wants to examine the 5x5, of coarse photo bucket does not allow full size upload, but here it is, maybe someone can figure out what is wrong, i purposly made the segments seperated with a -3,-3 setting in the script so you can see where the ends of each image is and how the words on the cd cases would still not line up even if they were brought together, and also you can tell even if you overlapped them to try to line say the top parts of the cd case text, the lower half would get screwed up, plus theres missing data, the very bottom of the cases are not even in the segments????? what am i missing, i changed everything in shoot.c  from 1024x680 to 944x632 and also in the 422 convert script, and also set my sens x and y to 5x of 944x632 in const.h????
Download full size:  http://www.mediafire.com/i/?cpbojilwc4pw8gp (http://www.mediafire.com/i/?cpbojilwc4pw8gp)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fwww.mediafire.com%2Fimgbnc.php%2Fa7ef478239bd4b2fdcf3e9420f5ee0e83b3fd60130d6a0f5b7662175451bbd546g.jpg&hash=d0a6325e2ef0247ae3a50f5c154c8bd7)[/URL]
Title: Re: 500d development
Post by: Gary on 15 / December / 2011, 14:20:31
I'm working on it.  I've got a job too!  Chdk was down most of today for me.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 14:27:07
I'm working on it.  I've got a job too!  Chdk was down most of today for me.
Its cool, I am also playing with it, but just doesnt want to get rid of those scanline looking things, hopefully one of us figure it out, lol.
Title: Re: 500d development
Post by: pat_loonytoon on 15 / December / 2011, 15:29:27
My crude measurement of the full-size version amounted to needing a shift of 65px to the right for the first column, and 75px up for row 2.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 15:33:16
My crude measurement of the full-size version amounted to needing a shift of 65px to the right for the first column, and 75px up for row 2.
Yeah, thats is what I dont understand, it seems adjustments are made equally ever segment shifts with the adjstments, it dont seem like you can just shift a certain section by itself 8[
Title: Re: 500d development
Post by: Gary on 15 / December / 2011, 15:33:35
Got most of them to line up.  There is missing data between Column 3,4.  Also between Row 3,4.  Not sure why this is the only place.  Looks like you have to change ML again.  About 100 pixels is missing.  Maybe only 80 on the X axis.  If you could shift Columns 4 and 5 to the left by 100 pixels I'm sure I could fix it.  When those 2 columns are exposed they need to be more to the left.  As if you were aiming the camera left.  Columns 4,5 are aligned with each other, but not 1-3.

Same with Rows, but let's concentrate on columns only first to test it out.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 15:37:50
Got most of them to line up.  There is missing data between Column 3,4.  Also between Row 3,4.  Not sure why this is the only place.  Looks like you have to change ML again.  About 100 pixels is missing.  Maybe only 80 on the X axis.  If you could shift Columns 4 and 5 to the left by 100 pixels I'm sure I could fix it.  When those 2 columns are exposed they need to be more to the left.  As if you were aiming the camera left.  Columns 4,5 are aligned with each other, but not 1-3.

Same with Rows, but let's concentrate on columns only first to test it out.

yeah, i have missing data in my images as well, like the bottom of the cd cases are not there at all, I dont see any settings that adjust separate columns are segments, ill keep trying to mess with ml cause it has to be something with that rather than converter
Title: Re: 500d development
Post by: Gary on 15 / December / 2011, 15:44:12
I know how to move the columns separately.  The trick is not cropping them all the same, but moving them instead.  If you can get all the data there, I will move them to line up.  But please don't change 1-3, as they are easy to align.  Also 4-5 are in line with each other already.  I just can't fill in the missing data between 3-4.  Try to fix columns first, then we'll deal with rows.

Using a crop of 0,0 you can see there is no data missing between the other columns.
Just extra duplicate overlap between 1,2.
Make 3,4 look like that.
Title: Re: 500d development
Post by: mk11174 on 15 / December / 2011, 19:33:51
anyone know what code in the 422 script will print each sub picture to its only file, i see a debug one in there but it only does it if its got wrong number of pictures????
Title: Re: 500d development
Post by: mk11174 on 16 / December / 2011, 04:23:54
I made myself a little test zebra pattern to use as my test image to try to figure out what exactly is really going on, and this sure tells the whole story!!! This is all standard settings everything at 944x632 and the cx cy set to 0 to connect everything to see what is left once all segments are put together, pretty interesting to see the end result. Its pretty ugly thats for sure but it tells the story thats for sure.
Full size link : http://www.mediafire.com/i/?6gtx3ejcxdc9q36 (http://www.mediafire.com/i/?6gtx3ejcxdc9q36)

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fwww.mediafire.com%2Fimgbnc.php%2F74f5ebca1ccbddc8be9f6d40f9aa29b9dbdd5ae0484b21a4cf3b5f5b7351c31a6g.jpg&hash=d917f720052ea2746f7e22d08ca972e6)[/URL]
Title: Re: 500d development
Post by: Gary on 16 / December / 2011, 10:53:32
It's not as bad as you think.  The problem between cols 1,2 is easy to fix.  After that the rest are trivial.  Except for the missing data between 3,4.  It will be easy for me to fix that no matter how much they overlap.  But there's nothing I can do when it's missing.  See my picture.

Is there a way you can manually move them left?  With an if statement.
Title: Re: 500d development
Post by: mk11174 on 16 / December / 2011, 15:14:35
It's not as bad as you think.  The problem between cols 1,2 is easy to fix.  After that the rest are trivial.  Except for the missing data between 3,4.  It will be easy for me to fix that no matter how much they overlap.  But there's nothing I can do when it's missing.  See my picture.

Is there a way you can manually move them left?  With an if statement.
I wish it was as simple as moving each section around or getting data back but theres really not much to adjust in the code, pretty much just a crop and size res of 1 segment and that controls all segments, i was able to get a print out of all segments by themselve and al the data is there before its put together, but nothing ever lines up, I even took out alot of extras in it and made it a bit more simplier to tweak just to try to figure out the right numbers to punch in, but just when you think you have it right it looks even worse. i have tweaked both ml and 422 script back and forth each time i change something and nothing is ever perfect, really strange but ill keep trying, looks like i just need to get the right resolution for each segment for 5 to go across and 5 to go down, 944x632 is the correct res for zoom to work unscrambled but its not the right number to fit across and down the screen evenely i guess.
Title: Re: 500d development
Post by: Gary on 16 / December / 2011, 16:46:56
Please trust that I can move the rows and columns independently.  My image above is attached without editing, directly from the python script.  All you need to do is make sure there is no data missing.  I will do the rest.  It would be great if you can do this without changing Cols 1-3.  One step at a time.  Let's start by fixing Cols only, later we'll get to rows.  Don't change the resolution of each image.  Change where the left corner is.  Try moving Col 4 only.  I have looked at the ML code a few weeks ago.  Should I start working on it?
Title: Re: 500d development
Post by: mk11174 on 16 / December / 2011, 17:09:05
Please trust that I can move the rows and columns independently.  My image above is attached without editing, directly from the python script.  All you need to do is make sure there is no data missing.  I will do the rest.  It would be great if you can do this without changing Cols 1-3.  One step at a time.  Let's start by fixing Cols only, later we'll get to rows.  Don't change the resolution of each image.  Change where the left corner is.  Try moving Col 4 only.  I have looked at the ML code a few weeks ago.  Should I start working on it?
Oh, its not that I dont think you can fix it, but what I mean, theres no part of the code to adjust just a column or row, its just basical a box of a width and hieght that moves across the screen and down of coarse thats set with 1 resolution and it has to be exactly 5x less then the actual res of the sensor i guess to make it work, unless i am wrong, but theres not much to that part of the code, it seems pretty basic in that area, its just 1 setting so if you tweak it a few pixels all images segments will be rearanged again, maybe if u want to study the shoot.c file maybe if you cant compile it, since i can, ill be glad to try any figures you want. Alex is probably giggling at us, hes such a wiz i bet he knows exactly what to do but is probably trying to make us work at it, cause actually it does help you learn if you dont get everything handed to you, but hints are nice sometimes and he did give us some about the sensor res and sweep silent pic, that dude is smart man, dont know how he figures all this stuff out.
Title: Re: 500d development
Post by: mk11174 on 16 / December / 2011, 23:35:54
I think I am finally on the right track, just tweaking little by little till it all lines up

Ok, it seems everything up to 4x5 is fine, for some reason 5x5 wont workout, maybe its not the right shape for the sensor res, but at least 4x5 looks nice, just make sure you use tripod and lock the exposure so differ exposures during scan dont make the individual segments show up, it seems to look just fine though especially if you tripod it and set everything manually. 8]

Autoexec.bin : http://www.mediafire.com/file/1rgli0aarcjgyao/autoexec.bin (http://www.mediafire.com/file/1rgli0aarcjgyao/autoexec.bin)

422 script to work with it : http://www.mediafire.com/file/z16uddnz2esz6z1/422-jpg.py (http://www.mediafire.com/file/z16uddnz2esz6z1/422-jpg.py)

Fullsize Image: http://www.mediafire.com/i/?p34wn3bq2xayki8 (http://www.mediafire.com/i/?p34wn3bq2xayki8)

4x5
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fwww.mediafire.com%2Fimgbnc.php%2F87172f3a401894e4d0e3fb1fb325d83e8a25ed896817e362fe6e3fd2f0ef10196g.jpg&hash=0fe59cde19da966034d2de9c2357e01c)
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 05:19:44
I have something for you (credits goto g3gg0):

https://bitbucket.org/hudson/magic-lantern/changeset/446753f3cf46
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 05:34:26
I have something for you (credits goto g3gg0):

https://bitbucket.org/hudson/magic-lantern/changeset/446753f3cf46
DUDE!!! THAT IS AWSOME!!!!! Thanku, I will have to test it out right away

WOW!!!!! WORKS LIKE A CHARM  VERY COOOL, I will email g3gg0
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 06:18:14
Great!

Can you tell me the safe limits for FPS?
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 06:24:52
Great!

Can you tell me the safe limits for FPS?
it starts at 30 i can go down to 4 and up to 60 in all modes but 1920x1080 higher then 50 flickers funny all colored.

correct that, i accidently pressed my zoom menu button i made under it, it actually goes to 50 while zoomed in, but only 40 none zoomed while in full hd mode, it goes higher but starts pausing after 40 so i back it of and it continues fine.
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 06:27:40
Wait... you can go at 50fps in Full HD?!

In 60D it goes safely up to 35fps, in 550D it doesn't like more than 30.

Unlock the full range from here:
Code: [Select]
    if (fps_override) fps = COERCE(fps + delta, 4, 60);
Title: Re: 500d development
Post by: PHrag on 18 / December / 2011, 06:36:04
YEEEEEAH! WOO! a1ex is the man! That's totally awesome! Thank you so much..!
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 06:37:17
Wait... you can go at 50fps in Full HD?!

In 60D it goes safely up to 35fps, in 550D it doesn't like more than 30.

Unlock the full range from here:
Code: [Select]
    if (fps_override) fps = COERCE(fps + delta, 4, 60);

yeah, i guess since i was zoomed i am guessing it went higher then 40 cause its back to res of 944x632 for my cam, but in normal no zoom it stayed at 40 fine, 41 instantly started pausing.
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 06:40:09
Good, I've limited it to max 40 in fullhd and max 60 in low-resolution.

Check if recording is fine at those rates.
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 06:46:54
3 - 70 in 480p and 1280p with recording and without, doesnt seem to change result I can actually go to 74 but quickly stops video till i back off to 72 then its back so i left at 70. I go to 3 and it blanks off then back on to 1 but 4 seems like the best setting for low like u had it.
Title: Re: 500d development
Post by: Coutts on 18 / December / 2011, 08:00:51
this is great news!

Tested 720p @ 70fps and the audio syncs properly, and clock is not sped up. Although i'm skeptical if it's actually 70fps.

When I turn on 1080p @ 30fps it looks more like 20fps to me..

Exif info is incorrect still, we need to figure out how to alter that.
Title: Re: 500d development
Post by: barbar84 on 18 / December / 2011, 08:06:38
Just to be 100% clear. This is framerate control on the 500d? really never thought I'd see the day. Amazing work, well done to you all.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 08:30:42
Gonna test it right now and report!!!!!
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 08:32:31
I mean, when A1ex or anyone release an autoexec
So I can report and help build it.


I work professionally with video, so I can confirm the frame rate frame by frame and stuff
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 08:58:05
You may try it.

It doesn't touch exif or audio, just reconfigures the sensor.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:03:07
For me its not a big problem, I use an external audio recording and I can control the playback frame rate in after effects and other editing software. Gonna try now and within a few minutes I report something
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:12:00
First impression is that when I turn it on, screen just reduces the frame rate and only when I get to 70fps it looks like its on the "normal" frame rate... doesnt know if its only a live view problem or its actually something with the multiplier or something like that on the code. Gonna check the recorded file...
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 09:14:27
I have the same impressions as Ulysses. And as I checked the 1080p40, it is actually recorded at 20fps.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:18:16
Yeah. I confirmed it. Only on 70fps it actually records 30fps. Now im gonna check with lower frame rates 'cause if it works lowering the frame rate, then it means changing frame rate works, its just a matter of tweaking the code to make it go higher than the default.
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 09:22:05
Well, recording at 1080p with 30fps overriden, it still runs at 20fps but is speeded-up as the sound doesn't match the image and goes  more slowly.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:25:30
Im testing only in 720p... seems lower frame rates work... but let me test more to confirm...
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 09:28:23
The fps override seems to work well, it only isn't changed somewhere in video headers. 720p70 records more than 30fps (audio is faster than image running at 30fps in all players) and turning fps to 30 makes it record less than 30fps (audio runs slower than the video played at 30fps). So fps override works, it only has to be adjusted as the value of 30fps doesn't make the camera record at 30fps but at a lower framerate.

Edit:
It might be recorded at half of the framerate set in ML, as the 1080p40 seemed to be perfectly synchronised with audio when played at 20fps. I still have to confirm that, though.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:32:41
Yeah, seems that it's really changing the recording frame rate, wich is good news, its just not matching the fps indicated on menu. Maybe something with the math on the code...

Noticed some changing on exposure probably due to each frame being more exposed in lower frame rates and it first gets darker before it gets to the defined exposure, and its being recorded, but thats a problem we can try to solve later after the fps correction
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 09:35:24
I recorded at 20 fps and I had to play it back in 10 fps to approximate the real timming and the at 10fps and had to play back at 3-5 fps to get closer to real time.

Just like the 70fps recording at 30 it seems to be recording at half what it showed in the menu. (Not exact calculations)
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 09:39:56
Maybe the timer in 500D works at lower frequency?
Title: Re: 500d development
Post by: ats1995 on 18 / December / 2011, 09:52:39
Hmm. I don't know, but when toggling FPS-override, the exposure changes. Higher frame rate means less exposure. Expo-override does still affect exposure, though.
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 09:57:17
With the previous FW, 1080p40 was actually 1080p20, 720p68 was 720p30 ..I haven't tested 480p.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 10:02:18
I´ve got to go out right now but when I get back I'll confirm everything for really sure! :)
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 10:08:50
Maybe the timer in 500D works at lower frequency?

This FW didn't make any difference, Alex.  It works just as I described the previus one - fps override of 40 makes 1080p record at 20fps, fps override of 68 makes 720p record at 30fps.

UPDATE:
Maybe you have uploaded an old one, Alex? With the changes from bitbucket, it seems to be tuned. 22 fps in 1080p stops the LV image updating.

UPDATE 2:
The same thing happens with 720p at 38fps - movie mode is stopped and then restarted with fps override trned off.

I noticed that the screen flickers a bit with this autoexec - this is most visible in play mode and is not much evident, but it really does flicker.
Title: Re: 500d development
Post by: a1ex on 18 / December / 2011, 10:21:25
Well... that may be the sensor limit.

Flicker appears after you take the battery out.
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 10:41:51
You're probably right about the flicker as it does not appear anymore (although I do not understand why it was here).

Also, limit for the 5x/10x zoom is 28fps in 720p and 480p (I don't know why).

Limit for non-zoomed 480p proves to be 37fps too.
Title: Re: 500d development
Post by: Coutts on 18 / December / 2011, 10:46:46
uploading a test video now.

Magic Lantern 500d/T1i | FPS Control Testing (http://www.youtube.com/watch?v=8FbxZ3E9PEI#ws)
read video description for details.


note: as the exposure gets brighter the framerate is getting lower (becuase it modifies shutter speed to 1/fps for some reason). take note of how fast my hand moves at the slow shutter speed (it was around 10fps i think), that's not right because it's encoded at 30fps still.

so even if we shoot 24fps, it will be encoded at 30 and be sped up. we need to figure out how to actually encode video at different framerates now.
Title: Re: 500d development
Post by: Liamykins on 18 / December / 2011, 11:09:21
This is great progress! I literally was ecstatic when I read trough these posts, I can see this going a long way, it just needs some working out and problem solving to get everything right. I wish I knew how to help!
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 11:11:19
Alex, thanks for the fix, however, I meant that the limits, 28fps in zoom mode and 37 in 720p/480p are the last stable so there's no need to tune them even another notch down :-)
Title: Re: 500d development
Post by: pat_loonytoon on 18 / December / 2011, 11:20:41
Merry Christmas to us I guess :)
Title: Re: 500d development
Post by: gliendo on 18 / December / 2011, 12:52:08
uploading a test video now.

Magic Lantern 500d/T1i | FPS Control Testing (http://www.youtube.com/watch?v=8FbxZ3E9PEI#ws)
read video description for details.


note: as the exposure gets brighter the framerate is getting lower (becuase it modifies shutter speed to 1/fps for some reason). take note of how fast my hand moves at the slow shutter speed (it was around 10fps i think), that's not right because it's encoded at 30fps still.

so even if we shoot 24fps, it will be encoded at 30 and be sped up. we need to figure out how to actually encode video at different framerates now.

So, If we shoot at 24fps and the camera encodes a retimed 30fps version? Does it means we can just retime it back to 24fps in post and it will be in real time?

I can live with that for now.
Title: Re: 500d development
Post by: ilguercio on 18 / December / 2011, 14:48:21
uploading a test video now.

Magic Lantern 500d/T1i | FPS Control Testing (http://www.youtube.com/watch?v=8FbxZ3E9PEI#ws)
read video description for details.


note: as the exposure gets brighter the framerate is getting lower (becuase it modifies shutter speed to 1/fps for some reason). take note of how fast my hand moves at the slow shutter speed (it was around 10fps i think), that's not right because it's encoded at 30fps still.

so even if we shoot 24fps, it will be encoded at 30 and be sped up. we need to figure out how to actually encode video at different framerates now.

So, If we shoot at 24fps and the camera encodes a retimed 30fps version? Does it means we can just retime it back to 24fps in post and it will be in real time?

I can live with that for now.
Yes, you're right.
I just tried it with my 50D and it works fine ;)
Title: Re: 500d development
Post by: arnarg on 18 / December / 2011, 14:59:19
uploading a test video now.

Magic Lantern 500d/T1i | FPS Control Testing (http://www.youtube.com/watch?v=8FbxZ3E9PEI#ws)
read video description for details.


note: as the exposure gets brighter the framerate is getting lower (becuase it modifies shutter speed to 1/fps for some reason). take note of how fast my hand moves at the slow shutter speed (it was around 10fps i think), that's not right because it's encoded at 30fps still.

so even if we shoot 24fps, it will be encoded at 30 and be sped up. we need to figure out how to actually encode video at different framerates now.

Didn't you try to have custom FPS before but only managed to change the playback rate... I'm pretty sure it was someone here, or a dream or something. Anyway, if I'm correct couldn't that be used in this case?

EDIT: And you made this video because of it :P Magic Lantern 500d/T1i - 30fps 1080p Testing (http://www.youtube.com/watch?v=TkaRmCTz7cQ#ws)
Title: Re: 500d development
Post by: gedas5 on 18 / December / 2011, 15:32:01
Is the version with FPS control the one that A1ex posted on the Post  #2139? If not then can anyone upload it here?
Title: Re: 500d development
Post by: gedas5 on 18 / December / 2011, 15:34:41
If decoding back to 24fps really works is there a way to do it in Sony Vegas? Should it be as simple as just selecting 24fps as your output and it should look like real 24?

Edit:

tried recording video in 24fps and then in post change it to 24fps as output. The video looks really fast so i'm not getting 24fps. Has anyone managed to convert it to have 24fps look?
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 16:21:01
Hey, still a break through for sure to be able to mess with sensor timing like this, very exciting, I tried shooting 2 ways, once at 70/69.956 and brought into vdub to see what I would need to set frame rate at to make it realtime, it seems 70 frames was spot on when set to 30fps in vdub but interesting, when I recorded at 15/14.985 setting, I had to set frame rate to 6.616 to make it real time, so maybe cause of the encoder, its not allowing it work right i dont know, but for now, it seems we can get lower then 30fps in the end, just not higher then 30fps, more testing is needed obviously but those are my findings for now. Still cool to also get the really slow shutter speed, would be awsome for fireworks as well!!!!

so i am guessing the encoder doesnt allow us to record higher then 30fps so any setting above 60 is going to be 30fps and stay that way no matter what, anything lower then 60 will be an actual lower frame rate then 30 if a setting of 15 winds up truly being 6.616.

so if thats how it works a setting of 58 would bring us to 25.47fps and a setting of 57 would be 23.205fps????? 
Title: Re: 500d development
Post by: kyselejsyrecek on 18 / December / 2011, 16:24:43
Didn't you try to have custom FPS before but only managed to change the playback rate... I'm pretty sure it was someone here, or a dream or something. Anyway, if I'm correct couldn't that be used in this case?

Coutts was at least able to change the headers so that the video file would play at a higher framerate. This could be merged together with this framerate hack to make it work as desired.

Is the version with FPS control the one that A1ex posted on the Post  #2139? If not then can anyone upload it here?

This is my build (with fixed overlay areas):
Title: Re: 500d development
Post by: gedas5 on 18 / December / 2011, 16:52:43
If 57fps would actually bring us to 24fps the worry is what's going to happen with sound? I'm trying different fps and the sound gets out of sync and only at 68fps I think it is synced normally like at 30fps
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 17:12:56
Ok, just tried it, and thats how its working, I am not even using sound at moment i use external sound so i keep  sound off, I video taped a clock counting down to time it right, I set it to 58 and recorded 1 minute timer count down, then I brought into vdub, I have after effects but in case anyone wants to try that dont have after effects vdub is free, anyways, I brought into vdub changed input fps to the setting of cam, 58/57.9640 then re-encoded just to be sure it was cleanly done, then I brought that clip into vdub and it was now 57.940 of coarse which made it play fast, I then set the input frame rate to 25.47 and it was realtime. This can be done in after effects same way just interpret your clip to 25.47 then bring it into a comp so comp is set to that frae rate as well. So it can be slowed just i guess encoder or live view is limited to 30fps so we cant get faster frame rate for now anyway.

In the end, not sure since the encoder obviously is not encoding to 25.47, is the end result any differ then just simply changing the frame rate on any normal clip recorded? But, it is giving us the abilty to get super slow shutter speeds, so maybe in the end it will be called shutter override lol, unless the encoder on the can can be changed to work with it.
Title: Re: 500d development
Post by: Coutts on 18 / December / 2011, 17:23:01
i'm not sure on re-encoding after the fact, but i did try my method of encoding on camera at a different rate, and it didn't work.

The camera will only accept 2 options, 20 or 30fps for this. and when I try to encode at either, it just buffers out after 10 seconds or so (just like it was doing before). And trying 24, 60, etc fps just makes it crash.

So it's a bitter-sweet victory I guess? Either way I'm losing interest in this by the day as I slowly realize that it's not going to be easy to do what I'd like to see done. I'm really starting to question why canon did a lot of what they did in these cameras, and what's worse nobody realizes it when they just buy a new camera after canon doesn't release updates.
Title: Re: 500d development
Post by: gedas5 on 18 / December / 2011, 17:46:41
@ Coutts

let me join you at this sad moment...I guess we are all frustrated that the development doesn't go as easy as it was planned...especially it is frustrating to you considering the amount of time and heart you put into this...but certain things are for sure that your development with the help of others eventually gave some results and we have fully functioning ML! Thanx for that! Without your dedication and the help of A1ex and some others I would not be able to shoot timelapses, have ISO and aperture control in video mode, have remote recording and taking pictures ;)
So you see you've done a lot and this one obstacle with FPS it's not the end of the world...but everyone would be more happy having it ;)
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 17:54:48
Its seems like it more of an exposure simulation for slow shutter speeds, maybe this is how they even give us exposure sim as it is but maybe canon put a lock on the shutter speed for the exposure simulate feature, and now it can be expanded, but still it does seem to record at slower shutters speeds now which we could not do before this feature which can be a cool thing for like i mentioned fireworks.
Title: Re: 500d development
Post by: Ulysses on 18 / December / 2011, 19:37:15
First things first.

A video file is just a container for the image sequences, teorically speaking (in fact it is data reproducing this scheme). A video file has defined frame rate and resolution. BOTH CAN'T BE VARIABLE!!! Meaning you CAN NOT have variable frame rate in the same video/file. Its just the way ANY video works. You have previously defined frame rate to be played back. Same with resolution. Its the bit rate you can have it constant or variable.

The change in frame rate with this build is actually interfering in the exposure, probable because when you have less frames per second, each frame are exposed longer to complete the FPS rate and as a consequence allowing more light to be captured and the opposite holds true for higher frame rates. Maybe there is a way to change the frame rate without interfering with exposure.

Fortunately it is in fact really changing the recording frame rate, wich means its just a matter to adjust the code to make it work properly. Right at this moment we´ve got 2 major issues (aside the exposure interference, wich is manageble just changing exposure settings, audio sync and the change up and down in exposure right after you press "record"):
- First: its not telling the video container that the video frame rate has changed, so it keeps thinking its 30fps and thats why it plays at 30fps.
- Second: the chosen frame rate is not the one which is actually being recorded.

I´ve recorded a video at supposely 30fps, but it had to play it back at 14fps to actually get it in the real time.
I´ve recorded a video at supposely 10fps, but it had to play it back at 4fps to actually get it in the real time.
I´ve recorded a video at supposely 70fps, but it had to play it back at 35fps to actually get it in the real time.
(almost half the chosen speed in all cases).


It seems to be an easy fix. About the container, Coutts once had it changed when we first thought we finally had changed frame rate. In that case, only the info in the file was changed and not the recording rate. Maybe with this solution and a few tweaks frame rate change finally works on 500D like a charm!
:)

Lets hope A1ex and the other developers get it working! :)

If you need me for anything I'm here to help in whatever I can! :)
Title: Re: 500d development
Post by: ilguercio on 18 / December / 2011, 20:31:54
I had a few email exchanges with Alex today and the first thing we did was to determine the right override to start from.
Let me explain:i can only record at 30fps on my 50D so i enabled the FPS override and selected 30.
Recorded a movie, wrote down the real recorded time VS the file lenght and told Alex these values. What he did was set a starting point to begin with so you know how the internal timer works (or something like this, it is different among the cameras) .
Once we did that the other values were correct.
So, if i record at 24fps with the override i get a shorter file compared to the real time i am expecting.
That's because i have X frames recorded at 24fps but played at 30 so a minute of recording will be about 48 seconds long.
X=30*file lenght=24*real lenght.
That's it really, i just did all the conversion in vdub and it took less than a minute to come out as AVI.
So, if the timer is not understood yet someone should try to record at 20 fps overridden at 1920*1080 and see if they match. If not the fix is simple ;)
Title: Re: 500d development
Post by: pat_loonytoon on 18 / December / 2011, 21:01:18
Would it be possible to make a virtualdub script that automates the process, or the possible use avidemux?
Title: Re: 500d development
Post by: mk11174 on 18 / December / 2011, 21:53:21
I am anxious to get a lightning storm with this effect, before this effect you could not shoot lightning by video because of the rolling shutter effect, when a flash strikes you see the scan lines divide the video on that frame, same thing happens with a camera flash, so shooting video of lightning doesnt work out unless it strikes at a good time while the scan lines are in a good spot, the exposure overide helped spread the scan lines out by being able to change the shutter and 29 was a perfect setting with only a thin line cutting the image, but not cutting it into a full half of the image seeing the strike on only 1 half the video image, now when tested using camera flash aimed at the camera, now you get the full flash on video with no cuts, you have to pick the proper shutter speed still and a slow frame rate, but it works, no cuts and a nice full clean video image of the flash.  So it will be nice to see how this works, only for day lightning though, obviously at night just will be taking stills using bulb and remote like usual, but will be fun for day testing, I currently use sony vx2000 for day lightning video, does great job since it is a ccd cam, but only dv, would be nice to get it on HD for a change.
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 01:58:07
Ulysses: try the latest autoexec (not from me, but from kyselejsyrecek). The 2x "problem" was fixed.

If there's no exact match, follow ilguercio's suggestion. Record for 5 minutes or so at some standard frame rate (e.g. 30fps with ML override), and tell me the number of frames and the duration of the video as reported by your player.

mk11174: the suggestion with fireworks and lightning sounds pretty nice, post some videos when you do it.

Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 02:06:45
Ulysses: try the latest autoexec (not from me, but from kyselejsyrecek). The 2x "problem" was fixed.

If there's no exact match, follow ilguercio's suggestion. Record for 5 minutes or so at some standard frame rate (e.g. 30fps with ML override), and tell me the number of frames and the duration of the video as reported by your player.

mk11174: the suggestion with fireworks and lightning sounds pretty nice, post some videos when you do it.


Ok, I sure will and ur latest updates to repos is much better, it seems to be more realistic I guess with the frame rates, still obviously the same issues, but at least it nows gives frame rate you would think is correct in the ML menu.
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 04:48:56
A1ex:
The problem recording "5 minutes" is that its not really much exact 'cause when you press the button to stop recording, it can get a few more or few less frames. But I did that yesterday trying to record clips with almost the same duration (15 sec) in different frame rates and it gave me really different frames count, which is confirming it is really changing the recording frame rate.

I did my tests recording a movie from the screen with the elapsed movie time on screen also, then I played back with a watch in my hand and I changed the playback frame rate until the seconds on screen matched the seconds passing on the watch. So its not 100% exact (kind of 98%, 99%) but its trustworthy. As with a clock on screen, we can only see when the seconds change, but with something moving at a constant or known speed, like the movie scene, we can see the frame change. So I had visual and timed confirmation.

Gonna try the other build now.
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 05:03:17
You may want to read my message again. Record around 5 minutes (approximate) and tell me the number of frames (exact) and the duration reported by the player (exact).
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 05:19:03
Yeah, with the build from kyselejsyrecek the timing seems to be correct now. I noticed when I press the record button, ot takes about a second or two to apply exposure from the chosen frame rate and this is recorded too, so the first frames from the video always get a darker or brighter image then it will be from the rest of the clip.

A1ex: Can you raise the maximum frame rate limit for me to test it? From 30 to 37 in 720p doesnt seem to be quite a difference (despite the ability to shoot in 24p, which is great!). If possible, something like 48 FPS in 720p. In 1080p I got only 21 FPS when we had 20 from already the firmware. Couldnt it be raised to at least 24FPS in fullhd?
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 05:43:13
Ok!

Should be something wrong with the timmer 'cause I stopped when it reached 5 min on ML screen, but reading now it just gave 4:22. Big difference. Did the same in 24p, stopped at 3min and was actually 2:38 (interpreted as 23,976)

Well, my 5 min (00:04:22:21) in default 30p gave me 7881 frames.
Title: Re: 500d development
Post by: arnarg on 19 / December / 2011, 06:17:28
I tried recording a 5 min video, the camera stopped at 01:06 (I was pointing it at a stopwatch) I think I just need a better speed class sd card :P anyway, the fps override was set to 30. As I said earlier I recorded for 01:06 but the clip was only 00:57.27 (according to After Effects) and 1737 frames.
Hope that helps you :)

EDIT: afterwards, I tried finding the right framerate for the clip and it was 26. (very close to it)
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 06:54:37
Should be OK now. I assume 20fps mode is PAL.

What's the exact frequency in NTSC in 500D? 29.970 or 30*1000/1001?
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 07:02:19
Should be OK now. I assume 20fps mode is PAL.

What's the exact frequency in NTSC in 500D? 29.970 or 30*1000/1001?
NTSC is 29.970 but all programs that you open a T1i file in is 30 I guess cause its not interlaced. I am recording all 3 modes now, on 1080 now just to confirm everything with last build, full 5 min on all 3, even set a digital clock count down in front of the recordings LOL Oh and all at there standard frame rates too
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 07:07:34
Revised the computations: with both 29.970 and 30*1000/1001, the end result is the same due to rounding. So I think it.s 29.970 in all cameras.
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 07:10:47
Well, it is still playing at the default 30fps, no changes with that regard. The only thing I saw different was I could go down to 4 fps. then I could get up to 32FPS, with 33fps LV wasnt refreshing properly (like it was kind of 15fps), with 34fps the LV stops refreshing and freezes, with 35 the camera reboots with LV flickering.

EDIT: before I could get to 37fps with no problems

And yes, its matching the showed recorded time with the actual file length.

500D always was 30FPS, not exactly 29,97, which is too close. Just like 5D qhen it started recording videos. If I´m not mistaken, it doesnt conform to NTSC or PAL, just pushes the frame rate at 30 and thats it.
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 07:31:00
If it was always 30fps, the closest thing I can get is 29.961.

Now, probably ML displays 29.97 but the camera records at 30.

20 and 30fps have different timer values; this suggests that they took care of PAL and NTSC somehow. They could make 20.000 and 30.000 fps with a single timer (the one at 24.66 kHz) but they didn't.
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 07:33:25
Ok, just to confirm I recorded exactly 5min
480P      same as 720P
720p      7890frames  4m  23sec
1080P    5997frames  4m  59:850sec
 Latest patch u just posted results
1080P    6002frames  5m  00.100sec
720P      9002frames  5m  00.067sec

Update also confirming
720P recorded with 24fps setting then interpeted at 23.976   7198frames    5min 0:00.217sec
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 07:54:26
Yeah, in after effects it displays the exact frame rate, not rounding. If I have lets say a video 32 FPs, it shows 32 FPs, if its a video with 43,72 FPS, it displays the right number. So, with all files from the 500D it always shows 30fps

EDIT: After Effects show the exact FPS number, but the one in the header. It doesnt perform any calculations, although we can change the playback rate or interpret footage at will.

I really dont know what the PAL and NTSC options on the 500D do. As for me, it just records the video in 30p and thats it. Not conforming to any standards. Just as when you convert a video or create an animation at any given frame rate. You create any video or animation with the frame rate ou want, but you need to be specific to conform to NTSC or PAL, otherwise the video will work without any problems, its just not conformed to the NTSC or PAL standards. Which I think is the case of the 500D...
Title: Re: 500d development
Post by: bjacklee on 19 / December / 2011, 08:14:40

Update also confirming
720P recorded with 24fps setting then interpeted at 23.976   7198frames    5min 0:00.217sec
Is it time to celebrate? :D
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 08:15:49

Update also confirming
720P recorded with 24fps setting then interpeted at 23.976   7198frames    5min 0:00.217sec
Is it time to celebrate? :D

We're getting there. Just a few adjustments needed. :)
Title: Re: 500d development
Post by: bjacklee on 19 / December / 2011, 08:19:33

Update also confirming
720P recorded with 24fps setting then interpeted at 23.976   7198frames    5min 0:00.217sec
Is it time to celebrate? :D

We're getting there. Just a few adjustments needed. :)
This will surely be a happy Christmas.. :)
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 08:22:06
And right when I´m about to shoot Episode 2 of my fight/action webseries. If everything comes out and working properly, Im going to dedicate the episode to the ML community, to A1ex and the others who helped. :)

Its going to help a lot if I can shoot with higher frame rates or at least 24p in Full HD.
Title: Re: 500d development
Post by: Jamez on 19 / December / 2011, 08:33:00
Alex has just shared something with me.
Hold on to your hats boys, you aint seen nothing yet!!!!!!!!!!

Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 08:34:32
Alex has just shared something with me.
Hold on to your hats boys, you aint seen nothing yet!!!!!!!!!!



Where is the "like" button here???
:D
Title: Re: 500d development
Post by: bjacklee on 19 / December / 2011, 08:35:25
Alex has just shared something with me.
Hold on to your hats boys, you aint seen nothing yet!!!!!!!!!!




Where is the "like" button here???
:D
I was about to ask that question too... :D
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 08:35:38
its very need to point at a tv and change the fps if you go higher then standard fps the scan lines race to the right then as u go lower frame rates it races to the left, and the scan lines stop at 30, 20, 15, 12, crud, i forgot the other numbers, i think 5 or 6 oh well, u get the idea, and changing shutter with exposure override to check the correct shutter speeds to watch the lines be thicker and thinner, 1/29 and 1/57 seem to be the correct values which would be 1/30 and 1/60 shutter speed on my sony vx2000 video cam. I am going to tweak my numbers to remind me of the correct ones so i dont forget on the spot. 1/29 and 4 is what i will use for lightning when i get a good day storm to test it on, 4 fps almost wipes out the scan lines altogether from all the frames being on top of eachother and thats a good thing for lightning. Of coarse tripod only, will be fun to test it out, wish i had fireworks just to mess around with 8]
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 08:45:03
Alex has just shared something with me.
Hold on to your hats boys, you aint seen nothing yet!!!!!!!!!!


My hats gonna take me with it!!!! I wonder what the surprise is now, how many gifts is Alex going to give us this year for xmas? LOL
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 09:20:07
Check the vimeo group ;)
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 09:27:30
????
HDR in-camera recording?
Title: Re: 500d development
Post by: arnarg on 19 / December / 2011, 09:28:58
Which only works for 60d and 600d? :/
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 09:31:49
but why would james bring it up, it nly is for 600d and 60d, i dont get it???
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 09:33:27
Me too... we were here just getting too excited about FPS and hoping good news come out about that...
Maybe A1ex is too excited with that possibility...
Title: Re: 500d development
Post by: kyselejsyrecek on 19 / December / 2011, 10:05:05
As it was said by Ulysses, I think, it is now only possible to use 32fps at most in 720p and 480p with the adjusted frequencies as 33fps makes the LV image not being refreshed properly (looses many frames and makes the video jerky) what is also recorded in the final video file. The safe framerate for zoom is 24fps instead of 28fps then. No change to 1080p, it is still able to record at 21fps.
Title: Re: 500d development
Post by: gedas5 on 19 / December / 2011, 10:09:03
Let's wait and see if A1ex has more presents in his bag besides HDR recording for 600d ;) hope he'll take out something from the bag that 500d have been dreaming for ages now :)
Title: Re: 500d development
Post by: arnarg on 19 / December / 2011, 10:13:28
a1ex = santa?
Title: Re: 500d development
Post by: Gary on 19 / December / 2011, 12:29:11
How low can you go with the bitrate at 1080 4fps?
I don't have my camera with me today.
Filesize?  Number of frames in file?
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 12:57:51
Who wants to help me with 3 screenshots?

In movie mode, expo override on, at ISO 100, 400 and 1600.
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 13:03:44
Hold on, gonna try it....
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 13:12:10
ISO 100
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 13:16:01
ISO 400
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 13:18:09
ISO 1600

All with exposure override set to ON instead of AUTO
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 15:02:45
One more set of screenshots needed:

1) Go to movie mode and put a lens cap on. Turn off GlobalDraw. Enable exposure override.
2) Enable mem spy (Debug menu, select it with Q)
3) Let the display calm down (should take 10-20 seconds or so)
4) Change ISO.

After you change ISO 5 times, new numbers will appear on the screen.

Then take pictures of the screen, at iso 100/400/1600.
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 15:24:09
ISO100
ISO400
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 15:24:38
ISO1600
Title: Re: 500d development
Post by: rexman on 19 / December / 2011, 15:31:28
Yeah, in after effects it displays the exact frame rate, not rounding. If I have lets say a video 32 FPs, it shows 32 FPs, if its a video with 43,72 FPS, it displays the right number. So, with all files from the 500D it always shows 30fps

EDIT: After Effects show the exact FPS number, but the one in the header. It doesnt perform any calculations, although we can change the playback rate or interpret footage at will.

I really dont know what the PAL and NTSC options on the 500D do. As for me, it just records the video in 30p and thats it. Not conforming to any standards. Just as when you convert a video or create an animation at any given frame rate. You create any video or animation with the frame rate ou want, but you need to be specific to conform to NTSC or PAL, otherwise the video will work without any problems, its just not conformed to the NTSC or PAL standards. Which I think is the case of the 500D...

Perhaps it only sets the video out sync to either 50 Hz or 60 Hz ?
Title: Re: 500d development
Post by: a1ex on 19 / December / 2011, 15:49:33
With this autoexec, hit "don't click me". Then try to change the ISO. What happens?
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 15:51:09
Ok! Hold on a few moments...

I´m just curious what all these tests with ISO might be...
:)
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 15:55:43
Didnt see anything happening. ISO just changes normally.

Tried twice just to be sure.
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 16:34:44
With this autoexec, hit "don't click me". Then try to change the ISO. What happens?
During recording it changes the iso by itself a few times.
scratch that, now its not changing, maybe i hit the record button and it was just autoing it
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 16:44:36
OMG!!!! PLEASE GET THAT SLOW MO ON OUR CAM!!!!!!!
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 16:47:01
I think Im missing something... specially when I have some extremely amazin action shots on my script to be done in slow motion in the webseries I want to dedicate to ML...
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 16:50:38
Wait, I am wondering, if its what we could already do, just record faster fps then slow it down in after effects or vdub to 30, he recorded at 35fpas and played back at 30, dont know if he made it come off cam like that though its on vimeo group
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 16:52:18
Ah, yes. Thats my most wanted feature after 24p. Shoot in higher frame rates!!!
With that my camera would be flawlessly and I could achieve really impressive results in my workflow.
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 17:02:48
Ah, yes. Thats my most wanted feature after 24p. Shoot in higher frame rates!!!
With that my camera would be flawlessly and I could achieve really impressive results in my workflow.
yeah, very cool doing slow mo, I use twixtor right now of coarse, but would be nice to get higher frame rates one day on this cam so we can get much better slow mo effect, thats for sure. Alex has us all jumpy hoping this new thing will work so I guess i am jumpy on the posts, and what i do on the cam, lol. I am worried after that last bin, since it didnt do anything, Im guessing thats bad 8/
Title: Re: 500d development
Post by: Ulysses on 19 / December / 2011, 17:05:24
He's just testing and gathering data to better apply the code. I use twixtor too but thats not even close to a real slow mo with higer frame rates. At least if we had 48p we could achieve much better results with twixtor
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 17:10:49
He's just testing and gathering data to better apply the code. I use twixtor too but thats not even close to a real slow mo with higer frame rates. At least if we had 48p we could achieve much better results with twixtor
yeah, i know, would be so nice 8]
Title: Re: 500d development
Post by: Liamykins on 19 / December / 2011, 18:30:54
Where abouts is this vimeo video? I've been searching for ages with no luck!
Title: Re: 500d development
Post by: mk11174 on 19 / December / 2011, 18:42:22
Where abouts is this vimeo video? I've been searching for ages with no luck!
http://vimeo.com/groups/magiclantern/forumthread:250151 (http://vimeo.com/groups/magiclantern/forumthread:250151)
Title: Re: 500d development
Post by: pat_loonytoon on 19 / December / 2011, 18:47:15
Basically this video-
Magic Lantern: HDR & 5 fps as 25fps speedup (Canon 60D) (http://www.youtube.com/watch?v=8qYIvpCrV2Y#ws)
Title: Re: 500d development
Post by: Chuchin on 20 / December / 2011, 03:19:31
Fixing the play back speed is easy. Just open the .mov file with a hex editor and patch the lmvhd and the mdhd atoms. The easiest way to do this is search the file for lmvhd when you find  the 15 offset of lmvhd should be 0B B8 which is 3000 in decimal which = 30.00fps you can change it to anything but also change it to the mdhd atom with the same offset of 15 which also is 0B B8. Changing it to 09 60 = 2400 in decimal will give you 24.00fps.
Title: Re: 500d development
Post by: mk11174 on 20 / December / 2011, 03:34:57
Fixing the play back speed is easy. Just open the .mov file with a hex editor and patch the lmvhd and the mdhd atoms. The easiest way to do this is search the file for lmvhd when you find  the 15 offset of lmvhd should be 0B B8 which is 3000 in decimal which = 30.00fps you can change it to anything but also change it to the mdhd atom with the same offset of 15 which also is 0B B8. Changing it to 09 60 = 2400 in decimal will give you 24.00fps.
Man that is so cool, it works like a charm, pretty smart dude!!!!
Title: Re: 500d development
Post by: gedas5 on 20 / December / 2011, 04:42:20
@ Chuchin

Thank you! Really nice and easy tip how to convert to 24fps but the only concern is how to sync video with the file that was originally 30fps and now 24fps as audio is totally out of sync...
Title: Re: 500d development
Post by: pat_loonytoon on 20 / December / 2011, 04:53:00
@Chuchin

Hey man, long time no see. Thanks so much for starting this thread and being a integral part to the startup of this on the T1i.  Good to see you back in the saddle.
Title: Re: 500d development
Post by: gedas5 on 20 / December / 2011, 08:42:51
Can anyone tell me what's the hex value for 60fps?
Title: Re: 500d development
Post by: utnuc on 20 / December / 2011, 08:45:25
@ Chuchin

Thank you! Really nice and easy tip how to convert to 24fps but the only concern is how to sync video with the file that was originally 30fps and now 24fps as audio is totally out of sync...

Can you demux the audio, then recombine using AudioDub or ffmpeg?
 
Title: Re: 500d development
Post by: gedas5 on 20 / December / 2011, 08:58:56
@ utnuc

don't know ;) haven't tried and don't really know how to do it ;)
Title: Re: 500d development
Post by: utnuc on 20 / December / 2011, 09:23:00
@ utnuc

don't know ;) haven't tried and don't really know how to do it ;)

Install ffmpeg using instructions from my ffmpeg wiki here:
http://eusvideo.wikispaces.com/ (http://eusvideo.wikispaces.com/)

Open command line, change to your directory and use this code to demux/remux the video:
Code: [Select]
ffmpeg -i INVIDEO.MOV -vn -acodec copy out.wav
ffmpeg -i INVIDEO.MOV -an -vcodec copy out.mov
ffmpeg -i out.mov -i out.wav -shortest -acodec copy -vcodec copy FINAL.MOV

Replace INVIDEO.MOV with the name of your video.  Does this resync the audio?

B
Title: Re: 500d development
Post by: gedas5 on 20 / December / 2011, 10:02:32
@ utnuc

All I get is extracted audio file from the video which is shorter than the length of video converted to 24fps from 30fps. So looks like it doesn't sync or I might be doing something wrong :)

Edit: out.mov in your code should also be replaced with the file name :) and after I understood that I managed to get it converted but unfortunately the video comes out without audio even though if I check file properties audio is present.

Edit 2: I just noticed that it produces 2 files where one is video and one is audio but the lengh of the audio file does not match video file so they are still out of sync
Title: Re: 500d development
Post by: utnuc on 20 / December / 2011, 10:53:36
When you have the audio and video files extracted from the original (out.mov and out.wav), try editing the video header to correct the frame rate per Churchin's instructions then combine with:

ffmpeg -i out.mov -i out.wav -shortest -acodec copy -vcodec copy FINAL.MOV
Title: Re: 500d development
Post by: Gary on 20 / December / 2011, 11:12:10
Alex got HDR video for 550D!  Any guesses if he can do it for us?
Title: Re: 500d development
Post by: Chuchin on 20 / December / 2011, 11:51:42
some more hex values
this work for the 500d
09 60  =  2400 =24.00fps
0B B8 = 3000 = 30.00fps
07 D0 = 2000 = 20.00fps
17 70 = 6000 = 60.00fps
13 88 = 5000 = 50.00fps

for some reason my 600d uses different values

600d

61 A8 = 25000 =25.00fps
75 30 = 30000 =29.97fps
C3 50 = 50000 =50.00fps
EA 60 = 60000 =59.94fps
5D C0 = 24000 =23.976fps
12 C0 = 4800 =48.00fps

use windows calculator in scientific mode to get the hex values
Title: Re: 500d development
Post by: Ulysses on 20 / December / 2011, 13:00:02
Sure he will. He was gathering data yesterday related to the HDR  Video feature.

Lets hope it works and then I really would like him to try to make the frame rate control on the 500D work properly as its yet unfinished.
Title: Re: 500d development
Post by: arnarg on 20 / December / 2011, 17:12:01
To find out hex you can also just type into google "*number* in hex"
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 02:22:21
So from what I read on the twitter page, looks like just the 600D, 60D and 550D will be the only ones getting the special feature which is HDR, Our cam doesnt have enough framerate I guess for it from what it said 8[, kinda wish Jamez didnt get our hopes like that, I would of not of been sad about it if I never read that message, but we cant have it all I guess, cant complain either we have some cool stuff because of Alex, Coutts, ML, and everyone else involved.
Title: Re: 500d development
Post by: rexman on 21 / December / 2011, 02:55:46
Not so quick dude. 500D can do 25 fps in 720p. HDR @ 720p is better than not at all  :xmas

Alex just needs to try and sort out sync issues.
http://vimeo.com/groups/74140/forumthread:250295 (http://vimeo.com/groups/74140/forumthread:250295)

What is the post-processing workflow?
---------------------------------------

You will get two streams at half frame rate. For example, if you record 25fps, you will get two 12.5fps streams. Interpolate them to 25fps and use your favorite HDR software to blend the frames.


Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 03:05:09
Hit "make" and post some samples ;)
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 03:07:11
Not so quick dude. 500D can do 25 fps in 720p. HDR @ 720p is better than not at all  :xmas

Alex just needs to try and sort out sync issues.
http://vimeo.com/groups/74140/forumthread:250295 (http://vimeo.com/groups/74140/forumthread:250295)

What is the post-processing workflow?
---------------------------------------

You will get two streams at half frame rate. For example, if you record 25fps, you will get two 12.5fps streams. Interpolate them to 25fps and use your favorite HDR software to blend the frames.



Ahh, well that is good then, I guess we will see, I just was reading the twitter post and it said only 60d, 600d, and 550d. Thanks for getting my hopes up again LOL!!!
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 03:09:40
Hit "make" and post some samples ;)
Holy cows, AWSOME!!!!!!!!
Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 03:12:46
Now check if it works without sync issues. As far as I know, it misses some frames.
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 04:19:11
Now check if it works without sync issues. As far as I know, it misses some frames.
Is it recommended to shoot a certain way, the flicker seems way to far apart to make work, mostly the dark iso and real fast flickers bright every 1 or 2 sec, plays back the same way I see it during recording, its nice a constant fast flicker like in the videos I saw on vimeo

and its a random flicker to, not constant.

is it best i shoot something and up the raw footage so u can get a better idear
Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 04:54:28
The same thing happens with 5D2.

You may play with MovRecState events (in hdr.c), maybe you can figure it out.
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 05:30:58
The same thing happens with 5D2.

You may play with MovRecState events (in hdr.c), maybe you can figure it out.
the way it works is i records for 6 frames at normal iso and on frame 7 it changes to low or high iso, then 6 frames play normal, then on frame 7 it the opposite iso of the last changed iso, this was at 24fps, exposure override active using iso 800, and setting the EV4.
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 05:51:38
What about FPS sync and playback header??? Changing FPS cant be polished?? Its just all we can get?
:(
Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 06:33:17
http://www.virtualdub.org/ (http://www.virtualdub.org/)

;)
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 06:49:26
I know how to fix it in post, but its really a pain in the butt and even more work to do, which isnt a good idea (my post workflow involves a lot of process, including converting to 24p. If I get 24p but for that I need all the tweaks before I can use the file properly, then I've done nothing. Just changed one process for the other, improving nothing in the worklow). It woudl be awesome if it was done in camera, as it normally do.
:(
Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 07:40:29
http://www.virtualdub.org/docs/vdscript.txt (http://www.virtualdub.org/docs/vdscript.txt)
http://avisynth.org/mediawiki/Main_Page (http://avisynth.org/mediawiki/Main_Page)

;)
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 07:44:07
What about when Coutts did manage to change the playback rate and we thought it was frame rate?
That fix couldnt be used in this case? If so, then frame rate chaging would be complete, aside only the audio sync.
Title: Re: 500d development
Post by: a1ex on 21 / December / 2011, 08:05:42
He tried it, but didn't really work (don't remember the exact issue, probably only worked in 1080p).
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 08:09:51
But the playback rate info in the file was changed. If Im not mistaken and remembering wrong, he left it because it wasnt really changing the frame rate, and without changing the frame rate, the change only in playback rate is useless.

As far as I remember, that was the fail on that code tweak...

Couldnt you try it, A1ex? I would try and test everything as you need. (gonna try to find the post...)
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 08:20:56
Found these 2 links related to that:

http://chdk.setepontos.com/index.php?topic=5971.1560 (http://chdk.setepontos.com/index.php?topic=5971.1560)

https://bitbucket.org/coutts/magic-lantern-500d/changeset/d096174935f7 (https://bitbucket.org/coutts/magic-lantern-500d/changeset/d096174935f7)


Is it useful?
Title: Re: 500d development
Post by: kyselejsyrecek on 21 / December / 2011, 10:48:03
What about when Coutts did manage to change the playback rate and we thought it was frame rate?
That fix couldnt be used in this case? If so, then frame rate chaging would be complete, aside only the audio sync.

Ulysses, as Coutts said a few pages before, he was only able to change between 30 and 20fps if I understood him well. You might want to read the last messages more carefully. You should not press Alex, nobody should as he is already pretty busy, it seems, with all the work he does every day only for ML.
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 10:51:39
Im not pressing, of course not. He's doing us a favor, how could I be pressing him? I'm just ASKING IF he could help in that matter. Even if coutts was only able to change from 20 and 30 fps, he actually did it and that might be a clue to help solve it. Its at least a starting point.

I'm also trying to help in what I can help and I'm making myself available to tests and give info for the benefit of the project.
Title: Re: 500d development
Post by: kyselejsyrecek on 21 / December / 2011, 14:12:48
I have been playing with fps safe values and found that the smallest working value at least on 500D is 2fps. With 1fps it always drops down to something what is near to 4fps. I think that it is due to some data length limitations as the 15th bit from right isn't read by the camera so the leading one in number 101 1010 0111 1000 representing 1fps timer is cropped and the number then becomes 1 1010 0111 1000 what is similar to 1 0110 1001 1110 used for 4fps (reason why it seems to be changed to ~4fps according to exposure). I'm not sure this might be bypassed, though. The smallest number of fps is ~1.412 represented by 2^15 - 1 in terms of the timer. Anyways, 2fps is pretty safe :-). It may be adjusted in set_fps() in file src/fps-engio.c by replacing the 4 by 2.
Title: Re: 500d development
Post by: Ulysses on 21 / December / 2011, 14:36:44
Fewer than that I think is not that necessary as we can have timelapse and other things. The thing that would be breaktrough is higher frame rates. Did you test whats the maximum it can get? At least 24 in 1080?

500D has the same processor than 5D, 550D, etc... I think it should hold similar settings...
Title: Re: 500d development
Post by: Chuchin on 21 / December / 2011, 14:45:26
Here is a python script to adjust the playback fps. You can set new fps by changing the new_fps. If your using 1080 just change the current fps to 2000. You can also make this script dropable. Props to JSM for the script.
Title: Re: 500d development
Post by: mk11174 on 21 / December / 2011, 14:53:11
Here is a python script to adjust the playback fps. You can set new fps by changing the new_fps. If your using 1080 just change the current fps to 2000. You can also make this script dumpable. Props to JSM for the script.
Very nice, thankyou, it will make it quicker then the hex editor at least, awsome job!
Title: Re: 500d development
Post by: kyselejsyrecek on 21 / December / 2011, 14:53:50
Fewer than that I think is not that necessary as we can have timelapse and other things. The thing that would be breaktrough is higher frame rates. Did you test whats the maximum it can get? At least 24 in 1080?

500D has the same processor than 5D, 550D, etc... I think it should hold similar settings...

Yes, in fact, it was me who has prompted Alex those upper limits (see http://chdk.setepontos.com/index.php?topic=5971.msg78224#msg78224 (http://chdk.setepontos.com/index.php?topic=5971.msg78224#msg78224))

It is probably the sensor that is not able to serve higher bandwidth as Alex said.

Chuchin, thank you.
Title: Re: 500d development
Post by: gedas5 on 21 / December / 2011, 15:51:43
@ Chuchin

I installed Python 3.2.2, drag and drop file on the qthackfps.py file and nothing happens :) am I doing something wrong? :)
Title: Re: 500d development
Post by: Chuchin on 21 / December / 2011, 16:45:02
I didn't write it but I think it was written for python 2.3. I'm using python 2.6 and it works. I don't thing it will work with Python 3 and over, it should work with python 2.7.
Title: Re: 500d development
Post by: gedas5 on 21 / December / 2011, 18:50:18
Chuchin I tried version 2.7 and it works ;) thanx a lot for sharing this stuff! Now it will be easier to convert from 30fps to 24fps if we ever need it.
Title: Re: 500d development
Post by: vorob on 21 / December / 2011, 23:55:02
Hi, is there 30 fps in 1080p in latest custom firmware?
Title: Re: 500d development
Post by: Gary on 22 / December / 2011, 01:43:32
I tried 4fps.  Gets darker and lighter gradually every few seconds.  Then stops with Buffer full.  Am I doing something wrong?
Title: Re: 500d development
Post by: mk11174 on 22 / December / 2011, 02:35:00
I tried 4fps.  Gets darker and lighter gradually every few seconds.  Then stops with Buffer full.  Am I doing something wrong?
No actually I noticed that too, it only seems to happen in 1080 mode though for some reason.
Title: Re: 500d development
Post by: kyselejsyrecek on 22 / December / 2011, 10:51:02
I tried 4fps.  Gets darker and lighter gradually every few seconds.  Then stops with Buffer full.  Am I doing something wrong?
No actually I noticed that too, it only seems to happen in 1080 mode though for some reason.

You're right. I didn't notice it before. It is present only in 1080p (more frequent when recording, when not recording, it nearly doesn't happen) and it affects all framerates other than 20fps - the exposure is changed to the one used with 20fps - as the shutter changes with fps (as it shouldn't). In other resolutions it happens only at the start of recording.

I have also noticed that when changing resolution, the framerate value becomes strange, that means, much more or less than it should be, e.g. ~9.5 for 9fps in 720p when going from 1080p. I guess, this happens because the timer is not updated when changing recording resolution. The shutter speed may be related to that timer since it changes relatively to the framerate.
Title: Re: 500d development
Post by: kyselejsyrecek on 22 / December / 2011, 12:28:17
I have made a patch to make ML recompute the timer when switching recording mode to better match the integer frame rate then. It includes also updated safe frame rate limits (allowing frame rate down to 2 and resolving LV restart with higher frame rates and 24+fps in zoom mode).

The exposure changing in 1080p is probably caused by the NTSC computation or use of 120hz timer what doesn't go along with the msleep(1000) command in fps_task(). I think, it might be also the cause of the irregular exposure change in HDR video, although Alex was talking about fixing some addresses. I haven't found the right value for msleep(), however.

There must be a Canon routine overriding those timers which runs only when recording - in that case, we could simply disable it for fps override or alter it for use with HDR video as it is probably called when the fps timer expires (reason why almost every frame in HDR video is taken with normal exposure and only a few are under/overexposed - well, that might mean that it overrides also shutter, iso etc.). Anyway, I said "simply" but this would need a FW hack, pretty clearly camera specific and that's not the right approach, I guess.

And, well, the help string for FPS override says "forces shutter at 1/fps" ..is it what it is really supposed to do as the shutter value in ML bottom bar stays unchanged or, in other words, wrong, Alex?
Title: Re: 500d development
Post by: a1ex on 22 / December / 2011, 12:57:59
Good catch, applied.

On older cameras, setting fps forces 1/fps shutter as a side effect. I don't know how to fix this yet, so it went into docs :)

I'll keep the 4fps limit for now; in other cameras, 3fps is not safe.

Title: Re: 500d development
Post by: kyselejsyrecek on 22 / December / 2011, 13:34:11
Ok.

I have digged a bit around the shutter values in lens.c and lens.h and found that they are hardly set to/computed for their raw equivalents. The only "reasonable" way how to fix this using this algorithm is to recompute the values in seconds as the raw values are fixed integers with step of size 1 (no way to adjust them). Another approach would be to use different raw values to make it best match the predefined values in seconds - that's approximate and would cause loss of the maximal shutter values used with normal frame rate. (Never mind, just kidding my thoughts)
Title: Re: 500d development
Post by: a1ex on 22 / December / 2011, 13:45:25
The bottom bar actually uses exact formulas for shutter speed and aperture - that's why you see weird values. Canon displays nice round values (market values).
Title: Re: 500d development
Post by: kyselejsyrecek on 22 / December / 2011, 14:29:33
Well, they are weird but still fixed to their raw equivalents by the values_shutter and codes_shutter arrays in lens.h, aren't they?

And I give up with the fps_task() synchronization. For a while, it seemed to be msleep(256) in PAL used for 1080p but it proved to be safe only for 3fps, when I tried with 8fps it was again flickering. This is most likely unsynchronizable because of the use of 120hz timer whose tick may not be represented by a decimal number of seconds.

src/fps-engio.c:200 needs to be also changed to:
Code: [Select]
fps_setup(current_fps);
..and nice workaround, Alex :-)
Title: Re: 500d development
Post by: pat_loonytoon on 22 / December / 2011, 14:44:56
Hey downloaded the youtube video where the HDR flicker is recorded on the 60D but I have no clue how to get the CCWideTime in AfterEffects to come out looking as smooth. Mine just phases between dark and light iso while everything moving in the scene gets bad motion blur. I know it's not directly in question here but I think for the HDR results it seems like an essential piece to the puzzle.

[Updated: Read some of the info on vimeo and following up those workflows - http://vimeo.com/groups/74140/forumthread:250295 (http://vimeo.com/groups/74140/forumthread:250295) Total rookie question but is it possible to shoot 2 different images at the same time? Like a 422 as well as a movie frame?]
Title: Re: 500d development
Post by: pat_loonytoon on 22 / December / 2011, 22:56:36
So exporting the frames into jpgs and then batch merging to EXR files sounds great but how does one batch marge to EXR files?
Title: Re: 500d development
Post by: druckgott on 23 / December / 2011, 04:22:09
Hallo,

first time thx for the great work, make a little donation ;-)

But one think, maybe i´m wrong?!
With the newest version of ML from 22.Dez.
I only can get 21 p @ 1080p, not like descriped 24 p

http://magiclantern.wikia.com/wiki/Release_2011Dec22 (http://magiclantern.wikia.com/wiki/Release_2011Dec22)

thx
druckgott
Title: Re: 500d development
Post by: a1ex on 23 / December / 2011, 04:55:00
Thanks! 24p is at 720p resolution in 500D; overcranking doesn't really work, only undercranking is stable for now.
Title: Re: 500d development
Post by: druckgott on 23 / December / 2011, 05:00:59
Ah ok thx then i missunderstand this.
Title: Re: 500d development
Post by: a1ex on 23 / December / 2011, 05:34:54
There are hints that we might not be limited by sensor bandwitdth, but by some configuration parameters. We'll see.
Title: Re: 500d development
Post by: Ulysses on 23 / December / 2011, 06:48:21
A1ex, tried the new build.

- When in FPS Override, my shutter is always displaying 360º, no matter the setting.
- The "up and down" on exposure right after pressing record is no longer there. Thats great!
- I just miss the playback rate change in header so the file plays properly without tweaks in other than default frame rates.
- Audio sync, not vital, but would be very nice to help sync the video with external audio in post.
- The file length (time) showed in ML screen in all previous build was off by about 2 or 3 secs, now its just perfect. What we get on screen is what we get on file.

Great work you all have done! Congrats! You're just wonderful!
Title: Re: 500d development
Post by: gedas5 on 23 / December / 2011, 07:24:04
@ Ulysses

Do you have some special build from A1ex? :)
Title: Re: 500d development
Post by: Ulysses on 23 / December / 2011, 07:28:14
@gedas5:

http://magiclantern.wikia.com/wiki/Release_2011Dec22 (http://magiclantern.wikia.com/wiki/Release_2011Dec22)
Title: Re: 500d development
Post by: gedas5 on 23 / December / 2011, 08:25:26
@ Ulysses

thanx  :) forgot to check there to see if there's any new version  :D

So does it actually allow 24fps recording now? Or it still produces 30fps files? I don't have my camera at the moment so I can't test it myself...
Title: Re: 500d development
Post by: Ulysses on 23 / December / 2011, 08:27:36
Its recording 24p stable, but still gives 30fps, which isnt a big problem to solve in post.
Need to turn audio off cause when its on, its like its recording in 30p and the buffer runs out in a few seconds.
Title: Re: 500d development
Post by: gedas5 on 23 / December / 2011, 10:11:58
@ Ulysses

thanx for your replies. But does it actually look like 24fps when you convert back from 30fps? Or you get some choppiness? Does it give motion blur? Because I remember when previously converting 30fps into 24fps in post it was giving some motion blur and it looked ugly...Is it still the case now? Would you be able to send me some video file with maybe 1/60 or maybe faster shutter speed so that I could play with it myself before I get my carema back ;)
Title: Re: 500d development
Post by: Ulysses on 23 / December / 2011, 10:17:37
It in fact records at 24p, no convertion needed. Its just the file itself who thinks the video os 30p, so it plays at a faster speed of 30p. You just need to tell the program to interpret footage at 24 and its everything ok. In fact, it was recorded at 24p real time, there are 24 frames per real second, but the file thinks its 30p, so it plays at 30p, 6 frames per second faster than realtime. No big deal.

there are no artifacts or chopping since there is no convertion in the process, it true 24p and motion blur will depend on the shutter speed you use. The most used setting is between 1/50 and 1/60. Lower than that its too much motion blur, making the footage too smooth. Higher shutter speed gives much less motion blur and "Gladiator" like effect. Its useful for super slow motion.
Title: Re: 500d development
Post by: sayabulleyh on 23 / December / 2011, 10:23:31
can someone explain me...what is the differences between 24p and 30p?
which one is better?
Title: Re: 500d development
Post by: Ulysses on 23 / December / 2011, 10:30:02
there is no better between them. Its just that too long ago, dont remember if it was in the 30's or 40's, film was conventioned to be run at 24 frames per second. As film is too expensive, that way they wouldnt need to use more meters of film to shoot the scenes and for audio sync issues. Since then, 24p is the movies standard frame rate and is part of the "film look". So, thats why everyone tried to hold on it, because it helps to achieve that look (it not the only thing that makes the movie look like it does).
So, there's no one better than the other, its just a matter to achieve the film look. But you may run into projects in which you need different frame rates.
Title: Re: 500d development
Post by: kyselejsyrecek on 23 / December / 2011, 11:26:02
there are no artifacts or chopping since there is no convertion in the process, it true 24p and motion blur will depend on the shutter speed you use. The most used setting is between 1/50 and 1/60. Lower than that its too much motion blur, making the footage too smooth. Higher shutter speed gives much less motion blur and "Gladiator" like effect. Its useful for super slow motion.

The shutter cannot be set with fps override enabled. It forces the shutter to be 1/fps as a side effect. The shutter does, however, affect the exposure, but only the tiniest bit when going from the minimal (1/24s) to the maximal shutter speed (1/8000s) and so 1/60 of a second cannot be set with fps override set to any value as the maximal fps is 32 in 720p and 480p modes.
Title: Re: 500d development
Post by: Nspa32 on 23 / December / 2011, 13:19:56
Sorry guys, I'm new here. New to Magic Lantern, and new to DSLR video. Anyway, I'd like to say thanks for all the hard work from everyone here. Alex, the problem is stated above that when playing 24FPS in 720P playback shows it in 30. Is there a special build that fixes this? What do I have to do to get it back to the original 24p? I have a White Macbook so I can't download any major software. Thank you.
Title: Re: 500d development
Post by: gedas5 on 23 / December / 2011, 13:35:18
@ Ulysses

Thanx for explanation ;) but as kyselejsyrecek stated that there's no actual control of shutter speed if you record in 24fps. So that's why I wanted to see how it actually looks in the footage and this is why I asked for sample video if possible.
So will you be able to work on your project now?

@ kyselejsyrecek

So are you saying that since the implementation of video controls in ML we never had control of shutter speed? What about the previous version before they started looking into fps control? I think it was exposure override function which seemed like it was allowing to control shutter speed? Or was it exposure that we were able to control? Dp ypu think the ability to control shutter speed will be resolved when A1ex comes back from holidays? ;)
Title: Re: 500d development
Post by: kyselejsyrecek on 23 / December / 2011, 13:57:17
@ kyselejsyrecek

So are you saying that since the implementation of video controls in ML we never had control of shutter speed? What about the previous version before they started looking into fps control? I think it was exposure override function which seemed like it was allowing to control shutter speed? Or was it exposure that we were able to control? Dp ypu think the ability to control shutter speed will be resolved when A1ex comes back from holidays? ;)

The functionality to override exposure settings in move mode is present in ML - I even mentioned it in the previous post. It is only not working with fps override enabled as this function overrides the shutter speed to 1/fps.
Title: Re: 500d development
Post by: gedas5 on 23 / December / 2011, 14:24:45
@ kyselejsyrecek

Ok now I understand what is happening :) hopefully someone will find the solution how to have shutter speed control in fps override as well. Thanx for clarification because I thought that same shutter speed control would be present in fps override function but i was wrong. It only controls exposure.
Title: Re: 500d development
Post by: utnuc on 23 / December / 2011, 14:28:24
I can't help but wonder if this coupling of fps and shutter speed is what's limiting ML's ability to achieve higher than stock frame rates.
Title: Re: 500d development
Post by: Coutts on 23 / December / 2011, 14:41:46
@kyselejsyrecek
you seem very experienced, much more so than me with this. Perhaps you may be able to fix usb headphone audio monitoring and ago control on the 500d. I started on this but gave up when I couldn't figure it out. I fixed the analog gain but couldn't figure out how to re-configure the audio chip accordingly to enable usb monitoring.

The problem is that the 500d has an ac4636 (mono) audio chip, while the 550d and all newer cameras have an ac4646 (stereo) chip. The register maps are different, so we need to study the ac4636 documentation to learn what equivalent registers need to be set.

Datasheets are available here (i added the 500d's data sheet a while ago): http://magiclantern.wikia.com/wiki/Datasheets (http://magiclantern.wikia.com/wiki/Datasheets)

The most I could do was make the headphones work for playing back audio in play mode, but I couldn't get it to loopback live.



p.s. We may be able to call pre-existing firmware functions for enabling / disabling AGC. I can't give exact ROM locations as I don't have my laptop now (it crashed earlier this week), but search for the strings "AlcOn" and "AlcOff" and you will find them.

Feel free to contact me via email if you want to look into this further, I have a good amount of experience with the audio chips.
Title: Re: 500d development
Post by: kyselejsyrecek on 23 / December / 2011, 15:42:45
Thanks, Coutts, but I am surely not that experienced as you are, neither in programming nor in ML. Anyway, I would really like to help fix some problems and go even deeper than fixing simple mathematical issues like I've been doing up to now. It would be great if I could help correcting events/addresses and so on and maybe help you with the audio chip that you've been working on for a long time. I might take a look at it, with your help perhaps, sometime. The biggest difficulty for me, however, is that I do not understand ASM instructions and I haven't even played with any dump nor got the ARM console to work (I don't remember if it was installed together with all the build tools, maybe it is already ready to use, I haven't tested it yet).
Title: Re: 500d development
Post by: mk11174 on 23 / December / 2011, 20:00:16
I know you dont see shutter speed change on ML menu, but if you just look at the video you can clealy see we still have control of shutter speed, just aim it at a tv, turn on Exsposure Override set to 1/8000 turn on fps, set fps to 30 first  then go change your shutter speed, it clearly is changing the shutter speed, just watch the lines seperate and get closer, it seems sometimes after changing for awhile it stops working and u have to reset cam, like if you go from fast shutter strait to slowest, but I see the change not only in expsoure but in the lines on a tv that shows a shutter change just fine, and then slowly change your frame rate down, the effect is lost as you go to a lower fps but maybe cause the sensor is over written images more, but on an old crt tv you see it change nicely just as you would in M mode, am I the only one who sees this????

And dont forget to play with the fps while ur in front of that tv, CRT is best. 30, 24, 20, 15, 12, 10 all seem to be special settings that make the lines stop there motion across tv, hard to see lower cause of the slower shutter speed blenfing things together.
Title: Re: 500d development
Post by: sayabulleyh on 24 / December / 2011, 02:51:49
thanks for all the information...so right now we cannot change the shutter speed? am i right?

by the way, im not sure if this is the right place to ask this question..can someone tell me which sdhc class 10 is the best and why?...kingmax, kingston or transcend??
i found that these 3 sdhc are quite cheap...(now im using class 2 sdhc...very bad video quality...^_^)..thank you
Title: Re: 500d development
Post by: Ulysses on 24 / December / 2011, 04:24:45
Well, it does have some control changing the sutter speed, but not all that control as you normally have. As @kyselejsyrecek said, it changes but just a bit. It does affects exposure and motion blur, but the increments on each value are almost unoticeable. You have to move a lot to see some changing.

As @utnuc said, maybe shutter and fps control are more dependent on each other than we think and tweaking that code dependency maybe the way to get it fully and properly working.

I didnt do extensive tests, but 24p looks to me pretty decent. Its just not fully implemented... YET! :)

As always, programming is not my area of expertise, but aside that I let myself available to help in whatever I can.
Title: Re: 500d development
Post by: kyselejsyrecek on 24 / December / 2011, 08:13:23
@sayabulleyh, Ulysses:

There is shutter speed control for both, video and stills shooting modes that allow it, of course. The shutter control in video mode does not, however, work when fps override is enabled. If you disable it though, you'll have full manual controls in video mode available.


@mk11174:

Well, I have tried setting the shutter speed with fps values close to 30 in 720p mode and I have seen that the shutter change is more evident with these frame rates. However, it is not that stable and with lower fps, it does nearly nothing. And as I probably misunderstood your post first, I have realized that the fps override concerns also normal LiveView when shooting stills. I don't see any point for it to be present in LV other than exposure simulation. It is, however, located in Movie tab in ML menu and it causes the shutter setting to become very unstable. I think, it shall be disabled in LV.
Title: Re: 500d development
Post by: Ulysses on 24 / December / 2011, 08:42:21
@kyselejsyrecek

I know. I was talking about FPS override, which was the subject in last page...
Title: Re: 500d development
Post by: mk11174 on 24 / December / 2011, 10:10:44
@kyselejsyrecek

I dont think it works any less or maybe it does, cant be sure, I assumed it was less noticeable because of the sensor overlapping images at the slower frame rates, obviously its not normal how it works, but there is control and its not stuck at 1 sec, theres some kinda of weird thing happening but it does change regardless of the frame rate you use, and changing the frame rate does not change the shutter speed at all, its doing something else cause the size of the lines you see on the tv while changing it dont change as you go through the fps setting, BUT they do start up in motion which I have know idea why???? They also stop motion at 30, 20, 15, 10, maybe 7 and 5, hard to see, at 24, they sort of stop, but flicker as well, so something special about 24fps thats for sure it gives a differ effect that all other fps settings, but from what I see on the tv, I know shutter speed changes will change the lines completely, and fps does not effect the thickness of them at all, just moves them unless your on one of those frames I just mentioned, so it must be effecting the exposure in a way that just cant be explained yet, but obviously its because of the images overlapping eachother with the lower fps number. I am no expert, just giving any info I can about the basic stuff that I see.
Title: Re: 500d development
Post by: Ulysses on 24 / December / 2011, 10:41:11
@mk11174

About lines in 24p... you need to know whats the frame rate of the show you´re watching on your TV. It may be transmitted over 23,976 or 29,97 FPS... so it could be the thing to make it different on yout perception...
Title: Re: 500d development
Post by: Nspa32 on 24 / December / 2011, 11:46:02
Alex, or anybody in that case, when I record in 24P and when I play it back the problem where it plays it back in 30p... will it be fixed? Also, when I play it back when recording in 24P, the quality gets severely decreased. Is that just me or is anyone else noticing this?
Title: Re: 500d development
Post by: mk11174 on 24 / December / 2011, 12:06:23
@mk11174

About lines in 24p... you need to know whats the frame rate of the show you´re watching on your TV. It may be transmitted over 23,976 or 29,97 FPS... so it could be the thing to make it different on yout perception...
No program for tests, just static like this.
500D FPS/Shutter Tests (http://vimeo.com/34166573)
Title: Re: 500d development
Post by: pat_loonytoon on 25 / December / 2011, 00:25:46
Merry Christmas guys! Thanks for all the great updates from January until now. I think this is the forum I have checked the most from January up till now. We've problem solved, smacked our heads, got sidetracked, distracted, and frustrated yet still progress has steadily been made. Thanks for the great 2011! :D

~Patrick  :xmas
Title: Re: 500d development
Post by: mk11174 on 25 / December / 2011, 03:45:18
Merry Christmas to all of u guys in here!!! 8]
Title: Re: 500d development
Post by: gedas5 on 25 / December / 2011, 04:36:07
Merry Christmas to all of you here and mostly the developers who are our Santa Clauses as they gave us this so much more improved gift of ML ;) don't drink too much guys as then the code might get messed up and we'll have many bugs again :D
Title: Re: 500d development
Post by: mk11174 on 25 / December / 2011, 04:42:08
Merry Christmas to all of you here and mostly the developers who are our Santa Clauses as they gave us this so much more improved gift of ML ;) don't drink too much guys as then the code might get messed up and we'll have many bugs again :D
lol good one!!!
Title: Re: 500d development
Post by: Coutts on 25 / December / 2011, 09:57:09
I'm still blown away at what's been accomplished. Months ago, manual video controls and any kind of framerate control were nothing but a dream for me. To see them coming true is truly amazing.
Title: Re: 500d development
Post by: Ulysses on 26 / December / 2011, 07:44:21
@Coutts, if it wasnt you...maybe this project had died months ago... you kept it running when no one else believed it!
Title: Re: 500d development
Post by: Coutts on 26 / December / 2011, 10:17:05
@Coutts, if it wasnt you...maybe this project had died months ago... you kept it running when no one else believed it!
It only cost me my whole semester (that's why I've stopped working on it). I got a 1.86 gpa this semester and have to re-take 3 of my classes.

In a way it's an unfortunate turn of events that had to happen: before ML i found no purpose for my interest in programming (I have always dabbled with it since I was young). When I discovered ML, I learned a lot. It consumed me though (resulting in the worst semester of my college career). If it wasn't for ML though I wouldn't know C, python, or asm code. Additionally, I wouldn't have changed my major from business to computer science. The computer science program is teaching everybody Java, which turns out is quite similar to C, so I kind of have ML to thank for that.

I'm still mad about the semester, but I'm not sure if I should be really mad as it kind of put me in the right direction and taught me computer concepts that I will use the rest of my life.



tl;dr
magic lantern is the worst and best thing to happen to me.
Title: Re: 500d development
Post by: Ulysses on 26 / December / 2011, 13:03:24
As some say, there are bad things that come to make good things. There may be a good reason for that to happen. Many times in my life I regreted some happening or thought that would mess my life but in the end it turned out to be a better thing. Lets hope its the case for you. I do hope it made you turn to a better path for you sooner than you would find out breaking your head.
Title: Re: 500d development
Post by: pat_loonytoon on 26 / December / 2011, 13:42:49
And gents it's not to hard to ask for Coutts e-mail to donate to him through paypal...then again he may refuse to give it out :D he can be too humble like that...but you know, if there is a little Christmas love to still go around ;) In college I struggled with finding a major I was interested in, I guess it resulted in skipping classes, a low GPA, and finally not finishing up college a few years ago. I've always enjoyed programming and the whole puzzle, and creation, of it all. With some business knowledge, and now all the programming, you may want to start your own business. As always, we really appreciate your work, time commitment, and sacrifice for this.  :xmas
Title: Re: 500d development
Post by: Greg31 on 26 / December / 2011, 16:43:01
HDR video works correctly only when sharpening.
Title: Re: 500d development
Post by: Coutts on 26 / December / 2011, 17:32:44
anyone is free to donate to my paypal: [email protected]

though i don't know how many people with 500ds are still out there. either way, feel free to donate, but also remember that Alex has spent a lot of time continuously developing the unified tree so don't forget to donate to him too :)
Title: Re: 500d development
Post by: Ulysses on 27 / December / 2011, 02:21:11
I dont have an international credit card! :(
I wish I could donate... :(
Title: Re: 500d development
Post by: pat_loonytoon on 27 / December / 2011, 02:42:04
Didn't know that was an issue with paypal :/
Title: Re: 500d development
Post by: Ulysses on 27 / December / 2011, 07:46:39
Its is! Altough I'm registered, I couldnt validate my account since the last time I tried a few years ago. Really dont know how it is today. I live in Brazil, maybe its some security protocols specific for here...
Title: Re: 500d development
Post by: mk11174 on 27 / December / 2011, 07:54:24
HDR video works correctly only when sharpening.
What do u mean only when sharpening? Its not working correctly for us in any mode at the moment????
Title: Re: 500d development
Post by: Greg31 on 27 / December / 2011, 12:40:58
ML HDR video (http://www.youtube.com/watch?v=76vYmpWiduA#ws)
Title: Re: 500d development
Post by: pat_loonytoon on 27 / December / 2011, 12:44:13
Ah, you mean it responds how it should using the electronic focusing. I'm sure the guys can check out why that is and possibly get the HDR fixed, nice find Greg
Title: Re: 500d development
Post by: mk11174 on 27 / December / 2011, 12:51:41
Coool, very interesting, so it shows it is not a hardware limitation, thats great, nice find for sure!!!!
Title: Re: 500d development
Post by: kyselejsyrecek on 27 / December / 2011, 14:05:56
I've made a patch for the latest Christmas release. Do not expect anything "big", it's just a few tweaks and  bug fixes of mostly some graphical glitches.

Apart from some overlay synchronization refinements and other graphical issues, I have moved restore_kelvin_wb() calls to another task to make WB be restored before movie mode is turned on, fixed movie mode remapping (movie mode was not remapped to the chosen shooting mode), modified the movie log file format to make it easily readable (+ removed the unused "frame" column since I was not able to get the number of current frame and added column for equivalent focal length).

The thing, which I think Alex will hate me for, is that I have commented out or lowered values of some msleep() calls which only slowed the camera response down and were not needed to be present in the code or to be that high.

I was also hoping to fix the bug of camera locking up if you pull the memory card out too early after opening the card slot door but instead I have speeded the ML boot up process up by ~1.3s. I'm starting to think that the card removing bug is a low-level issue. It is not related to the ml_shutdown() function called when card slot is opened nor to saving the configuration file nor to any infinite loop in boot-hack.c, reboot.c, reboot-all.c, config.c, debug.c or state-object.c. And it is even present when ML is turned off in the boot up process, which means that it is created before one of the very first C tasks is running in the camera (my_init_task(), boot-hack.c).

And finally, the patch includes my previous patches of zebras and other overlays so is uses the whole area possible.
Title: Re: 500d development
Post by: Coutts on 27 / December / 2011, 16:02:07
ML HDR video (http://www.youtube.com/watch?v=76vYmpWiduA#ws)
very interesting indeed.

Also great work kyselejsyrecek. I think the zebras and features were made to not fill the whole screen for performance, though I'm not sure how much slower it is by using the whole screen. Either way great to see someone else working on it finally!
Title: Re: 500d development
Post by: kyselejsyrecek on 28 / December / 2011, 01:36:01
ML HDR video (http://www.youtube.com/watch?v=76vYmpWiduA#ws)
Also great work kyselejsyrecek. I think the zebras and features were made to not fill the whole screen for performance, though I'm not sure how much slower it is by using the whole screen. Either way great to see someone else working on it finally!

Thanks. It's not using whole screen actually, just whole viewable area - so it remains the same in movie mode with 16:9 crop bars (but is fixed with 4:3 bars which appear on sides) and is drawn using whole LV area in LV and play mode. Zebras were already running at 1/4 of refresh rate of the liveview task, the difference in refresh rate (if any) is not obvious. Anyway, it doesn't affect only zebras but also other overlays like defishing or the green screen in low light.
Title: Re: 500d development
Post by: pzotalis on 28 / December / 2011, 14:06:35
ML HDR video (http://www.youtube.com/watch?v=76vYmpWiduA#ws)

I'm having the exact same problem.

Any guess?
Title: Re: 500d development
Post by: AirQuad on 31 / December / 2011, 06:43:37
eng: Happy New Year! Brothers!!!
rus: C Наступающим Новым Годом Братья!
Title: Re: 500d development
Post by: ats1995 on 31 / December / 2011, 06:56:20
I did some frame rate with audio tests and found something that might be interesting (unless it's already known):

PS: this test was done with 24 fps.

If I use fps override along with sound recording, recording stops after some time, as expected. It still does when using very low bit rates, like 0,1 , for instance. The funny thing is that ML buffer warning doesn't see that the buffer is filling up. The time before stopping, ML says the buffer is about 6% full. (Bitrate 0.1 and 24 fps)

When testing this with 32 fps, I get error 70 after approximately 3 and a half minute . There is no sign of full buffers, it just stops. I can hear the OS(optical stabilization) go off before the error screen appears. The camera saves the file, luckily. There is no sound in the last 20 seconds of the file (played back on the camera.
Title: Re: 500d development
Post by: Gary on 31 / December / 2011, 11:43:42
Wishing for 4fps HDR...  Any progress?
Title: Re: 500d development
Post by: Jamez on 31 / December / 2011, 12:40:33
Wishing for 4fps HDR...  Any progress?
Keep your eye on here -> https://bitbucket.org/hudson/magic-lantern/changesets for the latest changes.
Title: Re: 500d development
Post by: mk11174 on 01 / January / 2012, 00:37:25
HAPPY NEW YEAR EVERYONE!!!!!
Title: Re: 500d development
Post by: pat_loonytoon on 01 / January / 2012, 04:20:43
2012 looks to be a good one. Let's make it even better with ML :)
Title: Re: 500d development
Post by: a1ex on 01 / January / 2012, 13:24:40
Happy new year!
Title: Re: 500d development
Post by: Gary on 01 / January / 2012, 16:59:56
Took some Timelapses in NYC last night.  Anyone got FPS working with 1080P?  What's the trick?
I guess not.

How about HDR Silent Picture in video mode?
(to get higher resolution)
Title: Re: 500d development
Post by: gedas5 on 03 / January / 2012, 09:18:02
Happy New Year to everyone! :)

Have some questions is regards to 24fps... Is it only me or the quality does actually look much worse than shooting in 30fps? Also shooting in 24fps and then trying to convert it to the actual 24fps with Python I get an error saying "ERROR, the current FPS value isn't 30 for atom". But it still converts to 24fps...However, comparing the videos 30fps and 24fps I don't see much difference apart from couple of seconds of extended time. For some reason I can't get that movie effect. Maybe something wrong with the conversion? But when I put 30fps video into Python script then the converted file actually looks more like 24fps... Has anyone tried that? 
So far what I've got:
1) When shooting without FPS override in 30fps and then converting video with Python script the output 24fps file actually looks more like 24fps (way slower than original) (also Python script gives error).
2) When shooting in 24fps with FPS override and then converting video with Python script the output 24fps file looks exactly the same as original file (more like 30fps rather than 24fps) (also Python script gives error). 

Has anyone got any ideas what's wrong and what's not working? Also when shooting in 24fps it looks like there's great loss of quality. Any ideas? ;) thanx
Title: Re: 500d development
Post by: Coutts on 03 / January / 2012, 10:33:22
For encoding at different framerates, I think I may be onto something:

at 0xFF0EC270 in the 500d.111 firmware is the function "LVCDEV_H264EncodeStart". There is a structure at 0x49D0 which, at off_0xC, is the value for what movie mode you are in, ie: 0 for 1080p, 1 for 720p and 2 for 480p.

H264E_SetParameterH264Encode (0xFF17883C) is called with a different arg0, depending on which movie mode you are in. In SetParameterH264Encode, depending on which arg0 was passed (which depends on the video mode), a structure at 0x846C is setup with different offsets / values.


Interesting places to look at with bmp_hexdump:
- areas after 0x846C, specifically between off_0x70 and off_0xF0 (around that area)
- areas after 0x49D0.



I think I can post flow charts here, here's a flow chart of what I'm talking about (it makes it easier to see):

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FZ0iBQ.png&hash=c42a6f7e4ad7d61935af7f2bdde8dbe0)


and a flowchart of SetparameterH264Encode to see how the structure is setup differently in each recording mode:
(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FwRjIn.png&hash=a2b74b78d41a72e85b1cd1acf27c99d0)




tl;dr
H264E_SetParameterH264Encode and the functions it calls need looking into.






---------
More analysis:

assuming 1080p video
LVCDEV_H264EncodeStart calls H264E_SetParameterH264Encode with arg0 as 0xA.

In H264E_SetParameterH264Encode, if arg0 is 0xA, the structure looks like this:
0x846C struct
off_0x64 = off_0x68
off_0x74 = off_0x78
off_0x84 = off_0x88
off_0x94 = off_0x98
off_0xA4 = off_0xA8
off_0xB4 = off_0xBC
off_0xB8 = off_0xC0
off_0xD4 = off_0xDC
off_0xD8 = off_0xE0


The initial values of the offsets on the right are setup in H264E_InitializeH264Encode (0xFF177F74), and are pulled from a pointer at off_0x8 of the struct at 0x846C, though I can't check the values now. There are two other H264E_Initialize functions: one for 720p and one for VGA.


I can't test anything because i don't have my macbook back yet (ffffffuuuuuuu), but interesting areas to look would be the values of the offsets on the right, ie: values we could overwrite and trick the h264 encoder into using.
Title: Re: 500d development
Post by: kyselejsyrecek on 03 / January / 2012, 13:06:12
Has anyone got any ideas what's wrong and what's not working? Also when shooting in 24fps it looks like there's great loss of quality. Any ideas? ;) thanx

I haven't actually remarked any loss of quality since I haven't played with the frame rate much. But I still think that mk11174 was right when saying that with fps override, the individual frames overlap. It also looks to me that the shutter override works wit fps override enabled, it just ignores the fps setting leading to overlapping multiple (or incomplete) frames. That seems to me to be the cause of the tiny light loss when lowering shutter speed (most noticeable with lower fps) as the electronics needs some time to set everything up for the next frame (a black moment between two frames) - with faster shutter, if frames overlap, this moment is included several times causing the light loss. And it also explains, why shutter speed seems to be forced at 1/fps when enabling fps override - the single frames just get overlapped (summed) until we start computing the next video frame.

The HDR video and irregular "flashing" when exposure is set to the original value (or a sort of) in 1080p looks to be a similar problem caused by not too accurate timing of ML override routines - forcing them to sleep a few mseconds isn't a good idea for frame rate that gives a period which we are not able to represent by a decimal value. They should be rather called when the frame rate timer expires, or maybe we could (much better way, and well, not portable) alter some values in the memory in order to set the shutter/iso right in the Canon routines without calling ours every time a new frame gets processed.

Anyway, there won't be fully-working fps overriding until the shutter gets fixed.
Title: Re: 500d development
Post by: vorob on 04 / January / 2012, 05:41:38
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / January / 2012, 08:14:48
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.


Hi,
you need to wait some time after opening the card slot door until the red card LED flashes. After that, it is safe to remove the memory card otherwise the camera will lock up.
Title: Re: 500d development
Post by: Coutts on 04 / January / 2012, 11:32:33
With some slight tweaks, I was able to get the arm-console to work under windows! :D
No cygwin required, I just installed yagarto for an arm toolchain, python 2.6, and installed all of the required packages.

(https://chdk.setepontos.com/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FvnSwx.jpg&hash=9a01b23c3b506e0f8eec26a51f417817)

note: I had to change disasm.py to account for the different new line characters in windows (vs unix), but after that everything works!
Title: Re: 500d development
Post by: pat_loonytoon on 04 / January / 2012, 12:34:10
That may help me quite a bit. Thanks Coutts
Title: Re: 500d development
Post by: Chuchin on 04 / January / 2012, 15:55:09
Coutts, I installed Alex's arm console this passed summer but I got some errors I couldn't decompile. Are you able to share your disasm.py file?

Edit, Nevermind found it thanks for the tip. :)
Title: Re: 500d development
Post by: vorob on 05 / January / 2012, 02:29:59
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.


Hi,
you need to wait some time after opening the card slot door until the red card LED flashes. After that, it is safe to remove the memory card otherwise the camera will lock up.

And this is because of custom firmware? Any way to revert it back to default state? Cause i'm planing to sell camera.
Title: Re: 500d development
Post by: kyselejsyrecek on 05 / January / 2012, 11:02:43
Hi, I need your help,

Few years ago I was testing this custom firmware, but decided to delete it. I formatted my SD card and forget about it. I’ve even updated my camera to the latest official firmware. But I have this weird bug:

I turn off camera, pick out sd card and close tray. Leave camera for some time and when I pick it back its hot and battery is discharged.

What should I do to fix this issue?

Thanks for any help.


Hi,
you need to wait some time after opening the card slot door until the red card LED flashes. After that, it is safe to remove the memory card otherwise the camera will lock up.

And this is because of custom firmware? Any way to revert it back to default state? Cause i'm planing to sell camera.

Just try to start the camera without Magic Lantern on the card, it won't happen anymore ;-)
Title: Re: 500d development
Post by: Greg31 on 05 / January / 2012, 12:09:43
Is the flash sound trigger possible using ML?
Title: Re: 500d development
Post by: mk11174 on 05 / January / 2012, 12:27:10
I wonder if Alex caught your finding the other day on how HDR seems to actually work for us when using the zoom out button to autofocus? I hope he looks into that since its clear the camera can actually do it with some kinda of fix. 8] Work your magic Alex!
Title: Re: 500d development
Post by: pat_loonytoon on 05 / January / 2012, 14:33:49
Yeah I've also been anxious after Greg's good find on that. For everyone's remembrance-
ML HDR video (http://www.youtube.com/watch?v=76vYmpWiduA#ws)
Title: Re: 500d development
Post by: vorob on 05 / January / 2012, 16:07:26
Decided not to drop off custom firmware and give another shot (previous one was a year ago). And you know? Its good! Menu doesn't fliquer as it used to and now i've got many options in video mode. Already tried full manual control + small zoom window for more accurate focus.

One thing, when i'm trying to override FPS setting i only get 21. Why is so?
"Overcranking doesn't really work; the 60D hardly gets 35fps in 1080p. On the other hand, 500D and 50D can now record at 24p!"
Looks like 24 must be there.

Anyway, i'm more like consumer user so for me as much fps i have is better. Any way to have 30p in future? Or there are some HW limits? Or we have only cinema guys here so 24p is ok for them and no need in 30p?

[q] = auto, what is it "Q"?
Title: Re: 500d development
Post by: adijiwa on 06 / January / 2012, 03:57:14
One thing, when i'm trying to override FPS setting i only get 21. Why is so?
"Overcranking doesn't really work; the 60D hardly gets 35fps in 1080p. On the other hand, 500D and 50D can now record at 24p!"
Looks like 24 must be there.

Yes, 24p works!





in 720p mode...
The statement is a bit ambiguous...
Title: Re: 500d development
Post by: vorob on 06 / January / 2012, 04:08:14
Well, in 720 i've got horrible image because of moire and i also have there 30p, so no need in 24 :D
Title: Re: 500d development
Post by: PHrag on 06 / January / 2012, 09:04:36

Anyway, i'm more like consumer user so for me as much fps i have is better. Any way to have 30p in future? Or there are some HW limits? Or we have only cinema guys here so 24p is ok for them and no need in 30p?

[q] = auto, what is it "Q"?
FPS control still doesn't work too good, I'd suggest staying at 30 because you can't get more anyway (for now(maybe)). It's not like 24p is all we need, but forcing something to do less than it's supposed to do is generally easier than doing more.
Nobody really knows what the HW limits are.
(forgive and correct me if I'm wrong)

[q] button on 550D = Live View button on 500D
Title: Re: 500d development
Post by: gedas5 on 06 / January / 2012, 12:08:28
@ vorob

[q] button = recording button
Title: Re: 500d development
Post by: Nyax on 08 / January / 2012, 17:50:48
Hi, I'm new here, so first : Thanks, Magic Lantern is awesome !
I'm using it since a month, and love it.

Currently I'm trying to do long exposure shots, and I was wondering : could it be possible to go lower than 100 ISO ? I don't know how the hardware part is working, but ISO is the sensor gain, right ? So maybe it's possible to do something like under-power the sensor and get ISO 50 or 25 ?
With lower ISO, we could also shot video with wider aperture in bright light !

Keep up the good work.
I try every new build, haven't seen an error 70 for a long time. This piece of software is getting better and better !
Title: Re: 500d development
Post by: pat_loonytoon on 08 / January / 2012, 19:13:16
http://www.facethelight.com/iso.php (http://www.facethelight.com/iso.php) explains iso well, I'd give it a quick read.
The lower that iso # the less grain but also the sensor is not as sensitive so it takes longer to get a brighter photo.
Also, General ranges- Low ISO (50-400)   /   High ISO(800-3200)
Title: Re: 500d development
Post by: Gary on 08 / January / 2012, 21:00:31
There are 3 features I love that I'd like to use together.  They rarely work together:
Silent Picture
Intervalometer 10sec
4FPS (to allow for 1/4s exposure)

Less important 2 that don't work together:
1576x1048 SP
HDR

Any workarounds?  Anyone understand why they don't?  New build to fix it?
ML is amazing!
Title: Re: 500d development
Post by: Gary on 08 / January / 2012, 21:17:30
SP Intervalometer is slow at any resolution.  It cannot handle 5 secs reliably.  So I tried pushing the button instead.  It takes time to load and display the 422 image after it is taken.  Also 5 seconds.  Can anyone modify the code to turn off displaying in SP mode after each picture?
Title: Re: 500d development
Post by: Nyax on 08 / January / 2012, 23:55:11
@pat_loonytoon : Thanks for the link.
With lower ISO, it takes longer to get a brighter photo -> Yep, that's what I want !
My 500D can't go under 100 ISO. Sometimes I wish it could go lower.

Hidden message : I'd like to do some long exposure shots, but don't wanna buy a neutral density filter. :D
Title: Re: 500d development
Post by: pat_loonytoon on 09 / January / 2012, 01:47:23
Oh well in that case decrease your manual shutter speed, and increase F-stop to desired setting. That should get you almost there.
Title: Re: 500d development
Post by: kyselejsyrecek on 09 / January / 2012, 08:42:24
Currently I'm trying to do long exposure shots, and I was wondering : could it be possible to go lower than 100 ISO ? I don't know how the hardware part is working, but ISO is the sensor gain, right ? So maybe it's possible to do something like under-power the sensor and get ISO 50 or 25 ?

I highly doubt it as the high isos are just a digital gain (applied by post-processing), not analog, if I remember well. I don't know if ISO 50 works the same way on pro cameras but there's probably no way to do this by analog in the sensor (or at least at the moment).
Title: Re: 500d development
Post by: ilguercio on 09 / January / 2012, 13:29:27
Iso 50 is digital for sure, iso up to 3200 are the standard on prosumer cameras (if we are talking about analog gain) .
The digital one is usually the H value (1, 2, 3) meaning that it is not something you should rely on too much.
Title: Re: 500d development
Post by: a1ex on 09 / January / 2012, 13:42:19
ISO 50 digital (video only) is in the latest changesets.
Title: Re: 500d development
Post by: pat_loonytoon on 09 / January / 2012, 16:01:57
I am using the workflow for HDR that was presented and I want to know if anyone has figured out if it is possible to have the alternating frames combined into a exr  (openexr format) per HDR frame and then combined into a exr for an output that truly is 32bit and can be tweaked as one sees fit. This sort of workflow would be most beneficial. If anyone has an easier, better, workflow please share.
Title: Re: 500d development
Post by: Gary on 10 / January / 2012, 09:28:26
This workflow is not easy nor quick.  But the results are nice!
HDR Video Workflow with ML on 60D (Mac and PC) (http://vimeo.com/34792788)

How did you get HDR on 500D?
Title: Re: 500d development
Post by: pat_loonytoon on 10 / January / 2012, 13:45:09
HDR on the 500D still has issues but as it typically goes it just needs time to be sorted out. I think we discovered it isn't a hardware issue though as pressing the zoom button will operate the HDR function closer to the proper speed of alternating every frame.
Title: Re: 500d development
Post by: Gary on 10 / January / 2012, 13:49:42
Thanks will wait patiently to begin testing.  I am using a 2w IR laser to Trap Focus wildlife in the dark.  It has a range of 100m.  Very cool!  Wouldn't be possible without ML...
Title: Re: 500d development
Post by: a1ex on 13 / January / 2012, 14:29:06
I'm revising the FPS calculations and I need some help.

Set the standard frame rates from Canon menu (both PAL and NTSC numbers), hit record, and then hit "don't click me". It will show a magic number. Tell me those numbers (for all modes).

Math: that value is clock_frequency / fps / 1000 - 1. I need to find clock_frequency. It seems my previous guess is not really exact (it was only exact for 60D and 600D, and extremely close for 550D).
Title: Re: 500d development
Post by: mk11174 on 13 / January / 2012, 15:26:29
I'm revising the FPS calculations and I need some help.

Set the standard frame rates from Canon menu (both PAL and NTSC numbers), hit record, and then hit "don't click me". It will show a magic number. Tell me those numbers (for all modes).

Math: that value is clock_frequency / fps / 1000 - 1. I need to find clock_frequency. It seems my previous guess is not really exact (it was only exact for 60D and 600D, and extremely close for 550D).
i got a 303 in 1280x720 mode set to 30fps in fps and 304 with fps off a 3c4 at 24fps.

i got a 4cd at 1080p with fps set to 20fps  a 4d1 with fps off

i got a 303 at 640x480 set at 30fps i got a 304 with fps off

by the way i am normally ntsc but if i switch to pal i get same numbers
Title: Re: 500d development
Post by: a1ex on 14 / January / 2012, 02:21:42
So.. it seems 500D can do 30.000 fps and 24.000 fps. Those were the only "round" numbers I was able to get (for 29.970 / 24.976, the result is not exact). Also, it can't do 25.000 (but it can do 25.010).

With this autoexec, in PAL mode you should get 25.010, 24.000 and 12.505 (at least to avoid flicker as much as possible), and in NTSC you should get 30.000, 24.000 and 15.000 (non-standard, but that's all I can get).

If you have an external audio recorder, you can try to do some audio sync tests; these will tell whether the above numbers are correct or not.
Title: Re: 500d development
Post by: PHrag on 14 / January / 2012, 05:43:17
With this autoexec, in PAL mode you should get 25.010, 24.000 and 12.505 (at least to avoid flicker as much as possible), and in NTSC you should get 30.000, 24.000 and 15.000 (non-standard, but that's all I can get).
With that autoexec my camera locks up immediately after booting, shows the default screen on any mode, can focus and take pictures (but they are not stored) and the buttons won't do anything, there are little graphic artifacts on display (few light lines) and it flickers a bit.
Title: Re: 500d development
Post by: bkkenny on 14 / January / 2012, 08:46:34
With that autoexec my camera locks up immediately after booting, shows the default screen on any mode, can focus and take pictures (but they are not stored) and the buttons won't do anything, there are little graphic artifacts on display (few light lines) and it flickers a bit.
I can report the same. The number of pictures remaining doesn't display either.
Title: Re: 500d development
Post by: a1ex on 14 / January / 2012, 09:33:09
Should be OK now.
Title: Re: 500d development
Post by: mk11174 on 14 / January / 2012, 11:13:10
Should be OK now.
Seems to fine, and ext audio lines up fine at 24fps after converting the 30fps to 24fps with script of coarse.
Title: Re: 500d development
Post by: kyselejsyrecek on 14 / January / 2012, 11:24:47
Wait.. how can record external audio synchronized with the video if we don't have an external mic input?
Title: Re: 500d development
Post by: mk11174 on 14 / January / 2012, 11:47:36
Wait.. how can record external audio synchronized with the video if we don't have an external mic input?
i just use an external audio recorder i mount on cam, and line it up later in premiere.
Title: Re: 500d development
Post by: utnuc on 14 / January / 2012, 13:01:26
Seems to only allow 10 fps on fps override.  Am I missing a setting somewhere?
Title: Re: 500d development
Post by: mk11174 on 14 / January / 2012, 13:37:07
Seems to only allow 10 fps on fps override.  Am I missing a setting somewhere?
press the record button to go into submenu for it to change from there
Title: Re: 500d development
Post by: freeman656 on 16 / January / 2012, 05:04:43
Hi,
I'm not sure if it was already discussed before but where is the 30 fps limit of the 500D ?
Is the processor not powerfull enought ? Or the CMOS sensor ?

If there is no real hardware problem, is there a chance to get fps higher, even in low res ?

Thanks,
Title: Re: 500d development
Post by: pat_loonytoon on 17 / January / 2012, 14:47:14
Hey Freeman, sorry the board is so quiet- either people are working diligently or they are on an extended vacation- either way, to somewhat answer your question:
The camera has been found to be quite capable of many things we once thought not-
however, FPS and resolution I think are the most trying of all tasks as it is not purely a rear display or timing issue. I'm probably wrong, which I hope I am, but I doubt we'll be able to get something like 60fps @ 1080p or even 720p.
Someone working on this exact thing though could answer better.
Title: Re: 500d development
Post by: pzotalis on 17 / January / 2012, 16:17:09
Hey Freeman, sorry the board is so quiet- either people are working diligently or they are on an extended vacation- either way, to somewhat answer your question:
The camera has been found to be quite capable of many things we once thought not-
however, FPS and resolution I think are the most trying of all tasks as it is not purely a rear display or timing issue. I'm probably wrong, which I hope I am, but I doubt we'll be able to get something like 60fps @ 1080p or even 720p.
Someone working on this exact thing though could answer better.

For me, one realistic goal could be to make 1080p 24fps. What do you think?
Something similar
I mean, making the 1080p a usable tool...
Right now is a canon´s bad joke.
Title: Re: 500d development
Post by: pat_loonytoon on 19 / January / 2012, 00:47:35
Hmm it's pretty vacant on here...did SOPA and PIPA already pass?
Title: Re: 500d development
Post by: freeman656 on 19 / January / 2012, 03:06:02
Don't know...
Do you think this kind of forum would have some problem with SOPA or PIPA ?
Title: Re: 500d development
Post by: rebelT1i on 19 / January / 2012, 19:49:24
I think all websites have a problem with SOPA/PIPA.
vv Unless you like the look's of the comment below vv

 █ ████████ ██████ ██████████ ██ ████ ██ ████ ██████████ ██. ███ ███
 This comment has been found in violation of H.R. 3261, S.O.P.A and has been removed.

Don't know...
Do you think this kind of forum would have some problem with SOPA or PIPA ?

Title: Re: 500d development
Post by: Greg31 on 20 / January / 2012, 10:01:40
http://groups.google.com/group/ml-devel/browse_thread/thread/1a5de0dffd5c5039/056874111768c8c2?show_docid=056874111768c8c2 (http://groups.google.com/group/ml-devel/browse_thread/thread/1a5de0dffd5c5039/056874111768c8c2?show_docid=056874111768c8c2)
Title: Re: 500d development
Post by: mk11174 on 22 / January / 2012, 09:52:35
for alex
Title: Re: 500d development
Post by: rebelT1i on 26 / January / 2012, 08:24:42
It's scary quiet around here lately!
Title: Re: 500d development
Post by: mk11174 on 26 / January / 2012, 11:17:25
It's scary quiet around here lately!
Sure is, I was trying to fix the HDR issue, but no luck, seems like its something that can be fixed being that it works so good while autofocusing, sux we dont have another Alex around that can work on it for us. 8[
Title: Re: 500d development
Post by: Liamykins on 27 / January / 2012, 07:00:30
It's worrying, I just don't understand where everyone has disappeared too? I'm still eagerly keen for magic lanter to progress!
Title: Re: 500d development
Post by: freeman656 on 27 / January / 2012, 07:23:01
But looking on the magic lantern svn repo, Alex seems to be commiting some stuff....
Title: Re: 500d development
Post by: mk11174 on 27 / January / 2012, 09:37:28
But looking on the magic lantern svn repo, Alex seems to be commiting some stuff....
Alex is doing plenty, thats why I said I wish we had another Alex that can concentrate on the 500d hdr problem. 8]
Title: Re: 500d development
Post by: Jamez on 28 / January / 2012, 07:49:53
Its a bit harsh guys, give Alex a break.
Hes been working on improving things on an almost daily basis (and multiple commits a day often).
Just check through the changesets here...
https://bitbucket.org/hudson/magic-lantern/changesets/c1926462ebfb
There is a new Vectorscope feature that Alex has included, written by someone else, and lots of other changes which might fix a few bugs.
Title: Re: 500d development
Post by: mk11174 on 28 / January / 2012, 12:21:45
Its all good hear, I know Alex has been busting his but, he has alot of cams he is making cool things for, thats why I said I wish there was another one of him to go around 8]

I check the changesets everyday so I know all the hard work he is doing.
Title: Re: 500d development
Post by: ats1995 on 30 / January / 2012, 09:24:40
Today I fooled around with the 500d on my TV using hdmi and 22 jan build. Lots of funcions where not working properly, like focus peek, magic zoom and zebras. These haven't been working at earlier (?) builds either. Force hdmi-vga gives a out-of-shape image.
The odd thing however, was that I got err 70 while replaying a clip! (I think it's happened once before, but at tat time I was a noob :P) Later, after switching my cam of and unplugging the hdmi (don't remember what order), it asked me to reenter date and time! It made me a bit shaky...
Title: Re: 500d development
Post by: a1ex on 30 / January / 2012, 13:55:47
Probably 500D has different resolutions in HDMI compared to other cameras. 550D, 60D, 600D and 5D2 are all the same ( see http://videos.smallhd.com/the-truth-about-canon-dslr-output-signals/ (http://videos.smallhd.com/the-truth-about-canon-dslr-output-signals/) and  http://magiclantern.wikia.com/wiki/HDMI_Output (http://magiclantern.wikia.com/wiki/HDMI_Output) ).

You can compile in debug mode and use the VRAM menu to calibrate zebras and focus peaking. Magic Zoom won't work well in high-resolution HDMI (it's not needed at that resolution anyway).

Here's the meaning of those parameters:
http://magiclantern.wikia.com/wiki/VRAM/Geometry (http://magiclantern.wikia.com/wiki/VRAM/Geometry)
Title: Re: 500d development
Post by: BIGBOSSS on 31 / January / 2012, 11:26:27
http://youtu.be/Dn9SWcgqqUE (http://youtu.be/Dn9SWcgqqUE)  :'(

Why is there seen a lot of pixels? :( Help ME
Title: Re: 500d development
Post by: ats1995 on 31 / January / 2012, 11:31:30
The bitrate is probably at 0,1 or someting. Go to the video tab, into the submenu of bitrate and set it to firmware default. If you want, you can try to push it higher. For more and more precise info press the disp button.
Title: Re: 500d development
Post by: Gary on 31 / January / 2012, 13:25:22
Hey MK - It's been so long I've forgotten.  Did you ever get 2x2 Hires working?  Or only 4x5?  I tried it again today perfect!  What's the next step for 2x2?  How can we make it faster?  Seems there's a delay in there somewhere...

The reason I'd like it is because 4x5 is too slow.
Title: Re: 500d development
Post by: mk11174 on 31 / January / 2012, 14:26:34
Hey MK - It's been so long I've forgotten.  Did you ever get 2x2 Hires working?  Or only 4x5?  I tried it again today perfect!  What's the next step for 2x2?  How can we make it faster?  Seems there's a delay in there somewhere...

The reason I'd like it is because 4x5 is too slow.
No, sorry, that was the last time I messed with it, to many updates with ML to keep it up to date, I have been focusing on chdk for my kids cam, then I tried working on our cam hdr issue but got nowhere fast 8[
Title: Re: 500d development
Post by: Gary on 31 / January / 2012, 16:32:58
Can you do 2x2 for me?  You're the expert!  I'd be happy to make the python work for 2x2.
If you could put the 4x5 and 2x2 into the newest ML someone might like it besides me!
Can you get Alex to include your existing changes?

I really appreciate your work on 4x5 Hires.  I use it every month.  Maybe there's nothing to do in ML for 2x2.  Maybe all the work is in python.  If so I'll do it.  Can you verify they are overlapping in the newest version of ML?  Just say the word and I'll finish it.

While you're at it... Can you LOOK for unecessary delays in Hi-res?
Title: Re: 500d development
Post by: pat_loonytoon on 01 / February / 2012, 00:43:23
Any of you guys using a Zoom H1? I figured I might upgrade my audio with tax return money
Title: Re: 500d development
Post by: mk11174 on 01 / February / 2012, 01:06:38
Any of you guys using a Zoom H1? I figured I might upgrade my audio with tax return money
yeah, i actually got zoom h1 for xmas, not bad device, feels kinda cheap but works nice.
Title: Re: 500d development
Post by: mk11174 on 01 / February / 2012, 01:30:07
Can you do 2x2 for me?  You're the expert!  I'd be happy to make the python work for 2x2.
If you could put the 4x5 and 2x2 into the newest ML someone might like it besides me!
Can you get Alex to include your existing changes?

I really appreciate your work on 4x5 Hires.  I use it every month.  Maybe there's nothing to do in ML for 2x2.  Maybe all the work is in python.  If so I'll do it.  Can you verify they are overlapping in the newest version of ML?  Just say the word and I'll finish it.

While you're at it... Can you LOOK for unecessary delays in Hi-res?
Will see, its been awhile since I messed with that, I barely remember exactly what I did to get where I was, I should of made notes of everything I tweaked to fix what I fixed.

I dont know about getting alex to add to port though cause its only our camera that uses differnt settings it seems for it to get it to work correctly, it was not just a 422 script fix, it was in ML, and our cam seem to not use the standard values to make them work right, so I dont know if it will be addable, if it was, you would think it would of gotten added back then when I made the fix.
Title: Re: 500d development
Post by: pat_loonytoon on 01 / February / 2012, 01:48:47
Cool, checked out quite a few videos...I might though go with the H2 as it has quite a bit more cardioid control.
Title: Re: 500d development
Post by: ats1995 on 01 / February / 2012, 03:42:26
Reply to a1ex's post 2391:
I'm not a programmer of any kind, unfortunately, so I don't know how to fix any of these things. Someone out there, help?! :D
Title: Re: 500d development
Post by: g1_ on 01 / February / 2012, 04:47:30
Can someone confirm for me that bulb ramping works for sunrise as well as sunset?

Can someone explain how it generates the curve and how it uses it?
Title: Re: 500d development
Post by: Gary on 01 / February / 2012, 10:55:19
@mk- It's an if statement.

assign values for all other cameras already in code
if(500d) assign your values.
  if(2x2) assign different values.
Title: Re: 500d development
Post by: Gary on 01 / February / 2012, 12:52:23
I have a bug that pops up after awhile.  It's repeatable I wrote down every step.  It happens whenever I use SP, burst, HDR with audio trigger.  The audio trigger bit I don't think is the problem.  It takes maybe 10x3 shots great!  Then it stops adjusting the exposure.  Every picture of the set of 3 is the same.  Please help Alex!  Anyone have suggestions what parameters to change to fix it temporarily?

I've got my camera spinning 30RPM on a stepper.  Stops, takes 3, spins another 50 degrees.  Repeat.  The effect will be really cool!  I'm going to make an infinite HDR panorama (still).  Then turn it into video by scrolling.  Wait until you see it!

The culprit seems to be the "Dim display" option.  Every time I turn it off it works.  Back on is problem.  Is this possible?
Title: Re: 500d development
Post by: s1r7o8y on 01 / February / 2012, 18:27:16
Hey guys,

I´m struggling with the fact that LiveView in video standby mode always shuts down after about 30 minutes and I don´t know how to configure for a permanent video output on my external monitor. I already set auto shutdown OFF in the Canon menu and Dim Display as well as Turn off LCD and LV OFF in ML. Is there any other option to prevent the camera from stopping the LiveView when idle for a certain time?

Just in order you see what I mean - my setup is the following: I´m mounting the camera on the rigging of a stage with a magic arm, the camera is permanently powered by an AC battery adapter and I want to start and stop recording certain parts of the show from stage via wireless remote. In order to check the image and STBY/REC status I´m using the external monitor connected via HDMI. So now I´ve got the problem with LiveView being shutdown after a while and me not having any signal and losing control of the camera from remote.

If I´d have access to the camera I could wake it up by halp-pressing the shutter down but even if so it would have lost the Exp. override ON status and the previously set values for aperture, shutter and ISO.

Is this behaviour just the way it is or can it be changed? Any ideas how to solve this?

As for ML I´m using the 22-Dec version from Alex.

I know this may be a little off-topic here as I´m not sure if it´s a ML issue at all, but thanks for reading and for potentially helpful feedback!
Title: Re: 500d development
Post by: Gary on 01 / February / 2012, 18:51:32
I believe the Shutter half-press option in ML Tweaks does just that.
Title: Re: 500d development
Post by: rootsxi on 01 / February / 2012, 21:05:17
greetings, Pat_loonytoon I have been using the H4n and LOVE it! I know its 2x more than the H2, but it has more than twice the features (xlr input, phantom power, etc...) that's my two cents. either way external audio makes this ML something awesome, at least on our 500d... btw, I had a little trouble syncing up audio without audio on T1i, so I could push bitrates up up up and have been using an ipad app called dslr slate in order to sync them visually.
later
Roots
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2012, 00:26:18
Hey rootsxi, Yeah I modded my T1i back in January of last year (http://chdk.setepontos.com/index.php?topic=5971.15 (http://chdk.setepontos.com/index.php?topic=5971.15)) but yeah after realizing I decreased the resale value of my camera just for more mono sound I was a bit disappointed. I've been drooling over the Zoom H2n as it has many cardioid patterns to use for any occasion so I probably will go with that...either that or buy a T2i and use a H1...but in that case I wouldn't be as obsessed with the community on here so...yeah I probably shouldn't get rid of my T1i  :D
Title: Re: 500d development
Post by: ilguercio on 02 / February / 2012, 01:00:09
I have the H1 and it had a little refresh with a recent firmware upgrade.
Nothing spectacular but now it can be used as a usb mic for you computer and boots up in half the time.
It is cheaply made, though. The door battery has quite a play and it can be recorded by mistake if you touch the unit and i don't think it will survive the weakest drop or abuse. Quality wise it is good, really, i just need to do a windscreen and i think i'm done. I screwed it onto the camera with a screw i have found on ebay and it fits perfectly onto the camera. Just don't overtighten the part that screws into the Zoom. I wish i could have some sort of usb remote so i coud start it with my left thumb, it would make syncing a lot easier.
Since i don't have any audio on my 50D i tend to push the record buttons at the same time so i end up with the audio and video track pretty much aligned in terms of timeline. The offset is always within 300ms.
I haven't tried the H2 myself but several reviews say it is no better that the H1 when it comes to audio quality. It is obviously better built and has a few more features but it also weighs more and might be too bulky on the camera.
It's up to you, i wanted something simple and i had the little one.
Title: Re: 500d development
Post by: pat_loonytoon on 02 / February / 2012, 01:05:55
Yeah H2 functions similar to the H1, H2n though has some nice new features such as a backlit screen
EDIT: All I think have the backlit screen lol- Mainly it is just the extra mics that I'd be wanting built in
Title: Re: 500d development
Post by: Gary on 03 / February / 2012, 17:09:57
I've been loving 4FPS for timelapses.  Until I tried to turn the camera with a servo.  Any near horizontal line flickers like crazy due to aliasing with 720p.  Can we get 4FPS to work with 1080p?  In the future?  Why not?
Title: Re: 500d development
Post by: bkkenny on 04 / February / 2012, 05:33:47
(Hope this isn't too off topic...)
Can you post any of your work Gary?
Title: Re: 500d development
Post by: a1ex on 04 / February / 2012, 07:59:13
What happens when you enable 4fps in 1080p?
Title: Re: 500d development
Post by: Nyax on 04 / February / 2012, 13:25:55
In 1080p, if you enable FPS Override the frame rate is constantly switching between the default 20fps and the override value (for any value, not only 4fps).

720p is working fine, even at 2fps.

[edit] Uploaded an example. I was moving the camera at a constant speed.
1080p, no sound, fps override @4fps.
Title: Re: 500d development
Post by: a1ex on 04 / February / 2012, 13:34:15
Maybe playing with the delay from fps_task (fps-engio.c) has some effect... no idea, all other cameras are working fine with this method.
Title: Re: 500d development
Post by: Gary on 04 / February / 2012, 15:00:18
I don't know if the frame rate is changing, but the brightness is changing.  I assume this is due to the exposure changing from 1/20 to 1/4 and back.  It stays at one or the other for between 5-20 frames.  Then it alternates.  I can't see any pattern to the length of the cycle.  Please help Alex!  Take a guess and let us try it?
Title: Re: 500d development
Post by: a1ex on 04 / February / 2012, 15:25:08
Well... the guys from bitbucket say it's fixed: https://bitbucket.org/hudson/magic-lantern/issue/979/500d-1080p-movies-uneven-exposure-when
Title: Re: 500d development
Post by: gliendo on 04 / February / 2012, 15:26:44
Hey rootsxi, Yeah I modded my T1i back in January of last year (http://chdk.setepontos.com/index.php?topic=5971.15 (http://chdk.setepontos.com/index.php?topic=5971.15)) but yeah after realizing I decreased the resale value of my camera just for more mono sound I was a bit disappointed. I've been drooling over the Zoom H2n as it has many cardioid patterns to use for any occasion so I probably will go with that...either that or buy a T2i and use a H1...but in that case I wouldn't be as obsessed with the community on here so...yeah I probably shouldn't get rid of my T1i  :D

The H2 is a pretty good all around mic.
this is how it looks mounted on the t1i if interested.

not very practical, but good easy enough to handle for recording sound if on a tripod.




Title: Re: 500d development
Post by: pat_loonytoon on 04 / February / 2012, 17:25:31
Cool thanks, I'm going to go with the H1 and try to find a way to mount my MXL990 shockmount to my camera to use with the H1. Thanks for the feedback :)
Title: Re: 500d development
Post by: Gary on 04 / February / 2012, 17:36:04
Thanks Alex, you're always one step ahead!  Will try it.
Title: Re: 500d development
Post by: Gary on 12 / February / 2012, 16:54:52
Alex, Can you make SP faster without using Burst?
Burst has a line with a long lens no matter how still you hold it on a tripod.
Silent Pic normal takes nearly 3 seconds to cycle including preview.
Can we get half that wait?
Title: Re: 500d development
Post by: a1ex on 14 / February / 2012, 01:19:20
If you use it with intervalometer, it should skip the preview.

You can also record at 1.5 fps ;)
Title: Re: 500d development
Post by: Gary on 14 / February / 2012, 08:56:30
I need it to stay in sync with servo moving camera, then stopping.
Would be great if it could do Intervalometer with < 1 sec cycle.
Past version of ML could not do it, will test new one.
2fps will not work because then only 1/2s shutter speed.
Title: Re: 500d development
Post by: Gary on 14 / February / 2012, 14:25:56
Hey it works at 1 second!  Only rarely does it get a horizontal line.  Why?  Wow anyway!
Title: Re: 500d development
Post by: a1ex on 14 / February / 2012, 15:42:06
Probably I need to find a more reliable method for pausing LiveView updates.

A dirty way is to write some invalid value to some DIGIC register - but I want something cleaner :D

These are the DIGIC registers:
http://magiclantern.wikia.com/wiki/Register_Map (http://magiclantern.wikia.com/wiki/Register_Map)
http://magiclantern.wikia.com/wiki/Engio_Magic_Spells (http://magiclantern.wikia.com/wiki/Engio_Magic_Spells)
Title: Re: 500d development
Post by: bjacklee on 21 / February / 2012, 02:34:36
any updates guys? ;)
Title: Re: 500d development
Post by: Jamez on 21 / February / 2012, 11:14:42
Here`s the latest...
http://groups.google.com/group/ml-devel/browse_thread/thread/bc87f877c0e5f8aa/31b3ca902390cd0e?show_docid=31b3ca902390cd0e&pli=1 (http://groups.google.com/group/ml-devel/browse_thread/thread/bc87f877c0e5f8aa/31b3ca902390cd0e?show_docid=31b3ca902390cd0e&pli=1)

Be sure to read the whole thread, theres an autoexec in alex`s later post in the that thread.
Title: Re: 500d development
Post by: rootsxi on 23 / February / 2012, 05:45:40
Greetings. I wanted to say that I am stoked about the builds to this point and that CinemaTools (from the FCP suite) does a good job of conforming the 23.976fps footage from the 30 it comes out of the camera at. Adobe interprets just as fine, but the CinemaTools actually changes the file to conform to the 23.976 it was shot at. I saw on another forum that there are builds out there that have not made it to this forum, one from the 19th of Jan in particular that is supposed to remember fps settings, have any of you tried it? any success? I cannot try it until after the end of next week. I bought a cheap card reader and regret it, I am going to get a better one. BTW the SanDisk ExtremePro class10 card that reads at 95MB/s is super for ML'ing... if any of you have trouble with buffers, this is definitely the card to use. I really cannot wait to look at this forum and see that the T1i ML is updated to give us 24fps in 1080! Yay for all the DEVs
Roots
Title: Re: 500d development
Post by: jessej on 26 / February / 2012, 04:04:41
Hi there,

would anyone be able to compile me a version of the firmware where the "write protect" check of the SD card reader of the camera is disabled in code? I've managed to break this pin on my camera, and as a result the camera can't save any pictures/video it takes to the card, making the camera pretty much useless!

Thought a software fix would be easier than physically disassembling the camera to fix the pin.

Happy to pay something via paypal for a succesful fix!
Many thanks
Title: Re: 500d development
Post by: LaLaPico on 06 / March / 2012, 22:07:01
Hey guys! It's been awhile since I've posted.. I have been tremendously happy with the work, how it's worked on the cameras. But i have a question. Did the FPS override change in code much recently? At least on the 600D (haven't tested my 500D yet), when I override the FPS to 24 in 720p mode, and then load the video file into any editor (After Effects, VirtualDub), interpret the frame rate as 24 (since the container tells the programs it's a 60FPS video), encode it and playback, it plays back as if it is in slow-mo...

Now, previous versions ago, I would do this same method, and the play back on encoded was normal.

Well, I will download the previous version and test to double check :P Maybe I am going crazy..
Title: Re: 500d development
Post by: Gary on 13 / March / 2012, 16:19:45
What's the next step for video HDR?  How can we help?  Where are we at?
I've got it working at a real slow frame rate by throwing out 10-20 frames in Post.
Title: Re: 500d development
Post by: gliendo on 15 / March / 2012, 23:34:58
so.......
Title: Re: 500d development
Post by: Gary on 17 / March / 2012, 16:41:58
Has anyone tried HDR Silent Pic?  Does it work with different EV values?
No matter which value I choose it only changes by 1 exposure level or less.
Title: Re: 500d development
Post by: sayabulleyh on 20 / March / 2012, 05:41:18
so...is this the latest update from alex for autoexec.bin??

http://groups.google.com/group/ml-devel/browse_thread/thread/bc87f877c0e5f8aa/31b3ca902390cd0e?show_docid=31b3ca902390cd0e&pli=1 (http://groups.google.com/group/ml-devel/browse_thread/thread/bc87f877c0e5f8aa/31b3ca902390cd0e?show_docid=31b3ca902390cd0e&pli=1)
Title: Re: 500d development
Post by: ats1995 on 20 / March / 2012, 13:45:29
yes, sort of. Although I use this one: https://bitbucket.org/hudson/magic-lantern/issue/1083/non-bracketed-shot-taken
Title: Re: 500d development
Post by: PHrag on 24 / March / 2012, 10:14:09
https://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54 new autoexec
I've been playing with the new fps control, but keep getting some weird artifacts, like palette of magenta, picture cut into like 3 pieces and split together, weird colors and almost always when real fps on 1/3 of the picture is replaced by black on the right side. If it helps/is possible to get fixed, I can make loads of youtube videos to show how it acts
Title: Re: 500d development
Post by: gliendo on 24 / March / 2012, 17:50:11
https://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54 new autoexec
I've been playing with the new fps control, but keep getting some weird artifacts, like palette of magenta, picture cut into like 3 pieces and split together, weird colors and almost always when real fps on 1/3 of the picture is replaced by black on the right side. If it helps/is possible to get fixed, I can make loads of youtube videos to show how it acts

fps is broken with this new version.
Title: Re: 500d development
Post by: gliendo on 25 / March / 2012, 21:09:19
https://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54 new autoexec
I've been playing with the new fps control, but keep getting some weird artifacts, like palette of magenta, picture cut into like 3 pieces and split together, weird colors and almost always when real fps on 1/3 of the picture is replaced by black on the right side. If it helps/is possible to get fixed, I can make loads of youtube videos to show how it acts

fps is broken with this new version.

here's a snapshot of the awesome grid that is video whenever fps control is enabled.

Title: Re: 500d development
Post by: Ulysses on 30 / March / 2012, 20:50:16
Folks, as I promised, the second episode of my webseries shot entirely on the 500D with ML. It still has not english subs, but I promise we will make it available pretty sun. Hope you enjoy it!

LUTA DE RUA - Episodio 2: "Salitre" - HD (http://www.youtube.com/watch?v=AixJOHZSw3s#ws)
Title: Re: 500d development
Post by: PHrag on 31 / March / 2012, 06:16:51
http://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54/2a448bba01c40ce7?show_docid=2a448bba01c40ce7 (http://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54/2a448bba01c40ce7?show_docid=2a448bba01c40ce7)

new update, FPS override now works, bugfixes
Title: Re: 500d development
Post by: noso2k1 on 01 / April / 2012, 03:59:02
Does overcranking work, with this new autoexec? And 1080p@24fps as well?
Doesn't seem to work for me. I can have720p@24fps, which is great, but that's it.

Noso
Title: Re: 500d development
Post by: PHrag on 01 / April / 2012, 04:21:28
Does overcranking work, with this new autoexec? And 1080p@24fps as well?
nope, max fps with 1080p is 20.7 and with 720 it's 31
Title: Re: 500d development
Post by: sayabulleyh on 01 / April / 2012, 06:19:06
http://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54/2a448bba01c40ce7?show_docid=2a448bba01c40ce7 (http://groups.google.com/group/ml-devel/browse_thread/thread/b52839bfdf48ee54/2a448bba01c40ce7?show_docid=2a448bba01c40ce7)

when i try to download the latest autoexec.bin (1 apr 2012), the size that i get after the download finished is 1.62mb, but on the site, it says that the size is 2253K...why i get smaller size?
Title: Re: 500d development
Post by: noso2k1 on 01 / April / 2012, 11:58:13
nope, max fps with 1080p is 20.7 and with 720 it's 31
Good to know. Thanks!
Title: Re: 500d development
Post by: bjacklee on 01 / April / 2012, 11:59:31
Folks, as I promised, the second episode of my webseries shot entirely on the 500D with ML. It still has not english subs, but I promise we will make it available pretty sun. Hope you enjoy it!

LUTA DE RUA - Episodio 2: "Salitre" - HD (http://www.youtube.com/watch?v=AixJOHZSw3s#ws)
A very nice work Ulysses.. I'm so impressed with the quality of your work.. The only noticeable downside of this based on my observation is the moire. other than that, all is great... by the way, did you shoot it using fps override? or 30p then converted to 24p? And also did you shot it flat? I hope 24fps at 1080p will be available soon.. I guess this can fix the moire issue of the video..
Title: Re: 500d development
Post by: Ulysses on 02 / April / 2012, 08:27:40
Folks, as I promised, the second episode of my webseries shot entirely on the 500D with ML. It still has not english subs, but I promise we will make it available pretty sun. Hope you enjoy it!

LUTA DE RUA - Episodio 2: "Salitre" - HD (http://www.youtube.com/watch?v=AixJOHZSw3s#ws)
A very nice work Ulysses.. I'm so impressed with the quality of your work.. The only noticeable downside of this based on my observation is the moire. other than that, all is great... by the way, did you shoot it using fps override? or 30p then converted to 24p? And also did you shot it flat? I hope 24fps at 1080p will be available soon.. I guess this can fix the moire issue of the video..

bjacklee, I shot at 30fps then converted to 24p, but as always it returns some issues. I used Magic Lantern for exposure override and white balance control. IT was crucial to have this control over manual exposure and kelvin. Its a big problem moire and even bigger the aliasing. :(
Title: Re: 500d development
Post by: kyselejsyrecek on 02 / April / 2012, 12:39:58
I don't think that moiré and aliasing can be fixed by using the 1080p - just try to view one frame from the 1080@20 video, it has the same problems as 720p. Those problems could have been fixed by a low-pass filter inserted in front of the sensor which blurs the light from lens to fit exactly the pixel grid used for 1080p recording.

Also, it was Coutts I think, who has told it to me, but the 1080p is probably an upscaled video of width about 1400px, I don't remember the exact measure.

Anyway, great work, Ulysses! :-)
Title: Re: 500d development
Post by: Ulysses on 03 / April / 2012, 07:32:15
kyselejsyrecek ir right. All of our DSLR videos are a downscale from the higher megapixels sensor, thats the reason of aliasing. Moire I dont really know but probably the sensor tecnology.

Anyway, thanks so much, kyselejsyrecek! :)
Title: Re: 500d development
Post by: bjacklee on 04 / April / 2012, 01:42:37
I'm puzzled.. I am saving money for 60d just to have 24fps in 1080p.. but if Alex can find a way to unlock 24p in 1080 mode, I might go for a new lens instead... :\
Title: Re: 500d development
Post by: kyselejsyrecek on 04 / April / 2012, 07:02:22
kyselejsyrecek ir right. All of our DSLR videos are a downscale from the higher megapixels sensor, thats the reason of aliasing. Moire I dont really know but probably the sensor tecnology.

Anyway, thanks so much, kyselejsyrecek! :)

Moiré could also be reduced by using a "blur" filter or, in other words, defocussing the pattern which produces moiré on the photo so I thought that the anti-aliasing filter calibrated for 1080p (it was made for 5D Mk.II anyway, I can't remember where I have found it) could also reduce moiré dramatically.

And you're welcome, it's really a nice work :-).

I'm puzzled.. I am saving money for 60d just to have 24fps in 1080p.. but if Alex can find a way to unlock 24p in 1080 mode, I might go for a new lens instead... :\

Well, we'd all love to, but I'm afraid hacking the camera in order to make it record in 1080p24 is a long-way run if it's actually possible.
Title: Re: 500d development
Post by: balance on 08 / April / 2012, 09:08:43
Hello everybody. Has some of you successfully used  an hdmi external monitor with Magic Lantern running on a 500D? It would be really useful to know! Thanks!
Title: Re: 500d development
Post by: s1r7o8y on 09 / April / 2012, 15:27:07
Hello everybody. Has some of you successfully used  an hdmi external monitor with Magic Lantern running on a 500D? It would be really useful to know! Thanks!

Hey balance, I'm using a Zacuto EVF, and after configuring some personal scaling presets for the video signal on the EVF it works just fine. You may have to switch between those presets from time to time in order to have maximum image size on the monitor while recording as well as everything on screen when moving through ML menus...
Toby
Title: Re: 500d development
Post by: barbar84 on 09 / April / 2012, 21:17:20
Hey folks, just wondering has anyone tried out this build on the 500d. http://groups.google.com/group/ml-devel/browse_thread/thread/3cad525f7ddec118 (http://groups.google.com/group/ml-devel/browse_thread/thread/3cad525f7ddec118) I'm not sure what level of testing feedback 500d ML users are giving to Alex. If anyone has any suggestions of tests that could be done that are 500d specific, and where to direct results. so far I'm seeing less issues when using fps overide than the last release, but again I've no idea where to see has anyone else already covered this info. Thanks again everybody, hopefully we can still get a little more (4 more frames in 1080p) out of the old 500d!
Title: Re: 500d development
Post by: balance on 10 / April / 2012, 06:49:17
Hello everybody. Has some of you successfully used  an hdmi external monitor with Magic Lantern running on a 500D? It would be really useful to know! Thanks!

Hey balance, I'm using a Zacuto EVF, and after configuring some personal scaling presets for the video signal on the EVF it works just fine. You may have to switch between those presets from time to time in order to have maximum image size on the monitor while recording as well as everything on screen when moving through ML menus...
Toby

Thanks Toby! Great!
Title: Re: 500d development
Post by: sayabulleyh on 21 / April / 2012, 05:06:22
any updates for 500d???
Title: Re: 500d development
Post by: g1_ on 24 / April / 2012, 06:41:08
Hi Alex and co.

Just updated to the latest version ahead of a motorsports event I'm shooting for TV. Everytime I install a new version things seem to better ( / more refined ) than the previous version. Keep up the good work.

Jeff
Title: Re: 500d development
Post by: gravityrem on 24 / April / 2012, 07:30:28
sorry, i havent been following this thread for a while, but where can i find the latest build ?
Title: Re: 500d development
Post by: a1ex on 07 / May / 2012, 13:40:33
Anyone online for a quick test?

Just let me know if ML menu is working. Scrollwheel should work in menu in both photo mode and LiveView (but not while recording). Also check if all menu keys work properly.
Title: Re: 500d development
Post by: adijiwa on 08 / May / 2012, 05:02:43
Hidden UI on 500D?

Check this video:

http://youtu.be/ntyI3AQZlu8 (http://youtu.be/ntyI3AQZlu8)

Today I'm using changeset 48d822198eb2 https://bitbucket.org/hudson/magic-lantern/changeset/48d822198eb2 (https://bitbucket.org/hudson/magic-lantern/changeset/48d822198eb2), and it appears when I open/close ML menu using trash button. I think I've never seen it before until today.

Skip to 0:08 if you're impatient :P
Title: Re: 500d development
Post by: a1ex on 08 / May / 2012, 06:34:34
Looks exactly as on 5D2 - ML menu sits on top of Canon's picture style menu to be able to use the scrollwheel. I assume the scrollwheel works, right?

To play with that dialog, call SetGUIRequestMode(43).

Can you run the menu backend test in LiveView? (under stability test).
Title: Re: 500d development
Post by: adijiwa on 08 / May / 2012, 07:12:22
Yes, scrollwheel works. Menu backend test is already running for a few minutes right now. It shows picture style menu on and off over a black screen.
Title: Re: 500d development
Post by: a1ex on 08 / May / 2012, 07:31:38
Sounds good.

You can play with GUIMode values to find more dialogs. Some of them are fake error messages - good for april fools jokes :P

On 550D, one of them shows the Jackie Chan logo :)
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 07:41:46
Sounds good.

Scrollwheel doesn't work in movie mode but works well in other modes. Currently I'm compiling from changeset 01b1aca9e350.

You can play with GUIMode values to find more dialogs. Some of them are fake error messages - good for april fools jokes :P

On 550D, one of them shows the Jackie Chan logo :)

April fool jokes seems a good idea :P

Btw, is there any way to change/redirect default GUI to another?
For example I want to change default whitebalance menu to 5D-like menu. Is that possible?
Title: Re: 500d development
Post by: a1ex on 10 / May / 2012, 07:54:34
Scrollwheel works in movie mode in standby? It won't work while recording (no camera can trap scrollwheels while recording yet).

To replace a GUI with another, you can do something like this, somewhere in a loop:

Code: [Select]
if (CURRENT_DIALOG_MAYBE == old_dialog) SetGUIRequestMode(new_dialog);

CURRENT_DIALOG_MAYBE is actually GUIMode (43 for 5D picstyle dialog).
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 08:26:36
Scrollwheel works in movie mode in standby? It won't work while recording (no camera can trap scrollwheels while recording yet).

In standby mode it doesn't work.

To replace a GUI with another, you can do something like this, somewhere in a loop:
Code: [Select]
if (CURRENT_DIALOG_MAYBE == old_dialog) SetGUIRequestMode(new_dialog);

CURRENT_DIALOG_MAYBE is actually GUIMode (43 for 5D picstyle dialog).

Is it similar to remapping A-DEP/CA dial to movie mode?
Title: Re: 500d development
Post by: a1ex on 10 / May / 2012, 08:39:55
No, mode remapping is done with set_shooting_mode(SHOOTMODE_M), for example.

In standby mode, does the dialog appear behind ML menu?

Is there any other transparent LiveView dialog that could be used?
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 09:27:32
No, mode remapping is done with set_shooting_mode(SHOOTMODE_M), for example.

I see...  But my question originally meant 'how to check the state'. Never mind, I already looked at the code.
Something like this?

Code: [Select]
static void wbgui_task(void* unused) {
    TASK_LOOP {
        if(CURRENT_DIALOG_MAYBE == old_dialog) SetGUIRequestMode(new_dialog);
    }
}

TASK_CREATE("wbgui_task", wbgui_task, 0, 0x1f, 0x1000);

In standby mode, does the dialog appear behind ML menu?

It behaves like in the video I posted before.

Is there any other transparent LiveView dialog that could be used?

How to find out?

Btw, these are GUI modes I found, in non liveview mode.

Code: [Select]
0 - Standby mode
 1 - Play mode
 2 - Menu
 3 - Date/time
 4 - Direct transfer
 5 - Picture style
 6 - White balance
 7 - Image quality
 8 - * Black screen
 9 - Drive mode
10 - AF mode
11 - Flash exposure compensation
12 - White balance (alternative)
13 - Cannot communicate with battery
14 - Too many batteries registered
15 - * Black screen
16 - * Black screen
17 - * Black screen
18 - Info menu
19 - * Black screen
20 - * Black screen
21 - * Does nothing
22 - * Does nothing
23 - Temperature too high, no LiveView
24 - Temperature too high, can't shoot
25 - LiveView
26 - Error 00
27 - * Does nothing
28 - * Does nothing
29 - * Black screen
30 - Set pressed
31 - ISO speed
32 - Exposure compensation/AEB setting
33 - Flash exposure compensation
34 - AF point selection
35 - Picture style
36 - White balance
37 - Metering mode
38 - Image quality
39 - Toggle trap focus
40 - Drive mode
41 - * Black screen
42 - * Black screen
43 - Picture style (alternative)
44 - ERR screen

* Does nothing means back to standby mode.

I tested until number 50 but they seem does nothing and then I stopped testing.
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 09:38:43
One more question:

TASK_CREATE vs task_create, what is the difference, and why/when to use one or another?
I already looked at http://magiclantern.wikia.com/wiki/Magic_Lantern_API (http://magiclantern.wikia.com/wiki/Magic_Lantern_API) but still need to ask...
Title: Re: 500d development
Post by: a1ex on 10 / May / 2012, 09:40:28
Basically, any transparent dialog that uses the scrollwheel should work for the menu. Plug its code in consts.h, at GUIMODE_ML_MENU, and recompile with "make clean && make".

On 550D I'm using the flash exposure compensation dialog.

Can you post a video showing the alternate WB dialog? (and also the default one).

TASK_CREATE will create the task at ML startup. The other one, task_create, will create the task at the moment of call. Usually you will only need the first one.
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 10:06:35
Currently I have no recording device. So, I think screenshots should be sufficient.

WB1 is the default dialog.


EDIT:
I already wrote the code and it works :P

Btw, when I took the screenshots, the file was broken several times. Unreadable by Ms Paint and Ms Image viewer.
Title: Re: 500d development
Post by: a1ex on 10 / May / 2012, 12:16:29
Looks good. This works in photo mode, or liveview, or both?
Title: Re: 500d development
Post by: adijiwa on 10 / May / 2012, 12:35:30
Only in photo mode non-liveview, because there is no option to open WB menu in liveview. It can be opened in liveview via ML, though.
Title: where can i find old 422-jpg.py script?
Post by: lee100 on 17 / May / 2012, 15:26:13
hi all

ML newbie here:) wonder if anyone can help me locate an old 422-jpg python script?

I'm trying take pictures in silent picture mode, 5x5, but the pictures all end up looking like scrambled TV. (i found a reference of same issue with pictures here:  https://bitbucket.org/hudson/magic-lantern/issue/1000/50d-silent-hi-res-5x5-picture-distorted (https://bitbucket.org/hudson/magic-lantern/issue/1000/50d-silent-hi-res-5x5-picture-distorted))

I looked online and found this forum, after reading through this entire thread i found a lot references saying that 5x5 USED to work.

e.g. 

on http://chdk.setepontos.com/index.php?topic=5971.msg77637#msg77637 (http://chdk.setepontos.com/index.php?topic=5971.msg77637#msg77637) gary says old script used to work

and http://chdk.setepontos.com/index.php?topic=5971.1125 (http://chdk.setepontos.com/index.php?topic=5971.1125) seems to suggest that he have 5x5 mode working

can someone just tell me where to find this "old script"?
Title: Re: 500d development
Post by: LaLaPico on 18 / May / 2012, 22:19:58
Is there something off with Focus Peak on 600D? It just gives garbage lines.. 500D works fine though
Title: Re: 500d development
Post by: silasje1 on 30 / June / 2012, 04:16:59
Any new version coming soon? the unified version still says december 2011 as latest download..

Thanks in advance
Title: Re: 500d development
Post by: a1ex on 30 / June / 2012, 18:00:25
See here: http://magiclantern.fm/ (http://magiclantern.fm/)
Title: Re: 500d development
Post by: silasje1 on 01 / July / 2012, 04:48:20
See here: http://magiclantern.fm/ (http://magiclantern.fm/)

thanks... any idea when next version will be up? im going on a airplane trip and taking photos allday. Should i use ML or just switch to original frm?
Title: Re: 500d development
Post by: a1ex on 01 / July / 2012, 04:50:38
See the testing plan - the release date depends a lot on tester feedback.
Title: Re: 500d development
Post by: silasje1 on 01 / July / 2012, 05:19:45
See the testing plan - the release date depends a lot on tester feedback.
ok.... but where does one find any beta or a bug reporting system? I would like to help but also be able to get beta's too. Sorry for being a noob here.
Title: Re: 500d development
Post by: a1ex on 01 / July / 2012, 05:37:17
First it has to pass my tests. Until then, you can compile from source.
Title: Re: 500d development
Post by: bjacklee on 24 / July / 2012, 03:32:17
Hi Alex, Is it possible now to have 24fps 1080p in 500d? I'm hoping that it would be available in RC2. :)
Title: Re: 500d development
Post by: a1ex on 24 / July / 2012, 03:40:03
No.
Title: Re: 500d development
Post by: pat_loonytoon on 31 / July / 2012, 17:08:18
This is where the 500D died  :(
Title: Re: 500d development
Post by: rebelT1i on 25 / March / 2013, 20:49:17
I'm sad to not see this being updated and people in here chattering, I use to love coming here and catching up from time to time on whats happening specifically with the T1i... Huge thanks to all that contributed most of all A1ex and Coutts
Title: Re: 500d development
Post by: Cane on 28 / March / 2013, 14:55:00
#2476
Title: Re: 500d development
Post by: 0xAF on 19 / April / 2013, 04:53:25
Have you checked @ http://www.magiclantern.fm/forum (http://www.magiclantern.fm/forum) ?
Title: Re: 500d development
Post by: rootsxi on 10 / June / 2013, 11:15:57
Pat Loonytoon, the 500d has been revived, I shot raw video on our old t1i! its true. I used to come in here to watch the development very often as well. the folks in the ML forums are very helpful and it is so cool to once again feel like im in the bleeding edge with a camera that if I could afford a newer on would be my daughters!...