Show Posts

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


Messages - Ant123

Pages: [1] 2 3 ... 5
1
Camera-specific discussion / Re: [UNMAINTAINED] Canon 40D
« on: September 03, 2019, 04:51:27 PM »
I don't known about 450D, but in Canon 40D LiveView has no special button, and must be enabled in Canon menu system. Once enabled LiveView can be enabled in some mode when pressing "set" button.

EOS 450D also uses "Set" button to turn on LiveView.

for your camera see page 161

2
Camera-specific discussion / Re: [UNMAINTAINED] Canon 40D
« on: September 03, 2019, 12:07:09 PM »
heder

Do you have the same problem with ML menu in LV mode?

3
Probably there is a bad contact in cable connection between image sensor and mainboard.
(shown on picture #8 at center)

4
Camera-specific discussion / Re: Canon EOS R / RP
« on: July 17, 2019, 12:14:00 PM »
2 Walter Schulz and other moderators

Why don't you oblige new users to read the FAQ before they can post? And then delete dumb messages / ban them.
There is no advertising on this forum. So why do we need to see their useless posts?

5
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: May 10, 2019, 10:11:22 AM »
Now i cant figure it out is there any way to shoot video with this camera?

There is only one way which works at the moment.
Recording MJPEG video on SD-card is not ready yet. I'm not sure that this will be completed ...

7
I can't understand why it works ok on 450D and not on 40D since stubs.S are same (with different values)

Because of this line

I did not found 64bit function FIO_SeekSkipFile:
Code: [Select]
NSTUB(0xFFCCD344, FIO_SeekFile)

extern int32_t FIO_SeekFile( FILE* stream, int32_t position, int whence );
int64_t FIO_SeekSkipFile( FILE* stream, int64_t position, int whence )
{
return (int64_t) FIO_SeekFile(stream, (int32_t) position, whence );
}

8
Tutorials and Creative Uses / Re: Reflections on ML & CHDK
« on: February 28, 2019, 09:44:59 PM »
That is as long as you are not looking for ML-specific ‘stuff’ such as Dual-ISO

FRSP & Dual-ISO can be implemented on EOS-M[3,5,6,10,100] cameras runing CHDK(and maybe without CHDK).

9
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 24, 2019, 09:46:51 PM »
CURRENT_GUI_MODE should be 2C94

Already found it by myself. But it doesn't help.

10
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 24, 2019, 08:05:23 PM »
Menu flickering: define GUIMODE_ML_MENU as:
Code: [Select]
#define GUIMODE_ML_MENU (lv ? 28 : 2)
It doesn't help.
This video was made with #define GUIMODE_ML_MENU (RECORDING ? 0 : lv ? 49 : 2)
https://filebin.net/f1akbgb5uprvkrxp/MVI_7190.MP4?t=3h26fipc

Quote
You will want to look at crop_rec_4k, as that's the only version working with variable frame sizes, but it will require heavy tweaking on the memory management side. It's a bit more complicated than it needs to be, but... the alternative would be to reinvent the wheel (buffering, speed optimizations and so on).

Unfortunately vxworks branch is too old and has no mlv_lite and crop_rec_4k modules.

11
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 24, 2019, 07:13:38 PM »
How to avoid the flashing(flickering) of ML menu and OSD in LiveView mode?
It also changes the colors of  Canon's OSD elements.

Was the lv_rec module replaced by mlv_rec? I'm trying to choose the reference for MJPEG recorder.

12
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 23, 2019, 12:56:20 PM »
Quote
I'm pretty sure the hardware can deliver MJPEG at full LiveView resolution
But which framerate?
Current LV-JPEG resolution 848x568 used by EOS utility, EOS SDK and eos_movrec. The framerate is around 20-22.
Do you think it's limited by USB throughput?


13
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 22, 2019, 10:51:31 PM »
Got MJpeg video by inserting this code into dm-spy function:
Code: [Select]
if (lr != 0xFFAD5870)
{
        return;
}

uint32_t lvsize = MEM(0x8304);
char* lvbuf = MEM(0x8308);
if (BUF_SIZE > (len + lvsize))
{
char buff[9];
uint32_t* pnum = (uint32_t*)(buff);
*pnum = (uint32_t)(0x63643030); // "00dc"
pnum = (uint32_t*)(buff + 4);
*pnum = (uint32_t)lvsize;
memcpy(buf+len, buff, 8);
len += 8;
memcpy (buf+len, lvbuf, lvsize);
len += lvsize;
if (lvsize % 2 != 0)
{
char junk = 0;
memcpy (buf+len, &junk, 1);
len += 1;
}
}
    return;

https://filebin.net/f1akbgb5uprvkrxp/DM.TXT.AVI

Is there better way to get LV JPEG data than intercepting debug messages?

14
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 19, 2019, 04:00:46 PM »
I've compiled ML with FEATURE_LV_DISPLAY_GAIN.
But it doesn't work out of the box.
It seems that Digic 3 has no ISO_PUSH_REGISTER (0xc0f0e0f8).
Some registers are present (0xc0f08030, 0xc0f08034) but their modification has a very short effect. Probably camera refresh their values periodically.

Another problem is the lack of shadow memory. FPS override doesn't work either, but there are signs of FPS timers:
Code: [Select]
RAM:0000A7D4 08 60 F0 C0       DCD unk_C0F06008
RAM:0000A7D8 A3 09 A3 09       DCD 0x9A309A3
RAM:0000A7DC 0C 60 F0 C0       DCD unk_C0F0600C
RAM:0000A7E0 A3 09 A3 09       DCD 0x9A309A3
RAM:0000A7E4 10 60 F0 C0       DCD unk_C0F06010
RAM:0000A7E8 A3 09 00 00       DCD unk_9A3
RAM:0000A7EC 18 60 F0 C0       DCD unk_C0F06018
RAM:0000A7F0 20 00 00 00       DCD 0x20


15
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 16, 2019, 02:39:48 PM »
On 32 GB cards, the ML does not load. I tried it on two other cards.
You can try this build

Quote
I do astrophotography and I need to brighten the view on the display so that I can set the focus on the stars. New versions of ML have this function available. Would you be able to program it into the 450D version? It would help me considerably. If you can do it, I would be willing to pay for that, just name your price.

Which function do you need? Can you explain exactly?

Note: ML is not a commercial project, so I do not need your money...

16
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 16, 2019, 12:06:43 PM »
I've put ML on the card.

Probably ML can't find some files in ML folder on SD card.
Try to format SD card in the camera and reinstall ML.

17
Camera-specific discussion / Re: Porting ML to XSi (450D)
« on: February 16, 2019, 08:36:28 AM »
3. During update blue led is blinking and nothing happend.

Installer for 450D firmware 1.1.0. : https://bitbucket.org/Ant123/magic-lantern-40d/downloads/ML450D110.fir
It works the same as 40D/5DC installer.


From 5D Classic thread:
7.) Launch the firmware update process. If you see any red led, then something went wrong. A solid blue led means that the bootdisk is now enabled. A blinking blue led means the bootdisk is now disabled (if you want to completely uninstall ML). Each time you run the firmware update it just toggles the bootdisk to the opposite of whatever it is currently. The installer FIR will make your CF card bootable for you, no further work required here.
8.) Turn the power switch off and pull your battery to turn the camera off. Just turn the camera on (make sure autoexec.bin and ML directory are on the card!) and you're all set. Press the Trash button to bring up the ML menu.

