# NSMBW address maps
# Originally by Ninji and CLF78, rewritten by RoadrunnerWMC in 2021 and 2023
# ------------------
# Conventions:
# - For this file format in general, address ranges are inclusive on
#   both ends.
# - Some existing tools consider unmapped ranges to be implicitly +0x0,
#   but mine are a bit stricter and consider unmapped ranges to be
#   non-portable, so +0x0 ranges are provided explicitly in this map.
# - When a function symbol should be preserved across versions, but the
#   actual code at the start of the function is completely different, I
#   map the first byte of the first instruction and nothing else. If the
#   corresponding instruction does show up later, I map the remaining
#   three bytes to it. So if you want to map instructions rather than
#   symbols, you'll be slightly more accurate if you add 1 to the
#   address before mapping it, and then subtract 1 after. This only
#   happens in a handful of places, though.
# - When there's things corresponding to multiple languages (English,
#   Spanish, French, etc) in one version, and only one language (e.g.
#   Korean) in the other version, I map English to that version.
# - China: the Wii Strap screen was replaced with three near-clones of
#   it: the "anti-addiction" screen (China-mandated health-and-safety
#   screen), "nv" screen (Nvidia Lightspeed Studios logo), and "logo"
#   screen (Nintendo logo). I've mapped the Wii Strap screen from the
#   earlier versions to the "logo" screen.
# - When profile tables differ between two versions (P2 <-> K, W <-> C),
#   I've mapped by corresponding *entries*, not corresponding *IDs*.
#   That is, there's a mapping split in the middle of the table. This
#   allows safe static profile replacement across all game versions.


[P1]
# Base version: International NSMBW v1 (SMNP01 rev 1)
80000000-*: +0x0  # Some tools automatically assume this, others are
                  # more conservative and don't

[E1]
# North American NSMBW v1 (SMNE01 rev 1)
extend P1
80000000-800b4600: +0x0    # ==== BEGIN main.text ==== .. dGameCom::GetLanguage6()
800b4630-800b463f: -0x20   # (prev) .. dGameCom::GetLanguageHBM()
800b4650-800b466b: -0x1c   # ...
800b4670-800b46bb: -0x20   # (prev) .. dGameCom::AreaLanguageFolder(const char*, char*)
800b46cc-800b46fb: -0x30   # ...
800b4724-800b475f: -0x58   # ...
800b4760-800c8daf: -0x50   # (prev) .. (gap)
# Removed symbol: FUN_P1_800c8db0
800c8e50-800e4c5f: -0xf0   # (gap) .. EGG::TSystem<EGG::Video,EGG::AsyncDisplay,EGG::XfbManager,EGG::SimpleAudioMgr,EGG::SceneManager,EGG::ProcessMeter>::Configuration::initialize()
800e4c60-800e4c63: -0xe8   # ...
800e4c64-800e4c6b: -0xf4   # ...
800e4c6c-800e4d6f: -0xf0   # ...
800e4d94-800e4d9b: -0x114  # ...
800e4da0-800e4ebf: -0x114  # ...
800e4ec0-8010f203: -0x110  # (prev) .. dWiiStrap_c::createLayout()
8010f234-8010f237: -0x134  # ...
8010f238-8010f243: -0x144  # ...
8010f244-802bb6bf: -0x140  # (prev) .. (gap)
# Removed symbol: FUN_P1_802bb6c0
802bb6d0-802bb74f: -0x150  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bb750
802bb860-802bbbff: -0x260  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bbc00
802bbc90-802edccf: -0x2f0  # (gap) .. ==== BEGIN area between main.text and main.ctors ====
802edce0-80317737: -0x300  # ==== BEGIN main.data ====
# Removed symbol: DAT_P1_80317738
80317750-80322ffb: -0x318
80323000-8032301b: -0x31c
80323020-8032307b: -0x320
80323080-803230cf: -0x324
803230d0-803230d7: +0x106184  # Moved symbol: DAT_P1_803230d0
803230dc-803230e3: +0x106180  # Moved symbol: DAT_P1_803230dc
803230e8-803230ff: -0x33c
80323100-80323107: +0x106164  # Moved symbol: DAT_P1_80323100
8032310c-8032e77f: -0x348
8032e780-8035197f: -0x340  # ==== BEGIN area between main.data and main.bss ====
80351980-80427e6f: -0x300  # ==== BEGIN main.sdata ====
# Removed symbol: DAT_P1_80427e70
# Removed symbol: DAT_P1_80427e78
80427e80-80429563: -0x310
# Moved symbol: DAT_P1_803230d0 (see above)
# Moved symbol: DAT_P1_803230dc (see above)
# Moved symbol: DAT_P1_80323100 (see above)
80429564-80429d7f: -0x2f8
80429d80-8042f427: -0x2e0
# Removed symbol: DAT_P1_8042f428
8042f430-8042f51f: -0x2e8
8042f520-806dffff: -0x2e0  # ==== BEGIN area between main.dol and d_profileNP.rel ====
806e0000-8098a43b: +0x0
# New symbol: DAT_E1_8098a43c
8098a43c-8098a473: +0x24
8098a478-*: +0x20

[J1]
# Japanese NSMBW v1 (SMNJ01 rev 1)
extend P1
80000000-800b4600: +0x0    # ==== BEGIN main.text ==== .. dGameCom::GetLanguage6()
800b4630-800b4630: -0x20   # (prev) .. dGameCom::GetLanguageHBM()
800b4660-800b466b: -0x4c   # ...
800b4670-800b46ab: -0x50   # (prev) .. dGameCom::AreaLanguageFolder(const char*, char*)
800b4734-800b475f: -0xd8   # ...
800b4760-800c8daf: -0xd0   # (prev) .. (gap)
# Removed symbol: FUN_P1_800c8db0
800c8e50-800e4c5f: -0x170  # (gap) .. EGG::TSystem<EGG::Video,EGG::AsyncDisplay,EGG::XfbManager,EGG::SimpleAudioMgr,EGG::SceneManager,EGG::ProcessMeter>::Configuration::initialize()
800e4c60-800e4c63: -0x168  # ...
800e4c64-800e4c6b: -0x174  # ...
800e4c6c-800e4d6f: -0x170  # ...
800e4d94-800e4d9b: -0x194  # ...
800e4da0-800e4ebf: -0x194  # ...
800e4ec0-8010f1df: -0x190  # (prev) .. dWiiStrap_c::createLayout()
8010f1ec-8010f203: -0x19c  # ...
8010f234-8010f237: -0x1bc  # ...
8010f238-8010f23b: -0x1c8  # ...
8010f23c-8010f23f: -0x1d0  # ...
8010f240-8010f243: -0x1cc  # ...
8010f244-8010f257: -0x1c8  # ...
8010f32c-8010f32f: -0x29c  # ...
8010f330-8010f333: -0x298  # ...
8010f338-8010f33f: -0x29c  # ...
8010f340-8010f347: -0x298  # ...
8010f378-8010f387: -0x2c8  # ...
8010f3ec-8010f417: -0x32c  # ...
8010f41c-802bb6bf: -0x330  # (prev) .. (gap)
# Removed symbol: FUN_P1_802bb6c0
802bb6d0-802bb74f: -0x340  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bb750
802bb860-802bbbff: -0x450  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bbc00
802bbc90-80317737: -0x4e0  # (gap) .. ==== BEGIN main.data ====
# Removed symbol: DAT_P1_80317738
80317750-80322ff7: -0x4f8
# Removed symbol: DAT_P1_80323000
# Removed symbol: DAT_P1_80323020
# Removed symbol: DAT_P1_80323040
# Removed symbol: DAT_P1_80323060
# Removed symbol: DAT_P1_80323080
803230a0-803230c3: -0x5a0
# Removed symbol: DAT_P1_803230c4
# Removed symbol: DAT_P1_803230d0
# Removed symbol: DAT_P1_803230dc
# Removed symbol: DAT_P1_803230e8
# Removed symbol: DAT_P1_803230f4
# Removed symbol: DAT_P1_80323100
# Removed symbol: DAT_P1_8032310c
# New symbol: DAT_J1_80322b24
80323118-8035197f: -0x5e0  # ==== BEGIN area between main.data and main.bss ====
80351980-80427e5f: -0x580  # ==== BEGIN main.sdata ====
# Removed symbol: DAT_P1_80427e60
# Removed symbol: DAT_P1_80427e68
# Removed symbol: DAT_P1_80427e70
# Removed symbol: DAT_P1_80427e78
# Removed symbol: DAT_P1_80427e80
80427e88-8042954b: -0x5a8
80429560-80429563: -0x5bc
# Removed symbol: DAT_P1_80429564
80429570-80429d7f: -0x5c8
80429d80-8042f427: -0x5c0
# Removed symbol: DAT_P1_8042f428
8042f430-8042f51f: -0x5c8
8042f520-806dffff: -0x5c0  # ==== BEGIN area between main.dol and d_profileNP.rel ====
806e0000-80779abf: +0x0    # ==== BEGIN d_basesNP.text ==== .. FUN_P1_80779a80
80779b78-80779b7f: -0xb8   # ...
80779b84-80779b93: -0xb8   # ...
80779bbc-80779bcb: -0xe0   # ...
80779c1c-8078891f: -0x130  # (prev) .. FUN_P1_807888e0
807889d8-807889df: -0x1e8  # ...
807889e4-807889f3: -0x1e8  # ...
80788a1c-80788a2b: -0x210  # ...
80788a7c-80789eef: -0x260  # ...
80789f00-808d3b87: -0x270  # (prev) .. FUN_P1_808d3ab0
808d3bd4-808d3bd7: -0x2b4  # ...
808d3bd8-808d3bdb: -0x2bc  # ...
808d3bdc-808d3be3: -0x2b8  # ...
808d3be4-808d3be7: -0x2ac  # ...
808d3be8-808d3beb: -0x2b4  # ...
808d3bec-808d3bef: -0x2bc  # ...
808d3bf0-808d3bf3: -0x2c4  # ...
808d3bf4-808d3c17: -0x2b8  # ...
808d3c20-80940c67: -0x2c0  # (prev) .. ==== BEGIN d_basesNP.rodata ====
80940c6c-80940c8b: -0x2c4
80940c90-80940caf: -0x2c8
80940cb4-80940cbf: -0x2cc
# Removed symbol: DAT_P1_80940cc0
# Removed symbol: DAT_P1_80940ce4
# Removed symbol: DAT_P1_80940d08
# Removed symbol: DAT_P1_80940d2c
# Removed symbol: DAT_P1_80940d38
# Removed symbol: DAT_P1_80940d5c
# Removed symbol: DAT_P1_80940d80
# Removed symbol: DAT_P1_80940da4
# Removed symbol: DAT_P1_80940db0
# Removed symbol: DAT_P1_80940dd4
# Removed symbol: DAT_P1_80940df8
# Removed symbol: DAT_P1_80940e1c
# Removed symbol: DAT_P1_80940e28
# Removed symbol: DAT_P1_80940e4c
# Removed symbol: DAT_P1_80940e70
# Removed symbol: DAT_P1_80940e94
80940ea0-80940ed3: -0x4ac
80940ed8-80940f07: -0x4b0
# Removed symbol: DAT_P1_80940f08
# Removed symbol: DAT_P1_80940f14
# Removed symbol: DAT_P1_80940f20
# Removed symbol: DAT_P1_80940f2c
# Removed symbol: DAT_P1_80940f38
# Removed symbol: DAT_P1_80940f44
# Removed symbol: DAT_P1_80940f50
# New symbol: DAT_J1_80940a58
80940f58-80943187: -0x4e8
8094318c-809431ab: -0x4ec
809431b0-809431cf: -0x4f0
809431d4-809431f3: -0x4f4
809431f8-809432b7: -0x4f8
809432c0-80944e93: -0x500
80944e98-80944eb3: -0x504
80944ec0-80944edb: -0x510
80944ee0-80944eeb: -0x514
# Removed symbol: DAT_P1_80944eec
# Removed symbol: DAT_P1_80944f0c
# Removed symbol: DAT_P1_80944f30
# Removed symbol: DAT_P1_80944f50
# Removed symbol: DAT_P1_80944f5c
# Removed symbol: DAT_P1_80944f7c
# Removed symbol: DAT_P1_80944fa0
# Removed symbol: DAT_P1_80944fc0
# Removed symbol: DAT_P1_80944fcc
# Removed symbol: DAT_P1_80944fec
# Removed symbol: DAT_P1_80945010
# Removed symbol: DAT_P1_80945030
# Removed symbol: DAT_P1_8094503c
# Removed symbol: DAT_P1_8094505c
# Removed symbol: DAT_P1_80945080
# Removed symbol: DAT_P1_809450a0
809450ac-809450c3: -0x6d4
809450c8-809450f3: -0x6d8
# Removed symbol: DAT_P1_809450f4
# Removed symbol: DAT_P1_80945100
# Removed symbol: DAT_P1_8094510c
# Removed symbol: DAT_P1_80945118
# Removed symbol: DAT_P1_80945124
# Removed symbol: DAT_P1_80945130
# Removed symbol: DAT_P1_8094513c
# New symbol: DAT_J1_80944a1c
80945144-80945153: -0x714
80945158-8098a43b: -0x718
# New symbol: DAT_J1_80989d24
8098a43c-8098a473: -0x6f4
8098a478-809907f7: -0x6f8  # ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
80990800-*: -0x700

[P2]
# International NSMBW v2 (SMNP01 rev 2)
extend P1
80000000-800cf29f: +0x0   # ==== BEGIN main.text ==== .. dNandThread_c::save()
800cf2a0-800cf2a3: +0x4   # ...
800cf2a4-800cf303: +0x8   # ...
800cf304-800cf307: +0xc   # ...
800cf308-800cf30f: +0x18  # ...
800cf320-800cf327: -0x8   # ...
800cf328-800cf6e7: +0x0   # (prev) .. dNandThread_c::load()
800cf6e8-800cf6eb: +0x4   # ...
800cf6ec-800cf73b: +0x8   # ...
800cf73c-800cf73f: +0xc   # ...
800cf740-800cf7e7: +0x10  # ...
800cf7e8-800cf7eb: +0x14  # ...
800cf7ec-800cf7f3: +0x20  # ...
800cf804-800cf80b: +0x0   # ...
800cf80c-800cf907: +0x8   # ...
800cf910-800e0d2b: +0x0   # (prev) .. dSaveMng_c::startMultiModeNandSave()
800e0d30-800e0d3f: -0x4   # ...
800e0d44-800e0d4b: -0x8   # ...
800e0d4c-800e0ddb: +0x10  # ...
800e0de4-800e0df7: +0x8   # ...
800e0dfc-800e0e0b: +0x4   # ...
800e0e10-807683f6: +0x0   # (prev) .. ==== BEGIN area between main.dol and d_profileNP.rel ====
807683f7-8076842b: +0xf   # WIIMJ2DNP.str
8076842c-80768462: +0x1e  # WIIMJ2DNP.str
80768463-8076849b: +0x2d  # WIIMJ2DNP.str
8076849c-8076849f: +0x3c  # WIIMJ2DNP.str
807684a0-807aaa30: +0x40  # ==== BEGIN d_basesNP.text ==== .. FUN_P1_807aaa30
807aaa6c-809907ff: +0x10  # (prev) .. ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
80990800-*: +0x20

[E2]
# North American NSMBW v2 (SMNE01 rev 2)
extend E1
80000000-800cf1af: +0x0   # ==== BEGIN main.text ==== .. dNandThread_c::save()
800cf1b0-800cf1b3: +0x4   # ...
800cf1b4-800cf213: +0x8   # ...
800cf214-800cf217: +0xc   # ...
800cf218-800cf21f: +0x18  # ...
800cf230-800cf237: -0x8   # ...
800cf238-800cf5f7: +0x0   # (prev) .. dNandThread_c::load()
800cf5f8-800cf5fb: +0x4   # ...
800cf5fc-800cf64b: +0x8   # ...
800cf64c-800cf64f: +0xc   # ...
800cf650-800cf6f7: +0x10  # ...
800cf6f8-800cf6fb: +0x14  # ...
800cf6fc-800cf703: +0x20  # ...
800cf714-800cf71b: +0x0   # ...
800cf71c-800cf817: +0x8   # ...
800cf820-800e0c3b: +0x0   # (prev) .. dSaveMng_c::startMultiModeNandSave()
800e0c40-800e0c4f: -0x4   # ...
800e0c54-800e0c5b: -0x8   # ...
800e0c5c-800e0ceb: +0x10  # ...
800e0cf4-800e0d07: +0x8   # ...
800e0d0c-800e0d1b: +0x4   # ...
800e0d20-807683f6: +0x0   # (prev) .. ==== BEGIN area between main.dol and d_profileNP.rel ====
807683f7-8076842b: +0xf   # WIIMJ2DNP.str
8076842c-80768462: +0x1e  # WIIMJ2DNP.str
80768463-8076849b: +0x2d  # WIIMJ2DNP.str
8076849c-8076849f: +0x3c  # WIIMJ2DNP.str
807684a0-807aaa30: +0x40  # ==== BEGIN d_basesNP.text ==== .. FUN_P1_807aaa30
807aaa6c-8099081f: +0x10  # (prev) .. ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
80990820-*: +0x20

[J2]
# Japanese NSMBW v2 (SMNJ01 rev 2)
extend J1
80000000-800cf12f: +0x0   # ==== BEGIN main.text ==== .. dNandThread_c::save()
800cf130-800cf133: +0x4   # ...
800cf134-800cf193: +0x8   # ...
800cf194-800cf197: +0xc   # ...
800cf198-800cf19f: +0x18  # ...
800cf1b0-800cf1b7: -0x8   # ...
800cf1b8-800cf577: +0x0   # (prev) .. dNandThread_c::load()
800cf578-800cf57b: +0x4   # ...
800cf57c-800cf5cb: +0x8   # ...
800cf5cc-800cf5cf: +0xc   # ...
800cf5d0-800cf677: +0x10  # ...
800cf678-800cf67b: +0x14  # ...
800cf67c-800cf683: +0x20  # ...
800cf694-800cf69b: +0x0   # ...
800cf69c-800cf797: +0x8   # ...
800cf7a0-800e0bbb: +0x0   # (prev) .. dSaveMng_c::startMultiModeNandSave()
800e0bc0-800e0bcf: -0x4   # ...
800e0bd4-800e0bdb: -0x8   # ...
800e0bdc-800e0c6b: +0x10  # ...
800e0c74-800e0c87: +0x8   # ...
800e0c8c-800e0c9b: +0x4   # ...
800e0ca0-807683f6: +0x0   # (prev) .. ==== BEGIN area between main.dol and d_profileNP.rel ====
807683f7-8076842b: +0xf   # WIIMJ2DNP.str
8076842c-80768462: +0x1e  # WIIMJ2DNP.str
80768463-8076849b: +0x2d  # WIIMJ2DNP.str
8076849c-8076849f: +0x3c  # WIIMJ2DNP.str
807684a0-807aa7c0: +0x40  # ==== BEGIN d_basesNP.text ==== .. FUN_P1_807aaa30
807aa7fc-809900ff: +0x10  # (prev) .. ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
80990100-*: +0x20

# P3 and J3 are identical to P2 and J2, except for around 30 bytes
# within two low-level functions. Everyone agrees that it'd be wasteful
# to treat them as actual version targets like the others, so they're
# commented out here, but still included for completeness's sake.

# [P3]
# # International NSMBW v3 (SMNP01 rev 2, Wii U eShop version)
# extend P2
# 80000000-801be963: +0x0   # ==== BEGIN main.text ==== .. sendSlaveAddr
# 801be964-801be967: +0xc   # ...
# 801be96c-801be973: +0x8   # ...
# 801be974-801be97f: -0x10  # ...
# 801be980-801bed57: +0x0   # (prev) .. __VISendI2CData
# 801bed58-801bed5b: +0x10  # ...
# 801bed5c-801bed5f: +0x0   # ...
# 801bed64-801bed6b: +0x8   # ...
# 801bed6c-801bed6f: -0x14  # ...
# 801bed70-801bed77: -0x10  # ...
# 801bed78-*: +0x0          # (prev) .. (end)

# [J3]
# # Japanese NSMBW v3 (SMNJ01 rev 2, Wii U eShop version)
# extend J2
# 80000000-801be633: +0x0   # ==== BEGIN main.text ==== .. sendSlaveAddr
# 801be634-801be637: +0xc   # ...
# 801be63c-801be643: +0x8   # ...
# 801be644-801be64f: -0x10  # ...
# 801be650-801bea27: +0x0   # (prev) .. __VISendI2CData
# 801bea28-801bea2b: +0x10  # ...
# 801bea2c-801bea2f: +0x0   # ...
# 801bea34-801bea3b: +0x8   # ...
# 801bea3c-801bea3f: -0x14  # ...
# 801bea40-801bea47: -0x10  # ...
# 801bea48-*: +0x0          # (prev) .. (end)

[K]
# South Korean NSMBW (SMNK01)
extend P2
# ==== BEGIN main.text ====
80000000-800122c0: +0x0    # (start) .. dCourseSelectGuide_c::executeState_ScrollGuideOnStageWait()
800122c1-800122eb: +0x14   # ...
800122f0-800122f7: +0x14   # ...
80012300-8001230b: +0x28   # ...
8001230c-8001230f: +0x2c   # ...
80012314-8001231f: +0x3c   # ...
80012320-80012337: +0x40   # (prev) .. dCourseSelectGuide_c::initializeState_ScrollGuideOnStageAnimeEndCheck()
80012338-8001233f: +0x78   # ...
80012364-80012397: +0x54   # ...
80012398-8001239f: +0x58   # ...
800123a4-800123bb: +0x54   # ...
800123c0-800123eb: +0x50   # (prev) .. dCourseSelectGuide_c::executeState_ScrollGuideOnStageAnimeEndCheck()
800123ec-8001244f: +0x64   # ...
80012450-8004dea7: +0x70   # (prev) .. daPlBase_c::onDemo()
8004deac-8004deb7: +0x6c   # ...
8004dec0-8004dedf: +0x68   # ...
8004dee0-8004df37: +0x70   # (prev) .. daPlBase_c::offDemo()
8004df3c-8004df47: +0x6c   # ...
8004df50-8004df6f: +0x68   # ...
8004df70-80050e5f: +0x70   # (prev) .. (gap)
# New symbol: daPlBase_c::isEnableGoalDemo()
80050e60-80052f03: +0xd0   # (gap) .. hashname_d8845940_a81ed025
80052f24-8005c453: +0xe0   # (prev) .. daPyDemoMng_c::executeGoalCastle()
8005c454-8005c457: +0xe8   # ...
8005c458-8005c48b: +0xf8   # ...
8005c48c-8005c497: +0xfc   # ...
8005c498-8005c6c7: +0x108  # ...
8005c6d0-8005f813: +0x100  # (prev) .. daPyMng_c::update()
8005f850-8005f877: +0xc8   # (prev) .. (gap)
# New symbol: daPyMng_c::onStopTimerInfo(signed char)
# New symbol: daPyMng_c::offStopTimerInfo(signed char)
# New symbol: daPyMng_c::updateTimerStopInfo()
8005f880-8009624f: +0x140  # (gap) .. hashname_1e05fa36_61699aa1_getDirectionOfInterestMaybe
80096250-80096253: +0x150  # ...
80096254-8009625b: +0x13c  # ...
8009625c-8009626f: +0x148  # ...
80096278-8009628f: +0x17c  # ...
80096290-800b45ff: +0x180  # (prev) .. (gap)
# New symbol: dGameCom::GetLanguage5()
800b4600-800b4600: +0x190  # (gap) .. dGameCom::GetLanguage6()
800b4630-800b4630: +0x170  # (prev) .. dGameCom::GetLanguageHBM()
800b4670-800b46ab: +0x140  # (prev) .. dGameCom::AreaLanguageFolder(const char*, char*)
800b4734-800b475f: +0xb8   # ...
800b4760-800c8daf: +0xc0   # (prev) .. (gap)
# Removed symbol: FUN_P1_800c8db0
800c8e50-800e4c5f: +0x20   # (gap) .. EGG::TSystem<EGG::Video,EGG::AsyncDisplay,EGG::XfbManager,EGG::SimpleAudioMgr,EGG::SceneManager,EGG::ProcessMeter>::Configuration::initialize()
800e4c60-800e4c63: +0x28   # ...
800e4c64-800e4c6b: +0x1c   # ...
800e4c6c-800e4d6f: +0x20   # ...
800e4d94-800e4d9b: -0x4    # ...
800e4da0-800e4ebf: -0x4    # ...
800e4ec0-800f794f: +0x0    # (prev) .. dWmEnemy_c::execute()
800f7950-800f79bf: +0xc    # ...
800f79c0-800fd5eb: +0x10   # (prev) .. hashname_03a0fb82_c35595ff
800fd5ec-800fd60b: +0x44   # ...
800fd610-801011bf: +0x40   # (prev) .. (gap)
# New symbol: daWmPlayer_c::isAllPlayerStarMode()
801011c0-8010127f: +0xb0   # (gap) .. (gap)
# New symbol: daWmPlayer_c::endStarSound()
80101280-80106f37: +0x100  # (gap) .. dRomFontMgr_c::createInstance(EGG::Heap*)
80106f38-80106f6f: +0x108  # ...
80106f70-80106fbb: +0x110  # (prev) .. dRomFontMgr_c::load_resource(EGG::Heap*)
80106fbc-80106fbf: +0x114  # ...
80106fc0-80106fc3: +0x12c  # ...
80106fc4-80106fc7: +0x11c  # ...
80106fc8-80106fe7: +0x128  # ...
80106ff0-80107047: +0x120  # (prev) .. TextWriter::TextWriter()
80107048-80107053: +0x124  # ...
80107074-80107077: +0x114  # ...
80107078-8010708f: +0x118  # ...
80107090-80107090: +0x120  # (prev) .. hashname_a7c33ff9_119556cb
80107091-8010709f: +0x144  # ...
801070a4-801070ab: +0x174  # ...
801070b0-801070b0: +0x170  # (prev) .. TextWriter::SetFontSize(float, float)
801070b1-801070b3: +0x188  # ...
801070b4-801070b7: +0x194  # ...
801070b8-801070bb: +0x188  # ...
801070bc-801070bf: +0x194  # ...
801070c0-801070c3: +0x18c  # ...
801070c8-801070cf: +0x1c0  # (prev) .. (gap)
# New symbol: TextWriter::SetCharSpace(float)
801070d0-8010710b: +0x1f0  # (gap) .. TextWriter::Begin()
8010710c-80107113: +0x1fc  # ...
80107114-801071f3: +0x210  # (prev) .. TextWriter::Print(const char*, ...)
801071f4-8010727f: +0x21c  # (prev) .. (gap)
# New symbol: TextWriter::Print(const wchar_t*, ...)
80107280-80107317: +0x350  # (gap) .. TextWriter::CalcRect(const char*, ...)
80107318-8010733b: +0x35c  # ...
8010733c-801073bf: +0x368  # (prev) .. (gap)
# New symbol: TextWriter::CalcRect(const wchar_t*, ...)
# New symbol: TextWriterBase::GetCharSpace() const
801073c0-801074ef: +0x4e0  # (gap) .. dDvdErr_c::createInstance(EGG::Heap*)
801074f0-801074f7: +0x4e4  # ...
801074f8-801074fb: +0x4d8  # ...
801074fc-80107503: +0x4e0  # ...
80107504-8010751b: +0x4e4  # ...
80107520-801076c7: +0x4e0  # (prev) .. dDvdErr_c::draw()
801076c8-80107707: +0x4e4  # ...
80107708-80107787: +0x4f0  # ...
80107788-801077b3: +0x4fc  # ...
801077c0-801079f3: +0x4f0  # (prev) .. dDvdErrorWideMsg_c::dDvdErrorWideMsg_c()
801079f4-80107b5b: +0x520  # (prev) .. hashname_39103005_6b6bb680_DvdErr8_PrepString
80107b60-80107c27: +0x520  # (prev) .. LangLocString::LangLocString()
80107c28-80107c5f: +0x524  # ...
80107c60-80107c63: +0x530  # ...
80107c64-80107c67: +0x60c  # ...
80107c68-80107c6b: +0x62c  # ...
80107c6c-80107c6f: +0x620  # ...
80107c70-80107cef: +0x528  # ...
80107cf0-80107d27: +0x530  # ...
80107d28-80107d3b: +0x534  # ...
80107d3c-80107d53: +0x538  # ...
80107d54-80107d57: +0x430  # ...
80107d58-80107d5b: +0x43c  # ...
80107d5c-80107d5f: +0x534  # ...
80107d60-80107d77: +0x538  # ...
80107d80-80107e83: +0x530  # (prev) .. hashname_9d424dc1_3668a152_4CCF4EE1_unkNameLoader
80107e84-80107fb3: +0x538  # ...
80107fb4-80107fcf: +0x544  # ...
80107fd0-8010f1b3: +0x550  # (prev) .. dWiiStrap_c::create()
8010f1b4-8010f1b7: +0x570  # ...
8010f1b8-8010f1bb: +0x550  # ...
8010f1bc-8010f1cf: +0x56c  # ...
8010f1d0-8010f1df: +0x570  # (prev) .. dWiiStrap_c::createLayout()
8010f1ec-8010f203: +0x564  # ...
8010f234-8010f237: +0x544  # ...
8010f238-8010f23b: +0x538  # ...
8010f23c-8010f23f: +0x530  # ...
8010f240-8010f243: +0x534  # ...
8010f244-8010f257: +0x538  # ...
8010f32c-8010f32f: +0x464  # ...
8010f330-8010f333: +0x468  # ...
8010f338-8010f33f: +0x464  # ...
8010f340-8010f347: +0x468  # ...
8010f378-8010f387: +0x438  # ...
8010f3ec-8010f417: +0x3d4  # ...
8010f41c-80150e77: +0x3d0  # (prev) .. daYoshi_c::executeLastAll()
80150e80-80150e83: +0x3c8  # ...
80150e90-80150ebb: +0x3c0  # ...
80150ec4-80150ec7: +0x3b8  # ...
80150ed4-8015140f: +0x3b0  # (prev) .. daYoshi_c::isNoDamage()
80151410-8015145f: +0x3c4  # ...
80151460-80152413: +0x3d0  # (prev) .. daYoshi_c::atCcCallBack(dCc_c*, dCc_c*)
80152414-8015241f: +0x3dc  # ...
80152424-80158837: +0x3e0  # (prev) .. dGameDisplay_c::createLayout()
8015883c-801589cf: +0x3dc  # ...
801589d0-801590c3: +0x3e0  # (prev) .. dGameDisplay_c::executeState_ProcGoalSettleUp()
801590c4-801590eb: +0x3ec  # ...
801590ec-8015912f: +0x3f0  # ...
80159130-8015918f: +0x3f4  # ...
80159190-8015acdf: +0x400  # (prev) .. Pausewindow_c::TitleDispChkWrite()
8015ace0-8015ace3: +0x410  # ...
8015ace4-8015ace7: +0x3fc  # ...
8015ace8-8015acef: +0x400  # ...
8015acf0-8015acf3: +0x40c  # ...
8015acf4-8015acfb: +0x400  # ...
8015acfc-8015ad2b: +0x404  # ...
8015ad2c-8015ad2f: +0x3b8  # ...
8015ad30-802bb6bf: +0x400  # (prev) .. (gap)
# Removed symbol: FUN_P1_802bb6c0
802bb6d0-802bb74f: +0x3f0  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bb750
802bb860-802bbbff: +0x2e0  # (gap) .. (gap)
# Removed symbol: FUN_P1_802bbc00
802bbc90-802e467f: +0x250  # (gap) .. (gap)
# New symbol: swprintf
802e4680-802edcd7: +0x348  # (gap) .. ==== BEGIN main.ctors ====
802edce0-802f4b1f: +0x340  # ==== BEGIN main.rodata
802f4b20-802f4b7f: +0x348
802f4b80-802f4bdf: +0x350
802f4be0-802f5d3f: +0x358
# New symbol: DAT_K_802f60a0
802f5d40-802fd29f: +0xc538
802fd2a0-80317737: +0xc540
# Removed symbol: DAT_P1_80317738
80317750-8032080f: +0xc528
# New symbol: "@46785"
# New symbol: "@46786"
80320810-8032164f: +0xc570
80321650-80321f07: +0xc578
80321f08-80321f17: +0xc57c
80321f18-80321f33: +0xc588
80321f38-80321f6f: +0xc584
80321f70-80321f97: +0xc588
80321f98-80321fe7: +0xc58c
80321fe8-80322003: +0xc594
80322004-8032204f: +0xc5b4
80322050-8032206b: +0xc600
8032206c-803220bf: +0xc61c
803220c0-803220df: +0xc670
803220e0-80322147: +0xc690
80322148-803221a7: +0xc6f4
803221a8-803221c3: +0xc754
803221c4-80322233: +0xc76c
80322234-803222a3: +0xc7d8
803222a4-803222c3: +0xc848
803222c4-80322337: +0xc86c
80322338-80322353: +0xc8e0
80322354-803223c7: +0xc8fc
803223c8-803223e7: +0xc968
803223e8-80322447: +0xc988
# New symbol: "@46208"
# New symbol: "@46209"
# New symbol: "@46210"
# New symbol: "@46211"
80322448-803224d7: +0xcab8
803224d8-803224e3: +0xcad0
803224f0-80322ff7: +0xcac8
# Removed symbol: DAT_P1_80323000
# Removed symbol: DAT_P1_80323020
# Removed symbol: DAT_P1_80323040
# Removed symbol: DAT_P1_80323060
# Removed symbol: DAT_P1_80323080
803230a0-803230c3: +0xca20
# Removed symbol: DAT_P1_803230c4
# Removed symbol: DAT_P1_803230d0
# Removed symbol: DAT_P1_803230dc
# Removed symbol: DAT_P1_803230e8
# Removed symbol: DAT_P1_803230f4
# Removed symbol: DAT_P1_80323100
# Removed symbol: DAT_P1_8032310c
# New symbol: "@66379"
80323118-80327673: +0xc9e0
80327674-80327693: +0xc9e4
80327698-803279cf: +0xc9e0
803279d0-8032e777: +0xc9e8
8032e780-8035197f: +0xc9e0  # ==== BEGIN main.bss ====
80351980-80427e5f: +0xca00  # ==== BEGIN main.sdata ====
# Removed symbol: DAT_P1_80427e60
# Removed symbol: DAT_P1_80427e68
# Removed symbol: DAT_P1_80427e70
# Removed symbol: DAT_P1_80427e78
# Removed symbol: DAT_P1_80427e80
80427e88-8042823f: +0xc9d8
# Removed symbol: DAT_P1_80428240
80428244-80428253: +0xc9d4
80428258-80429427: +0xc9d0
# New symbol: "@49051"
80429428-80429497: +0xc9d8
# New symbol: "@49066"
80429498-804294df: +0xc9e0
# New symbol: "@49084"
804294e0-804294e3: +0xc9e4
804294e8-8042954b: +0xc9e0
80429560-80429563: +0xc9cc
# Removed symbol: DAT_P1_80429564
80429570-8042d537: +0xc9c0
# New symbol: "@46535"
8042d538-8042d547: +0xc9c8
# New symbol: "@49497"
8042d548-8042d54b: +0xc9cc
8042d550-8042f427: +0xc9c8
# Removed symbol: DAT_P1_8042f428
8042f430-806d363f: +0xc9c0  # ==== BEGIN area between main.dol and d_profileNP.rel ====
806e0000-807683f2: +0x0     # WIIMJ2DNP.str
80768406-80768436: -0x13    # WIIMJ2DNP.str
8076844a-8076847c: -0x26    # WIIMJ2DNP.str
80768490-807684c4: -0x39    # WIIMJ2DNP.str
807684d8-807684df: -0x4c
807684e0-8076b27f: -0x40    # ==== BEGIN d_profileNP.rodata ====
8076b280-8076ca93: -0x38    # ==== BEGIN area between d_profileNP.rodata and d_profileNP.bss ====
8076ca94-8076d45f: -0x28
8076d4a0-8076dd7f: -0x40    # ==== BEGIN d_basesNP.text ==== .. FUN_P1_8076dc80
8076dd80-8076dd83: -0x28    # ...
8076dd88-8076dd8b: -0x2c    # ...
8076dd8c-8076dd8f: -0x28    # ...
8076dd90-8076dd93: -0x30    # ...
8076dd94-8076dd97: -0x28    # ...
8076dd98-8076dd9b: -0x30    # ...
8076dd9c-8076ddcf: -0x2c    # ...
8076ddd0-8076ddd3: -0x28    # ...
8076ddd4-8076df1f: -0x24    # ...
8076df20-80779aff: -0x20    # (prev) .. FUN_P1_80779a80
80779bb8-80779bd3: -0xd8    # ...
80779bfc-80779c0b: -0x100   # ...
80779c5c-8078895f: -0x150   # (prev) .. FUN_P1_807888e0
80788a18-80788a33: -0x208   # ...
80788a5c-80788a6b: -0x230   # ...
80788abc-8079d57f: -0x280   # (prev) .. (gap)
# ---- BEGIN d_multi_course_select_tournament.cpp ----
# New symbol: FUN_K_8079d300
# New symbol: FUN_K_8079d330
# New symbol: FUN_K_8079d420
# New symbol: FUN_K_8079d460
# New symbol: FUN_K_8079d4a0
# New symbol: FUN_K_8079d500
# New symbol: FUN_K_8079d570
# New symbol: FUN_K_8079d610
# New symbol: FUN_K_8079d9f0
# New symbol: FUN_K_8079da10
# New symbol: FUN_K_8079db30
# New symbol: FUN_K_8079db70
# New symbol: FUN_K_8079dbe0
# New symbol: FUN_K_8079dbf0
# New symbol: FUN_K_8079dc30
# New symbol: FUN_K_8079dc90
# New symbol: FUN_K_8079dd60
# New symbol: FUN_K_8079dde0
# New symbol: FUN_K_8079dfa0
# New symbol: FUN_K_8079e160
# New symbol: FUN_K_8079e1c0
# New symbol: FUN_K_8079e2a0
# New symbol: FUN_K_8079e330
# New symbol: FUN_K_8079e410
# New symbol: FUN_K_8079e8d0
# New symbol: FUN_K_8079e9a0
# New symbol: FUN_K_8079e9b0
# New symbol: FUN_K_8079ea50
# New symbol: FUN_K_8079ea60
# New symbol: FUN_K_8079ead0
# New symbol: FUN_K_8079eaf0
# New symbol: FUN_K_8079eb80
# New symbol: FUN_K_8079ebe0
# New symbol: FUN_K_8079ebf0
# New symbol: FUN_K_8079ec10
# New symbol: FUN_K_8079edc0
# New symbol: FUN_K_8079edd0
# New symbol: FUN_K_8079ee20
# New symbol: FUN_K_8079ee80
# New symbol: FUN_K_8079ee90
# New symbol: FUN_K_8079ef10
# New symbol: FUN_K_8079ef70
# New symbol: FUN_K_8079efb0
# New symbol: FUN_K_8079efd0
# New symbol: FUN_K_8079f010
# New symbol: FUN_K_8079f020
# New symbol: FUN_K_8079f060
# New symbol: FUN_K_8079f0c0
# New symbol: FUN_K_8079f110
# New symbol: FUN_K_8079f180
# New symbol: FUN_K_8079f250
# New symbol: FUN_K_8079f260
# New symbol: FUN_K_8079f2d0
# New symbol: FUN_K_8079f370
# New symbol: FUN_K_8079f380
# New symbol: FUN_K_8079f3d0
# New symbol: FUN_K_8079f400
# New symbol: FUN_K_8079f410
# New symbol: FUN_K_8079f420
# New symbol: FUN_K_8079f4c0
# New symbol: FUN_K_8079f4d0
# New symbol: FUN_K_8079f500
# New symbol: FUN_K_8079f510
# New symbol: FUN_K_8079f520
# New symbol: FUN_K_8079f5a0
# New symbol: FUN_K_8079f660
# New symbol: FUN_K_8079f670
# New symbol: FUN_K_8079f690
# New symbol: FUN_K_8079f6c0
# New symbol: FUN_K_8079f6d0
# New symbol: FUN_K_8079f6e0
# New symbol: FUN_K_8079f740
# New symbol: FUN_K_8079f750
# New symbol: FUN_K_8079f770
# New symbol: FUN_K_8079f790
# New symbol: FUN_K_8079f7b0
# New symbol: FUN_K_8079f7c0
# New symbol: FUN_K_8079f7d0
# New symbol: FUN_K_8079f7e0
# New symbol: FUN_K_8079f7f0
# New symbol: FUN_K_8079f800
# New symbol: FUN_K_8079f830
# New symbol: FUN_K_8079f860
# New symbol: FUN_K_8079f890
# New symbol: FUN_K_807a0320
# New symbol: FUN_K_807a0380
# ---- END d_multi_course_select_tournament.cpp ----
# ---- BEGIN d_multi_course_select_tournament_button.cpp ----
# New symbol: FUN_K_807a0410
# New symbol: FUN_K_807a0440
# New symbol: FUN_K_807a0500
# New symbol: FUN_K_807a0540
# New symbol: FUN_K_807a0580
# New symbol: FUN_K_807a05e0
# New symbol: FUN_K_807a0650
# New symbol: FUN_K_807a06e0
# New symbol: FUN_K_807a0780
# New symbol: FUN_K_807a0850
# New symbol: FUN_K_807a0890
# New symbol: FUN_K_807a0910
# New symbol: FUN_K_807a0920
# New symbol: FUN_K_807a0960
# New symbol: FUN_K_807a0970
# New symbol: FUN_K_807a09f0
# New symbol: FUN_K_807a0a40
# New symbol: FUN_K_807a0a60
# New symbol: FUN_K_807a0a70
# New symbol: FUN_K_807a0a80
# New symbol: FUN_K_807a0a90
# New symbol: FUN_K_807a0b30
# New symbol: FUN_K_807a0b70
# New symbol: FUN_K_807a0bc0
# New symbol: FUN_K_807a0c20
# New symbol: FUN_K_807a0c70
# New symbol: FUN_K_807a0cb0
# New symbol: FUN_K_807a0d10
# New symbol: FUN_K_807a0d20
# New symbol: FUN_K_807a0d30
# New symbol: FUN_K_807a0d90
# New symbol: FUN_K_807a0df0
# New symbol: FUN_K_807a0e30
# New symbol: FUN_K_807a0e90
# New symbol: FUN_K_807a0ea0
# New symbol: FUN_K_807a0eb0
# New symbol: FUN_K_807a0ec0
# New symbol: FUN_K_807a0f20
# New symbol: FUN_K_807a0f30
# New symbol: FUN_K_807a0f50
# New symbol: FUN_K_807a0f70
# New symbol: FUN_K_807a0f90
# New symbol: FUN_K_807a0fa0
# New symbol: FUN_K_807a0fb0
# New symbol: FUN_K_807a0fc0
# New symbol: FUN_K_807a0fd0
# New symbol: FUN_K_807a0fe0
# New symbol: FUN_K_807a1010
# New symbol: FUN_K_807a1040
# New symbol: FUN_K_807a1070
# New symbol: FUN_K_807a1520
# New symbol: FUN_K_807a1580
# ---- END d_multi_course_select_tournament_button.cpp ----
8079d580-8079d8f3: +0x4090  # (gap) .. FUN_P1_8079d810
8079d8f4-8079d9bb: +0x4094  # ...
8079d9bc-8079d9eb: +0x40b0  # ...
8079d9ec-8079e1db: +0x40c0  # (prev) .. FUN_P1_8079dea0
8079e1dc-8079e2f3: +0x40d0  # (prev) .. FUN_P1_8079e270
8079e2f8-8079e2fb: +0x40cc  # ...
8079e318-8079e387: +0x40dc  # ...
8079e3a8-8079e3cb: +0x40bc  # ...
8079e3d0-8079e3d3: +0x40b8  # ...
8079e3f0-8079e45f: +0x40c8  # ...
8079e480-8079e497: +0x40a8  # ...
8079e4a0-8079eb23: +0x40a0  # ...
8079eb24-8079eb63: +0x40b0  # (prev) .. FUN_P1_8079ea90
8079eb64-8079ebdb: +0x40c4  # ...
8079ebe0-807a124f: +0x40c0  # (prev) .. FUN_P1_807a11a0
807a1250-807a1253: +0x40dc  # (prev) ..
807a1254-807a1257: +0x40c0  # (prev) ..
807a1258-807a125b: +0x40d8  # (prev) ..
807a125c-807a125f: +0x40b4  # (prev) ..
807a1260-807a1273: +0x40b8  # (prev) ..
807a1274-807a43af: +0x40c0  # (prev) .. FUN_P1_807a4330
807a43b0-807a43b3: +0x40c4  # ...
807a43b8-807a43bb: +0x40b8  # ...
807a43bc-807a44bf: +0x40bc  # ...
807a44c0-807a7b63: +0x40c0  # (prev) .. FUN_P1_807a7af0
807a7b64-807a7b67: +0x40c4  # ...
807a7b6c-807a7b6f: +0x40b8  # ...
807a7b70-807a7c1f: +0x40bc  # ...
807a7c20-80817390: +0x40c0  # (prev) .. FUN_P1_80817380
80817391-80817393: +0x40c8  # ...
80817394-80817397: +0x40e0  # ...
80817398-8081739b: +0x40cc  # ...
8081739c-8081739f: +0x40d4  # ...
808173a0-808173a7: +0x40c8  # ...
808173a8-808173b3: +0x40d0  # ...
808173b4-808173b7: +0x40a8  # ...
808173b8-808173eb: +0x40cc  # ...
808173ec-808173ef: +0x40e0  # ...
808173f0-808173f7: +0x40e8  # ...
80817400-808174db: +0x40e0  # (prev) .. FUN_P1_80817450
808174dc-8081752f: +0x40ec  # ...
80817530-80826ddf: +0x40f0  # (prev) .. FUN_P1_80826dc0
80826e90-80827003: +0x4210  # (prev) .. FUN_P1_80826fb0
80827004-80827007: +0x4214  # ...
80827008-8082700f: +0x4218  # ...
80827014-80827023: +0x4228  # ...
80827028-80827043: +0x4224  # ...
80827048-80827227: +0x4220  # (prev) .. FUN_P1_808270b0
80827228-8082729f: +0x4228  # ...
808272a0-8086e98f: +0x4230  # (prev) .. FUN_P1_8086e8d0
8086e990-8086e9db: +0x4244  # ...
8086e9e0-8086eabb: +0x4240  # (prev) .. FUN_P1_8086ea10
8086eabc-8086eabf: +0x4244  # ...
8086eac0-8086eac3: +0x423c  # ...
8086eac4-8086eb7b: +0x4240  # ...
8086eb7c-8086eb7f: +0x4244  # ...
8086eb80-8086eb83: +0x4260  # ...
8086eb84-8086eb87: +0x4268  # ...
8086eb88-8086eb8b: +0x4260  # ...
8086eb8c-8086ebbf: +0x4264  # ...
8086ebc0-808d3b97: +0x4270  # (prev) .. FUN_P1_808d3ab0
808d3be4-808d3be7: +0x422c  # ...
808d3be8-808d3beb: +0x4224  # ...
808d3bec-808d3bef: +0x4228  # ...
808d3bf8-808d3bfb: +0x422c  # ...
808d3bfc-808d3bff: +0x4224  # ...
808d3c00-808d3c03: +0x421c  # ...
808d3c04-808d3c27: +0x4228  # ...
808d3c30-808ef2df: +0x4220  # (prev) .. (gap)
# Removed symbol: FUN_P1_808ef2d0
808ef310-808fb94f: +0x41f0  # (gap) .. FUN_P1_808fb2f0
808fb950-808fb95b: +0x41fc  # ...
808fb994-808fbcef: +0x41f8  # ...
808fbcf8-808fbd0f: +0x420c  # ...
808fbd10-808fbfdf: +0x4210  # (prev) .. (gap)
# New symbol: FUN_K_809001f0
808fbfe0-80902a87: +0x4250  # (gap) .. FUN_P1_809029e0
80902aa0-80902acf: +0x423c  # ...
80902ad0-8090947f: +0x4240  # (prev) .. (gap)
# Removed symbol: FUN_P1_80909470
80909510-8091f15f: +0x41b0  # (gap) .. FUN_P1_8091f070
8091f160-8091f167: +0x41b4  # ...
8091f168-8091f17f: +0x41b8  # ...
8091f180-8091f257: +0x41c0  # (prev) .. FUN_P1_8091f200
8091f258-8091f27b: +0x41d4  # ...
8091f280-809337eb: +0x41d0  # (prev) .. ==== BEGIN d_basesNP.ctors ====
809337ec-8093520f: +0x41d8  # ==== BEGIN d_basesNP.data ====
# ---- BEGIN d_multi_course_select_tournament.cpp ----
# New symbol: DAT_K_809393e8
# New symbol: DAT_K_809393f8
# New symbol: DAT_K_80939408
# New symbol: DAT_K_80939428
# New symbol: DAT_K_80939438
# New symbol: DAT_K_80939468
# New symbol: DAT_K_80939470
# New symbol: DAT_K_80939480
# New symbol: DAT_K_809394dc
# ---- END d_multi_course_select_tournament.cpp ----
# ---- BEGIN d_multi_course_select_tournament_button.cpp ----
# New symbol: DAT_K_809394f0
# ---- END d_multi_course_select_tournament_button.cpp ----
80935210-809382cf: +0x42f0
# Removed symbol: DAT_P1_809382c0
# Removed symbol: DAT_P1_809382c4
# Removed symbol: DAT_P1_809382c8
# Removed symbol: DAT_P1_809382cc
# New symbol: DAT_K_8093c5c0
# New symbol: DAT_K_8093c5c4
# New symbol: DAT_K_8093c5c8
# New symbol: DAT_K_8093c5cc
# New symbol: DAT_K_8093c5d0
# New symbol: DAT_K_8093c5d4
# New symbol: DAT_K_8093c5d8
# New symbol: DAT_K_8093c5dc
809382e0-80940c77: +0x4300  # ==== BEGIN d_basesNP.rodata ====
80940c7c-80940c9b: +0x42fc
80940ca0-80940cbf: +0x42f8
80940cc4-80940ccf: +0x42f4
# Removed symbol: DAT_P1_80940cc0
# Removed symbol: DAT_P1_80940ce4
# Removed symbol: DAT_P1_80940d08
# Removed symbol: DAT_P1_80940d2c
# Removed symbol: DAT_P1_80940d38
# Removed symbol: DAT_P1_80940d5c
# Removed symbol: DAT_P1_80940d80
# Removed symbol: DAT_P1_80940da4
# Removed symbol: DAT_P1_80940db0
# Removed symbol: DAT_P1_80940dd4
# Removed symbol: DAT_P1_80940df8
# Removed symbol: DAT_P1_80940e1c
# Removed symbol: DAT_P1_80940e28
# Removed symbol: DAT_P1_80940e4c
# Removed symbol: DAT_P1_80940e70
# Removed symbol: DAT_P1_80940e94
80940eb0-80940ee3: +0x4114
80940ee8-80940f17: +0x4110
# Removed symbol: DAT_P1_80940f08
# Removed symbol: DAT_P1_80940f14
# Removed symbol: DAT_P1_80940f20
# Removed symbol: DAT_P1_80940f2c
# Removed symbol: DAT_P1_80940f38
# Removed symbol: DAT_P1_80940f44
# Removed symbol: DAT_P1_80940f50
# New symbol: DAT_K_80945028
80940f68-80944ea3: +0x40d8
80944ea8-80944ec7: +0x40d4
80944ed0-80944efb: +0x40cc
# Removed symbol: DAT_P1_80944eec
# Removed symbol: DAT_P1_80944f0c
# Removed symbol: DAT_P1_80944f30
# Removed symbol: DAT_P1_80944f50
# Removed symbol: DAT_P1_80944f5c
# Removed symbol: DAT_P1_80944f7c
# Removed symbol: DAT_P1_80944fa0
# Removed symbol: DAT_P1_80944fc0
# Removed symbol: DAT_P1_80944fcc
# Removed symbol: DAT_P1_80944fec
# Removed symbol: DAT_P1_80945010
# Removed symbol: DAT_P1_80945030
# Removed symbol: DAT_P1_8094503c
# Removed symbol: DAT_P1_8094505c
# Removed symbol: DAT_P1_80945080
# Removed symbol: DAT_P1_809450a0
809450bc-809450d3: +0x3f0c
809450d8-80945103: +0x3f08
# Removed symbol: DAT_P1_809450f4
# Removed symbol: DAT_P1_80945100
# Removed symbol: DAT_P1_8094510c
# Removed symbol: DAT_P1_80945118
# Removed symbol: DAT_P1_80945124
# Removed symbol: DAT_P1_80945130
# Removed symbol: DAT_P1_8094513c
# New symbol: DAT_K_8094900c
80945154-809494a7: +0x3ed0
809494a8-8094978f: +0x3edc
80949790-8094a387: +0x3ee0
# ---- BEGIN d_multi_course_select_tournament.cpp ----
# New symbol: DAT_K_8094e268
# New symbol: DAT_K_8094e270
# New symbol: DAT_K_8094e2b0
# New symbol: DAT_K_8094e304
# New symbol: DAT_K_8094e330
# New symbol: DAT_K_8094e35c
# New symbol: DAT_K_8094e388
# New symbol: DAT_K_8094e3b4
# New symbol: DAT_K_8094e3e0
# New symbol: DAT_K_8094e410
# New symbol: DAT_K_8094e43c
# New symbol: DAT_K_8094e458
# New symbol: DAT_K_8094e464
# New symbol: DAT_K_8094e470
# New symbol: DAT_K_8094e47c
# New symbol: DAT_K_8094e484
# New symbol: DAT_K_8094e4a0
# New symbol: DAT_K_8094e4ac
# New symbol: DAT_K_8094e4bc
# New symbol: DAT_K_8094e4c8
# New symbol: DAT_K_8094e4d4
# New symbol: DAT_K_8094e4e0
# New symbol: DAT_K_8094e4ec
# New symbol: DAT_K_8094e4f8
# New symbol: DAT_K_8094e504
# New symbol: DAT_K_8094e518
# New symbol: DAT_K_8094e528
# New symbol: DAT_K_8094e538
# New symbol: DAT_K_8094e54c
# New symbol: DAT_K_8094e560
# New symbol: DAT_K_8094e574
# New symbol: DAT_K_8094e580
# New symbol: DAT_K_8094e590
# New symbol: DAT_K_8094e5a0
# New symbol: DAT_K_8094e5b0
# New symbol: DAT_K_8094e5c0
# New symbol: DAT_K_8094e5d0
# New symbol: DAT_K_8094e5e0
# New symbol: DAT_K_8094e5f0
# New symbol: DAT_K_8094e600
# New symbol: DAT_K_8094e60c
# New symbol: DAT_K_8094e620
# New symbol: DAT_K_8094e630
# New symbol: DAT_K_8094e640
# New symbol: DAT_K_8094e650
# New symbol: DAT_K_8094e660
# New symbol: DAT_K_8094e670
# New symbol: DAT_K_8094e684
# New symbol: DAT_K_8094e6f0
# New symbol: DAT_K_8094e700
# New symbol: DAT_K_8094e710
# New symbol: DAT_K_8094e720
# New symbol: DAT_K_8094e730
# New symbol: DAT_K_8094e740
# New symbol: DAT_K_8094e750
# New symbol: DAT_K_8094e760
# New symbol: DAT_K_8094e77c
# New symbol: DAT_K_8094e788
# New symbol: DAT_K_8094e794
# New symbol: DAT_K_8094e7a4
# New symbol: DAT_K_8094e7b0
# New symbol: DAT_K_8094e7c0
# New symbol: DAT_K_8094e7d4
# New symbol: DAT_K_8094e812
# New symbol: DAT_K_8094e838
# New symbol: DAT_K_8094e888
# New symbol: DAT_K_8094e8b8
# New symbol: DAT_K_8094e8e8
# New symbol: DAT_K_8094e900
# New symbol: DAT_K_8094e998
# New symbol: DAT_K_8094e9bc
# New symbol: DAT_K_8094e9e0
# New symbol: DAT_K_8094ea04
# New symbol: DAT_K_8094ea28
# New symbol: DAT_K_8094ea4c
# New symbol: DAT_K_8094ea70
# New symbol: DAT_K_8094ea9c
# New symbol: DAT_K_8094eab8
# New symbol: DAT_K_8094eadc
# New symbol: DAT_K_8094eb00
# New symbol: DAT_K_8094eb24
# New symbol: DAT_K_8094eb48
# New symbol: DAT_K_8094eb74
# New symbol: DAT_K_8094eb90
# New symbol: DAT_K_8094ebc4
# New symbol: DAT_K_8094ec00
# New symbol: DAT_K_8094ec40
# New symbol: DAT_K_8094ec70
# New symbol: DAT_K_8094ecb4
# New symbol: DAT_K_8094ecf0
# New symbol: DAT_K_8094ed28
# New symbol: DAT_K_8094ed68
# New symbol: DAT_K_8094eda0
# New symbol: DAT_K_8094edd8
# New symbol: DAT_K_8094ee18
# New symbol: DAT_K_8094ee54
# New symbol: DAT_K_8094ee8c
# New symbol: DAT_K_8094eec0
# ---- END d_multi_course_select_tournament.cpp ----
# ---- BEGIN d_multi_course_select_tournament_button.cpp ----
# New symbol: DAT_K_8094eef8
# New symbol: DAT_K_8094ef00
# New symbol: DAT_K_8094ef38
# New symbol: DAT_K_8094ef74
# New symbol: DAT_K_8094efb0
# New symbol: DAT_K_8094efbc
# New symbol: DAT_K_8094efc8
# New symbol: DAT_K_8094efd4
# New symbol: DAT_K_8094efdc
# New symbol: DAT_K_8094efe0
# New symbol: DAT_K_8094efec
# New symbol: DAT_K_8094eff8
# New symbol: DAT_K_8094f000
# New symbol: DAT_K_8094f030
# New symbol: DAT_K_8094f080
# New symbol: DAT_K_8094f0b0
# New symbol: DAT_K_8094f0e0
# New symbol: DAT_K_8094f0f8
# New symbol: DAT_K_8094f190
# New symbol: DAT_K_8094f1b4
# New symbol: DAT_K_8094f1d8
# New symbol: DAT_K_8094f1fc
# New symbol: DAT_K_8094f220
# New symbol: DAT_K_8094f244
# New symbol: DAT_K_8094f268
# New symbol: DAT_K_8094f2a0
# New symbol: DAT_K_8094f2dc
# New symbol: DAT_K_8094f31c
# New symbol: DAT_K_8094f360
# New symbol: DAT_K_8094f3a0
# New symbol: DAT_K_8094f3e0
# ---- END d_multi_course_select_tournament_button.cpp ----
8094a388-8094a3bb: +0x5090
8094a3bc-8094a443: +0x5094
8094a444-8094a46f: +0x5098
8094a470-8094a49b: +0x509c
8094a4a0-8094a5f3: +0x5098
# New symbol: DAT_K_8094f68c
8094a5f8-8094a617: +0x50a4
8094a618-8094c0d7: +0x50a8
8094c0d8-8094c123: +0x50b0
8094c124-8094c14b: +0x50b4
8094c150-8094c177: +0x50b0
8094c178-8094c1a3: +0x50b4
8094c1a8-8094cabb: +0x50b0
8094cabc-8094d5cb: +0x50b8
8094d5cc-8098a37b: +0x50c0
# Note: I chose to map ENG -> KR here instead of KR -> KR...
# - for consistency with the rest of the address map
# - because the KR string in KR is going to be replaced with TW/CN later,
#   so it avoids giving KR special treatment just because it released first
# Removed symbol: DAT_P1_8098a36c
8098a398-8098a3b3: +0x50a4
# Removed symbol: DAT_P1_8098a3ac
# Removed symbol: DAT_P1_8098a3d0
# Removed symbol: DAT_P1_8098a3f4
# Removed symbol: DAT_P1_8098a418
# Removed symbol: DAT_P1_8098a43c
# Removed symbol: DAT_P1_8098a458
8098a488-8099080f: +0x4fd0  # ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
80990820-80994317: +0x4fc0  # ==== BEGIN d_basesNP.bss ====
# ---- BEGIN d_multi_course_select_tournament.cpp ----
# New symbol: DAT_K_809992f8
# New symbol: DAT_K_80999308
# New symbol: DAT_K_80999314
# New symbol: DAT_K_80999338
# New symbol: DAT_K_80999348
# New symbol: DAT_K_80999354
# New symbol: DAT_K_80999378
# New symbol: DAT_K_80999388
# New symbol: DAT_K_80999394
# New symbol: DAT_K_809993b8
# New symbol: DAT_K_809993c8
# New symbol: DAT_K_809993d4
# New symbol: DAT_K_809993f8
# New symbol: DAT_K_80999408
# New symbol: DAT_K_80999414
# New symbol: DAT_K_80999438
# New symbol: DAT_K_80999448
# New symbol: DAT_K_80999454
# New symbol: DAT_K_80999478
# New symbol: DAT_K_80999488
# New symbol: DAT_K_80999494
# New symbol: DAT_K_809994b8
# New symbol: DAT_K_809994c8
# New symbol: DAT_K_809994d4
# New symbol: DAT_K_809994f8
# New symbol: DAT_K_80999508
# New symbol: DAT_K_80999514
# New symbol: DAT_K_80999538
# New symbol: DAT_K_80999548
# New symbol: DAT_K_80999554
# New symbol: DAT_K_80999578
# New symbol: DAT_K_80999588
# New symbol: DAT_K_80999594
# New symbol: DAT_K_809995b8
# New symbol: DAT_K_809995c8
# New symbol: DAT_K_809995d4
# New symbol: DAT_K_809995f8
# New symbol: DAT_K_80999608
# New symbol: DAT_K_80999614
# New symbol: DAT_K_80999638
# New symbol: DAT_K_80999648
# New symbol: DAT_K_80999654
# ---- END d_multi_course_select_tournament.cpp ----
# ---- BEGIN d_multi_course_select_tournament_button.cpp ----
# New symbol: DAT_K_80999678
# New symbol: DAT_K_80999688
# New symbol: DAT_K_80999694
# New symbol: DAT_K_809996b8
# New symbol: DAT_K_809996c8
# New symbol: DAT_K_809996d4
# New symbol: DAT_K_809996f8
# New symbol: DAT_K_80999708
# New symbol: DAT_K_80999714
# New symbol: DAT_K_80999738
# New symbol: DAT_K_80999748
# New symbol: DAT_K_80999754
# New symbol: DAT_K_80999778
# New symbol: DAT_K_80999788
# New symbol: DAT_K_80999794
# New symbol: DAT_K_809997b8
# New symbol: DAT_K_809997c8
# New symbol: DAT_K_809997d4
# ---- END d_multi_course_select_tournament_button.cpp ----
80994318-80a0a57f: +0x54e0  # ==== BEGIN d_enemiesNP.text ==== .. FUN_P1_80a0a550
80a0a580-80a0a5a7: +0x54e4  # ...
80a0a5b4-80a0a5ef: +0x54e8  # ...
80a0a5f0-80a0a5ff: +0x54ec  # ...
80a0a600-80a0a60f: +0x54f0  # (prev) .. FUN_P1_80a0a5e0
80a0a610-80a0a633: +0x54f8  # ....
80a0a63c-80a0a63f: +0x54fc  # ....
80a0a640-80a0a643: +0x5504  # ....
80a0a644-80a0a647: +0x54fc  # ....
80a0a648-80a0a64b: +0x54f4  # ....
80a0a64c-80a0a67f: +0x54fc  # ....
80a0a680-80a0b1c3: +0x5500  # (prev) .. FUN_P1_80a0b190
80a0b1c4-80a0b1c7: +0x5578  # ...
80a0b1c8-80a0b1cb: +0x5500  # ...
80a0b1cc-80a0b50f: +0x5574  # ...
80a0b510-80a38ee0: +0x5580  # (prev) .. FUN_P1_80a38ec0
80a38ee1-80a38ee3: +0x55a4  # ...
80a38ee4-80a38eef: +0x55ac  # ...
80a38ef0-80b1143f: +0x55b0  # (prev) .. ==== BEGIN area between d_enemiesNP.rodata and d_enemiesNP.bss ====
80b11440-80b304fb: +0x55c0  # ==== BEGIN d_en_bossNP.text ==== .. FUN_P1_80b304c0
80b304fc-80b30513: +0x55cc  # ...
80b3051c-80b3051f: +0x55c8  # ...
80b30520-80b30523: +0x55dc  # ...
80b30524-80b30527: +0x55d0  # ...
80b30528-80b3052b: +0x55d8  # ...
80b3052c-80b3052f: +0x55cc  # ...
80b30530-80b30533: +0x55bc  # ...
80b30534-80b30537: +0x55d8  # ...
80b30538-80b3053f: +0x55cc  # ...
80b30540-80b30543: +0x55d4  # ...
80b30544-80b30547: +0x55cc  # ...
80b30548-80b3054b: +0x55d0  # ...
80b3054c-80b3054f: +0x55e8  # ...
80b30550-80b3055f: +0x55cc  # ...
80b30560-80b30563: +0x55dc  # ...
80b30564-80b3056b: +0x55c8  # ...
80b3056c-80b3056f: +0x55cc  # ...
80b30570-80b89aaf: +0x55d0  # ==== BEGIN area between d_en_bossNP.rodata and d_en_bossNP.bss ====
80b89ac0-*: +0x55c0

[W]
# Taiwanese NSMBW (SMNW01)
extend K
# ==== BEGIN main.text ====
80000000-800b47a0: +0x0  # (start) .. dGameCom::GetLanguageHBM()
800b47a4-800b47ab: +0x4  # ...
800b47b0-800e712f: +0x0  # (prev) .. TagProcessor_c::getScissor(void*)
800e7130-800e7133: +0xc  # ...
800e7134-800e7137: -0x4  # ...
800e7138-800e713b: +0x0  # ...
800e713c-800e714b: +0x4  # ...
800e7150-80158c17: +0x0  # (prev) .. dGameDisplay_c::createLayout()
80158c18-80158dab: +0x4  # ...
80158db0-80300647: +0x0  # (prev) .. ==== BEGIN main.rodata ====
80302278-803097cf: -0x1c30  # DAT_K_802f60a0 (embedded BRFNT which shrank in size)
803097e0-80334053: -0x1c40
80334058-80334077: -0x1c44
80334078-803343af: -0x1c40
803343b8-8033b15f: -0x1c48
8033b160-8035e37f: -0x1c40
8035e380-806dffff: -0x1c00  # ==== BEGIN area between main.dol and d_profileNP.rel ====
806e0000-807a1a33: +0x0   # ==== BEGIN d_basesNP.text ==== .. FUN_P1_8079d810
807a1a50-807a1a9b: -0x1c  # ...
807a1aac-807a1adf: -0x2c  # ...
807a1ae0-807a229b: -0x20  # (prev) .. FUN_P1_8079dea0
807a22ac-807a2bc3: -0x30  # (prev) .. FUN_P1_8079ea90
807a2bd4-807a2c13: -0x40  # ...
807a2c28-807a2c9f: -0x54  # ...
807a2ca0-807a846f: -0x50  # (prev) .. FUN_P1_807a4330
807a8470-807a8473: -0x48  # ...
807a8474-807a8477: -0x54  # ...
807a8478-807a857b: -0x4c  # ...
807a8580-807abc23: -0x50  # (prev) .. FUN_P1_807a7af0
807abc24-807abc27: -0x48  # ...
807abc28-807abc2b: -0x54  # ...
807abc2c-807abcdb: -0x4c  # ...
807abce0-8094d377: -0x50  # (prev) .. ==== BEGIN d_basesNP.rodata ====
8094d384-8094d66b: -0x5c
8094d670-8094f44b: -0x60
8094f450-8094f4d7: -0x64
8094f4dc-8094f507: -0x68
8094f50c-8094f54f: -0x6c
8094f550-8094f68b: -0x68
# Removed symbol: DAT_K_8094f68c
8094f69c-8094f6bb: -0x74
8094f6c0-8095117f: -0x78
80951188-809511d3: -0x80
809511d8-809511ff: -0x84
80951200-80951227: -0x80
8095122c-80951277: -0x84
80951278-80951b6b: -0x80
80951b74-80952683: -0x88
8095268c-809957df: -0x90  # ==== BEGIN area between d_basesNP.rodata and d_basesNP.bss ====
809957e0-*: -0x80

