Decomp 50 functions in five themed groups

Third 5x10 batch: fifty located as five groups of ten before any matching, all
fifty matched, one build, one commit.

  Dwci account bitfield accessors   10   Dwci_Acc_SetMaskBits .. Dwci_Acc_GetFlags
  overlay-11 menu/overlay loaders   10   ov11_0230CB88 .. LoadRecycleShopOverlayResume
  _020B0B6C accessors + copies      10   sub_0206C0D8 .. sub_0206C19C
  overlay-11 veneers                10   ov11_022E9A78 .. ov11_022E9B5C
  main_02065C84 wrappers            10   sub_020663C8 .. sub_020664AC

Each group is a contiguous run, costing one .s split apiece. None of the fifty
carries a region conditional -- checked per function, not per file -- so US alone
verifies this commit.

The two 8-byte copy loops need an UNSIGNED counter. With s32, `--n != 0` emits
sub followed by cmp and scores 505; with u32 it fuses into the target's single
subs. A struct assignment through a cast also scores 0 but needs a new type.

ov11_0230CB88 passes an argument to EntryOverlay13, which this tree already has
decompiled and matching as `void EntryOverlay13(void)`. Dropping the argument
scores 220 -- the target saves r0 into r4 across the InitMenu call specifically
to pass it. Retail's caller evidently had a prototype its definition did not
match; reproducing that needs the two declarations to disagree across translation
units, so this file declares `extern void EntryOverlay13(s32 a);` locally.

Dwci_Acc_GetUserId and Dwci_Acc_GetFriendKey return 64-bit values; the tell is
the pair of no-op `orr rX, rX, #0` instructions MWCC emits assembling a u64
across r0/r1. GetUserId's high half is field_0x0 masked to 0x7FF, which agrees
with Dwci_Acc_SetUserId passing that same mask to Dwci_Acc_SetMaskBits.

New placeholder structs: unk_022DB0E0, unk_020B0B70, unk_02388FC0, unk_023890A0.

Authored by Claude (Opus 5) under human direction. All fifty verified at score 0.
Confirmed by a matching build: build/pmdsky.us/pmdsky.us.nds: OK.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
cecilarmitais
2026-08-20 00:11:24 -07:00
parent e865b69791
commit c34d1196f2
31 changed files with 92054 additions and 91813 deletions

View File

@@ -1,153 +1,40 @@
#pragma once
.public AddMissionToJobList
.public AlreadyHaveMission
.public BulkItemToItem
.public CanDungeonBeUsedForMission
.public CanSendItem
.public CheckAcceptedMissionByTypeAndDungeon
.public CheckDungeonMissionUnlockConditions
.public CloseCollectionMenu
.public ClosePortraitBox
.public CopyFrameTypeOption
.public CountJobListMissions
.public CreateCollectionMenu
.public CreatePortraitBox
.public Debug_Print0
.public DirectoryFileMngr_ExtractAllDirectoryFiles
.public DrawTextInWindow
.public DungeonRequestsDoneWrapper
.public DungeonSwapIdToIdx
.public ExplorersOfSkyMain
.public FormatMissionHeader
.public FormatSpecialEpisodeMissionHeader
.public GenerateMissionDetailsStruct
.public GetAcceptedMission
.public GetAdventureLogDungeonFloor
.public GetDebugSpecialEpisodeNumber
.public GetDungeonMode
.public GetLanguageType
.public GetMainTeamNameWithCheck
.public GetRank
.public GetResolvedPerformanceProgressFlag
.public GetScenarioBalance
.public GetSosMailCount
.public GetSpecialEpisodeType
.public GetStringFromFileVeneer
.public GetWindowIdSelectedMenuItemIdx
.public GlobalProgressAlloc
.public InitKaomadoStream
.public InitObjGraphicsControls
.public InitOptionsVeneer
.public InitPreprocessorArgs
.public InitScriptVariableValues
.public InitSpecialEpisodeHero
.public InitWanTable
.public IsAcceptedMissionSlotEmpty
.public IsCollectionMenuActive
.public IsMissionTypeSpecialEpisode
.public IsSpecialEpisodeBeaten
.public IsSpecialEpisodeOpen
.public JOB_MENU_ITEMS_1
.public JOB_MENU_ITEMS_10
.public JOB_MENU_ITEMS_11
.public JOB_MENU_ITEMS_12
.public JOB_MENU_ITEMS_13
.public JOB_MENU_ITEMS_2
.public JOB_MENU_ITEMS_3
.public JOB_MENU_ITEMS_4
.public JOB_MENU_ITEMS_5
.public JOB_MENU_ITEMS_6
.public JOB_MENU_ITEMS_7
.public JOB_MENU_ITEMS_8
.public JOB_MENU_ITEMS_9
.public JOB_WINDOW_PARAMS_1
.public JOB_WINDOW_PARAMS_2
.public KeyWaitInit
.public LoadOverlay
.public LoadTblTalk
.public LoadWazaP
.public MainGame
.public MakeMissionDetails
.public MakeSpecialEpisodeMissionDetails
.public MemAlloc
.public MemFree
.public MemZero
.public NoteLoadBase
.public NoteSaveBase
.public OverlayIsLoaded
.public PlaySeVolumeWrapper
.public PreprocessStringFromId
.public ReadSaveHeader
.public SetAdventureLogStructLocation
.public SetBothScreensWindowsColor
.public SetCollectionMenuField0x1B2
.public SetGameMode
.public SetQuestionMarks
.public SetScenarioProgressScriptVar
.public SetSpecialEpisodeOpen
.public SetSpecialEpisodeType
.public ShowPortraitInPortraitBox
.public StrncpySimpleNoPadSafe
.public UnloadOverlay
.public UpdateWindow
.public WAN_TABLE
.public ZeroInitScriptVariable
.public _020A9208
.public _020A9268
.public _020A9278
.public _020A9288
.public _020A9298
.public _020A92A8
.public _020A92EC
.public _020A9304
.public _020A931C
.public _020A9334
.public _020A9364
.public _020A937C
.public _020A9394
.public _020A93B4
.public _020B0A54
.public _020B0B24
.public _020B0B2C
.public _020B0B2D
.public _020B0B2E
.public _020B0B2F
.public _020B0B30
.public _020B0B31
.public _020B0B32
.public _020B0B33
.public _020B0B34
.public _020B0B35
.public _020B0B36
.public _020B0B37
.public _020B0B38
.public _020B0B39
.public _020B0B3A
.public _020B0B3B
.public _020B0B3C
.public _020B0B3D
.public _020B0B3E
.public _020B0B3F
.public _020B0B44
.public _020B0B48
.public _022B7320
.public ov00_022BE0C8
.public ov01_02337B3C
.public ov01_02337B68
.public ov01_02337BA0
.public ov01_02337C54
.public ov01_02337E0C
.public ov03_0233CAA8
.public ov03_0233CAD8
.public ov03_0233CB10
.public ov03_0233CB3C
.public ov03_0233CDC8
.public ov03_0233CDD8
.public ov03_0233CDE4
.public ov11_022E82CC
.public sub_020024A0
.public sub_02003B94
.public sub_02003BC8
.public sub_0200CA8C
.public sub_0201D7A8
.public sub_0201DD90
@@ -157,33 +44,7 @@
.public sub_02025AD8
.public sub_02026E78
.public sub_02027180
.public sub_0202836C
.public sub_02029F88
.public sub_02029FBC
.public sub_0202C620
.public sub_0202C654
.public sub_0202C6F0
.public sub_0202C75C
.public sub_0202D07C
.public sub_020346C0
.public sub_020469BC
.public sub_020469E8
.public sub_02046A20
.public sub_02046A9C
.public sub_02046B04
.public sub_02046BA0
.public sub_02046BB4
.public sub_02046BE8
.public sub_02046C30
.public sub_02046C78
.public sub_02046D20
.public sub_02046D2C
.public sub_0204707C
.public sub_020470D0
.public sub_02047148
.public sub_02047150
.public sub_02047188
.public sub_020474A0
.public sub_02048420
.public sub_02048430
.public sub_02048454
@@ -194,31 +55,7 @@
.public sub_02048644
.public sub_0204872C
.public sub_0204A1A4
.public sub_0204D018
.public sub_0204E210
.public sub_0204F1B4
.public sub_0204F9B8
.public sub_02052C3C
.public sub_0205B44C
.public sub_0205B77C
.public sub_0205BD40
.public sub_0205C73C
.public sub_0205C870
.public sub_0205C8E0
.public sub_0205D1F4
.public sub_0205E954
.public sub_0205E970
.public sub_0205E984
.public sub_0205EAC8
.public sub_0205EAE8
.public sub_0205EB00
.public sub_0205EBD8
.public sub_0205EBF0
.public sub_0205EC38
.public sub_0205EC50
.public sub_0205ECF4
.public sub_0205F588
.public sub_0205F5A8
.public sub_0205F710
.public sub_0205FA38
.public sub_0206276C

View File

@@ -0,0 +1,162 @@
#pragma once
.public AddMissionToJobList
.public AlreadyHaveMission
.public CanDungeonBeUsedForMission
.public CanSendItem
.public CheckAcceptedMissionByTypeAndDungeon
.public CheckDungeonMissionUnlockConditions
.public CloseCollectionMenu
.public ClosePortraitBox
.public CountJobListMissions
.public CreateCollectionMenu
.public CreatePortraitBox
.public DrawTextInWindow
.public DungeonRequestsDoneWrapper
.public DungeonSwapIdToIdx
.public FormatMissionHeader
.public FormatSpecialEpisodeMissionHeader
.public GenerateMissionDetailsStruct
.public GetAcceptedMission
.public GetAdventureLogDungeonFloor
.public GetDungeonMode
.public GetLanguageType
.public GetMainTeamNameWithCheck
.public GetRank
.public GetResolvedPerformanceProgressFlag
.public GetScenarioBalance
.public GetStringFromFileVeneer
.public GetWindowIdSelectedMenuItemIdx
.public InitPreprocessorArgs
.public IsAcceptedMissionSlotEmpty
.public IsCollectionMenuActive
.public IsMissionTypeSpecialEpisode
.public IsSpecialEpisodeBeaten
.public IsSpecialEpisodeOpen
.public JOB_MENU_ITEMS_1
.public JOB_MENU_ITEMS_10
.public JOB_MENU_ITEMS_11
.public JOB_MENU_ITEMS_12
.public JOB_MENU_ITEMS_13
.public JOB_MENU_ITEMS_2
.public JOB_MENU_ITEMS_3
.public JOB_MENU_ITEMS_4
.public JOB_MENU_ITEMS_5
.public JOB_MENU_ITEMS_6
.public JOB_MENU_ITEMS_7
.public JOB_MENU_ITEMS_8
.public JOB_MENU_ITEMS_9
.public JOB_WINDOW_PARAMS_1
.public JOB_WINDOW_PARAMS_2
.public MakeMissionDetails
.public MakeSpecialEpisodeMissionDetails
.public MemAlloc
.public MemFree
.public MemZero
.public NoteSaveBase
.public PlaySeVolumeWrapper
.public PreprocessStringFromId
.public SetCollectionMenuField0x1B2
.public SetQuestionMarks
.public SetSpecialEpisodeOpen
.public ShowPortraitInPortraitBox
.public StrncpySimpleNoPadSafe
.public UpdateWindow
.public _020A9268
.public _020A9278
.public _020A9288
.public _020A9298
.public _020A92A8
.public _020A92EC
.public _020A9304
.public _020A931C
.public _020A9334
.public _020A9364
.public _020A937C
.public _020A9394
.public _020A93B4
.public _020B0A54
.public _020B0B24
.public _020B0B2C
.public _020B0B2D
.public _020B0B2E
.public _020B0B2F
.public _020B0B30
.public _020B0B31
.public _020B0B32
.public _020B0B33
.public _020B0B34
.public _020B0B35
.public _020B0B36
.public _020B0B37
.public _020B0B38
.public _020B0B39
.public _020B0B3A
.public _020B0B3B
.public _020B0B3C
.public _020B0B3D
.public _020B0B3E
.public _020B0B3F
.public _020B0B44
.public _020B0B48
.public ov01_02337B3C
.public ov01_02337B68
.public ov01_02337BA0
.public ov01_02337C54
.public ov01_02337E0C
.public ov03_0233CAA8
.public ov03_0233CAD8
.public ov03_0233CB10
.public ov03_0233CB3C
.public ov03_0233CDC8
.public ov03_0233CDD8
.public ov03_0233CDE4
.public sub_02003B94
.public sub_02003BC8
.public sub_0202836C
.public sub_02029F88
.public sub_02029FBC
.public sub_0202C620
.public sub_0202C654
.public sub_0202C6F0
.public sub_0202C75C
.public sub_0202D07C
.public sub_020469BC
.public sub_020469E8
.public sub_02046A20
.public sub_02046B04
.public sub_02046BA0
.public sub_02046BB4
.public sub_02046BE8
.public sub_02046C78
.public sub_02046D20
.public sub_02046D2C
.public sub_0204707C
.public sub_020470D0
.public sub_02047148
.public sub_02047150
.public sub_02047188
.public sub_020474A0
.public sub_0204D018
.public sub_0204E210
.public sub_0204F1B4
.public sub_0205B77C
.public sub_0205BD40
.public sub_0205C870
.public sub_0205C8E0
.public sub_0205D1F4
.public sub_0205E954
.public sub_0205E970
.public sub_0205E984
.public sub_0205EAC8
.public sub_0205EAE8
.public sub_0205EB00
.public sub_0205EBD8
.public sub_0205EBF0
.public sub_0205EC38
.public sub_0205EC50
.public sub_0205ECF4
.public sub_0205F588
.public sub_0205F5A8
.public sub_0205F710
.public sub_0205FA38
.public sub_0206276C

View File

@@ -1,4 +1,23 @@
#pragma once
.public CosAbs4096
.public Debug_Print0
.public DelayWteFree
.public DeleteWanTableEntryVeneer
.public DisplayAndSwitchAnimationControlCurrentFrame
.public GetExecuteSpecialEpisodeType
.public InitAnimationControlWithSet__0201C0B0
.public LoadWanTableEntry
.public LoadWteFromRom
.public MAP_MARKER_PLACEMENTS
.public MemAlloc
.public MemFree
.public MemZero
.public MultiplyByFixedPoint
.public Rand16Bit
.public SetAnimationForAnimationControl
.public SetSpriteIdForAnimationControl
.public SinAbs4096
.public WAN_TABLE
.public _020A94BC
.public _020A94C6
.public _020A94D2
@@ -13,58 +32,12 @@
.public _020B0B4C
.public _020B0B5C
.public _020B0B60
.public _020B0B6C
.public _020B0B70
.public _020B0B74
.public _020B1290
.public _022B7331
.public _022B7334
.public _022B7340
.public _022B734C
.public _022B7A30
.public _022B8330
.public _022B9130
.public _s32_div_f
.public CosAbs4096
.public Debug_Print0
.public DelayWteFree
.public DeleteWanTableEntryVeneer
.public DisplayAndSwitchAnimationControlCurrentFrame
.public DRIVER_WORK
.public DseBgm_StopAll
.public DseBgm_SysSetupNoteList
.public DseDriver_StartMainThread
.public DseDriver_StartTickTimer
.public DseMem_Clear
.public DseMem_Quit
.public DseSe_StopAll
.public DseSe_SysReset
.public DseSequence_PauseList
.public DseSwd_SysInit
.public DseSwd_SysQuit
.public DseVoice_ResetAll
.public DseVoice_ResetHW
.public GetExecuteSpecialEpisodeType
.public InitAnimationControlWithSet__0201C0B0
.public LoadWanTableEntry
.public LoadWteFromRom
.public MAP_MARKER_PLACEMENTS
.public MemAlloc
.public MemFree
.public MemZero
.public MultiplyByFixedPoint
.public OS_InitAlarm
.public OS_InitTick
.public OS_SetTick
.public ov10_022C2340
.public ov10_022C23B0
.public ov10_022C23EC
.public ov10_022C2450
.public ov10_022C24DC
.public Rand16Bit
.public SetAnimationForAnimationControl
.public SetSpriteIdForAnimationControl
.public SinAbs4096
.public sub_0201D12C
.public sub_0201D9C8
.public sub_0201DF38
@@ -78,20 +51,3 @@
.public sub_0201F36C
.public sub_02024934
.public sub_0206A7CC
.public sub_0206DC78
.public sub_0206F6FC
.public sub_0206F774
.public sub_0206F9A4
.public sub_02070124
.public sub_02070148
.public sub_02070158
.public sub_02070188
.public sub_020701B0
.public sub_02070EA0
.public sub_02070F4C
.public sub_020729A4
.public sub_02075600
.public sub_020756E8
.public sub_0207A7EC
.public sub_0207A8F4
.public WAN_TABLE

