Executable: Difference between revisions
→Initialisation and main loop outline
imported>Leoetlino |
imported>Leoetlino |
||
Line 23: | Line 23: | ||
However, the game uses lots of [[Software libraries|software libraries]], some of which are included in games that do ship with complete symbols such as ''Super Mario Odyssey''. BotW seems to have been compiled at a higher optimisation level that causes unused functions to be fully removed. | However, the game uses lots of [[Software libraries|software libraries]], some of which are included in games that do ship with complete symbols such as ''Super Mario Odyssey''. BotW seems to have been compiled at a higher optimisation level that causes unused functions to be fully removed. | ||
== | == Early init and main loop outline == | ||
* '''main''' | * '''main''' | ||
** nn::oe::Initialize | ** nn::oe::Initialize | ||
Line 34: | Line 34: | ||
** GameConfig | ** GameConfig | ||
** Unknown 71025D1720 | ** Unknown 71025D1720 | ||
** uking GameFramework (derived from sead::GameFrameworkNx) | ** uking::GameFramework (derived from sead::GameFrameworkNx) | ||
** GraphicsSystem | ** GraphicsSystem | ||
** sead::GameFrameworkNx::initializeGraphicsSystem | ** sead::GameFrameworkNx::initializeGraphicsSystem | ||
Line 51: | Line 51: | ||
****** framework->procFrame | ****** framework->procFrame | ||
******* framework->procCalc | ******* framework->procCalc | ||
******** '''methodTreeMgr->calc''' (sead::SingleScreenMethodTreeMgr). Runs the following methods: | ******** '''methodTreeMgr->calc''' (sead::SingleScreenMethodTreeMgr). Runs the following methods (sead::MethodTreeNode): | ||
********* RootCalc | ********* RootCalc | ||
********** SysCalc | ********** SysCalc | ||
Line 57: | Line 57: | ||
*********** PreCalc | *********** PreCalc | ||
*********** Calc | *********** Calc | ||
************ '''RootTask::calc''' | |||
*********** PostCalc | *********** PostCalc | ||
*********** CalcDL | *********** CalcDL |