Original function atlas

Function addresses by build, with notes on how the research names were assigned.

The Flipnote Decompilation Project's selected index maps 125 analyst-labelled function families to 488 build-specific records. Researchers assigned the labels to describe what the functions do; they are not Nintendo's original declarations. Some physical functions appear in more than one subsystem manifest. Most entries are ARM9, with four startup-function entries in ARM9i. “Unmapped” means no record in that selected manifest, not that the function is absent. [1]

Example function addresses

These loaded virtual addresses are useful starting points when examining the studied ROMs. They must be paired with the matching build and module; they are not stored ROM offsets. [1][2]

Analyst familyJP V1JP V2US V2EU V2
Arena root create0204A0E00206D8000206DE600206EE54
Frame begin020262E00202CA840202D29C0202CDB0
Layout draw020267040202CEA80202D6C00202D1D4
Palette generate0201077002014CD002014C7C02014CF8
Lifecycle dispatch020372F002042F04020436F402043404

Following a function from its address

Start with a visible action, such as a frame change or palette update. Find the function responsible in that build, check its callers to see when it runs, then follow its calls to storage or rendering code. Check neighbouring data references and compare a second region to separate shared logic from localisation. Validate a conclusion against the actual application before generalising it to all releases. [1][2]

What the index does not cover

The selected application index does not include every editor, PPM storage or online document function, and it does not include assumed Viewer peers. For those subjects, use the dedicated editor, PPM and online client guides. A total of 488 records describes only the selected families, not the full executable export. [1][2]

Mapped functions by build

The 17 groups below list all 125 function families selected by the researchers, with 488 records across the builds. Each filled cell gives the loaded virtual address and length of the original function body. 9i: marks ARM9i; other mapped cells are ARM9. An Unmapped cell means the research list has no entry for that build; the function may still exist there. [1]

Arena and allocation owners

8 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppArenaOwnerBoundAllocate02019DA8 56 B0206FB64 56 B020701C4 56 B020711DC 56 B
Flipnote_OriginalAppArenaOwnerBoundFree02019DE4 44 B0206FBA0 44 B02070200 44 B02071218 44 B
Flipnote_OriginalAppArenaOwnerConstructBase0204B3C0 200 B0206EAE0 200 B0206F140 200 B02070134 200 B
Flipnote_OriginalAppArenaOwnerConstructExpanded0204A240 112 B0206D960 112 B0206DFC0 112 B0206EFB4 112 B
Flipnote_OriginalAppArenaOwnerConstructLinear0204BC60 76 B0206F380 76 B0206F9E0 76 B020709D4 76 B
Flipnote_OriginalAppArenaOwnerCreateExpanded0204A14C 160 B0206D86C 160 B0206DECC 160 B0206EEC0 160 B
Flipnote_OriginalAppArenaOwnerCreateLinear0204BBA0 136 B0206F2C0 136 B0206F920 136 B02070914 136 B
Flipnote_OriginalAppArenaOwnerRootCreate0204A0E0 104 B0206D800 104 B0206DE60 104 B0206EE54 104 B

Frame service and upload