View File

@@ -0,0 +1,42 @@
#pragma once
.public DRIVER_WORK
.public DseBgm_StopAll
.public DseBgm_SysSetupNoteList
.public DseDriver_StartMainThread
.public DseDriver_StartTickTimer
.public DseMem_Clear
.public DseMem_Quit
.public DseSe_StopAll
.public DseSe_SysReset
.public DseSequence_PauseList
.public DseSwd_SysInit
.public DseSwd_SysQuit
.public DseVoice_ResetAll
.public DseVoice_ResetHW
.public OS_InitAlarm
.public OS_InitTick
.public OS_SetTick
.public _020B1290
.public _022B7331
.public _022B7334
.public _022B7340
.public _022B734C
.public _022B7A30
.public _022B8330
.public _022B9130
.public sub_0206C184
.public sub_0206C19C
.public sub_0206DC78
.public sub_0206F6FC
.public sub_0206F774
.public sub_0206F9A4
.public sub_02070124
.public sub_02070148
.public sub_02070158
.public sub_02070188
.public sub_020701B0
.public sub_02070EA0
.public sub_02070F4C
.public sub_020729A4
.public sub_02075600
.public sub_020756E8

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,970 @@
#pragma once
.public CloseVeneer
.public Cps_GetSslLowThreadPriority
.public Cps_Resolve
.public Cps_SetRootCa
.public Cps_SetSsl
.public Cps_SetSslLowThreadPriority
.public Cps_SocBind
.public Cps_SocConsume
.public Cps_SocFlush
.public Cps_SocGetLength
.public Cps_SocRead
.public Cps_SocRegister
.public Cps_SocRelease
.public Cps_SocUnRegister
.public Cps_SocUse
.public Cps_SocWrite
.public Cps_SslAddRandomSeed
.public Cps_TcpClose
.public Cps_TcpConnect
.public Cps_TcpShutdown
.public DC_InvalidateRange
.public DC_StoreRange
.public Dwc_AC_CancelGetWdsInfo
.public Dwc_AC_CleanupGetWdsInfo
.public Dwc_AC_Create
.public Dwc_AC_Destroy
.public Dwc_AC_GetApSpotInfo
.public Dwc_AC_GetApType
.public Dwc_AC_GetStatus
.public Dwc_AC_ProcessGetWdsInfo
.public Dwc_AC_SetSpecifyAp
.public Dwc_AC_StartupGetWdsInfo
.public Dwci_Acc_GetFlags
.public Dwci_Acc_GetFriendKey
.public Dwci_Acc_GetGsProfileId
.public Dwci_Acc_GetPlayerId
.public Dwci_Acc_GetUserId
.public Dwci_Acc_SetFriendKey
.public Dwci_Acc_SetGsProfileId
.public Dwci_Acc_SetMaskBits
.public Dwci_Acc_SetPlayerId
.public Dwci_Acc_SetUserId
.public EnableIrqFlag
.public GetDsFirmwareUserSettings
.public Gt2Accept
.public Gt2AddressToString
.public Gt2CloseAllConnectionsHard
.public Gt2CloseConnectionHard
.public Gt2CloseSocket
.public Gt2Connect
.public Gt2CreateSocket
.public Gt2GetConnectionData
.public Gt2GetConnectionState
.public Gt2GetLocalIP
.public Gt2GetLocalPort
.public Gt2GetOutgoingBufferFreeSpace
.public Gt2GetOutgoingBufferSize
.public Gt2GetRemoteIP
.public Gt2GetRemotePort
.public Gt2GetSocketSocket
.public Gt2Listen
.public Gt2Reject
.public Gt2Send
.public Gt2SetConnectionData
.public Gt2SetUnrecognizedMessageCallback
.public Gt2Think
.public InitWfc
.public MATH_CalcCRC16
.public MATH_CalcCRC32
.public MATH_CalcCRC8
.public MATHi_CRC16InitTable
.public MATHi_CRC32InitTable
.public MATHi_CRC8InitTable
.public MD5Final_Ghi
.public MD5Init_Ghi
.public MD5Update_Ghi
.public MD5_Digest
.public MD5_Init
.public MD5_Update
.public MI_CpuCopy8
.public MI_CpuFill8
.public MTi_CpuClear16
.public MTi_CpuClear32
.public MTi_CpuCopy16
.public MTi_CpuCopy32
.public Math_CalcSha1
.public NnBeginNegotiationWithSocket
.public NnCancel
.public NnFreeNegotiateList
.public NnProcessData
.public NnThink
.public OS_CreateThread
.public OS_GetLowEntropyData
.public OS_GetMacAddress
.public OS_GetThreadPriority
.public OS_GetTick
.public OS_InitMessageQueue
.public OS_InitMutex
.public OS_IsThreadAvailable
.public OS_IsThreadTerminated
.public OS_IsTickAvailable
.public OS_JoinThread
.public OS_LockMutex
.public OS_ReceiveMessage
.public OS_SendMessage
.public OS_Sleep
.public OS_SnPrintf
.public OS_UnlockMutex
.public OS_VsPrintf
.public OS_WakeupThreadDirect
.public OSi_ThreadInfo
.public PXI_IsCallbackReady
.public PXI_SendWordByFifo
.public PXI_SetFifoRecvCallback
.public Qr2_Buffer_AddA
.public Rtc_ConvertDateTimeToSecond
.public Rtc_GetDate
.public Rtc_GetDateTime
.public Rtc_GetTime
.public Rtc_Init
.public SVC_WaitByLoop
.public SbServerGetIntValueA
.public SbServerGetPrivateInetAddress
.public SbServerGetPrivateQueryPort
.public SbServerGetPublicInetAddress
.public SbServerGetPublicQueryPort
.public SbServerHasPrivateAddress
.public ServerBrowserClear
.public ServerBrowserFree
.public ServerBrowserGetMyPublicIpAddr
.public ServerBrowserGetServer
.public ServerBrowserLimitUpdateA
.public ServerBrowserSendMessageToServerA
.public ServerBrowserSendNatNegotiateCookieToServerA
.public ServerBrowserState
.public ServerBrowserThink
.public SetIrqFlag
.public Soc_GetHostByName
.public Soc_GetHostID
.public Soc_GetSockName
.public Soc_InetAtoN
.public Soc_Poll
.public Soc_Shutdown
.public Soc_U32to4U8
.public Socl_EnableSsl
.public Socl_GetHostID
.public Socl_Resolve
.public Std_CompareNString
.public Std_CompareString__020852CC
.public Std_GetStringLength
.public Std_TsScanf
.public WaitForever2
.public Wcm_GetApEssid
.public Wcm_GetApMacAddress
.public Wcm_GetLinkLevel
.public Wcm_GetPhase
.public _020AECB0
.public _020AED30
.public _020AEDB0
.public _022BCA70
.public _d2f
.public _dadd
.public _ddiv
.public _dflt
.public _dmul
.public _dsub
.public _ll_udiv
.public _s32_div_f
.public _u32_div_f
.public abs
.public atof
.public atoi
.public bind
.public connect
.public fclose
.public fcntl
.public fread
.public fseek
.public ftell
.public memcmp
.public memcpy
.public memmove
.public memset
.public ov00_02318268
.public ov00_0231826C
.public ov00_02318274
.public ov00_02318284
.public ov00_02318295
.public ov00_023182A8
.public ov00_023182EC
.public ov00_023182FC
.public ov00_02318308
.public ov00_02318314
.public ov00_02318324
.public ov00_023183A4
.public ov00_023183B7
.public ov00_023183BC
.public ov00_023183E4
.public ov00_02318430
.public ov00_02318454
.public ov00_02318468
.public ov00_0231846C
.public ov00_02318470
.public ov00_02318474
.public ov00_02318484
.public ov00_02318490
.public ov00_023184A0
.public ov00_023184AC
.public ov00_023184D0
.public ov00_02318660
.public ov00_02318B8C
.public ov00_02318B94
.public ov00_02318BB8
.public ov00_02318BC8
.public ov00_02318C0C
.public ov00_02318C1C
.public ov00_02318C2C
.public ov00_02318C4C
.public ov00_02318C5C
.public ov00_02318C68
.public ov00_02318C70
.public ov00_02318C7C
.public ov00_02318C88
.public ov00_02318C90
.public ov00_02318C98
.public ov00_02318CA4
.public ov00_02318CB0
.public ov00_02318CBC
.public ov00_02318CC8
.public ov00_02318CD0
.public ov00_02318CD8
.public ov00_02318CE0
.public ov00_02318CE4
.public ov00_02318CEC
.public ov00_02318CF8
.public ov00_02318D00
.public ov00_02318D08
.public ov00_02318D10
.public ov00_02318D1C
.public ov00_02318D38
.public ov00_02318D48
.public ov00_02318D54
.public ov00_02318D5C
.public ov00_02318D64
.public ov00_02318D6C
.public ov00_02318D74
.public ov00_02318D7C
.public ov00_02318D84
.public ov00_02318D8C
.public ov00_02318D94
.public ov00_02318D9C
.public ov00_02318DA4
.public ov00_02318DAC
.public ov00_02318DB4
.public ov00_02318DBC
.public ov00_02318DC4
.public ov00_02318DDC
.public ov00_02318DE8
.public ov00_02318DF8
.public ov00_02318E28
.public ov00_02318E40
.public ov00_02318E58
.public ov00_02318E64
.public ov00_02318E6C
.public ov00_02318E74
.public ov00_02318E78
.public ov00_02318E88
.public ov00_02318E9C
.public ov00_02318EA0
.public ov00_02318EB8
.public ov00_02318ED0
.public ov00_02318F24
.public ov00_02318F44
.public ov00_02318F50
.public ov00_02318F54
.public ov00_02318F5C
.public ov00_02318F60
.public ov00_02318F74
.public ov00_02318F88
.public ov00_02318F98
.public ov00_02318FA0
.public ov00_02318FAC
.public ov00_02318FB0
.public ov00_02318FB4
.public ov00_02318FD4
.public ov00_02318FF4
.public ov00_02319010
.public ov00_0231902C
.public ov00_02319030
.public ov00_0231903C
.public ov00_02319040
.public ov00_02319044
.public ov00_02319048
.public ov00_0231904C
.public ov00_02319068
.public ov00_02319084
.public ov00_023190AC
.public ov00_023190C0
.public ov00_023190D0
.public ov00_023190E0
.public ov00_023190FC
.public ov00_0231911C
.public ov00_02319130
.public ov00_0231914C
.public ov00_02319158
.public ov00_02319168
.public ov00_02319178
.public ov00_02319198
.public ov00_023191A4
.public ov00_023191C4
.public ov00_023191CC
.public ov00_023191D4
.public ov00_023191E4
.public ov00_023191EC
.public ov00_023191F4
.public ov00_02319200
.public ov00_02319204
.public ov00_0231920C
.public ov00_02319214
.public ov00_02319220
.public ov00_0231922C
.public ov00_02319268
.public ov00_02319298
.public ov00_023192B8
.public ov00_023192C8
.public ov00_023192D8
.public ov00_023192F8
.public ov00_02319300
.public ov00_02319308
.public ov00_0231930C
.public ov00_02319314
.public ov00_02319320
.public ov00_0231932C
.public ov00_02319334
.public ov00_02319344
.public ov00_02319350
.public ov00_0231A0E0
.public ov00_0231A108
.public ov00_0231A12C
.public ov00_0231A14C
.public ov00_0231A154
.public ov00_0231A168
.public ov00_0231A17C
.public ov00_0231A184
.public ov00_0231A190
.public ov00_0231A194
.public ov00_0231A19C
.public ov00_0231A1A0
.public ov00_0231A1A4
.public ov00_0231A1A8
.public ov00_0231A1AC
.public ov00_0231A1B0
.public ov00_0231A1BC
.public ov00_0231A1C0
.public ov00_0231A1C4
.public ov00_0231A1C8
.public ov00_0231A1CC
.public ov00_0231A1D0
.public ov00_0231A1DC
.public ov00_0231A1E8
.public ov00_0231A200
.public ov00_0231A204
.public ov00_0231A208
.public ov00_0231A210
.public ov00_0231A21C
.public ov00_0231A228
.public ov00_0231A234
.public ov00_0231A240
.public ov00_0231A248
.public ov00_0231A2A0
.public ov00_0231A2A4
.public ov00_0231A2AC
.public ov00_0231A2B4
.public ov00_0231A2BC
.public ov00_0231A2C0
.public ov00_0231A2C4
.public ov00_0231A2D8
.public ov00_0231A2F8
.public ov00_0231A33C
.public ov00_0231A368
.public ov00_0231A370
.public ov00_0231A378
.public ov00_0231A3A0
.public ov00_0231A3C4
.public ov00_0231A3EC
.public ov00_0231A3F4
.public ov00_0231A3F8
.public ov00_0231A400
.public ov00_0231A41C
.public ov00_0231A448
.public ov00_0231A534
.public ov00_0231A54C
.public ov00_0231A550
.public ov00_0231A560
.public ov00_0231A56C
.public ov00_0231A578
.public ov00_0231A580
.public ov00_0231A58C
.public ov00_0231A594
.public ov00_0231A59C
.public ov00_0231A5A4
.public ov00_0231A5AC
.public ov00_0231A5B4
.public ov00_0231A5BC
.public ov00_0231A5C4
.public ov00_0231A5CC
.public ov00_0231A5D4
.public ov00_0231A5E4
.public ov00_0231A5EC
.public ov00_0231A5F0
.public ov00_0231A5FC
.public ov00_0231A60C
.public ov00_0231A614
.public ov00_0231A620
.public ov00_0231A630
.public ov00_0231A638
.public ov00_0231A640
.public ov00_0231A648
.public ov00_0231A64C
.public ov00_0231A658
.public ov00_0231A660
.public ov00_0231A664
.public ov00_0231A668
.public ov00_0231A698
.public ov00_0231A6CC
.public ov00_0231A6E0
.public ov00_0231A6E4
.public ov00_0231A6EC
.public ov00_0231A6F0
.public ov00_0231A6F4
.public ov00_0231A6FC
.public ov00_0231A70C
.public ov00_0231A718
.public ov00_0231A724
.public ov00_0231A738
.public ov00_0231A740
.public ov00_0231A7B0
.public ov00_0231A7BC
.public ov00_0231A7E0
.public ov00_0231A7E4
.public ov00_0231A7E8
.public ov00_0231A7EC
.public ov00_0231A7F0
.public ov00_0231A7F4
.public ov00_0231A7F8
.public ov00_0231A804
.public ov00_0231A810
.public ov00_0231A814
.public ov00_0231A818
.public ov00_0231A81C
.public ov00_0231A824
.public ov00_0231A858
.public ov00_0231A85C
.public ov00_0231A890
.public ov00_0231A898
.public ov00_0231A8DC
.public ov00_0231A8E0
.public ov00_0231A8F4
.public ov00_0231A938
.public ov00_0231A944
.public ov00_0231A968
.public ov00_0231A990
.public ov00_0231A998
.public ov00_0231A9C4
.public ov00_0231A9D8
.public ov00_0231A9DC
.public ov00_0231A9E4
.public ov00_0231AA0C
.public ov00_0231AA38
.public ov00_0231AA68
.public ov00_0231AABC
.public ov00_0231AAC0
.public ov00_0231AAEC
.public ov00_0231AAF4
.public ov00_0231AB00
.public ov00_0231AB04
.public ov00_0231AB08
.public ov00_0231AB10
.public ov00_0231AB18
.public ov00_0231AB20
.public ov00_0231AB2C
.public ov00_0231AB34
.public ov00_0231AB3C
.public ov00_0231AB40
.public ov00_0231AB4C
.public ov00_0231AB5C
.public ov00_0231AB68
.public ov00_0231AB74
.public ov00_0231AB7C
.public ov00_0231AB80
.public ov00_0231AB90
.public ov00_0231ABA0
.public ov00_0231ABB0
.public ov00_0231ABB4
.public ov00_0231ABB8
.public ov00_0231ABC0
.public ov00_0231ABCC
.public ov00_0231ABDC
.public ov00_0231ABEC
.public ov00_0231AC08
.public ov00_0231AC18
.public ov00_0231AC28
.public ov00_0231AC2C
.public ov00_0231AC5C
.public ov00_0231AC6C
.public ov00_0231AC78
.public ov00_0231AC84
.public ov00_0231AC94
.public ov00_0231ACA0
.public ov00_0231ACA8
.public ov00_0231ACB8
.public ov00_0231ACC8
.public ov00_0231ACE0
.public ov00_0231ACF8
.public ov00_0231AD04
.public ov00_0231AD14
.public ov00_0231AD20
.public ov00_0231AD34
.public ov00_0231AD38
.public ov00_0231AD64
.public ov00_0231AD6C
.public ov00_0231AD7C
.public ov00_0231AD84
.public ov00_0231AD8C
.public ov00_0231AD94
.public ov00_0231AD9C
.public ov00_0231ADA4
.public ov00_0231ADCC
.public ov00_0231ADD8
.public ov00_0231ADE4
.public ov00_0231ADF0
.public ov00_0231AE00
.public ov00_0231AE08
.public ov00_0231AE10
.public ov00_0231AE18
.public ov00_0231AE48
.public ov00_0231AE4C
.public ov00_0231AE54
.public ov00_0231AE64
.public ov00_0231AE6C
.public ov00_0231AE78
.public ov00_0231AE7C
.public ov00_0231AE84
.public ov00_0231AE8C
.public ov00_0231AE94
.public ov00_0231AE98
.public ov00_0231AEA0
.public ov00_0231AEA4
.public ov00_0231AEA8
.public ov00_0231AEB4
.public ov00_0231AEBC
.public ov00_0231AEC4
.public ov00_0231AECC
.public ov00_0231AED8
.public ov00_0231AEE4
.public ov00_0231AEEC
.public ov00_0231AEF4
.public ov00_0231AF00
.public ov00_0231AF0C
.public ov00_0231AF18
.public ov00_0231AF24
.public ov00_0231AF30
.public ov00_0231AF3C
.public ov00_0231AF4C
.public ov00_0231AF50
.public ov00_0231AF54
.public ov00_0231AF68
.public ov00_0231AF70
.public ov00_0231AF94
.public ov00_0231AFA0
.public ov00_0231AFB0
.public ov00_0231AFC0
.public ov00_0231AFC4
.public ov00_0231AFEC
.public ov00_0231B018
.public ov00_0231B020
.public ov00_0231B024
.public ov00_0231B02C
.public ov00_0231B03C
.public ov00_0231B07C
.public ov00_0231B0BC
.public ov00_0231B0C8
.public ov00_0231B0F0
.public ov00_0231B11C
.public ov00_0231B144
.public ov00_0231B178
.public ov00_0231B1AC
.public ov00_0231B1D4
.public ov00_0231B1E8
.public ov00_0231B1F8
.public ov00_0231B1FC
.public ov00_0231B200
.public ov00_0231B208
.public ov00_0231B210
.public ov00_0231B220
.public ov00_0231B254
.public ov00_0231B25C
.public ov00_0231B268
.public ov00_0231B274
.public ov00_0231B284
.public ov00_0231B28C
.public ov00_0231B290
.public ov00_0231B29C
.public ov00_0231B2A8
.public ov00_0231B2B4
.public ov00_0231B2C0
.public ov00_0231B2CC
.public ov00_0231B2D4
.public ov00_0231B2E0
.public ov00_0231B2EC
.public ov00_0231B2FC
.public ov00_0231B30C
.public ov00_0231B314
.public ov00_0231B31C
.public ov00_0231B324
.public ov00_0231B330
.public ov00_0231B338
.public ov00_0231B340
.public ov00_0231B350
.public ov00_0231B35C
.public ov00_0231B364
.public ov00_0231B36C
.public ov00_0231B39C
.public ov00_0231B3A4
.public ov00_0231B3D4
.public ov00_0231B3DC
.public ov00_0231B3E8
.public ov00_0231B3F0
.public ov00_0231B3F8
.public ov00_0231B418
.public ov00_0231B440
.public ov00_0231B454
.public ov00_0231B458
.public ov00_0231B468
.public ov00_0231B470
.public ov00_0231B4A0
.public ov00_0231B4AC
.public ov00_0231B4B4
.public ov00_0231B4C4
.public ov00_0231B4CC
.public ov00_0231B4D8
.public ov00_0231B4E4
.public ov00_0231B4F0
.public ov00_0231B4FC
.public ov00_0231B508
.public ov00_0231B518
.public ov00_0231B520
.public ov00_0231B528
.public ov00_0231B530
.public ov00_0231B53C
.public ov00_0231B544
.public ov00_0231B54C
.public ov00_0231B554
.public ov00_0231B55C
.public ov00_0231B564
.public ov00_0231B56C
.public ov00_0231B574
.public ov00_0231B57C
.public ov00_0231B584
.public ov00_0231B58C
.public ov00_0231B594
.public ov00_0231B59C
.public ov00_0231B5A4
.public ov00_0231B5B4
.public ov00_0231B5CC
.public ov00_0231B5D8
.public ov00_0231B5E0
.public ov00_0231B5F4
.public ov00_0231B608
.public ov00_0231B60C
.public ov00_0231B610
.public ov00_0231B614
.public ov00_0231B618
.public ov00_0231B628
.public ov00_0231B638
.public ov00_0231B644
.public ov00_0231B650
.public ov00_0231B660
.public ov00_0231B670
.public ov00_0231B680
.public ov00_0231B694
.public ov00_0231B6A4
.public ov00_0231B6B4
.public ov00_0231B6C4
.public ov00_0231B6D4
.public ov00_0231B6EC
.public ov00_0231B700
.public ov00_0231B714
.public ov00_0231B720
.public ov00_0231B738
.public ov00_0231B740
.public ov00_0231B750
.public ov00_0231B764
.public ov00_0231B778
.public ov00_0231B784
.public ov00_0231B788
.public ov00_0231B798
.public ov00_0231B7B4
.public ov00_0231B7BC
.public ov00_0231B7C4
.public ov00_0231B7CC
.public ov00_0231B7D4
.public ov00_0231B7DC
.public ov00_0231B7E4
.public ov00_0231B808
.public ov00_0231B810
.public ov00_0231B830
.public ov00_0231B838
.public ov00_0231B848
.public ov00_0231B84C
.public ov00_0231B884
.public ov00_0231B888
.public ov00_0231B890
.public ov00_0231B898
.public ov00_0231B8AC
.public ov00_0231B8B0
.public ov00_0231B8C0
.public ov00_0231B8C8
.public ov00_0231B8F8
.public ov00_0231B904
.public ov00_0231B914
.public ov00_0231B91C
.public ov00_0231B95C
.public ov00_0231B96C
.public ov00_0231B994
.public ov00_0231B9C8
.public ov00_0231B9F8
.public ov00_0231BA20
.public ov00_0231BA34
.public ov00_0231BA4C
.public ov00_0231BA50
.public ov00_0231BA7C
.public ov00_0231BA88
.public ov00_0231BA94
.public ov00_0231BAA0
.public ov00_0231BAB0
.public ov00_0231BABC
.public ov00_0231BAC4
.public ov00_0231BAD4
.public ov00_0231BADC
.public ov00_0231BAE8
.public ov00_0231BAF4
.public ov00_0231BB00
.public ov00_0231BB08
.public ov00_0231BB10
.public ov00_0231BB18
.public ov00_0231BB24
.public ov00_0231BB30
.public ov00_0231BB3C
.public ov00_0231BB44
.public ov00_0231BB50
.public ov00_0231BB5C
.public ov00_0231BB64
.public ov00_0231BB70
.public ov00_0231BB80
.public ov00_0231BB8C
.public ov00_0231BB94
.public ov00_0231BB98
.public ov00_0231BBA8
.public ov00_0231BBB8
.public ov00_0231BBC4
.public ov00_0231BBCC
.public ov00_0231BBF8
.public ov00_0231BC00
.public ov00_0231BC08
.public ov00_0231BC0C
.public ov00_0231BC10
.public ov00_0231BC18
.public ov00_0231BC24
.public ov00_0231BC30
.public ov00_0231BC3C
.public ov00_0231BC44
.public ov00_0231BC6C
.public ov00_0231BC70
.public ov00_0231BC74
.public ov00_0231BC7C
.public ov00_0231BC84
.public ov00_0231BC88
.public ov00_0231BC90
.public ov00_0231BC9C
.public ov00_0231BCA0
.public ov00_0231BCA8
.public ov00_0231BCAC
.public ov00_0231BCB4
.public ov00_0231BCBC
.public ov00_0231BCC0
.public ov00_0231BCC8
.public ov00_0231BCD0
.public ov00_0231BCDC
.public ov00_0231BCE4
.public ov00_0231BCE8
.public ov00_0231BCF0
.public ov00_0231BCF4
.public ov00_0231BD0C
.public ov00_0231BD14
.public ov00_0231BD20
.public ov00_0231BD28
.public ov00_0231BD58
.public ov00_0231BD68
.public ov00_0231BD70
.public ov00_0231BD78
.public ov00_0231BD80
.public ov00_0231BD8C
.public ov00_0231BD94
.public ov00_0231BDCC
.public ov00_0231BDDC
.public ov00_0231BE28
.public ov00_0231BE38
.public ov00_0231BE48
.public ov00_0231BE4C
.public ov00_0231BE50
.public ov00_0231BE58
.public ov00_0231BE5C
.public ov00_0231BE64
.public ov00_0231BE6C
.public ov00_0231BE74
.public ov00_0231BE78
.public ov00_0231BE7C
.public ov00_0231BE84
.public ov00_0231BE8C
.public ov00_0231BE94
.public ov00_0231BEA0
.public ov00_0231BEAC
.public ov00_0231BEB8
.public ov00_0231BEC4
.public ov00_0231BECC
.public ov00_0231BED4
.public ov00_0231BF24
.public ov00_023250C8
.public ov00_02326CB4
.public ov00_02326CBC
.public ov00_02326CC0
.public ov00_02326CD4
.public ov00_02326CD8
.public ov00_02326CDC
.public ov00_02326CF0
.public ov00_02326D0C
.public ov00_02326D54
.public ov00_02326D68
.public ov00_02326D6C
.public ov00_02326D74
.public ov00_02326D7C
.public ov00_02326D84
.public ov00_02326D88
.public ov00_02326DA0
.public ov00_02326DA8
.public ov00_02326E28
.public ov00_02326F28
.public ov00_02326F34
.public ov00_02326F48
.public ov00_02326F68
.public ov00_02326F88
.public ov00_02326F89
.public ov00_02326F90
.public ov00_023276C0
.public ov00_023276C8
.public ov00_023276CC
.public ov00_023276D4
.public ov00_023276E0
.public ov00_023276E5
.public ov00_023276E6
.public ov00_023276EA
.public ov00_023276EC
.public ov00_02327700
.public ov00_02327720
.public ov00_02327724
.public ov00_02327728
.public ov00_0232772C
.public ov00_02327730
.public ov00_02327734
.public ov00_0232773C
.public ov00_02327740
.public ov00_02327744
.public ov00_02327748
.public ov00_0232774C
.public ov00_02327758
.public ov00_02327764
.public ov00_02327778
.public ov00_02327790
.public ov00_023277AC
.public ov00_023277D0
.public ov00_023277D8
.public ov00_0232780C
.public ov00_02327818
.public ov00_02327830
.public ov00_0232788C
.public ov00_0232790C
.public ov00_02327910
.public ov00_02327928
.public ov00_02327940
.public ov00_02327944
.public ov00_02327948
.public ov00_0232794C
.public ov00_02327950
.public ov00_02327954
.public ov00_0232795C
.public ov00_02327960
.public ov00_02327964
.public ov00_02328224
.public ov00_02328228
.public ov00_02328240
.public ov00_02328260
.public ov00_02328320
.public ov00_02328340
.public ov00_02328348
.public ov00_0232834C
.public ov00_02328388
.public ov00_02328391
.public ov00_02328788
.public ov00_023287A0
.public ov00_023287B0
.public ov00_023287C4
.public ov00_02328800
.public ov00_02328804
.public ov00_02328844
.public ov00_02328884
.public ov00_02328888
.public ov00_0232888C
.public ov00_02328890
.public ov00_02328895
.public ov00_023288DC
.public ov00_023288E0
.public ov00_023288E4
.public ov00_023288E8
.public ov00_0232896C
.public ov00_023289A8
.public ov00_023289AC
.public ov00_023289B0
.public ov00_023289C0
.public ov00_023289C4
.public ov00_023289D8
.public ov00_023289DC
.public ov00_023289E0
.public ov00_023289E8
.public ov00_02328A18
.public ov00_02328B18
.public ov00_02328C18
.public qr2_buffer_add_int
.public qr2_init_socketa
.public qr2_keybuffer_add
.public qr2_parse_querya
.public qr2_register_clientmessage_callback
.public qr2_register_natneg_callback
.public qr2_register_publicaddress_callback
.public qr2_send_statechanged
.public qr2_shutdown
.public qr2_think
.public rand
.public recv
.public recvfrom
.public rewind
.public send
.public sendto
.public snprintf
.public socket
.public sprintf
.public srand
.public strcat
.public strchr
.public strcmp
.public strcpy
.public strcspn
.public strlen
.public strncmp
.public strncpy
.public strstr
.public strtol
.public strtoul
.public wcslen

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,4 @@
#pragma once
.public _fdiv
.public _ffix
.public _fflt
.public _s32_div_f
.public abs
.public ACTOR_FUNCTION_TABLE
.public AddItemToBagNoHeld
.public AnimationControlGetAllocForMaxFrame
@@ -17,12 +12,10 @@
.public CheckInventoryMenuField0x1A0
.public CheckParentMenuField0x1A0
.public CheckTeamMemberIdx
.public ClampComponentAbs
.public CloseAdvancedMenu
.public CloseAdvancedTextBox
.public CloseAreaNameBox
.public CloseCollectionMenu
.public CloseControlsChart
.public CloseDialogueBox
.public CloseInventoryMenu
.public CloseParentMenu
@@ -41,10 +34,8 @@
.public CreateAdvancedTextBox
.public CreateAreaNameBox
.public CreateCollectionMenu
.public CreateControlsChart
.public CreateDialogueBox
.public CreateInventoryMenuOuter
.public CreateJobSummary
.public CreateMonsterSummaryFromTeamMember
.public CreateParentMenu
.public CreateParentMenuFromStringIds
@@ -65,19 +56,18 @@
.public DrawTextInWindow
.public DungeonMoveToGroundMove
.public DungeonSwapIdxToId
.public EnableIqSkill
.public ENTITIES
.public EntryOverlay13
.public EuclideanNorm__020050B0
.public EVENTS
.public EXCLUSIVE_ITEM_REQUIREMENTS_PTR
.public EnableIqSkill
.public FemaleToMaleForm
.public FillOamAttributeInfo
.public FillPaletteDataRgba
.public FreeMissionRewardStructMain
.public FuncThatCallsRunNextOpcode
.public FX_Atan2Idx
.public GetAcceptedMission
.public GROUND_STATE_MAP
.public GROUND_STATE_PTRS
.public GROUND_WEATHER_TABLE
.public GetActiveRosterIndex
.public GetActiveTeamMember
.public GetActorMatchingStorageId
@@ -100,11 +90,8 @@
.public GetItemMoveId16
.public GetKeyboardStatus
.public GetKeyboardStringResult
.public GetLanguage
.public GetLearnableIqSkills
.public GetMainCharacter1
.public GetMaxReachedFloor
.public GetMissionRankWithCapAndModifiersAndCap
.public GetMoneyCarried
.public GetNameRaw
.public GetNameWithGender
@@ -119,27 +106,20 @@
.public GetSpriteIndex__02052724
.public GetStringFromFileVeneer
.public GetTeamMember
.public GetTopScreenOption
.public GetWindowContents
.public GetWindowIdPageStart
.public GetWindowIdSelectedItemOnPage
.public GetWindowIdSelectedMenuItemIdx
.public GpiCheckForBuddy
.public GROUND_STATE_MAP
.public GROUND_STATE_PTRS
.public GROUND_WEATHER_TABLE
.public GroundBg_FreeAll
.public GroundBg_Init
.public InitAnimationControlWithSet__0201C0B0
.public InitMenu
.public InitMenuWithWindowExtraInfo
.public InitMove
.public InitOamAdjustmentInfo
.public InitPortraitParams
.public InitPreprocessorArgs
.public InitRender3dElement64
.public InitScriptRoutine
.public IsAcceptedMissionSlotEmpty
.public IsAdvancedMenuActive
.public IsAdvancedMenuActive2
.public IsAdvancedTextBoxActive
@@ -147,7 +127,6 @@
.public IsBagFull
.public IsCollectionMenuActive
.public IsCollectionMenuState3
.public IsControlsChartActive
.public IsDialogueBoxActive
.public IsGummi
.public IsHM
@@ -155,7 +134,6 @@
.public IsInventoryMenuState3
.public IsMonsterOnTeam
.public IsParentMenuActive
.public IsScreenFadeInProgress
.public IsScrollBoxActive
.public IsSimpleMenuActive
.public ItemZInit
@@ -174,14 +152,84 @@
.public MaybeGetFormattedItemName
.public MaybeGetUncoloredFormattedItemName
.public MemAlloc
.public memcpy
.public Memcpy32
.public MemcpySimple
.public MemFree
.public MemZero
.public Memcpy32
.public MemcpySimple
.public NewWindowScreenCheck
.public OBJECT_FUNCTION_TABLE
.public OBJECTS
.public OBJECT_FUNCTION_TABLE
.public PERFORMER_FUNCTION_TABLE
.public PlaySeVolumeWrapper
.public PopInventoryMenuField0x1A3
.public PreprocessString
.public PreprocessStringFromId
.public PrintBadgeMark
.public PrintIqSkillsMenu
.public RandInt
.public RecolorNameString
.public RemoveItemNoHole
.public RemoveItemNoHoleCheck
.public Render3dElement64
.public ResumeAdvancedMenu
.public ResumeParentMenu
.public ReturnScriptMenuResult
.public ReturnScriptMenuResultZero
.public SETANIMATION_TABLE
.public SWAP_SHOP_CLUMSET_ONE_STAR_STR
.public SWAP_SHOP_CLUMSET_THREE_STAR_STR
.public SWAP_SHOP_CLUMSET_TWO_STAR_STR
.public SWAP_SHOP_INVENTORY_PTRS
.public SWAP_SHOP_ONE_STAR_STR
.public SWAP_SHOP_RED_TEXT_TAG_STR
.public SWAP_SHOP_THREE_STAR_STR
.public SWAP_SHOP_TWO_STAR_STR
.public SWAP_SHOP_UNCENTER_TEXT_TAG_STR
.public SaveScriptVariableValue
.public SaveScriptVariableValueBytes
.public ScriptStationLoadTalk
.public SetActorTalkMain
.public SetActorTalkMainAndActorTalkSub
.public SetActorTalkSub
.public SetAnimationForAnimationControl
.public SetAreaNameBoxState3
.public SetCollectionMenuField0x1A4
.public SetCollectionMenuField0x1C8
.public SetInventoryMenuState0
.public SetInventoryMenuState6
.public SetItemAcquired
.public SetNewFriendActor
.public SetParentMenuState7
.public SetSpriteIdForAnimationControl
.public SetWindowTitle
.public ShowDialogueBox
.public ShowKeyboard
.public ShowStringIdInDialogueBox
.public ShowStringInDialogueBox
.public SortItemsInBag
.public StrcmpMonsterName
.public StrcpyName
.public StrcpySimple
.public StringFromId
.public StrncpyName
.public StrncpySimple
.public StrncpySimpleNoPad
.public StrncpySimpleNoPadSafe
.public SwapShopFreeDoublePointer
.public SwitchAnimationControlToNextFrame
.public TEAM_INFO_BOX_DEFAULT_WINDOW_PARAMS
.public TEAM_MEMBER_TABLE_PTR
.public UnloadFile
.public UnlockRoutine
.public UpdateWindow
.public ValidateTeamMembers
.public WAN_TABLE
.public WorldMapSetCamera
.public WorldMapSetMode
.public ZeroInitMissionRewardDataStruct
.public _s32_div_f
.public abs
.public memcpy
.public ov10_022BCC60
.public ov10_022BCC7C
.public ov10_022BCCB0
@@ -212,13 +260,6 @@
.public ov10_022C3378
.public ov10_022C34F0
.public ov10_022C3890
.public ov11_022DC240
.public ov11_022DC368
.public ov11_022DC3A0
.public ov11_022DC3FC
.public ov11_022DC434
.public ov11_022DC46C
.public ov11_022DC494
.public ov11_022DC504
.public ov11_022DC934
.public ov11_022DC940
@@ -254,42 +295,31 @@
.public ov11_022E5EFC
.public ov11_022E6EE8
.public ov11_022E7FA8
.public ov11_022E8168
.public ov11_022E8340
.public ov11_022E83F8
.public ov11_022E84AC
.public ov11_022E9B84
.public ov11_022E9BD0
.public ov11_022E9C98
.public ov11_022E9CB0
.public ov11_022E9D10
.public ov11_022E9DE4
.public ov11_022E9E2C
.public ov11_022E9E74
.public ov11_022E9EBC
.public ov11_022E9F48
.public ov11_022E9FA4
.public ov11_022EA014
.public ov11_022EA920
.public ov11_022EA954
.public ov11_022EA990
.public ov11_022EA9E4
.public ov11_022EAA24
.public ov11_022EAF60
.public ov11_022EAFF8
.public ov11_022EB0C0
.public ov11_022EB0E4
.public ov11_022EB128
.public ov11_022EB2A4
.public ov11_022EB2F4
.public ov11_022EB3C8
.public ov11_022EBAA0
.public ov11_022EC240
.public ov11_022EC27C
.public ov11_022ED69C
.public ov11_022EDD14
.public ov11_022EDD20
.public ov11_022EDE64
.public ov11_022EE0C8
.public ov11_022EE138
.public ov11_022EE144
@@ -301,6 +331,32 @@
.public ov11_022EE230
.public ov11_022EE268
.public ov11_022EE2D0
.public ov11_0230CFF4
.public ov11_0230D000
.public ov11_0230D220
.public ov11_0230D318
.public ov11_0230D71C
.public ov11_0230D92C
.public ov11_0230E964
.public ov11_0230F138
.public ov11_0230F1EC
.public ov11_02310BDC
.public ov11_02310BF0
.public ov11_02310C04
.public ov11_023113E8
.public ov11_0231145C
.public ov11_023118E8
.public ov11_0231195C
.public ov11_02313DF4
.public ov11_02314670
.public ov11_02314684
.public ov11_023146B0
.public ov11_023146D4
.public ov11_023146F8
.public ov11_0231474C
.public ov11_0231598C
.public ov11_023159B0
.public ov11_023159CC
.public ov11_02320858
.public ov11_02320BE4
.public ov11_02320BF4
@@ -530,147 +586,6 @@
.public ov11_02322FD4
.public ov11_02322FE4
.public ov11_02322FF4
.public ov11_0232307C
.public ov11_0232308C
.public ov11_0232309C
.public ov11_023230AC
.public ov11_023230BC
.public ov11_023230CC
.public ov11_023230DC
.public ov11_023230EC
.public ov11_023230FC
.public ov11_0232310C
.public ov11_0232311C
.public ov11_0232312C
.public ov11_0232313C
.public ov11_0232314C
.public ov11_0232315C
.public ov11_0232316C
.public ov11_0232317C
.public ov11_0232318C
.public ov11_0232319C
.public ov11_023231AC
.public ov11_023231BC
.public ov11_023231E0
.public ov11_02323204
.public ov11_02323228
.public ov11_02323244
.public ov11_02323268
.public ov11_02323284
.public ov11_023232A8
.public ov11_023232BC
.public ov11_023232D8
.public ov11_023232FC
.public ov11_02323310
.public ov11_02323330
.public ov11_02323340
.public ov11_02323350
.public ov11_02323374
.public ov11_02323394
.public ov11_023233B0
.public ov11_023233E8
.public ov11_02323490
.public ov11_02323730
.public ov11_02323750
.public ov11_0232376C
.public ov11_02323788
.public ov11_023237AC
.public ov11_02323818
.public ov11_0232382C
.public ov11_02323840
.public ov11_0232385C
.public ov11_02323864
.public ov11_02323894
.public ov11_023238B0
.public ov11_023238CC
.public ov11_023238DC
.public ov11_02323920
.public ov11_0232393C
.public ov11_02323958
.public ov11_02323974
.public ov11_02323998
.public ov11_023239B4
.public ov11_023239C4
.public ov11_02323A04
.public ov11_02323A20
.public ov11_02323A3C
.public ov11_02323A58
.public ov11_02323A7C
.public ov11_02323A98
.public ov11_02323AA8
.public ov11_02323AE8
.public ov11_02323B04
.public ov11_02323B20
.public ov11_02323B3C
.public ov11_02323B60
.public ov11_02323B7C
.public ov11_02323B98
.public ov11_02323BBC
.public ov11_02323BD0
.public ov11_02323BD8
.public ov11_02323BE0
.public ov11_02323BE8
.public ov11_02323BF8
.public ov11_02323C38
.public ov11_02323C54
.public ov11_02323C8C
.public ov11_02323CAC
.public ov11_02323CC8
.public ov11_02323CD0
.public ov11_02323CEC
.public ov11_02323D0C
.public ov11_02323D2C
.public ov11_02323D60
.public ov11_02323D7C
.public ov11_02323D98
.public ov11_02323DB4
.public ov11_02323DD0
.public ov11_02323DEE
.public ov11_02323E2C
.public ov11_02323E4E
.public ov11_02323E70
.public ov11_02323E92
.public ov11_02323EBC
.public ov11_02323EFC
.public ov11_02323F40
.public ov11_02323F84
.public ov11_02323FD4
.public ov11_02324024
.public ov11_02324040
.public ov11_0232405C
.public ov11_02324078
.public ov11_02324094
.public ov11_023240B0
.public ov11_023240CC
.public ov11_023240E8
.public ov11_02324160
.public ov11_023241D8
.public ov11_02324258
.public ov11_023242D8
.public ov11_02324380
.public ov11_02324460
.public ov11_02324540
.public ov11_02324620
.public ov11_02324700
.public ov11_0232471C
.public ov11_02324738
.public ov11_02324754
.public ov11_023247E0
.public ov11_023248C0
.public ov11_02324B0C
.public ov11_02324B24
.public ov11_02324B3C
.public ov11_02324B54
.public ov11_02324B6C
.public ov11_02324B84
.public ov11_02324B9C
.public ov11_02324BB4
.public ov11_02324BCC
.public ov11_02324BDC
.public ov11_02324BF8
.public ov11_02324C1C
.public ov11_02324C30
.public ov11_02324C38
.public ov11_02324CBC
.public ov11_02324CC8
.public ov11_02324CD0
@@ -706,24 +621,6 @@
.public ov11_02324D90
.public ov11_02324D94
.public ov11_02324D98
.public ov11_02324DBC
.public ov11_02324DC0
.public ov11_02324DC4
.public ov11_02324DC8
.public ov11_02324DD4
.public ov11_02324DDC
.public ov11_02324DF0
.public ov11_02324DF8
.public ov11_02324E00
.public ov11_02324E08
.public ov11_02324E10
.public ov11_02324E18
.public ov11_02324E20
.public ov11_02324E28
.public ov11_02324E30
.public ov11_02324E34
.public ov11_02324E38
.public ov11_02324E78
.public ov11_023892A0
.public ov11_0238A020
.public ov11_0238A034
@@ -737,84 +634,20 @@
.public ov11_0238A080
.public ov11_0238A084
.public ov11_0238A088
.public ov11_0238A08C
.public ov11_0238A090
.public ov11_0238A094
.public ov11_0238A098
.public ov11_0238A130
.public ov11_0238A134
.public ov16_0238CC94
.public ov16_0238CCA8
.public ov16_0238CCBC
.public ov16_0238CCD8
.public ov16_0238CCF0
.public OVERLAY11_OVERLAY_LOAD_TABLE
.public OverlayIsLoaded
.public PERFORMER_FUNCTION_TABLE
.public PlaySeVolumeWrapper
.public PopInventoryMenuField0x1A3
.public PreprocessString
.public PreprocessStringFromId
.public PrintBadgeMark
.public PrintIqSkillsMenu
.public RandInt
.public RecolorNameString
.public RECYCLE_SHOP_OVERLAY_STATUS
.public RemoveItemNoHole
.public RemoveItemNoHoleCheck
.public Render3dElement64
.public ResumeAdvancedMenu
.public ResumeParentMenu
.public ReturnScriptMenuResult
.public ReturnScriptMenuResultZero
.public SaveScriptVariableValue
.public SaveScriptVariableValueBytes
.public ScriptStationLoadTalk
.public SentryUpdateDisplay
.public SetActorTalkMain
.public SetActorTalkMainAndActorTalkSub
.public SetActorTalkSub
.public SETANIMATION_TABLE
.public SetAnimationForAnimationControl
.public SetAreaNameBoxState3
.public SetCollectionMenuField0x1A4
.public SetCollectionMenuField0x1C8
.public SetInventoryMenuState0
.public SetInventoryMenuState6
.public SetItemAcquired
.public SetNewFriendActor
.public SetParentMenuState7
.public SetSpriteIdForAnimationControl
.public SetWindowTitle
.public ShowDialogueBox
.public ShowKeyboard
.public ShowStringIdInDialogueBox
.public ShowStringInDialogueBox
.public SortItemsInBag
.public SPINDA_CAFE_OVERLAY_STATUS
.public sprintf
.public strcat
.public StrcmpMonsterName
.public strcpy
.public StrcpyName
.public StrcpySimple
.public StringFromId
.public StrncpyName
.public StrncpySimple
.public StrncpySimpleNoPad
.public StrncpySimpleNoPadSafe
.public sub_020017EC
.public sub_0200302C
.public sub_020030FC
.public sub_020037A4
.public sub_0200514C
.public sub_02005430
.public sub_02005494
.public sub_020054C0
.public sub_020055C8
.public sub_02006DC8
.public sub_02008BA8
.public sub_02008F64
.public sub_02009120
.public sub_02009194
.public sub_020091B0
@@ -846,10 +679,6 @@
.public sub_0201E020
.public sub_0201E12C
.public sub_0201E7D8
.public sub_0201F2E4
.public sub_0201F324
.public sub_0201F348
.public sub_0201F36C
.public sub_02025304_JP
.public sub_020262E0
.public sub_020265A8
@@ -934,14 +763,8 @@
.public sub_02047148
.public sub_02047150
.public sub_02047188
.public sub_02048384
.public sub_020483B8
.public sub_020483D8
.public sub_02048764
.public sub_02048794
.public sub_0204AFD0
.public sub_0204CDCC
.public sub_0204CE00
.public sub_0204CF0C
.public sub_0204E210
.public sub_02052E2C
@@ -965,9 +788,6 @@
.public sub_0205882C
.public sub_02058AFC
.public sub_0205B028
.public sub_02061F44
.public sub_02061F90
.public sub_02062DB4
.public sub_02063830
.public sub_02064FFC
.public sub_02065014
@@ -983,14 +803,7 @@
.public sub_02067584
.public sub_02067664
.public sub_020676AC
.public sub_020698B8
.public sub_02069904
.public sub_0206A84C
.public sub_0206A878
.public sub_0206A8A0
.public sub_0206A96C
.public sub_0206A9DC
.public sub_0206AA40
.public sub_0206AA5C
.public sub_0206AB98
.public sub_0206ABB0
@@ -999,26 +812,4 @@
.public sub_0206B9DC
.public sub_0206BA5C
.public sub_0206C110
.public SWAP_SHOP_CLUMSET_ONE_STAR_STR
.public SWAP_SHOP_CLUMSET_THREE_STAR_STR
.public SWAP_SHOP_CLUMSET_TWO_STAR_STR
.public SWAP_SHOP_INVENTORY_PTRS
.public SWAP_SHOP_ONE_STAR_STR
.public SWAP_SHOP_RED_TEXT_TAG_STR
.public SWAP_SHOP_THREE_STAR_STR
.public SWAP_SHOP_TWO_STAR_STR
.public SWAP_SHOP_UNCENTER_TEXT_TAG_STR
.public SwapShopFreeDoublePointer
.public SwitchAnimationControlToNextFrame
.public TEAM_INFO_BOX_DEFAULT_WINDOW_PARAMS
.public TEAM_MEMBER_TABLE_PTR
.public TRIG_TABLE
.public UnloadFile
.public UnlockRoutine
.public UpdateWindow
.public ValidateTeamMembers
.public VEC_Distance
.public vsprintf
.public WAN_TABLE
.public WORLD_MAP_MODE
.public ZeroInitMissionRewardDataStruct

