mirror of
https://github.com/pret/pmd-sky.git
synced 2026-03-21 17:25:15 -05:00
Synced from pmdsky-debug
This commit is contained in:
parent
c133dba50c
commit
e6cfeaa6bc
|
|
@ -1,36 +1,4 @@
|
|||
#pragma once
|
||||
.public ArrayCopy16
|
||||
.public ArrayCopy32
|
||||
.public ArrayCopy32Fast
|
||||
.public ArrayFill16
|
||||
.public ArrayFill32
|
||||
.public ArrayFill32Fast
|
||||
.public CRYPTO_RC4Init
|
||||
.public Debug_GetDebugFlag
|
||||
.public EnableIrqFlag
|
||||
.public FileInit
|
||||
.public G3X_Reset
|
||||
.public GetDsFirmwareUserSettings
|
||||
.public GetFadeStatus
|
||||
.public GetLanguage
|
||||
.public GetProcessorMode
|
||||
.public HardwareInterrupt
|
||||
.public LoadOverlay
|
||||
.public MemAlloc
|
||||
.public MemFree
|
||||
.public MemZero
|
||||
.public MemcpyFast
|
||||
.public MemcpySimple
|
||||
.public MemsetFast
|
||||
.public OSi_ReferSymbol
|
||||
.public PlayBgmByIdVeneer
|
||||
.public RandInt
|
||||
.public SVC_WaitByLoop
|
||||
.public SetIrqFlag
|
||||
.public StartThread
|
||||
.public ThreadExit
|
||||
.public UnloadOverlay
|
||||
.public WaitForever2
|
||||
.public _02000BDC
|
||||
.public _02000BF4
|
||||
.public _02000C1C
|
||||
|
|
@ -52,10 +20,34 @@
|
|||
.public _start_AutoloadDoneCallback
|
||||
.public _u32_div_f
|
||||
.public abs
|
||||
.public ArrayCopy16
|
||||
.public ArrayCopy32
|
||||
.public ArrayCopy32Fast
|
||||
.public ArrayFill16
|
||||
.public ArrayFill32
|
||||
.public ArrayFill32Fast
|
||||
.public CRYPTO_RC4Init
|
||||
.public Debug_GetDebugFlag
|
||||
.public EnableIrqFlag
|
||||
.public FileInit
|
||||
.public G3X_Reset
|
||||
.public GetDsFirmwareUserSettings
|
||||
.public GetFadeStatus
|
||||
.public GetLanguage
|
||||
.public GetProcessorMode
|
||||
.public HardwareInterrupt
|
||||
.public LoadOverlay
|
||||
.public MemAlloc
|
||||
.public memcmp
|
||||
.public memcpy
|
||||
.public MemcpyFast
|
||||
.public MemcpySimple
|
||||
.public MemFree
|
||||
.public memmove
|
||||
.public memset
|
||||
.public MemsetFast
|
||||
.public MemZero
|
||||
.public OSi_ReferSymbol
|
||||
.public ov00_0230E074
|
||||
.public ov00_0230E098
|
||||
.public ov00_0230E0B0
|
||||
|
|
@ -1023,8 +1015,12 @@
|
|||
.public ov01_02337914
|
||||
.public ov01_0233AE64
|
||||
.public ov02_02329520
|
||||
.public PlayBgmByIdVeneer
|
||||
.public RandInt
|
||||
.public SetIrqFlag
|
||||
.public snprintf
|
||||
.public sprintf
|
||||
.public StartThread
|
||||
.public strcat
|
||||
.public strchr
|
||||
.public strcmp
|
||||
|
|
@ -1177,4 +1173,8 @@
|
|||
.public sub_0208B200
|
||||
.public sub_0208B298
|
||||
.public sub_0208B360
|
||||
.public SVC_WaitByLoop
|
||||
.public ThreadExit
|
||||
.public UnloadOverlay
|
||||
.public WaitForever2
|
||||
.public wcslen
|
||||
|
|
|
|||
|
|
@ -1,4 +1,10 @@
|
|||
#pragma once
|
||||
.public _020A1870
|
||||
.public _020A548A
|
||||
.public _020A5490
|
||||
.public _fdiv
|
||||
.public _ffix
|
||||
.public _fflt
|
||||
.public AddBulkItemToStorage
|
||||
.public AddMissionToJobList
|
||||
.public AllocAndInitPartnerFollowDataAndLiveActorList
|
||||
|
|
@ -34,7 +40,6 @@
|
|||
.public FileRom_Veneer_FileInit
|
||||
.public FreeTeamStats
|
||||
.public G3X_Reset
|
||||
.public GROUND_MEMORY_ARENA_1
|
||||
.public GenerateCroagunkItems
|
||||
.public GenerateDailyMissions
|
||||
.public GenerateKecleonItems1
|
||||
|
|
@ -70,6 +75,7 @@
|
|||
.public GetTalkLine
|
||||
.public GetTeamMember
|
||||
.public GetType
|
||||
.public GROUND_MEMORY_ARENA_1
|
||||
.public IncrementNbBigTreasureWins
|
||||
.public IncrementNbDungeonsCleared
|
||||
.public IncrementNbSkyGiftsSent
|
||||
|
|
@ -90,72 +96,17 @@
|
|||
.public IsStorageFull
|
||||
.public ItemAtTableIdx
|
||||
.public KeyWaitInit
|
||||
.public LOCK_NOTIFY_ARRAY
|
||||
.public LoadFileFromRom
|
||||
.public LoadOverlay
|
||||
.public LoadScriptVariableValue
|
||||
.public LoadScriptVariableValueAtIndex
|
||||
.public LoadScriptVariableValueSum
|
||||
.public LOCK_NOTIFY_ARRAY
|
||||
.public MemAlloc
|
||||
.public MemArenaAlloc
|
||||
.public MemFree
|
||||
.public MemZero
|
||||
.public MemsetSimple
|
||||
.public OVERLAY11_DEBUG_STRINGS
|
||||
.public PlayBgmByIdVeneer
|
||||
.public PlayBgmByIdVolumeVeneer
|
||||
.public PlaySeByIdVolumeWrapper
|
||||
.public PreprocessString
|
||||
.public PreprocessStringFromId
|
||||
.public RECRUITMENT_TABLE_LEVELS
|
||||
.public RECRUITMENT_TABLE_LOCATIONS
|
||||
.public RECRUITMENT_TABLE_SPECIES
|
||||
.public RandInt
|
||||
.public RandRange
|
||||
.public RandomizeDemoActors
|
||||
.public RemoveBulkItemInStorage
|
||||
.public RemoveItemNoHole
|
||||
.public SCRIPT_COMMAND_PARSING_DATA
|
||||
.public SCRIPT_OP_CODES
|
||||
.public SaveScriptVariableValue
|
||||
.public SaveScriptVariableValueAtIndex
|
||||
.public SetActorTalkMain
|
||||
.public SetActorTalkSub
|
||||
.public SetAdventureLogCompleted
|
||||
.public SetBaseStatsMovesGroundMonster
|
||||
.public SetDungeonConquest
|
||||
.public SetEnterDungeon
|
||||
.public SetMemAllocatorParams
|
||||
.public SetPortraitEmotion
|
||||
.public SetPortraitLayout
|
||||
.public SetPortraitOffset
|
||||
.public SetScenarioScriptVar
|
||||
.public SetTeamSetupHeroAndPartnerOnly
|
||||
.public SetTeamSetupHeroOnly
|
||||
.public SetupAndShowKeyboard
|
||||
.public ShowPortraitInPortraitBox
|
||||
.public ShowStringIdInDialogueBox
|
||||
.public SpecialProcAddItemToBag
|
||||
.public StatusUpdate
|
||||
.public StrcpyName
|
||||
.public StrncpyName
|
||||
.public UNIONALL_RAM_ADDRESS
|
||||
.public UnloadFile
|
||||
.public UnloadOverlay
|
||||
.public UnlockActorRoutines
|
||||
.public UnlockMainRoutine
|
||||
.public UnlockObjectRoutines
|
||||
.public UnlockPerformerRoutines
|
||||
.public UpdateTeamStats
|
||||
.public WorldMapSetCamera
|
||||
.public WorldMapSetMode
|
||||
.public ZinitScriptVariable
|
||||
.public _020A1870
|
||||
.public _020A548A
|
||||
.public _020A5490
|
||||
.public _fdiv
|
||||
.public _ffix
|
||||
.public _fflt
|
||||
.public MemZero
|
||||
.public ov10_022BDB54
|
||||
.public ov10_022BDB60
|
||||
.public ov10_022BDBA4
|
||||
|
|
@ -510,7 +461,45 @@
|
|||
.public ov11_023891F8
|
||||
.public ov28_0238A140
|
||||
.public ov28_0238A468
|
||||
.public OVERLAY11_DEBUG_STRINGS
|
||||
.public PlayBgmByIdVeneer
|
||||
.public PlayBgmByIdVolumeVeneer
|
||||
.public PlaySeByIdVolumeWrapper
|
||||
.public PreprocessString
|
||||
.public PreprocessStringFromId
|
||||
.public RandInt
|
||||
.public RandomizeDemoActors
|
||||
.public RandRange
|
||||
.public RECRUITMENT_TABLE_LEVELS
|
||||
.public RECRUITMENT_TABLE_LOCATIONS
|
||||
.public RECRUITMENT_TABLE_SPECIES
|
||||
.public RemoveBulkItemInStorage
|
||||
.public RemoveItemNoHole
|
||||
.public SaveScriptVariableValue
|
||||
.public SaveScriptVariableValueAtIndex
|
||||
.public SCRIPT_COMMAND_PARSING_DATA
|
||||
.public SCRIPT_OP_CODES
|
||||
.public SetActorTalkMain
|
||||
.public SetActorTalkSub
|
||||
.public SetAdventureLogCompleted
|
||||
.public SetBaseStatsMovesGroundMonster
|
||||
.public SetDungeonConquest
|
||||
.public SetEnterDungeon
|
||||
.public SetMemAllocatorParams
|
||||
.public SetPortraitEmotion
|
||||
.public SetPortraitLayout
|
||||
.public SetPortraitOffset
|
||||
.public SetScenarioScriptVar
|
||||
.public SetTeamSetupHeroAndPartnerOnly
|
||||
.public SetTeamSetupHeroOnly
|
||||
.public SetupAndShowKeyboard
|
||||
.public ShowPortraitInPortraitBox
|
||||
.public ShowStringIdInDialogueBox
|
||||
.public SpecialProcAddItemToBag
|
||||
.public sprintf
|
||||
.public StatusUpdate
|
||||
.public StrcpyName
|
||||
.public StrncpyName
|
||||
.public sub_020012D8
|
||||
.public sub_020017B4
|
||||
.public sub_0200238C
|
||||
|
|
@ -715,4 +704,15 @@
|
|||
.public sub_0206C120
|
||||
.public sub_0206C134
|
||||
.public sub_0206C144
|
||||
.public sub_0206C164
|
||||
.public sub_0206C164
|
||||
.public UNIONALL_RAM_ADDRESS
|
||||
.public UnloadFile
|
||||
.public UnloadOverlay
|
||||
.public UnlockActorRoutines
|
||||
.public UnlockMainRoutine
|
||||
.public UnlockObjectRoutines
|
||||
.public UnlockPerformerRoutines
|
||||
.public UpdateTeamStats
|
||||
.public WorldMapSetCamera
|
||||
.public WorldMapSetMode
|
||||
.public ZinitScriptVariable
|
||||
|
|
|
|||
|
|
@ -2,16 +2,13 @@
|
|||
.public BmaLayerNrlDecompressor
|
||||
.public DecompressAtNormalVeneer
|
||||
.public GetAtSize
|
||||
.public GroundBg_CloseOpenedFiles
|
||||
.public GroundBg_Init
|
||||
.public LoadBackgroundAttributes
|
||||
.public LoadFileFromRom
|
||||
.public MemAlloc
|
||||
.public MemFree
|
||||
.public Memcpy16
|
||||
.public PointsToZero
|
||||
.public UnloadFile
|
||||
.public ZInit8
|
||||
.public GroundBg_Init
|
||||
.public GroundBg_CloseOpenedFiles
|
||||
.public MemFree
|
||||
.public ov11_022EC08C
|
||||
.public ov11_022EE620
|
||||
.public ov11_022EE8CC
|
||||
|
|
@ -23,6 +20,7 @@
|
|||
.public ov11_02320C28
|
||||
.public ov11_02320C80
|
||||
.public ov11_02324CBC
|
||||
.public PointsToZero
|
||||
.public sprintf
|
||||
.public sub_0200A504
|
||||
.public sub_0200A590
|
||||
|
|
@ -33,3 +31,5 @@
|
|||
.public sub_020163E4
|
||||
.public sub_0201641C
|
||||
.public sub_02016468
|
||||
.public UnloadFile
|
||||
.public ZInit8
|
||||
|
|
|
|||
|
|
@ -1,4 +1,9 @@
|
|||
#pragma once
|
||||
.public _fdiv
|
||||
.public _ffix
|
||||
.public _fflt
|
||||
.public _s32_div_f
|
||||
.public abs
|
||||
.public ACTOR_FUNCTION_TABLE
|
||||
.public AddItemToBagNoHeld
|
||||
.public AnimationControlGetAllocForMaxFrame
|
||||
|
|
@ -52,17 +57,14 @@
|
|||
.public DrawTextInWindow
|
||||
.public DungeonMoveToGroundMove
|
||||
.public DungeonSwapIdxToId
|
||||
.public ENTITIES
|
||||
.public EVENTS
|
||||
.public EnableIqSkill
|
||||
.public ENTITIES
|
||||
.public EntryOverlay13
|
||||
.public EuclideanNorm__020050B0
|
||||
.public FX_Atan2Idx
|
||||
.public EVENTS
|
||||
.public FemaleToMaleForm
|
||||
.public FuncThatCallsRunNextOpcode
|
||||
.public GROUND_STATE_MAP
|
||||
.public GROUND_STATE_PTRS
|
||||
.public GROUND_WEATHER_TABLE
|
||||
.public FX_Atan2Idx
|
||||
.public GetAcceptedMission
|
||||
.public GetActiveRosterIndex
|
||||
.public GetActiveTeamMember
|
||||
|
|
@ -103,6 +105,11 @@
|
|||
.public GetStringFromFileVeneer
|
||||
.public GetTeamMember
|
||||
.public GetWindowContents
|
||||
.public GROUND_STATE_MAP
|
||||
.public GROUND_STATE_PTRS
|
||||
.public GROUND_WEATHER_TABLE
|
||||
.public GroundBg_FreeAll
|
||||
.public GroundBg_Init
|
||||
.public InitAnimationControlWithSet__0201C0B0
|
||||
.public InitMove
|
||||
.public InitPortraitParams
|
||||
|
|
@ -139,74 +146,14 @@
|
|||
.public LoadWanTableEntryFromPack
|
||||
.public LoadWteFromRom
|
||||
.public MemAlloc
|
||||
.public MemFree
|
||||
.public MemZero
|
||||
.public memcpy
|
||||
.public Memcpy32
|
||||
.public MemcpySimple
|
||||
.public MemFree
|
||||
.public MemZero
|
||||
.public NewWindowScreenCheck
|
||||
.public OBJECTS
|
||||
.public OBJECT_FUNCTION_TABLE
|
||||
.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 RemoveItemNoHole
|
||||
.public RemoveItemNoHoleCheck
|
||||
.public Render3dElement64
|
||||
.public ResumeAdvancedMenu
|
||||
.public ResumeParentMenu
|
||||
.public SETANIMATION_TABLE
|
||||
.public SaveScriptVariableValue
|
||||
.public SaveScriptVariableValueBytes
|
||||
.public ScriptStationLoadTalk
|
||||
.public SentryUpdateDisplay
|
||||
.public SetActorTalkMain
|
||||
.public SetActorTalkMainAndActorTalkSub
|
||||
.public SetActorTalkSub
|
||||
.public SetAnimationForAnimationControl
|
||||
.public SetAreaNameBoxState3
|
||||
.public SetCollectionMenuField0x1A4
|
||||
.public SetCollectionMenuField0x1C8
|
||||
.public SetInventoryMenuState0
|
||||
.public SetInventoryMenuState6
|
||||
.public SetItemAcquired
|
||||
.public SetParentMenuState7
|
||||
.public SetSpriteIdForAnimationControl
|
||||
.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 SwitchAnimationControlToNextFrame
|
||||
.public TEAM_INFO_BOX_DEFAULT_WINDOW_PARAMS
|
||||
.public TEAM_MEMBER_TABLE_PTR
|
||||
.public TRIG_TABLE
|
||||
.public UnloadFile
|
||||
.public UnlockRoutine
|
||||
.public UpdateWindow
|
||||
.public VEC_Distance
|
||||
.public WAN_TABLE
|
||||
.public WORLD_MAP_MODE
|
||||
.public _fdiv
|
||||
.public _ffix
|
||||
.public _fflt
|
||||
.public _s32_div_f
|
||||
.public abs
|
||||
.public memcpy
|
||||
.public OBJECTS
|
||||
.public ov10_022BCC60
|
||||
.public ov10_022BCC7C
|
||||
.public ov10_022BCCB0
|
||||
|
|
@ -312,8 +259,6 @@
|
|||
.public ov11_022EB2F4
|
||||
.public ov11_022EB3C8
|
||||
.public ov11_022EBAA0
|
||||
.public GroundBg_Init
|
||||
.public ov11_022EBEAC
|
||||
.public ov11_022EC240
|
||||
.public ov11_022EC27C
|
||||
.public ov11_022ED69C
|
||||
|
|
@ -745,7 +690,6 @@
|
|||
.public ov11_02324D94
|
||||
.public ov11_02324D98
|
||||
.public ov11_02324DA0
|
||||
.public ov11_02324DA4
|
||||
.public ov11_02324DAC
|
||||
.public ov11_02324DB4
|
||||
.public ov11_02324DBC
|
||||
|
|
@ -790,9 +734,54 @@
|
|||
.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 RemoveItemNoHole
|
||||
.public RemoveItemNoHoleCheck
|
||||
.public Render3dElement64
|
||||
.public ResumeAdvancedMenu
|
||||
.public ResumeParentMenu
|
||||
.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 SetParentMenuState7
|
||||
.public SetSpriteIdForAnimationControl
|
||||
.public ShowDialogueBox
|
||||
.public ShowKeyboard
|
||||
.public ShowStringIdInDialogueBox
|
||||
.public ShowStringInDialogueBox
|
||||
.public SortItemsInBag
|
||||
.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
|
||||
|
|
@ -1020,4 +1009,15 @@
|
|||
.public sub_0206B9DC
|
||||
.public sub_0206BA5C
|
||||
.public sub_0206C110
|
||||
.public SWAP_SHOP_INVENTORY_PTRS
|
||||
.public SwitchAnimationControlToNextFrame
|
||||
.public TEAM_INFO_BOX_DEFAULT_WINDOW_PARAMS
|
||||
.public TEAM_MEMBER_TABLE_PTR
|
||||
.public TRIG_TABLE
|
||||
.public UnloadFile
|
||||
.public UnlockRoutine
|
||||
.public UpdateWindow
|
||||
.public VEC_Distance
|
||||
.public vsprintf
|
||||
.public WAN_TABLE
|
||||
.public WORLD_MAP_MODE
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@
|
|||
.public ov11_022E6E68
|
||||
.public ov11_022E6E8C
|
||||
.public ov11_022E6EC8
|
||||
.public ov11_0230B20C
|
||||
.public ov11_0230B694
|
||||
.public ov11_0230B874
|
||||
.public ov11_0230B8C0
|
||||
|
|
@ -100,4 +99,5 @@
|
|||
.public sub_020420F4
|
||||
.public sub_020572EC
|
||||
.public sub_0205B028
|
||||
.public SwapShopInventoryManager
|
||||
.public UpdateWindow
|
||||
|
|
|
|||
|
|
@ -30,7 +30,6 @@
|
|||
.public ov11_022E6E68
|
||||
.public ov11_022E6E8C
|
||||
.public ov11_022E6EC8
|
||||
.public ov11_0230B20C
|
||||
.public ov11_0230B724
|
||||
.public ov11_0230B8C0
|
||||
.public ov11_0230B9BC
|
||||
|
|
@ -52,4 +51,5 @@
|
|||
.public sub_02027B1C
|
||||
.public sub_0202836C
|
||||
.public sub_0202F2C4
|
||||
.public SwapShopInventoryManager
|
||||
.public UpdateWindow
|
||||
|
|
|
|||
|
|
@ -262,9 +262,9 @@
|
|||
.public ov20_0238A140
|
||||
.public ov20_0238A160
|
||||
.public ov20_0238A1B0
|
||||
.public ov21_0238B848
|
||||
.public ov21_0238B8FC
|
||||
.public ov21_0238B928
|
||||
.public SwapShopEntryPoint
|
||||
.public SwapShopDestructor
|
||||
.public SwapShopMainManager
|
||||
.public ov22_0238D640
|
||||
.public ov22_0238D7B0
|
||||
.public ov22_0238D800
|
||||
|
|
@ -1932,9 +1932,9 @@ ov11_023230EC:
|
|||
.global ov11_023230FC
|
||||
ov11_023230FC:
|
||||
.byte 0x19, 0x00, 0x00, 0x00
|
||||
.word ov21_0238B848
|
||||
.word ov21_0238B8FC
|
||||
.word ov21_0238B928
|
||||
.word SwapShopEntryPoint
|
||||
.word SwapShopDestructor
|
||||
.word SwapShopMainManager
|
||||
.global ov11_0232310C
|
||||
ov11_0232310C:
|
||||
.byte 0x1A, 0x00, 0x00, 0x00
|
||||
|
|
@ -3085,8 +3085,8 @@ ov11_02324D98:
|
|||
.global ov11_02324DA0
|
||||
ov11_02324DA0:
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov11_02324DA4
|
||||
ov11_02324DA4:
|
||||
.global SWAP_SHOP_INVENTORY_PTRS
|
||||
SWAP_SHOP_INVENTORY_PTRS:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov11_02324DAC
|
||||
ov11_02324DAC:
|
||||
|
|
|
|||
|
|
@ -3818,7 +3818,7 @@ _022F1268:
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _022F12BC ; =GROUND_STATE_MAP
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -5157,7 +5157,7 @@ _022F2344:
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
beq _022F239C
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _022F2598 ; =ov11_02324CC8
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -35213,11 +35213,11 @@ _0230B204: .word 0x000004B6 + GET_EXCLUSIVE_ITEM_REQUIREMENTS_OFFSET
|
|||
_0230B208: .word 0x000004B7 + GET_EXCLUSIVE_ITEM_REQUIREMENTS_OFFSET
|
||||
arm_func_end GetExclusiveItemRequirements
|
||||
|
||||
arm_func_start ov11_0230B20C
|
||||
ov11_0230B20C: ; 0x0230B20C
|
||||
arm_func_start SwapShopInventoryManager
|
||||
SwapShopInventoryManager: ; 0x0230B20C
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
|
||||
sub sp, sp, #0x20
|
||||
ldr r2, _0230B664 ; =ov11_02324DA4
|
||||
ldr r2, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r4, r0
|
||||
ldr r0, [r2, #4]
|
||||
mov r8, r1
|
||||
|
|
@ -35229,15 +35229,15 @@ ov11_0230B20C: ; 0x0230B20C
|
|||
ldr r0, _0230B670 ; =0x000046D4
|
||||
mov r1, #8
|
||||
bl MemAlloc
|
||||
ldr r1, _0230B664 ; =ov11_02324DA4
|
||||
ldr r1, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
str r0, [r1, #4]
|
||||
_0230B24C:
|
||||
ldr r0, _0230B664 ; =ov11_02324DA4
|
||||
ldr r0, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
str r4, [r0]
|
||||
bl ov11_0230BF98
|
||||
bl LoadSynthBin
|
||||
ldr sb, _0230B664 ; =ov11_02324DA4
|
||||
ldr sb, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r2, #0
|
||||
ldr r3, [sb, #4]
|
||||
mov r1, #0x10
|
||||
|
|
@ -35345,13 +35345,13 @@ _0230B3D4:
|
|||
ldr r2, [r0, #4]
|
||||
cmp sl, r2
|
||||
blt _0230B38C
|
||||
ldr r1, _0230B664 ; =ov11_02324DA4
|
||||
ldr r1, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
add r0, sp, #0x14
|
||||
ldr r1, [r1, #4]
|
||||
add r1, r1, #0x4600
|
||||
strh r2, [r1, #0x26]
|
||||
bl sub_020114F8
|
||||
ldr r1, _0230B664 ; =ov11_02324DA4
|
||||
ldr r1, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, r8, lsl #0x10
|
||||
ldr r2, [r1, #4]
|
||||
mov r3, r0, asr #0x10
|
||||
|
|
@ -35389,7 +35389,7 @@ _0230B428:
|
|||
_0230B474:
|
||||
cmp r4, #0
|
||||
bne _0230B5A8
|
||||
ldr r0, _0230B664 ; =ov11_02324DA4
|
||||
ldr r0, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #6
|
||||
ldrsh r2, [r0]
|
||||
ldr r0, [r0, #4]
|
||||
|
|
@ -35399,7 +35399,7 @@ _0230B474:
|
|||
ldrh r0, [sb, r8]
|
||||
add sl, sb, r8
|
||||
bl ov11_0230C9EC
|
||||
ldr r1, _0230B664 ; =ov11_02324DA4
|
||||
ldr r1, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
str r0, [sp, #0x18]
|
||||
ldrh r0, [r1]
|
||||
bl ov11_0230C970
|
||||
|
|
@ -35409,7 +35409,7 @@ _0230B474:
|
|||
movne r0, #0
|
||||
strneh r0, [sp, #0x1e]
|
||||
bne _0230B4E8
|
||||
ldr r0, _0230B664 ; =ov11_02324DA4
|
||||
ldr r0, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldrh r1, [sl, #2]
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, r1, lsl #3
|
||||
|
|
@ -35419,7 +35419,7 @@ _0230B474:
|
|||
_0230B4E8:
|
||||
add r0, sp, #0x18
|
||||
bl ov11_0230AE10
|
||||
ldr r0, _0230B664 ; =ov11_02324DA4
|
||||
ldr r0, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
add r1, sp, #0x12
|
||||
ldr r2, [r0, #4]
|
||||
ldrsh r8, [r0]
|
||||
|
|
@ -35428,7 +35428,7 @@ _0230B4E8:
|
|||
mov r0, #0
|
||||
strh r8, [r3, #0xd0]
|
||||
bl ov11_0230C1D0
|
||||
ldr fp, _0230B664 ; =ov11_02324DA4
|
||||
ldr fp, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldrh r2, [sp, #0x12]
|
||||
ldr r0, [fp, #4]
|
||||
ldrh r1, [sp, #0x10]
|
||||
|
|
@ -35469,7 +35469,7 @@ _0230B5A0:
|
|||
cmp sl, r8
|
||||
blt _0230B538
|
||||
_0230B5A8:
|
||||
ldr r8, _0230B664 ; =ov11_02324DA4
|
||||
ldr r8, _0230B664 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, r5
|
||||
ldr sb, [r8, #4]
|
||||
mov r3, r7
|
||||
|
|
@ -35518,7 +35518,7 @@ _0230B65C:
|
|||
add sp, sp, #0x20
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_0230B664: .word ov11_02324DA4
|
||||
_0230B664: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230B668: .word 0x00401A33
|
||||
_0230B66C: .word ov11_0230BD5C
|
||||
_0230B670: .word 0x000046D4
|
||||
|
|
@ -35537,19 +35537,19 @@ _0230B684: .word ov11_0230B78C
|
|||
_0230B688: .word ov11_0230BE34
|
||||
_0230B68C: .word ov11_02322FE4
|
||||
_0230B690: .word ov11_0230BF38
|
||||
arm_func_end ov11_0230B20C
|
||||
arm_func_end SwapShopInventoryManager
|
||||
|
||||
arm_func_start ov11_0230B694
|
||||
ov11_0230B694: ; 0x0230B694
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _0230B71C ; =ov11_02324DA4
|
||||
ldr r0, _0230B71C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
bne _0230B6BC
|
||||
ldr r0, _0230B720 ; =0x000046D4
|
||||
mov r1, #8
|
||||
bl MemAlloc
|
||||
ldr r1, _0230B71C ; =ov11_02324DA4
|
||||
ldr r1, _0230B71C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
str r0, [r1, #4]
|
||||
_0230B6BC:
|
||||
bl LoadSynthBin
|
||||
|
|
@ -35559,7 +35559,7 @@ _0230B6BC:
|
|||
bl ov11_0230C61C
|
||||
mov r0, #0
|
||||
bl sub_020130B8
|
||||
ldr r1, _0230B71C ; =ov11_02324DA4
|
||||
ldr r1, _0230B71C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
cmp r4, #0
|
||||
ldr r1, [r1, #4]
|
||||
add r1, r1, #0x4600
|
||||
|
|
@ -35568,41 +35568,41 @@ _0230B6BC:
|
|||
beq _0230B6F8
|
||||
bl CloseSynthBin
|
||||
_0230B6F8:
|
||||
ldr r0, _0230B71C ; =ov11_02324DA4
|
||||
ldr r0, _0230B71C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
ldr r1, _0230B71C ; =ov11_02324DA4
|
||||
ldr r1, _0230B71C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, #0
|
||||
str r0, [r1, #4]
|
||||
cmp r4, #0
|
||||
movne r0, #1
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_0230B71C: .word ov11_02324DA4
|
||||
_0230B71C: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230B720: .word 0x000046D4
|
||||
arm_func_end ov11_0230B694
|
||||
|
||||
arm_func_start ov11_0230B724
|
||||
ov11_0230B724: ; 0x0230B724
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _0230B784 ; =ov11_02324DA4
|
||||
ldr r0, _0230B784 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
bne _0230B74C
|
||||
ldr r0, _0230B788 ; =0x000046D4
|
||||
mov r1, #8
|
||||
bl MemAlloc
|
||||
ldr r1, _0230B784 ; =ov11_02324DA4
|
||||
ldr r1, _0230B784 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
str r0, [r1, #4]
|
||||
_0230B74C:
|
||||
bl ov11_0230BF98
|
||||
bl ov11_0230C4D4
|
||||
ldr r0, _0230B784 ; =ov11_02324DA4
|
||||
ldr r0, _0230B784 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r1, r0, #0x4600
|
||||
ldrh r4, [r1, #0x26]
|
||||
bl MemFree
|
||||
ldr r0, _0230B784 ; =ov11_02324DA4
|
||||
ldr r0, _0230B784 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
str r1, [r0, #4]
|
||||
cmp r4, #0
|
||||
|
|
@ -35610,14 +35610,14 @@ _0230B74C:
|
|||
and r0, r1, #0xff
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_0230B784: .word ov11_02324DA4
|
||||
_0230B784: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230B788: .word 0x000046D4
|
||||
arm_func_end ov11_0230B724
|
||||
|
||||
arm_func_start ov11_0230B78C
|
||||
ov11_0230B78C: ; 0x0230B78C
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
ldr r1, _0230B870 ; =ov11_02324DA4
|
||||
ldr r1, _0230B870 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
tst r0, #0x400
|
||||
ldr r4, [r1, #4]
|
||||
beq _0230B868
|
||||
|
|
@ -35663,7 +35663,7 @@ _0230B834:
|
|||
mov r0, #2
|
||||
bl PlaySeVolumeWrapper
|
||||
_0230B83C:
|
||||
ldr r0, _0230B870 ; =ov11_02324DA4
|
||||
ldr r0, _0230B870 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r0, #4]
|
||||
add r0, r1, #0x4000
|
||||
ldr r0, [r0, #0x6c8]
|
||||
|
|
@ -35679,13 +35679,13 @@ _0230B868:
|
|||
mov r0, #0
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0230B870: .word ov11_02324DA4
|
||||
_0230B870: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B78C
|
||||
|
||||
arm_func_start ov11_0230B874
|
||||
ov11_0230B874: ; 0x0230B874
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r1, _0230B8BC ; =ov11_02324DA4
|
||||
ldr r1, _0230B8BC ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, #0
|
||||
ldr ip, [r1, #4]
|
||||
mov r3, r0
|
||||
|
|
@ -35705,13 +35705,13 @@ _0230B8B0:
|
|||
blt _0230B898
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230B8BC: .word ov11_02324DA4
|
||||
_0230B8BC: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B874
|
||||
|
||||
arm_func_start ov11_0230B8C0
|
||||
ov11_0230B8C0: ; 0x0230B8C0
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
ldr r1, _0230B910 ; =ov11_02324DA4
|
||||
ldr r1, _0230B910 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r4, r0
|
||||
ldr r0, [r1, #4]
|
||||
add r0, r0, #0x1400
|
||||
|
|
@ -35721,7 +35721,7 @@ ov11_0230B8C0: ; 0x0230B8C0
|
|||
mov r0, r5, lsl #0x10
|
||||
mov r0, r0, lsr #0x10
|
||||
bl ov11_0230C970
|
||||
ldr r1, _0230B910 ; =ov11_02324DA4
|
||||
ldr r1, _0230B910 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
strh r0, [r4]
|
||||
ldr r0, [r1, #4]
|
||||
add r0, r0, r5, lsl #1
|
||||
|
|
@ -35731,18 +35731,18 @@ ov11_0230B8C0: ; 0x0230B8C0
|
|||
ldrsh r0, [r4]
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0230B910: .word ov11_02324DA4
|
||||
_0230B910: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B8C0
|
||||
|
||||
arm_func_start ov11_0230B914
|
||||
ov11_0230B914: ; 0x0230B914
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230B954 ; =ov11_02324DA4
|
||||
ldr r0, _0230B954 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl sub_0202D0EC
|
||||
ldr r1, _0230B954 ; =ov11_02324DA4
|
||||
ldr r1, _0230B954 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, r0, lsl #0x10
|
||||
ldr r2, [r1, #4]
|
||||
mov r1, r0, lsr #0x10
|
||||
|
|
@ -35753,18 +35753,18 @@ ov11_0230B914: ; 0x0230B914
|
|||
bl ov11_0230C9EC
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230B954: .word ov11_02324DA4
|
||||
_0230B954: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B914
|
||||
|
||||
arm_func_start ov11_0230B958
|
||||
ov11_0230B958: ; 0x0230B958
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230B9B8 ; =ov11_02324DA4
|
||||
ldr r0, _0230B9B8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl sub_0202D0EC
|
||||
ldr r2, _0230B9B8 ; =ov11_02324DA4
|
||||
ldr r2, _0230B9B8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, r0, lsl #0x10
|
||||
mov r3, r1, lsr #0x10
|
||||
ldr ip, [r2, #4]
|
||||
|
|
@ -35783,20 +35783,20 @@ ov11_0230B958: ; 0x0230B958
|
|||
ldrh r0, [r0, #0xea]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230B9B8: .word ov11_02324DA4
|
||||
_0230B9B8: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B958
|
||||
|
||||
arm_func_start ov11_0230B9BC
|
||||
ov11_0230B9BC: ; 0x0230B9BC
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_0230AED0
|
||||
bl ov11_0230CAE4
|
||||
bl ov11_0230CA38
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4000
|
||||
ldrb r0, [r0, #0x6c4]
|
||||
|
|
@ -35804,7 +35804,7 @@ ov11_0230B9BC: ; 0x0230B9BC
|
|||
beq _0230B9F8
|
||||
bl CloseSynthBin
|
||||
_0230B9F8:
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mvn r1, #1
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
|
|
@ -35812,34 +35812,34 @@ _0230B9F8:
|
|||
cmp r0, r1
|
||||
beq _0230BA44
|
||||
bl sub_0202D0EC
|
||||
ldr r1, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r1, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
strh r0, [r1]
|
||||
ldr r0, [r1, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl sub_0202836C
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl CloseCollectionMenu
|
||||
_0230BA44:
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
ldr r0, _0230BA60 ; =ov11_02324DA4
|
||||
ldr r0, _0230BA60 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
str r1, [r0, #4]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230BA60: .word ov11_02324DA4
|
||||
_0230BA60: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230B9BC
|
||||
|
||||
arm_func_start ov11_0230BA64
|
||||
ov11_0230BA64: ; 0x0230BA64
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
sub sp, sp, #8
|
||||
ldr r0, _0230BB18 ; =ov11_02324DA4
|
||||
ldr r0, _0230BB18 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r4, [r0, #4]
|
||||
cmp r4, #0
|
||||
moveq r0, #0
|
||||
|
|
@ -35886,13 +35886,13 @@ _0230BB10:
|
|||
add sp, sp, #8
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0230BB18: .word ov11_02324DA4
|
||||
_0230BB18: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230BA64
|
||||
|
||||
arm_func_start ov11_0230BB1C
|
||||
ov11_0230BB1C: ; 0x0230BB1C
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230BB94 ; =ov11_02324DA4
|
||||
ldr r0, _0230BB94 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
addne r0, r0, #0x1400
|
||||
|
|
@ -35901,35 +35901,35 @@ ov11_0230BB1C: ; 0x0230BB1C
|
|||
cmpne r0, r1
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl sub_0202D0EC
|
||||
ldr r1, _0230BB94 ; =ov11_02324DA4
|
||||
ldr r1, _0230BB94 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
strh r0, [r1]
|
||||
bl ov11_0230CA38
|
||||
bl ov11_0230CAE4
|
||||
ldr r0, _0230BB94 ; =ov11_02324DA4
|
||||
ldr r0, _0230BB94 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl sub_0202836C
|
||||
ldr r0, _0230BB94 ; =ov11_02324DA4
|
||||
ldr r0, _0230BB94 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
ldrsb r0, [r0, #0xe4]
|
||||
bl CloseCollectionMenu
|
||||
ldr r0, _0230BB94 ; =ov11_02324DA4
|
||||
ldr r0, _0230BB94 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mvn r1, #1
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1000
|
||||
strb r1, [r0, #0x4e4]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230BB94: .word ov11_02324DA4
|
||||
_0230BB94: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230BB1C
|
||||
|
||||
arm_func_start ov11_0230BB98
|
||||
ov11_0230BB98: ; 0x0230BB98
|
||||
stmdb sp!, {r4, r5, lr}
|
||||
sub sp, sp, #0xc
|
||||
ldr r0, _0230BCD8 ; =ov11_02324DA4
|
||||
ldr r0, _0230BCD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r2, [r0, #4]
|
||||
cmp r2, #0
|
||||
beq _0230BCD0
|
||||
|
|
@ -35956,7 +35956,7 @@ _0230BBF0:
|
|||
ldr r3, _0230BCEC ; =ov11_0230BE34
|
||||
orr r1, r1, r0
|
||||
_0230BC00:
|
||||
ldr ip, _0230BCD8 ; =ov11_02324DA4
|
||||
ldr ip, _0230BCD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
add r2, r2, #0x4000
|
||||
ldrsh r4, [ip]
|
||||
ldr r0, _0230BCF0 ; =ov11_02322FE4
|
||||
|
|
@ -35969,7 +35969,7 @@ _0230BC00:
|
|||
add r2, r2, #0x4400
|
||||
stmib sp, {ip, lr}
|
||||
bl CreateCollectionMenu
|
||||
ldr r2, _0230BCD8 ; =ov11_02324DA4
|
||||
ldr r2, _0230BCD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r2, #4]
|
||||
add r1, r1, #0x1000
|
||||
strb r0, [r1, #0x4e4]
|
||||
|
|
@ -35981,7 +35981,7 @@ _0230BC00:
|
|||
ldrsb r0, [r0, #0xe4]
|
||||
mov r1, #1
|
||||
bl SetCollectionMenuField0x1C8
|
||||
ldr r0, _0230BCD8 ; =ov11_02324DA4
|
||||
ldr r0, _0230BCD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, _0230BCF4 ; =ov11_0230BF38
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x1400
|
||||
|
|
@ -35989,7 +35989,7 @@ _0230BC00:
|
|||
bl SetCollectionMenuField0x1A4
|
||||
bl ov11_0230CAA4
|
||||
bl ov11_0230C9F8
|
||||
ldr r0, _0230BCD8 ; =ov11_02324DA4
|
||||
ldr r0, _0230BCD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r4, [r0, #4]
|
||||
ldr r0, [r4]
|
||||
cmp r0, #3
|
||||
|
|
@ -36014,7 +36014,7 @@ _0230BCD0:
|
|||
add sp, sp, #0xc
|
||||
ldmia sp!, {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0230BCD8: .word ov11_02324DA4
|
||||
_0230BCD8: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230BCDC: .word 0x00401833
|
||||
_0230BCE0: .word ov11_0230BD5C
|
||||
_0230BCE4: .word 0x80040004
|
||||
|
|
@ -36027,7 +36027,7 @@ _0230BCF4: .word ov11_0230BF38
|
|||
arm_func_start ov11_0230BCF8
|
||||
ov11_0230BCF8: ; 0x0230BCF8
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230BD24 ; =ov11_02324DA4
|
||||
ldr r0, _0230BD24 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
addne r0, r0, #0x1400
|
||||
|
|
@ -36038,13 +36038,13 @@ ov11_0230BCF8: ; 0x0230BCF8
|
|||
bl sub_0202C620
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230BD24: .word ov11_02324DA4
|
||||
_0230BD24: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230BCF8
|
||||
|
||||
arm_func_start ov11_0230BD28
|
||||
ov11_0230BD28: ; 0x0230BD28
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230BD58 ; =ov11_02324DA4
|
||||
ldr r0, _0230BD58 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
addne r0, r0, #0x1400
|
||||
|
|
@ -36056,7 +36056,7 @@ ov11_0230BD28: ; 0x0230BD28
|
|||
bl IsCollectionMenuState3
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230BD58: .word ov11_02324DA4
|
||||
_0230BD58: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230BD28
|
||||
|
||||
arm_func_start ov11_0230BD5C
|
||||
|
|
@ -36069,7 +36069,7 @@ ov11_0230BD5C: ; 0x0230BD5C
|
|||
mov r0, r1, lsr #0x10
|
||||
mov r4, r2
|
||||
bl ov11_0230C970
|
||||
ldr r1, _0230BE28 ; =ov11_02324DA4
|
||||
ldr r1, _0230BE28 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
strh r0, [sp, #4]
|
||||
ldr r3, [r1, #4]
|
||||
mov r1, #1
|
||||
|
|
@ -36101,7 +36101,7 @@ _0230BDEC:
|
|||
mov r0, r6
|
||||
bl sub_0200D670
|
||||
_0230BDF4:
|
||||
ldr r1, _0230BE28 ; =ov11_02324DA4
|
||||
ldr r1, _0230BE28 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, #6
|
||||
ldr r1, [r1, #4]
|
||||
mla r0, r5, r0, r1
|
||||
|
|
@ -36115,7 +36115,7 @@ _0230BDF4:
|
|||
add sp, sp, #0x58
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0230BE28: .word ov11_02324DA4
|
||||
_0230BE28: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230BE2C: .word ov11_02323004
|
||||
_0230BE30: .word ov11_0232300C
|
||||
arm_func_end ov11_0230BD5C
|
||||
|
|
@ -36124,7 +36124,7 @@ _0230BE30: .word ov11_0232300C
|
|||
ov11_0230BE34: ; 0x0230BE34
|
||||
stmdb sp!, {r4, r5, r6, lr}
|
||||
sub sp, sp, #8
|
||||
ldr r3, _0230BF28 ; =ov11_02324DA4
|
||||
ldr r3, _0230BF28 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r5, r1
|
||||
mov r1, r5, lsl #0x10
|
||||
mov r6, r0
|
||||
|
|
@ -36139,7 +36139,7 @@ ov11_0230BE34: ; 0x0230BE34
|
|||
moveq r0, #0
|
||||
beq _0230BF20
|
||||
bl ov11_0230C970
|
||||
ldr r1, _0230BF28 ; =ov11_02324DA4
|
||||
ldr r1, _0230BF28 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
strh r0, [sp, #4]
|
||||
ldr r0, [r1, #4]
|
||||
add r1, sp, #0
|
||||
|
|
@ -36176,7 +36176,7 @@ _0230BEE8:
|
|||
_0230BEEC:
|
||||
mov r0, r6
|
||||
bl strcat
|
||||
ldr r1, _0230BF28 ; =ov11_02324DA4
|
||||
ldr r1, _0230BF28 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r0, #6
|
||||
ldr r1, [r1, #4]
|
||||
mla r0, r5, r0, r1
|
||||
|
|
@ -36191,7 +36191,7 @@ _0230BF20:
|
|||
add sp, sp, #8
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0230BF28: .word ov11_02324DA4
|
||||
_0230BF28: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230BF2C: .word ov11_02323014
|
||||
_0230BF30: .word ov11_0232302C
|
||||
_0230BF34: .word ov11_02323048
|
||||
|
|
@ -36200,7 +36200,7 @@ _0230BF34: .word ov11_02323048
|
|||
arm_func_start ov11_0230BF38
|
||||
ov11_0230BF38: ; 0x0230BF38
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r3, _0230BF8C ; =ov11_02324DA4
|
||||
ldr r3, _0230BF8C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r2, r2, lsl #0x10
|
||||
ldr ip, [r3, #4]
|
||||
mov r3, r2, lsr #0x10
|
||||
|
|
@ -36222,7 +36222,7 @@ _0230BF7C:
|
|||
bl sub_0202A03C
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230BF8C: .word ov11_02324DA4
|
||||
_0230BF8C: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
#if defined(EUROPE)
|
||||
_0230BF90: .word 0x0000032F
|
||||
_0230BF94: .word 0x00004642
|
||||
|
|
@ -36239,7 +36239,7 @@ _0230BF94: .word 0x00004623
|
|||
ov11_0230BF98: ; 0x0230BF98
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
||||
mov r4, #0
|
||||
ldr r3, _0230C048 ; =ov11_02324DA4
|
||||
ldr r3, _0230C048 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r2, _0230C04C ; =0x0000042C
|
||||
mov r0, r4
|
||||
_0230BFAC:
|
||||
|
|
@ -36253,7 +36253,7 @@ _0230BFAC:
|
|||
strb r0, [r1, #0xb8]
|
||||
cmp r4, r2
|
||||
blt _0230BFAC
|
||||
ldr r2, _0230C048 ; =ov11_02324DA4
|
||||
ldr r2, _0230C048 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r5, #0
|
||||
_0230BFDC:
|
||||
ldr r1, [r2, #4]
|
||||
|
|
@ -36267,7 +36267,7 @@ _0230BFDC:
|
|||
strh r5, [r1, #0x46]
|
||||
cmp r0, #0x3e8
|
||||
blt _0230BFDC
|
||||
ldr r7, _0230C048 ; =ov11_02324DA4
|
||||
ldr r7, _0230C048 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r6, _0230C04C ; =0x0000042C
|
||||
mov r4, #0
|
||||
_0230C014:
|
||||
|
|
@ -36285,7 +36285,7 @@ _0230C014:
|
|||
blt _0230C014
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0230C048: .word ov11_02324DA4
|
||||
_0230C048: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230C04C: .word 0x0000042C
|
||||
arm_func_end ov11_0230BF98
|
||||
|
||||
|
|
@ -36357,7 +36357,7 @@ _0230C114: .word 0xFFFFFE06
|
|||
arm_func_start ov11_0230C118
|
||||
ov11_0230C118: ; 0x0230C118
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, lr}
|
||||
ldr r6, _0230C1CC ; =ov11_02324DA4
|
||||
ldr r6, _0230C1CC ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov lr, #0
|
||||
ldr r7, [r6, #4]
|
||||
mov r4, lr
|
||||
|
|
@ -36407,7 +36407,7 @@ _0230C1AC:
|
|||
strneh r4, [r2]
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
||||
.align 2, 0
|
||||
_0230C1CC: .word ov11_02324DA4
|
||||
_0230C1CC: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C118
|
||||
|
||||
arm_func_start ov11_0230C1D0
|
||||
|
|
@ -36626,7 +36626,7 @@ _0230C4AC:
|
|||
cmp r4, r8
|
||||
blt _0230C468
|
||||
_0230C4B4:
|
||||
ldr r0, _0230C4D0 ; =ov11_02324DA4
|
||||
ldr r0, _0230C4D0 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4600
|
||||
strh sb, [r0, #0x28]
|
||||
|
|
@ -36634,7 +36634,7 @@ _0230C4B4:
|
|||
.align 2, 0
|
||||
_0230C4C8: .word BAG_ITEMS_PTR_MIRROR
|
||||
_0230C4CC: .word 0x000003F5
|
||||
_0230C4D0: .word ov11_02324DA4
|
||||
_0230C4D0: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C3CC
|
||||
|
||||
arm_func_start ov11_0230C4D4
|
||||
|
|
@ -36646,7 +36646,7 @@ ov11_0230C4D4: ; 0x0230C4D4
|
|||
mov sb, r8
|
||||
mov r4, #6
|
||||
ldr r6, _0230C594 ; =BAG_ITEMS_PTR_MIRROR
|
||||
ldr r5, _0230C598 ; =ov11_02324DA4
|
||||
ldr r5, _0230C598 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr fp, _0230C59C ; =0x0000018F
|
||||
b _0230C578
|
||||
_0230C4FC:
|
||||
|
|
@ -36685,14 +36685,14 @@ _0230C574:
|
|||
_0230C578:
|
||||
cmp sb, r7
|
||||
blt _0230C4FC
|
||||
ldr r0, _0230C598 ; =ov11_02324DA4
|
||||
ldr r0, _0230C598 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4600
|
||||
strh r8, [r0, #0x26]
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_0230C594: .word BAG_ITEMS_PTR_MIRROR
|
||||
_0230C598: .word ov11_02324DA4
|
||||
_0230C598: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230C59C: .word 0x0000018F
|
||||
arm_func_end ov11_0230C4D4
|
||||
|
||||
|
|
@ -36701,7 +36701,7 @@ ov11_0230C5A0: ; 0x0230C5A0
|
|||
stmdb sp!, {r4, lr}
|
||||
cmp r2, #0
|
||||
beq _0230C5EC
|
||||
ldr r3, _0230C618 ; =ov11_02324DA4
|
||||
ldr r3, _0230C618 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov lr, #0
|
||||
ldr r4, [r3, #4]
|
||||
b _0230C5E4
|
||||
|
|
@ -36720,7 +36720,7 @@ _0230C5E4:
|
|||
cmp lr, r2
|
||||
blt _0230C5BC
|
||||
_0230C5EC:
|
||||
ldr ip, _0230C618 ; =ov11_02324DA4
|
||||
ldr ip, _0230C618 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r3, [ip, #4]
|
||||
add r3, r3, r2, lsl #1
|
||||
add r3, r3, #0x3600
|
||||
|
|
@ -36732,7 +36732,7 @@ _0230C5EC:
|
|||
strh r1, [r2, #0x16]
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_0230C618: .word ov11_02324DA4
|
||||
_0230C618: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C5A0
|
||||
|
||||
arm_func_start ov11_0230C61C
|
||||
|
|
@ -36741,7 +36741,7 @@ ov11_0230C61C: ; 0x0230C61C
|
|||
ldr r4, _0230C8DC ; =0x000001FA
|
||||
mov r5, #0
|
||||
_0230C628:
|
||||
ldr r0, _0230C8E0 ; =ov11_02324DA4
|
||||
ldr r0, _0230C8E0 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr lr, [r0, #4]
|
||||
add r0, lr, #0x4600
|
||||
ldrh ip, [r0, #0x28]
|
||||
|
|
@ -36887,7 +36887,7 @@ _0230C834:
|
|||
mov r2, r1, lsr #0x10
|
||||
mov r1, #0
|
||||
bl ov11_0230C924
|
||||
ldr r0, _0230C8E0 ; =ov11_02324DA4
|
||||
ldr r0, _0230C8E0 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, r5, lsl #1
|
||||
|
|
@ -36899,7 +36899,7 @@ _0230C86C:
|
|||
add r4, r4, #4
|
||||
cmp r4, r0
|
||||
blt _0230C628
|
||||
ldr r0, _0230C8E0 ; =ov11_02324DA4
|
||||
ldr r0, _0230C8E0 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0xe6
|
||||
add r0, r0, #0x4500
|
||||
|
|
@ -36920,14 +36920,14 @@ _0230C8A0:
|
|||
_0230C8C0:
|
||||
cmp r7, r6
|
||||
blt _0230C8A0
|
||||
ldr r0, _0230C8E0 ; =ov11_02324DA4
|
||||
ldr r0, _0230C8E0 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4600
|
||||
strh r5, [r0, #0x26]
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, pc}
|
||||
.align 2, 0
|
||||
_0230C8DC: .word 0x000001FA
|
||||
_0230C8E0: .word ov11_02324DA4
|
||||
_0230C8E0: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230C8E4: .word 0x000002FE
|
||||
_0230C8E8: .word 0x000001BD
|
||||
_0230C8EC: .word 0x000001BE
|
||||
|
|
@ -36943,12 +36943,12 @@ _0230C90C: .word 0x000003F6
|
|||
|
||||
arm_func_start ov11_0230C910
|
||||
ov11_0230C910: ; 0x0230C910
|
||||
ldr r0, _0230C920 ; =ov11_02324DA4
|
||||
ldr r0, _0230C920 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
strh r1, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0230C920: .word ov11_02324DA4
|
||||
_0230C920: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C910
|
||||
|
||||
arm_func_start ov11_0230C924
|
||||
|
|
@ -36956,7 +36956,7 @@ ov11_0230C924: ; 0x0230C924
|
|||
stmdb sp!, {r3, lr}
|
||||
mov r3, #6
|
||||
mul lr, r0, r3
|
||||
ldr r3, _0230C96C ; =ov11_02324DA4
|
||||
ldr r3, _0230C96C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov ip, #0
|
||||
ldr r0, [r3, #4]
|
||||
add r0, r0, lr
|
||||
|
|
@ -36972,14 +36972,14 @@ ov11_0230C924: ; 0x0230C924
|
|||
strb ip, [r0, #0x4ea]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230C96C: .word ov11_02324DA4
|
||||
_0230C96C: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C924
|
||||
|
||||
arm_func_start ov11_0230C970
|
||||
ov11_0230C970: ; 0x0230C970
|
||||
stmdb sp!, {r3, lr}
|
||||
mov r1, #6
|
||||
ldr r2, _0230C9E8 ; =ov11_02324DA4
|
||||
ldr r2, _0230C9E8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mul r1, r0, r1
|
||||
ldr r3, [r2, #4]
|
||||
add r0, r3, #0xe6
|
||||
|
|
@ -37012,7 +37012,7 @@ _0230C9E0:
|
|||
ldrsh r0, [r1, #2]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230C9E8: .word ov11_02324DA4
|
||||
_0230C9E8: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230C970
|
||||
|
||||
arm_func_start ov11_0230C9EC
|
||||
|
|
@ -37025,7 +37025,7 @@ ov11_0230C9EC: ; 0x0230C9EC
|
|||
arm_func_start ov11_0230C9F8
|
||||
ov11_0230C9F8: ; 0x0230C9F8
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230CA2C ; =ov11_02324DA4
|
||||
ldr r0, _0230CA2C ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r0, #4]
|
||||
add r0, r1, #0x4000
|
||||
ldr r0, [r0, #0x6cc]
|
||||
|
|
@ -37038,7 +37038,7 @@ ov11_0230C9F8: ; 0x0230C9F8
|
|||
bl sub_0204707C
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230CA2C: .word ov11_02324DA4
|
||||
_0230CA2C: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230CA30: .word ov11_02322FF4
|
||||
_0230CA34: .word ov11_0230CA7C
|
||||
arm_func_end ov11_0230C9F8
|
||||
|
|
@ -37046,7 +37046,7 @@ _0230CA34: .word ov11_0230CA7C
|
|||
arm_func_start ov11_0230CA38
|
||||
ov11_0230CA38: ; 0x0230CA38
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230CA78 ; =ov11_02324DA4
|
||||
ldr r0, _0230CA78 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r0, #4]
|
||||
add r0, r1, #0x4000
|
||||
ldr r0, [r0, #0x6cc]
|
||||
|
|
@ -37055,14 +37055,14 @@ ov11_0230CA38: ; 0x0230CA38
|
|||
add r0, r1, #0x2cc
|
||||
add r0, r0, #0x4400
|
||||
bl sub_02047150
|
||||
ldr r0, _0230CA78 ; =ov11_02324DA4
|
||||
ldr r0, _0230CA78 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4000
|
||||
str r1, [r0, #0x6cc]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230CA78: .word ov11_02324DA4
|
||||
_0230CA78: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230CA38
|
||||
|
||||
arm_func_start ov11_0230CA7C
|
||||
|
|
@ -37087,7 +37087,7 @@ _0230CAA0: .word 0x000003A9
|
|||
arm_func_start ov11_0230CAA4
|
||||
ov11_0230CAA4: ; 0x0230CAA4
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230CAD8 ; =ov11_02324DA4
|
||||
ldr r0, _0230CAD8 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r0, #4]
|
||||
add r0, r1, #0x4000
|
||||
ldr r0, [r0, #0x6c8]
|
||||
|
|
@ -37100,7 +37100,7 @@ ov11_0230CAA4: ; 0x0230CAA4
|
|||
bl sub_0204707C
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230CAD8: .word ov11_02324DA4
|
||||
_0230CAD8: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
_0230CADC: .word ov11_02322FD4
|
||||
_0230CAE0: .word ov11_0230CB28
|
||||
arm_func_end ov11_0230CAA4
|
||||
|
|
@ -37108,7 +37108,7 @@ _0230CAE0: .word ov11_0230CB28
|
|||
arm_func_start ov11_0230CAE4
|
||||
ov11_0230CAE4: ; 0x0230CAE4
|
||||
stmdb sp!, {r3, lr}
|
||||
ldr r0, _0230CB24 ; =ov11_02324DA4
|
||||
ldr r0, _0230CB24 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
ldr r1, [r0, #4]
|
||||
add r0, r1, #0x4000
|
||||
ldr r0, [r0, #0x6c8]
|
||||
|
|
@ -37117,14 +37117,14 @@ ov11_0230CAE4: ; 0x0230CAE4
|
|||
add r0, r1, #0x2c8
|
||||
add r0, r0, #0x4400
|
||||
bl sub_02047150
|
||||
ldr r0, _0230CB24 ; =ov11_02324DA4
|
||||
ldr r0, _0230CB24 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
mov r1, #0
|
||||
ldr r0, [r0, #4]
|
||||
add r0, r0, #0x4000
|
||||
str r1, [r0, #0x6c8]
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0230CB24: .word ov11_02324DA4
|
||||
_0230CB24: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
arm_func_end ov11_0230CAE4
|
||||
|
||||
arm_func_start ov11_0230CB28
|
||||
|
|
@ -37135,7 +37135,7 @@ ov11_0230CB28: ; 0x0230CB28
|
|||
add r0, sp, #4
|
||||
bl InitPreprocessorArgs
|
||||
bl ov11_0230B874
|
||||
ldr r1, _0230CB84 ; =ov11_02324DA4
|
||||
ldr r1, _0230CB84 ; =SWAP_SHOP_INVENTORY_PTRS
|
||||
str r0, [sp, #0x28]
|
||||
ldr r0, [r1, #4]
|
||||
#ifdef JAPAN
|
||||
|
|
@ -37165,7 +37165,7 @@ ov11_0230CB28: ; 0x0230CB28
|
|||
add sp, sp, #0x54
|
||||
ldmia sp!, {r3, r4, pc}
|
||||
.align 2, 0
|
||||
_0230CB84: .word ov11_02324DA4
|
||||
_0230CB84: .word SWAP_SHOP_INVENTORY_PTRS
|
||||
#ifdef JAPAN
|
||||
_0230E130: .word 0x000032B4
|
||||
#endif
|
||||
|
|
@ -38622,7 +38622,7 @@ ov11_0230DC3C: ; 0x0230DC3C
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0230DCA0
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _0230DCB4 ; =ov11_02324DC8
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -38982,7 +38982,7 @@ ov11_0230E0D8: ; 0x0230E0D8
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0230E13C
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _0230E150 ; =ov11_02324DD4
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -39347,7 +39347,7 @@ ov11_0230E578: ; 0x0230E578
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0230E5DC
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _0230E5F0 ; =ov11_02324DDC
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -39886,7 +39886,7 @@ _0230EC68:
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _0230ED20 ; =WORLD_MAP_MODE
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -41853,7 +41853,7 @@ ov11_023107BC: ; 0x023107BC
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
beq _02310820
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02310834 ; =ov11_02324DF0
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -42269,7 +42269,7 @@ ov11_02310CD4: ; 0x02310CD4
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02310D40 ; =ov11_02324DF8
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -42822,7 +42822,7 @@ ov11_023113E8: ; 0x023113E8
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02311458 ; =ov11_02324E00
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -43222,7 +43222,7 @@ ov11_023118E8: ; 0x023118E8
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02311958 ; =ov11_02324E08
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
@ -43670,7 +43670,7 @@ ov11_02311EA4: ; 0x02311EA4
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _02311F08
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02311F1C ; =ov11_02324E10
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -44130,7 +44130,7 @@ ov11_02312398: ; 0x02312398
|
|||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02312414 ; =ov11_02324E18
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -44531,7 +44531,7 @@ ov11_023128C0: ; 0x023128C0
|
|||
ldr r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _0231291C
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _02312974 ; =ov11_02324E20
|
||||
ldr r0, [r0]
|
||||
bl MemFree
|
||||
|
|
@ -48903,7 +48903,7 @@ ov11_02316528: ; 0x02316528
|
|||
ldr r0, [r0, #4]
|
||||
cmp r0, #0
|
||||
beq _0231658C
|
||||
bl ov11_022EBEAC
|
||||
bl GroundBg_FreeAll
|
||||
ldr r0, _023165A0 ; =ov11_02324E78
|
||||
ldr r0, [r0, #4]
|
||||
bl MemFree
|
||||
|
|
|
|||
674
asm/overlay_21.s
674
asm/overlay_21.s
File diff suppressed because it is too large
Load Diff
|
|
@ -850,7 +850,7 @@ _0238AD04:
|
|||
bl HidePortraitBox
|
||||
mov r0, #1
|
||||
mov r1, #0
|
||||
bl ov11_0230B20C
|
||||
bl SwapShopInventoryManager
|
||||
b _0238B0C8
|
||||
_0238AD48:
|
||||
add r0, r1, #0x100
|
||||
|
|
@ -868,7 +868,7 @@ _0238AD48:
|
|||
bl HidePortraitBox
|
||||
mov r0, #1
|
||||
mov r1, #0
|
||||
bl ov11_0230B20C
|
||||
bl SwapShopInventoryManager
|
||||
b _0238B0C8
|
||||
_0238AD8C:
|
||||
mov r2, #0x96
|
||||
|
|
|
|||
|
|
@ -40,19 +40,18 @@ struct bg_list_entry {
|
|||
struct bg_list_entry_sub_struct others_bpa[BPA_MAX_ENTRIES];
|
||||
};
|
||||
|
||||
#define UNK_0_ARR_COUNT 16 // Was 14 in Red
|
||||
#define UNK_E0_ARR_COUNT 32
|
||||
#define UNK_3E0_ARR_COUNT 4 // Was 2 in Red
|
||||
#define UNK_4_ARR_COUNT 16 // Was 14 in Red
|
||||
#define UNK_C4_ARR_COUNT 4 // Was 2 in Red
|
||||
#define NUM_LAYERS 2
|
||||
|
||||
typedef struct SubStruct_0
|
||||
typedef struct UnkGroundBg_4
|
||||
{
|
||||
s16 unk0;
|
||||
s16 unk2;
|
||||
const void *unk4;
|
||||
const void *unk8;
|
||||
//u8 fillC; // Filler byte removed in Sky, present in Red
|
||||
} SubStruct_0;
|
||||
} UnkGroundBg_4;
|
||||
|
||||
struct BpaHeader
|
||||
{
|
||||
|
|
@ -63,7 +62,7 @@ struct BpaHeader
|
|||
};
|
||||
|
||||
// Was 0x24 in Red...
|
||||
typedef struct SubStruct_3E0
|
||||
typedef struct UnkGroundBg_C4
|
||||
{
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
|
|
@ -77,10 +76,10 @@ typedef struct SubStruct_3E0
|
|||
void *unk20;
|
||||
void *unk24;
|
||||
u32 unk28;
|
||||
} SubStruct_3E0;
|
||||
} UnkGroundBg_C4;
|
||||
|
||||
// size: 0x18?
|
||||
typedef struct SubStruct_52C
|
||||
typedef struct UnkGroundBg_2BC
|
||||
{
|
||||
u8 unk0; // 0x52C
|
||||
s16 unk2; // 0x52E
|
||||
|
|
@ -94,7 +93,7 @@ typedef struct SubStruct_52C
|
|||
s16 unk14;
|
||||
s16 unk16;
|
||||
void (*unk18)(void *, const void *, void *, s32); // TODO: fix void * to proper ptr types 0x540
|
||||
} SubStruct_52C;
|
||||
} UnkGroundBg_2BC;
|
||||
|
||||
struct UnkGroundBg_1A0
|
||||
{
|
||||
|
|
@ -199,8 +198,8 @@ typedef struct AnimationSpecification
|
|||
typedef struct GroundBg
|
||||
{
|
||||
s16 newUnk0; // Not present in Red
|
||||
SubStruct_0 unk0[UNK_0_ARR_COUNT];
|
||||
SubStruct_3E0 unk3E0[UNK_3E0_ARR_COUNT]; // 0xc4
|
||||
UnkGroundBg_4 unk4[UNK_4_ARR_COUNT];
|
||||
UnkGroundBg_C4 unkC4[UNK_C4_ARR_COUNT]; // 0xc4
|
||||
struct iovec bplFile; // 0x174
|
||||
struct iovec unk17C; // 0x17C
|
||||
struct iovec bpcFile; // 0x184
|
||||
|
|
@ -236,7 +235,7 @@ typedef struct GroundBg
|
|||
u8 fillerForNow2[112];
|
||||
s16 unk2B8;
|
||||
u8 unk2BA;
|
||||
SubStruct_52C unk52C; // 2bc
|
||||
UnkGroundBg_2BC unk2BC; // 2bc
|
||||
u16 *unk2D8;
|
||||
u16 *unk2DC[2];
|
||||
u16 *unk2E4[2];
|
||||
|
|
@ -244,8 +243,8 @@ typedef struct GroundBg
|
|||
} GroundBg;
|
||||
|
||||
void LoadBackgroundAttributes(struct bg_list_entry* entry, int bgId);
|
||||
void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1);
|
||||
void ov11_022EBEAC(GroundBg *groundBg);
|
||||
void GroundBg_Init(GroundBg *groundBg, const UnkGroundBg_2BC *a1);
|
||||
void GroundBg_FreeAll(GroundBg *groundBg);
|
||||
void ov11_022EBF60(GroundBg *groundBg);
|
||||
void GroundBg_CloseOpenedFiles(GroundBg *groundBg);
|
||||
void ov11_022EC08C(GroundBg *groundBg);
|
||||
|
|
@ -253,6 +252,6 @@ void ov11_022EC240(GroundBg *groundBg, s32 bgId);
|
|||
void ov11_022EC27C(GroundBg *groundBg, s32 bgId);
|
||||
void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc, s32 a3);
|
||||
void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc, s32 a3);
|
||||
const u8 *BmaLayerNrlDecompressor(u16 **dstArray, const void *bmaData, SubStruct_52C *a2, BmaHeader *bmaHeader);
|
||||
const u8 *BmaLayerNrlDecompressor(u16 **dstArray, const void *bmaData, UnkGroundBg_2BC *a2, BmaHeader *bmaHeader);
|
||||
|
||||
#endif //PMDSKY_GROUND_BG_H
|
||||
|
|
|
|||
|
|
@ -1,8 +1,10 @@
|
|||
#ifndef PMDSKY_MAIN_0200330C_H
|
||||
#define PMDSKY_MAIN_0200330C_H
|
||||
|
||||
void ZInit8(int* ptr);
|
||||
u8 PointsToZero(int* ptr);
|
||||
#include "ground_bg.h"
|
||||
|
||||
void ZInit8(struct iovec* ptr);
|
||||
bool8 PointsToZero(struct iovec* ptr);
|
||||
void MemZero(u8* ptr, s32 len);
|
||||
void MemZero16(u16* ptr, s32 len);
|
||||
void MemZero32(u32* ptr, s32 len);
|
||||
|
|
|
|||
2
main.lsf
2
main.lsf
|
|
@ -201,7 +201,7 @@ Overlay OVY_11
|
|||
After OVY_10
|
||||
Object asm/overlay_11.o
|
||||
Object src/ground_bg.o
|
||||
Object asm/overlay_11_022ECD24_data.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
|
||||
|
|
|
|||
306
src/ground_bg.c
306
src/ground_bg.c
|
|
@ -1,5 +1,6 @@
|
|||
#include "ground_bg.h"
|
||||
#include "file_rom.h"
|
||||
#include "main_0200330C.h"
|
||||
|
||||
// TODO: Move these to headers
|
||||
#define RGB_R 0
|
||||
|
|
@ -39,10 +40,8 @@ struct UnkStruct_2324CBC
|
|||
extern struct UnkStruct_2324CBC *ov11_02324CBC;
|
||||
|
||||
extern void FileClose(struct file_stream* file);
|
||||
extern void ZInit8(struct iovec *dst);
|
||||
extern void* MemAlloc(u32 len, u32 flags);
|
||||
extern void MemFree(void* ptr);
|
||||
extern BOOL PointsToZero(struct iovec* ptr);
|
||||
extern void UnloadFile(struct iovec* ptr);
|
||||
extern void sub_0200A590(struct UnkStruct_2324CBC_Sub98 *, s32 id, const RGB_Array *src);
|
||||
extern void sub_0200A504(struct UnkStruct_2324CBC_Sub98 *);
|
||||
|
|
@ -69,7 +68,7 @@ extern void *ov11_02320C18[][2]; // Vram ptrs
|
|||
// Todo: make these static
|
||||
const RGB_Array ov11_02320BF4 = {0, 0, 0, 0};
|
||||
const RGB_Array ov11_02320BF0 = {0, 0, 0, 0};
|
||||
const PixelPos sPositionZero = {0};
|
||||
const PixelPos POSITION_ZERO = {0};
|
||||
const RGB_Array ov11_02320BE8 = {0xFF, 0xFF, 0xFF, 0};
|
||||
const RGB_Array ov11_02320BEC = {0, 0, 0, 0};
|
||||
const RGB_Array ov11_02320BE4 = {0, 0, 0, 0};
|
||||
|
|
@ -102,7 +101,6 @@ void LoadBackgroundAttributes(struct bg_list_entry* entry, int bgId)
|
|||
FileRom_StopDataTransfer();
|
||||
}
|
||||
|
||||
void ov11_022EBF60(GroundBg *groundBg);
|
||||
void *sub_0200B500(void *unk);
|
||||
void sub_02063600(struct UnkGroundBg_1A0 *);
|
||||
void sub_0206367C(struct UnkGroundBg_1A0 *);
|
||||
|
|
@ -110,20 +108,20 @@ void sub_020635C8(struct UnkGroundBg_194 *);
|
|||
void sub_020635D8(struct UnkGroundBg_194 *);
|
||||
void ov11_022EE620(GroundBg *groundBg, s32 a1);
|
||||
|
||||
void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1)
|
||||
void GroundBg_Init(GroundBg *groundBg, const UnkGroundBg_2BC *a1)
|
||||
{
|
||||
SubStruct_0 *unk0Ptr;
|
||||
s32 id, unk0Id, unk3E0Id;
|
||||
UnkGroundBg_4 *unk4Ptr;
|
||||
s32 id, unk4Id, unkC4Id;
|
||||
s32 i;
|
||||
s32 id2;
|
||||
s32 memGroup;
|
||||
|
||||
groundBg->unk52C = *a1;
|
||||
memGroup = (groundBg->unk52C.unk0 == 0) ? 6 : 15;
|
||||
id2 = groundBg->unk52C.unk2;
|
||||
for (id = 0; id < groundBg->unk52C.numLayers; id++, id2++) {
|
||||
if (groundBg->unk52C.unkE[id] > 0) {
|
||||
groundBg->unk2DC[id] = MemAlloc(groundBg->unk52C.unkE[id] * 18u, memGroup);
|
||||
groundBg->unk2BC = *a1;
|
||||
memGroup = (groundBg->unk2BC.unk0 == 0) ? 6 : 15;
|
||||
id2 = groundBg->unk2BC.unk2;
|
||||
for (id = 0; id < groundBg->unk2BC.numLayers; id++, id2++) {
|
||||
if (groundBg->unk2BC.unkE[id] > 0) {
|
||||
groundBg->unk2DC[id] = MemAlloc(groundBg->unk2BC.unkE[id] * 18u, memGroup);
|
||||
}
|
||||
else {
|
||||
groundBg->unk2DC[id] = NULL;
|
||||
|
|
@ -133,18 +131,18 @@ void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1)
|
|||
groundBg->unk2DC[id] = NULL;
|
||||
}
|
||||
|
||||
id = groundBg->unk52C.unk2;
|
||||
for (id2 = 0; id2 < groundBg->unk52C.numLayers; id2++, id++) {
|
||||
id = groundBg->unk2BC.unk2;
|
||||
for (id2 = 0; id2 < groundBg->unk2BC.numLayers; id2++, id++) {
|
||||
|
||||
if (groundBg->unk52C.unk0 == 0) {
|
||||
if (groundBg->unk2BC.unk0 == 0) {
|
||||
groundBg->unk2EC[id2] = sub_0200B500(&ov11_02324CBC->unk0[0][id]);
|
||||
}
|
||||
else {
|
||||
groundBg->unk2EC[id2] = sub_0200B500(&ov11_02324CBC->unk0[1][id]);
|
||||
}
|
||||
|
||||
if (groundBg->unk52C.unkE[id2] > 0) {
|
||||
groundBg->unk2E4[id2] = MemAlloc(groundBg->unk52C.unk14 * 128, memGroup);
|
||||
if (groundBg->unk2BC.unkE[id2] > 0) {
|
||||
groundBg->unk2E4[id2] = MemAlloc(groundBg->unk2BC.unk14 * 128, memGroup);
|
||||
}
|
||||
else {
|
||||
groundBg->unk2E4[id2] = NULL;
|
||||
|
|
@ -155,7 +153,7 @@ void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1)
|
|||
groundBg->unk2E4[id2] = NULL;
|
||||
}
|
||||
|
||||
groundBg->unk2D8 = (groundBg->unk52C.unk18 == 0) ? NULL : MemAlloc(groundBg->unk52C.unk12 * 256, memGroup);
|
||||
groundBg->unk2D8 = (groundBg->unk2BC.unk18 == 0) ? NULL : MemAlloc(groundBg->unk2BC.unk12 * 256, memGroup);
|
||||
ov11_022EBF60(groundBg);
|
||||
groundBg->newUnk0 = 0;
|
||||
groundBg->unk1C0 = 0;
|
||||
|
|
@ -174,15 +172,15 @@ void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1)
|
|||
groundBg->unk1FB = 0;
|
||||
groundBg->unk1BC = 0;
|
||||
|
||||
unk0Ptr = &groundBg->unk0[0];
|
||||
for (unk0Id = 0; unk0Id < UNK_0_ARR_COUNT; unk0Id++, unk0Ptr++) {
|
||||
unk0Ptr->unk0 = 0;
|
||||
unk0Ptr->unk2 = 0;
|
||||
unk0Ptr->unk4 = unk0Ptr->unk8 = 0;
|
||||
unk4Ptr = &groundBg->unk4[0];
|
||||
for (unk4Id = 0; unk4Id < UNK_4_ARR_COUNT; unk4Id++, unk4Ptr++) {
|
||||
unk4Ptr->unk0 = 0;
|
||||
unk4Ptr->unk2 = 0;
|
||||
unk4Ptr->unk4 = unk4Ptr->unk8 = 0;
|
||||
}
|
||||
|
||||
for (unk3E0Id = 0; unk3E0Id < UNK_3E0_ARR_COUNT; unk3E0Id++) {
|
||||
SubStruct_3E0 *unkPtr = &groundBg->unk3E0[unk3E0Id];
|
||||
for (unkC4Id = 0; unkC4Id < UNK_C4_ARR_COUNT; unkC4Id++) {
|
||||
UnkGroundBg_C4 *unkPtr = &groundBg->unkC4[unkC4Id];
|
||||
unkPtr->unk0 = 0;
|
||||
unkPtr->unk1 = 0;
|
||||
unkPtr->unk2 = 0;
|
||||
|
|
@ -196,11 +194,11 @@ void GroundBg_Init(GroundBg *groundBg, const SubStruct_52C *a1)
|
|||
}
|
||||
|
||||
for (i = 0; i < NUM_LAYERS; i++) {
|
||||
groundBg->cameraPixelPosition[i] = sPositionZero;
|
||||
groundBg->cameraPixelPosition[i] = POSITION_ZERO;
|
||||
}
|
||||
}
|
||||
|
||||
void ov11_022EBEAC(GroundBg *groundBg)
|
||||
void GroundBg_FreeAll(GroundBg *groundBg)
|
||||
{
|
||||
s32 i;
|
||||
|
||||
|
|
@ -209,7 +207,7 @@ void ov11_022EBEAC(GroundBg *groundBg)
|
|||
|
||||
for (i = 0; i < NUM_LAYERS; i++) {
|
||||
if (groundBg->unk2DC[i] != NULL) {
|
||||
if (groundBg->unk52C.unkE[i] > 0) {
|
||||
if (groundBg->unk2BC.unkE[i] > 0) {
|
||||
MemFree(groundBg->unk2DC[i]);
|
||||
}
|
||||
groundBg->unk2DC[i] = NULL;
|
||||
|
|
@ -218,7 +216,7 @@ void ov11_022EBEAC(GroundBg *groundBg)
|
|||
groundBg->unk2EC[i] = NULL;
|
||||
}
|
||||
if (groundBg->unk2E4[i] != NULL) {
|
||||
if (groundBg->unk52C.unkE[i] > 0) {
|
||||
if (groundBg->unk2BC.unkE[i] > 0) {
|
||||
MemFree(groundBg->unk2E4[i]);
|
||||
}
|
||||
groundBg->unk2E4[i] = NULL;
|
||||
|
|
@ -230,8 +228,8 @@ void ov11_022EBF60(GroundBg *groundBg)
|
|||
{
|
||||
s32 i;
|
||||
|
||||
for (i = 0; i < UNK_3E0_ARR_COUNT; i++) {
|
||||
SubStruct_3E0 *unkPtr = &groundBg->unk3E0[i];
|
||||
for (i = 0; i < UNK_C4_ARR_COUNT; i++) {
|
||||
UnkGroundBg_C4 *unkPtr = &groundBg->unkC4[i];
|
||||
ZInit8(&unkPtr->bpaFile);
|
||||
}
|
||||
|
||||
|
|
@ -253,8 +251,8 @@ void GroundBg_CloseOpenedFiles(GroundBg *groundBg)
|
|||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < UNK_3E0_ARR_COUNT; i++) {
|
||||
SubStruct_3E0 *unkPtr = &groundBg->unk3E0[i];
|
||||
for (i = 0; i < UNK_C4_ARR_COUNT; i++) {
|
||||
UnkGroundBg_C4 *unkPtr = &groundBg->unkC4[i];
|
||||
TRY_CLOSE_FILE(unkPtr->bpaFile);
|
||||
}
|
||||
sub_0206367C(&groundBg->unk1A0);
|
||||
|
|
@ -271,8 +269,8 @@ void ov11_022EC08C(GroundBg *groundBg)
|
|||
u8 unkId;
|
||||
u16 palId;
|
||||
s32 i, j;
|
||||
SubStruct_0 *unk0Ptr;
|
||||
s32 unk0Id, unk3E0Id;
|
||||
UnkGroundBg_4 *unk4Ptr;
|
||||
s32 unk4Id, unkC4Id;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr;
|
||||
|
||||
GroundBg_CloseOpenedFiles(groundBg);
|
||||
|
|
@ -292,15 +290,15 @@ void ov11_022EC08C(GroundBg *groundBg)
|
|||
groundBg->unk1FB = 0;
|
||||
groundBg->unk1BC = 0;
|
||||
|
||||
unk0Ptr = &groundBg->unk0[0];
|
||||
for (unk0Id = 0; unk0Id < UNK_0_ARR_COUNT; unk0Id++, unk0Ptr++) {
|
||||
unk0Ptr->unk0 = 0;
|
||||
unk0Ptr->unk2 = 0;
|
||||
unk0Ptr->unk4 = unk0Ptr->unk8 = 0;
|
||||
unk4Ptr = &groundBg->unk4[0];
|
||||
for (unk4Id = 0; unk4Id < UNK_4_ARR_COUNT; unk4Id++, unk4Ptr++) {
|
||||
unk4Ptr->unk0 = 0;
|
||||
unk4Ptr->unk2 = 0;
|
||||
unk4Ptr->unk4 = unk4Ptr->unk8 = 0;
|
||||
}
|
||||
|
||||
for (unk3E0Id = 0; unk3E0Id < UNK_3E0_ARR_COUNT; unk3E0Id++) {
|
||||
SubStruct_3E0 *unkPtr = &groundBg->unk3E0[unk3E0Id];
|
||||
for (unkC4Id = 0; unkC4Id < UNK_C4_ARR_COUNT; unkC4Id++) {
|
||||
UnkGroundBg_C4 *unkPtr = &groundBg->unkC4[unkC4Id];
|
||||
unkPtr->unk0 = 0;
|
||||
unkPtr->unk1 = 0;
|
||||
unkPtr->unk2 = 0;
|
||||
|
|
@ -314,10 +312,10 @@ void ov11_022EC08C(GroundBg *groundBg)
|
|||
unkPtr->unk28 = 0;
|
||||
}
|
||||
|
||||
unkId = groundBg->unk52C.unk0;
|
||||
unkId = groundBg->unk2BC.unk0;
|
||||
unkSubPtr = &ov11_02324CBC->unk98[unkId];
|
||||
palId = groundBg->unk52C.unk6 * 16;
|
||||
for (i = 0; i < groundBg->unk52C.unk8; i++) {
|
||||
palId = groundBg->unk2BC.unk6 * 16;
|
||||
for (i = 0; i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
for (j = 1; j < 16; j++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BE8);
|
||||
|
|
@ -325,7 +323,7 @@ void ov11_022EC08C(GroundBg *groundBg)
|
|||
}
|
||||
sub_0200A504(unkSubPtr);
|
||||
|
||||
if (groundBg->unk52C.numLayers > 0) {
|
||||
if (groundBg->unk2BC.numLayers > 0) {
|
||||
ov11_022EE620(groundBg, 1);
|
||||
}
|
||||
else {
|
||||
|
|
@ -361,16 +359,16 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
s32 i, j;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr;
|
||||
const RGB_Array *rgbPal;
|
||||
s32 unk0Id;
|
||||
SubStruct_0 *sub0Ptr;
|
||||
s32 unk3E0Id;
|
||||
s32 unk4Id;
|
||||
UnkGroundBg_4 *sub4Ptr;
|
||||
s32 unkC4Id;
|
||||
BmaHeader *bmaHeader;
|
||||
BplHeader *bplHeader;
|
||||
const void *bmaData;
|
||||
u16 palId;
|
||||
s32 r7;
|
||||
|
||||
flags = (groundBg->unk52C.unk0 == 0) ? 6 : 15;
|
||||
flags = (groundBg->unk2BC.unk0 == 0) ? 6 : 15;
|
||||
if (bgId == -1) {
|
||||
ov11_022EC08C(groundBg);
|
||||
return;
|
||||
|
|
@ -447,15 +445,15 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
bmaHeader->hasCollision = *(u8 *)(bmaData); bmaData += 2;
|
||||
|
||||
rgbPal = bplData;
|
||||
unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk52C.unk0];
|
||||
palId = groundBg->unk52C.unk6 * 16;
|
||||
for (i = 0; i < bplHeader->numPalettes && i < groundBg->unk52C.unk8; i++) {
|
||||
unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk2BC.unk0];
|
||||
palId = groundBg->unk2BC.unk6 * 16;
|
||||
for (i = 0; i < bplHeader->numPalettes && i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
sub_0200A5B0(unkSubPtr, palId, rgbPal, 15);
|
||||
palId += 15;
|
||||
rgbPal += 15;
|
||||
}
|
||||
for (; i < groundBg->unk52C.unk8; i++) {
|
||||
for (; i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
for (j = 1; j < 16; j++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BE8);
|
||||
|
|
@ -464,8 +462,8 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
sub_0200A504(unkSubPtr);
|
||||
|
||||
// Bpc decompressor
|
||||
sp20 = groundBg->unk52C.unk2;
|
||||
for (i = 0; i < groundBg->unk52C.unk4; sp20++, i++) {
|
||||
sp20 = groundBg->unk2BC.unk2;
|
||||
for (i = 0; i < groundBg->unk2BC.unk4; sp20++, i++) {
|
||||
const u8 *srcStart = sp44[i];
|
||||
if (srcStart != NULL) {
|
||||
s32 k; // r1
|
||||
|
|
@ -473,8 +471,8 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
s32 nbWordsToOutput;
|
||||
u16 *tilemapR7, *tilemapR3, *tilemapR12;
|
||||
LayerSpecs *layerSpecs = &groundBg->layerSpecs[i]; // r9
|
||||
s32 r3 = groundBg->unk52C.unk0;
|
||||
u16 *dstR11 = ov11_02320C18[r3][sp20] + groundBg->unk52C.unkA * 32; // r11 fp
|
||||
s32 r3 = groundBg->unk2BC.unk0;
|
||||
u16 *dstR11 = ov11_02320C18[r3][sp20] + groundBg->unk2BC.unkA * 32; // r11 fp
|
||||
u16 *dstSP10 = ov11_02320C18[r3][sp20] + layerSpecs->numTiles * 32; // sp 10
|
||||
const u8 *src = srcStart; // r6
|
||||
u16 leftoverVal2 = 0; // r7
|
||||
|
|
@ -574,13 +572,13 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
}
|
||||
|
||||
// Copy tilemaps
|
||||
for (r7 = layerSpecs->numTiles; r7 < groundBg->unk52C.unkC; r7++) {
|
||||
for (r7 = layerSpecs->numTiles; r7 < groundBg->unk2BC.unkC; r7++) {
|
||||
for (k = 0; k < 16; k++) {
|
||||
*dstR11++ = 0xFFFF;
|
||||
}
|
||||
}
|
||||
|
||||
unkOrVal = (groundBg->unk52C.unk6 << 12) | groundBg->unk52C.unkA;
|
||||
unkOrVal = (groundBg->unk2BC.unk6 << 12) | groundBg->unk2BC.unkA;
|
||||
tilemapR12 = groundBg->unk2DC[i];
|
||||
tilemapR3 = tilemapR12;
|
||||
groundBg->unk2B8 = 1;
|
||||
|
|
@ -649,15 +647,15 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
}
|
||||
}
|
||||
|
||||
bmaData = BmaLayerNrlDecompressor(groundBg->unk2E4, bmaData, &groundBg->unk52C, &groundBg->bmaHeader);
|
||||
bmaData = BmaLayerNrlDecompressor(groundBg->unk2E4, bmaData, &groundBg->unk2BC, &groundBg->bmaHeader);
|
||||
groundBg->unk1F0 = bmaData;
|
||||
if (groundBg->unk2D8 != NULL) {
|
||||
groundBg->unk52C.unk18(groundBg->unk2D8, bmaData, bmaHeader, groundBg->unk52C.unk12);
|
||||
groundBg->unk2BC.unk18(groundBg->unk2D8, bmaData, bmaHeader, groundBg->unk2BC.unk12);
|
||||
}
|
||||
|
||||
groundBg->unk1EE = 0;
|
||||
sub0Ptr = groundBg->unk0;
|
||||
unk0Id = 0;
|
||||
sub4Ptr = groundBg->unk4;
|
||||
unk4Id = 0;
|
||||
|
||||
if (bplHeader->hasPalAnimations) {
|
||||
s32 numPals = bplHeader->numPalettes * 15;
|
||||
|
|
@ -670,17 +668,17 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
groundBg->unk1FA = 1;
|
||||
groundBg->unk1FB = 1;
|
||||
groundBg->unk1BC = 0;
|
||||
for (; unk0Id < bplHeader->numPalettes && unk0Id < groundBg->unk52C.unk8; unk0Id++, sub0Ptr++, animSpecifications++) {
|
||||
for (; unk4Id < bplHeader->numPalettes && unk4Id < groundBg->unk2BC.unk8; unk4Id++, sub4Ptr++, animSpecifications++) {
|
||||
if (animSpecifications->numFrames > 0) {
|
||||
sub0Ptr->unk4 = animationPalette;
|
||||
sub4Ptr->unk4 = animationPalette;
|
||||
animationPalette += animSpecifications->numFrames * 15;
|
||||
}
|
||||
else {
|
||||
sub0Ptr->unk4 = NULL;
|
||||
sub4Ptr->unk4 = NULL;
|
||||
}
|
||||
sub0Ptr->unk0 = 0;
|
||||
sub0Ptr->unk2 = 0;
|
||||
sub0Ptr->unk8 = 0;
|
||||
sub4Ptr->unk0 = 0;
|
||||
sub4Ptr->unk2 = 0;
|
||||
sub4Ptr->unk8 = 0;
|
||||
}
|
||||
}
|
||||
else {
|
||||
|
|
@ -692,33 +690,33 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
groundBg->unk1BC = 0;
|
||||
}
|
||||
|
||||
for (; unk0Id < UNK_0_ARR_COUNT; unk0Id++, sub0Ptr++) {
|
||||
sub0Ptr->unk0 = 0;
|
||||
sub0Ptr->unk2 = 0;
|
||||
sub0Ptr->unk4 = sub0Ptr->unk8 = 0;
|
||||
for (; unk4Id < UNK_4_ARR_COUNT; unk4Id++, sub4Ptr++) {
|
||||
sub4Ptr->unk0 = 0;
|
||||
sub4Ptr->unk2 = 0;
|
||||
sub4Ptr->unk4 = sub4Ptr->unk8 = 0;
|
||||
}
|
||||
|
||||
for (unk3E0Id = 0; unk3E0Id < UNK_3E0_ARR_COUNT; unk3E0Id++) {
|
||||
SubStruct_3E0 *sub3E0 = &groundBg->unk3E0[unk3E0Id];
|
||||
sub3E0->unk0 = 0;
|
||||
sub3E0->unk1 = 0;
|
||||
sub3E0->unk4 = 0;
|
||||
sub3E0->unk2 = 0;
|
||||
ZInit8(&sub3E0->bpaFile);
|
||||
sub3E0->unk10 = 0;
|
||||
sub3E0->unk18 = 0;
|
||||
sub3E0->unk14 = 0;
|
||||
sub3E0->unk20 = 0;
|
||||
sub3E0->unk24 = sub3E0->unk1C = 0;
|
||||
sub3E0->unk28 = 0;
|
||||
for (unkC4Id = 0; unkC4Id < UNK_C4_ARR_COUNT; unkC4Id++) {
|
||||
UnkGroundBg_C4 *subC4 = &groundBg->unkC4[unkC4Id];
|
||||
subC4->unk0 = 0;
|
||||
subC4->unk1 = 0;
|
||||
subC4->unk4 = 0;
|
||||
subC4->unk2 = 0;
|
||||
ZInit8(&subC4->bpaFile);
|
||||
subC4->unk10 = 0;
|
||||
subC4->unk18 = 0;
|
||||
subC4->unk14 = 0;
|
||||
subC4->unk20 = 0;
|
||||
subC4->unk24 = subC4->unk1C = 0;
|
||||
subC4->unk28 = 0;
|
||||
}
|
||||
|
||||
r7 = groundBg->unk52C.unk2;
|
||||
r7 = groundBg->unk2BC.unk2;
|
||||
s32 r5;
|
||||
for (r5 = 0; r5 < groundBg->unk52C.unk4; r5++, r7++) {
|
||||
for (r5 = 0; r5 < groundBg->unk2BC.unk4; r5++, r7++) {
|
||||
LayerSpecs *layerSpecs = &groundBg->layerSpecs[r5];
|
||||
s32 vramId = (groundBg->unk52C.unkA + layerSpecs->numTiles);
|
||||
void *vramPtr = ov11_02320C18[groundBg->unk52C.unk0][r7] + (vramId * 32);
|
||||
s32 vramId = (groundBg->unk2BC.unkA + layerSpecs->numTiles);
|
||||
void *vramPtr = ov11_02320C18[groundBg->unk2BC.unk0][r7] + (vramId * 32);
|
||||
s32 r8 = (r5 == 0) ? 0 : 2;
|
||||
s32 r9 = (r5 == 0) ? 0 : 4;
|
||||
layerSpecs = &groundBg->layerSpecs[r5];
|
||||
|
|
@ -726,32 +724,32 @@ void ov11_022EC27C(GroundBg *groundBg, s32 bgId)
|
|||
|
||||
for (r6 = 0; r6 < 2; r6++, r9++, r8++) {
|
||||
|
||||
SubStruct_3E0 *sub3E0 = &groundBg->unk3E0[r8];
|
||||
if (entry.others_bpa[r9].name[0] != '\0' && groundBg->unk52C.unk0 == 0) {
|
||||
UnkGroundBg_C4 *subC4 = &groundBg->unkC4[r8];
|
||||
if (entry.others_bpa[r9].name[0] != '\0' && groundBg->unk2BC.unk0 == 0) {
|
||||
const struct BpaHeader *bpaHeader;
|
||||
const void *r1, *r0;
|
||||
|
||||
sprintf(textBuf, ov11_02320C94, entry.others_bpa[r9].name);
|
||||
LoadFileFromRom(&sub3E0->bpaFile, textBuf, flags);
|
||||
sub3E0->unk0 = 1;
|
||||
sub3E0->unk1 = 1;
|
||||
bpaHeader = sub3E0->bpaFile.iov_base;
|
||||
sub3E0->unk10 = bpaHeader;
|
||||
LoadFileFromRom(&subC4->bpaFile, textBuf, flags);
|
||||
subC4->unk0 = 1;
|
||||
subC4->unk1 = 1;
|
||||
bpaHeader = subC4->bpaFile.iov_base;
|
||||
subC4->unk10 = bpaHeader;
|
||||
r1 = &bpaHeader->durationPerFrame;
|
||||
r0 = r1 + bpaHeader->numFrames * 4;
|
||||
sub3E0->unk14 = sub3E0->unk18 = r1;
|
||||
sub3E0->unk1C = sub3E0->unk20 = r0;
|
||||
sub3E0->unk2 = 0;
|
||||
sub3E0->unk4 = *((u32 *)sub3E0->unk18); // hm...
|
||||
sub3E0->unk24 = vramPtr;
|
||||
sub3E0->unk28 = layerSpecs->bpaSlotNumTiles[r6] * 32;
|
||||
subC4->unk14 = subC4->unk18 = r1;
|
||||
subC4->unk1C = subC4->unk20 = r0;
|
||||
subC4->unk2 = 0;
|
||||
subC4->unk4 = *((u32 *)subC4->unk18); // hm...
|
||||
subC4->unk24 = vramPtr;
|
||||
subC4->unk28 = layerSpecs->bpaSlotNumTiles[r6] * 32;
|
||||
|
||||
vramPtr += layerSpecs->bpaSlotNumTiles[r6] * 32;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (groundBg->unk52C.unk4 > 0) {
|
||||
if (groundBg->unk2BC.unk4 > 0) {
|
||||
ov11_022EE620(groundBg, 1);
|
||||
}
|
||||
else {
|
||||
|
|
@ -1551,7 +1549,7 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
const void *bmaData;
|
||||
const void *bplData;
|
||||
struct Unk_022C3938 sp2C;
|
||||
SubStruct_0 *sub0Ptr;
|
||||
UnkGroundBg_4 *sub4Ptr;
|
||||
|
||||
if (bgId == -1 || dungLoc->id == 0xff) {
|
||||
ov11_022EC08C(groundBg);
|
||||
|
|
@ -1609,7 +1607,7 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
struct UnkTwoPtrs unkPtrArray = zeros;
|
||||
|
||||
unkPtrArray.ptrs[0] = groundBg->unk2D8;
|
||||
bmaData = BmaLayerNrlDecompressor((void *) &unkPtrArray, bmaData, &groundBg->unk52C, &groundBg->bmaHeader);
|
||||
bmaData = BmaLayerNrlDecompressor((void *) &unkPtrArray, bmaData, &groundBg->unk2BC, &groundBg->bmaHeader);
|
||||
}
|
||||
|
||||
groundBg->unk1F0 = bmaData;
|
||||
|
|
@ -1625,7 +1623,7 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->unk2D8);
|
||||
groundBg->unk17C = sp2C.unk0;
|
||||
groundBg->unk1B8 = sp2C.unk8;
|
||||
groundBg->unk52C.unk18(groundBg->unk2D8, bmaData, bmaHeader, groundBg->unk52C.unk12);
|
||||
groundBg->unk2BC.unk18(groundBg->unk2D8, bmaData, bmaHeader, groundBg->unk2BC.unk12);
|
||||
|
||||
layerSpecs->numTiles = 512;
|
||||
for (i = 0; i < MAX_BPA_SLOTS; i++) {
|
||||
|
|
@ -1637,11 +1635,11 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->bplHeader.hasPalAnimations = FALSE;
|
||||
if (groundBg->unk1B8 != NULL) {
|
||||
const RGB_Array *strPtr = groundBg->unk1B8;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk52C.unk0];
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk2BC.unk0];
|
||||
u16 palId = 0;
|
||||
s32 i, j;
|
||||
|
||||
for (i = 0; i < 12 && i < groundBg->unk52C.unk8; i++) {
|
||||
for (i = 0; i < 12 && i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
strPtr++;
|
||||
for (j = 1; j < 16; j++) {
|
||||
|
|
@ -1657,7 +1655,7 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
}
|
||||
}
|
||||
|
||||
for (; i < groundBg->unk52C.unk8; i++) {
|
||||
for (; i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
for (j = 1; j < 16; j++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BE8);
|
||||
|
|
@ -1667,8 +1665,8 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
}
|
||||
|
||||
groundBg->unk1EE = 0;
|
||||
sub0Ptr = groundBg->unk0;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk52C.unk0];
|
||||
sub4Ptr = groundBg->unk4;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk2BC.unk0];
|
||||
groundBg->unk1BC = 0;
|
||||
if (groundBg->unk194.unk8 != 0) {
|
||||
sub_02063628(&groundBg->unk1A0, unkSubPtr, 0x20);
|
||||
|
|
@ -1681,24 +1679,24 @@ void LoadMapType10(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->unk1FA = 0;
|
||||
groundBg->unk1FB = 0;
|
||||
|
||||
for (s32 unk0Id = 0; unk0Id < UNK_0_ARR_COUNT; unk0Id++, sub0Ptr++) {
|
||||
sub0Ptr->unk0 = 0;
|
||||
sub0Ptr->unk2 = 0;
|
||||
sub0Ptr->unk4 = sub0Ptr->unk8 = 0;
|
||||
for (s32 unk4Id = 0; unk4Id < UNK_4_ARR_COUNT; unk4Id++, sub4Ptr++) {
|
||||
sub4Ptr->unk0 = 0;
|
||||
sub4Ptr->unk2 = 0;
|
||||
sub4Ptr->unk4 = sub4Ptr->unk8 = 0;
|
||||
}
|
||||
|
||||
for (s32 unk3E0Id = 0; unk3E0Id < UNK_3E0_ARR_COUNT; unk3E0Id++) {
|
||||
SubStruct_3E0 *sub3E0 = &groundBg->unk3E0[unk3E0Id];
|
||||
sub3E0->unk0 = 0;
|
||||
sub3E0->unk1 = 0;
|
||||
sub3E0->unk4 = 0;
|
||||
sub3E0->unk2 = 0;
|
||||
sub3E0->unk10 = 0;
|
||||
sub3E0->unk18 = 0;
|
||||
sub3E0->unk14 = 0;
|
||||
sub3E0->unk20 = 0;
|
||||
sub3E0->unk24 = sub3E0->unk1C = 0,
|
||||
sub3E0->unk28 = 0;
|
||||
for (s32 unkC4Id = 0; unkC4Id < UNK_C4_ARR_COUNT; unkC4Id++) {
|
||||
UnkGroundBg_C4 *subC4 = &groundBg->unkC4[unkC4Id];
|
||||
subC4->unk0 = 0;
|
||||
subC4->unk1 = 0;
|
||||
subC4->unk4 = 0;
|
||||
subC4->unk2 = 0;
|
||||
subC4->unk10 = 0;
|
||||
subC4->unk18 = 0;
|
||||
subC4->unk14 = 0;
|
||||
subC4->unk20 = 0;
|
||||
subC4->unk24 = subC4->unk1C = 0,
|
||||
subC4->unk28 = 0;
|
||||
}
|
||||
|
||||
ov11_022EE620(groundBg, 1);
|
||||
|
|
@ -1716,7 +1714,7 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
s32 i;
|
||||
s32 sp24, sp28;
|
||||
struct Unk_022C3938 sp2C;
|
||||
SubStruct_0 *sub0Ptr;
|
||||
UnkGroundBg_4 *sub4Ptr;
|
||||
|
||||
if (bgId == -1 || dungLoc->id == 0xff) {
|
||||
ov11_022EC08C(groundBg);
|
||||
|
|
@ -1766,7 +1764,7 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->unk2D8);
|
||||
groundBg->unk17C = sp2C.unk0;
|
||||
groundBg->unk1B8 = sp2C.unk8;
|
||||
groundBg->unk52C.unk18(groundBg->unk2D8, NULL, bmaHeader, groundBg->unk52C.unk12);
|
||||
groundBg->unk2BC.unk18(groundBg->unk2D8, NULL, bmaHeader, groundBg->unk2BC.unk12);
|
||||
|
||||
layerSpecs->numTiles = 512;
|
||||
for (i = 0; i < MAX_BPA_SLOTS; i++) {
|
||||
|
|
@ -1778,11 +1776,11 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->bplHeader.hasPalAnimations = FALSE;
|
||||
if (groundBg->unk1B8 != NULL) {
|
||||
const RGB_Array *strPtr = groundBg->unk1B8;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk52C.unk0];
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk2BC.unk0];
|
||||
u16 palId = 0;
|
||||
s32 i, j;
|
||||
|
||||
for (i = 0; i < 12 && i < groundBg->unk52C.unk8; i++) {
|
||||
for (i = 0; i < 12 && i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
strPtr++;
|
||||
for (j = 1; j < 16; j++) {
|
||||
|
|
@ -1798,7 +1796,7 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
}
|
||||
}
|
||||
|
||||
for (; i < groundBg->unk52C.unk8; i++) {
|
||||
for (; i < groundBg->unk2BC.unk8; i++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BF4);
|
||||
for (j = 1; j < 16; j++) {
|
||||
sub_0200A590(unkSubPtr, palId++, &ov11_02320BE8);
|
||||
|
|
@ -1808,8 +1806,8 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
}
|
||||
|
||||
groundBg->unk1EE = 0;
|
||||
sub0Ptr = groundBg->unk0;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk52C.unk0];
|
||||
sub4Ptr = groundBg->unk4;
|
||||
struct UnkStruct_2324CBC_Sub98 *unkSubPtr = &ov11_02324CBC->unk98[groundBg->unk2BC.unk0];
|
||||
groundBg->unk1BC = 0;
|
||||
if (groundBg->unk194.unk8 != 0) {
|
||||
sub_02063628(&groundBg->unk1A0, unkSubPtr, 0x20);
|
||||
|
|
@ -1822,24 +1820,24 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
groundBg->unk1FA = 0;
|
||||
groundBg->unk1FB = 0;
|
||||
|
||||
for (s32 unk0Id = 0; unk0Id < UNK_0_ARR_COUNT; unk0Id++, sub0Ptr++) {
|
||||
sub0Ptr->unk0 = 0;
|
||||
sub0Ptr->unk2 = 0;
|
||||
sub0Ptr->unk4 = sub0Ptr->unk8 = 0;
|
||||
for (s32 unk4Id = 0; unk4Id < UNK_4_ARR_COUNT; unk4Id++, sub4Ptr++) {
|
||||
sub4Ptr->unk0 = 0;
|
||||
sub4Ptr->unk2 = 0;
|
||||
sub4Ptr->unk4 = sub4Ptr->unk8 = 0;
|
||||
}
|
||||
|
||||
for (s32 unk3E0Id = 0; unk3E0Id < UNK_3E0_ARR_COUNT; unk3E0Id++) {
|
||||
SubStruct_3E0 *sub3E0 = &groundBg->unk3E0[unk3E0Id];
|
||||
sub3E0->unk0 = 0;
|
||||
sub3E0->unk1 = 0;
|
||||
sub3E0->unk4 = 0;
|
||||
sub3E0->unk2 = 0;
|
||||
sub3E0->unk10 = 0;
|
||||
sub3E0->unk18 = 0;
|
||||
sub3E0->unk14 = 0;
|
||||
sub3E0->unk20 = 0;
|
||||
sub3E0->unk24 = sub3E0->unk1C = 0,
|
||||
sub3E0->unk28 = 0;
|
||||
for (s32 unkC4Id = 0; unkC4Id < UNK_C4_ARR_COUNT; unkC4Id++) {
|
||||
UnkGroundBg_C4 *subC4 = &groundBg->unkC4[unkC4Id];
|
||||
subC4->unk0 = 0;
|
||||
subC4->unk1 = 0;
|
||||
subC4->unk4 = 0;
|
||||
subC4->unk2 = 0;
|
||||
subC4->unk10 = 0;
|
||||
subC4->unk18 = 0;
|
||||
subC4->unk14 = 0;
|
||||
subC4->unk20 = 0;
|
||||
subC4->unk24 = subC4->unk1C = 0,
|
||||
subC4->unk28 = 0;
|
||||
}
|
||||
|
||||
groundBg->unk2B8 = 1;
|
||||
|
|
@ -1849,5 +1847,3 @@ void LoadMapType11(GroundBg *groundBg, s32 bgId, const DungeonLocation *dungLoc,
|
|||
TRY_CLOSE_FILE(groundBg->bpcFile);
|
||||
TRY_CLOSE_FILE(groundBg->bmaFile);
|
||||
}
|
||||
|
||||
//
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
// TODO: Merge with ground_bg.c once the functions in the middle are decompiled
|
||||
|
||||
const u8 * BmaLayerNrlDecompressor(u16 **dstArray, const void *bmaData, SubStruct_52C *a2, BmaHeader *bmaHeader)
|
||||
const u8 * BmaLayerNrlDecompressor(u16 **dstArray, const void *bmaData, UnkGroundBg_2BC *a2, BmaHeader *bmaHeader)
|
||||
{
|
||||
s32 i, k, j, l;
|
||||
const u8 *src = bmaData;
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
#include "main_0200330C.h"
|
||||
|
||||
void ZInit8(int* ptr)
|
||||
void ZInit8(struct iovec* ptr)
|
||||
{
|
||||
ptr[0]=0;
|
||||
ptr[1]=0;
|
||||
ptr->iov_base = NULL;
|
||||
ptr->iov_len = 0;
|
||||
}
|
||||
|
||||
u8 PointsToZero(int* ptr)
|
||||
bool8 PointsToZero(struct iovec* ptr)
|
||||
{
|
||||
if (*ptr == 0) {
|
||||
return 1;
|
||||
if (ptr->iov_base == NULL) {
|
||||
return TRUE;
|
||||
} else {
|
||||
return 0;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ MAIN_LSF_PATH = 'main.lsf'
|
|||
|
||||
# Symbols with duplicate addresses that should be ignored.
|
||||
XMAP_SYMBOL_BLACKLIST = set([
|
||||
'AI_POTENTIAL_ATTACK_TARGET_WEIGHTS_2'
|
||||
'AI_POTENTIAL_ATTACK_TARGET_WEIGHTS_2',
|
||||
'zeros$498'
|
||||
])
|
||||
|
||||
"""
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user