You only need to run the firmware update to enable the bootflag ONCE. Each time after that will only disable, re-enable, disable, re-enable, etc. the bootflag.


18
Camera-specific discussion / Re: Canon 80D
« on: February 15, 2019, 04:25:34 PM »
When will all these buffers be supported in QEMU?

19
But direct font taken from ML doesn't look beautiful...

RBF font looks better:


20
Camera-specific discussion / Re: Canon 80D
« on: February 03, 2019, 12:24:15 PM »
from 0xBFE00000, size 0x200000  - camera locks up with Err70, no log is saved.

0xBFF00000 memory region contains message buffers shared with MZRM core. So probably io_trace code is not fast enough for transfers caused by memcpy.

21
Camera-specific discussion / Re: Canon 80D
« on: February 03, 2019, 09:03:11 AM »
Does MMIO trace work in LiveView mode?

On EOS M3 io_trace causes crash in Rec mode.

22
Camera-specific discussion / Re: Canon 80D
« on: January 28, 2019, 07:54:34 PM »
- emulation is able to reach GuiMainTask (after updating the MPU messages and some trivial GDB patches - not yet committed)
- it gets stuck trying to communicate with Zico/MZRM (as expected)
Have you tried to apply modified EOS M3 patches? (0xFC3F1110, 0xFC3F1114, 0xFC3F1178)