15 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppFrameBegin020262E0 52 B0202CA84 52 B0202D29C 52 B0202CDB0 52 B
Flipnote_OriginalAppFrameCheck020465AC 28 B02058F00 28 B020597CC 28 B02059B20 28 B
Flipnote_OriginalAppFrameCommit02046548 44 B02058E9C 44 B02059768 44 B02059ABC 44 B
Flipnote_OriginalAppFrameEnd02026314 36 B0202CAB8 36 B0202D2D0 36 B0202CDE4 36 B
Flipnote_OriginalAppFrameFinaliseBuckets02028864 140 B0202F0D4 140 B0202F8F0 140 B0202F404 140 B
Flipnote_OriginalAppFrameGetFrameChildUnmapped02042320 24 B02042B10 24 B02042820 24 B
Flipnote_OriginalAppFrameMarkUpdate0202C8C0 128 B02035A24 128 B0203628C 128 B02035E3C 128 B
Flipnote_OriginalAppFrameOwnerUpdate02026338 44 B0202CADC 44 B0202D2F4 44 B0202CE08 44 B
Flipnote_OriginalAppFramePrimaryUpdate0202AB14 28 B0203311C 28 B02033984 28 B02033498 28 B
Flipnote_OriginalAppFrameResetBuckets02028598 44 B0202EE08 44 B0202F624 44 B0202F138 44 B
Flipnote_OriginalAppFrameResetCounter02028978 12 B0202F1E8 12 B0202FA04 12 B0202F518 12 B
Flipnote_OriginalAppFrameSecondaryUpdate02049468 48 B0205C2F8 48 B0205CB4C 48 B0205CEF0 48 B
Flipnote_OriginalAppFrameTailUpdate0202F908 8 B02039700 8 B02039E80 8 B02039B50 8 B
Flipnote_OriginalAppFrameUpdateOther0203D760 60 B0204E834 60 B0204EFAC 60 B0204ED64 60 B
Flipnote_OriginalAppFrameUploadBuckets020287D8 124 B0202F048 124 B0202F864 124 B0202F378 124 B

Hatena client owners

3 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppHatenaLegacyUploadAdvance0201B518 272 BUnmappedUnmappedUnmapped
Flipnote_OriginalAppHatenaStarAction0201B690 140 B020705E0 140 B02070C40 140 B02071C90 140 B
Flipnote_OriginalAppHatenaUploadPollUnmapped02071704 592 B02071D64 592 B02072DB4 592 B

Layout traversal

8 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppLayoutDraw02026704 32 B0202CEA8 32 B0202D6C0 32 B0202D1D4 32 B
Flipnote_OriginalAppLayoutDrawThunk0202C86C 8 B020359D0 8 B02036238 8 B02035DE8 8 B
Flipnote_OriginalAppLayoutGetBucket020265A4 56 B0202CD48 56 B0202D560 56 B0202D074 56 B
Flipnote_OriginalAppLayoutGetRecord02028854 16 B0202F0C4 16 B0202F8E0 16 B0202F3F4 16 B
Flipnote_OriginalAppLayoutNoopDraw020277A4 4 B0202DF6C 4 B0202E784 4 B0202E298 4 B
Flipnote_OriginalAppLayoutOwnerGetter020259D0 12 B0202C16C 12 B0202C984 12 B0202C498 12 B
Flipnote_OriginalAppLayoutRender020276F4 84 B0202DEBC 84 B0202E6D4 84 B0202E1E8 84 B
Flipnote_OriginalAppLayoutSpriteDraw02027B50 160 B0202E3C0 160 B0202EBD8 160 B0202E6EC 160 B

Callback lifecycle

3 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppLifecycleDispatch020372F0 144 B02042F04 172 B020436F4 172 B02043404 172 B
Flipnote_OriginalAppLifecycleRegister02044670 68 B02056114 68 B02056858 68 B02056ABC 68 B
Flipnote_OriginalAppLifecycleStore0203762C 64 B02043334 80 B02043B4C 80 B0204385C 80 B

Palette and presentation

9 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppPaletteCommit02010AAC 60 B020150A0 60 B0201504C 60 B020150C8 60 B
Flipnote_OriginalAppPaletteGenerate02010770 808 B02014CD0 956 B02014C7C 956 B02014CF8 956 B
Flipnote_OriginalAppPaletteLayerColour02010734 48 B02014C94 48 B02014C40 48 B02014CBC 48 B
Flipnote_OriginalAppPaletteLayerEnabled02010704 12 B02014C24 12 B02014BD0 12 B02014C4C 12 B
Flipnote_OriginalAppPalettePresentPending0200DD58 100 B02011DA8 100 B02011D54 100 B02011DD0 100 B
Flipnote_OriginalAppPaletteSelectionEnabledUnmapped02014C34 28 B02014BE0 28 B02014C5C 28 B
Flipnote_OriginalAppPaletteSetLayerAndGenerateUnmapped02014BF4 28 B02014BA0 28 B02014C1C 28 B
Flipnote_OriginalAppPaletteSetLayerColour02010714 12 B02014C74 12 B02014C20 12 B02014C9C 12 B
Flipnote_OriginalAppPaletteSetLayerEnabledUnmapped02014C14 12 B02014BC0 12 B02014C3C 12 B

