User Tools

Site Tools


porting:porting

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
porting:porting [2021/01/03 15:50] – created names_are_hardporting:porting [2021/01/04 22:10] (current) – [Porting guide] lorenzo353
Line 1: Line 1:
-====== Porting Guide ======+====== Porting guide ======
  
 An attempt to create a high-level guide for how to port Magic Lantern to a new camera. An attempt to create a high-level guide for how to port Magic Lantern to a new camera.
  
-It's very important to note that at present, this guide is written by two people in the process of doing a new port (200D and RP specifically).  We don't know (much of) what we're doing.  That's the point - if you want to start a new port, you don't know what you're doing, either.  But at present, it means these are going to be messy, confusing docs.  +It's very important to note that at present, this guide is written by two people in the process of doing a new port (200D and RP specifically).  We don't know (much of) what we're doing.  That's the point - if you want to start a new port, you don't know what you're doing, either.  But at present, it means these are going to be messy, confusing docs. 
 + 
 + 
 + 
 +===== Requirements to get started ===== 
 + 
 +  * An unsupported cam (link to supported cams should go here) 
 +  * A dev environment and ability to build ML (link to page holding links to how to setup source download and build (these pages already exist on wiki I think).  Probably Qemu setup linked from here also?  It's a soft req, you could in theory do without it...) 
 +  * Reverse engineering tools (link to page holding links to recommended tools / tool categories.  Prefer open / free tools where possible, documenting closed tools is less useful) 
 + 
 +===== Porting process overview ===== 
 + 
 +  * Understanding ML (source tree structure, build process, high-level overview of boot process) 
 +  * Early steps (link to page with: dump rom, Ghidra project setup, creating platform/XXD for a new cam) 
 +  * Getting code running (don't know how to write this.  Explain that this is already done for most/all D45678X cams and what this implies) 
 +  * Showing something on the screen 
 +  * Logging from the cam 
 +  * ... (digic-explorer?  CONFIG_HELLO_WORLD build?  Then what?)
porting/porting.1609685412.txt.gz · Last modified: 2021/01/03 15:50 by names_are_hard