Display access from bootloader / Portable binary test

Started by a1ex, March 15, 2015, 07:13:36 PM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.


DeafEyeJedi


Quote from: g3gg0
@DeafEyeJedi:
can you try the one from my last post too?

Sorry didn't realize I missed out on this one. My bad!



Thanks @a1ex for the reminder.
5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

Bens8806

Not sure if this thread is still active but my 70D recently stopped working on me. The top screen works with all button functionality but the rear LCD does not come on, and the shutter button doesn't work. The SD card is also not recognized when one is inserted, with magic lantern or not. So when I heard about this, I tried it and got it to pop up. Here is my screenshot. PLEASE HELP! I do not want to send my camera to canon only for them to backdoor into it and reset the firmware or something easy and charge hundreds of dollars for that to happen.

a1ex

Try this ROM dumper and send me the resulting files. Also please send me your old ROM files, which you should have saved during ML installation (or any older copy you can find on your card, under ML/LOGS).

Do you have access to a second camera that runs ML, or to a phototransistor that you can connect to your soundcard input like this? We may need it to see Canon's debug messages during startup.

(I'll move your post to the emergency section)

rpt

Here is my image for the 5D3 firmware 123



20160730_115241 by Rustom Taraporevala, on Flickr


Is there a test for the 7D2 that I can do?

a1ex

Managed to emulate the 1000D and the old 5D in QEMU, so I could debug the VxWorks display test as well. There were many mistakes, regarding load address, caching bit, FIR signing... probably impossible to figure out blindly.

Portable autoexec: autoexec.bin (works on any EOS camera with the bootflag enabled, from DIGIC 2 to DIGIC 6)
For 1000D: DISP1000.FIR (tested in QEMU)
For 450D: DISP450D.FIR (tested in QEMU)
For 40D: DISP_40D.FIR (tested in QEMU)
For 30D: DISP_30D.FIR (not tested)
For 5D: DISP__5D.FIR (tested in QEMU)

FIR files for other models (any DIGIC) available on request.

DeafEyeJedi

5D3.113 | 5D3.123 | EOSM.203 | 7D.203 | 70D.112 | 100D.101 | EOSM2.* | 50D.109

Levas

Hi Alex, I'm interested in the 1000d file, but the links to the fir files seems dead ?

Are these FIR files to be used to enable the bootflag on these camera models ? Seems like a yes

a1ex

Fixed the links (and also added the 450D).

The portable autoexec was confirmed to work on 400D by eduperez:


Levas

I can't update the firmware with the FIR on the 1000d with current firmware version 1.0.7.

I put the FIR file on a SD card.
Run firmware update from Canon menu.
It asks me if I want to update, I press OK.
After that A screen appears,
----------------------------------
Firmware update program

          Loading...

----------------------------------
After a second or so, the color of the letters and the background color changes.
After another second, the background starts flickering/flashing and this goes on forever...waited for more then 5 minutes...
The camera doesn't react to the on/off switch.
So I pulled the battery out and restart the cam, still works like before  :D

Is there something wrong with the FIR file ?





a1ex

Yes, forgot to include this fix, should be fine now.

These FIRs contain only the display test; they won't modify anything in the camera.




BTW, the 40D, the 450D and the 1000D can do:

- in-camera MJPEG ( 40D PoC )
- RAW video ( lv_save_raw )
- full-res silent pictures ( FA_CaptureTestImage )
- most other ML stuff ( 40D only needs minor tweaks apparently )

If there is interest, I can help with the boot process (the hard part) and let you figure out the rest.

Levas

Yeah, LIVEVIEW can give the good ML features  :D

Downloaded the updated FIR file for 1000d, still got the flickering display.
Only this time the colors are different, and the text below disappears (in the other FIR file, the text was visible during flickering)
----------------------------------
Firmware update program

          Loading...

----------------------------------

Levas

I'm interested in a 1000d Port.
Full-res silent pictures would make it a great time-lapse camera  8)

I've got time, so if I can be guided trough the so called easy part  :P I can give it a try.

a1ex


Quote from: Levas on September 30, 2016, 03:59:40 PM
I've got time, so if I can be guided trough the so called easy part  :P I can give it a try.

Cool, the first - very easy - task is to blink the LED. You only need some google-fu skills (hint: use coutts' 1000d_dev repostitory).

I'll ask Edu to run a 400D FIR tonight. Not sure what's wrong - maybe the 1000D has only 64MB RAM, but the bootloader configures it as 128MB?!

(I'm placing the image buffer at 0x4000000 = 64MB, so this may explain the issue)

Levas

'(I'm placing the image buffer at 0x4000000 = 64MB, so this may explain the issue)'
Does this mean you updated the FIR file and can I give a new try ?

Levas

I've found coutts' 1000d_dev repostitory

Did run the 1000d.FIR that comes with it, and now I have a 1000d with blinking blue led.

a1ex

Alright, now make both LEDs blink, in alternating sequence.

Updated the 1000D FIR too.



a1ex

Hm, so it most likely has only 64MB...

In this case, you can replace raw video with a handful of LiveView silent pictures :P

Levas

I can live with that  ;)
My interest is in the full res silent picture function of ML in combination with the timer options  :D

mir66

For 5D: DISP__5D.FIR (tested in QEMU)
Is there something wrong with the FIR file ?
1. Firmware Ver. 1.1.1
2. Current version is 1.1.1 Update?
3. OK
4.Firmware update program
Update file cannot be found.
Please check the memory card and reload the battery and try again.
5.After reset:
Firmware update program Loading... and black screen.

regards

a1ex

Probably. Can you send me a ROM dump so I can try to debug it?


a1ex

Alright, so the problem is only with the FIR; the autoexec method works fine.

The portable ROM dumper doesn't work on very old models (5D2/500D generation and earlier) because their bootloaders don't have file writing functions (or at least I wasn't able to find them).

You can get the ROM dump from ML (Debug menu).