Main Builds » EOS M 2.0.2


Latest Build (2018-07-02 22:07)

magiclantern-Nightly.2018Jul03.EOSM202.zip

Change Log

7a3b5fa: Ghost image: further cleanups and fixes

4702ca0: Ghost image: fix crash (issues #2796, #2783, #2878, #2885)

94442d9: features.tmpl edited online with Bitbucket: use id in th section heading to allow for direct linking via anchor

5e40987: Merged in edmac (pull request #886)\u000a\u000aEDMAC module: fixes for DIGIC 4, connection map

b54a0c6: Merged in adv_int (pull request #907)\u000a\u000aAdvanced intervalometer updates

58e11ee: Merged in memory-backend (pull request #906)\u000a\u000aMemory backend improvements

87dfe3c: Makefile: fix "make install_qemu CONFIG_QEMU=y" for minimal targets

7c04c75: memset64/memcpy64: use versions from b831cb1; fix calls from Magic Zoom to ensure proper alignment

375fa4e: Backout b831cb1 (breaks Magic Zoom and CONFIG_MARK_UNUSED_MEMORY_AT_STARTUP, as memset64 is not the same as memset)

287c785: adv_int: ignore empty lines when loading keyframes

6239bc6: adv_int: use strstr instead of my_strstr (fixes slow load)

284656a: Include strstr in ML core

ef21d82: adv_int: refactor keyframe time formatting

5ca412b: adv_int: auto-load the saved sequence at startup

a4869c8: adv_int: renamed menu entry to "Ramping options"

86accb6: Memory backend: drop timestamps from history; show last 1024 events

d016ccf: Memory backend: show total allocations (number and amount), including untracked ones

0e56fe7: Memory backend: allow using shoot_malloc as a last resort, even for small blocks;\u000aallow small blocks (smaller than minimum_free_space / 64) to break the minimum_free_space limit (until minimum_free_space / 4)\u000afine-tuned until the old set of Lua scripts were able to run on 1100D without umm_malloc

28bf259: Memory backend: a pointer to task names (rather than copying the full string) should be enough

a67b3ed: Memory backend: renamed memcheck_mallocbuf to memcheck_entries

b831cb1: Moved memset64 and memcpy64 to bench.mo\u000a- simplified to accept only 32-bit aligned pointers\u000a- using regular memset for Magic Zoom\u000a- closing issue #1995

d7866ee: Memory backend: if shoot_malloc fails, try SRM next\u000a(poor man's autodetection, since we don't know how to query the available size in advance)

ee7abdb: exmem: reworked shoot_malloc to handle large requests better\u000a- moved autodetection to dedicated functions (for both fragmented and continuous allocations)\u000a- autodetect the max available size for large requests (slower, but when it fails, it fails gracefully)

bd7a1dd: exmem: removed the "relaxed" checks introduced in 04f02a4\u000a(not sure why they were needed; we'll find out if it fails)

766ffbb: exmem: speed-up shoot_malloc\u000a(1s timeout probably not needed)

51f6129: exmem: do not keep track of full shoot memory allocations\u000a(allows reserving some memory in advance and allocating all the remaining RAM afterwards)

f12eba5: Memory backend: fix handling of untracked blocks\u000a(possible buffer overflow before this fix)

f9f3358: Memory backend: figured out why AllocateContinuousMemoryResource may crash with many small blocks\u000a\u000a(todo: figure out where to keep 89e3b12 or not; adapt tests if not)

e4fd29d: Memory backend: when checking available memory, allocate both Shoot ans SRM at the same time\u000a(they may overlap)

1162fce: Memory backend: fix initialization

67f582f: mem.c: option to disable heap poisoning\u000a(useful when running in QEMU with -d memcheck - with this, overflowing reads will be caught as well)

26f1647: Memory backend: allow breaking minimum_free_space for small blocks\u000a(it was possible to fail the allocation for very small blocks that could not be covered by shoot_malloc)

c6d6699: Memory backend: allow AllocateMemory as a last resort, even if free space is below limit\u000a(it was possible to fail the allocation for very small blocks that could not be covered by shoot_malloc)

1e4985e: memory backend: reduce memcheck area (should reduce overhead a bit)

4e59a74: memory backend: ignore null pointers passed to free (Lua does that)

2ade4a5: exmem: when autodetecting available memory, print all srm/shoot memory blocks to console

fee1ee2: edmac: make sure the log files don't have unnecessary newlines\u000a(channels with complex size configuration may get printed on multiple lines; that makes the log file harder to parse)

1508a54: edmac: LOG_INTERVAL can now be changed from menu (persistent setting)

564b0c5: edmac: use numbered log file names

edcb52f: edmac: fix behavior when the extra info buffer gets full

056e56e: edmac: use half-shutter as trigger for logging EDMAC channels;\u000afine-tuned messages

2eddc9f: edmac: fix crash on models other than 5D3\u000a(there was a hardcoded stub)

4b161ce: edmac: fix crash when using "Log EDMAC usage" on D4 models

bc3bd0d: Merged unified into edmac

b4a8fad: Added edmac.mo to nightly builds

2061922: edmac-memcpy: check to make sure all models have AbortEDmac\u000a(to make sure it's correct: selftest.mo -> Stubs API test)

fff0aeb: edmac.mo: display connection map (experiment)

Installation

Installation

  1. Make sure you are running Canon firmware 2.0.2.

  2. Once you have the correct Canon firmware:
    • Format the card from the camera.
    • Unzip the archive and copy ML files to the memory card.
    • Run the Firmware Update process from Canon menu.

      This procedure will enable the BOOTDISK flag in your camera's Flash ROM, allowing it to load and execute custom code from the memory card. A copy of the original (unmodified) ROM contents will be saved to the card.

      Magic Lantern will run from this card; it won't replace your original firmware.


  3. After installation, please copy your ROM backup files (ML/LOGS/ROM*.BIN on the card) to a safe place.
Detailed instructions on the wiki. Please don't forget to check the FAQ and the user guide.

Uninstallation

From camera:
  1. Run Firmware Update from your ML card.
  2. Follow the on-screen instructions, including the fine print.

    This procedure disables the BOOTDISK flag. You will no longer be able to run Magic Lantern, unless you reinstall it.

    Some settings changed by Magic Lantern might be persistent; this procedure will not reset them. To restore the camera to factory state, you may also want to clear all camera settings and custom functions from Canon menu.

From one card:
  • Canon menu: Format card, remove Magic Lantern.
  • This procedure does not disable the BOOTDISK flag. With this method, you will still be able to run Magic Lantern from other cards.
  • Never delete the Magic Lantern files from the card! Format the card instead.
Troubleshooting

Known issues

Camera doesn't boot?

  1. Remove battery, remove card.
  2. Put battery back, close card and battery covers.
  3. Start the camera without card.
    • » Did it work? Format the card, reinstall Magic Lantern.
    • » Still not working? Double-check battery and card doors, run the diagnostic tools and get in touch with us.

Troubleshooting tips

  • If your camera locks up, remove the battery and reboot.
  • Make sure you have a backup card without Magic Lantern on it (just in case).
  • To restore ML defaults: Prefs → Config files.
  • To see what settings you have changed from ML defaults: Modified (Δ) menu.
  • To disable Magic Lantern temporarily: press and hold SET at startup.

Older Builds

Warning!
Magic Lantern is not approved nor endorsed by Canon in any way, and using it will probably void your warranty.
We are not responsible for any damages to your camera.

Copyright (C) 2009-2018 Magic Lantern Development Team

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.