View File

@@ -0,0 +1,289 @@
#pragma once
.public AnimRelatedFunction__022F6F14
.public AppendStandardStringToMission
.public ClampComponentAbs
.public CloseAreaNameBox
.public CloseControlsChart
.public CreateAreaNameBox
.public CreateControlsChart
.public CreateJobSummary
.public Debug_FatalError
.public Debug_Print
.public DelayWteFree
.public DrawTextInWindow
.public EVENTS
.public EuclideanNorm__020050B0
.public FX_Atan2Idx
.public GROUND_WEATHER_TABLE
.public GetAcceptedMission
.public GetDungeonMode
.public GetExecuteSpecialEpisodeType
.public GetGameMode
.public GetHero
.public GetLanguage
.public GetMainCharacter1
.public GetMissionRankWithCapAndModifiersAndCap
.public GetPartner
.public GetTopScreenOption
.public GroundBg_FreeAll
.public GroundBg_Init
.public InitAnimDataFromOtherAnimDataVeneer
.public InitMenu
.public InitMenuWithWindowExtraInfo
.public IsAcceptedMissionSlotEmpty
.public IsAreaNameBoxActive
.public IsControlsChartActive
.public IsScreenFadeInProgress
.public LoadObjectAnimData
.public LoadScriptVariableValue
.public LoadWteFromRom
.public MemAlloc
.public MemFree
.public OverlayIsLoaded
.public RECYCLE_SHOP_OVERLAY_STATUS
.public SentryUpdateDisplay
.public SetAnimDataFields2
.public TRIG_TABLE
.public UpdateWindow
.public VEC_Distance
.public WORLD_MAP_MODE
.public _fdiv
.public _ffix
.public _fflt
.public _s32_div_f
.public ov11_022DC240
.public ov11_022DC368
.public ov11_022DC3A0
.public ov11_022DC3FC
.public ov11_022DC434
.public ov11_022DC46C
.public ov11_022DC494
.public ov11_022DC504
.public ov11_022E8168
.public ov11_022E9C98
.public ov11_022E9CB0
.public ov11_022E9D10
.public ov11_022EA014
.public ov11_022EAFF8
.public ov11_022EB0C0
.public ov11_022EB0E4
.public ov11_022EB2F4
.public ov11_022EB3C8
.public ov11_022EBAA0
.public ov11_022EC27C
.public ov11_022EDE64
.public ov11_022EE5E4
.public ov11_022EE5EC
.public ov11_022EE60C
.public ov11_022EE620
.public ov11_022EF2D4
.public ov11_022EF498
.public ov11_022EF53C
.public ov11_022EF70C
.public ov11_022EFB70
.public ov11_022EFD5C
.public ov11_022F03F8
.public ov11_022F040C
.public ov11_022F042C
.public ov11_022F1798
.public ov11_022F17B4
.public ov11_022F17E8
.public ov11_022F1E70
.public ov11_022F1E90
.public ov11_022F1EEC
.public ov11_022F4734
.public ov11_022F47BC
.public ov11_022F4974
.public ov11_022F5BBC
.public ov11_022F5C3C
.public ov11_022F5C94
.public ov11_022F6EFC
.public ov11_022F6FE0
.public ov11_022F7058
.public ov11_023230FC
.public ov11_0232310C
.public ov11_0232311C
.public ov11_0232312C
.public ov11_0232313C
.public ov11_0232314C
.public ov11_0232315C
.public ov11_0232316C
.public ov11_0232317C
.public ov11_0232318C
.public ov11_0232319C
.public ov11_023231AC
.public ov11_023231BC
.public ov11_023231E0
.public ov11_02323204
.public ov11_02323228
.public ov11_02323244
.public ov11_02323268
.public ov11_02323284
.public ov11_023232A8
.public ov11_023232BC
.public ov11_023232D8
.public ov11_023232FC
.public ov11_02323310
.public ov11_02323330
.public ov11_02323340
.public ov11_02323350
.public ov11_02323374
.public ov11_02323394
.public ov11_023233B0
.public ov11_023233E8
.public ov11_02323490
.public ov11_02323730
.public ov11_02323750
.public ov11_0232376C
.public ov11_02323788
.public ov11_023237AC
.public ov11_02323818
.public ov11_0232382C
.public ov11_02323840
.public ov11_0232385C
.public ov11_02323864
.public ov11_02323894
.public ov11_023238B0
.public ov11_023238CC
.public ov11_023238DC
.public ov11_02323920
.public ov11_0232393C
.public ov11_02323958
.public ov11_02323974
.public ov11_02323998
.public ov11_023239B4
.public ov11_023239C4
.public ov11_02323A04
.public ov11_02323A20
.public ov11_02323A3C
.public ov11_02323A58
.public ov11_02323A7C
.public ov11_02323A98
.public ov11_02323AA8
.public ov11_02323AE8
.public ov11_02323B04
.public ov11_02323B20
.public ov11_02323B3C
.public ov11_02323B60
.public ov11_02323B7C
.public ov11_02323B98
.public ov11_02323BBC
.public ov11_02323BD0
.public ov11_02323BD8
.public ov11_02323BE0
.public ov11_02323BE8
.public ov11_02323BF8
.public ov11_02323C38
.public ov11_02323C54
.public ov11_02323C8C
.public ov11_02323CAC
.public ov11_02323CC8
.public ov11_02323CD0
.public ov11_02323CEC
.public ov11_02323D0C
.public ov11_02323D2C
.public ov11_02323D60
.public ov11_02323D7C
.public ov11_02323D98
.public ov11_02323DB4
.public ov11_02323DD0
.public ov11_02323DEE
.public ov11_02323E2C
.public ov11_02323E4E
.public ov11_02323E70
.public ov11_02323E92
.public ov11_02323EBC
.public ov11_02323EFC
.public ov11_02323F40
.public ov11_02323F84
.public ov11_02323FD4
.public ov11_02324024
.public ov11_02324040
.public ov11_0232405C
.public ov11_02324078
.public ov11_02324094
.public ov11_023240B0
.public ov11_023240CC
.public ov11_023240E8
.public ov11_02324160
.public ov11_023241D8
.public ov11_02324258
.public ov11_023242D8
.public ov11_02324380
.public ov11_02324460
.public ov11_02324540
.public ov11_02324620
.public ov11_02324700
.public ov11_0232471C
.public ov11_02324738
.public ov11_02324754
.public ov11_023247E0
.public ov11_023248C0
.public ov11_02324B0C
.public ov11_02324B24
.public ov11_02324B3C
.public ov11_02324B54
.public ov11_02324B6C
.public ov11_02324B84
.public ov11_02324B9C
.public ov11_02324BB4
.public ov11_02324BCC
.public ov11_02324BDC
.public ov11_02324BF8
.public ov11_02324C1C
.public ov11_02324C30
.public ov11_02324C38
.public ov11_02324DBC
.public ov11_02324DC0
.public ov11_02324DC4
.public ov11_02324DC8
.public ov11_02324DD4
.public ov11_02324DDC
.public ov11_02324DF0
.public ov11_02324DF8
.public ov11_02324E00
.public ov11_02324E08
.public ov11_02324E10
.public ov11_02324E18
.public ov11_02324E20
.public ov11_02324E28
.public ov11_02324E30
.public ov11_02324E34
.public ov11_02324E38
.public ov11_02324E78
.public ov11_0238A094
.public ov11_0238A098
.public ov11_0238A130
.public ov11_0238A134
.public ov16_0238CCBC
.public ov16_0238CCD8
.public ov16_0238CCF0
.public sub_0200514C
.public sub_020055C8
.public sub_02008F64
.public sub_0201DF38
.public sub_0201E020
.public sub_0201E12C
.public sub_0201E7D8
.public sub_0201F2E4
.public sub_0201F324
.public sub_0201F348
.public sub_0201F36C
.public sub_0204707C
.public sub_02047150
.public sub_02048384
.public sub_020483B8
.public sub_020483D8
.public sub_0204AFD0
.public sub_0204CDCC
.public sub_0204CE00
.public sub_02061F44
.public sub_02061F90
.public sub_02062DB4
.public sub_020698B8
.public sub_02069904
.public sub_0206A878
.public sub_0206A8A0
.public sub_0206A96C
.public sub_0206A9DC
.public sub_0206AA40

File diff suppressed because it is too large Load Diff

4996
asm/main_020664B8.s Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1764,709 +1764,3 @@ _0206C08C:
.align 2, 0
_0206C0D4: .word 0x00000FFF
arm_func_end sub_0206BFA8
arm_func_start sub_0206C0D8
sub_0206C0D8: ; 0x0206C0D8
ldr r1, _0206C0E8 ; =_020B0B6C
ldrsh r1, [r1]
strh r1, [r0]
bx lr
.align 2, 0
_0206C0E8: .word _020B0B6C
arm_func_end sub_0206C0D8
arm_func_start sub_0206C0EC
sub_0206C0EC: ; 0x0206C0EC
ldr r1, _0206C0F8 ; =_020B0B6C
strh r0, [r1]
bx lr
.align 2, 0
_0206C0F8: .word _020B0B6C
arm_func_end sub_0206C0EC
arm_func_start sub_0206C0FC
sub_0206C0FC: ; 0x0206C0FC
ldr r1, _0206C10C ; =_020B0B70
ldrsh r1, [r1, #2]
strh r1, [r0]
bx lr
.align 2, 0
_0206C10C: .word _020B0B70
arm_func_end sub_0206C0FC
arm_func_start sub_0206C110
sub_0206C110: ; 0x0206C110
ldr r1, _0206C11C ; =_020B0B70
strh r0, [r1, #2]
bx lr
.align 2, 0
_0206C11C: .word _020B0B70
arm_func_end sub_0206C110
arm_func_start sub_0206C120
sub_0206C120: ; 0x0206C120
ldr r1, _0206C130 ; =_020B0B70
ldrsh r1, [r1]
strh r1, [r0]
bx lr
.align 2, 0
_0206C130: .word _020B0B70
arm_func_end sub_0206C120
arm_func_start sub_0206C134
sub_0206C134: ; 0x0206C134
ldr r1, _0206C140 ; =_020B0B70
strh r0, [r1]
bx lr
.align 2, 0
_0206C140: .word _020B0B70
arm_func_end sub_0206C134
arm_func_start sub_0206C144
sub_0206C144: ; 0x0206C144
ldr r3, _0206C160 ; =_020B0B74
mov r2, #8
_0206C14C:
ldrb r1, [r3], #1
subs r2, r2, #1
strb r1, [r0], #1
bne _0206C14C
bx lr
.align 2, 0
_0206C160: .word _020B0B74
arm_func_end sub_0206C144
arm_func_start sub_0206C164
sub_0206C164: ; 0x0206C164
ldr r3, _0206C180 ; =_020B0B74
mov r2, #8
_0206C16C:
ldrb r1, [r0], #1
subs r2, r2, #1
strb r1, [r3], #1
bne _0206C16C
bx lr
.align 2, 0
_0206C180: .word _020B0B74
arm_func_end sub_0206C164
arm_func_start sub_0206C184
sub_0206C184: ; 0x0206C184
ldr ip, _0206C198 ; =sub_0207A7EC
mov r0, #0
mov r2, r1
sub r1, r0, #1
bx ip
.align 2, 0
_0206C198: .word sub_0207A7EC
arm_func_end sub_0206C184
arm_func_start sub_0206C19C
sub_0206C19C: ; 0x0206C19C
stmdb sp!, {r4, lr}
mov r4, r1
mov r0, #0
mov r2, r4
sub r1, r0, #1
bl sub_0207A8F4
mov r0, r4
ldmia sp!, {r4, pc}
arm_func_end sub_0206C19C
arm_func_start sub_0206C1BC
sub_0206C1BC: ; 0x0206C1BC
bx lr
arm_func_end sub_0206C1BC
arm_func_start DseDriver_LoadDefaultSettings
DseDriver_LoadDefaultSettings: ; 0x0206C1C0
stmdb sp!, {r4, lr}
ldr r1, _0206C248 ; =DRIVER_WORK
mov r2, #1
movs r4, r0
strb r2, [r1, #0x3d]
subeq r0, r2, #0x100
ldmeqia sp!, {r4, pc}
mov r1, #0x40
bl DseMem_Clear
mov r0, #0
str r0, [r4, #4]
str r0, [r4, #8]
str r0, [r4, #0xc]
mov r1, #8
strb r1, [r4, #0x10]
strb r0, [r4, #0x11]
strh r0, [r4, #0x14]
mov r1, #0xf
strh r1, [r4, #0x16]
mov r1, #0x14
strb r1, [r4, #0x12]
mov r1, #4
strh r1, [r4, #0x18]
ldr r2, _0206C24C ; =_0206C184
strh r1, [r4, #0x1a]
ldr r1, _0206C250 ; =_0206C19C
str r2, [r4, #0x1c]
str r1, [r4, #0x20]
ldr r1, _0206C254 ; =sub_0206C1BC
str r0, [r4, #0x24]
str r1, [r4, #0x28]
str r1, [r4, #0x2c]
str r0, [r4, #0x30]
ldmia sp!, {r4, pc}
.align 2, 0
_0206C248: .word DRIVER_WORK
_0206C24C: .word sub_0206C184
_0206C250: .word sub_0206C19C
_0206C254: .word sub_0206C1BC
arm_func_end DseDriver_LoadDefaultSettings
arm_func_start DseDriver_IsSettingsValid
DseDriver_IsSettingsValid: ; 0x0206C258
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
bne _0206C27C
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_0206C27C:
tst r4, #3
beq _0206C29C
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_0206C29C:
ldr r0, [r4, #8]
mov r5, #0
cmp r0, #0
beq _0206C2B4
tst r0, #0xf
beq _0206C2B8
_0206C2B4:
orr r5, r5, #4
_0206C2B8:
ldr r0, [r4, #0xc]
cmp r0, #0
beq _0206C2CC
tst r0, #0xf
beq _0206C2D0
_0206C2CC:
orr r5, r5, #8
_0206C2D0:
ldrb r0, [r4, #0x11]
ldrb r1, [r4, #0x10]
cmp r0, #0
cmpne r0, #1
orrne r5, r5, #0x100
cmp r1, #4
ldrb r0, [r4, #0x12]
orrlo r5, r5, #0x200
cmp r0, r1
ldrsh r1, [r4, #0x14]
orrls r5, r5, #0x400
ldrsh r0, [r4, #0x16]
cmp r1, #0
orrne r5, r5, #0x4000
cmp r0, #0x10
orrge r5, r5, #0x8000
cmp r1, r0
orrgt r5, r5, #0xc000
cmp r5, #0
beq _0206C330
mov r1, r5
mvn r0, #0x17
mov r2, #0
bl Dse_SetError
_0206C330:
mov r0, r5
str r5, [r4]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end DseDriver_IsSettingsValid
arm_func_start DseDriver_ConfigureHeap
DseDriver_ConfigureHeap: ; 0x0206C33C
stmdb sp!, {r3, lr}
cmp r0, #0
strne r1, [r0, #8]
strne r2, [r0, #0xc]
movne r0, #0
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
arm_func_end DseDriver_ConfigureHeap
arm_func_start sub_0206C36C
sub_0206C36C: ; 0x0206C36C
stmdb sp!, {r3, lr}
cmp r0, #0
strneb r1, [r0, #0x11]
strneb r2, [r0, #0x10]
movne r0, #0
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
arm_func_end sub_0206C36C
arm_func_start sub_0206C39C
sub_0206C39C: ; 0x0206C39C
stmdb sp!, {r3, lr}
cmp r0, #0
bne _0206C3C0
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
_0206C3C0:
cmp r1, #0
movlt r1, #0
cmp r2, #0
strh r1, [r0, #0x14]
movlt r2, #0xf
strh r2, [r0, #0x16]
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end sub_0206C39C
arm_func_start DseDriver_Init
DseDriver_Init: ; 0x0206C3E0
stmdb sp!, {r4, lr}
ldr r1, _0206C5F8 ; =DRIVER_WORK
mov r4, r0
ldrsb r1, [r1]
cmp r1, #1
bne _0206C410
mov r1, #0
mov r2, r1
mvn r0, #0xbf
bl Dse_SetError
mvn r0, #0xbf
ldmia sp!, {r4, pc}
_0206C410:
bl DseDriver_IsSettingsValid
movs r1, r0
beq _0206C430
mvn r0, #0x1d
mov r2, #0
bl Dse_SetError
mvn r0, #0x1d
ldmia sp!, {r4, pc}
_0206C430:
bl OS_InitTick
mov r0, #0
mov r1, r0
bl OS_SetTick
bl OS_InitAlarm
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r3, #0
strh r3, [r0, #2]
str r3, [r0, #4]
str r3, [r0, #0x10]
mov r2, #0xff
mov r1, #1
strb r2, [r0, #0x3c]
strb r1, [r0, #0x3d]
rsb r1, r1, #0x1000
strh r1, [r0, #0x3e]
str r3, [r0, #0x2c]
ldrb r1, [r4, #0x11]
cmp r1, #0
ldreq r2, _0206C5FC ; =0x00002710
moveq r1, #0x64
ldrne r2, _0206C600 ; =0x0000414B
movne r1, #0x3c
strh r2, [r0, #0x28]
str r1, [r0, #0x30]
ldr r2, _0206C604 ; =0x00BC614E
ldr r1, _0206C5F8 ; =DRIVER_WORK
ldr r0, _0206C608 ; =_022B8330
str r2, [r1, #0x34]
ldrb r1, [r4, #0x11]
strb r1, [r0, #0xdd8]
bl sub_0206C814
ldr r1, _0206C5F8 ; =DRIVER_WORK
mov r0, #1
strb r0, [r1, #0x38]
mov r3, #2
ldr r2, _0206C60C ; =_020B1290
ldr r0, _0206C608 ; =_022B8330
strb r3, [r1, #0x39]
str r2, [r0, #0xed4]
mov r2, #0
str r2, [r1, #0x71c]
str r2, [r1, #0x720]
str r2, [r1, #0x724]
str r2, [r1, #0x728]
ldrb r1, [r4, #0x10]
ldr ip, _0206C610 ; =DRIVER_WORK
mov r3, r2
strb r1, [r0, #0xd10]
_0206C4F4:
add r2, r2, #1
strb r3, [ip, #0x674]
cmp r2, #0x80
add ip, ip, #1
blt _0206C4F4
ldr ip, _0206C5F8 ; =DRIVER_WORK
mov r0, #0x64
strb r0, [ip, #0x67b]
mov r0, #0x7f
strb r0, [ip, #0x67f]
mov r0, #0x40
strb r0, [ip, #0x67e]
add r0, r4, #0x28
ldr lr, _0206C614 ; =_022B734C
ldmia r0, {r0, r1, r2}
stmia lr, {r0, r1, r2}
ldrsh ip, [ip, #0x28]
ldr r1, _0206C608 ; =_022B8330
mov r2, #1
str r3, [r1, #0xec8]
str r2, [r1, #0xecc]
str r3, [r1, #0xebc]
ldr r0, _0206C618 ; =_022B9130
str r3, [r1, #0xec0]
sub r2, r2, #2
strh r2, [r0, #0xc4]
strh ip, [r0, #0xc6]
strb r3, [r1, #0xed0]
ldr r0, [r4, #8]
ldr r1, [r4, #0xc]
add r2, r4, #0x1c
bl DseMem_Init
ldrsh r0, [r4, #0x16]
add r0, r0, #1
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bl DseVoice_ResetHW
bl DseVoice_ResetAll
bl sub_02070124
bl sub_02075600
bl sub_020729A4
ldr r1, _0206C61C ; =_022B7331
mov r2, #1
mov r0, #0x7f
_0206C5A4:
add r2, r2, #1
strb r0, [r1, #0x40]
cmp r2, #0x10
add r1, r1, #1
blt _0206C5A4
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r1, #0
strb r1, [r0, #0x40]
bl DseDriver_StartMainThread
ldrb r0, [r4, #0x12]
bl DseSwd_SysInit
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r1, #1
strb r1, [r0]
mov r1, #0
strb r1, [r0, #1]
ldrh r0, [r4, #0x18]
ldrh r1, [r4, #0x1a]
bl DseSe_SysReset
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
_0206C5F8: .word DRIVER_WORK
_0206C5FC: .word 0x00002710
_0206C600: .word 0x0000414B
_0206C604: .word 0x00BC614E
_0206C608: .word _022B8330
_0206C60C: .word _020B1290
_0206C610: .word DRIVER_WORK
_0206C614: .word _022B734C
_0206C618: .word _022B9130
_0206C61C: .word _022B7331
arm_func_end DseDriver_Init
arm_func_start sub_0206C620
sub_0206C620: ; 0x0206C620
stmdb sp!, {r3, lr}
ldr r0, _0206C684 ; =DRIVER_WORK
ldrsb r0, [r0]
cmp r0, #0
mvneq r0, #0xc0
ldmeqia sp!, {r3, pc}
bl DseSwd_SysQuit
mov r0, #0
bl sub_0206C7F4
bl sub_020756E8
bl sub_02070158
bl sub_02070148
bl sub_02070EA0
bl DseVoice_ResetAll
bl DseMem_Quit
bl sub_0206C814
ldr r1, _0206C684 ; =DRIVER_WORK
mov r0, #0
strb r0, [r1]
strb r0, [r1, #1]
str r0, [r1, #0x2c]
str r0, [r1, #4]
str r0, [r1, #0x10]
strh r0, [r1, #2]
ldmia sp!, {r3, pc}
.align 2, 0
_0206C684: .word DRIVER_WORK
arm_func_end sub_0206C620
arm_func_start sub_0206C688
sub_0206C688: ; 0x0206C688
stmdb sp!, {r3, lr}
ldr r0, _0206C6B8 ; =DRIVER_WORK
ldrsb r1, [r0]
cmp r1, #0
ldrnesb r0, [r0, #1]
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0xc0
bl Dse_SetError
mvn r0, #0xc0
ldmia sp!, {r3, pc}
.align 2, 0
_0206C6B8: .word DRIVER_WORK
arm_func_end sub_0206C688
arm_func_start sub_0206C6BC
sub_0206C6BC: ; 0x0206C6BC
stmdb sp!, {r3, lr}
ldr r0, _0206C750 ; =DRIVER_WORK
ldrsb r1, [r0]
cmp r1, #0
bne _0206C6E8
mov r1, #0
mov r2, r1
mvn r0, #0xc0
bl Dse_SetError
mvn r0, #0xc0
ldmia sp!, {r3, pc}
_0206C6E8:
ldrsb r1, [r0, #1]
cmp r1, #1
moveq r0, #0
ldmeqia sp!, {r3, pc}
mov r1, #1
strb r1, [r0, #1]
bl sub_02070F4C
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #0
ldr r0, [r0, #0x664]
bl DseSequence_PauseList
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #0
ldr r0, [r0, #0x668]
bl DseSequence_PauseList
mov r0, #0
bl sub_0206F6FC
mov r0, #0
bl sub_02070188
mov r0, #0
bl DseVoice_ResetHW
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #2
strb r1, [r0, #0x38]
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
_0206C750: .word DRIVER_WORK
arm_func_end sub_0206C6BC
arm_func_start sub_0206C754
sub_0206C754: ; 0x0206C754
stmdb sp!, {r4, lr}
ldr r1, _0206C7F0 ; =DRIVER_WORK
mov r4, r0
ldrsb r0, [r1, #1]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #1
strb r2, [r1, #0x38]
ldrh r0, [r1, #0x3e]
mov r1, r4
tst r0, #0xf
ldr r0, _0206C7F0 ; =DRIVER_WORK
moveq r2, #0
mov r2, r2, lsl #0x18
ldr r0, [r0, #0x664]
mov r2, r2, asr #0x18
bl sub_0206DC78
ldr r0, _0206C7F0 ; =DRIVER_WORK
ldrh r0, [r0, #0x3e]
tst r0, #0xf0
movne r1, #1
ldr r0, _0206C7F0 ; =DRIVER_WORK
moveq r1, #0
mov r2, r1, lsl #0x18
ldr r0, [r0, #0x668]
mov r1, r4
mov r2, r2, asr #0x18
bl sub_0206DC78
mov r0, r4
bl sub_0206F774
mov r0, r4
bl sub_020701B0
ldr r0, _0206C7F0 ; =DRIVER_WORK
mov r1, #0
strb r1, [r0, #1]
bl DseDriver_StartTickTimer
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
_0206C7F0: .word DRIVER_WORK
arm_func_end sub_0206C754
arm_func_start sub_0206C7F4
sub_0206C7F4: ; 0x0206C7F4
stmdb sp!, {r4, lr}
mov r4, r0
bl DseBgm_StopAll
mov r0, r4
bl DseSe_StopAll
mov r0, r4
bl sub_0206F9A4
ldmia sp!, {r4, pc}
arm_func_end sub_0206C7F4
arm_func_start sub_0206C814
sub_0206C814: ; 0x0206C814
ldr r1, _0206C848 ; =DRIVER_WORK
mov r2, #0
str r2, [r1, #0x654]
str r2, [r1, #0x658]
ldr r0, _0206C84C ; =_022B8330
str r2, [r1, #0x65c]
str r2, [r0, #0xddc]
str r2, [r1, #0x660]
str r2, [r1, #0x664]
str r2, [r1, #0x668]
ldr ip, _0206C850 ; =DseBgm_SysSetupNoteList
str r2, [r1, #0x66c]
bx ip
.align 2, 0
_0206C848: .word DRIVER_WORK
_0206C84C: .word _022B8330
_0206C850: .word DseBgm_SysSetupNoteList
arm_func_end sub_0206C814
arm_func_start Dse_SetError
Dse_SetError: ; 0x0206C854
stmdb sp!, {r3, lr}
ldr r3, _0206C880 ; =DRIVER_WORK
stmib r3, {r0, r1, r2}
ldr ip, [r3, #0x1c]
cmp ip, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r2, _0206C884 ; =_022B7334
mov r3, r1
blx ip
ldmia sp!, {r3, pc}
.align 2, 0
_0206C880: .word DRIVER_WORK
_0206C884: .word _022B7334
arm_func_end Dse_SetError
arm_func_start Dse_SetError2
Dse_SetError2: ; 0x0206C888
stmdb sp!, {r3, lr}
ldr r3, _0206C8BC ; =DRIVER_WORK
str r0, [r3, #0x10]
str r1, [r3, #0x14]
str r2, [r3, #0x18]
ldr ip, [r3, #0x20]
cmp ip, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r2, _0206C8C0 ; =_022B7340
mov r3, r1
blx ip
ldmia sp!, {r3, pc}
.align 2, 0
_0206C8BC: .word DRIVER_WORK
_0206C8C0: .word _022B7340
arm_func_end Dse_SetError2
; https://decomp.me/scratch/C4osO
arm_func_start DseUtil_ByteSwap32
DseUtil_ByteSwap32: ; 0x0206C8C4
mov r3, r0, lsr #0x18
mov r2, r0, lsr #8
mov r1, r0, lsl #8
mov r0, r0, lsl #0x18
and r3, r3, #0xff
and r2, r2, #0xff00
orr r2, r3, r2
and r1, r1, #0xff0000
orr r1, r2, r1
and r0, r0, #0xff000000
orr r0, r1, r0
bx lr
arm_func_end DseUtil_ByteSwap32
arm_func_start DseUtil_GetRandomNumber
DseUtil_GetRandomNumber: ; 0x0206C8F4
ldr r1, _0206C914 ; =DRIVER_WORK
ldr r0, _0206C918 ; =0x00007FFF
ldr r2, [r1, #0x34]
eor r2, r2, r2, lsl #17
eor r2, r2, r2, asr #15
str r2, [r1, #0x34]
and r0, r2, r0
bx lr
.align 2, 0
_0206C914: .word DRIVER_WORK
_0206C918: .word 0x00007FFF
arm_func_end DseUtil_GetRandomNumber
; https://decomp.me/scratch/KrgBG
arm_func_start DseMem_Init
DseMem_Init: ; 0x0206C91C
mov ip, r1
tst r0, #0xf
bicne r0, r0, #0xf
ldr r1, _0206C980 ; =DRIVER_WORK
addne r0, r0, #0x10
subne ip, ip, #0x10
add r3, r0, ip
str r0, [r1, #0x6f4]
str r3, [r1, #0x6f8]
str ip, [r1, #0x6fc]
ldr r3, _0206C984 ; =0x74647373
mov r1, #0x82
str r3, [r0]
strb r1, [r0, #4]
mov r3, #0
strb r3, [r0, #5]
add r1, r0, #0x10
str r1, [r0, #8]
str r3, [r0, #0xc]
strb r3, [r0, #6]
ldr r3, _0206C988 ; =_022B7A30
ldmia r2, {r0, r1, r2}
stmia r3, {r0, r1, r2}
mov r0, ip
bx lr
.align 2, 0
_0206C980: .word DRIVER_WORK
_0206C984: .word 0x74647373
_0206C988: .word _022B7A30
arm_func_end DseMem_Init

602
asm/main_0206C1BC.s Normal file
View File

@@ -0,0 +1,602 @@
.include "asm/macros.inc"
.include "main_0206C1BC.inc"
.text
arm_func_start sub_0206C1BC
sub_0206C1BC: ; 0x0206C1BC
bx lr
arm_func_end sub_0206C1BC
arm_func_start DseDriver_LoadDefaultSettings
DseDriver_LoadDefaultSettings: ; 0x0206C1C0
stmdb sp!, {r4, lr}
ldr r1, _0206C248 ; =DRIVER_WORK
mov r2, #1
movs r4, r0
strb r2, [r1, #0x3d]
subeq r0, r2, #0x100
ldmeqia sp!, {r4, pc}
mov r1, #0x40
bl DseMem_Clear
mov r0, #0
str r0, [r4, #4]
str r0, [r4, #8]
str r0, [r4, #0xc]
mov r1, #8
strb r1, [r4, #0x10]
strb r0, [r4, #0x11]
strh r0, [r4, #0x14]
mov r1, #0xf
strh r1, [r4, #0x16]
mov r1, #0x14
strb r1, [r4, #0x12]
mov r1, #4
strh r1, [r4, #0x18]
ldr r2, _0206C24C ; =_0206C184
strh r1, [r4, #0x1a]
ldr r1, _0206C250 ; =_0206C19C
str r2, [r4, #0x1c]
str r1, [r4, #0x20]
ldr r1, _0206C254 ; =sub_0206C1BC
str r0, [r4, #0x24]
str r1, [r4, #0x28]
str r1, [r4, #0x2c]
str r0, [r4, #0x30]
ldmia sp!, {r4, pc}
.align 2, 0
_0206C248: .word DRIVER_WORK
_0206C24C: .word sub_0206C184
_0206C250: .word sub_0206C19C
_0206C254: .word sub_0206C1BC
arm_func_end DseDriver_LoadDefaultSettings
arm_func_start DseDriver_IsSettingsValid
DseDriver_IsSettingsValid: ; 0x0206C258
stmdb sp!, {r3, r4, r5, lr}
movs r4, r0
bne _0206C27C
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_0206C27C:
tst r4, #3
beq _0206C29C
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mov r0, #2
ldmia sp!, {r3, r4, r5, pc}
_0206C29C:
ldr r0, [r4, #8]
mov r5, #0
cmp r0, #0
beq _0206C2B4
tst r0, #0xf
beq _0206C2B8
_0206C2B4:
orr r5, r5, #4
_0206C2B8:
ldr r0, [r4, #0xc]
cmp r0, #0
beq _0206C2CC
tst r0, #0xf
beq _0206C2D0
_0206C2CC:
orr r5, r5, #8
_0206C2D0:
ldrb r0, [r4, #0x11]
ldrb r1, [r4, #0x10]
cmp r0, #0
cmpne r0, #1
orrne r5, r5, #0x100
cmp r1, #4
ldrb r0, [r4, #0x12]
orrlo r5, r5, #0x200
cmp r0, r1
ldrsh r1, [r4, #0x14]
orrls r5, r5, #0x400
ldrsh r0, [r4, #0x16]
cmp r1, #0
orrne r5, r5, #0x4000
cmp r0, #0x10
orrge r5, r5, #0x8000
cmp r1, r0
orrgt r5, r5, #0xc000
cmp r5, #0
beq _0206C330
mov r1, r5
mvn r0, #0x17
mov r2, #0
bl Dse_SetError
_0206C330:
mov r0, r5
str r5, [r4]
ldmia sp!, {r3, r4, r5, pc}
arm_func_end DseDriver_IsSettingsValid
arm_func_start DseDriver_ConfigureHeap
DseDriver_ConfigureHeap: ; 0x0206C33C
stmdb sp!, {r3, lr}
cmp r0, #0
strne r1, [r0, #8]
strne r2, [r0, #0xc]
movne r0, #0
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
arm_func_end DseDriver_ConfigureHeap
arm_func_start sub_0206C36C
sub_0206C36C: ; 0x0206C36C
stmdb sp!, {r3, lr}
cmp r0, #0
strneb r1, [r0, #0x11]
strneb r2, [r0, #0x10]
movne r0, #0
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
arm_func_end sub_0206C36C
arm_func_start sub_0206C39C
sub_0206C39C: ; 0x0206C39C
stmdb sp!, {r3, lr}
cmp r0, #0
bne _0206C3C0
mov r1, #0
mov r2, r1
mvn r0, #0x17
bl Dse_SetError
mvn r0, #0x17
ldmia sp!, {r3, pc}
_0206C3C0:
cmp r1, #0
movlt r1, #0
cmp r2, #0
strh r1, [r0, #0x14]
movlt r2, #0xf
strh r2, [r0, #0x16]
mov r0, #0
ldmia sp!, {r3, pc}
arm_func_end sub_0206C39C
arm_func_start DseDriver_Init
DseDriver_Init: ; 0x0206C3E0
stmdb sp!, {r4, lr}
ldr r1, _0206C5F8 ; =DRIVER_WORK
mov r4, r0
ldrsb r1, [r1]
cmp r1, #1
bne _0206C410
mov r1, #0
mov r2, r1
mvn r0, #0xbf
bl Dse_SetError
mvn r0, #0xbf
ldmia sp!, {r4, pc}
_0206C410:
bl DseDriver_IsSettingsValid
movs r1, r0
beq _0206C430
mvn r0, #0x1d
mov r2, #0
bl Dse_SetError
mvn r0, #0x1d
ldmia sp!, {r4, pc}
_0206C430:
bl OS_InitTick
mov r0, #0
mov r1, r0
bl OS_SetTick
bl OS_InitAlarm
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r3, #0
strh r3, [r0, #2]
str r3, [r0, #4]
str r3, [r0, #0x10]
mov r2, #0xff
mov r1, #1
strb r2, [r0, #0x3c]
strb r1, [r0, #0x3d]
rsb r1, r1, #0x1000
strh r1, [r0, #0x3e]
str r3, [r0, #0x2c]
ldrb r1, [r4, #0x11]
cmp r1, #0
ldreq r2, _0206C5FC ; =0x00002710
moveq r1, #0x64
ldrne r2, _0206C600 ; =0x0000414B
movne r1, #0x3c
strh r2, [r0, #0x28]
str r1, [r0, #0x30]
ldr r2, _0206C604 ; =0x00BC614E
ldr r1, _0206C5F8 ; =DRIVER_WORK
ldr r0, _0206C608 ; =_022B8330
str r2, [r1, #0x34]
ldrb r1, [r4, #0x11]
strb r1, [r0, #0xdd8]
bl sub_0206C814
ldr r1, _0206C5F8 ; =DRIVER_WORK
mov r0, #1
strb r0, [r1, #0x38]
mov r3, #2
ldr r2, _0206C60C ; =_020B1290
ldr r0, _0206C608 ; =_022B8330
strb r3, [r1, #0x39]
str r2, [r0, #0xed4]
mov r2, #0
str r2, [r1, #0x71c]
str r2, [r1, #0x720]
str r2, [r1, #0x724]
str r2, [r1, #0x728]
ldrb r1, [r4, #0x10]
ldr ip, _0206C610 ; =DRIVER_WORK
mov r3, r2
strb r1, [r0, #0xd10]
_0206C4F4:
add r2, r2, #1
strb r3, [ip, #0x674]
cmp r2, #0x80
add ip, ip, #1
blt _0206C4F4
ldr ip, _0206C5F8 ; =DRIVER_WORK
mov r0, #0x64
strb r0, [ip, #0x67b]
mov r0, #0x7f
strb r0, [ip, #0x67f]
mov r0, #0x40
strb r0, [ip, #0x67e]
add r0, r4, #0x28
ldr lr, _0206C614 ; =_022B734C
ldmia r0, {r0, r1, r2}
stmia lr, {r0, r1, r2}
ldrsh ip, [ip, #0x28]
ldr r1, _0206C608 ; =_022B8330
mov r2, #1
str r3, [r1, #0xec8]
str r2, [r1, #0xecc]
str r3, [r1, #0xebc]
ldr r0, _0206C618 ; =_022B9130
str r3, [r1, #0xec0]
sub r2, r2, #2
strh r2, [r0, #0xc4]
strh ip, [r0, #0xc6]
strb r3, [r1, #0xed0]
ldr r0, [r4, #8]
ldr r1, [r4, #0xc]
add r2, r4, #0x1c
bl DseMem_Init
ldrsh r0, [r4, #0x16]
add r0, r0, #1
mov r0, r0, lsl #0x10
mov r0, r0, asr #0x10
bl DseVoice_ResetHW
bl DseVoice_ResetAll
bl sub_02070124
bl sub_02075600
bl sub_020729A4
ldr r1, _0206C61C ; =_022B7331
mov r2, #1
mov r0, #0x7f
_0206C5A4:
add r2, r2, #1
strb r0, [r1, #0x40]
cmp r2, #0x10
add r1, r1, #1
blt _0206C5A4
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r1, #0
strb r1, [r0, #0x40]
bl DseDriver_StartMainThread
ldrb r0, [r4, #0x12]
bl DseSwd_SysInit
ldr r0, _0206C5F8 ; =DRIVER_WORK
mov r1, #1
strb r1, [r0]
mov r1, #0
strb r1, [r0, #1]
ldrh r0, [r4, #0x18]
ldrh r1, [r4, #0x1a]
bl DseSe_SysReset
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
_0206C5F8: .word DRIVER_WORK
_0206C5FC: .word 0x00002710
_0206C600: .word 0x0000414B
_0206C604: .word 0x00BC614E
_0206C608: .word _022B8330
_0206C60C: .word _020B1290
_0206C610: .word DRIVER_WORK
_0206C614: .word _022B734C
_0206C618: .word _022B9130
_0206C61C: .word _022B7331
arm_func_end DseDriver_Init
arm_func_start sub_0206C620
sub_0206C620: ; 0x0206C620
stmdb sp!, {r3, lr}
ldr r0, _0206C684 ; =DRIVER_WORK
ldrsb r0, [r0]
cmp r0, #0
mvneq r0, #0xc0
ldmeqia sp!, {r3, pc}
bl DseSwd_SysQuit
mov r0, #0
bl sub_0206C7F4
bl sub_020756E8
bl sub_02070158
bl sub_02070148
bl sub_02070EA0
bl DseVoice_ResetAll
bl DseMem_Quit
bl sub_0206C814
ldr r1, _0206C684 ; =DRIVER_WORK
mov r0, #0
strb r0, [r1]
strb r0, [r1, #1]
str r0, [r1, #0x2c]
str r0, [r1, #4]
str r0, [r1, #0x10]
strh r0, [r1, #2]
ldmia sp!, {r3, pc}
.align 2, 0
_0206C684: .word DRIVER_WORK
arm_func_end sub_0206C620
arm_func_start sub_0206C688
sub_0206C688: ; 0x0206C688
stmdb sp!, {r3, lr}
ldr r0, _0206C6B8 ; =DRIVER_WORK
ldrsb r1, [r0]
cmp r1, #0
ldrnesb r0, [r0, #1]
ldmneia sp!, {r3, pc}
mov r1, #0
mov r2, r1
mvn r0, #0xc0
bl Dse_SetError
mvn r0, #0xc0
ldmia sp!, {r3, pc}
.align 2, 0
_0206C6B8: .word DRIVER_WORK
arm_func_end sub_0206C688
arm_func_start sub_0206C6BC
sub_0206C6BC: ; 0x0206C6BC
stmdb sp!, {r3, lr}
ldr r0, _0206C750 ; =DRIVER_WORK
ldrsb r1, [r0]
cmp r1, #0
bne _0206C6E8
mov r1, #0
mov r2, r1
mvn r0, #0xc0
bl Dse_SetError
mvn r0, #0xc0
ldmia sp!, {r3, pc}
_0206C6E8:
ldrsb r1, [r0, #1]
cmp r1, #1
moveq r0, #0
ldmeqia sp!, {r3, pc}
mov r1, #1
strb r1, [r0, #1]
bl sub_02070F4C
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #0
ldr r0, [r0, #0x664]
bl DseSequence_PauseList
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #0
ldr r0, [r0, #0x668]
bl DseSequence_PauseList
mov r0, #0
bl sub_0206F6FC
mov r0, #0
bl sub_02070188
mov r0, #0
bl DseVoice_ResetHW
ldr r0, _0206C750 ; =DRIVER_WORK
mov r1, #2
strb r1, [r0, #0x38]
mov r0, #0
ldmia sp!, {r3, pc}
.align 2, 0
_0206C750: .word DRIVER_WORK
arm_func_end sub_0206C6BC
arm_func_start sub_0206C754
sub_0206C754: ; 0x0206C754
stmdb sp!, {r4, lr}
ldr r1, _0206C7F0 ; =DRIVER_WORK
mov r4, r0
ldrsb r0, [r1, #1]
cmp r0, #0
moveq r0, #0
ldmeqia sp!, {r4, pc}
mov r2, #1
strb r2, [r1, #0x38]
ldrh r0, [r1, #0x3e]
mov r1, r4
tst r0, #0xf
ldr r0, _0206C7F0 ; =DRIVER_WORK
moveq r2, #0
mov r2, r2, lsl #0x18
ldr r0, [r0, #0x664]
mov r2, r2, asr #0x18
bl sub_0206DC78
ldr r0, _0206C7F0 ; =DRIVER_WORK
ldrh r0, [r0, #0x3e]
tst r0, #0xf0
movne r1, #1
ldr r0, _0206C7F0 ; =DRIVER_WORK
moveq r1, #0
mov r2, r1, lsl #0x18
ldr r0, [r0, #0x668]
mov r1, r4
mov r2, r2, asr #0x18
bl sub_0206DC78
mov r0, r4
bl sub_0206F774
mov r0, r4
bl sub_020701B0
ldr r0, _0206C7F0 ; =DRIVER_WORK
mov r1, #0
strb r1, [r0, #1]
bl DseDriver_StartTickTimer
mov r0, #0
ldmia sp!, {r4, pc}
.align 2, 0
_0206C7F0: .word DRIVER_WORK
arm_func_end sub_0206C754
arm_func_start sub_0206C7F4
sub_0206C7F4: ; 0x0206C7F4
stmdb sp!, {r4, lr}
mov r4, r0
bl DseBgm_StopAll
mov r0, r4
bl DseSe_StopAll
mov r0, r4
bl sub_0206F9A4
ldmia sp!, {r4, pc}
arm_func_end sub_0206C7F4
arm_func_start sub_0206C814
sub_0206C814: ; 0x0206C814
ldr r1, _0206C848 ; =DRIVER_WORK
mov r2, #0
str r2, [r1, #0x654]
str r2, [r1, #0x658]
ldr r0, _0206C84C ; =_022B8330
str r2, [r1, #0x65c]
str r2, [r0, #0xddc]
str r2, [r1, #0x660]
str r2, [r1, #0x664]
str r2, [r1, #0x668]
ldr ip, _0206C850 ; =DseBgm_SysSetupNoteList
str r2, [r1, #0x66c]
bx ip
.align 2, 0
_0206C848: .word DRIVER_WORK
_0206C84C: .word _022B8330
_0206C850: .word DseBgm_SysSetupNoteList
arm_func_end sub_0206C814
arm_func_start Dse_SetError
Dse_SetError: ; 0x0206C854
stmdb sp!, {r3, lr}
ldr r3, _0206C880 ; =DRIVER_WORK
stmib r3, {r0, r1, r2}
ldr ip, [r3, #0x1c]
cmp ip, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r2, _0206C884 ; =_022B7334
mov r3, r1
blx ip
ldmia sp!, {r3, pc}
.align 2, 0
_0206C880: .word DRIVER_WORK
_0206C884: .word _022B7334
arm_func_end Dse_SetError
arm_func_start Dse_SetError2
Dse_SetError2: ; 0x0206C888
stmdb sp!, {r3, lr}
ldr r3, _0206C8BC ; =DRIVER_WORK
str r0, [r3, #0x10]
str r1, [r3, #0x14]
str r2, [r3, #0x18]
ldr ip, [r3, #0x20]
cmp ip, #0
ldmeqia sp!, {r3, pc}
mov r1, #0
ldr r2, _0206C8C0 ; =_022B7340
mov r3, r1
blx ip
ldmia sp!, {r3, pc}
.align 2, 0
_0206C8BC: .word DRIVER_WORK
_0206C8C0: .word _022B7340
arm_func_end Dse_SetError2
; https://decomp.me/scratch/C4osO
arm_func_start DseUtil_ByteSwap32
DseUtil_ByteSwap32: ; 0x0206C8C4
mov r3, r0, lsr #0x18
mov r2, r0, lsr #8
mov r1, r0, lsl #8
mov r0, r0, lsl #0x18
and r3, r3, #0xff
and r2, r2, #0xff00
orr r2, r3, r2
and r1, r1, #0xff0000
orr r1, r2, r1
and r0, r0, #0xff000000
orr r0, r1, r0
bx lr
arm_func_end DseUtil_ByteSwap32
arm_func_start DseUtil_GetRandomNumber
DseUtil_GetRandomNumber: ; 0x0206C8F4
ldr r1, _0206C914 ; =DRIVER_WORK
ldr r0, _0206C918 ; =0x00007FFF
ldr r2, [r1, #0x34]
eor r2, r2, r2, lsl #17
eor r2, r2, r2, asr #15
str r2, [r1, #0x34]
and r0, r2, r0
bx lr
.align 2, 0
_0206C914: .word DRIVER_WORK
_0206C918: .word 0x00007FFF
arm_func_end DseUtil_GetRandomNumber
; https://decomp.me/scratch/KrgBG
arm_func_start DseMem_Init
DseMem_Init: ; 0x0206C91C
mov ip, r1
tst r0, #0xf
bicne r0, r0, #0xf
ldr r1, _0206C980 ; =DRIVER_WORK
addne r0, r0, #0x10
subne ip, ip, #0x10
add r3, r0, ip
str r0, [r1, #0x6f4]
str r3, [r1, #0x6f8]
str ip, [r1, #0x6fc]
ldr r3, _0206C984 ; =0x74647373
mov r1, #0x82
str r3, [r0]
strb r1, [r0, #4]
mov r3, #0
strb r3, [r0, #5]
add r1, r0, #0x10
str r1, [r0, #8]
str r3, [r0, #0xc]
strb r3, [r0, #6]
ldr r3, _0206C988 ; =_022B7A30
ldmia r2, {r0, r1, r2}
stmia r3, {r0, r1, r2}
mov r0, ip
bx lr
.align 2, 0
_0206C980: .word DRIVER_WORK
_0206C984: .word 0x74647373
_0206C988: .word _022B7A30
arm_func_end DseMem_Init

File diff suppressed because it is too large Load Diff

58715
asm/overlay_00_022DB1A4.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

11931
asm/overlay_11_022E9B84.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

12109
asm/overlay_11_0230CCE0.s Normal file

File diff suppressed because it is too large Load Diff

17
include/main_020663C8.h Normal file
View File

@@ -0,0 +1,17 @@
#ifndef PMDSKY_MAIN_020663C8_H
#define PMDSKY_MAIN_020663C8_H
#include "util.h"
void sub_020663C8(s32 a, s32 b, s32 c, s32 d, s8 e);
void sub_020663DC(s32 a, s32 b, s32 c, s32 d, s32 e, u16 f);
void sub_02066408(s32 a, s32 b, s32 c, s32 d, s32 e, u16 f, s32 g);
s32 sub_02066434(s32 a);
void sub_0206645C(s32 a);
void sub_02066468(s32 a, s32 b);
void sub_02066478(s32 a, s32 b);
void sub_02066488(s32 a, s32 b, s32 c);
s32 sub_02066494(s32 a);
void sub_020664AC(s32 a);
#endif

22
include/main_0206C0D8.h Normal file
View File

@@ -0,0 +1,22 @@
#ifndef PMDSKY_MAIN_0206C0D8_H
#define PMDSKY_MAIN_0206C0D8_H
#include "util.h"
struct unk_020B0B70 {
s16 field_0x0;
s16 field_0x2;
};
void sub_0206C0D8(s16 *out);
void sub_0206C0EC(s16 v);
void sub_0206C0FC(s16 *out);
void sub_0206C110(s16 v);
void sub_0206C120(s16 *out);
void sub_0206C134(s16 v);
void sub_0206C144(u8 *dst);
void sub_0206C164(u8 *src);
void sub_0206C184(s32 unused, s32 a);
s32 sub_0206C19C(s32 unused, s32 a);
#endif

View File

@@ -0,0 +1,23 @@
#ifndef PMDSKY_OVERLAY_00_022DB0E0_H
#define PMDSKY_OVERLAY_00_022DB0E0_H
#include "util.h"
struct unk_022DB0E0 {
u32 field_0x0;
u32 field_0x4;
u32 field_0x8;
};
bool8 Dwci_Acc_SetMaskBits(u32 *p, u32 value, u32 shift, u32 mask);
u64 Dwci_Acc_GetUserId(struct unk_022DB0E0* a);
u32 Dwci_Acc_GetPlayerId(struct unk_022DB0E0* a);
u64 Dwci_Acc_GetFriendKey(struct unk_022DB0E0* a);
u32 Dwci_Acc_GetGsProfileId(struct unk_022DB0E0* a);
void Dwci_Acc_SetUserId(struct unk_022DB0E0* a, u32 lo, u32 hi);
void Dwci_Acc_SetPlayerId(struct unk_022DB0E0* a, u32 v);
void Dwci_Acc_SetFriendKey(struct unk_022DB0E0* a, u32 lo, u32 hi);
void Dwci_Acc_SetGsProfileId(struct unk_022DB0E0* a, u32 v);
u32 Dwci_Acc_GetFlags(struct unk_022DB0E0* a);
#endif

View File

@@ -0,0 +1,30 @@
#ifndef PMDSKY_OVERLAY_11_022E9A78_H
#define PMDSKY_OVERLAY_11_022E9A78_H
#include "util.h"
struct unk_02388FC0 {
bool8 field_0x0;
u8 field_0x1;
bool8 field_0x2;
u8 field_0x3;
u8 field_0x4[8];
s32 field_0xC;
};
struct unk_023890A0 {
u8 field_0x0[0x44];
};
void ov11_022E9A78(s32 a);
void ov11_022E9A90(s32 a);
void ov11_022E9AA8(s32 a);
void ov11_022E9AC0(s32 a);
void ov11_022E9AD8(s32 a);
void ov11_022E9AF0(s32 a, u8 b);
void ov11_022E9B0C(s32 a);
void ov11_022E9B24(s32 a);
void ov11_022E9B40(s32 a);
void ov11_022E9B5C(s32 a, s32 b, s32 c);
#endif

View File

@@ -0,0 +1,18 @@
#ifndef PMDSKY_OVERLAY_11_0230CB88_H
#define PMDSKY_OVERLAY_11_0230CB88_H
#include "util.h"
#include "main_020348E4.h"
void ov11_0230CB88(s32 a);
u32 LoadDuskullBankOverlay(void);
u32 LoadLuminousSpringOverlay(void);
void LoadChimechoAssemblyOverlay(s32 a);
void LoadElectivireLinkShopOverlay(s32 a);
void LoadSpindaCafeOverlayInit(void);
void LoadSpindaCafeOverlayResume(void);
bool8 IsSpindaCafeOverlaySuspended(void);
void LoadRecycleShopOverlayInit(void);
void LoadRecycleShopOverlayResume(void);
#endif

View File

@@ -369,10 +369,14 @@ Static main
Object asm/main_02065BD8.o
Object src/main_02065C48.o
Object asm/main_02065C84.o
Object src/main_020663C8.o
Object asm/main_020664B8.o
Object src/dungeon_init_2.o
Object asm/main_0206A750.o
Object src/main_0206A84C.o
Object asm/main_0206A878.o
Object src/main_0206C0D8.o
Object asm/main_0206C1BC.o
Object src/main_0206C98C.o
Object asm/main_0206C9BC.o
Object src/main_0207191C.o
@@ -545,6 +549,8 @@ Overlay OVY_0
{
After main
Object asm/overlay_00.o
Object src/overlay_00_022DB0E0.o
Object asm/overlay_00_022DB1A4.o
Object src/overlay_00_0230D388.o
Object asm/overlay_00_0230D398.o
Object src/overlay_00_0230E3E8.o
@@ -627,11 +633,15 @@ Overlay OVY_11
Object asm/overlay_11.o
Object src/overlay_11_022E96E4.o
Object asm/overlay_11_022E96F4.o
Object src/overlay_11_022E9A78.o
Object asm/overlay_11_022E9B84.o
Object src/ground_bg.o
Object asm/overlay_11_022ECD24_data.o
Object asm/overlay_11_022ECD24.o
Object src/ground_bg_1.o
Object asm/overlay_11_022EE5E4.o
Object src/overlay_11_0230CB88.o
Object asm/overlay_11_0230CCE0.o
}
Overlay OVY_12
{

81
src/main_020663C8.c Normal file
View File

@@ -0,0 +1,81 @@
#include "main_020663C8.h"
extern void sub_02046D20(s32 a);
extern s32 sub_02046C78(s32 a);
extern void sub_02046C30(s32 a, s32 b, s32 c);
extern void sub_02046BE8(s32 a, s32 b, s32 c);
extern void sub_02046BA0(s32 a);
extern s32 sub_02046B04(s32 a);
extern void sub_02046A20(s32 a, s32 b, s32 c, s32 d, s32 e, s32 f, s32 g);
extern void sub_02046A9C(s32 a, s32 b, s32 c, s32 d, s32 e);
void sub_020663C8(s32 a, s32 b, s32 c, s32 d, s8 e)
{
sub_02046A9C(a, b, c, d, e);
}
void sub_020663DC(s32 a, s32 b, s32 c, s32 d, s32 e, u16 f)
{
sub_02046A20(a, b, c, d, e, f, 0);
}
void sub_02066408(s32 a, s32 b, s32 c, s32 d, s32 e, u16 f, s32 g)
{
sub_02046A20(a, b, c, d, e, f, g);
}
s32 sub_02066434(s32 a)
{
s32 r = sub_02046B04(a);
if (r == -2) {
return 0x1F;
}
if (r == -1) {
return 0;
}
return r;
}
void sub_0206645C(s32 a)
{
sub_02046BA0(a);
}
void sub_02066468(s32 a, s32 b)
{
sub_02046BE8(a, b, 0);
}
void sub_02066478(s32 a, s32 b)
{
sub_02046C30(a, b, 0);
}
void sub_02066488(s32 a, s32 b, s32 c)
{
sub_02046BE8(a, b, c);
}
s32 sub_02066494(s32 a)
{
if (sub_02046C78(a) != 0) {
return 0x1F;
}
return 0;
}
void sub_020664AC(s32 a)
{
sub_02046D20(a);
}

73
src/main_0206C0D8.c Normal file
View File

@@ -0,0 +1,73 @@
#include "main_0206C0D8.h"
extern void sub_0207A8F4(s32 a, s32 b, s32 c);
extern void sub_0207A7EC(s32 a, s32 b, s32 c);
extern struct unk_020B0B70 _020B0B70;
extern s16 _020B0B6C;
extern u8 _020B0B74[8];
void sub_0206C0D8(s16 *out)
{
*out = _020B0B6C;
}
void sub_0206C0EC(s16 v)
{
_020B0B6C = v;
}
void sub_0206C0FC(s16 *out)
{
*out = _020B0B70.field_0x2;
}
void sub_0206C110(s16 v)
{
_020B0B70.field_0x2 = v;
}
void sub_0206C120(s16 *out)
{
*out = _020B0B70.field_0x0;
}
void sub_0206C134(s16 v)
{
_020B0B70.field_0x0 = v;
}
void sub_0206C144(u8 *dst)
{
u8 *src = _020B0B74;
u32 n = 8;
do {
*dst++ = *src++;
} while (--n != 0);
}
void sub_0206C164(u8 *src)
{
u8 *dst = _020B0B74;
u32 n = 8;
do {
*dst++ = *src++;
} while (--n != 0);
}
void sub_0206C184(s32 unused, s32 a)
{
sub_0207A7EC(0, -1, a);
}
s32 sub_0206C19C(s32 unused, s32 a)
{
sub_0207A8F4(0, -1, a);
return a;
}

61
src/overlay_00_022DB0E0.c Normal file
View File

@@ -0,0 +1,61 @@
#include "overlay_00_022DB0E0.h"
extern bool8 Dwci_Acc_SetMaskBits(u32 *p, u32 value, u32 shift, u32 mask);
bool8 Dwci_Acc_SetMaskBits(u32 *p, u32 value, u32 shift, u32 mask)
{
if ((value & ~mask) != 0) {
return FALSE;
}
*p = (*p & ~(mask << shift)) | (value << shift);
return TRUE;
}
u64 Dwci_Acc_GetUserId(struct unk_022DB0E0* a)
{
return ((u64) (a->field_0x0 & 0x7FF) << 32) | a->field_0x4;
}
u32 Dwci_Acc_GetPlayerId(struct unk_022DB0E0* a)
{
return a->field_0x8;
}
u64 Dwci_Acc_GetFriendKey(struct unk_022DB0E0* a)
{
return ((u64) a->field_0x8 << 32) | a->field_0x4;
}
u32 Dwci_Acc_GetGsProfileId(struct unk_022DB0E0* a)
{
return a->field_0x4;
}
void Dwci_Acc_SetUserId(struct unk_022DB0E0* a, u32 lo, u32 hi)
{
Dwci_Acc_SetMaskBits(&a->field_0x0, hi, 0, 0x7FF);
a->field_0x4 = lo;
}
void Dwci_Acc_SetPlayerId(struct unk_022DB0E0* a, u32 v)
{
a->field_0x8 = v;
}
void Dwci_Acc_SetFriendKey(struct unk_022DB0E0* a, u32 lo, u32 hi)
{
a->field_0x4 = lo;
a->field_0x8 = hi;
}
void Dwci_Acc_SetGsProfileId(struct unk_022DB0E0* a, u32 v)
{
a->field_0x4 = v;
}
u32 Dwci_Acc_GetFlags(struct unk_022DB0E0* a)
{
return (a->field_0x0 >> 11) & 0x1FFFFF;
}

72
src/overlay_11_022E9A78.c Normal file
View File

@@ -0,0 +1,72 @@
#include "overlay_11_022E9A78.h"
extern void sub_0200BBF8(struct unk_023890A0 *p, s32 a, s32 b, s32 c);
extern void sub_0200BB74(struct unk_023890A0 *p, s32 a, s32 b);
extern struct unk_023890A0 ov11_0238905C;
extern void sub_0200BB60(struct unk_023890A0 *p, s32 a);
extern struct unk_02388FC0 ov11_02388FC0;
extern void sub_0200B918(struct unk_023890A0 *p, s32 a);
extern struct unk_023890A0 ov11_023890A0;
extern struct unk_023890A0 ov11_023890E4;
extern void sub_0200B908(struct unk_023890A0 *p, s32 a);
void ov11_022E9A78(s32 a)
{
sub_0200B908(&ov11_023890E4, a);
}
void ov11_022E9A90(s32 a)
{
sub_0200B908(&ov11_023890A0, a);
}
void ov11_022E9AA8(s32 a)
{
sub_0200B918(&ov11_023890E4, a);
}
void ov11_022E9AC0(s32 a)
{
sub_0200B918(&ov11_023890A0, a);
}
void ov11_022E9AD8(s32 a)
{
ov11_02388FC0.field_0x0 = TRUE;
ov11_02388FC0.field_0xC = a;
}
void ov11_022E9AF0(s32 a, u8 b)
{
ov11_02388FC0.field_0x2 = TRUE;
ov11_02388FC0.field_0x3 = b;
ov11_02388FC0.field_0xC = a;
}
void ov11_022E9B0C(s32 a)
{
sub_0200BB60(&ov11_0238905C, a);
}
void ov11_022E9B24(s32 a)
{
sub_0200BB74(&ov11_0238905C, 1, a);
}
void ov11_022E9B40(s32 a)
{
sub_0200BB74(&ov11_0238905C, 2, a);
}
void ov11_022E9B5C(s32 a, s32 b, s32 c)
{
sub_0200BBF8(&ov11_0238905C, a, b, c);
}

99
src/overlay_11_0230CB88.c Normal file
View File

@@ -0,0 +1,99 @@
#include "overlay_11_0230CB88.h"
extern struct struct_1 ov11_023230DC;
extern u32 sub_02034840(struct struct_1 *p);
extern struct struct_1 ov11_023230EC;
extern bool8 RECYCLE_SHOP_OVERLAY_STATUS;
extern void sub_020017EC(void);
extern struct struct_1 ov11_023230BC;
extern struct struct_1 ov11_023230CC;
extern bool8 SPINDA_CAFE_OVERLAY_STATUS;
extern struct struct_1 ov11_023230AC;
extern s32 ov11_0238A090;
extern struct struct_1 ov11_0232309C;
extern s32 ov11_0238A08C;
extern struct struct_1 ov11_0232308C;
extern struct struct_1 ov11_0232307C;
extern u32 InitMenu(struct struct_1 *dst);
extern void EntryOverlay13(s32 a);
extern struct struct_1 OVERLAY11_OVERLAY_LOAD_TABLE;
void ov11_0230CB88(s32 a)
{
if (InitMenu(&OVERLAY11_OVERLAY_LOAD_TABLE)) {
EntryOverlay13(a);
}
}
u32 LoadDuskullBankOverlay(void)
{
return InitMenu(&ov11_0232307C);
}
u32 LoadLuminousSpringOverlay(void)
{
return InitMenu(&ov11_0232308C);
}
void LoadChimechoAssemblyOverlay(s32 a)
{
if (InitMenu(&ov11_0232309C)) {
ov11_0238A08C = a;
}
}
void LoadElectivireLinkShopOverlay(s32 a)
{
if (InitMenu(&ov11_023230AC)) {
ov11_0238A090 = a;
}
}
void LoadSpindaCafeOverlayInit(void)
{
InitMenu(&ov11_023230CC);
SPINDA_CAFE_OVERLAY_STATUS = FALSE;
}
void LoadSpindaCafeOverlayResume(void)
{
InitMenu(&ov11_023230BC);
SPINDA_CAFE_OVERLAY_STATUS = FALSE;
}
bool8 IsSpindaCafeOverlaySuspended(void)
{
return SPINDA_CAFE_OVERLAY_STATUS;
}
void LoadRecycleShopOverlayInit(void)
{
sub_020017EC();
InitMenu(&ov11_023230EC);
RECYCLE_SHOP_OVERLAY_STATUS = FALSE;
}
void LoadRecycleShopOverlayResume(void)
{
if (!sub_02034840(&ov11_023230EC)) {
InitMenu(&ov11_023230DC);
}
RECYCLE_SHOP_OVERLAY_STATUS = FALSE;
}