23
Some progress with Zico core emulation:


But direct font taken from ML doesn't look beautiful...
But I found these fonts in M3 rom:
Code: [Select]
0xfd8a9640, 0x00021704
0xfd8eb030, 0x00024060
0xfd90f090, 0x00012e60
0xfd921ef0, 0x00056d70
0xfd978c60, 0x0009fe10
0xfda18a70, 0x0001f18c
0xfda37bfc, 0x00024cf4
0xfda5c8f0, 0x0000b9a0
0xfda682a0, 0x00000cc4
0xfda68f64, 0x00000f40
0xfda6aa8c, 0x00000cb8
0xfda6b744, 0x00000854
0xfda6bf98, 0x00000b88
0xfda6dc10, 0x00000cb0
0xfda6e8c0, 0x00000ad4
0xfda6f394, 0x0000113c

16 of them can be opened with FontForge

Also there need to decode images from ROM used to draw icons and some texts in Viewfinder mode.
These are vector graphic objects. They can be found by signature "99 99 0C 00" in DSLR's ROMs too. The next 32bit word is a size of drawing object.
Probably there need to use OpenVG to render it.



24
If you receive these strings from MMIO hooks, or from breakpoints into certain drawing functions, you will need to store them somewhere in a data structure, until the next display event comes up.

I recieve these strings from eos_handle_digic6: mzrm_send function writes 1 into register 0xD20F0840 to inform Zico core about new message.

I was trying this code, but it doesn't work:
Code: [Select]

DisplaySurface *surface = qemu_console_surface(s->disp.con);
printfxy(surface, (pos_x >> 16), (pos_y >> 16), "%s", MZRM_str);
Do I need to update the display somehow?

Even calling printfxy from eos_update_display doesn't work.

25
I think it's possible to emulate simple drawing of text strings in case main CPU will send certain messages to MZRM core...
But on EOS M3  the camera controller still does not allow to start it normally and goes to shutdown.

Got Canon menu navigation working on M3:
Code: [Select]
CtrlSrv -> SflwWrpDrawStringWithinRect [0000,0222]: No Image.
CtrlSrv -> SflwWrpDrawStringWithinRect [-6962,0434]: Memory card locked
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: SETUP4
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Certification Logo Display
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: Copyright Info
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0271]: Clear all camera settings
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Wi-Fi Settings
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: PLAY1
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Transition Effect
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0115]: Fade
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Index Effect
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0167]: On
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: Scroll Display
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0219]: On
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0271]: Auto Rotate
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0271]: On
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0323]: Resume
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0323]: Last seen
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: PLAY2
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Magnify (approx.)
CtrlSrv -> SflwWrpDrawStringWithinRect [0410,0167]: 2x
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Playback information display
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: SETUP1
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: Format
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0271]: Video system
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0271]: PAL
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0323]: Electronic Level
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Create Folder
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0115]: Monthly
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: File Numbering
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0167]: Continuous
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: SETUP2
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Power Saving
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0271]: Time Zone
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0323]: Date/Time
CtrlSrv -> SflwWrpDrawStringWithinRect [0410,0323]: '19.01.13 20:00
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: LCD Brightness
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Eco Mode
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0115]: Off
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0375]: Language
CtrlSrv -> SflwWrpDrawStringWithinRect [0410,0375]: English
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: SETUP3
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Hints & Tips
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0167]: Off
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Beep
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0115]: On
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: Touch Operation
CtrlSrv -> SflwWrpDrawStringWithinRect [0412,0219]: Standard
CtrlSrv -> SflwWrpDrawStringWithinRect [0544,0060]: SETUP4
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0167]: Certification Logo Display
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0219]: Copyright Info
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0271]: Clear all camera settings
CtrlSrv -> SflwWrpDrawStringWithinRect [0036,0115]: Wi-Fi Settings
CtrlSrv -> SflwWrpDrawStringWithinRect [0000,0222]: No Image.

Any idea how to render these strings on QEMU VGA screen?

Pages: [1] 2 3 ... 5