Indexed presentation

4 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppPresentBatch02021F5C 120 B02026E2C 256 B02026C00 256 B02026A6C 256 B
Flipnote_OriginalAppPresentDisplayDestination0200FD8C 32 B02014030 32 B02013FDC 32 B02014058 32 B
Flipnote_OriginalAppPresentFinishFrameBuffers0200F2E0 112 B02013330 112 B020132DC 112 B02013358 112 B
Flipnote_OriginalAppPresentIndexedFrame0200E694 296 B020126E4 296 B02012690 296 B0201270C 296 B

Image decoding and rendering

7 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppRender0200F360 484 B02013438 484 B020133E4 484 B02013460 484 B
Flipnote_OriginalAppRenderBase02005920 12 B02005B4C 12 B02005B6C 12 B02005B60 12 B
Flipnote_OriginalAppRenderDecodeFormat40200EDE8 312 B02012E38 312 B02012DE4 312 B02012E60 312 B
Flipnote_OriginalAppRenderFormat02005DEC 12 B02005FFC 12 B0200610C 12 B02006010 12 B
Flipnote_OriginalAppRenderPacked0200F544 416 B0201361C 424 B020135C8 424 B02013644 424 B
Flipnote_OriginalAppRenderSetBit0200A25C 108 B0200BED0 108 B0200BFA0 108 B0200BEEC 108 B
Flipnote_OriginalAppRenderSpecial0200F6E8 284 B020137C8 284 B02013774 284 B020137F0 284 B

Sprite release

12 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppSpriteReleaseDeleteExpanded0204A2DC 44 B0206D9FC 44 B0206E05C 44 B0206F050 44 B
Flipnote_OriginalAppSpriteReleaseDeleteLinear0204BCD8 44 B0206F3F8 44 B0206FA58 44 B02070A4C 44 B
Flipnote_OriginalAppSpriteReleaseDestroyExpanded0204A2B4 36 B0206D9D4 36 B0206E034 36 B0206F028 36 B
Flipnote_OriginalAppSpriteReleaseDestroyLinear0204BCB0 36 B0206F3D0 36 B0206FA30 36 B02070A24 36 B
Flipnote_OriginalAppSpriteReleaseDispatchHeap0204B798 20 B0206EEB8 20 B0206F518 20 B0207050C 20 B
Flipnote_OriginalAppSpriteReleaseDrainCallbacks0204BA70 52 B0206F190 52 B0206F7F0 52 B020707E4 52 B
Flipnote_OriginalAppSpriteReleaseDrainRangeCallbacks0204B9EC 100 B0206F10C 100 B0206F76C 100 B02070760 100 B
Flipnote_OriginalAppSpriteReleaseFindAcross0204B91C 120 B0206F03C 120 B0206F69C 120 B02070690 120 B
Flipnote_OriginalAppSpriteReleaseFindHeap0204B858 68 B0206EF78 68 B0206F5D8 68 B020705CC 68 B
Flipnote_OriginalAppSpriteReleaseFindWithin0204B8A0 124 B0206EFC0 124 B0206F620 124 B02070614 124 B
Flipnote_OriginalAppSpriteReleaseFreeDispatch0204B76C 44 B0206EE8C 44 B0206F4EC 44 B020704E0 44 B
Flipnote_OriginalAppSpriteReleaseReleaseHeapOwner0204A1F0 80 B0206D910 80 B0206DF70 80 B0206EF64 80 B

Sprite resource construction

