Main repository for the 400plus project
C Assembly Objective-C C++ Other
Clone or download
eduperez Merge pull request #448 from 400plus/20160404
Merge branch 20160404 tag 20160404-09
Latest commit 7d6775d Sep 6, 2017
Permalink
Failed to load latest commit information.
firmware Code clean-up Feb 12, 2016
languages Update Galician translation Aug 22, 2017
vxworks Code clean-up Jan 29, 2016
.gitignore GIT: Do not handle hidden files Apr 16, 2015
COPYING Added license file Jul 10, 2017
LICENSE Merge branch 'master' into 20160404 Sep 6, 2017
Makefile Add support for local and remote installation Oct 6, 2016
README.md Improve grammar on README.md Feb 15, 2016
actions.c Improve enhanced DISP button: press and release once, then use UP/DOWN Feb 2, 2016
actions.h Rename "JUMP / TRASH actions" to "shortcuts". Jan 31, 2016
af_patterns.c Code clean-up Jan 29, 2016
af_patterns.h Remove SVN dependencies: fix release generation. Apr 15, 2015
asm.h Code clean-up: move ARM assembler macros to a separate header file. Feb 13, 2016
autoiso.c Code clean-up Jan 29, 2016
autoiso.h Remove SVN dependencies: fix release generation. Apr 15, 2015
bmp.c Code clean-up: completely disable overlay code, until we figure out how Feb 13, 2016
bmp.h Code clean-up: completely disable overlay code, until we figure out how Feb 13, 2016
button.c Improve the flash shortcut. Mar 7, 2016
button.h Just moving some functions around Feb 1, 2016
cache_hacks.c Code clean-up: separate cache_hacks into C and H files Jan 19, 2016
cache_hacks.h Code clean-up: move ARM assembler macros to a separate header file. Feb 13, 2016
cmodes.c Code clean-up Jan 29, 2016
cmodes.h Typo Jan 24, 2016
debug.c Code clean-up: move "eventproc" stubs to a separate file Feb 2, 2016
debug.h Code clean-up: Move debug stuff to debug.c Jan 24, 2016
display.c Code clean-up: simplify hacking labels Mar 6, 2016
display.h Code clean-up: simplify hacking labels Mar 6, 2016
entry.S Code clean-up: move intercon-related stuff to their own file, and move Jan 19, 2016
exposure.c Fix weird Av values in scripts Feb 22, 2016
exposure.h Update to 20160404-07 Apr 15, 2017
fexp.c Change behavior of fixed exposure feature Oct 5, 2016
fexp.h Change behavior of fixed exposure feature Oct 5, 2016
firmware.h Code clean-up: move VRAM-related stuff to a separate file Feb 3, 2016
float.c Faster and more precise floating point operations; also fixes the long Feb 25, 2016
float.h Faster and more precise floating point operations; also fixes the long Feb 25, 2016
font-large.c Remove SVN dependencies: fix release generation. Apr 15, 2015
font-med.c Remove SVN dependencies: fix release generation. Apr 15, 2015
font-small.c Remove SVN dependencies: fix release generation. Apr 15, 2015
font.h VxWorks headers are now the standard headers May 22, 2015
funclist.S Code clean-up Feb 12, 2016
ini.c Code clean-up Jan 29, 2016
ini.h Use vxworks headers: stdio.h May 22, 2015
intercom.c End all VF features when camera stops measuring Oct 5, 2016
intercom.h Code clean-up: move intercon-related stuff to their own file, and move Jan 19, 2016
languages.c Add English as a language (fixes issue #412) Apr 25, 2016
languages.h Move LANG file to 400PLUS folder Jan 25, 2016
link.script Remove SVN dependencies: remove unused headers. Apr 15, 2015
macros.h Remove SVN dependencies: fix release generation. Apr 15, 2015
main.c Change some cache hacks to pre-initialization Oct 8, 2016
main.h Hold DOWN down for a continuous "quick exposure" [#394] Feb 17, 2016
mainctrl.h Remove SVN dependencies: fix release generation. Apr 15, 2015
memspy.c Remove SVN dependencies: fix release generation. Apr 15, 2015
memspy.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu.c Use MENU to close the menu, and DISP to change case. Feb 10, 2016
menu.h Avoid flickering during menu initialization. Feb 9, 2016
menu_cmodes.c Code clean-up Jan 29, 2016
menu_cmodes.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_developer.c Code clean-up Jan 29, 2016
menu_developer.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_info.c VxWorks headers are now the standard headers May 22, 2015
menu_info.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_main.c Avoid flickering during menu initialization. Feb 9, 2016
menu_main.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_params.c Code clean-up Jan 29, 2016
menu_params.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_rename.c Use MENU to close the menu, and DISP to change case. Feb 10, 2016
menu_rename.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_scripts.c Fix long exposures calculator Sep 6, 2017
menu_scripts.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menu_settings.c Lay the infrastructure to use JUMP and TRASH as modifiers for shortcuts. Feb 1, 2016
menu_settings.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menuitem.c Code clean-up: simplify some code Feb 17, 2016
menuitem.h Changing Ev in long exposure calculator readjusts Tv Feb 14, 2016
menuoptions.c Improve the flash shortcut. Mar 7, 2016
menuoptions.h Remove SVN dependencies: fix release generation. Apr 15, 2015
menupage.c Code clean-up Jan 29, 2016
menupage.h Remove SVN dependencies: fix release generation. Apr 15, 2015
msm.c Code clean-up Jan 29, 2016
msm.h Remove SVN dependencies: fix release generation. Apr 15, 2015
persist.c Improve the AEB shortcut: hold TRASH/JUMP and then use UP/DOWN to change Feb 1, 2016
persist.h Move PERSIST file to 400PLUS folder Jan 23, 2016
qexp.c Hold DOWN down for a continuous "quick exposure" [#394] Feb 17, 2016
qexp.h Hold DOWN down for a continuous "quick exposure" [#394] Feb 17, 2016
scripts.c Faster and more precise floating point operations; also fixes the long Feb 25, 2016
scripts.h Remove SVN dependencies: fix release generation. Apr 15, 2015
settings.c Renamed SHORTCUT_ACTION to SHORTCUT Feb 3, 2016
settings.h Improve the flash shortcut. Mar 7, 2016
shortcuts.c Disable shortcuts when C.Fn 01 = "4:Cross keys: AF frame selec." Oct 5, 2016
shortcuts.h Improve the flash shortcut. Mar 7, 2016
shutter.c Code clean-up Jan 21, 2016
shutter.h Code clean-up: move shutter-related tasks to separate file. Jan 20, 2016
snapshots.c Code clean-up Jan 29, 2016
snapshots.h Move CMODES & AMODES files to 400PLUS folder Jan 24, 2016
stub.h Rearranged all library definitions May 21, 2015
utils.c Faster and more precise floating point operations; also fixes the long Feb 25, 2016
utils.h Code clean-up Jan 29, 2016
viewfinder.c Do not reset VF_STATUS if Tv was not restored Oct 5, 2016
viewfinder.h Remove SVN dependencies: fix release generation. Apr 15, 2015

README.md

400plus

A firmware hack for the Canon 400D / XTi digital camera

About

400plus is a free firmware enhancement software which offers additional functionality and capabilities for your Canon 400D/XTi camera, in both a non-destructive and non-permanent way. It works by loading into your camera's memory automatically upon boot-up to enhance the native camera firmware; but it is not a permanent firmware upgrade, and can easily be removed.

This software is similar to what Magic Lantern is for the DryOS cameras, though it is designed specifically for the Canon 400D/XTi and will not work with other camera models. For info about porting 400plus to your camera, please visit the Magic Lantern wiki.

Features

Some of the most popular features of 400plus are:

  • Custom modes:
    • Complete snapshots of all settings and parameters.
    • Can be assigned to any scene mode for a quick access.
    • Store up to 16 custom modes on each CF card.
  • Scripting support:
    • Extended AEB,
    • Flash, Aperture, Exposure, and ISO based AEB,
    • Ultra-long exposures, featuring a long-exposure calculator,
    • Intervalometer, featuring a time-lapse calculator,
    • Bulb-ramping,
    • Self-timer,
    • Touch-less trigger,
    • Depth of field and hyperfocal calculator.
  • Extended range for some parameters, line Av or Flash compensation.
  • Custom white balance, up to 16 color temperatures can be named and stored.
  • View and change the ISO while looking through the viewfinder.
  • Our own configurable AutoISO.
  • Safety Shift for creative modes.
  • Extended AF patterns.
  • Intermediate ISO values.
  • Spot metering mode.
  • Multi-spot metering.
  • Fixed exposure for M mode.
  • Quick exposure button for M mode.
  • Configurable buttons.
  • RAW file format output for auto modes.
  • Release counter.

400plus has been translated into several languages, and can even be translated to languages not supported by the camera.

Instructions

Please, read "a word of warning" at our wiki before doing anything else.

There is a user guide, where you can get a better idea of what to expect from this project. Then, if you want to give it a try, there is also an installation guide.

Downloads

Visit our releases page to obtain 400plus.

Support

We have the following support channels: