https://bitbucket.org/hudson/magic-lantern

sort by:
Revision Author Date Message Commit Date
63a8f35 MPU spells: comment out possible mode switches not required for the GUI, but will interfere later with the mode switching feature affected models: 6D (call/return trace changed), 70D, 700D (no side effects noticed) 29 December 2017, 18:45:59 UTC
dfa3ff9 Merged in t3r4n/magic-lantern/qemu_installer (pull request #893) Further automation in install script to compile directly at the end. 29 December 2017, 20:19:13 UTC
2d90d16 QEMU: more MPU properties identified by brute-forcing 28 December 2017, 23:43:14 UTC
00a9999 QEMU: formatting fixes in extract_init_spells.py / known_spells.h 28 December 2017, 21:46:03 UTC
a80ea6a QEMU: added property IDs to known MPU spells also alternate names as comments 28 December 2017, 19:06:10 UTC
b3bfcb3 QEMU: identified more MPU spells, corrected a few others - experimentally (playing around in menus) - brute-forcing MPU messages to identify properties - cross-checked names and IDs in startup logs and ROM strings - still, it's impossible not to find a few incorrect ones 28 December 2017, 19:25:40 UTC
03cdf76 QEMU: experiment - brute-force MPU messages to find out their meaning 28 December 2017, 18:42:49 UTC
59fe1ed Task hooks: disabled task switch debug messages by default (too verbose) 19 December 2017, 18:32:45 UTC
340d993 550D, 600D: fix memory allocation (amend 5b4fe18) 19 December 2017, 18:25:59 UTC
e0a5e1c 6D: ADTG shutter addresses did not work, trying another set 18 December 2017, 07:02:15 UTC
5d399d3 6D: fix ADTG shutter addresses after memory layout change http://www.magiclantern.fm/forum/index.php?topic=5601.msg194754#msg194754 http://www.magiclantern.fm/forum/index.php?topic=5601.msg191914#msg191914 http://www.magiclantern.fm/forum/index.php?topic=15088.msg190890#msg190890 not tested, just confirmed the new addresses in QEMU fixme: are these deterministic? under what conditions? 17 December 2017, 22:29:31 UTC
1946734 Merged unified into 100D_merge_fw101 16 December 2017, 00:13:00 UTC
87440f9 Merged new-dryos-task-hooks into 100D_merge_fw101 16 December 2017, 00:10:02 UTC
d26b632 Makefile: drop unused SUPPORTED_MODELS / SUPPORTED_UNIFIED_MODELS 06 December 2017, 23:15:00 UTC
b1fa815 GDB scripts: hooks for logging properties (prop_request_change, MPU property functions) (example for 5D3.113 and 550D.109; useful for identifying properties) 06 December 2017, 23:03:24 UTC
e68549e qemu-util: fix compilation in bootloader context; sample boot messages in reboot.c, e.g. printing firmware signature or RESTARTSTART address (only present in the output binary when compiling with CONFIG_QEMU=y) 27 December 2017, 22:04:58 UTC
b02ec65 GDB scripts: disable serial flash version check patch on EOS M2 not really needed (the error message seems harmless and doesn't prevent GUI emulation) but changed ML firmware signature checking and won't be needed after getting a serial flash dump from a real camera anyway 27 December 2017, 16:58:46 UTC
67c6a23 QEMU install.sh: further Ubuntu/WSL cleanups (minor) 27 December 2017, 16:06:10 UTC
25c53d9 QEMU install.sh: fine-tuned messages and date format when renaming an older installation 27 December 2017, 16:06:10 UTC
0f0be00 Merged in t3r4n/magic-lantern/qemu_install_improvement (pull request #892) Option to rename or delete existing QEMU directory during installation 27 December 2017, 15:58:01 UTC
fd92947 QEMU install.sh: WSL fixes - checking for Ubuntu (uname -a does not report Ubuntu) - hide 32-bit toolchain options 24 December 2017, 10:38:04 UTC
7966a52 run_canon_fw.sh: Mac fixes - use is_mounted (lsof checks are enough) - typo in osascript when trying to bring QEMU window to front 24 December 2017, 09:12:54 UTC
da53169 run_canon_fw.sh: fine-tuned checking of whether SD/CF image is in use - use lsof to detect whether another process opened the SD/CF image for writing - only allow multiple instances of QEMU if using -snapshot (read-only access to SD/CF image) - check all results returned by losetup (note: lsof does not show whether the image is mounted) - use alternate methods (grepping mount output) if losetup is not available - to be tested/refined on Mac and Windows 10 WSL 23 December 2017, 22:15:23 UTC
cf02cd7 QEMU: RTC workaround to bring back 400D GUI (broken in 0d654a0, not covered by tests as it's very slow) 23 December 2017, 15:41:53 UTC
8b189ce QEMU: 40D GUI working! - MPU RX register was read 8 bits at a time (other models so far used 16-bit reads) - using 50D MPU spells - button codes found with extract_button_codes.py, from existing ML port - HotPlug: external monitor, USB, Toe, erase switch - CFDMA: new channel, protocol tweaks, enabled interrupts - Powersave workaround (GUI locked up after some seconds of inactivity, similar to 1300D) 23 December 2017, 07:57:10 UTC
f0b1c60 QEMU: fix USB CONNECT on 450D/1000D (incidentally, this also fixes the card format dialog on these cameras - likely UILock issue) 23 December 2017, 07:45:04 UTC
b4b14c2 QEMU: 1300D GUI works! - this camera uses a different DryOS timer (totally unexpected!) - removed JPCORE patch (firmware expects this to be initialized properly) - generic MPU spells; button codes from 1100D - powersave workaround (without it, GUI would lock up after a few seconds of inactivity) - no patches required! 22 December 2017, 22:19:00 UTC
cdbeca3 QEMU: cleaned up serial flash handling on models that don't use one previously, they were called on unrelated SIO/SDIO channels, with little or no side effects, other than breaking a few function call trace tests 22 December 2017, 18:39:39 UTC
56e56a2 QEMU: updated 80D tests for 1.0.2; DCIM test also works! 21 December 2017, 23:22:11 UTC
b1f18d0 QEMU: 80D file I/O support from main firmware (experimental, tested with "dumpf" in the serial console) 21 December 2017, 19:51:34 UTC
a1ec742 QEMU: enable card support on generic MPU spells (experimental, some models work better than others) 21 December 2017, 19:49:12 UTC
2204b2d GDB scripts: some experimental 80D patches, to be fixed in the emulation 19 December 2017, 23:18:59 UTC
3469e60 GDB scripts: log state object transitions (stubs for 550D and 80D) 19 December 2017, 22:58:24 UTC
d372e0e GDB scripts: 80D logging hooks for semaphores and message queues (disabled by default; also updated assert_log for 1.0.2) 19 December 2017, 22:55:48 UTC
3d6f437 QEMU: RomRead DMA is actually XDMAC (up to 4 channels; 80D only uses 2) 19 December 2017, 22:47:08 UTC
501d212 QEMU: experimental MPU support for 80D, 750D and 760D seems to work with generic spells - at least the emulation goes further also minor refactoring / comments on MPU registers for earlier models also enabled for 5D4 just to avoid a crash - emulation doesn't reach mpu_send yet, but it calls InitializeIntercom 18 December 2017, 23:10:34 UTC
deb4495 QEMU tests: do not start if compilation fails (small nitpick that could result in false test results) 18 December 2017, 00:04:10 UTC
1c05269 QEMU: updated tests after b75e1342711a (context info is now correctly printed when returning from msg_queue_receive, take_semaphore etc) 18 December 2017, 22:33:07 UTC
d433973 QEMU: generic MPU spells compatible with most EOS models (experimental) 17 December 2017, 17:57:10 UTC
970fdf5 QEMU logging: fix losing track of called functions when DryOS tasks are switched outside interrupts see the assertion error on 5D4 callstack consistency test (after 442b691) to be tested; there was a similar error was on 80D, non-deterministic (encountered when running with -d debugmsg,callstack,tail with all patches enabled) 18 December 2017, 21:48:02 UTC
01a01cf QEMU: MPU status doesn't seem to matter much; simplified to prepare for DIGIC 6 compatibility todo: cross-check with actual hardware 17 December 2017, 21:56:12 UTC
620d846 QEMU: shared memory initialization for DIGIC 6 (MEMDIV messages) to try: SHM_SHOW_INFO / SHM_SHOW_DIST_INFO on serial console (only 80D, 750D and 760D reach this far) ( sleep 3; echo "akashimorino"; sleep 1; echo "SHM_SHOW_INFO"; sleep 1; echo "SHM_SHOW_DIST_INFO"; ) | ./run_canon_fw.sh 80D -serial stdio 16 December 2017, 22:59:36 UTC
e6510bb QEMU: refactored serial flash SIO handler with io_log 16 December 2017, 21:55:47 UTC
083b8e5 QEMU: refactored serial flash connections to avoid hardcoding camera model names fixme: D3 models and 1300D still hardwired to serial flash handlers to pass the tests 16 December 2017, 21:17:48 UTC
20b3c29 QEMU: experimental serial flash support for 80D using SFDATA.BIN from 70D, patched at 0x10004 from 09 8B C1 20 to 00 00 01 20 meaning: size of 70D's property block at 0x10000 is 0x12BC98 (data is shifted by 4 bytes) but 80D expects a maximum size of 0x12000 in FE47BF40 ("Liar Valid Packages!!" if the size check fails) so we trim the property block at the expected size of 0x12000 this will lose a few properties, but at least the emulation goes further (no SF dumper for D6 yet) other 8MB SFDATA.BIN patched in the same way should also work (700D, 650D, EOSM, 6D), but their data block at 0x10000 is larger, so more properties will be probably lost (not tested) 16 December 2017, 21:23:04 UTC
1e7847d QEMU: RomRead DMA for DIGIC 6, used for initializing property blocks (very similar to regular DMA, slightly different register offsets) 16 December 2017, 20:26:20 UTC
a393ac6 QEMU: slow down UART input to work around race conditions (not exactly clean, but at least DryShell tests are now passing on all models) 16 December 2017, 19:53:25 UTC
83e5ea4 QEMU: fixed UART on DIGIC 6 (DryShell works!) fixme: tests are failing, but typing on the UI works fine note: DIGIC 4/5 emulation changed a bit (0xC0270000 was misinterpreted before) 06 December 2017, 23:57:35 UTC
6faaaa4 Merged in makefile-updates (pull request #873) Makefile updates to use any valid ARM toolchain 06 December 2017, 19:04:33 UTC
c521560 QEMU: found out why DIGIC 6 models were getting stuck at startup! The firmware was reading the memory layout from CP15 registers; most of them were emulated well in QEMU, except ATCM and BTCM, which were implemented as NOP. They are still NOP in current QEMU git. Patching the memory regions loop is no longer required! (keeping empty 80D patch for future use) 06 December 2017, 08:48:52 UTC
a99c00e Makefile: fix 7D build_fir 05 December 2017, 23:03:15 UTC
e024e68 Makefile: fix building Lua with gcc 4.7.3 05 December 2017, 22:34:53 UTC
7c27e28 Makefile: only attempt to build/install/check ML-SETUP.FIR if there is a valid installer directory (some platforms may not have have one - 7D_MASTER, new ports) 05 December 2017, 22:12:02 UTC
ccc8fe8 Card LED: always use CARD_LED_ADDRESS, LEDON and LEDOFF (backed out 5bfab05 to fix installer on 7D - 0x800c00 not mandatory?) 03 December 2017, 20:50:25 UTC
6c78497 Makefile: moved 7D-specific tweaks (FIR etc) into main target (7D.203) for consistency with other platforms, including 7D2 to build the regular FIR: make build_fir to build the installer FIR: make ML-SETUP.FIR -B 03 December 2017, 20:31:54 UTC
bc46669 Makefile: FIR building updates - always install ML-SETUP.FIR (zip, install, install_qemu) - build_fir for regular ML (not installer) now gives AUTOEXEC.FIR - to recompile ML-SETUP.FIR: "make ML-SETUP.FIR -B" from platform directory - "make zip" will also compile the installer from source, without replacing the precompiled ML-SETUP.FIR (just to make sure the source code changes do not interfere with building the installer) 03 December 2017, 20:18:40 UTC
5e69462 Makefile: fix building xor_chk from its own directory 02 December 2017, 23:06:40 UTC
0ed38f5 Makefile: more .NOTPARALLEL fixes 02 December 2017, 22:52:32 UTC
6acdeea Makefile: fix 7D FIR path (just for consistency) 02 December 2017, 22:46:21 UTC
455952b Makefile: use .NOTPARALLEL in top-level Makefiles, rather than double-colon rules ML platforms/modules are built sequentially, but within each platform/module, parallel build is used to be tested on Mac with -j8 (on Make 3.81, double-colon are executed in parallel, while in 4.2.1 they are sequential) 02 December 2017, 22:33:43 UTC
92a8790 Makefile: fix README.rst generation with POSIX shells to reproduce: cd modules/filepref; make clean; rm -f README.rst; make SHELL=dash 27 November 2017, 12:27:55 UTC
c7c7771 Makefile: serialize "make install", fix some related dependencies parallel copying could lock up WIFI_SD cards to reproduce: "WIFI_SD=y make install ML_MODULES=" from platform/CAM directory 27 November 2017, 10:42:33 UTC
100b192 Makefile: monitor wifi connection when using WIFI_SD=y (experimental, helps troubleshooting connectivity issues) 27 November 2017, 10:39:50 UTC
32ccb13 Makefile: minor refactors for WIFI_SD (coding style) also fixed a typo 27 November 2017, 10:39:35 UTC
75d5954 Modules: better error handling for missing rst2html http://www.magiclantern.fm/forum/index.php?topic=17099 26 November 2017, 00:31:52 UTC
6a07f4e Makefile: speed optimizations - helper to evaluate only once, only if used - modules hgstamp: only evaluate if used - CF_CARD, VERSION: only evaluate once if used - PWD is special? renamed to avoid unneeded shell calls Profiling tips: - perf record make; perf report --sort comm - make SHELL="sh -x" - make clean SHELL="sh -x" |& grep "^+" | sort | uniq -c 25 November 2017, 23:13:58 UTC
66e0e5e Makefile: enable parallel compilation for modules, but compile them sequentially huge modules like Lua will compile much faster compiling everything in parallel is not 100% safe (some dependency checks may fail) 25 November 2017, 19:21:03 UTC
b2f3a52 Makefile: do not print toolchain info on recursive calls 25 November 2017, 19:55:20 UTC
1dd4dce Makefile: reworked global targets install: doesn't make sense, as we no longer have a "one size fits all" build capable of running on all models (alternative: 5D3.113_install, 60D_install etc) zip: build zip for each camera model, sequentially (parallel build still used within each zip) all: similar to zip (build camera models sequentially, but use parallel compilation within each platform) clean, check: these can run in parallel (no restrictions) 25 November 2017, 18:50:29 UTC
642f995 Makefile: fix module dependency checking on "make zip" by default, a module succeeds if it can be loaded on any camera model, from those compiled (doesn't matter which one) when using "make zip", we only want to include the modules compatible with current camera model, without considering other models (fixme: not the cleanest way to implement this) 25 November 2017, 17:31:01 UTC
37844af Makefile: fix module_strings dependency rule (previously, there was an error with make -j) 25 November 2017, 17:58:53 UTC
e4c6a62 Makefile: dropped ML_MODULES_STATIC (unused) and renamed ML_MODULES_DYNAMIC to ML_MODULES note: if you have customized the module list in Makefile.modules.user, just rename ML_MODULES_DYNAMIC to ML_MODULES to compile without modules: make 5D3 ML_MODULES= 25 November 2017, 16:01:15 UTC
78284d1 Makefile: fix "make clean" from modules directory with stale modules from other branches https://bitbucket.org/hudson/magic-lantern/pull-requests/873/makefile-updates-to-use-any-valid-arm/diff#comment-48250675 25 November 2017, 18:03:43 UTC
a87caf8 MPU spells: some names could not be identified (fixed) 24 November 2017, 23:35:49 UTC
28c9fca QEMU tests: call mtools_setup.sh rather than duplicating its work (fixes some tests failing if mtools is configured to use lowercase by default) 06 December 2017, 21:12:44 UTC
9e55424 run_canon_fw.sh: on Mac, bring QEMU window to foreground (by default, the window is opened behind the terminal, so one may not even notice it) 06 December 2017, 20:43:53 UTC
f95daa0 run_canon_fw.sh: print camera name in QEMU window title 06 December 2017, 20:29:59 UTC
1946742 run_canon_fw.sh: only clear the terminal if running in interactive mode https://serverfault.com/questions/146745/how-can-i-check-in-bash-if-a-shell-is-running-in-interactive-mode 06 December 2017, 20:27:34 UTC
c3d6414 QEMU logging: always log unmapped memory regions 06 December 2017, 19:17:29 UTC
ccfb454 GDB scripts: fix text alignment with "native" logging options (minor) 24 November 2017, 19:37:37 UTC
eacaef4 Makefile: fix running from other directory e.g. from qemu: make -C ../magic-lantern/ 500D_install_qemu 24 November 2017, 19:14:10 UTC
5ce053a Makefile: model-specific install targets for the root directory examples: make 500D_install; make 500D_install_qemu 24 November 2017, 19:10:19 UTC
c94bd0d 7D: fix compiling with FEATURE_VIDEO_HACKS 23 November 2017, 21:33:24 UTC
7ba7f09 Makefile: fix building 7D_MASTER 23 November 2017, 21:33:24 UTC
26d4932 Makefile: minor cleanups from 0b9b550 23 November 2017, 13:27:25 UTC
63f9c6c Makefile: always define CONFIG_$(MODEL)_$(FW_VERSION) e.g. CONFIG_5D3_113, CONIFG_7D_203 and so on 23 November 2017, 13:18:15 UTC
2cf344a Makefile: fix for GNU make 3.8.1 (thanks g3gg0) 13 November 2017, 00:05:11 UTC
c07c530 QEMU install.sh: fix null byte warning when parsing model list (bash 4.4 and newer? http://www.magiclantern.fm/forum/index.php?topic=2864.msg193118#msg193118 ) 12 November 2017, 19:04:04 UTC
3c3bd7b QEMU install: print fewer help details after installation; link to the online documentation 24 November 2017, 20:37:54 UTC
02660e5 QEMU readme: formatting, typos 06 December 2017, 22:09:50 UTC
e83d12e QEMU readme: more info regarding custom SD/CF images 24 November 2017, 20:33:07 UTC
0cf3dc7 QEMU readme: more ways to install ML to the virtual SD/CF images 24 November 2017, 20:03:29 UTC
bc80761 Makefile: fix newline issue with WIFI_SD=y 11 November 2017, 22:58:43 UTC
b866362 Makefile: fix Mac issue (undefine not supported) http://www.magiclantern.fm/forum/index.php?topic=2864.msg192847#msg192847 11 November 2017, 09:56:04 UTC
d881eb3 QEMU readme: note about "make install_qemu" not available in all branches 07 November 2017, 15:55:05 UTC
0144714 QEMU readme: note about models using a serial flash 07 November 2017, 15:44:37 UTC
ccca22a QEMU README: minor updates to 050a3cc 11 November 2017, 00:23:59 UTC
db0a151 Merged unified into qemu 06 December 2017, 19:05:52 UTC
7f54f35 Merged makefile-updates into qemu 23 November 2017, 13:27:48 UTC
7e97078 Makefile: backout 0b9b550 ?= not needed when overriding from command-line, e.g. make CONFIG_QEMU=y 23 November 2017, 13:23:48 UTC
back to top