10 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppSpriteResourceAllocateEntries02025968 104 B0202C104 104 B0202C91C 104 B0202C430 104 B
Flipnote_OriginalAppSpriteResourceClear0202594C 28 B0202C0E8 28 B0202C900 28 B0202C414 28 B
Flipnote_OriginalAppSpriteResourceClearPixels02075C6C 80 B020AEDD0 80 B020AF430 80 B020B0480 80 B
Flipnote_OriginalAppSpriteResourceDriverConstruct02025614 448 B0202BD10 448 B0202C528 448 B0202C03C 448 B
Flipnote_OriginalAppSpriteResourceEntryCount020762A0 92 B020AF404 92 B020AFA64 92 B020B0AB4 92 B
Flipnote_OriginalAppSpriteResourceMappingFlags020264E4 72 B0202CC88 72 B0202D4A0 72 B0202CFB4 72 B
Flipnote_OriginalAppSpriteResourceMetadataConfigure020760CC 40 B020AF230 40 B020AF890 40 B020B08E0 40 B
Flipnote_OriginalAppSpriteResourceRefreshGeometry02028C58 64 B0202F674 64 B0202FE84 64 B0202F998 64 B
Flipnote_OriginalAppSpriteResourceSetSource02028C14 12 B0202F630 12 B0202FE40 12 B0202F954 12 B
Flipnote_OriginalAppSpriteResourceWrapperConstruct02028984 164 B0202F1F4 164 B0202FA10 164 B0202F524 164 B

Sprite state

15 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppSpriteStateActive02025DA0 20 B0202C544 20 B0202CD5C 20 B0202C870 20 B
Flipnote_OriginalAppSpriteStateClipInitialise020B0790 36 B020DF1C0 36 B020E28BC 36 B020E32A0 36 B
Flipnote_OriginalAppSpriteStateConstruct020259E0 80 B0202C17C 80 B0202C994 80 B0202C4A8 80 B
Flipnote_OriginalAppSpriteStateFinished02025B24 72 B0202C2C0 72 B0202CAD8 72 B0202C5EC 72 B
Flipnote_OriginalAppSpriteStateInterpolate02024AEC 72 B0202A314 72 B0202B9EC 72 B0202A640 72 B
Flipnote_OriginalAppSpriteStatePopulate02073E30 240 B020ACF94 240 B020AD5F4 240 B020AE644 240 B
Flipnote_OriginalAppSpriteStateReadFixed0202810C 28 B0202E97C 28 B0202F198 28 B0202ECAC 28 B
Flipnote_OriginalAppSpriteStateReset02025AF0 52 B0202C28C 52 B0202CAA4 52 B0202C5B8 52 B
Flipnote_OriginalAppSpriteStateResetTransform02073E08 40 B020ACF6C 40 B020AD5CC 40 B020AE61C 40 B
Flipnote_OriginalAppSpriteStateSetAngle02073DB8 32 B020ACF1C 32 B020AD57C 32 B020AE5CC 32 B
Flipnote_OriginalAppSpriteStateSetScale02073DD8 32 B020ACF3C 32 B020AD59C 32 B020AE5EC 32 B
Flipnote_OriginalAppSpriteStateSetTranslation02073D94 36 B020ACEF8 36 B020AD558 36 B020AE5A8 36 B
Flipnote_OriginalAppSpriteStateSnapshot02025DB4 48 B0202C558 48 B0202CD70 48 B0202C884 48 B
Flipnote_OriginalAppSpriteStateUpdate02025BA4 84 B0202C340 84 B0202CB58 84 B0202C66C 84 B
Flipnote_OriginalAppSpriteStateUpdateOffset02025DE4 312 B0202C588 312 B0202CDA0 312 B0202C8B4 312 B

TWL startup ownership

5 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppStartupOwnerConstructUnmapped9i:02203274 76 B9i:02236B54 76 B9i:0226CE74 76 B
Flipnote_OriginalAppStartupOwnerHistoricalInitialise9i:021B9ACC 64 BUnmappedUnmappedUnmapped
Flipnote_OriginalAppStartupOwnerNestedConstruct02015854 80 B0201A39C 72 B02019E94 72 B02019F20 72 B
Flipnote_OriginalAppStartupOwnerReset020158A4 24 B0201A3E4 24 B02019EDC 24 B02019F68 24 B
Flipnote_OriginalAppStartupOwnerResetState020158BC 88 B0201A3FC 88 B02019EF4 88 B02019F80 88 B

Application state

5 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppController0200D7B0 136 B020117A8 136 B02011774 136 B020117D0 136 B
Flipnote_OriginalAppPrepareCase602021350 40 B02025C84 40 B02025A58 40 B020258C4 40 B
Flipnote_OriginalAppStateCallback02007E68 96 B02008630 96 B0200873C 96 B0200860C 96 B
Flipnote_OriginalAppTransition0200D354 184 B02010548 196 B0201059C 196 B02010564 196 B
Flipnote_OriginalAppTransitionGate0200D338 24 B0201052C 24 B02010580 24 B02010548 24 B

Transitions and blending

9 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppTransitionBegin020373A0 24 B02042FD4 28 B020437C4 28 B020434D4 28 B
Flipnote_OriginalAppTransitionBlendRegisters0207EE30 72 B020B8908 72 B020B8D10 72 B020B9D60 72 B
Flipnote_OriginalAppTransitionBlendUpdate0202AE3C 232 B02033520 268 B02033D88 268 B0203389C 268 B
Flipnote_OriginalAppTransitionChildPrepare020374A4 44 B020430F8 44 B020438E8 44 B020435F8 44 B
Flipnote_OriginalAppTransitionFrameUpdate02037210 224 B02042DFC 264 B020435EC 264 B020432FC 264 B
Flipnote_OriginalAppTransitionReset02037400 24 B02043040 28 B02043830 28 B02043540 28 B
Flipnote_OriginalAppTransitionStartBoth0202B014 20 B0203371C 20 B02033F84 20 B02033A98 20 B
Flipnote_OriginalAppTransitionStartNegative0202B064 32 B0203376C 32 B02033FD4 32 B02033AE8 32 B
Flipnote_OriginalAppTransitionStop0202B0A4 28 B020337AC 28 B02034014 28 B02033B28 28 B

Calendar construction

1 selected family in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppUiCalendarConstruct0202D814 852 B02036EE8 800 B020376F4 800 B02037338 800 B

UI input edges

10 selected families in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppUiInputDispatch0202C0E8 72 B02035210 72 B02035A78 72 B02035628 72 B
Flipnote_OriginalAppUiInputHasEvent0202C438 52 B02035564 52 B02035DCC 52 B0203597C 52 B
Flipnote_OriginalAppUiInputHasPress0202C484 28 B020355B0 28 B02035E18 28 B020359C8 28 B
Flipnote_OriginalAppUiInputHasRelease0202C4A0 28 B020355CC 28 B02035E34 28 B020359E4 28 B
Flipnote_OriginalAppUiInputMatches0202C3E8 44 B02035514 44 B02035D7C 44 B0203592C 44 B
Flipnote_OriginalAppUiInputPoll0202C09C 72 B020351C4 72 B02035A2C 72 B020355DC 72 B
Flipnote_OriginalAppUiInputReleased0202C47C 8 B020355A8 8 B02035E10 8 B020359C0 8 B
Flipnote_OriginalAppUiInputReset0202C02C 52 B02035154 52 B020359BC 52 B0203556C 52 B
Flipnote_OriginalAppUiInputStep0202C130 624 B02035258 628 B02035AC0 628 B02035670 628 B
Flipnote_OriginalAppUiInputUpdate0202C060 60 B02035188 60 B020359F0 60 B020355A0 60 B

Calendar month population

1 selected family in this research group. [1]

Analyst labelJP V1JP V2US V2EU V2
Flipnote_OriginalAppUiMonthPopulate0202D290 728 B02036948 752 B0203716C 728 B02036D90 760 B

Sources

  1. [1] Flipnote Decompilation Project — Selected original function index
  2. [2] Flipnote Decompilation Project — Module-by-module executable coverage

← All documentation