Inspiration
For the Retro vs. Modern theme, we wanted to merge old hardware with modern creativity. The Canon EOS 6D is a decade-old DSLR, but thanks to Magic Lantern, it still hides a surprising amount of untapped potential. We were inspired by the idea of turning this “retro” camera into a “modern” gaming device—repurposing photography hardware into something completely unexpected.
What it does
ISOQuest is a mini platformer that runs directly on a Magic Lantern–enabled Canon EOS 6D. The player controls a character using the camera’s physical buttons to walk, jump, and navigate platforms. It displays sprites, levels, and movement in real time on the camera’s LCD screen—effectively transforming a 2012 DSLR into a handheld game console.
How we built it
We wrote the entire game in Lua using the Magic Lantern API. Because the camera is limited in memory and processing power, we created a lightweight engine optimized for ultra-low-resource environments. We experimented heavily with BMP formats, palettes, and transparency (eventually using 8-bit BMPs with magenta transparency) to get sprites to load without corruption. We then built simple physics, collision, and scene rendering logic that the camera could handle smoothly.
Challenges we ran into
Retro hardware limitations: The EOS 6D has extremely limited RAM and CPU speed compared to modern devices. Fitting a game into it was a constant balancing act.
Image corruption issues: Many normal image conversions produced distorted or colorless sprites. We had to carefully hand-tune formats to prevent the camera from mangling them.
Lua performance constraints: A single script that was too long or too memory-heavy would cause the camera to fail to load it.
Debugging on a DSLR: Unlike normal dev tools, we had to test everything directly on the camera, making iteration slow and unpredictable.
Accomplishments that we're proud of
Successfully running a platformer game on a DSLR camera—something the hardware was never designed to do
Solving multiple image-format issues to get clean, recognizable sprites
Creating a functioning physics and rendering engine under severe limitations
Staying true to the Retro vs. Modern theme by blending old hardware with modern coding techniques
What we learned
We learned how to optimize aggressively for constrained hardware, how image formats behave at a very low level, and how to build a game loop inside a system not meant for games. We also learned the value of experimentation, persistence, and adapting to the quirks of retro hardware with modern tools.
What's next for ISOQuest
In the future, we want to add more levels, animations, and maybe even enemies or collectibles. With more optimization, we hope to squeeze out smoother movement and richer sprites. We’re also considering releasing a simple framework so other Magic Lantern users can build their own retro-camera games.
Log in or sign up for Devpost to join the conversation.