[C]
# Nvidia Shield TV NSMBW for Mainland China (SMNC01)
# PLEASE NOTE: This mapping is using the REL load addresses obtained from a port to Dolphin Emulator,
# since there's currently no way to obtain a memory dump from the original environment (Lingcod).
# The REL addresses should be double-checked once that's possible, and adjusted if/as necessary.
# (Maybe add a separate, derived version target for "C running outside of Lingcod", in that case.)
extend W
# ==== BEGIN main.text ====
80000000-800836ff: +0x0    # (start) .. dBgUnit_c::create(dBgUnit_c*, EGG::Heap*, int, int)
80083700-8008370b: +0x4    # ...
8008370c-8008379f: +0x8    # ...
800837a0-80086fab: +0x10   # (prev) .. hashname_87b5a2ae_70d47a92_randomiseHorzVert
80086fac-80086ffb: +0x14   # ...
80087000-800870d3: +0x10   # (prev) .. hashname_2f3cb118_7c4d6384_randomiseHorz
800870d4-8008711b: +0x14   # ...
80087120-800871f3: +0x10   # (prev) .. hashname_178a9b06_5324781a_randomiseVert
800871f4-8008723b: +0x14   # ...
80087240-8008f287: +0x10   # (prev) .. dDvd::loader_c::loader_c()
8008f288-8008f28b: +0x18   # ...
8008f28c-8008f28f: +0xc    # ...
8008f290-8008f293: +0x14   # ...
8008f294-8008f297: +0x8    # ...
8008f298-8008f2a3: +0x10   # ...
8008f2a4-8008f2ab: +0x14   # ...
8008f2b0-8008f3bf: +0x10   # (prev) .. dDvd::loader_c::request(const char*, unsigned char, EGG::Heap*)
8008f3c0-8008f3ef: +0x3c   # ...
8008f3f0-8008f417: +0x40   # (prev) .. dDvd::loader_c::remove()
8008f418-8008f447: +0x58   # ...
8008f450-8008f477: +0x50   # (prev) .. hashname_e3243e49_89487c83
8008f478-8008f4b7: +0x68   # ...
8008f4c0-800b47a0: +0x60   # (prev) .. dGameCom::GetLanguageHBM()
800b47a8-800b47af: +0x5c   # ...
800b47b0-800b5f43: +0x60   # (prev) .. dGameKeyCore_c::read()
800b5f44-800b5f47: +0x6c   # ...
800b5f48-800b5f6f: +0x70   # ...
800b5f70-800b5f77: +0x34   # ...
800b5f78-800b6027: +0x1ec  # ...
800b6028-800c8dd7: +0x1f0  # (prev) .. Function with different signatures:
800c8dd8-800c8ddb: +0x1fc  # ...     | W: LytBase_c::ReadResource2(const char*)
800c8ddc-800c8de3: +0x1ec  # ...     | C: LytBase_c::ReadResource2(const char*, int)
800c8de4-800c8deb: +0x1f8  # ...
800c8dec-800c8def: +0x1ec  # ...
800c8df0-800c8e2b: +0x1f8  # ...
800c8e2c-800c8e33: +0x1fc  # ...
800c8e38-800c8e63: +0x1f8  # ...
800c8e64-800c8e6f: +0x1fc  # ...
800c8e70-800cf8cb: +0x200  # (prev) .. dNandThread_c::load()
800cf8f4-800cf92f: +0x1d8  # ...
800cf930-800dc08f: +0x1e0  # (prev) .. dRemoconMng_c::dRemoconMng_c()
800dc090-800dc0ef: +0x1e8  # ...
800dc0f0-800dc573: +0x1f0  # (prev) .. dRemoconMng_c::create(EGG::Heap*)
800dc574-800dc587: +0x1f8  # ...
800dc590-800dcc17: +0x1f0  # (prev) .. dRemoconMng_c::dConnect_c::dExtension_c::executeState_Wait()
800dcc18-800dcc47: +0x218  # ...
800dcc50-800dcc87: +0x210  # (prev) .. dRemoconMng_c::dConnect_c::dExtension_c::executeState_None()
800dcc88-800dcc8b: +0x220  # ...
800dcc8c-800dcc8f: +0x20c  # ...
800dcc90-800dcc93: +0x228  # ...
800dcca4-800dcca7: +0x20c  # ...
800dcca8-800dccab: +0x1fc  # ...
800dccac-800dccaf: +0x224  # ...
800dccb0-800dccb3: +0x214  # ...
800dccb4-800dccb7: +0x200  # ...
800dccb8-800dccbb: +0x208  # ...
800dccbc-800dccbf: +0x200  # ...
800dccc0-800dccc3: +0x20c  # ...
800dccc4-800dcd2b: +0x210  # ...
800dcd30-800dcd33: +0x20c  # ...
800dcd34-800dcd37: +0x210  # ...
800dcd3c-800dcd47: +0x20c  # ...
800dcd48-800dcd4b: +0x234  # ...
800dcd50-800dcd53: +0x230  # ...
800dcd54-800dcd57: +0x234  # ...
800dcd5c-800dcd63: +0x230  # ...
800dcd64-800dcd67: +0x238  # ...
800dcd78-800dcd87: +0x228  # ...
800dcd90-800dcdb7: +0x220  # (prev) .. dRemoconMng_c::dConnect_c::dExtension_c::executeState_Freestyle()
800dcdb8-800dcdbb: +0x230  # ...
800dcdbc-800dcdbf: +0x21c  # ...
800dcdd4-800dcdd7: +0x21c  # ...
800dcdd8-800dcddb: +0x20c  # ...
800dcddc-800dcddf: +0x234  # ...
800dcde0-800dcde3: +0x224  # ...
800dcde4-800dcde7: +0x210  # ...
800dcde8-800dcdeb: +0x218  # ...
800dcdec-800dcdef: +0x210  # ...
800dcdf0-800dcdf3: +0x21c  # ...
800dcdf4-800dce5b: +0x220  # ...
800dce60-800dce63: +0x21c  # ...
800dce64-800dce67: +0x220  # ...
800dce6c-800dce77: +0x21c  # ...
800dce78-800dce7b: +0x244  # ...
800dce80-800dce83: +0x240  # ...
800dce84-800dce87: +0x244  # ...
800dce8c-800dce93: +0x240  # ...
800dce94-800dce97: +0x248  # ...
800dcea8-800dceb7: +0x238  # (prev) .. (gap)
# New symbol: dRemoconMng_c::dConnect_c::dExtension_c::initializeState_Classic()
# New symbol: dRemoconMng_c::dConnect_c::dExtension_c::finalizeState_Classic()
# New symbol: dRemoconMng_c::dConnect_c::dExtension_c::executeState_Classic()
800dcec0-800dcee7: +0x360  # (gap) .. dRemoconMng_c::dConnect_c::dExtension_c::executeState_Other()
800dcee8-800dceeb: +0x370  # ...
800dceec-800dceef: +0x35c  # ...
800dcef0-800dcef3: +0x378  # ...
800dcf04-800dcf07: +0x35c  # ...
800dcf08-800dcf0b: +0x34c  # ...
800dcf0c-800dcf0f: +0x374  # ...
800dcf10-800dcf13: +0x364  # ...
800dcf14-800dcf17: +0x350  # ...
800dcf18-800dcf1b: +0x358  # ...
800dcf1c-800dcf1f: +0x350  # ...
800dcf20-800dcf23: +0x35c  # ...
800dcf24-800dcf77: +0x360  # ...
800dcf78-800dcf7f: +0x368  # ...
800dcf84-800dcf87: +0x364  # ...
800dcf88-800dcf8b: +0x368  # ...
800dcf8c-800dcf8f: +0x360  # ...
800dcf90-800dcf9f: +0x364  # ...
800dcfa4-800dcfa7: +0x360  # ...
800dcfa8-800dcfab: +0x364  # ...
800dcfac-800dcfaf: +0x35c  # ...
800dcfb0-800dcfb7: +0x360  # ...
800dcfb8-800dcfbb: +0x390  # ...
800dcfcc-800dd7a7: +0x380  # (prev) .. __sinit_\d_remocon_mng_cpp
800dd7a8-800dd87f: +0x43c  # ...
800dd880-800deb0f: +0x440  # (prev) .. dRes_c::info_c::cleanup()
800deb10-800deb73: +0x448  # ...
800deb74-800deb9f: +0x480  # ...
800deba0-800debc7: +0x484  # ...
800debc8-800debd3: +0x48c  # ...
800debe0-800dee03: +0x480  # (prev) .. Function with different signatures
800dee04-800dee0b: +0x484  # ...     | (see example callsite W:802b7f38 / C:802ba098):
800dee0c-800dee0f: +0x478  # ...     | W: hashname_f7e0afaa_983b7a58(void*, void*, const ARCDirEntry*, const char*)
800dee10-800dee4f: +0x494  # ...     | C: hashname_f7e0afaa_983b7a58(void*, void*, unsigned long, const ARCDirEntry*, const char*)
800dee50-800dee53: +0x4e4  # ...
800dee54-800dee7f: +0x4ec  # ...
800dee80-800dee83: +0x4f4  # ...
800dee84-800dee87: +0x4e8  # ...
800dee88-800dee97: +0x4f0  # ...
800dee98-800deea7: +0x4f8  # ...
800deeb0-800deedf: +0x4f0  # (prev) .. dRes_c::info_c::loadRes(dRes_c::callback_c*)
800deee0-800deee7: +0x4f4  # ...
800deee8-800deeeb: +0x4f8  # ...
800deeec-800deeef: +0x4f0  # ...
800deef0-800deef3: +0x4f8  # ...
800deef4-800deef7: +0x50c  # ...
800deef8-800deefb: +0x4f4  # ...
800deefc-800def2f: +0x508  # ...
800def30-800def47: +0x50c  # ...
800def48-800def53: +0x514  # ...
800def54-800def5f: +0x520  # ...
800def60-800def6b: +0x52c  # ...
800def6c-800def77: +0x538  # ...
800def78-800def83: +0x544  # ...
800def84-800def8f: +0x550  # ...
800def90-800def97: +0x55c  # ...
800def98-800def9b: +0x568  # ...
800def9c-800def9f: +0x558  # ...
800defa0-800defaf: +0x568  # ...
800defb0-800defc3: +0x56c  # ...
800defc4-800defeb: +0x574  # ...
800defec-800defef: +0x57c  # ...
800deff0-800deff3: +0x574  # ...
800deff4-800deff7: +0x578  # ...
800deff8-800deffb: +0x580  # ...
800deffc-800defff: +0x574  # ...
800df000-800df007: +0x580  # ...
800df008-800df00b: +0x574  # ...
800df00c-800df00f: +0x568  # ...
800df010-800df01b: +0x578  # ...
800df01c-800df04b: +0x580  # ...
800df04c-800df05b: +0x584  # ...
800df060-800df107: +0x580  # (prev) .. dRes_c::init(unsigned short, dRes_c::callback_c*)
800df108-800df11b: +0x584  # ...
800df120-800e47fb: +0x580  # (prev) .. dSys_c::beginFrame()
800e47fc-800e47ff: +0x618  # ...
800e4800-800e4803: +0x620  # ...
800e4804-800e482b: +0x624  # ...
800e482c-800e6ff3: +0x630  # (prev) .. TagProcessor_c::getMenuButton(MsgRes_c*, void*)
800e6ff4-800faf3b: +0x640  # (prev) .. dWmLib::IsCourseOtasukeClear(int, int)
800faf3c-800faf4f: +0x66c  # ...
800faf50-800faf5b: +0x674  # ...
800faf60-800faf6b: +0x670  # (prev) .. dWmLib::IsCourseClear(int, int)
800faf6c-800faf8b: +0x69c  # ...
800faf90-800faf9b: +0x6a4  # ...
800fafa0-8010010f: +0x6a0  # (prev) .. (gap)
# New symbol: lingcod_getIniState
# New symbol: lingcod_getIniKeyValue
# New symbol: lingcod_getIniKeyValueInt16
# New symbol: lingcod_getIniKeyValueFloat
# New symbol: lingcod_fireGameEventEx
# New symbol: lingcod_callNVSISnippet
# New symbol: lingcod_revalidateNVSI
# New symbol: lingcod_nsmb_getAutoPilotEnabled
# New symbol: NVGXCreateGroup
# New symbol: NVGXReleaseGroup
80100110-801019f7: +0x780  # (gap) .. dScRestartCrsin_c::startTitle(unsigned char, bool)
801019f8-80101a23: +0x790  # ...
80101a24-80101a57: +0x814  # ...
80101a58-80101a5b: +0x824  # ...
80101a5c-80101a63: +0x814  # ...
80101a64-80101a67: +0x808  # ...
80101a68-80101a6f: +0x81c  # ...
80101a70-80101a73: +0x824  # ...
80101a74-80101a77: +0x81c  # ...
80101a78-80101a7b: +0x824  # ...
80101a7c-80101a7f: +0x81c  # ...
80101a80-80101a83: +0x874  # ...
80101a84-80101a97: +0x81c  # ...
80101a98-80101abb: +0x860  # ...
80101abc-80101acf: +0x86c  # ...
80101ad0-8010249b: +0x870  # (prev) .. hashname_9d1a0985_d4fb5d84
801024a8-801024ab: +0x8ac  # ...
801024ac-801024b3: +0x888  # ...
801024b4-801025e3: +0x8a4  # ...
801025e8-801025ef: +0x8a4  # ...
801025f0-801026af: +0x8a8  # ...
801026b0-8010e57b: +0x8b0  # (prev) .. dWarningManager_c::executeState_WarningCheck()
8010e57c-8010e5cf: +0x8b8  # ...
8010e5d0-8010e61f: +0x8e8  # ...
8010e620-8010e64f: +0x8f0  # (prev) .. dWarningManager_c::executeState_WarningCaution()
8010e654-8010e693: +0x8ec  # ...
8010e694-8010e697: +0x8f0  # ...
8010e6a0-8010e6ab: +0x910  # ...
8010e6ac-8010e6c7: +0x914  # ...
8010e6cc-8010f703: +0x910  # (prev) .. dLogoScreen_c::create()
8010f708-8010f70b: +0x910  # ...
8010f724-8010f727: +0x8f0  # ...
8010f728-8010f73b: +0x8f4  # ...
8010f740-8010f7af: +0x8f0  # (prev) .. dLogoScreen_c::createLayout()
8010f7e0-8010f85b: +0x8c0  # (prev) .. dLogoScreen_c::execute()
8010f864-8010f87b: +0x8b8  # ...
8010f884-8010f887: +0x8b0  # ...
8010f888-8010f88b: +0x8b8  # ...
8010f88c-8010f893: +0x8ac  # ...
8010f894-8010f89f: +0x8b0  # ...
8010f8a4-8010f8af: +0x8ac  # ...
8010f8b0-8010f8ff: +0x8b0  # (prev) .. (gap)
# New symbol: dNvScreen_c_classInit()
# New symbol: dNvScreen_c::dNvScreen_c()
# New symbol: dNvScreen_c::~dNvScreen_c()
# New symbol: dNvScreen_c::create()
# New symbol: dNvScreen_c::createLayout()
# New symbol: dNvScreen_c::preExecute()
# New symbol: dNvScreen_c::execute()
# New symbol: dNvScreen_c::draw()
# New symbol: dNvScreen_c::doDelete()
# New symbol: dAntiAddictionScreen_c_classInit()
# New symbol: dAntiAddictionScreen_c::dAntiAddictionScreen_c()
# New symbol: dAntiAddictionScreen_c::~dAntiAddictionScreen_c()
# New symbol: dAntiAddictionScreen_c::create()
# New symbol: dAntiAddictionScreen_c::createLayout()
# New symbol: dAntiAddictionScreen_c::preExecute()
# New symbol: dAntiAddictionScreen_c::execute()
# New symbol: dAntiAddictionScreen_c::draw()
# New symbol: dAntiAddictionScreen_c::doDelete()
8010f900-80159430: +0xe50  # (gap) .. dGameDisplay_c::initializeState_ProcGoalSettleUp()
80159431-80159437: +0xe58  # ...
80159438-80159477: +0xe5c  # ...
80159480-8015c1d7: +0xed0  # (prev) .. hashname_efec0ced_90a7bbb2_LogoScreen
8015c1e4-8015c1ef: +0xee0  # (prev) .. (gap)
# New symbol: hashname_5013987a_4a9a0da5
# New symbol: hashname_77b51723_c578197c_AntiAddictionScreen
# New symbol: hashname_d4f96047_4f26a498
# New symbol: hashname_b18f3e3e_5c00b4e1_NvScreen
8015c1f0-8015cb70: +0xfd0  # (gap) .. dScBoot_c::initializeState_ResetWait()
8015cb81-8015cb83: +0xfc0  # ...
8015cb88-8015cb8b: +0xfbc  # ...
8015cbb4-8015cbbb: +0xf94  # ...
8015cbc0-8015cf9b: +0xf90  # (prev) .. dScBoot_c::initializeState_ResetFadeIn()
8015cfa4-8015cfbf: +0xf88  # ...
8015cfdc-8015cfdf: +0xf6c  # ...
8015cfe4-8015cfef: +0xf68  # ...
8015cff0-8015d27f: +0xf70  # (prev) .. (gap)
# New symbol: dScBoot_c::initializeState_AntiAddictionScreenFadeIn()
# New symbol: dScBoot_c::executeState_AntiAddictionScreenFadeIn()
# New symbol: dScBoot_c::finalizeState_AntiAddictionScreenFadeIn()
# MOVED function: dWarningManager_c::subWarningForbid() (appears later in W, see below)
# New symbol: dScBoot_c::initializeState_AntiAddictionScreenKeyWait()
# New symbol: dScBoot_c::executeState_AntiAddictionScreenKeyWait()
# New symbol: dScBoot_c::finalizeState_AntiAddictionScreenKeyWait()
# New symbol: dScBoot_c::initializeState_AntiAddictionScreenDispEndWait()
# New symbol: dScBoot_c::executeState_AntiAddictionScreenDispEndWait()
# New symbol: dScBoot_c::finalizeState_AntiAddictionScreenDispEndWait()
# New symbol: dScBoot_c::initializeState_AntiAddictionScreenFadeOut()
# New symbol: dScBoot_c::executeState_AntiAddictionScreenFadeOut()
# New symbol: dScBoot_c::finalizeState_AntiAddictionScreenFadeOut()
# New symbol: dScBoot_c::initializeState_NvScreenFadeIn()
# New symbol: dScBoot_c::executeState_NvScreenFadeIn()
# New symbol: dScBoot_c::finalizeState_NvScreenFadeIn()
# New symbol: dScBoot_c::initializeState_NvScreenKeyWait()
# New symbol: dScBoot_c::executeState_NvScreenKeyWait()
# New symbol: dScBoot_c::finalizeState_NvScreenKeyWait()
# New symbol: dScBoot_c::initializeState_NvScreenDispEndWait()
# New symbol: dScBoot_c::executeState_NvScreenDispEndWait()
# New symbol: dScBoot_c::finalizeState_NvScreenDispEndWait()
# New symbol: dScBoot_c::initializeState_NvScreenFadeOut()
# New symbol: dScBoot_c::executeState_NvScreenFadeOut()
# New symbol: dScBoot_c::finalizeState_NvScreenFadeOut()
# New symbol: dScBoot_c::initializeState_LogoScreenFadeIn()
# New symbol: dScBoot_c::executeState_LogoScreenFadeIn()
# New symbol: dScBoot_c::finalizeState_LogoScreenFadeIn()
8015d280-8015d280: +0x16e0  # (gap) .. dScBoot_c::initializeState_LogoScreenKeyWait()
8015d2d0-8015d5bf: +0x16b0  # (prev) .. dWarningManager_c::subWarningForbid()
8015d5c0-8015d5df: +0xd20   # ...
8015d5e0-8015e323: +0x1690  # (prev) .. __sinit_\d_s_boot_cpp
8015e324-8015e327: +0x1694  # ...
8015e328-8015e32b: +0x168c  # ...
8015e32c-8015e32f: +0x1698  # ...
8015e330-8015e333: +0x1774  # ...
8015e334-8015e337: +0x1688  # ...
8015e338-8015e33b: +0x1770  # ...
8015e33c-8015e33f: +0x1764  # ...
8015e340-8015e5f7: +0x1780  # ...
8015e5f8-8015f57f: +0x1e1c  # ...
8015f580-8023f220: +0x1e20  # (prev) .. nw4r::g3d::ResTex::Init()
8023f221-8023f227: +0x1e38  # ...
8023f22c-8023f22f: +0x1eb8  # ...
8023f230-8023fbf7: +0x1ec0  # (prev) .. nw4r::g3d::ResAnmTexPat::GetAnmResult(nw4r::g3d::TexPatAnmResult*, unsigned long, float) const
8023fbf8-8023fc1f: +0x1ec4  # ...
8023fc20-8023fc5f: +0x1ec8  # ...
8023fc60-8024bfdb: +0x1ed0  # (prev) .. nw4r::g3d::G3DState::LoadResTlutObj(nw4r::g3d::ResTlutObj)
8024bfdc-8024bfdf: +0x1ed4  # ...
8024bfe0-8024bfe3: +0x1ecc  # ...
8024bfe8-8024c01f: +0x1ed8  # ...
8024c020-80257c3f: +0x1ee0  # (prev) .. nw4r::g3d::ScnObj::DisableScnObjCallbackTiming(nw4r::g3d::ScnObj::Timing)
80257c44-80257c53: +0x1ee0  # ...
80257c58-80260b0f: +0x1ee0  # (prev) .. (gap)
# New symbol: NVGXNameTex
# New symbol: NVGXDestroyTex
80260b10-802ae0ab: +0x1f00  # (gap) .. nw4r::lyt::Picture::Append(const nw4r::lyt::TexMap&)
802ae0ac-802ae0af: +0x1f04  # ...
802ae0b0-802ae0b3: +0x1efc  # ...
802ae0b4-802ae0f7: +0x1f00  # ...
802ae0fc-802ae0ff: +0x1f00  # ...
802ae100-802ae103: +0x1f04  # ...
802ae104-802ae107: +0x1f08  # ...
802ae108-802ae10b: +0x1ef8  # ...
802ae10c-802ae10f: +0x1f08  # ...
802ae110-802ae113: +0x1ef8  # ...
802ae114-802ae117: +0x1f08  # ...
802ae118-802ae11b: +0x1ef8  # ...
802ae11c-802ae11f: +0x1f08  # ...
802ae120-802ae123: +0x1ef8  # ...
802ae124-802ae127: +0x1f08  # ...
802ae128-802ae12b: +0x1ef8  # ...
802ae12c-802ae12f: +0x1f08  # ...
802ae130-802ae133: +0x1ef8  # ...
802ae134-802ae137: +0x1f08  # ...
802ae138-802ae13b: +0x1ef8  # ...
802ae13c-802ae13f: +0x1efc  # ...
802ae140-802ae143: +0x1f00  # ...
802ae144-802ae147: +0x1f04  # ...
802ae148-802ae247: +0x1f08  # ...
802ae250-802b28c3: +0x1f00  # (prev) .. nw4r::lyt::Material::Material(const nw4r::lyt::res::Material*, const nw4r::lyt::ResBlockSet&)
802b28c4-802b28d3: +0x1f04  # ...
802b28f0-802b2d4f: +0x1f10  # (prev) .. (gap)
# New symbol: nw4r::lyt::TexMap::TexMap(TPLPalette*, unsigned long)
802b2d50-802b32cb: +0x1f50  # (gap) .. nw4r::lyt::Material::ReserveGXMem(unsigned char, unsigned char, unsigned char, unsigned char, bool, unsigned char, unsigned char, bool, bool, bool, bool)
802b32d4-802b32d7: +0x1f50  # ...
802b32e4-802b333b: +0x1f50  # ...
802b3340-802b3343: +0x1f54  # ...
802b334c-802b3493: +0x1f4c  # ...
802b3494-802b3497: +0x1f50  # ...
802b349c-802b349f: +0x1f4c  # ...
802b34e0-802b34e3: +0x1f40  # ...
802b34e8-802b34eb: +0x1f4c  # ...
802b34ec-802b34ef: +0x1f44  # ...
802b34f0-802b3667: +0x1f48  # ...
802b366c-802b36bb: +0x1f44  # ...
802b36c0-802b370f: +0x1f40  # ...
802b3714-802b3717: +0x1f48  # ...
802b371c-802b371f: +0x1f4c  # ...
802b372c-802b372f: +0x1f38  # ...
802b3730-802b3763: +0x1f3c  # ...
802b3794-802b37cf: +0x1f38  # ...
802b37fc-802b37ff: +0x1f38  # ...
802b3804-802b380b: +0x1f34  # ...
802b380c-802b380f: +0x1f38  # ...
802b3810-802b3813: +0x1f30  # ...
802b3814-802b383b: +0x1f34  # ...
802b3840-802b3857: +0x1f30  # (prev) .. nw4r::lyt::Material::GetTexSRTAry()
802b3860-802b386f: +0x1f2c  # ...
802b3870-802b387b: +0x1f30  # (prev) .. nw4r::lyt::Material::GetTexCoordGenAry()
802b3880-802b3883: +0x1f30  # ...
802b3888-802b3893: +0x1f2c  # ...
802b38a0-802b38ab: +0x1f20  # (prev) .. nw4r::lyt::Material::GetChanCtrlAry()
802b38b4-802b38bb: +0x1f18  # ...
802b38bc-802b38bf: +0x1f20  # ...
802b38c0-802b38c3: +0x1f18  # ...
802b38c4-802b38cf: +0x1f1c  # ...
802b38d0-802b38db: +0x1f20  # (prev) .. nw4r::lyt::Material::GetMatColAry()
802b38e0-802b38e3: +0x1f20  # ...
802b38f4-802b38f7: +0x1f20  # ...
802b38f8-802b38fb: +0x1f18  # ...
802b38fc-802b3903: +0x1f1c  # ...
802b3910-802b391b: +0x1f10  # (prev) .. nw4r::lyt::Material::GetTevSwapAry()
802b3920-802b3923: +0x1f10  # ...
802b3924-802b3927: +0x1f08  # ...
802b3928-802b392f: +0x1f0c  # ...
802b3938-802b393b: +0x1f0c  # ...
802b393c-802b393f: +0x1f10  # ...
802b3940-802b3943: +0x1f08  # ...
802b3944-802b394f: +0x1f0c  # ...
802b3950-802b3957: +0x1f10  # (prev) .. nw4r::lyt::Material::GetAlphaComparePtr()
802b3958-802b395b: +0x1f24  # ...
802b3960-802b3963: +0x1f08  # ...
802b3964-802b3967: +0x1f20  # ...
802b3968-802b396b: +0x1f04  # ...
802b396c-802b396f: +0x1f08  # ...
802b3970-802b3973: +0x1f10  # ...
802b3980-802b3983: +0x1f10  # ...
802b3984-802b3987: +0x1f08  # ...
802b3988-802b3993: +0x1f0c  # ...
802b39a0-802b39ab: +0x1f00  # (prev) .. nw4r::lyt::Material::GetBlendModePtr()
802b39b0-802b39b3: +0x1f08  # ...
802b39b4-802b39b7: +0x1efc  # ...
802b39bc-802b39bf: +0x1ef0  # ...
802b39c0-802b39c3: +0x1ef4  # ...
802b39c4-802b39c7: +0x1ef8  # ...
802b39c8-802b39cb: +0x1f0c  # ...
802b39cc-802b39d3: +0x1ef8  # ...
802b39dc-802b39ef: +0x1efc  # ...
802b39f0-802b39fb: +0x1f00  # (prev) .. nw4r::lyt::Material::GetIndirectStageAry()
802b3a00-802b3a03: +0x1f0c  # ...
802b3a04-802b3a07: +0x1f00  # ...
802b3a0c-802b3a13: +0x1ef0  # ...
802b3a14-802b3a17: +0x1ef4  # ...
802b3a18-802b3a1b: +0x1ef8  # ...
802b3a28-802b3a2b: +0x1efc  # ...
802b3a2c-802b3a2f: +0x1f00  # ...
802b3a30-802b3a33: +0x1ef8  # ...
802b3a34-802b3a43: +0x1efc  # ...
802b3a50-802b3a5b: +0x1ef0  # (prev) .. nw4r::lyt::Material::GetIndTexSRTAry()
802b3a60-802b3a63: +0x1ef0  # ...
802b3a64-802b3a67: +0x1ef8  # ...
802b3a68-802b3a6b: +0x1eec  # ...
802b3a6c-802b3a6f: +0x1ee0  # ...
802b3a78-802b3a7b: +0x1ee0  # ...
802b3a7c-802b3a7f: +0x1ee4  # ...
802b3a80-802b3a87: +0x1eec  # ...
802b3a9c-802b3a9f: +0x1ef0  # ...
802b3aa0-802b3aa3: +0x1ee8  # ...
802b3aa4-802b3aaf: +0x1eec  # ...
802b3ab0-802b3ac3: +0x1ef0  # (prev) .. nw4r::lyt::Material::GetTevStageAry()
802b3ac8-802b3acb: +0x1ef0  # ...
802b3acc-802b3acf: +0x1efc  # ...
802b3ad0-802b3ad3: +0x1ee4  # ...
802b3ad4-802b3ad7: +0x1ee8  # ...
802b3adc-802b3adf: +0x1ee4  # ...
802b3ae4-802b3ae7: +0x1eec  # ...
802b3aec-802b3aef: +0x1ef0  # ...
802b3af8-802b3afb: +0x1eec  # ...
802b3b04-802b3b13: +0x1eec  # ...
802b3b20-802b3b7b: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetTextureNum(unsigned char)
802b3b7c-802b3b7f: +0x1ee8  # ...
802b3b84-802b3b87: +0x1edc  # ...
802b3b88-802b3c0b: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetTexCoordGenNum(unsigned char)
802b3c10-802b3c13: +0x1ee0  # ...
802b3c14-802b3c17: +0x1ed8  # ...
802b3c18-802b3c1b: +0x1edc  # ...
802b3c1c-802b3c1f: +0x1ee0  # ...
802b3c24-802b3c27: +0x1ee4  # ...
802b3c2c-802b3c2f: +0x1ee4  # ...
802b3c34-802b3c37: +0x1ee0  # ...
802b3c3c-802b3c47: +0x1edc  # ...
802b3c48-802b3c8f: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetTevStageNum(unsigned char)
802b3c90-802b3caf: +0x1ee8  # ...
802b3cb4-802b3cb7: +0x1ee8  # ...
802b3cb8-802b3cbb: +0x1ef8  # ...
802b3cbc-802b3cbf: +0x1ee4  # ...
802b3cc0-802b3cc3: +0x1ee8  # ...
802b3cc4-802b3cc7: +0x1ed4  # ...
802b3cd0-802b3cd3: +0x1ed4  # ...
802b3cd8-802b3cdb: +0x1ee0  # ...
802b3ce0-802b3ce3: +0x1ef8  # ...
802b3cf0-802b3cf3: +0x1ed8  # ...
802b3cf4-802b3cf7: +0x1edc  # ...
802b3cf8-802b3cfb: +0x1ee8  # ...
802b3d08-802b3d0b: +0x1ee0  # ...
802b3d10-802b3d13: +0x1ee0  # ...
802b3d14-802b3d33: +0x1ee4  # ...
802b3d38-802b3d9b: +0x1ee0  # ...
802b3d9c-802b3da7: +0x1ee8  # ...
802b3db0-802b3dbf: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetIndStageNum(unsigned char)
802b3dc0-802b3dd3: +0x1ee4  # ...
802b3dd8-802b3ddb: +0x1ee4  # ...
802b3ddc-802b3ddf: +0x1ef0  # ...
802b3de0-802b3de3: +0x1ee0  # ...
802b3de4-802b3de7: +0x1ee4  # ...
802b3de8-802b3deb: +0x1ed0  # ...
802b3df4-802b3df7: +0x1ed0  # ...
802b3dfc-802b3dff: +0x1ed4  # ...
802b3e04-802b3e07: +0x1ee4  # ...
802b3e0c-802b3e0f: +0x1ee4  # ...
802b3e1c-802b3e1f: +0x1edc  # ...
802b3e24-802b3e27: +0x1edc  # ...
802b3e28-802b3e6b: +0x1ee0  # ...
802b3e6c-802b3e7b: +0x1ee4  # ...
802b3e80-802b3ec3: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetColorElement(unsigned long, short)
802b3ec8-802b3ecb: +0x1ee0  # ...
802b3ecc-802b3ecf: +0x1ee8  # ...
802b3ed0-802b3ed3: +0x1ee0  # ...
802b3ed4-802b3ed7: +0x1ed0  # ...
802b3edc-802b3edf: +0x1ee0  # ...
802b3ee4-802b3ee7: +0x1ee0  # ...
802b3eec-802b403f: +0x1edc  # ...
802b4040-802b408f: +0x1ee0  # (prev) .. nw4r::lyt::Material::SetupGX(bool, unsigned char)
802b4094-802b409b: +0x1ee0  # ...
802b409c-802b409f: +0x1ed4  # ...
802b40a0-802b40a3: +0x1ee0  # ...
802b40a4-802b40a7: +0x1ee4  # ...
802b40b0-802b40b3: +0x1ee0  # ...
802b40b8-802b40bb: +0x1ee4  # ...
802b40c0-802b40c3: +0x1ed8  # ...
802b40c4-802b418b: +0x1edc  # ...
802b4190-802b4193: +0x1edc  # ...
802b4194-802b4197: +0x1ee4  # ...
802b4198-802b419b: +0x1ed0  # ...
802b419c-802b419f: +0x1ed4  # ...
802b41b0-802b428f: +0x1ed8  # ...
802b4290-802b4293: +0x1ee8  # ...
802b4294-802b4297: +0x1ed8  # ...
802b429c-802b429f: +0x1ed8  # ...
802b42a0-802b42a3: +0x1ec8  # ...
802b42a4-802b42ab: +0x1ed8  # ...
802b42b0-802b432f: +0x1ed4  # ...
802b4338-802b44eb: +0x1ed0  # ...
802b44f0-802b44f3: +0x1ed0  # ...
802b44f4-802b44f7: +0x1ec8  # ...
802b44f8-802b44ff: +0x1ecc  # ...
802b4508-802b450b: +0x1ec4  # ...
802b450c-802b450f: +0x1ed0  # ...
802b4510-802b4513: +0x1ec8  # ...
802b4514-802b45eb: +0x1ecc  # ...
802b45f0-802b45f3: +0x1ecc  # ...
802b45f4-802b45f7: +0x1ed8  # ...
802b45f8-802b45fb: +0x1ec0  # ...
802b45fc-802b45ff: +0x1ec4  # ...
802b4604-802b4607: +0x1ec0  # ...
802b460c-802b460f: +0x1ec8  # ...
802b4614-802b4617: +0x1ecc  # ...
802b461c-802b461f: +0x1ed4  # ...
802b4624-802b4627: +0x1ec4  # ...
802b4630-802b4b7b: +0x1ec8  # ...
802b4b80-802b4b83: +0x1ed8  # ...
802b4b84-802b4b87: +0x1ec8  # ...
802b4b8c-802b4b93: +0x1eb8  # ...
802b4b94-802b4b97: +0x1ebc  # ...
802b4b98-802b4b9b: +0x1ec4  # ...
802b4b9c-802b4b9f: +0x1eb8  # ...
802b4ba0-802b4ba3: +0x1ec4  # ...
802b4ba8-802b4bab: +0x1ec4  # ...
802b4bbc-802b4bbf: +0x1ec4  # ...
802b4bc0-802b4bc3: +0x1ec8  # ...
802b4bc4-802b4bc7: +0x1ec0  # ...
802b4bc8-802b4c8b: +0x1ec4  # ...
802b4c90-802b4c93: +0x1ed0  # ...
802b4c94-802b4c97: +0x1ec4  # ...
802b4c9c-802b4ca3: +0x1eb4  # ...
802b4ca4-802b4ca7: +0x1eb8  # ...
802b4ca8-802b4cab: +0x1ebc  # ...
802b4cb8-802b4cbb: +0x1ec0  # ...
802b4cc4-802b4d17: +0x1ec0  # ...
802b4d18-802b4d1b: +0x1ed0  # ...
802b4d20-802b4d23: +0x1eb8  # ...
802b4d24-802b4d27: +0x1ec8  # ...
802b4d28-802b4d2b: +0x1eb4  # ...
802b4d30-802b4d33: +0x1ec8  # ...
802b4d3c-802b4d3f: +0x1ec0  # ...
802b4d44-802b4d9b: +0x1ebc  # ...
802b4da0-802b4da3: +0x1ec4  # ...
802b4da4-802b4da7: +0x1eb8  # ...
802b4dac-802b4daf: +0x1eac  # ...
802b4db0-802b4db3: +0x1eb0  # ...
802b4db4-802b4db7: +0x1eb4  # ...
802b4db8-802b4dbb: +0x1ecc  # ...
802b4dbc-802b4dbf: +0x1ebc  # ...
802b4dd0-802b4dd3: +0x1ebc  # ...
802b4dd4-802b4dd7: +0x1eb4  # ...
802b4dd8-802b4e47: +0x1eb8  # ...
802b4e50-802b5043: +0x1eb0  # (prev) .. nw4r::lyt::detail::GetTextureSize(nw4r::lyt::Material*, unsigned char)
802b5048-802b504b: +0x1eb0  # ...
802b504c-802b504f: +0x1ea8  # ...
802b5050-802b519f: +0x1eb0  # (prev) .. (gap)
# New symbol: nw4r::lyt::TexMap::Set(TPLPalette*, unsigned long)
# New symbol: nw4r::lyt::TexMap::Set(const TPLDescriptor*)
# New symbol: nw4r::lyt::TexMap::ReplaceImage(const nw4r::lyt::TexMap&, const char*)
802b51a0-802b51c7: +0x2110  # (gap) .. Function with different signatures:
802b51c8-802b51e7: +0x2118  # ...    | W: nw4r::lyt::TexMap::ReplaceImage(TPLPalette*, unsigned long)
802b5254-802b5263: +0x20bc  # ...    | C: nw4r::lyt::TexMap::ReplaceImage(TPLPalette*, unsigned long, const char*)
802b5264-802b526f: +0x20c0  # (prev) .. (gap)
# New symbol: nw4r::lyt::TexMap::ReplaceImage(const TPLDescriptor*, const char*)
802b5270-802b5f3f: +0x2150  # (gap) .. nw4r::lyt::AnimTransformBasic::Animate(unsigned long, nw4r::lyt::Material*)
802b5f44-802b5f47: +0x2150  # ...
802b5f48-802b5f4b: +0x2154  # ...
802b5f4c-802b5f4f: +0x214c  # ...
802b5f50-802b602b: +0x2154  # ...
802b6030-802b7ec3: +0x2150  # (prev) .. Function with different signatures (see also: W:800dedf0 / hashname_f7e0afaa_983b7a58):
802b7ec4-802b7f0f: +0x2154  # ...     | W: EGG::searchInsideWithPath(EGG::Archive*, ARCHandle*, void (*)(void*, void*, const ARCDirEntry*, const char*), void*, char*, unsigned long)
802b7f10-802b7f17: +0x2158  # ...     | C: EGG::searchInsideWithPath(EGG::Archive*, ARCHandle*, void (*)(void*, void*, unsigned long, const ARCDirEntry*, const char*), void*, char*, unsigned long)
802b7f1c-802b7f33: +0x215c  # ...
802b7f34-802baf63: +0x2160  # (prev) .. EGG::ConfigurationData::run()
802baf64-802bb16b: +0x2164  # ...
802bb170-802bbbb7: +0x2160  # (prev) .. Function with different signatures (see example callsite W:800e4810 / C:800e4e34):
802bbbb8-802bbbdb: +0x2164  # ...     | W: EGG::AsyncDisplay::beginFrame()
802bbbdc-802bbd3f: +0x216c  # ...     | C: EGG::AsyncDisplay::beginFrame(bool)
802bbd40-802c0f83: +0x2170  # (prev) .. EGG::CpuTexture::CpuTexture()
802c0f84-802c0faf: +0x2174  # ...
802c0fb0-802c0fb3: +0x217c  # ...
802c0fc0-802c0fcb: +0x2170  # (prev) .. Function with different signatures:
802c0fcc-802c0fcf: +0x217c  # ...     | W: EGG::CpuTexture::CpuTexture(unsigned short, unsigned short, _GXTexFmt)
802c0fd0-802c0fd3: +0x2170  # ...     | C: EGG::CpuTexture::CpuTexture(unsigned short, unsigned short, _GXTexFmt, const char*)
802c0fd4-802c0fd7: +0x2170  # ...
802c0fd8-802c0ffb: +0x2174  # ...
802c0ffc-802c0fff: +0x217c  # ...
802c1000-802c1043: +0x2180  # (prev) .. EGG::CpuTexture::~CpuTexture()
802c1044-802c106f: +0x2198  # ...
802c1070-802c1080: +0x21a0  # (prev) .. EGG::CpuTexture::setBuffer(void*)
802c1081-802c1083: +0x21a8  # ...
802c1084-802c1087: +0x21b4  # ...
802c1088-802c108b: +0x21b8  # ...
802c108c-802c1097: +0x21d0  # ...
802c1098-802c3b6f: +0x21e0  # (prev) .. (gap)
# New symbol: lingcod_getDOFScale
802c3b70-802c3ec3: +0x21f0  # (gap) .. EGG::DrawPathDOF::internalResetForDraw()
802c3ec4-802c3ec7: +0x21f4  # ...
802c3ec8-802c412b: +0x2200  # ...
802c412c-802c412f: +0x2204  # ...
802c4130-802c41db: +0x2208  # ...
802c41dc-802c41eb: +0x2214  # ...
802c41f0-802c442f: +0x2210  # (prev) .. hashname_030e5eac_dbecf086
802c4430-802c4433: +0x221c  # ...
802c4434-802c4437: +0x2214  # ...
802c4458-802c445f: +0x21e8  # ...
802c4460-802cbed7: +0x21f0  # (prev) .. EGG::LightTexture::initialize(unsigned short, EGG::Heap*)
802cbed8-802cc05b: +0x21f4  # ...
802cc05c-802cc0cf: +0x21fc  # ...
802cc0d0-802cc0db: +0x2200  # (prev) .. EGG::LightTexture::LightTexture(const char*, const EGG::LightTextureManager*)
802cc0dc-802cc21f: +0x2204  # ...
802cc220-802cc2cf: +0x2208  # ...
802cc2d0-802d016b: +0x2210  # (prev) .. EGG::PostEffectBase::PostEffectBase()
802d016c-802d01d7: +0x2214  # ...
802d01d8-802d023f: +0x2218  # ...
802d0240-802dd777: +0x2220  # (prev) .. (gap)
# New symbol: __cvt_sll_dbl
802dd778-802de74b: +0x22d0  # (gap) .. (gap)
# New symbol: __equals_dec
# New symbol: __less_dec
# New symbol: __minus_dec
802de74c-802dea53: +0x2990  # (gap) .. (gap)
# New symbol: __dec2num
802dea54-802e2233: +0x30dc  # (gap) .. (gap)
# New symbol: __strtold
# New symbol: atof
802e2234-802e8e9f: +0x445c  # (gap) .. (gap)
# New symbol: nan
802e8ea0-802f5047: +0x4460  # (gap) .. ==== BEGIN main.rodata ====
# New symbol: hashname_cae861c2_0b67e58c
802f5048-802f609b: +0x44f0
# Removed symbol: DAT_K_802f60a0 (embedded BRFNT file)
8030064c-803085e7: -0x60c0
# New symbol: "@589"
803085e8-80308f8f: -0x60b0  # ==== BEGIN main.data ====
80308fa0-80323cfb: -0x60c0
# New symbol: "@71583"
# New symbol: "@71584"
# New symbol: "@71585"
80323cfc-80323e23: -0x609c
# New symbol: "@71595"
80323e24-8032414f: -0x6060
# New symbol: "@47576"
80324150-80326f5f: -0x6050
# New symbol: "@46216"
80326f60-8032ac9f: -0x6040
# New symbol: "@46702"
# New symbol: "@46703"
8032aca0-8032acf3: -0x601c
8032acf8-8032be3b: -0x6020
# New pointers to new strings "@46702" and "@46703" (above) in the profile names table
8032be3c-8032c047: -0x6018
# New symbol: "@71559"
# New symbol: "@71560"
8032c048-8032c827: -0x5fe0
# New symbol: hashname_545aa92b_545aa92b
8032c828-8032de67: -0x5fc0
# Removed symbol: DAT_P1_80322fe0
# Removed symbol: DAT_P1_803230a0
8032de8c-8032dea3: -0x5fe4
8032dea4-8032df07: -0x5fe0
# New symbol: "@66378"
# New symbol: "@66379"
# New symbol: "dNvScreen_c virtual table"
# New symbol: "@66378"
# New symbol: "@66379"
# New symbol: "dAntiAddictionScreen_c virtual table"
8032df08-80333178: -0x5ee0  # (gap) .. hashname_ea28d5ba_ea28d5ba_bootOtherPhaseFuncs
80333179-8033317f: -0x5ed8  # ...
80333180-80333247: -0x5ed0  # (prev) .. (gap)
# New symbol: "@77990"
# New symbol: "@77991"
80333248-80333433: -0x5ea8
# New symbols: "@78310" through "@78336"
80333434-80333727: -0x5d64
# New symbol: "@78403"
# New symbol: "@78405"
# New symbol: "@78407"
# New symbol: "@78408"
# New symbol: "@78410"
# New symbol: "@78411"
80333728-8033379f: -0x5ce8
# New symbols: "@78418" through "@78426"
803337a0-803337e3: -0x5b6c
803337e4-8033380b: -0x5b68
8033380c-8033382f: -0x5b64
80333830-8035b49f: -0x5b60
# New symbol: "@23713"
8035b4a0-8035bd5f: -0x5b50
# New symbol: __dec2num(const decimal*)::pow_10
8035bd60-8035c70f: -0x5b10  # ==== BEGIN main.bss ====
8035c780-803624c3: -0x5b80  # (start) .. EffectManager_c::m_loader_breff
803624c4-803624d7: -0x5b7c  # ...      | Array of 14 dDvd::loader_c's, which (each) changed size from
803624d8-803624eb: -0x5b78  # ...      | 0x14 to 0x18 due to the addition of a new field at the end
803624ec-803624ff: -0x5b74  # ...
80362500-80362513: -0x5b70  # ...
80362514-80362527: -0x5b6c  # ...
80362528-8036253b: -0x5b68  # ...
8036253c-8036254f: -0x5b64  # ...
80362550-80362563: -0x5b60  # ...
80362564-80362577: -0x5b5c  # ...
80362578-8036258b: -0x5b58  # ...
8036258c-8036259f: -0x5b54  # ...
803625a0-803625b3: -0x5b50  # ...
803625b4-803625c7: -0x5b4c  # ...
803625c8-803625eb: -0x5b48  # (prev) .. EffectManager_c::m_loader_breft
803625ec-803625ff: -0x5b44  # ...     | Same as above (14 dDvd::loader_c's)
80362600-80362613: -0x5b40  # ...
80362614-80362627: -0x5b3c  # ...
80362628-8036263b: -0x5b38  # ...
8036263c-8036264f: -0x5b34  # ...
80362650-80362663: -0x5b30  # ...
80362664-80362677: -0x5b2c  # ...
80362678-8036268b: -0x5b28  # ...
8036268c-8036269f: -0x5b24  # ...
803626a0-803626b3: -0x5b20  # ...
803626b4-803626c7: -0x5b1c  # ...
803626c8-803626db: -0x5b18  # ...
803626dc-803626ef: -0x5b14  # ...
803626f0-803639cb: -0x5b10  # (prev) .. l_dFontMng_obj
803639cc-803639df: -0x5b0c  # ...     | Same as above (4 dDvd::loader_c's)
803639e0-803639f3: -0x5b08  # ...
803639f4-80363a07: -0x5b04  # ...
80363a08-80364d9b: -0x5b00  # (prev) .. @51694
80364d9c-80364daf: -0x5afc  # (prev) .. l_dMessage_obj (a dDvd::loader_c)
80364db0-80364db7: -0x5af8  # ...
80364dc0-8037ca5f: -0x5b00  # (prev) .. (gap)
# New symbol: "@69310"
# New symbol: dRemoconMng_c::dConnect_c::dExtension_c::StateID_Classic
8037ca60-803825b7: -0x5ac0  # (gap) .. (gap)
# New symbol: "@75080"
# New symbol: dScBoot_c::StateID_AntiAddictionScreenFadeIn
# New symbol: "@75084"
# New symbol: dScBoot_c::StateID_AntiAddictionScreenKeyWait
# New symbol: "@75088"
# New symbol: dScBoot_c::StateID_AntiAddictionScreenDispEndWait
# New symbol: "@75092"
# New symbol: dScBoot_c::StateID_AntiAddictionScreenFadeOut
# New symbol: "@75096"
# New symbol: dScBoot_c::StateID_NvScreenFadeIn
# New symbol: "@75100"
# New symbol: dScBoot_c::StateID_NvScreenKeyWait
# New symbol: "@75104"
# New symbol: dScBoot_c::StateID_NvScreenDispEndWait
# New symbol: "@75108"
# New symbol: dScBoot_c::StateID_NvScreenFadeOut
# New symbol: "@75112"
# New symbol: dScBoot_c::StateID_LogoScreenFadeIn
803825b8-80433cd7: -0x5880  # (gap) .. ==== BEGIN main.sdata ==== .. (gap)
# New symbol: "@46215"
80433cd8-804340d7: -0x5878
# New symbol: "@71558"
804340d8-80434327: -0x5870
# New symbol: g_profile_NV_SCREEN
# New symbol: g_profile_ANTI_ADDICTION_SCREEN
# Removed symbol: DAT_P1_80429548
80434330-804344b3: -0x5868
# New symbol: "@78402"
804344b4-80434c5b: -0x5860
# New symbol: __float_huge
# New symbol: __double_huge
80434c5c-80434c5f: -0x5854
# ==== BEGIN main.sbss ====
80434c60-8043513f: -0x5840
# New symbol: hashname_139d42ca_b1d64f2a
# New symbol: hashname_e0b95ea2_c9577702
80435140-8043525f: -0x5830
# New symbol: hashname_cb595fb7_0b67e58c
80435260-804353e3: -0x5828
# New symbol: hashname_8f9ba20b_f9e7a012
# New symbol: hashname_ea91af07_b107fe1e
# New symbol: hashname_c93e5f8c_02119e95
# New symbol: hashname_c670ab80_64699c99
# New symbol: hashname_ac594421_bf2c5d38
# New symbol: hashname_89c3abad_407a5bb4
804353e8-8043765b: -0x5820  # ==== BEGIN main.sdata2 ====
# New symbol: "@67872"
8043765c-80437667: -0x581c
80437668-80437d77: -0x5818
# New symbol: "@75899"
# New symbol: "@75901"
80437d78-80438c7f: -0x5808
# New symbol: "@79318"
80438c80-80438c97: -0x5800
# Removed symbol: DAT_P1_8042ded0
# New symbol: "@78401"
# New symbol: "@78404"
# New symbol: "@78406"
# New symbol: "@78409"
80438ca0-8043a18f: -0x57f8
# New symbol: "@7602"
8043a190-8043a2cf: -0x57f0
8043a2e0-8043a3b7: -0x5800
# Moved symbol: "@23707"
8043a3b8-8043a3df: -0x57fc
8043a3e0-8043a3e3: -0x5828  # New location of "@23707" (above)
8043a3e4-8043a727: -0x5800
# New symbol: "@1506"
# New symbol: "@1507"
# New symbol: "@1508"
# New symbol: "@1509"
# New symbol: "@1513"
# New symbol: "@1514"
8043a728-8043a747: -0x57d0
# New symbol: "@607"
# New symbol: "@1472"
# New symbol: "@1473"
# New symbol: "@1474"
8043a748-8043ac6f: -0x57b0
# ==== BEGIN main.sbss2 ====
8043ac80-8043ac9f: -0x57c0
# Removed symbol: DAT_P1_8042fee0
8043aca8-8044686f: -0x57c8  # ==== BEGIN area between main and d_profileNP.rel ====
80446870-806dffff: -0x57c0
806e0000-8076b0fb: +0x0    # ==== BEGIN d_profileNP.rodata ====
# New pointers to new profiles g_profile_NV_SCREEN and g_profile_ANTI_ADDICTION_SCREEN in the profiles table
8076b0fc-8076d45f: +0x8    # ==== BEGIN area between d_profileNP.rodata and d_profileNP.bss ====
8076d460-80781bf7: +0x20   # ==== BEGIN d_basesNP.text ==== .. FUN_P1_80781d00
80781bf8-80781cfb: +0x24   # ...
80781d00-80781e60: +0x20   # (prev) .. FUN_P1_80781f70
80781e61-80781e67: +0x30   # ...
80781e6c-80781e7b: +0x30   # ...
80781e8c-80781eb3: +0xa0   # ...
80781eb8-80781ec7: +0xa4   # ...
80781ecc-80781ecf: +0xa8   # ...
80781ed4-80781edf: +0xa8   # ...
80781ee4-80781eeb: +0xa8   # ...
80781ef0-80781ef7: +0xb8   # ...
80781f00-807a2147: +0xb0   # (prev) .. FUN_P1_8079dea0
807a2148-807a234b: +0xb4   # ...
807a2350-807b19f7: +0xb0   # (prev) .. FUN_P1_807ad8c0
807b19f8-807b1a2b: +0xb4   # ...
807b1a30-808436f3: +0xb0   # (prev) .. FUN_P1_8083f4f0
808436f8-808436fb: +0xb4   # ...
808436fc-808436ff: +0xa8   # ...
80843700-80843703: +0xb8   # ...
80843704-80843707: +0xfc   # ...
80843708-8084370b: +0x100  # ...
80843710-80843713: +0x100  # ...
80843718-8084371b: +0x100  # ...
80843720-80843723: +0x104  # ...
80843728-8084372b: +0x104  # ...
8084372c-80843737: +0x108  # ...
80843740-808437bf: +0x100  # (prev) .. FUN_P1_8083f570
808437c0-808437c3: +0x104  # ...
808437c4-808437c7: +0x108  # ...
808437d0-808437db: +0x10c  # ...
808437e0-808437e3: +0x108  # ...
808437f8-80843843: +0xfc   # ...
80843848-8084384b: +0xfc   # ...
80843860-80843873: +0xf4   # ...
80843878-8084387b: +0xf4   # ...
80843890-808438b3: +0xec   # ...
808438b8-80843937: +0xec   # ...
80843938-8084393b: +0xf0   # ...
8084393c-8084393f: +0xf4   # ...
80843944-8084394f: +0xf4   # ...
80843954-8084399f: +0xf4   # ...
808439a4-808439a7: +0xf8   # ...
808439a8-808439ab: +0xf0   # ...
808439ac-80843a0b: +0xf4   # (prev) .. (gap)
# New symbol: FUN_C_80843b00
80843a10-80843d3f: +0x430  # (gap) .. daLiftRemoconSeesaw_c::executeState_Move()
80843d40-80843d6f: +0x478  # ...
80843d70-80843e27: +0x480  # (prev) .. FUN_P1_8083fc30
80843e28-80843e2b: +0x494  # ...
80843e2c-80843e2f: +0x47c  # ...
80843e30-80843e33: +0x490  # ...
80843e34-80843e37: +0x4c0  # ...
80843e38-80843e3b: +0x474  # ...
80843e3c-80843e43: +0x4bc  # ...
80843e44-80843e47: +0x4c4  # ...
80843e48-80843e4b: +0x470  # ...
80843e4c-80843e4f: +0x478  # ...
80843e50-80843e53: +0x460  # ...
80843e54-80843e57: +0x4ac  # ...
80843e58-80843e5b: +0x4bc  # ...
80843e5c-80843e5f: +0x4a8  # ...
80843e60-80843e67: +0x4ac  # ...
80843e68-80843ebf: +0x4b0  # ...
80843ec4-80843ec7: +0x4b0  # ...
80843ec8-80843ecb: +0x4a8  # ...
80843ecc-80843ecf: +0x4b0  # ...
80843ed4-80843f2f: +0x4ac  # ...
80843f30-808752ff: +0x4b0  # (prev) .. FUN_P1_808710c0
80875300-80875307: +0x4b8  # ...
80875308-808753a3: +0x4bc  # ...
808753a4-808753a7: +0x4c4  # ...
808753a8-808753ab: +0x59c  # ...
808753ac-808753af: +0x4cc  # ...
808753b0-808753df: +0x598  # ...
808753e0-808753ef: +0x59c  # ...
808753f0-80875a77: +0x5a0  # (prev) .. daNiceBoat_c::create()
80875a78-80875a9b: +0x5a4  # ...
80875a9c-80875c9f: +0x5a8  # ...
80875ca0-808c8cdb: +0x5b0  # (prev) .. daWireRemocon_c::executeState_Move()
808c8cdc-808c8cdf: +0x61c  # ...
808c8cec-808c90a7: +0x610  # (prev) .. FUN_P1_808c4e70
808c90a8-808c90ab: +0x628  # ...
808c90ac-808c90af: +0x610  # ...
808c90b0-808c90b3: +0x624  # ...
808c90b4-808c90b7: +0x648  # ...
808c90b8-808c90bb: +0x608  # ...
808c90bc-808c90c3: +0x644  # ...
808c90c4-808c90c7: +0x64c  # ...
808c90c8-808c90cb: +0x604  # ...
808c90cc-808c90cf: +0x60c  # ...
808c90d0-808c90d3: +0x5f4  # ...
808c90d4-808c90d7: +0x634  # ...
808c90d8-808c90db: +0x640  # ...
808c90dc-808c90df: +0x630  # ...
808c90e0-808c90e3: +0x634  # ...
808c90e4-808c90e7: +0x650  # ...
808c90e8-808c90fb: +0x634  # ...
808c90fc-808c913f: +0x63c  # ...
808c9144-808c9147: +0x63c  # ...
808c9148-808c914b: +0x634  # ...
808c914c-808c914f: +0x63c  # ...
808c9154-808c91af: +0x638  # ...
808c91b0-80918403: +0x640  # (prev) .. FUN_P1_80914260
80918404-8091840b: +0x648  # ...
8091840c-8091840f: +0x63c  # ...
80918410-80918417: +0x644  # ...
80918418-8091841b: +0x648  # ...
809184a0-809184a3: +0x84c  # ...
809184a4-809184e7: +0x850  # ...
80918574-80918577: +0x808  # ...
80918578-8091857b: +0x7c8  # ...
80918580-809185ab: +0x800  # ...
809185b0-8091867f: +0x7fc  # ...
80918680-8091ce83: +0x800  # (prev) .. dScGameSetup_c::executeState_ConnectionCheck()
8091ced8-8091cef3: +0x7ac  # ...
8091cef4-8091cf07: +0x7b0  # ...
8091cf08-8091cf1b: +0x7b4  # ...
8091cf20-8092900b: +0x7b0  # (prev) .. FUN_P1_80924e60
8092900c-8092934b: +0x814  # ...
80929350-80929d0f: +0x810  # (prev) .. FUN_P1_80925b40
80929d10-80929ffb: +0x874  # ...
8092a000-809340cb: +0x870  # (prev) .. dCourseSelectManager_c::executeState_CharacterChangeWait()
8093411c-8093ce2b: +0x820  # (prev) .. ==== BEGIN d_basesNP.data ====
8093ce2c-8093ce4f: +0x30a84  # This chunk of data moved into d_basesNP.rodata (see below)
8093ce50-8093ce6f: +0x7fc
8093ce70-8093ce7b: +0x800
# New symbol: DAT_C_8093d67c
8093ce80-8093df1f: +0x800
# New symbol: DAT_C_8093e720
# New symbol: DAT_C_8093e724
# New symbol: DAT_C_8093e728
# New symbol: DAT_C_8093e730
8093df20-80941ee3: +0x818
80941ee4-80941ee7: +0x820
80941ee8-80941eef: +0x814
80941ef0-8094214f: +0x818
# New symbol: DAT_C_80942968
80942150-80947353: +0x820  # ==== BEGIN d_basesNP.rodata ====
# New symbol: DAT_C_80947b74
# New symbol: DAT_C_80947b7c
80947354-8096d06f: +0x840
# (this is where the data from 8093ce2c was moved to)
8096d070-8096d1b7: +0x864
8096d1b8-8096d223: +0x868
# New symbol: DAT_C_8096da8c
# New symbol: DAT_C_8096da94
8096d224-8096d27b: +0x87c
8096d280-8098622b: +0x878
# New symbol: DAT_C_80986aa4
# New symbol: DAT_C_80986aac
# New symbol: DAT_C_80986abc
8098622c-809a093f: +0x8a0  # ==== BEGIN d_basesNP.bss ====
# New symbol: DAT_C_809a11e0
809a0940-809a8107: +0x8a8  # ==== BEGIN area between d_basesNP.rel and d_enemiesNP.rel ====
809a8110-80a9b8a3: +0x8a0  # ==== BEGIN d_enemiesNP.text ==== .. FUN_P1_80a96330
80a9b8a4-80a9b8a7: +0x8ac  # ...
80a9b8a8-80a9b8ab: +0x8b8  # ...
80a9b8ac-80a9b8af: +0x8b0  # ...
80a9b8b0-80a9b8b3: +0x8b8  # ...
80a9b8b4-80a9b8b7: +0x894  # ...
80a9b8c4-80a9b8c7: +0x894  # ...
80a9b8c8-80a9b8cb: +0x8ac  # ...
80a9b8cc-80a9b8ef: +0x8b0  # ...
80a9b8f4-80a9b8ff: +0x8b0  # ...
80a9b964-80a9b96f: +0x84c  # ...
80a9b97c-80a9b97f: +0x848  # ...
80a9b980-80a9b99f: +0x850  # ...
80a9b9a4-80a9b9af: +0x850  # ...
80a9ba14-80a9ba2f: +0x7ec  # ...
80a9ba30-80a9ba30: +0x7f0  # (prev) .. FUN_P1_80a964e0
80a9ba31-80a9ba33: +0x7f4  # ...
80a9ba38-80a9ba3b: +0x7f4  # ...
80a9ba3c-80a9ba3f: +0x7f8  # ...
80a9ba40-80a9ba4f: +0x800  # (prev) .. FUN_P1_80a964f0
80a9ba50-80a9ba53: +0x804  # ...
80a9ba5c-80a9ba5f: +0x810  # ...
80a9ba64-80a9ba67: +0x810  # ...
80a9ba84-80a9ba9f: +0x7fc  # ...
80a9baa0-80a9baab: +0x800  # (prev) .. FUN_P1_80a96550
80a9baac-80a9baff: +0x804  # ...
80a9bb00-80a9bb13: +0x808  # ...
80a9bb18-80a9bb1b: +0x808  # ...
80a9bb20-80a9bb23: +0x808  # ...
80a9bb28-80a9bb2b: +0x80c  # ...
80a9bb30-80a9bb33: +0x80c  # ...
80a9bb34-80a9bd37: +0x810  # (prev) .. daEnRemoconCannon_c::initializeState_Waken()
80a9bd3c-80a9bd3f: +0x830  # ...
80a9bd44-80a9bd47: +0x818  # ...
80a9bd50-80a9bd53: +0x818  # ...
80a9bd5c-80a9bd63: +0x814  # ...
80a9bd64-80a9bd67: +0x81c  # ...
80a9bd68-80a9bd6b: +0x820  # ...
80a9bd6c-80a9bd73: +0x80c  # ...
80a9bd74-80a9bd77: +0x810  # ...
80a9bd78-80a9bddb: +0x814  # ...
80a9bde0-80a9c543: +0x810  # (prev) .. daEnRemoconCannon_c::initializeState_Recover()
80a9c544-80a9c547: +0x818  # ...
80a9c54c-80a9c54f: +0x81c  # ...
80a9c550-80a9c553: +0x808  # ...
80a9c554-80a9c557: +0x824  # ...
80a9c560-80a9c567: +0x80c  # ...
80a9c568-80a9c59b: +0x814  # ...
80a9c5a0-80a9c943: +0x810  # (prev) .. FUN_P1_80a973e0
80a9c944-80a9c947: +0x814  # ...
80a9c948-80a9c94b: +0x80c  # ...
80a9c94c-80a9c94f: +0x818  # ...
80a9c950-80a9c953: +0x840  # ...
80a9c954-80a9c957: +0x848  # ...
80a9c958-80a9c95f: +0x83c  # ...
80a9c960-80a9c963: +0x840  # ...
80a9c964-80a9c967: +0x7f8  # ...
80a9c968-80a9c96b: +0x840  # ...
80a9c96c-80a9c96f: +0x838  # ...
80a9c970-80a9c973: +0x840  # ...
80a9c974-80a9c977: +0x838  # ...
80a9c978-80a9cddf: +0x83c  # ...
80a9cde0-80ad9567: +0x840  # (prev) .. ==== BEGIN d_enemiesNP.data ====
80ad9568-80ad958b: +0x32014  # This chunk of data moved into d_enemiesNP.rodata (see below)
80ad958c-80ad95cb: +0x81c
80ad95d0-80b0ad63: +0x818  # ==== BEGIN d_enemiesNP.rodata ====
# (this is where the data from 80ad9568 was moved to)
80b0ad64-80b0aea3: +0x83c
80b0aea8-80b0b247: +0x838
# New symbol: DAT_C_80b0ba80
# New symbol: DAT_C_80b0ba88
80b0b248-80b1696f: +0x850  # ==== BEGIN area between d_enemiesNP.rodata and d_enemiesNP.bss ====
80b16980-80b1ffdf: +0x840  # ==== BEGIN d_enemiesNP.bss ====
# New symbol: DAT_C_80b20820
80b1ffe0-80b21e67: +0x848  # ==== BEGIN area between d_enemiesNP.rel and d_en_bossNP.rel ====
80b21e70-*: +0x840
