mirror of
https://github.com/pret/pmd-sky.git
synced 2026-08-27 21:25:43 -05:00
Merge pull request #23 from AnonymousRandomPerson/main
Synced data symbols with pmdsky-debug
This commit is contained in:
@@ -6,8 +6,6 @@
|
||||
.public _02099784
|
||||
.public _02099E44
|
||||
.public _020A2CF8
|
||||
.public _020A9FB0
|
||||
.public _020AFC80
|
||||
.public _020B09B4
|
||||
.public _0229AFC0
|
||||
.public _0229AFCC
|
||||
@@ -105,6 +103,7 @@
|
||||
.public EnableIrqFlag
|
||||
.public EntityIsValid__0230827C
|
||||
.public EntityIsValid__02319F8C
|
||||
.public GeomMtxMult4x3
|
||||
.public GeomSetTexImageParam
|
||||
.public GeomSetVertexCoord16
|
||||
.public GetAllBaseForms
|
||||
@@ -125,6 +124,8 @@
|
||||
.public IsChargingTwoTurnMove
|
||||
.public IsMonster__0231A9D4
|
||||
.public IsMonsterCornered
|
||||
.public MemcpyFast
|
||||
.public MemsetFast
|
||||
.public ov29_022E935C
|
||||
.public ov29_022EBC74
|
||||
.public ov29_022FBDF0
|
||||
@@ -144,7 +145,8 @@
|
||||
.public ov29_0231B008
|
||||
.public ov29_02338350
|
||||
.public ov29_02348D00
|
||||
.public Rgb8ToBgr5
|
||||
.public RENDER_3D
|
||||
.public Rgb8ToRgb5
|
||||
.public SetActionPassTurnOrWalk
|
||||
.public SetActionRegularAttack
|
||||
.public SetActionUseMoveAi
|
||||
@@ -157,16 +159,14 @@
|
||||
.public sub_020275F8
|
||||
.public sub_0202760C
|
||||
.public sub_02027AF0
|
||||
.public sub_020777A8
|
||||
.public sub_0207A238
|
||||
.public sub_0207A244
|
||||
.public sub_0207A300
|
||||
.public sub_0207A324
|
||||
.public sub_0207C40C
|
||||
.public sub_0207C4C8
|
||||
.public sub_02080EF0
|
||||
.public sub_02080EF0
|
||||
.public sub_02080F30
|
||||
.public sub_02080F30
|
||||
.public TRIG_TABLE
|
||||
.public TryAddTargetToAiTargetList
|
||||
.public UpdateAiTargetPos
|
||||
|
||||
@@ -1,20 +1,11 @@
|
||||
#pragma once
|
||||
.public ClearIrqFlag
|
||||
.public DebugPrint
|
||||
.public DebugPrint0
|
||||
.public DecompressAtFromMemoryPointer
|
||||
.public FatalError
|
||||
.public FileInit
|
||||
.public InitDebug
|
||||
.public MainLoop
|
||||
.public WaitForInterrupt
|
||||
.public _0200A314
|
||||
.public _0200A344
|
||||
.public __addsf3
|
||||
.public __divsi3
|
||||
.public __floatsisf
|
||||
.public __mulsf3
|
||||
.public _0200A314
|
||||
.public _0200A314
|
||||
.public _0200A344
|
||||
.public _0200A344
|
||||
.public _02090B40
|
||||
.public _02090B70
|
||||
@@ -22,7 +13,6 @@
|
||||
.public _02090BC8
|
||||
.public _02090BFC
|
||||
.public _02090C48
|
||||
.public _02091448
|
||||
.public _02092448
|
||||
.public _02092460
|
||||
.public _02092464
|
||||
@@ -63,7 +53,6 @@
|
||||
.public _02092A98
|
||||
.public _02092AB8
|
||||
.public _02092AD8
|
||||
.public _02092AE8
|
||||
.public _02094AE8
|
||||
.public _02094AF0
|
||||
.public _02094AFC
|
||||
@@ -74,9 +63,7 @@
|
||||
.public _02094B54
|
||||
.public _02094B58
|
||||
.public _02094B60
|
||||
.public _020AEF00
|
||||
.public _020AEF08
|
||||
.public _020AEF2C
|
||||
.public _020AEF30
|
||||
.public _020AEF58
|
||||
.public _020AEF7C
|
||||
@@ -88,7 +75,6 @@
|
||||
.public _020AF050
|
||||
.public _020AF078
|
||||
.public _020AF154
|
||||
.public _020AF230
|
||||
.public _020AF23C
|
||||
.public _020AF240
|
||||
.public _020AF264
|
||||
@@ -192,15 +178,38 @@
|
||||
.public _022A3806
|
||||
.public _022B966C
|
||||
.public abs
|
||||
.public ArrayFill32Fast
|
||||
.public CART_REMOVED_IMG_DATA
|
||||
.public ClearIrqFlag
|
||||
.public ClearIrqFlag
|
||||
.public DEBUG_IS_INITIALIZED
|
||||
.public DebugPrint
|
||||
.public DebugPrint0
|
||||
.public DecompressAtFromMemoryPointer
|
||||
.public DecompressAtFromMemoryPointer
|
||||
.public FatalError
|
||||
.public FileInit
|
||||
.public FileInit
|
||||
.public InitDebug
|
||||
.public LOADED_OVERLAY_GROUP_0
|
||||
.public MainLoop
|
||||
.public MainLoop
|
||||
.public MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
.public NATURAL_LOG_VALUE_TABLE
|
||||
.public PRNG_SEQUENCE_NUM
|
||||
.public sprintf
|
||||
.public sqrtf
|
||||
.public strcat
|
||||
.public strcmp
|
||||
.public strcpy
|
||||
.public STRING_DEBUG_EMPTY
|
||||
.public STRING_DEBUG_FATAL
|
||||
.public STRING_DEBUG_FORMAT_LINE_FILE
|
||||
.public STRING_DEBUG_LOG_NULL
|
||||
.public STRING_DEBUG_NEWLINE
|
||||
.public STRING_DEBUG_NO_PROG_POS
|
||||
.public STRING_DEBUG_SPACED_PRINT
|
||||
.public STRING_DEBUG_STRING_NEWLINE
|
||||
.public strlen
|
||||
.public strncpy
|
||||
.public sub_02017D20
|
||||
@@ -300,7 +309,6 @@
|
||||
.public sub_0207C03C
|
||||
.public sub_0207C0DC
|
||||
.public sub_0207C164
|
||||
.public sub_0207C358
|
||||
.public sub_0207F3BC
|
||||
.public sub_0207F6C4
|
||||
.public sub_0207F70C
|
||||
@@ -331,12 +339,4 @@
|
||||
.public sub_02085180
|
||||
.public vsprintf
|
||||
.public WaitForInterrupt
|
||||
.public STRING_DEBUG_STRING_NEWLINE
|
||||
.public STRING_DEBUG_NEWLINE
|
||||
.public STRING_DEBUG_LOG_NULL
|
||||
.public STRING_DEBUG_FATAL
|
||||
.public STRING_DEBUG_EMPTY
|
||||
.public STRING_DEBUG_FORMAT_LINE_FILE
|
||||
.public STRING_DEBUG_NO_PROG_POS
|
||||
.public STRING_DEBUG_SPACED_PRINT
|
||||
.public DEBUG_IS_INITIALIZED
|
||||
.public WaitForInterrupt
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
.public RandRange
|
||||
.public RandRangeSafe
|
||||
.public Render3dStack
|
||||
.public Rgb8ToBgr5
|
||||
.public Rgb8ToRgb5
|
||||
.public SetDebugFlag
|
||||
.public SetDebugLogFlag
|
||||
.public SetRngSeed
|
||||
|
||||
@@ -182,14 +182,14 @@
|
||||
.public sub_0207BB50
|
||||
.public sub_0207BC4C
|
||||
.public sub_0207BD3C
|
||||
.public sub_0207C2B8
|
||||
.public sub_0207C2E0
|
||||
.public sub_0207C314
|
||||
.public sub_0207C330
|
||||
.public sub_0207C358
|
||||
.public sub_0207C3B4
|
||||
.public sub_0207C40C
|
||||
.public sub_0207C4C8
|
||||
.public ArrayFill16
|
||||
.public ArrayCopy16
|
||||
.public ArrayFill32
|
||||
.public ArrayCopy32
|
||||
.public ArrayFill32Fast
|
||||
.public ArrayCopy32Fast
|
||||
.public MemsetFast
|
||||
.public MemcpyFast
|
||||
.public sub_0207D9A4
|
||||
.public sub_0207DAB0
|
||||
.public sub_0207DAFC
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
#pragma once
|
||||
.public __divsi3
|
||||
.public __udivsi3
|
||||
.public _020AF6B8
|
||||
.public _020AFC68
|
||||
.public _020B0A5C
|
||||
.public ArrayCopy32
|
||||
.public BAG_ITEMS_PTR_MIRROR
|
||||
.public CardBackupError
|
||||
.public ComputeSpecialCounters
|
||||
.public Copy16BitsFrom
|
||||
@@ -354,8 +354,8 @@
|
||||
.public sub_0205BBA4
|
||||
.public sub_02062B64
|
||||
.public sub_0207A2A4
|
||||
.public sub_0207C330
|
||||
.public sub_020851AC
|
||||
.public sub_0208FE3C
|
||||
.public sub_0208FE48
|
||||
.public vsprintf
|
||||
.public WAN_TABLE
|
||||
|
||||
@@ -190,14 +190,14 @@
|
||||
.public sub_0207B860
|
||||
.public sub_0207B9EC
|
||||
.public sub_0207BA08
|
||||
.public sub_0207C2B8
|
||||
.public sub_0207C2E0
|
||||
.public sub_0207C314
|
||||
.public sub_0207C330
|
||||
.public sub_0207C358
|
||||
.public sub_0207C3B4
|
||||
.public sub_0207C40C
|
||||
.public sub_0207C4C8
|
||||
.public ArrayFill16
|
||||
.public ArrayCopy16
|
||||
.public ArrayFill32
|
||||
.public ArrayCopy32
|
||||
.public ArrayFill32Fast
|
||||
.public ArrayCopy32Fast
|
||||
.public MemsetFast
|
||||
.public MemcpyFast
|
||||
.public sub_0207C650
|
||||
.public sub_0207C7DC
|
||||
.public sub_0207C7FC
|
||||
|
||||
@@ -1,13 +1,15 @@
|
||||
#pragma once
|
||||
.public _020A2C14
|
||||
.public _020A2C44
|
||||
.public _020A2C64
|
||||
.public DebugPrint0
|
||||
.public DS_DOWNLOAD_TEAMS
|
||||
.public FileInit
|
||||
.public GetPressedButtons
|
||||
.public InitPreprocessorArgs
|
||||
.public MemAlloc
|
||||
.public MemcpyFast
|
||||
.public MemFree
|
||||
.public MemsetFast
|
||||
.public MemZero
|
||||
.public ov00_022BF2C4
|
||||
.public ov00_022BF640
|
||||
@@ -58,8 +60,6 @@
|
||||
.public sub_02046D20
|
||||
.public sub_0207B9EC
|
||||
.public sub_0207BA08
|
||||
.public sub_0207C40C
|
||||
.public sub_0207C4C8
|
||||
.public sub_0207F6C4
|
||||
.public sub_0207F70C
|
||||
.public WaitForever2
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
#pragma once
|
||||
.public __divsi3
|
||||
.public _020AF6B8
|
||||
.public _020AFC4C
|
||||
.public _020AFC68
|
||||
.public _020B0A48
|
||||
.public _020B0A5C
|
||||
.public abs
|
||||
.public AllocAndLoadFileInPack
|
||||
.public BAG_ITEMS_PTR_MIRROR
|
||||
.public CreatePortraitBox
|
||||
.public DebugPrint0
|
||||
.public DecompressAtFromMemoryPointerVeneer
|
||||
@@ -39,7 +37,7 @@
|
||||
.public InitPortraitBox
|
||||
.public InitPortraitBoxWithMonsterId
|
||||
.public InitPreprocessorArgs
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public IsLosableItem
|
||||
.public IsNoLossPenaltyDungeon
|
||||
.public ItemZInit
|
||||
@@ -199,7 +197,9 @@
|
||||
.public sub_0206423C
|
||||
.public sub_020642A8
|
||||
.public SwitchAnimationControlToNextFrame
|
||||
.public TEAM_MEMBER_TABLE_PTR
|
||||
.public UnloadFile
|
||||
.public UnloadOverlay
|
||||
.public UnloadWte
|
||||
.public vsprintf
|
||||
.public WAN_TABLE
|
||||
|
||||
@@ -4,14 +4,8 @@
|
||||
.public __fixsfsi
|
||||
.public __floatsisf
|
||||
.public _020A1870
|
||||
.public _020A5488
|
||||
.public _020A548A
|
||||
.public _020A5490
|
||||
.public _020A7FF0
|
||||
.public _020A9FB0
|
||||
.public _020AF6B8
|
||||
.public _020AFC68
|
||||
.public _020B0A48
|
||||
.public _020D020C
|
||||
.public _020F0090
|
||||
.public _02130214
|
||||
@@ -20,6 +14,7 @@
|
||||
.public AddItemToStorage
|
||||
.public AnimationControlGetAllocForMaxFrame
|
||||
.public AnyDungeonRequestsDone
|
||||
.public BAG_ITEMS_PTR_MIRROR
|
||||
.public CheckMissionRestrictions
|
||||
.public ClampComponentAbs
|
||||
.public CloseSynthBin
|
||||
@@ -44,9 +39,11 @@
|
||||
.public DungeonRequestsDoneWrapper
|
||||
.public DungeonSwapIdxToId
|
||||
.public EnableIqSkill
|
||||
.public ENTITIES
|
||||
.public EntryOverlay13
|
||||
.public EuclideanNorm__02005050
|
||||
.public EuclideanNorm__020050B0
|
||||
.public EVENTS
|
||||
.public FatalError
|
||||
.public FemaleToMaleForm
|
||||
.public FileClose
|
||||
@@ -121,7 +118,7 @@
|
||||
.public InitPortraitBox
|
||||
.public InitPortraitBoxWithMonsterId
|
||||
.public InitPreprocessorArgs
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public InitStandardItem
|
||||
.public IqSkillFlagTest
|
||||
.public IsAdvancedMenuActive
|
||||
@@ -242,6 +239,7 @@
|
||||
.public RemoveItemNoHole
|
||||
.public RemoveItemNoHoleCheck
|
||||
.public RemoveItemsTypeInStorage
|
||||
.public Render3dElement64
|
||||
.public SaveScriptVariableValue
|
||||
.public SaveScriptVariableValueAtIndex
|
||||
.public SaveScriptVariableValueBytes
|
||||
@@ -432,7 +430,6 @@
|
||||
.public sub_0201E12C
|
||||
.public sub_0201E13C
|
||||
.public sub_0201E7D8
|
||||
.public sub_0201F1D4
|
||||
.public sub_0201F2A0
|
||||
.public sub_0201F2E4
|
||||
.public sub_0201F324
|
||||
@@ -761,8 +758,11 @@
|
||||
.public sub_02075EC8
|
||||
.public sub_020778D0
|
||||
.public SwitchAnimationControlToNextFrame
|
||||
.public TEAM_MEMBER_TABLE_PTR
|
||||
.public TRIG_TABLE
|
||||
.public UnloadFile
|
||||
.public UnloadOverlay
|
||||
.public vsprintf
|
||||
.public WAN_TABLE
|
||||
.public ZInit8
|
||||
.public ZinitScriptVariable
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
#pragma once
|
||||
.public __divsi3
|
||||
.public _020A1BB0
|
||||
.public AnimRelatedFunction__022F6F14
|
||||
.public AnimRelatedFunction__022F7064
|
||||
.public CreateAdvancedMenu
|
||||
@@ -40,6 +39,7 @@
|
||||
.public ov11_022F7058
|
||||
.public PreprocessString
|
||||
.public RandRange
|
||||
.public SENTRY_DUTY_MONSTER_IDS
|
||||
.public SetAnimDataFields2
|
||||
.public SetAnimDataFieldsWrapper
|
||||
.public SetPortraitEmotion
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#pragma once
|
||||
.public sub_020276C0
|
||||
.public NewDialogBox
|
||||
.public strcpy
|
||||
.public sub_02028EE8
|
||||
.public sub_020348E4
|
||||
|
||||
@@ -417,7 +417,7 @@
|
||||
.public UnloadCurrentWazaP
|
||||
.public GetName
|
||||
.public DungeonRequestsDoneWrapper
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public sub_020483D8
|
||||
.public ov10_022C1E80
|
||||
.public LoadFileFromRom
|
||||
|
||||
@@ -39,6 +39,6 @@
|
||||
.public ov29_0234B034
|
||||
.public sub_0201B9F8
|
||||
.public sub_0201E080
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public sub_0201F2A0
|
||||
.public sub_02024FC8
|
||||
|
||||
@@ -54,7 +54,7 @@
|
||||
.public DrawMinimapTile
|
||||
.public sub_0201E020
|
||||
.public sub_0201E080
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public sub_0201F2A0
|
||||
.public sub_0204AED0
|
||||
.public sub_02051D8C
|
||||
|
||||
@@ -123,7 +123,7 @@
|
||||
.public sub_0200F940
|
||||
.public sub_0201B9F8
|
||||
.public sub_0201E13C
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public sub_0201F2A0
|
||||
.public sub_0204AEA0
|
||||
.public sub_0204AEC0
|
||||
|
||||
@@ -191,7 +191,7 @@
|
||||
.public sub_0201D804
|
||||
.public sub_0201DDFC
|
||||
.public sub_0201DE10
|
||||
.public InitRender3dElement
|
||||
.public InitRender3dElement64
|
||||
.public sub_0201F2A0
|
||||
.public sub_0201F464
|
||||
.public sub_02024FB8
|
||||
|
||||
70
asm/itcm.s
70
asm/itcm.s
@@ -97,7 +97,7 @@ _01FF8120:
|
||||
sub_01FF8130: ; 0x01FF8130
|
||||
stmdb sp!, {r4, r5, r6, lr}
|
||||
sub sp, sp, #0x10
|
||||
ldr r2, _01FF81B8 ; =_020AFC80
|
||||
ldr r2, _01FF81B8 ; =RENDER_3D
|
||||
mov r4, r1
|
||||
ldr r1, [r2, #8]
|
||||
cmp r1, r4
|
||||
@@ -125,13 +125,13 @@ sub_01FF8130: ; 0x01FF8130
|
||||
ldr r2, [r2, lr, lsl #2]
|
||||
ldr r3, [r3, ip, lsl #2]
|
||||
bl GeomSetTexImageParam
|
||||
ldr r0, _01FF81B8 ; =_020AFC80
|
||||
ldr r0, _01FF81B8 ; =RENDER_3D
|
||||
str r4, [r0, #8]
|
||||
_01FF81B0:
|
||||
add sp, sp, #0x10
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_01FF81B8: .word _020AFC80
|
||||
_01FF81B8: .word RENDER_3D
|
||||
_01FF81BC: .word _02099734
|
||||
_01FF81C0: .word _02099744
|
||||
_01FF81C4: .word _02099764
|
||||
@@ -140,7 +140,7 @@ _01FF81C8: .word _02099784
|
||||
|
||||
arm_func_start sub_01FF81CC
|
||||
sub_01FF81CC: ; 0x01FF81CC
|
||||
ldr r2, _01FF8218 ; =_020AFC80
|
||||
ldr r2, _01FF8218 ; =RENDER_3D
|
||||
ldr r2, [r2, #4]
|
||||
cmp r2, r1
|
||||
bxeq lr
|
||||
@@ -155,12 +155,12 @@ sub_01FF81CC: ; 0x01FF81CC
|
||||
movne r0, #0
|
||||
rsb r0, r0, #4
|
||||
mov r3, r1, lsr r0
|
||||
ldr r0, _01FF8218 ; =_020AFC80
|
||||
ldr r0, _01FF8218 ; =RENDER_3D
|
||||
str r3, [r2]
|
||||
str r1, [r0, #4]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_01FF8218: .word _020AFC80
|
||||
_01FF8218: .word RENDER_3D
|
||||
_01FF821C: .word _02099744
|
||||
_01FF8220: .word 0x040004AC
|
||||
arm_func_end sub_01FF81CC
|
||||
@@ -175,7 +175,7 @@ sub_01FF8224: ; 0x01FF8224
|
||||
beq _01FF8460
|
||||
ldrh r0, [r4, #0x18]
|
||||
mov r2, #0
|
||||
ldr r3, _01FF8468 ; =_020A9FB0
|
||||
ldr r3, _01FF8468 ; =TRIG_TABLE
|
||||
mov r0, r0, asr #4
|
||||
mov r0, r0, lsl #1
|
||||
add r5, r0, #1
|
||||
@@ -217,14 +217,14 @@ sub_01FF8224: ; 0x01FF8224
|
||||
mov r3, r0
|
||||
str r0, [sp, #0xc]
|
||||
bl GeomSetTexImageParam
|
||||
ldr r0, _01FF846C ; =_020AFC80
|
||||
ldr r0, _01FF846C ; =RENDER_3D
|
||||
mvn r2, #0
|
||||
str r2, [r0, #8]
|
||||
ldr r1, _01FF8470 ; =0x04000444
|
||||
mov r2, #0
|
||||
add r0, sp, #0x10
|
||||
str r2, [r1]
|
||||
bl sub_020777A8
|
||||
bl GeomMtxMult4x3
|
||||
ldrh r0, [r4, #0x14]
|
||||
ldrh r2, [r4, #0x16]
|
||||
ldr r1, _01FF8474 ; =0x0400046C
|
||||
@@ -314,8 +314,8 @@ _01FF8460:
|
||||
add sp, sp, #0x40
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_01FF8468: .word _020A9FB0
|
||||
_01FF846C: .word _020AFC80
|
||||
_01FF8468: .word TRIG_TABLE
|
||||
_01FF846C: .word RENDER_3D
|
||||
_01FF8470: .word 0x04000444
|
||||
_01FF8474: .word 0x0400046C
|
||||
_01FF8478: .word 0x04000500
|
||||
@@ -380,14 +380,14 @@ sub_01FF849C: ; 0x01FF849C
|
||||
mov r3, r0
|
||||
str r0, [sp, #0xc]
|
||||
bl GeomSetTexImageParam
|
||||
ldr r1, _01FF8714 ; =_020AFC80
|
||||
ldr r1, _01FF8714 ; =RENDER_3D
|
||||
mvn r3, #0
|
||||
str r3, [r1, #8]
|
||||
ldr r2, _01FF8718 ; =0x04000444
|
||||
mov r1, #0
|
||||
add r0, sp, #0x18
|
||||
str r1, [r2]
|
||||
bl sub_020777A8
|
||||
bl GeomMtxMult4x3
|
||||
ldr r1, _01FF871C ; =0x0400046C
|
||||
mov r0, #0x40000
|
||||
str r0, [r1]
|
||||
@@ -496,7 +496,7 @@ _01FF8708:
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_01FF8710: .word _02099724
|
||||
_01FF8714: .word _020AFC80
|
||||
_01FF8714: .word RENDER_3D
|
||||
_01FF8718: .word 0x04000444
|
||||
_01FF871C: .word 0x0400046C
|
||||
_01FF8720: .word 0x04000500
|
||||
@@ -582,7 +582,7 @@ sub_01FF8728: ; 0x01FF8728
|
||||
mov r2, #0
|
||||
add r0, sp, #0x1c
|
||||
str r2, [r1]
|
||||
bl sub_020777A8
|
||||
bl GeomMtxMult4x3
|
||||
ldr r1, _01FF89FC ; =0x0400046C
|
||||
mov r0, #0x40000
|
||||
str r0, [r1]
|
||||
@@ -701,7 +701,7 @@ sub_01FF8A10: ; 0x01FF8A10
|
||||
sub sp, sp, #0x30
|
||||
mov r8, r0
|
||||
ldrh r0, [r8, #0x24]
|
||||
ldr r5, _01FF8C1C ; =_020A9FB0
|
||||
ldr r5, _01FF8C1C ; =TRIG_TABLE
|
||||
ldrsh r4, [r8, #0xc]
|
||||
mov r0, r0, asr #4
|
||||
mov r0, r0, lsl #1
|
||||
@@ -748,7 +748,7 @@ sub_01FF8A10: ; 0x01FF8A10
|
||||
mov r2, #0
|
||||
add r0, sp, #0
|
||||
str r2, [r1]
|
||||
bl sub_020777A8
|
||||
bl GeomMtxMult4x3
|
||||
ldrh r0, [r8, #0x1e]
|
||||
ldrh r1, [r8, #0x20]
|
||||
ldr r3, _01FF8C24 ; =0x0400046C
|
||||
@@ -829,7 +829,7 @@ sub_01FF8A10: ; 0x01FF8A10
|
||||
add sp, sp, #0x30
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_01FF8C1C: .word _020A9FB0
|
||||
_01FF8C1C: .word TRIG_TABLE
|
||||
_01FF8C20: .word 0x04000444
|
||||
_01FF8C24: .word 0x0400046C
|
||||
arm_func_end sub_01FF8A10
|
||||
@@ -864,7 +864,7 @@ sub_01FF8C60: ; 0x01FF8C60
|
||||
|
||||
arm_func_start AllocateRender3dElement
|
||||
AllocateRender3dElement: ; 0x01FF8C78
|
||||
ldr r0, _01FF8CA8 ; =_020AFC80
|
||||
ldr r0, _01FF8CA8 ; =RENDER_3D
|
||||
ldrsh r2, [r0]
|
||||
ldrsh r1, [r0, #2]
|
||||
cmp r2, r1
|
||||
@@ -877,7 +877,7 @@ AllocateRender3dElement: ; 0x01FF8C78
|
||||
smlabb r0, r2, r0, r1
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_01FF8CA8: .word _020AFC80
|
||||
_01FF8CA8: .word RENDER_3D
|
||||
arm_func_end AllocateRender3dElement
|
||||
|
||||
arm_func_start sub_01FF8CAC
|
||||
@@ -890,7 +890,7 @@ sub_01FF8CAC: ; 0x01FF8CAC
|
||||
mov r0, r5
|
||||
mov r1, r4
|
||||
mov r2, #0x28
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r0, #3
|
||||
strh r0, [r4]
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
@@ -906,7 +906,7 @@ sub_01FF8CDC: ; 0x01FF8CDC
|
||||
mov r0, r5
|
||||
mov r1, r4
|
||||
mov r2, #0x34
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r0, #2
|
||||
strh r0, [r4]
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
@@ -921,7 +921,7 @@ sub_01FF8D0C: ; 0x01FF8D0C
|
||||
ldmeqia sp!, {r4, pc}
|
||||
mov r1, #0
|
||||
mov r2, #0x26
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r1, #0
|
||||
mov r0, r4
|
||||
strh r1, [r4]
|
||||
@@ -937,7 +937,7 @@ sub_01FF8D3C: ; 0x01FF8D3C
|
||||
ldmeqia sp!, {r4, pc}
|
||||
mov r1, #0
|
||||
mov r2, #0x26
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r1, #1
|
||||
mov r0, r4
|
||||
strh r1, [r4]
|
||||
@@ -953,7 +953,7 @@ sub_01FF8D6C: ; 0x01FF8D6C
|
||||
ldmeqia sp!, {r4, pc}
|
||||
mov r1, #0
|
||||
mov r2, #0x28
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r1, #3
|
||||
mov r0, r4
|
||||
strh r1, [r4]
|
||||
@@ -969,7 +969,7 @@ sub_01FF8D9C: ; 0x01FF8D9C
|
||||
ldmeqia sp!, {r4, pc}
|
||||
mov r1, #0
|
||||
mov r2, #0x34
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r1, #2
|
||||
mov r0, r4
|
||||
strh r1, [r4]
|
||||
@@ -980,7 +980,7 @@ sub_01FF8D9C: ; 0x01FF8D9C
|
||||
Render3dStack: ; 0x01FF8DCC
|
||||
stmdb sp!, {r3, r4, r5, r6, r7, lr}
|
||||
sub sp, sp, #0x200
|
||||
ldr r0, _01FF8EFC ; =_020AFC80
|
||||
ldr r0, _01FF8EFC ; =RENDER_3D
|
||||
ldrsh r4, [r0]
|
||||
cmp r4, #0
|
||||
beq _01FF8EF4
|
||||
@@ -1011,7 +1011,7 @@ _01FF8E24:
|
||||
_01FF8E34:
|
||||
cmp r4, #0x80
|
||||
blt _01FF8E24
|
||||
ldr r0, _01FF8EFC ; =_020AFC80
|
||||
ldr r0, _01FF8EFC ; =RENDER_3D
|
||||
mov r5, #0
|
||||
ldrsh r7, [r0]
|
||||
add r4, sp, #0
|
||||
@@ -1043,7 +1043,7 @@ _01FF8E98:
|
||||
mov r6, #0
|
||||
add r5, sp, #0
|
||||
ldr r4, _01FF8F00 ; =0x01FF8120
|
||||
ldr r7, _01FF8EFC ; =_020AFC80
|
||||
ldr r7, _01FF8EFC ; =RENDER_3D
|
||||
b _01FF8EDC
|
||||
_01FF8EB4:
|
||||
ldr r0, [r5, r6, lsl #2]
|
||||
@@ -1060,14 +1060,14 @@ _01FF8EDC:
|
||||
ldrsh r0, [r7]
|
||||
cmp r6, r0
|
||||
blt _01FF8EB4
|
||||
ldr r0, _01FF8EFC ; =_020AFC80
|
||||
ldr r0, _01FF8EFC ; =RENDER_3D
|
||||
mov r1, #0
|
||||
strh r1, [r0]
|
||||
_01FF8EF4:
|
||||
add sp, sp, #0x200
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_01FF8EFC: .word _020AFC80
|
||||
_01FF8EFC: .word RENDER_3D
|
||||
_01FF8F00: .word 0x01FF8120
|
||||
arm_func_end Render3dStack
|
||||
|
||||
@@ -1075,14 +1075,14 @@ _01FF8F00: .word 0x01FF8120
|
||||
sub_01FF8F04: ; 0x01FF8F04
|
||||
ldr r1, _01FF8F20 ; =0x040004AC
|
||||
mov r2, #0
|
||||
ldr r0, _01FF8F24 ; =_020AFC80
|
||||
ldr r0, _01FF8F24 ; =RENDER_3D
|
||||
str r2, [r1]
|
||||
sub r1, r2, #1
|
||||
str r1, [r0, #4]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_01FF8F20: .word 0x040004AC
|
||||
_01FF8F24: .word _020AFC80
|
||||
_01FF8F24: .word RENDER_3D
|
||||
arm_func_end sub_01FF8F04
|
||||
|
||||
arm_func_start sub_01FF8F28
|
||||
@@ -2140,7 +2140,7 @@ _01FF9CD8:
|
||||
mov r0, r3
|
||||
ldr r1, [r1]
|
||||
add r1, r1, #0x4c
|
||||
bl Rgb8ToBgr5
|
||||
bl Rgb8ToRgb5
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
_01FF9CFC:
|
||||
mov r0, #0
|
||||
@@ -2215,7 +2215,7 @@ _01FF9DF0:
|
||||
mov r0, r3
|
||||
ldr r1, [r1]
|
||||
add r1, r1, #0x4c
|
||||
bl Rgb8ToBgr5
|
||||
bl Rgb8ToRgb5
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_01FF9E10: .word 0x02353530
|
||||
|
||||
@@ -153,11 +153,11 @@ SetMemAllocatorParams: ; 0x02000E70
|
||||
bl sub_02002CB4
|
||||
cmp r5, #0
|
||||
ldreq r5, _02000EB4 ; =GetAllocArenaDefault
|
||||
ldr r0, _02000EB8 ; =_020AEF00
|
||||
ldr r0, _02000EB8 ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
cmp r4, #0
|
||||
str r5, [r0]
|
||||
ldreq r4, _02000EBC ; =GetFreeArenaDefault
|
||||
ldr r1, _02000EB8 ; =_020AEF00
|
||||
ldr r1, _02000EB8 ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
ldr r0, _02000EB0 ; =_020AEF08
|
||||
str r4, [r1, #4]
|
||||
bl sub_02002E98
|
||||
@@ -165,7 +165,7 @@ SetMemAllocatorParams: ; 0x02000E70
|
||||
.align 2, 0
|
||||
_02000EB0: .word _020AEF08
|
||||
_02000EB4: .word GetAllocArenaDefault
|
||||
_02000EB8: .word _020AEF00
|
||||
_02000EB8: .word MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
_02000EBC: .word GetFreeArenaDefault
|
||||
arm_func_end SetMemAllocatorParams
|
||||
|
||||
@@ -415,7 +415,7 @@ MemArenaAlloc: ; 0x0200119C
|
||||
mov r7, r2
|
||||
mov r6, r3
|
||||
bl sub_02002CB4
|
||||
ldr r1, _02001270 ; =_020AEF00
|
||||
ldr r1, _02001270 ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
mov r0, r5
|
||||
ldr r2, [r1]
|
||||
mov r1, r6
|
||||
@@ -463,7 +463,7 @@ _02001264:
|
||||
ldmia sp!, {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0200126C: .word _020AEF08
|
||||
_02001270: .word _020AEF00
|
||||
_02001270: .word MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
_02001274: .word _020B3384
|
||||
_02001278: .word _02090B40
|
||||
_0200127C: .word _02090BC8
|
||||
@@ -561,7 +561,7 @@ MemLocateSet: ; 0x02001390
|
||||
mov r5, r1
|
||||
orr r7, r2, #0x100
|
||||
bl sub_02002CB4
|
||||
ldr r1, _02001620 ; =_020AEF00
|
||||
ldr r1, _02001620 ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
mov r0, r4
|
||||
ldr r2, [r1]
|
||||
mov r1, r7
|
||||
@@ -738,7 +738,7 @@ _02001610:
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_0200161C: .word _020AEF08
|
||||
_02001620: .word _020AEF00
|
||||
_02001620: .word MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
_02001624: .word _020B3384
|
||||
_02001628: .word 0x001E6401
|
||||
_0200162C: .word _02090B40
|
||||
@@ -753,7 +753,7 @@ MemLocateUnset: ; 0x02001638
|
||||
ldr r0, _020017A8 ; =_020AEF08
|
||||
mov r6, r1
|
||||
bl sub_02002CB4
|
||||
ldr r1, _020017AC ; =_020AEF00
|
||||
ldr r1, _020017AC ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
mov r0, r7
|
||||
ldr r2, [r1, #4]
|
||||
mov r1, r6
|
||||
@@ -852,7 +852,7 @@ _02001794:
|
||||
ldmia sp!, {r4, r5, r6, r7, r8, pc}
|
||||
.align 2, 0
|
||||
_020017A8: .word _020AEF08
|
||||
_020017AC: .word _020AEF00
|
||||
_020017AC: .word MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
_020017B0: .word _020B3384
|
||||
arm_func_end MemLocateUnset
|
||||
|
||||
@@ -893,7 +893,7 @@ sub_02001808: ; 0x02001808
|
||||
stmdb sp!, {r4, lr}
|
||||
ldr r0, _0200187C ; =_020AEF08
|
||||
bl sub_02002CB4
|
||||
ldr r0, _02001880 ; =_020AEF00
|
||||
ldr r0, _02001880 ; =MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
mov r4, #0
|
||||
ldr r2, [r0]
|
||||
ldr r0, _02001884 ; =_020B3384
|
||||
@@ -924,7 +924,7 @@ _02001864:
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_0200187C: .word _020AEF08
|
||||
_02001880: .word _020AEF00
|
||||
_02001880: .word MEMORY_ALLOCATION_ARENA_GETTERS
|
||||
_02001884: .word _020B3384
|
||||
arm_func_end sub_02001808
|
||||
|
||||
@@ -1666,7 +1666,7 @@ ClampedLn: ; 0x020021F4
|
||||
movlt r1, #1
|
||||
cmp r1, #0x800
|
||||
ldrge r1, _02002220 ; =0x000007FF
|
||||
ldr r2, _02002224 ; =_02091448
|
||||
ldr r2, _02002224 ; =NATURAL_LOG_VALUE_TABLE
|
||||
mov r1, r1, lsl #1
|
||||
ldrsh r2, [r2, r1]
|
||||
mov r1, #0
|
||||
@@ -1675,7 +1675,7 @@ ClampedLn: ; 0x020021F4
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_02002220: .word 0x000007FF
|
||||
_02002224: .word _02091448
|
||||
_02002224: .word NATURAL_LOG_VALUE_TABLE
|
||||
arm_func_end ClampedLn
|
||||
|
||||
arm_func_start sub_02002228
|
||||
@@ -1685,25 +1685,25 @@ sub_02002228: ; 0x02002228
|
||||
|
||||
arm_func_start GetRngSeed
|
||||
GetRngSeed: ; 0x0200222C
|
||||
ldr r0, _02002238 ; =_020AEF2C
|
||||
ldr r0, _02002238 ; =PRNG_SEQUENCE_NUM
|
||||
ldrh r0, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_02002238: .word _020AEF2C
|
||||
_02002238: .word PRNG_SEQUENCE_NUM
|
||||
arm_func_end GetRngSeed
|
||||
|
||||
arm_func_start SetRngSeed
|
||||
SetRngSeed: ; 0x0200223C
|
||||
ldr r1, _02002248 ; =_020AEF2C
|
||||
ldr r1, _02002248 ; =PRNG_SEQUENCE_NUM
|
||||
strh r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_02002248: .word _020AEF2C
|
||||
_02002248: .word PRNG_SEQUENCE_NUM
|
||||
arm_func_end SetRngSeed
|
||||
|
||||
arm_func_start Rand16Bit
|
||||
Rand16Bit: ; 0x0200224C
|
||||
ldr r1, _02002270 ; =_020AEF2C
|
||||
ldr r1, _02002270 ; =PRNG_SEQUENCE_NUM
|
||||
mov r0, #0x6d
|
||||
ldrh r2, [r1]
|
||||
mul r0, r2, r0
|
||||
@@ -1713,7 +1713,7 @@ Rand16Bit: ; 0x0200224C
|
||||
ldrh r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_02002270: .word _020AEF2C
|
||||
_02002270: .word PRNG_SEQUENCE_NUM
|
||||
arm_func_end Rand16Bit
|
||||
|
||||
arm_func_start RandInt
|
||||
@@ -4208,7 +4208,7 @@ _02003F78:
|
||||
mov r0, #1
|
||||
b _02004098
|
||||
_02003F80:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r1, [r1, #8]
|
||||
cmp r1, r0
|
||||
moveq r0, #1
|
||||
@@ -4216,7 +4216,7 @@ _02003F80:
|
||||
and r0, r0, #0xff
|
||||
b _02004098
|
||||
_02003F9C:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r2, [r1, #8]
|
||||
cmp r2, #1
|
||||
movne r0, #0
|
||||
@@ -4228,7 +4228,7 @@ _02003F9C:
|
||||
and r0, r0, #0xff
|
||||
b _02004098
|
||||
_02003FC8:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r2, [r1, #4]
|
||||
cmp r2, #4
|
||||
movne r0, #0
|
||||
@@ -4240,7 +4240,7 @@ _02003FC8:
|
||||
and r0, r0, #0xff
|
||||
b _02004098
|
||||
_02003FF4:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r2, [r1, #8]
|
||||
cmp r2, #2
|
||||
movne r0, #0
|
||||
@@ -4252,7 +4252,7 @@ _02003FF4:
|
||||
and r0, r0, #0xff
|
||||
b _02004098
|
||||
_02004020:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r2, [r1, #4]
|
||||
cmp r2, #0xd
|
||||
movne r0, #0
|
||||
@@ -4264,7 +4264,7 @@ _02004020:
|
||||
and r0, r0, #0xff
|
||||
b _02004098
|
||||
_0200404C:
|
||||
ldr r1, _020040A0 ; =_020AF230
|
||||
ldr r1, _020040A0 ; =LOADED_OVERLAY_GROUP_0
|
||||
ldr r2, [r1, #4]
|
||||
cmp r2, #0xe
|
||||
movne r0, #0
|
||||
@@ -4288,7 +4288,7 @@ _02004098:
|
||||
add sp, sp, #8
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_020040A0: .word _020AF230
|
||||
_020040A0: .word LOADED_OVERLAY_GROUP_0
|
||||
_020040A4: .word _02092558
|
||||
_020040A8: .word _0209258C
|
||||
arm_func_end OverlayIsLoaded
|
||||
@@ -4342,27 +4342,27 @@ _020040C4: ; jump table
|
||||
_02004158:
|
||||
b _020047C4
|
||||
_0200415C:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0, #8]
|
||||
b _020041C4
|
||||
_02004168:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0, #4]
|
||||
b _020041C4
|
||||
_02004174:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0]
|
||||
b _020041C4
|
||||
_02004180:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0, #4]
|
||||
b _020041C4
|
||||
_0200418C:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0]
|
||||
b _020041C4
|
||||
_02004198:
|
||||
ldr r0, _020047CC ; =_020AF230
|
||||
ldr r0, _020047CC ; =LOADED_OVERLAY_GROUP_0
|
||||
str r4, [r0]
|
||||
b _020041C4
|
||||
_020041A4:
|
||||
@@ -4803,7 +4803,7 @@ _020047C4:
|
||||
add sp, sp, #0x3c
|
||||
ldmia sp!, {r3, r4, pc}
|
||||
.align 2, 0
|
||||
_020047CC: .word _020AF230
|
||||
_020047CC: .word LOADED_OVERLAY_GROUP_0
|
||||
_020047D0: .word _02092558
|
||||
_020047D4: .word _020925A0
|
||||
_020047D8: .word 0x00000000
|
||||
@@ -4893,27 +4893,27 @@ _02004880: ; jump table
|
||||
_02004914:
|
||||
b _02004ED0
|
||||
_02004918:
|
||||
ldr r0, _02004ED8 ; =_020AF230
|
||||
ldr r0, _02004ED8 ; =LOADED_OVERLAY_GROUP_0
|
||||
mov r1, #0
|
||||
str r1, [r0, #8]
|
||||
b _02004988
|
||||
_02004928:
|
||||
ldr r0, _02004ED8 ; =_020AF230
|
||||
ldr r0, _02004ED8 ; =LOADED_OVERLAY_GROUP_0
|
||||
mov r1, #0
|
||||
str r1, [r0, #4]
|
||||
b _02004988
|
||||
_02004938:
|
||||
ldr r0, _02004ED8 ; =_020AF230
|
||||
ldr r0, _02004ED8 ; =LOADED_OVERLAY_GROUP_0
|
||||
mov r1, #0
|
||||
str r1, [r0]
|
||||
b _02004988
|
||||
_02004948:
|
||||
ldr r0, _02004ED8 ; =_020AF230
|
||||
ldr r0, _02004ED8 ; =LOADED_OVERLAY_GROUP_0
|
||||
mov r1, #0
|
||||
str r1, [r0]
|
||||
b _02004988
|
||||
_02004958:
|
||||
ldr r0, _02004ED8 ; =_020AF230
|
||||
ldr r0, _02004ED8 ; =LOADED_OVERLAY_GROUP_0
|
||||
mov r1, #0
|
||||
str r1, [r0]
|
||||
b _02004988
|
||||
@@ -5308,7 +5308,7 @@ _02004ED0:
|
||||
add sp, sp, #0x10
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_02004ED8: .word _020AF230
|
||||
_02004ED8: .word LOADED_OVERLAY_GROUP_0
|
||||
_02004EDC: .word _02092558
|
||||
_02004EE0: .word _020925B4
|
||||
_02004EE4: .word 0x00000000
|
||||
@@ -5381,8 +5381,8 @@ sub_02004F80: ; 0x02004F80
|
||||
_02004FC8: .word 0xEDB88320
|
||||
arm_func_end sub_02004F80
|
||||
|
||||
arm_func_start Rgb8ToBgr5
|
||||
Rgb8ToBgr5: ; 0x02004FCC
|
||||
arm_func_start Rgb8ToRgb5
|
||||
Rgb8ToRgb5: ; 0x02004FCC
|
||||
ldrb r2, [r1, #1]
|
||||
ldrb r3, [r1, #2]
|
||||
ldrb ip, [r1]
|
||||
@@ -5394,7 +5394,7 @@ Rgb8ToBgr5: ; 0x02004FCC
|
||||
orr r1, r1, r3, asr #3
|
||||
strh r1, [r0]
|
||||
bx lr
|
||||
arm_func_end Rgb8ToBgr5
|
||||
arm_func_end Rgb8ToRgb5
|
||||
|
||||
arm_func_start sub_02004FF8
|
||||
sub_02004FF8: ; 0x02004FF8
|
||||
@@ -10212,24 +10212,24 @@ sub_02008DAC: ; 0x02008DAC
|
||||
mov r0, #0
|
||||
mov r1, #0x6800000
|
||||
mov r2, #0xa4000
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
bl sub_0207735C
|
||||
mov r0, #0xc0
|
||||
mov r1, #0x7000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
mov r1, #0x5000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0xc0
|
||||
ldr r1, _02008EC4 ; =0x07000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
ldr r1, _02008EC8 ; =0x05000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r1, #0x100
|
||||
ldr r0, _02008ECC ; =_022A37A0
|
||||
str r1, [r0, #4]
|
||||
@@ -11818,12 +11818,12 @@ _0200A28C:
|
||||
arm_func_start sub_0200A29C
|
||||
sub_0200A29C: ; 0x0200A29C
|
||||
ldr r0, [r0, #0x10]
|
||||
ldr ip, _0200A2B0 ; =Rgb8ToBgr5
|
||||
ldr ip, _0200A2B0 ; =Rgb8ToRgb5
|
||||
add r0, r0, r1, lsl #1
|
||||
mov r1, r2
|
||||
bx ip
|
||||
.align 2, 0
|
||||
_0200A2B0: .word Rgb8ToBgr5
|
||||
_0200A2B0: .word Rgb8ToRgb5
|
||||
arm_func_end sub_0200A29C
|
||||
|
||||
arm_func_start sub_0200A2B4
|
||||
@@ -13471,26 +13471,26 @@ sub_0200B76C: ; 0x0200B76C
|
||||
mov r0, #0
|
||||
mov r1, #0x6800000
|
||||
mov r2, #0xa4000
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0xc0
|
||||
mov r1, #0x7000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
mov r1, #0x5000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0xc0
|
||||
ldr r1, _0200B87C ; =0x07000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
ldr r1, _0200B880 ; =0x05000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
bl sub_02019304
|
||||
mov r4, r0
|
||||
ldr r1, _0200B884 ; =_02092AE8
|
||||
ldr r1, _0200B884 ; =CART_REMOVED_IMG_DATA
|
||||
mov r2, #0xc000
|
||||
bl MemcpySimple
|
||||
mov r2, r4
|
||||
@@ -13520,7 +13520,7 @@ _0200B874: .word 0x04001000
|
||||
_0200B878: .word 0x000001FF
|
||||
_0200B87C: .word 0x07000400
|
||||
_0200B880: .word 0x05000400
|
||||
_0200B884: .word _02092AE8
|
||||
_0200B884: .word CART_REMOVED_IMG_DATA
|
||||
_0200B888: .word 0x06806000
|
||||
_0200B88C: .word 0x0400006C
|
||||
_0200B890: .word 0x0400106C
|
||||
|
||||
3506
asm/main_0200C4CC.s
3506
asm/main_0200C4CC.s
File diff suppressed because it is too large
Load Diff
756
asm/overlay_00.s
756
asm/overlay_00.s
File diff suppressed because it is too large
Load Diff
202
asm/overlay_01.s
202
asm/overlay_01.s
@@ -559,7 +559,7 @@ ov01_02329BC8: ; 0x02329BC8
|
||||
mov r2, #0x40
|
||||
ldr r0, [r1, #0x4c]
|
||||
ldr r1, [r1, #0x20]
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
ldr r0, _02329C2C ; =ov01_0233C240
|
||||
ldrh r1, [r0, #6]
|
||||
ldr r0, [r0, #0x20]
|
||||
@@ -3454,7 +3454,7 @@ ov01_0232C0CC: ; 0x0232C0CC
|
||||
ldr r1, _0232C0FC ; =ov01_0233C140
|
||||
mov r2, #0
|
||||
strb r2, [r1, #1]
|
||||
ldr r0, _0232C100 ; =_020AFC68
|
||||
ldr r0, _0232C100 ; =WAN_TABLE
|
||||
strb r2, [r1]
|
||||
ldr r0, [r0]
|
||||
ldr r1, _0232C104 ; =ov01_0233AEF8
|
||||
@@ -3464,7 +3464,7 @@ ov01_0232C0CC: ; 0x0232C0CC
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0232C0FC: .word ov01_0233C140
|
||||
_0232C100: .word _020AFC68
|
||||
_0232C100: .word WAN_TABLE
|
||||
_0232C104: .word ov01_0233AEF8
|
||||
_0232C108: .word ov01_0233C780
|
||||
arm_func_end ov01_0232C0CC
|
||||
@@ -3474,7 +3474,7 @@ ov01_0232C10C: ; 0x0232C10C
|
||||
stmdb sp!, {r3, lr}
|
||||
bl ov01_0232C2AC
|
||||
ldr r0, _0232C13C ; =ov01_0233C780
|
||||
ldr r2, _0232C140 ; =_020AFC68
|
||||
ldr r2, _0232C140 ; =WAN_TABLE
|
||||
ldrsh r1, [r0]
|
||||
ldr r0, [r2]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
@@ -3485,7 +3485,7 @@ ov01_0232C10C: ; 0x0232C10C
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0232C13C: .word ov01_0233C780
|
||||
_0232C140: .word _020AFC68
|
||||
_0232C140: .word WAN_TABLE
|
||||
_0232C144: .word ov01_0233C140
|
||||
arm_func_end ov01_0232C10C
|
||||
|
||||
@@ -3628,7 +3628,7 @@ ov01_0232C2E4: ; 0x0232C2E4
|
||||
ldrsh r0, [r0, #4]
|
||||
bl GetSpriteIndex__020526EC
|
||||
mov r3, #0
|
||||
ldr r1, _0232C364 ; =_020AFC68
|
||||
ldr r1, _0232C364 ; =WAN_TABLE
|
||||
str r3, [sp]
|
||||
mov r2, r0
|
||||
ldr r0, [r1]
|
||||
@@ -3640,7 +3640,7 @@ _0232C330:
|
||||
ldr r0, _0232C36C ; =0x00000229
|
||||
bl GetSpriteIndex__020526EC
|
||||
mov r3, #0
|
||||
ldr r1, _0232C364 ; =_020AFC68
|
||||
ldr r1, _0232C364 ; =WAN_TABLE
|
||||
str r3, [sp]
|
||||
mov r2, r0
|
||||
ldr r0, [r1]
|
||||
@@ -3652,7 +3652,7 @@ _0232C358:
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0232C360: .word ov01_0233C144
|
||||
_0232C364: .word _020AFC68
|
||||
_0232C364: .word WAN_TABLE
|
||||
_0232C368: .word ov01_0233C87C
|
||||
_0232C36C: .word 0x00000229
|
||||
arm_func_end ov01_0232C2E4
|
||||
@@ -3662,7 +3662,7 @@ ov01_0232C370: ; 0x0232C370
|
||||
stmdb sp!, {r3, lr}
|
||||
bl ov01_0232C540
|
||||
ldr r0, _0232C3A0 ; =ov01_0233C87C
|
||||
ldr r2, _0232C3A4 ; =_020AFC68
|
||||
ldr r2, _0232C3A4 ; =WAN_TABLE
|
||||
ldrsh r1, [r0]
|
||||
ldr r0, [r2]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
@@ -3673,7 +3673,7 @@ ov01_0232C370: ; 0x0232C370
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0232C3A0: .word ov01_0233C87C
|
||||
_0232C3A4: .word _020AFC68
|
||||
_0232C3A4: .word WAN_TABLE
|
||||
_0232C3A8: .word ov01_0233C144
|
||||
arm_func_end ov01_0232C370
|
||||
|
||||
@@ -8364,13 +8364,13 @@ ov01_02330224: ; 0x02330224
|
||||
str r3, [r1, #4]
|
||||
bl RandInt
|
||||
mov r4, r0
|
||||
ldr r0, _02330588 ; =_020AFC68
|
||||
ldr r0, _02330588 ; =WAN_TABLE
|
||||
ldr r1, _0233058C ; =ov01_0233B104
|
||||
ldr r0, [r0]
|
||||
mov r2, #0
|
||||
bl LoadWanTableEntry
|
||||
ldr r1, _02330584 ; =ov01_0233C164
|
||||
ldr r2, _02330588 ; =_020AFC68
|
||||
ldr r2, _02330588 ; =WAN_TABLE
|
||||
ldr r3, [r1]
|
||||
ldr r1, _02330590 ; =ov01_0233C168
|
||||
strh r0, [r3, #0x90]
|
||||
@@ -8557,7 +8557,7 @@ ov01_02330224: ; 0x02330224
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_02330584: .word ov01_0233C164
|
||||
_02330588: .word _020AFC68
|
||||
_02330588: .word WAN_TABLE
|
||||
_0233058C: .word ov01_0233B104
|
||||
_02330590: .word ov01_0233C168
|
||||
arm_func_end ov01_02330224
|
||||
@@ -8589,13 +8589,13 @@ _023305C0:
|
||||
bl sub_0202FED4
|
||||
_023305EC:
|
||||
ldr r0, _0233063C ; =ov01_0233C164
|
||||
ldr r1, _02330640 ; =_020AFC68
|
||||
ldr r1, _02330640 ; =WAN_TABLE
|
||||
ldr r2, [r0]
|
||||
ldr r0, [r1]
|
||||
ldrsh r1, [r2, #0x90]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
ldr r0, _0233063C ; =ov01_0233C164
|
||||
ldr r1, _02330640 ; =_020AFC68
|
||||
ldr r1, _02330640 ; =WAN_TABLE
|
||||
ldr r2, [r0]
|
||||
ldr r0, [r1]
|
||||
ldrsh r1, [r2, #0x92]
|
||||
@@ -8610,7 +8610,7 @@ _023305EC:
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0233063C: .word ov01_0233C164
|
||||
_02330640: .word _020AFC68
|
||||
_02330640: .word WAN_TABLE
|
||||
arm_func_end ov01_02330594
|
||||
|
||||
arm_func_start ov01_02330644
|
||||
@@ -9244,7 +9244,7 @@ ov01_02330EB8: ; 0x02330EB8
|
||||
strb ip, [r3, #1]
|
||||
bl FemaleToMaleForm
|
||||
mov r3, #0
|
||||
ldr r2, _02330FE8 ; =ov01_0233B314
|
||||
ldr r2, _02330FE8 ; =PRINTS_STRUCT
|
||||
b _02330F04
|
||||
_02330EE8:
|
||||
cmp r0, r1
|
||||
@@ -9271,7 +9271,7 @@ _02330F18:
|
||||
ldr r2, [r1, r3, lsl #3]
|
||||
ldr r1, _02330FF0 ; =ov01_0233B504
|
||||
bl sprintf
|
||||
ldr r0, _02330FF4 ; =_020AFC68
|
||||
ldr r0, _02330FF4 ; =WAN_TABLE
|
||||
add r1, sp, #0x10
|
||||
ldr r0, [r0]
|
||||
mov r2, #0
|
||||
@@ -9315,10 +9315,10 @@ _02330FDC:
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
_02330FE4: .word ov01_0233C174
|
||||
_02330FE8: .word ov01_0233B314
|
||||
_02330FE8: .word PRINTS_STRUCT
|
||||
_02330FEC: .word ov01_0233B318
|
||||
_02330FF0: .word ov01_0233B504
|
||||
_02330FF4: .word _020AFC68
|
||||
_02330FF4: .word WAN_TABLE
|
||||
_02330FF8: .word ov01_0233C978
|
||||
arm_func_end ov01_02330EB8
|
||||
|
||||
@@ -9329,7 +9329,7 @@ ov01_02330FFC: ; 0x02330FFC
|
||||
ldrsh r1, [r0, #2]
|
||||
cmp r1, #0
|
||||
ldmeqia sp!, {r3, pc}
|
||||
ldr r0, _02331038 ; =_020AFC68
|
||||
ldr r0, _02331038 ; =WAN_TABLE
|
||||
ldr r0, [r0]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
ldr r0, _02331034 ; =ov01_0233C174
|
||||
@@ -9340,7 +9340,7 @@ ov01_02330FFC: ; 0x02330FFC
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_02331034: .word ov01_0233C174
|
||||
_02331038: .word _020AFC68
|
||||
_02331038: .word WAN_TABLE
|
||||
arm_func_end ov01_02330FFC
|
||||
|
||||
arm_func_start ov01_0233103C
|
||||
@@ -9713,7 +9713,7 @@ _02331554: .word 0x000001EA
|
||||
|
||||
arm_func_start AddMainMenuOption
|
||||
AddMainMenuOption: ; 0x02331558
|
||||
ldr r2, _023315EC ; =ov01_0233B5D0
|
||||
ldr r2, _023315EC ; =MAIN_MENU
|
||||
b _023315DC
|
||||
_02331560:
|
||||
ldr ip, [r2]
|
||||
@@ -9754,7 +9754,7 @@ _023315DC:
|
||||
bne _02331560
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_023315EC: .word ov01_0233B5D0
|
||||
_023315EC: .word MAIN_MENU
|
||||
_023315F0: .word ov01_0233C178
|
||||
arm_func_end AddMainMenuOption
|
||||
|
||||
@@ -9782,7 +9782,7 @@ _0233162C: .word ov01_0233C178
|
||||
|
||||
arm_func_start AddSubMenuOption
|
||||
AddSubMenuOption: ; 0x02331630
|
||||
ldr r2, _023316C4 ; =ov01_0233B588
|
||||
ldr r2, _023316C4 ; =SUBMENU
|
||||
b _023316B4
|
||||
_02331638:
|
||||
ldr ip, [r2]
|
||||
@@ -9823,7 +9823,7 @@ _023316B4:
|
||||
bne _02331638
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_023316C4: .word ov01_0233B588
|
||||
_023316C4: .word SUBMENU
|
||||
_023316C8: .word ov01_0233C178
|
||||
arm_func_end AddSubMenuOption
|
||||
|
||||
@@ -9928,7 +9928,7 @@ _02331810:
|
||||
cmp r0, #0
|
||||
bne _023324F4
|
||||
bl ov01_0232F910
|
||||
ldr r0, _0233250C ; =ov01_0233B538
|
||||
ldr r0, _0233250C ; =OVERLAY1_D_BOX_LAYOUT_3
|
||||
bl CreateDBox
|
||||
ldr r1, _02332508 ; =ov01_0233C178
|
||||
mov r3, #2
|
||||
@@ -10091,7 +10091,7 @@ _02331A54:
|
||||
mov r4, #1
|
||||
b _023324F4
|
||||
_02331A78:
|
||||
ldr r0, _02332510 ; =ov01_0233B518
|
||||
ldr r0, _02332510 ; =OVERLAY1_D_BOX_LAYOUT_1
|
||||
ldr r1, _02332514 ; =0x00400231
|
||||
add r2, sp, #0x26c
|
||||
add r3, r3, #0x1c
|
||||
@@ -10270,7 +10270,7 @@ _02331CE4:
|
||||
str r2, [sp, #0x1d4]
|
||||
str r1, [r3, #0xc]
|
||||
ldr r3, [r0]
|
||||
ldr r0, _0233251C ; =ov01_0233B528
|
||||
ldr r0, _0233251C ; =OVERLAY1_D_BOX_LAYOUT_2
|
||||
add r5, r3, #0xf0
|
||||
ldr r1, _02332520 ; =0x00400233
|
||||
add r2, sp, #0x1d4
|
||||
@@ -10360,7 +10360,7 @@ _02331E44:
|
||||
bgt _023324F4
|
||||
ldr r5, [r1, #0x110]
|
||||
ldr r1, _02332524 ; =0x00400033
|
||||
ldr r3, _02332528 ; =ov01_0233B568
|
||||
ldr r3, _02332528 ; =CONTINUE_CHOICE
|
||||
add r2, sp, #0x13c
|
||||
mov r0, #0
|
||||
str r5, [sp, #0x13c]
|
||||
@@ -10448,7 +10448,7 @@ _02331F78:
|
||||
str r1, [sp, #0xb0]
|
||||
str r0, [sp, #0x104]
|
||||
ldr r5, [r5, #0x114]
|
||||
ldr r0, _02332534 ; =ov01_0233B548
|
||||
ldr r0, _02332534 ; =OVERLAY1_D_BOX_LAYOUT_4
|
||||
str r5, [sp]
|
||||
mov r5, #0xa
|
||||
ldr r1, _02332538 ; =0x00400A33
|
||||
@@ -10834,17 +10834,17 @@ _02332500:
|
||||
ldmia sp!, {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_02332508: .word ov01_0233C178
|
||||
_0233250C: .word ov01_0233B538
|
||||
_02332510: .word ov01_0233B518
|
||||
_0233250C: .word OVERLAY1_D_BOX_LAYOUT_3
|
||||
_02332510: .word OVERLAY1_D_BOX_LAYOUT_1
|
||||
_02332514: .word 0x00400231
|
||||
_02332518: .word 0x00000404
|
||||
_0233251C: .word ov01_0233B528
|
||||
_0233251C: .word OVERLAY1_D_BOX_LAYOUT_2
|
||||
_02332520: .word 0x00400233
|
||||
_02332524: .word 0x00400033
|
||||
_02332528: .word ov01_0233B568
|
||||
_02332528: .word CONTINUE_CHOICE
|
||||
_0233252C: .word 0x000001DF
|
||||
_02332530: .word 0x000001E1
|
||||
_02332534: .word ov01_0233B548
|
||||
_02332534: .word OVERLAY1_D_BOX_LAYOUT_4
|
||||
_02332538: .word 0x00400A33
|
||||
_0233253C: .word ov01_02332580
|
||||
_02332540: .word 0x000001E9
|
||||
@@ -11062,14 +11062,14 @@ _02332810:
|
||||
_0233281C:
|
||||
ldr r1, [r1]
|
||||
str r0, [r1, #4]
|
||||
ldr r0, _023329D0 ; =ov01_0233B71C
|
||||
ldr r0, _023329D0 ; =OVERLAY1_D_BOX_LAYOUT_5
|
||||
ldr r1, _023329D4 ; =ov01_02332EF4
|
||||
bl sub_0202F8C4
|
||||
ldr r2, _023329C8 ; =ov01_0233C184
|
||||
mov r1, #0
|
||||
ldr r2, [r2]
|
||||
strb r0, [r2, #0x60c]
|
||||
ldr r0, _023329D8 ; =ov01_0233B72C
|
||||
ldr r0, _023329D8 ; =OVERLAY1_D_BOX_LAYOUT_6
|
||||
bl sub_0202F8C4
|
||||
ldr r1, _023329C8 ; =ov01_0233C184
|
||||
ldr r2, [r1]
|
||||
@@ -11164,8 +11164,8 @@ _02332950:
|
||||
add r0, r0, #0x600
|
||||
ldrsb r0, [r0, #0xd]
|
||||
bl sub_02027AF0
|
||||
ldr r0, _023329F0 ; =ov01_0233B73C
|
||||
ldr r3, _023329F4 ; =ov01_0233B74C
|
||||
ldr r0, _023329F0 ; =OVERLAY1_D_BOX_LAYOUT_7
|
||||
ldr r3, _023329F4 ; =MAIN_MENU_CONFIRM
|
||||
add r2, sp, #0xc
|
||||
mov r1, #0x33
|
||||
bl sub_0202A5CC
|
||||
@@ -11180,16 +11180,16 @@ _023329BC:
|
||||
_023329C4: .word ov01_0233B70C
|
||||
_023329C8: .word ov01_0233C184
|
||||
_023329CC: .word ov01_0233B798
|
||||
_023329D0: .word ov01_0233B71C
|
||||
_023329D0: .word OVERLAY1_D_BOX_LAYOUT_5
|
||||
_023329D4: .word ov01_02332EF4
|
||||
_023329D8: .word ov01_0233B72C
|
||||
_023329D8: .word OVERLAY1_D_BOX_LAYOUT_6
|
||||
_023329DC: .word 0x00000203
|
||||
_023329E0: .word 0x00000201
|
||||
_023329E4: .word 0x00000202
|
||||
_023329E8: .word 0x00000206
|
||||
_023329EC: .word 0x0000020A
|
||||
_023329F0: .word ov01_0233B73C
|
||||
_023329F4: .word ov01_0233B74C
|
||||
_023329F0: .word OVERLAY1_D_BOX_LAYOUT_7
|
||||
_023329F4: .word MAIN_MENU_CONFIRM
|
||||
arm_func_end ov01_02332698
|
||||
|
||||
arm_func_start ov01_023329F8
|
||||
@@ -11536,8 +11536,8 @@ _02332E58:
|
||||
add r0, r0, #0x600
|
||||
ldrsb r0, [r0, #0xd]
|
||||
bl sub_02027AF0
|
||||
ldr r0, _02332EEC ; =ov01_0233B73C
|
||||
ldr r3, _02332EF0 ; =ov01_0233B74C
|
||||
ldr r0, _02332EEC ; =OVERLAY1_D_BOX_LAYOUT_7
|
||||
ldr r3, _02332EF0 ; =MAIN_MENU_CONFIRM
|
||||
add r2, sp, #0
|
||||
mov r1, #0x33
|
||||
bl sub_0202A5CC
|
||||
@@ -11554,8 +11554,8 @@ _02332EDC: .word ov01_0233C184
|
||||
_02332EE0: .word 0x00000207
|
||||
_02332EE4: .word 0x00000205
|
||||
_02332EE8: .word 0x0000020A
|
||||
_02332EEC: .word ov01_0233B73C
|
||||
_02332EF0: .word ov01_0233B74C
|
||||
_02332EEC: .word OVERLAY1_D_BOX_LAYOUT_7
|
||||
_02332EF0: .word MAIN_MENU_CONFIRM
|
||||
arm_func_end ov01_02332ACC
|
||||
|
||||
arm_func_start ov01_02332EF4
|
||||
@@ -12118,7 +12118,7 @@ _023336CC:
|
||||
strb r2, [r0]
|
||||
str ip, [sp]
|
||||
mov ip, #8
|
||||
ldr r0, _0233375C ; =ov01_0233B7D0
|
||||
ldr r0, _0233375C ; =OVERLAY1_D_BOX_LAYOUT_8
|
||||
ldr r1, _02333760 ; =0x05001812
|
||||
ldr r3, _02333764 ; =ov01_0233382C
|
||||
add r2, sp, #8
|
||||
@@ -12133,7 +12133,7 @@ _023336CC:
|
||||
.align 2, 0
|
||||
_02333754: .word ov01_0233C188
|
||||
_02333758: .word 0x00003FE9
|
||||
_0233375C: .word ov01_0233B7D0
|
||||
_0233375C: .word OVERLAY1_D_BOX_LAYOUT_8
|
||||
_02333760: .word 0x05001812
|
||||
_02333764: .word ov01_0233382C
|
||||
arm_func_end ov01_023336A0
|
||||
@@ -12322,10 +12322,10 @@ ov01_02333994: ; 0x02333994
|
||||
mov r1, r0
|
||||
bl MemAlloc
|
||||
ldr r1, _023339EC ; =ov01_0233C190
|
||||
ldr r3, _023339F0 ; =ov01_0233B810
|
||||
ldr r3, _023339F0 ; =MAIN_DEBUG_MENU_1
|
||||
str r0, [r1, #4]
|
||||
mov ip, #0xb
|
||||
ldr r0, _023339F4 ; =ov01_0233B7F0
|
||||
ldr r0, _023339F4 ; =OVERLAY1_D_BOX_LAYOUT_9
|
||||
mov r1, #0x13
|
||||
mov r2, #0
|
||||
str ip, [sp]
|
||||
@@ -12341,8 +12341,8 @@ ov01_02333994: ; 0x02333994
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_023339EC: .word ov01_0233C190
|
||||
_023339F0: .word ov01_0233B810
|
||||
_023339F4: .word ov01_0233B7F0
|
||||
_023339F0: .word MAIN_DEBUG_MENU_1
|
||||
_023339F4: .word OVERLAY1_D_BOX_LAYOUT_9
|
||||
arm_func_end ov01_02333994
|
||||
|
||||
arm_func_start ov01_023339F8
|
||||
@@ -12531,9 +12531,9 @@ ov01_02333C20: ; 0x02333C20
|
||||
mov r1, r0
|
||||
bl MemAlloc
|
||||
ldr r1, _02333C70 ; =ov01_0233C198
|
||||
ldr r3, _02333C74 ; =ov01_0233B890
|
||||
ldr r3, _02333C74 ; =MAIN_DEBUG_MENU_2
|
||||
str r0, [r1, #4]
|
||||
ldr r0, _02333C78 ; =ov01_0233B870
|
||||
ldr r0, _02333C78 ; =OVERLAY1_D_BOX_LAYOUT_10
|
||||
mov r1, #0x13
|
||||
mov r2, #0
|
||||
bl sub_0202A5CC
|
||||
@@ -12548,8 +12548,8 @@ ov01_02333C20: ; 0x02333C20
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_02333C70: .word ov01_0233C198
|
||||
_02333C74: .word ov01_0233B890
|
||||
_02333C78: .word ov01_0233B870
|
||||
_02333C74: .word MAIN_DEBUG_MENU_2
|
||||
_02333C78: .word OVERLAY1_D_BOX_LAYOUT_10
|
||||
arm_func_end ov01_02333C20
|
||||
|
||||
arm_func_start ov01_02333C7C
|
||||
@@ -12734,7 +12734,7 @@ ov01_02333E60: ; 0x02333E60
|
||||
strh r8, [r0, #0x8c]
|
||||
b _023344E4
|
||||
_02333ED8:
|
||||
ldr r0, _02334608 ; =_020AF6B8
|
||||
ldr r0, _02334608 ; =BAG_ITEMS_PTR_MIRROR
|
||||
ldr r1, [r0]
|
||||
add r0, r1, r8, lsl #1
|
||||
add r0, r0, #0x300
|
||||
@@ -12798,7 +12798,7 @@ _02333F90:
|
||||
ldrsh r0, [r0, #0x8c]
|
||||
cmp r0, #0
|
||||
bne _02333FFC
|
||||
ldr r0, _02334608 ; =_020AF6B8
|
||||
ldr r0, _02334608 ; =BAG_ITEMS_PTR_MIRROR
|
||||
add r1, r1, #0x100
|
||||
ldr r0, [r0]
|
||||
add r0, r0, r8, lsl #1
|
||||
@@ -12812,7 +12812,7 @@ _02333F90:
|
||||
strh r1, [r0, #0x8c]
|
||||
b _023344D8
|
||||
_02333FFC:
|
||||
ldr r0, _02334608 ; =_020AF6B8
|
||||
ldr r0, _02334608 ; =BAG_ITEMS_PTR_MIRROR
|
||||
ldr r0, [r0]
|
||||
add r0, r0, r8, lsl #1
|
||||
add r0, r0, #0x300
|
||||
@@ -12901,7 +12901,7 @@ _0233414C:
|
||||
add r0, r0, #0x100
|
||||
ldrsh r0, [r0, #0xbc]
|
||||
bl sub_0200EB64
|
||||
ldr r1, _02334608 ; =_020AF6B8
|
||||
ldr r1, _02334608 ; =BAG_ITEMS_PTR_MIRROR
|
||||
mov r0, r0, lsl #0x10
|
||||
ldr r1, [r1]
|
||||
add r1, r1, r8, lsl #1
|
||||
@@ -13127,7 +13127,7 @@ _02334474:
|
||||
_02334494:
|
||||
cmp r4, r6
|
||||
bgt _02334474
|
||||
ldr r0, _02334608 ; =_020AF6B8
|
||||
ldr r0, _02334608 ; =BAG_ITEMS_PTR_MIRROR
|
||||
ldr r1, _02334604 ; =ov01_0233C1A0
|
||||
ldr r0, [r0]
|
||||
ldr r2, [r1, #4]
|
||||
@@ -13222,7 +13222,7 @@ _023344EC:
|
||||
.align 2, 0
|
||||
_02334600: .word 0x00000998
|
||||
_02334604: .word ov01_0233C1A0
|
||||
_02334608: .word _020AF6B8
|
||||
_02334608: .word BAG_ITEMS_PTR_MIRROR
|
||||
_0233460C: .word 0x0000016E
|
||||
_02334610: .word ov01_0233B8E8
|
||||
_02334614: .word 0x00000404
|
||||
@@ -21229,8 +21229,8 @@ ov01_0233B104:
|
||||
ov01_0233B118:
|
||||
.byte 0x42, 0x41, 0x43, 0x4B, 0x2F, 0x73, 0x31, 0x38, 0x70, 0x30, 0x31, 0x61, 0x2E, 0x62, 0x67, 0x70
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B12C
|
||||
ov01_0233B12C:
|
||||
.global PRINTS_STRINGS
|
||||
PRINTS_STRINGS:
|
||||
.byte 0x61, 0x73, 0x31, 0x30, 0x36, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B134
|
||||
ov01_0233B134:
|
||||
@@ -21442,8 +21442,8 @@ ov01_0233B304:
|
||||
.global ov01_0233B30C
|
||||
ov01_0233B30C:
|
||||
.byte 0x61, 0x73, 0x31, 0x30, 0x38, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B314
|
||||
ov01_0233B314:
|
||||
.global PRINTS_STRUCT
|
||||
PRINTS_STRUCT:
|
||||
.byte 0x1B, 0x01, 0x00, 0x00
|
||||
.global ov01_0233B318
|
||||
ov01_0233B318:
|
||||
@@ -21563,7 +21563,7 @@ ov01_0233B318:
|
||||
.byte 0xC4, 0x00, 0x00, 0x00
|
||||
.word ov01_0233B13C
|
||||
.byte 0xC5, 0x00, 0x00, 0x00
|
||||
.word ov01_0233B12C
|
||||
.word PRINTS_STRINGS
|
||||
.byte 0x00, 0x02, 0x00, 0x00
|
||||
.word ov01_0233B144
|
||||
.byte 0x01, 0x02, 0x00, 0x00
|
||||
@@ -21574,17 +21574,17 @@ ov01_0233B318:
|
||||
ov01_0233B504:
|
||||
.byte 0x72, 0x6F, 0x6D, 0x30
|
||||
.byte 0x3A, 0x47, 0x52, 0x4F, 0x55, 0x4E, 0x44, 0x2F, 0x25, 0x73, 0x2E, 0x77, 0x61, 0x6E, 0x00, 0x00
|
||||
.global ov01_0233B518
|
||||
ov01_0233B518:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_1
|
||||
OVERLAY1_D_BOX_LAYOUT_1:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B528
|
||||
ov01_0233B528:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_2
|
||||
OVERLAY1_D_BOX_LAYOUT_2:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B538
|
||||
ov01_0233B538:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_3
|
||||
OVERLAY1_D_BOX_LAYOUT_3:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x1C, 0x04, 0x00, 0xFD, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B548
|
||||
ov01_0233B548:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_4
|
||||
OVERLAY1_D_BOX_LAYOUT_4:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B558
|
||||
ov01_0233B558:
|
||||
@@ -21592,19 +21592,19 @@ ov01_0233B558:
|
||||
.word CreateMainMenus
|
||||
.word ov01_023316CC
|
||||
.word ov01_02331784
|
||||
.global ov01_0233B568
|
||||
ov01_0233B568:
|
||||
.global CONTINUE_CHOICE
|
||||
CONTINUE_CHOICE:
|
||||
.byte 0xE0, 0x01, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0xE1, 0x01, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00
|
||||
.byte 0xE6, 0x01, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B588
|
||||
ov01_0233B588:
|
||||
.global SUBMENU
|
||||
SUBMENU:
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0xB5, 0x01, 0xB6, 0x01, 0x14, 0x00, 0x00, 0x00, 0xD5, 0x01, 0xD6, 0x01
|
||||
.byte 0x08, 0x00, 0x00, 0x00, 0xBF, 0x01, 0xC0, 0x01, 0x09, 0x00, 0x00, 0x00, 0xC1, 0x01, 0xC2, 0x01
|
||||
.byte 0x18, 0x00, 0x00, 0x00, 0xDB, 0x01, 0xDC, 0x01, 0x07, 0x00, 0x00, 0x00, 0xBD, 0x01, 0xBE, 0x01
|
||||
.byte 0x10, 0x00, 0x00, 0x00, 0xCD, 0x01, 0xCE, 0x01, 0x21, 0x00, 0x00, 0x00, 0xDD, 0x01, 0xDE, 0x01
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B5D0
|
||||
ov01_0233B5D0:
|
||||
.global MAIN_MENU
|
||||
MAIN_MENU:
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0xB5, 0x01, 0xB6, 0x01
|
||||
.byte 0x07, 0x00, 0x00, 0x00, 0xBD, 0x01, 0xBE, 0x01, 0x03, 0x00, 0x00, 0x00, 0xB7, 0x01, 0xB8, 0x01
|
||||
.byte 0x1A, 0x00, 0x00, 0x00, 0xB9, 0x01, 0xBA, 0x01, 0x1B, 0x00, 0x00, 0x00, 0xB9, 0x01, 0xBA, 0x01
|
||||
@@ -21648,20 +21648,20 @@ ov01_0233B70C:
|
||||
.byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.word ov01_023329F8
|
||||
.word ov01_02332ACC
|
||||
.global ov01_0233B71C
|
||||
ov01_0233B71C:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_5
|
||||
OVERLAY1_D_BOX_LAYOUT_5:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x1C, 0x0E, 0x00, 0xFE, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B72C
|
||||
ov01_0233B72C:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_6
|
||||
OVERLAY1_D_BOX_LAYOUT_6:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x14, 0x04, 0x00, 0xFE, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B73C
|
||||
ov01_0233B73C:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_7
|
||||
OVERLAY1_D_BOX_LAYOUT_7:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x18, 0x12, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B74C
|
||||
ov01_0233B74C:
|
||||
.global MAIN_MENU_CONFIRM
|
||||
MAIN_MENU_CONFIRM:
|
||||
.byte 0xF7, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xF8, 0x01, 0x00, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B764
|
||||
@@ -21682,8 +21682,8 @@ ov01_0233B7BC:
|
||||
ov01_0233B7C4:
|
||||
.byte 0x5B, 0x74, 0x69, 0x6D
|
||||
.byte 0x65, 0x3A, 0x30, 0x5D, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B7D0
|
||||
ov01_0233B7D0:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_8
|
||||
OVERLAY1_D_BOX_LAYOUT_8:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x1C, 0x00
|
||||
.byte 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B7E0
|
||||
@@ -21692,8 +21692,8 @@ ov01_0233B7E0:
|
||||
.word ov01_023336A0
|
||||
.word ov01_02333768
|
||||
.word ov01_02333794
|
||||
.global ov01_0233B7F0
|
||||
ov01_0233B7F0:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_9
|
||||
OVERLAY1_D_BOX_LAYOUT_9:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00
|
||||
.byte 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B800
|
||||
@@ -21702,8 +21702,8 @@ ov01_0233B800:
|
||||
.word ov01_02333994
|
||||
.word ov01_023339F8
|
||||
.word ov01_02333A34
|
||||
.global ov01_0233B810
|
||||
ov01_0233B810:
|
||||
.global MAIN_DEBUG_MENU_1
|
||||
MAIN_DEBUG_MENU_1:
|
||||
.byte 0xEB, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
||||
.byte 0xEC, 0x01, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xEE, 0x01, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00
|
||||
.byte 0xEF, 0x01, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0xF0, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00
|
||||
@@ -21711,8 +21711,8 @@ ov01_0233B810:
|
||||
.byte 0xF3, 0x01, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0xF4, 0x01, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x00
|
||||
.byte 0xF5, 0x01, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0xF6, 0x01, 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B870
|
||||
ov01_0233B870:
|
||||
.global OVERLAY1_D_BOX_LAYOUT_10
|
||||
OVERLAY1_D_BOX_LAYOUT_10:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00
|
||||
.byte 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov01_0233B880
|
||||
@@ -21721,8 +21721,8 @@ ov01_0233B880:
|
||||
.word ov01_02333C20
|
||||
.word ov01_02333C7C
|
||||
.word ov01_02333CB8
|
||||
.global ov01_0233B890
|
||||
ov01_0233B890:
|
||||
.global MAIN_DEBUG_MENU_2
|
||||
MAIN_DEBUG_MENU_2:
|
||||
.byte 0x86, 0x3C, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x87, 0x3C, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x88, 0x3C, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00
|
||||
.byte 0x89, 0x3C, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x84, 0x3C, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00
|
||||
|
||||
244
asm/overlay_02.s
244
asm/overlay_02.s
@@ -424,7 +424,7 @@ _02329A34:
|
||||
sub r2, r2, r1
|
||||
beq _02329A58
|
||||
mov r0, #0
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
_02329A58:
|
||||
ldr r2, [sp, #8]
|
||||
ldr r1, _02329AFC ; =0x00005544
|
||||
@@ -751,7 +751,7 @@ ov02_02329E4C: ; 0x02329E4C
|
||||
beq _02329E9C
|
||||
mov r1, r3
|
||||
mov r0, #0
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
_02329E9C:
|
||||
mov r0, r5
|
||||
str r6, [r4]
|
||||
@@ -778,7 +778,7 @@ ov02_02329EA8: ; 0x02329EA8
|
||||
beq _02329EF4
|
||||
mov r1, r5
|
||||
mov r0, #0
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
_02329EF4:
|
||||
mov r0, r5
|
||||
str r5, [r4, #4]
|
||||
@@ -1250,7 +1250,7 @@ ov02_0232A474: ; 0x0232A474
|
||||
ldr r2, [sp, #0x18]
|
||||
mov r1, ip
|
||||
mov r2, r2, lsl #3
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
ldmia sp!, {r3, r4, r5, pc}
|
||||
_0232A4A4:
|
||||
ldr r4, [sp, #0x18]
|
||||
@@ -1752,7 +1752,7 @@ ov02_0232AB94: ; 0x0232AB94
|
||||
mov r0, r1
|
||||
mul r2, lr, r2
|
||||
ldr r1, [r3]
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
ldmia sp!, {r3, pc}
|
||||
arm_func_end ov02_0232AB94
|
||||
|
||||
@@ -1784,7 +1784,7 @@ _0232AC3C:
|
||||
mov r0, r6
|
||||
mov r1, sb
|
||||
mov r2, r4
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
ldr r0, [r7, #8]
|
||||
add r8, r8, #1
|
||||
cmp r8, r0
|
||||
@@ -4094,11 +4094,11 @@ ov02_0232CA3C: ; 0x0232CA3C
|
||||
mov r0, #0
|
||||
ldr r2, [r4, #0x14]
|
||||
str r0, [r4, #0x1c]
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
ldr r1, [r4, #0x10]
|
||||
ldr r2, [r4, #0x14]
|
||||
mov r0, #0
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
ldr r0, [r4, #0xc]
|
||||
ldr r1, [r4, #0x14]
|
||||
bl sub_0207A2DC
|
||||
@@ -4128,7 +4128,7 @@ ov02_0232CAC0: ; 0x0232CAC0
|
||||
mov r0, r4
|
||||
mov r1, r5
|
||||
mov r2, #0x30
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
ldr r0, [r5, #0x18]
|
||||
mov r3, #0
|
||||
cmp r0, #0
|
||||
@@ -4897,11 +4897,11 @@ _0232D46C:
|
||||
add r0, r5, #0x3c
|
||||
mov r2, r6
|
||||
add r1, r0, r1, lsl #2
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r2, r6
|
||||
add r0, r5, #0x3c
|
||||
mov r1, #0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r5
|
||||
add r1, r4, #0x3c
|
||||
bl sub_0207A2C0
|
||||
@@ -9781,20 +9781,20 @@ ov02_0232FDEC: ; 0x0232FDEC
|
||||
add r3, r0, #0
|
||||
add r0, r1, #0
|
||||
add r1, r3, #0
|
||||
ldr r3, _0232FDF8 ; =sub_0207C4C8
|
||||
ldr r3, _0232FDF8 ; =MemcpyFast
|
||||
bx r3
|
||||
nop
|
||||
_0232FDF8: .word sub_0207C4C8
|
||||
_0232FDF8: .word MemcpyFast
|
||||
thumb_func_end ov02_0232FDEC
|
||||
|
||||
thumb_func_start ov02_0232FDFC
|
||||
ov02_0232FDFC: ; 0x0232FDFC
|
||||
ldr r3, _0232FE04 ; =sub_0207C40C
|
||||
ldr r3, _0232FE04 ; =MemsetFast
|
||||
lsl r1, r1, #0x18
|
||||
lsr r1, r1, #0x18
|
||||
bx r3
|
||||
.align 2, 0
|
||||
_0232FE04: .word sub_0207C40C
|
||||
_0232FE04: .word MemsetFast
|
||||
thumb_func_end ov02_0232FDFC
|
||||
|
||||
thumb_func_start ov02_0232FE08
|
||||
@@ -10076,14 +10076,14 @@ ov02_0232FFB8: ; 0x0232FFB8
|
||||
add r0, r5, #0
|
||||
add r0, #0xc
|
||||
mov r2, #0x20
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
ldrh r0, [r5, #0x36]
|
||||
add r1, r4, #0
|
||||
add r1, #0x30
|
||||
str r0, [r4, #0x24]
|
||||
add r0, r5, #4
|
||||
mov r2, #6
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
mov r1, #0
|
||||
ldr r2, _02330040 ; =ov02_02352FD8
|
||||
add r0, r1, #0
|
||||
@@ -10149,14 +10149,14 @@ ov02_02330044: ; 0x02330044
|
||||
mov r0, #0
|
||||
add r1, #0xc
|
||||
mov r2, #0x20
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
ldr r0, [r5]
|
||||
add r1, r4, #0
|
||||
strh r0, [r4, #0xa]
|
||||
ldrh r2, [r4, #0xa]
|
||||
add r0, r5, #4
|
||||
add r1, #0xc
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
pop {r3, r4, r5, pc}
|
||||
.align 2, 0
|
||||
thumb_func_end ov02_02330044
|
||||
@@ -10635,7 +10635,7 @@ _023303CE:
|
||||
ldr r0, _02330560 ; =ov02_02359420
|
||||
mov r1, #0
|
||||
mov r2, #0x60
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, [r7, #0x28]
|
||||
cmp r0, #5
|
||||
bne _023303EC
|
||||
@@ -10672,7 +10672,7 @@ _0233040C:
|
||||
add r1, r2, r1
|
||||
ldr r2, [r7, #0x28]
|
||||
add r0, #0x2c
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
blx ov00_022D6BDC
|
||||
ldr r2, [r7]
|
||||
ldr r3, _02330564 ; =0x0030BFFE
|
||||
@@ -11322,7 +11322,7 @@ _023308D4:
|
||||
blx ov00_022D6D04
|
||||
add r1, r5, #0
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
add r4, r4, #1
|
||||
add r5, #0xc0
|
||||
cmp r4, r6
|
||||
@@ -11367,7 +11367,7 @@ _02330930:
|
||||
ldr r0, _023309DC ; =ov02_023594A8
|
||||
mov r1, #0xff
|
||||
mov r2, #6
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r1, _023309E0 ; =ov00_02318158
|
||||
ldr r0, _023309D8 ; =ov02_02359480
|
||||
str r1, [r0, #0x10]
|
||||
@@ -11411,7 +11411,7 @@ _0233097E:
|
||||
ldr r0, _023309E4 ; =ov02_023594B0
|
||||
mov r1, #0xff
|
||||
mov r2, #0x20
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r1, _023309E8 ; =ov00_02318160
|
||||
ldr r0, _023309D8 ; =ov02_02359480
|
||||
str r1, [r0, #0x14]
|
||||
@@ -11575,19 +11575,19 @@ ov02_02330AB8: ; 0x02330AB8
|
||||
ldr r1, [r1, #0x24]
|
||||
add r0, r5, #0
|
||||
mov r2, #0x50
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
b _02330AE4
|
||||
_02330ADA:
|
||||
ldr r0, [r1, #0x24]
|
||||
mov r1, #0
|
||||
mov r2, #0x50
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
_02330AE4:
|
||||
ldr r1, _02330B38 ; =ov02_02359480
|
||||
add r0, r7, #0
|
||||
ldr r1, [r1, #0x20]
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
bl ov02_02330850
|
||||
cmp r0, #1
|
||||
bne _02330B08
|
||||
@@ -12211,7 +12211,7 @@ _02330F84:
|
||||
blx ov00_022D6D04
|
||||
add r1, r5, #0
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
add r4, r4, #1
|
||||
add r5, #0xc0
|
||||
cmp r4, r6
|
||||
@@ -12253,7 +12253,7 @@ _02330FCC:
|
||||
_02330FDC:
|
||||
mov r1, #0xff
|
||||
mov r2, #6
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r1, _02331088 ; =ov00_02318158
|
||||
ldr r0, _02331080 ; =ov02_023594D0
|
||||
str r1, [r0, #0x44]
|
||||
@@ -12295,7 +12295,7 @@ _02331026:
|
||||
ldr r0, _0233108C ; =ov02_023599C0
|
||||
mov r1, #0xff
|
||||
mov r2, #0x20
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r1, _02331090 ; =ov00_02318160
|
||||
ldr r0, _02331080 ; =ov02_023594D0
|
||||
str r1, [r0, #0x48]
|
||||
@@ -12428,19 +12428,19 @@ ov02_02331124: ; 0x02331124
|
||||
ldr r1, [r1, #0x28]
|
||||
add r0, r5, #0
|
||||
mov r2, #0x60
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
b _02331150
|
||||
_02331146:
|
||||
ldr r0, [r1, #0x28]
|
||||
mov r1, #0
|
||||
mov r2, #0x60
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
_02331150:
|
||||
ldr r1, _023311A4 ; =ov02_023594D0
|
||||
add r0, r7, #0
|
||||
ldr r1, [r1, #0x4c]
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
bl ov02_02330F00
|
||||
cmp r0, #1
|
||||
bne _02331174
|
||||
@@ -20199,7 +20199,7 @@ ov02_02335268: ; 0x02335268
|
||||
mov r4, r0
|
||||
ldr r1, [r1]
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C3B4
|
||||
bl ArrayCopy32Fast
|
||||
mov r0, r4
|
||||
bl ov02_0234CF78
|
||||
mov r0, #1
|
||||
@@ -24090,14 +24090,14 @@ ov02_023386D8: ; 0x023386D8
|
||||
mov r0, #0
|
||||
mov r2, #0x104
|
||||
strb r0, [r3]
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
mov r3, #0x50
|
||||
mov r2, #0xc
|
||||
ldr r0, _023387DC ; =ov02_023528FC
|
||||
add r1, sp, #4
|
||||
strb r3, [sp]
|
||||
strh r2, [sp, #2]
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r0, _023387D8 ; =ov02_0235AA64
|
||||
mov r2, #3
|
||||
ldr r1, [r0, #4]
|
||||
@@ -25005,7 +25005,7 @@ _0233924C:
|
||||
bl ov02_0234C3C4
|
||||
add r1, r4, #0x1c000
|
||||
mov r2, #0x16
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
ldr r0, _023393D8 ; =ov02_0235AA90
|
||||
ldr r0, [r0]
|
||||
add r0, r0, #0x1e000
|
||||
@@ -26932,7 +26932,7 @@ _0233AAAC:
|
||||
mov r0, r5
|
||||
mov r1, r6
|
||||
mov r2, r4
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r7, r7, #1
|
||||
cmp r7, #2
|
||||
add r5, r5, #0x20
|
||||
@@ -28694,12 +28694,12 @@ ov02_0233BF6C: ; 0x0233BF6C
|
||||
mov r0, #0
|
||||
add r1, sp, #0x10
|
||||
mov r2, #0x16
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
ldrb r2, [r5, #1]
|
||||
add r0, r5, #2
|
||||
add r1, sp, #0x10
|
||||
mov r2, r2, lsl #1
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
mov r0, #0x1c
|
||||
str r0, [sp]
|
||||
mov r0, #2
|
||||
@@ -31041,7 +31041,7 @@ ov02_0233DD04: ; 0x0233DD04
|
||||
mov r1, #0
|
||||
mov r2, #0x22
|
||||
addle r5, r5, #6
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
cmp r4, #0x10
|
||||
movle ip, r4
|
||||
movgt ip, #0x10
|
||||
@@ -31079,7 +31079,7 @@ _0233DDB4:
|
||||
add r0, sp, #0xc
|
||||
mov r1, #0
|
||||
mov r2, #0x22
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
sub r3, r4, #0x10
|
||||
cmp r3, #0
|
||||
mov r7, #0
|
||||
@@ -32482,7 +32482,7 @@ ov02_0233EFC8: ; 0x0233EFC8
|
||||
add r0, r4, #8
|
||||
mov r1, #0
|
||||
mov r2, #0xc
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0233F130 ; =ov02_0235AAE4
|
||||
mov r1, #0
|
||||
ldr r0, [r0]
|
||||
@@ -32722,7 +32722,7 @@ _0233F348:
|
||||
add r3, r3, #8
|
||||
add r0, r0, r0, lsl #1
|
||||
add r0, r3, r0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0233F60C ; =ov02_0235AAE4
|
||||
ldr r1, [r0]
|
||||
ldrb r0, [r1, #0x14]
|
||||
@@ -32910,7 +32910,7 @@ ov02_0233F618: ; 0x0233F618
|
||||
add r0, r3, r2
|
||||
add r1, sp, #0
|
||||
mov r2, #3
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r2, #0
|
||||
add r3, sp, #0
|
||||
strb r2, [sp, #3]
|
||||
@@ -34939,15 +34939,15 @@ _0234116C:
|
||||
add r0, r4, #0xc0
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
add r0, r4, #0xc4
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
add r0, r4, #0xf0
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, #0
|
||||
strb r0, [r4, #0xd0]
|
||||
_023411C4:
|
||||
@@ -34957,7 +34957,7 @@ _023411C4:
|
||||
add r0, r4, #0xc8
|
||||
mov r1, #0
|
||||
mov r2, #8
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
_023411E0:
|
||||
mov r0, #2
|
||||
mov r1, #0
|
||||
@@ -35125,7 +35125,7 @@ _023413F0:
|
||||
addeq r0, r4, r4, lsr #31
|
||||
moveq r4, r0, asr #1
|
||||
add r0, sp, #0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
add r0, sp, #0
|
||||
mov r2, r4
|
||||
mov r1, #0x2a
|
||||
@@ -35415,7 +35415,7 @@ ov02_023417DC: ; 0x023417DC
|
||||
add r0, sp, #0xc
|
||||
mov r1, #0
|
||||
mov r2, #0x22
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r6
|
||||
mov r1, #0x20
|
||||
bl ov02_0234F59C
|
||||
@@ -35462,7 +35462,7 @@ _0234184C:
|
||||
add r0, sp, #0xc
|
||||
mov r1, #0
|
||||
mov r2, #0x22
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
sub r4, r4, #0x10
|
||||
cmp r4, #0
|
||||
mov ip, #0
|
||||
@@ -40065,7 +40065,7 @@ ov02_023453DC: ; 0x023453DC
|
||||
ldr r0, _02345470 ; =ov02_02352D54
|
||||
add r1, sp, #4
|
||||
mov r2, #0xc
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
add r1, sp, #0
|
||||
mov r0, #0
|
||||
bl ov02_02338DC8
|
||||
@@ -40222,11 +40222,11 @@ _023455B0:
|
||||
bl ov00_022EE00C
|
||||
add r1, r4, #0xf0
|
||||
mov r2, #0xe
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
bl ov00_022EE00C
|
||||
add r1, r4, #0x1f0
|
||||
mov r2, #0xe
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
bl ov02_023344AC
|
||||
mov r0, #0
|
||||
bl ov02_0234E02C
|
||||
@@ -41216,12 +41216,12 @@ ov02_02346174: ; 0x02346174
|
||||
add r1, sp, #0
|
||||
mov r0, #0
|
||||
mov r2, #0x16
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
ldrh r2, [sp, #0x30]
|
||||
add r0, sp, #0x1a
|
||||
add r1, sp, #0
|
||||
mov r2, r2, lsl #1
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
add r0, sp, #0
|
||||
mov r1, #0x28
|
||||
bl ov02_02334EE4
|
||||
@@ -41683,7 +41683,7 @@ ov02_02346750: ; 0x02346750
|
||||
add r1, ip, #4
|
||||
mov r2, #0x600
|
||||
str ip, [r3]
|
||||
bl sub_0207C3B4
|
||||
bl ArrayCopy32Fast
|
||||
ldr r1, _023467AC ; =ov02_0234684C
|
||||
mov r0, #1
|
||||
mov r2, #0
|
||||
@@ -41743,7 +41743,7 @@ _02346820:
|
||||
mov r0, r8
|
||||
mov r1, r4
|
||||
mov r2, r6
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
add r5, r5, #1
|
||||
cmp r5, r7
|
||||
add r8, r8, #0x40
|
||||
@@ -41807,7 +41807,7 @@ ov02_023468DC: ; 0x023468DC
|
||||
mov r4, r0
|
||||
mov r2, #0x20
|
||||
ldmib r1, {r0, r1}
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
mov r1, r4
|
||||
mov r0, #1
|
||||
bl ov02_0234FB40
|
||||
@@ -41840,7 +41840,7 @@ ov02_02346934: ; 0x02346934
|
||||
ldr r0, [r1, #4]
|
||||
mov r1, #0x5000000
|
||||
mov r2, #0x200
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
mov r1, r4
|
||||
mov r0, #1
|
||||
bl ov02_0234FB40
|
||||
@@ -42429,7 +42429,7 @@ ov02_02347090: ; 0x02347090
|
||||
ldr r1, [r1]
|
||||
mov r2, #0x348
|
||||
add r1, r1, #0x1300
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
ldr r0, _02347150 ; =ov02_0235AB44
|
||||
ldr r1, _02347154 ; =ov02_02347288
|
||||
ldr r0, [r0]
|
||||
@@ -42677,11 +42677,11 @@ _023473C8:
|
||||
add r0, r4, #4
|
||||
add r1, sb, #0x20
|
||||
mov r2, #6
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r1, sb
|
||||
add r0, r4, #0xc
|
||||
mov r2, #0x20
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, fp, sl, lsl #1
|
||||
ldrh r0, [r0, #0x50]
|
||||
strh r0, [sb, #0x26]
|
||||
@@ -42808,7 +42808,7 @@ ov02_02347554: ; 0x02347554
|
||||
mov r2, #0x20
|
||||
ldr r1, [r1]
|
||||
add r1, r1, #0x440
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r0, _02347580 ; =ov02_0235AB48
|
||||
mov r1, #0
|
||||
ldr r0, [r0]
|
||||
@@ -42827,7 +42827,7 @@ ov02_02347584: ; 0x02347584
|
||||
mov r1, #0
|
||||
add r0, r0, #0x480
|
||||
mov r2, #0x10
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r6
|
||||
mov r1, #0x20
|
||||
bl ov02_0234F59C
|
||||
@@ -42881,7 +42881,7 @@ _0234763C:
|
||||
strb r3, [r4, #0x4e6]
|
||||
ldr r1, [r1]
|
||||
add r1, r1, #0x480
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
_02347668:
|
||||
cmp r5, #5
|
||||
bgt _02347680
|
||||
@@ -43005,13 +43005,13 @@ ov02_023477B4: ; 0x023477B4
|
||||
ldr r2, _023477D0 ; =ov02_0235AB48
|
||||
mov r1, r0
|
||||
ldr r0, [r2]
|
||||
ldr ip, _023477D4 ; =sub_0207C4C8
|
||||
ldr ip, _023477D4 ; =MemcpyFast
|
||||
mov r2, #0x20
|
||||
add r0, r0, #0x440
|
||||
bx ip
|
||||
.align 2, 0
|
||||
_023477D0: .word ov02_0235AB48
|
||||
_023477D4: .word sub_0207C4C8
|
||||
_023477D4: .word MemcpyFast
|
||||
arm_func_end ov02_023477B4
|
||||
|
||||
arm_func_start ov02_023477D8
|
||||
@@ -43224,21 +43224,21 @@ _02347A40:
|
||||
beq _02347A94
|
||||
add r0, r5, #0xc0
|
||||
mov r1, #0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
add r0, r5, #0xc4
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, #0
|
||||
b _02347AB8
|
||||
_02347A94:
|
||||
add r0, r4, #0xc0
|
||||
add r1, r5, #0xc0
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r4, #0xc4
|
||||
add r1, r5, #0xc4
|
||||
mov r2, #4
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r4, #0xf0
|
||||
bl ov00_022ED7C0
|
||||
_02347AB8:
|
||||
@@ -43249,12 +43249,12 @@ _02347AB8:
|
||||
beq _02347ADC
|
||||
add r0, r5, #0xc8
|
||||
mov r1, #0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
b _02347AE8
|
||||
_02347ADC:
|
||||
add r0, r4, #0xc8
|
||||
add r1, r5, #0xc8
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
_02347AE8:
|
||||
ldrb r0, [r4, #0xf4]
|
||||
bl ov02_02347E18
|
||||
@@ -43272,11 +43272,11 @@ ov02_02347AF8: ; 0x02347AF8
|
||||
mov r1, #0
|
||||
add r0, r4, #0x400
|
||||
mov r2, #0xef
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r6
|
||||
add r1, r4, #0x440
|
||||
mov r2, #0x20
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r0, [r6, #0x20]
|
||||
cmp r0, #1
|
||||
beq _02347B48
|
||||
@@ -43322,7 +43322,7 @@ _02347BB8:
|
||||
mov r0, r8
|
||||
mov r1, r7
|
||||
mov r2, r5
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r6, r6, #1
|
||||
cmp r6, #4
|
||||
add r7, r7, #0x10
|
||||
@@ -43333,7 +43333,7 @@ _02347BB8:
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
strb r3, [r4, #0x4e7]
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, #1
|
||||
strb r0, [r4, #0x4f5]
|
||||
strb r0, [r4, #0x4f6]
|
||||
@@ -43353,47 +43353,47 @@ ov02_02347C0C: ; 0x02347C0C
|
||||
add r4, r0, #0x400
|
||||
mov r0, r4
|
||||
mov r2, #0xef
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r5
|
||||
add r1, r4, #0xd1
|
||||
mov r2, #5
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #6
|
||||
add r1, r4, #0xd6
|
||||
mov r2, #5
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0xc
|
||||
add r1, r4, #0xdb
|
||||
mov r2, #5
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x12
|
||||
add r1, r4, #0xe0
|
||||
mov r2, #5
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x18
|
||||
add r1, r4, #0x60
|
||||
mov r2, #0x20
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x39
|
||||
add r1, r4, #0x80
|
||||
mov r2, #0xd
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x47
|
||||
add r1, r4, #0x90
|
||||
mov r2, #0xd
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x55
|
||||
add r1, r4, #0xa0
|
||||
mov r2, #0xd
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x63
|
||||
add r1, r4, #0xb0
|
||||
mov r2, #0xd
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r0, r5, #0x71
|
||||
add r1, r4, #0x40
|
||||
mov r2, #0x20
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldrb r2, [r4, #0xe6]
|
||||
mov r1, #1
|
||||
add r0, r4, #0xf0
|
||||
@@ -43406,7 +43406,7 @@ ov02_02347C0C: ; 0x02347C0C
|
||||
strb r1, [r4, #0xe7]
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, #1
|
||||
strb r0, [r4, #0xf5]
|
||||
strb r0, [r4, #0xf6]
|
||||
@@ -43435,7 +43435,7 @@ ov02_02347D2C: ; 0x02347D2C
|
||||
add r4, r0, r5, lsl #8
|
||||
mov r0, r4
|
||||
mov r2, #0xef
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r1, #0xff
|
||||
mov r0, r5
|
||||
strb r1, [r4, #0xe7]
|
||||
@@ -43453,7 +43453,7 @@ ov02_02347D68: ; 0x02347D68
|
||||
mov r0, #0
|
||||
ldr r1, [r1]
|
||||
mov r2, #0x400
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
ldr r0, _02347E14 ; =ov02_0235AB48
|
||||
mov r3, #0
|
||||
mov r2, #0xff
|
||||
@@ -43479,7 +43479,7 @@ _02347DCC:
|
||||
add r1, r1, r7
|
||||
mov r2, r5
|
||||
add r1, r1, #0xf0
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
add r8, r8, #1
|
||||
cmp r8, #2
|
||||
add r7, r7, #0x100
|
||||
@@ -43511,7 +43511,7 @@ ov02_02347E18: ; 0x02347E18
|
||||
mov r1, r6
|
||||
mov r2, #0x10
|
||||
mov r4, #1
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
add r0, sp, #4
|
||||
mov r2, r4
|
||||
str r2, [r0, r7, lsl #2]
|
||||
@@ -43604,7 +43604,7 @@ ov02_02347F80: ; 0x02347F80
|
||||
add r0, sp, #0
|
||||
mov r1, #0
|
||||
mov r2, #4
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r7, #0
|
||||
mov r8, r7
|
||||
mov r4, #0x20
|
||||
@@ -43615,7 +43615,7 @@ _02347FB4:
|
||||
mov r1, r6
|
||||
mov r2, r5
|
||||
add r0, sl, r8
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r1, fp
|
||||
mov r2, r6
|
||||
_02347FCC:
|
||||
@@ -44669,7 +44669,7 @@ _02348D3C:
|
||||
mov r2, #8
|
||||
add r1, r1, #0x388
|
||||
add r1, r1, #0x1000
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r2, _02348E1C ; =ov02_0235AB58
|
||||
mov r3, #1
|
||||
ldr r1, [r2]
|
||||
@@ -44681,7 +44681,7 @@ _02348D3C:
|
||||
add r1, r1, #0x394
|
||||
add r1, r1, #0x1000
|
||||
mov r2, r2, lsl #1
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
bl ov02_02348E34
|
||||
cmp r0, #0
|
||||
beq _02348E04
|
||||
@@ -44923,7 +44923,7 @@ _023490C4:
|
||||
add r0, r6, #4
|
||||
add r1, r1, r4
|
||||
mov r2, #6
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldrb r0, [r6, #0x15]
|
||||
tst r0, #1
|
||||
ldr r0, _02349144 ; =ov02_0235AB58
|
||||
@@ -45985,7 +45985,7 @@ ov02_02349F3C: ; 0x02349F3C
|
||||
add r1, sp, #0x14
|
||||
mov r2, r3, lsl #1
|
||||
strb r3, [sp, #0x13]
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldrb r2, [sp, #0x12]
|
||||
ldr r0, _0234A054 ; =ov02_0235AB60
|
||||
add lr, sp, #4
|
||||
@@ -46609,7 +46609,7 @@ _0234A7CC:
|
||||
add r3, r3, #0xe
|
||||
mla r1, r2, r1, r3
|
||||
mov r2, #0x16
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
_0234A820:
|
||||
ldr r0, _0234A96C ; =ov02_0235AB60
|
||||
@@ -46778,7 +46778,7 @@ _0234AA34:
|
||||
mov r0, r2
|
||||
add r1, sp, #0
|
||||
mov r2, #0xe
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
mov r0, r5
|
||||
bl SetIrqFlag
|
||||
ldrh r0, [sp, #4]
|
||||
@@ -48438,7 +48438,7 @@ ov02_0234BF00: ; 0x0234BF00
|
||||
ldr r1, [r3]
|
||||
ldr r0, [r1, #0xaa4]
|
||||
add r1, r1, #0xa50
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r0, _0234BF7C ; =ov02_0235AB6C
|
||||
mov r2, #0
|
||||
ldr r1, [r0]
|
||||
@@ -49185,12 +49185,12 @@ ov02_0234C8E4: ; 0x0234C8E4
|
||||
ldr r0, [r0]
|
||||
mov r2, #0x100
|
||||
add r0, r0, #0x100
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0234C924 ; =ov02_0235AB6C
|
||||
mov r1, #0
|
||||
ldr r0, [r0]
|
||||
mov r2, #0x100
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0234C924 ; =ov02_0235AB6C
|
||||
ldr r0, [r0]
|
||||
str r0, [r0, #0xab0]
|
||||
@@ -49217,7 +49217,7 @@ ov02_0234C928: ; 0x0234C928
|
||||
ldr r1, [r3]
|
||||
ldr r1, [r1, #0xab0]
|
||||
add r1, r1, #4
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
b _0234C99C
|
||||
_0234C970:
|
||||
ldr r0, [r5, #0x204]
|
||||
@@ -49286,7 +49286,7 @@ _0234CA38:
|
||||
mov r2, r6
|
||||
add r1, r1, #0x100
|
||||
mla r1, r7, r8, r1
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldr r0, [sb]
|
||||
add r0, r0, r7, lsl #2
|
||||
str r5, [r0, #0x208]
|
||||
@@ -50202,7 +50202,7 @@ ov02_0234D618: ; 0x0234D618
|
||||
mov r0, #0
|
||||
mov r2, #8
|
||||
add sb, r6, r3
|
||||
bl sub_0207C314
|
||||
bl ArrayFill32
|
||||
cmp r4, #0
|
||||
mov sl, #0
|
||||
addle sp, sp, #8
|
||||
@@ -50214,11 +50214,11 @@ _0234D66C:
|
||||
mov r0, sb
|
||||
mov r1, r8
|
||||
mov r2, r7
|
||||
bl sub_0207C2E0
|
||||
bl ArrayCopy16
|
||||
mov r0, r8
|
||||
mov r1, r5
|
||||
mov r2, r6
|
||||
bl sub_0207C330
|
||||
bl ArrayCopy32
|
||||
add sl, sl, #1
|
||||
cmp sl, r4
|
||||
add sb, sb, #6
|
||||
@@ -50942,14 +50942,14 @@ ov02_0234DFC8: ; 0x0234DFC8
|
||||
mov r1, r0
|
||||
mov r0, #0
|
||||
mov r2, #0x6000
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
b _0234E01C
|
||||
_0234E008:
|
||||
bl sub_02077598
|
||||
mov r1, r0
|
||||
mov r0, #0
|
||||
mov r2, #0x3000
|
||||
bl sub_0207C2B8
|
||||
bl ArrayFill16
|
||||
_0234E01C:
|
||||
add r0, r4, #0x28
|
||||
bl ov02_0234E7D8
|
||||
@@ -51497,7 +51497,7 @@ ov02_0234E704: ; 0x0234E704
|
||||
mov r4, r0
|
||||
mov r1, #0
|
||||
mov r2, #0x40000
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r4
|
||||
mov r1, #0x40000
|
||||
mov r2, #0
|
||||
@@ -51559,7 +51559,7 @@ ov02_0234E7B4: ; 0x0234E7B4
|
||||
mov r2, r4
|
||||
mov r1, #0
|
||||
mov r4, r0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
mov r0, r4
|
||||
ldmia sp!, {r4, pc}
|
||||
arm_func_end ov02_0234E7B4
|
||||
@@ -52334,7 +52334,7 @@ ov02_0234F190: ; 0x0234F190
|
||||
mov r0, #0x200
|
||||
mov r2, #0x800
|
||||
str r1, [r3]
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r5, #0
|
||||
ldr r7, _0234F224 ; =ov02_0235ABAC
|
||||
mov r6, r5
|
||||
@@ -52807,28 +52807,28 @@ ov02_0234F7CC: ; 0x0234F7CC
|
||||
mov r0, #0
|
||||
mov r1, #0x6800000
|
||||
mov r2, #0x40000
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
ldr r1, _0234F844 ; =0x06880000
|
||||
mov r0, #0
|
||||
mov r2, #0x24000
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
bl sub_0207735C
|
||||
mov r0, #0x200
|
||||
mov r1, #0x7000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
mov r1, #0x5000000
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0x200
|
||||
ldr r1, _0234F848 ; =0x07000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
mov r0, #0
|
||||
ldr r1, _0234F84C ; =0x05000400
|
||||
mov r2, #0x400
|
||||
bl sub_0207C358
|
||||
bl ArrayFill32Fast
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_0234F840: .word 0x000001F3
|
||||
|
||||
@@ -462,7 +462,7 @@ _0233CF8C:
|
||||
strb r3, [r4, #0x15]
|
||||
add r1, r4, #0x16
|
||||
mov r2, r3, lsl #1
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
ldrb r1, [r4, #0x14]
|
||||
ldr r0, _0233D0E0 ; =0x0233EC28
|
||||
mov r3, #0
|
||||
@@ -1090,7 +1090,7 @@ ov08_0233D788: ; 0x0233D788
|
||||
mov r2, #0x16
|
||||
ldr r1, [r1, #4]
|
||||
add r1, r1, #0x34
|
||||
bl sub_0207C4C8
|
||||
bl MemcpyFast
|
||||
_0233D7FC:
|
||||
ldr r0, _0233D814 ; =0x0233EC28
|
||||
ldr r1, [r0, #4]
|
||||
@@ -1762,15 +1762,15 @@ ov08_0233DFF8: ; 0x0233DFF8
|
||||
ldr r0, _0233E0E4 ; =0x0234AE00
|
||||
mov r2, #0x400
|
||||
strh r1, [r3, #4]
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0233E0E8 ; =0x0234AD40
|
||||
mov r1, #0
|
||||
mov r2, #0xc0
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r0, _0233E0EC ; =0x0234ACD4
|
||||
mov r1, #0
|
||||
mov r2, #0x18
|
||||
bl sub_0207C40C
|
||||
bl MemsetFast
|
||||
ldr r1, _0233E0E0 ; =0x0234AC80
|
||||
mov r2, #0
|
||||
mov r0, #3
|
||||
@@ -2442,7 +2442,7 @@ ov08_0233E9A4:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE6, 0x04, 0x00, 0x00
|
||||
.word _020A2C14
|
||||
.word DS_DOWNLOAD_TEAMS
|
||||
.word ov08_0233E8CC
|
||||
.word ov08_0233E91E
|
||||
.word ov08_0233E95C
|
||||
|
||||
104
asm/overlay_10.s
104
asm/overlay_10.s
@@ -869,7 +869,7 @@ _022BD5C8: ; jump table
|
||||
b _022BD700 ; case 3
|
||||
b _022BD700 ; case 4
|
||||
_022BD5DC:
|
||||
ldr r0, _022BD714 ; =_020B0A48
|
||||
ldr r0, _022BD714 ; =TEAM_MEMBER_TABLE_PTR
|
||||
mov r1, #0x68
|
||||
ldr r0, [r0]
|
||||
ldr r2, _022BD710 ; =ov10_022DC220
|
||||
@@ -955,7 +955,7 @@ _022BD708:
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_022BD710: .word ov10_022DC220
|
||||
_022BD714: .word _020B0A48
|
||||
_022BD714: .word TEAM_MEMBER_TABLE_PTR
|
||||
arm_func_end ov10_022BD5AC
|
||||
|
||||
arm_func_start ov10_022BD718
|
||||
@@ -991,7 +991,7 @@ ov10_022BD75C: ; 0x022BD75C
|
||||
sub sp, sp, #0x18
|
||||
cmp r1, #1
|
||||
bne _022BD7A0
|
||||
ldr r1, _022BD824 ; =_020AFC68
|
||||
ldr r1, _022BD824 ; =WAN_TABLE
|
||||
ldr r3, _022BD828 ; =_020AFC4C
|
||||
ldr r4, [r1]
|
||||
mov r1, #0x38
|
||||
@@ -1007,7 +1007,7 @@ ov10_022BD75C: ; 0x022BD75C
|
||||
_022BD7A0:
|
||||
cmp r1, #0
|
||||
bne _022BD81C
|
||||
ldr r2, _022BD824 ; =_020AFC68
|
||||
ldr r2, _022BD824 ; =WAN_TABLE
|
||||
mov r1, #0x38
|
||||
ldr r2, [r2]
|
||||
ldr r4, _022BD828 ; =_020AFC4C
|
||||
@@ -1041,7 +1041,7 @@ _022BD81C:
|
||||
add sp, sp, #0x18
|
||||
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, pc}
|
||||
.align 2, 0
|
||||
_022BD824: .word _020AFC68
|
||||
_022BD824: .word WAN_TABLE
|
||||
_022BD828: .word _020AFC4C
|
||||
arm_func_end ov10_022BD75C
|
||||
|
||||
@@ -1108,7 +1108,7 @@ _022BD888:
|
||||
cmp r0, #1
|
||||
bne _022BDA70
|
||||
mov r3, #0
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
str r3, [sp]
|
||||
ldr r0, [r0]
|
||||
mov r1, #3
|
||||
@@ -1118,12 +1118,12 @@ _022BD888:
|
||||
mov r2, r1
|
||||
mov r4, r0
|
||||
bl ov10_022BD75C
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
mov r1, r4
|
||||
ldr r0, [r0]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
mov r3, #0
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
str r3, [sp]
|
||||
ldr r0, [r0]
|
||||
mov r1, #3
|
||||
@@ -1156,7 +1156,7 @@ _022BD888:
|
||||
b _022BDA70
|
||||
_022BD9D0:
|
||||
mov r3, #0
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
str r3, [sp]
|
||||
ldr r0, [r0]
|
||||
mov r1, #3
|
||||
@@ -1176,13 +1176,13 @@ _022BD9D0:
|
||||
mov r0, r4
|
||||
mov r2, r1
|
||||
bl ov10_022BD75C
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
mov r1, r4
|
||||
ldr r0, [r0]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
mov r2, #0
|
||||
str r2, [sp]
|
||||
ldr r0, _022BDA80 ; =_020AFC68
|
||||
ldr r0, _022BDA80 ; =WAN_TABLE
|
||||
mov r1, #3
|
||||
ldr r0, [r0]
|
||||
mov r3, r2
|
||||
@@ -1201,7 +1201,7 @@ _022BDA70:
|
||||
.align 2, 0
|
||||
_022BDA78: .word ov10_022DC1C0
|
||||
_022BDA7C: .word 0x000027A4
|
||||
_022BDA80: .word _020AFC68
|
||||
_022BDA80: .word WAN_TABLE
|
||||
arm_func_end ov10_022BD82C
|
||||
|
||||
arm_func_start ov10_022BDA84
|
||||
@@ -1354,7 +1354,7 @@ ov10_022BDC0C: ; 0x022BDC0C
|
||||
stmdb sp!, {r3, lr}
|
||||
bl ov10_022BDBC8
|
||||
ldr r0, _022BDC60 ; =ov10_022DC1C0
|
||||
ldr r1, _022BDC64 ; =_020AFC68
|
||||
ldr r1, _022BDC64 ; =WAN_TABLE
|
||||
ldr r2, [r0]
|
||||
ldr r0, [r1]
|
||||
add r1, r2, #0x2700
|
||||
@@ -1375,7 +1375,7 @@ _022BDC58:
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_022BDC60: .word ov10_022DC1C0
|
||||
_022BDC64: .word _020AFC68
|
||||
_022BDC64: .word WAN_TABLE
|
||||
arm_func_end ov10_022BDC0C
|
||||
|
||||
arm_func_start ov10_022BDC68
|
||||
@@ -1585,7 +1585,7 @@ _022BDF00:
|
||||
ldmeqia sp!, {r4, pc}
|
||||
cmp r1, #0
|
||||
beq _022BDF24
|
||||
ldr r0, _022BDF30 ; =_020AFC68
|
||||
ldr r0, _022BDF30 ; =WAN_TABLE
|
||||
mov r1, r2
|
||||
ldr r0, [r0]
|
||||
bl DeleteWanTableEntryVeneer
|
||||
@@ -1594,7 +1594,7 @@ _022BDF24:
|
||||
strh r0, [r4, #0x64]
|
||||
ldmia sp!, {r4, pc}
|
||||
.align 2, 0
|
||||
_022BDF30: .word _020AFC68
|
||||
_022BDF30: .word WAN_TABLE
|
||||
arm_func_end ov10_022BDEC4
|
||||
|
||||
arm_func_start ov10_022BDF34
|
||||
@@ -3970,52 +3970,52 @@ _022BFE9C: .word ov10_022DC1C0
|
||||
|
||||
arm_func_start GetEffectAnimation
|
||||
GetEffectAnimation: ; 0x022BFEA0
|
||||
ldr r2, _022BFEB0 ; =ov10_022CC52C
|
||||
ldr r2, _022BFEB0 ; =EFFECT_ANIMATION_INFO
|
||||
mov r1, #0x1c
|
||||
mla r0, r1, r0, r2
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_022BFEB0: .word ov10_022CC52C
|
||||
_022BFEB0: .word EFFECT_ANIMATION_INFO
|
||||
arm_func_end GetEffectAnimation
|
||||
|
||||
arm_func_start GetMoveAnimation
|
||||
GetMoveAnimation: ; 0x022BFEB4
|
||||
ldr r2, _022BFEC4 ; =ov10_022C9064
|
||||
ldr r2, _022BFEC4 ; =MOVE_ANIMATION_INFO
|
||||
mov r1, #0x18
|
||||
mla r0, r1, r0, r2
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_022BFEC4: .word ov10_022C9064
|
||||
_022BFEC4: .word MOVE_ANIMATION_INFO
|
||||
arm_func_end GetMoveAnimation
|
||||
|
||||
arm_func_start GetSpecialMonsterMoveAnimation
|
||||
GetSpecialMonsterMoveAnimation: ; 0x022BFEC8
|
||||
ldr r2, _022BFED8 ; =ov10_022D11BC
|
||||
ldr r2, _022BFED8 ; =SPECIAL_MONSTER_MOVE_ANIMATION_INFO
|
||||
mov r1, #6
|
||||
mla r0, r1, r0, r2
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_022BFED8: .word ov10_022D11BC
|
||||
_022BFED8: .word SPECIAL_MONSTER_MOVE_ANIMATION_INFO
|
||||
arm_func_end GetSpecialMonsterMoveAnimation
|
||||
|
||||
arm_func_start GetTrapAnimation
|
||||
GetTrapAnimation: ; 0x022BFEDC
|
||||
ldr r1, _022BFEEC ; =ov10_022C7A50
|
||||
ldr r1, _022BFEEC ; =TRAP_ANIMATION_INFO
|
||||
mov r0, r0, lsl #1
|
||||
ldrsh r0, [r1, r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_022BFEEC: .word ov10_022C7A50
|
||||
_022BFEEC: .word TRAP_ANIMATION_INFO
|
||||
arm_func_end GetTrapAnimation
|
||||
|
||||
arm_func_start GetItemAnimation1
|
||||
GetItemAnimation1: ; 0x022BFEF0
|
||||
ldr r1, _022BFF00 ; =ov10_022C7A84
|
||||
ldr r1, _022BFF00 ; =ITEM_ANIMATION_INFO
|
||||
mov r0, r0, lsl #2
|
||||
ldrsh r0, [r1, r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_022BFF00: .word ov10_022C7A84
|
||||
_022BFF00: .word ITEM_ANIMATION_INFO
|
||||
arm_func_end GetItemAnimation1
|
||||
|
||||
arm_func_start GetItemAnimation2
|
||||
@@ -4432,7 +4432,7 @@ _022C041C:
|
||||
mov r2, r0
|
||||
_022C042C:
|
||||
mov r1, #0
|
||||
ldr r0, _022C044C ; =_020AFC68
|
||||
ldr r0, _022C044C ; =WAN_TABLE
|
||||
str r1, [sp]
|
||||
ldr r0, [r0]
|
||||
mov r1, #3
|
||||
@@ -4440,7 +4440,7 @@ _022C042C:
|
||||
bl LoadWanTableEntryFromPack
|
||||
ldmia sp!, {r3, pc}
|
||||
.align 2, 0
|
||||
_022C044C: .word _020AFC68
|
||||
_022C044C: .word WAN_TABLE
|
||||
arm_func_end ov10_022C03F4
|
||||
|
||||
arm_func_start ov10_022C0450
|
||||
@@ -4906,7 +4906,7 @@ ov10_022C09E8: ; 0x022C09E8
|
||||
moveq r0, #0
|
||||
beq _022C0CB8
|
||||
mov r1, #0
|
||||
ldr r0, _022C0CC4 ; =_020AFC68
|
||||
ldr r0, _022C0CC4 ; =WAN_TABLE
|
||||
str r1, [sp]
|
||||
mov r1, #4
|
||||
ldr r0, [r0]
|
||||
@@ -5086,7 +5086,7 @@ _022C0CB8:
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_022C0CC0: .word ov10_022DC1D0
|
||||
_022C0CC4: .word _020AFC68
|
||||
_022C0CC4: .word WAN_TABLE
|
||||
_022C0CC8: .word ov10_022DBFEC
|
||||
_022C0CCC: .word ov10_022DBFDC
|
||||
_022C0CD0: .word ov10_022C1864
|
||||
@@ -5300,7 +5300,7 @@ ov10_022C0F6C: ; 0x022C0F6C
|
||||
mlane r4, r5, r0, r1
|
||||
cmpne r7, #0
|
||||
beq _022C11C4
|
||||
ldr r1, _022C11D0 ; =_020AFC68
|
||||
ldr r1, _022C11D0 ; =WAN_TABLE
|
||||
mov r0, #0x38
|
||||
ldr r1, [r1]
|
||||
smlabb r0, r7, r0, r1
|
||||
@@ -5442,7 +5442,7 @@ _022C11C4:
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_022C11CC: .word ov10_022DC1D0
|
||||
_022C11D0: .word _020AFC68
|
||||
_022C11D0: .word WAN_TABLE
|
||||
_022C11D4: .word 0x0000F3FF
|
||||
arm_func_end ov10_022C0F6C
|
||||
|
||||
@@ -5489,7 +5489,7 @@ _022C123C:
|
||||
ldrnesh r2, [r7, #0x52]
|
||||
cmpne r2, #0
|
||||
beq _022C1378
|
||||
ldr r0, _022C1390 ; =_020AFC68
|
||||
ldr r0, _022C1390 ; =WAN_TABLE
|
||||
ldr r1, [r0]
|
||||
mov r0, #0x38
|
||||
smlabb r0, r2, r0, r1
|
||||
@@ -5563,7 +5563,7 @@ _022C1384:
|
||||
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_022C138C: .word ov10_022DC1D0
|
||||
_022C1390: .word _020AFC68
|
||||
_022C1390: .word WAN_TABLE
|
||||
_022C1394: .word 0x0000F3FF
|
||||
arm_func_end ov10_022C11D8
|
||||
|
||||
@@ -5587,7 +5587,7 @@ ov10_022C13B4: ; 0x022C13B4
|
||||
add r0, r0, #0x2d8
|
||||
bl ov10_022C2278
|
||||
ldr r0, _022C14C8 ; =ov10_022DC1D0
|
||||
ldr r1, _022C14CC ; =_020AFC68
|
||||
ldr r1, _022C14CC ; =WAN_TABLE
|
||||
ldr r2, [r0]
|
||||
ldr r0, [r1]
|
||||
ldrsh r1, [r2, #4]
|
||||
@@ -5657,7 +5657,7 @@ _022C14A4:
|
||||
ldmia sp!, {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_022C14C8: .word ov10_022DC1D0
|
||||
_022C14CC: .word _020AFC68
|
||||
_022C14CC: .word WAN_TABLE
|
||||
arm_func_end ov10_022C13B4
|
||||
|
||||
arm_func_start ov10_022C14D0
|
||||
@@ -7265,7 +7265,7 @@ _022C29C8:
|
||||
bl sub_02057CE8
|
||||
bl sub_0200F910
|
||||
mov r8, #0
|
||||
ldr r5, _022C3118 ; =_020AF6B8
|
||||
ldr r5, _022C3118 ; =BAG_ITEMS_PTR_MIRROR
|
||||
mov fp, r8
|
||||
mov sl, #1
|
||||
mov r4, #6
|
||||
@@ -7299,7 +7299,7 @@ _022C2A5C:
|
||||
bl RemoveEmptyItemsInBag
|
||||
mov r8, #0
|
||||
mov r7, #1
|
||||
ldr r5, _022C311C ; =_020B0A48
|
||||
ldr r5, _022C311C ; =TEAM_MEMBER_TABLE_PTR
|
||||
mov sl, r8
|
||||
mov fp, r7
|
||||
mov r4, #0x68
|
||||
@@ -7376,7 +7376,7 @@ _022C2B7C:
|
||||
cmp r1, r0
|
||||
beq _022C2C54
|
||||
mov r7, #0
|
||||
ldr r5, _022C3118 ; =_020AF6B8
|
||||
ldr r5, _022C3118 ; =BAG_ITEMS_PTR_MIRROR
|
||||
mov fp, r7
|
||||
mov sl, #1
|
||||
mov r4, #6
|
||||
@@ -7775,8 +7775,8 @@ _022C310C:
|
||||
add sp, sp, #0x29c
|
||||
ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, pc}
|
||||
.align 2, 0
|
||||
_022C3118: .word _020AF6B8
|
||||
_022C311C: .word _020B0A48
|
||||
_022C3118: .word BAG_ITEMS_PTR_MIRROR
|
||||
_022C311C: .word TEAM_MEMBER_TABLE_PTR
|
||||
_022C3120: .word 0x00000265
|
||||
_022C3124: .word ov10_022DC094
|
||||
_022C3128: .word 0x000F1207
|
||||
@@ -8170,7 +8170,7 @@ _022C3650:
|
||||
cmp r2, #4
|
||||
blt _022C3650
|
||||
add r0, sp, #0x20
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
mov r0, #5
|
||||
strb r0, [sp, #0x5c]
|
||||
mov r2, #0
|
||||
@@ -10015,14 +10015,14 @@ ov10_022C7A18:
|
||||
.byte 0x55, 0x52, 0x45, 0x5F, 0x4F, 0x42, 0x4A, 0x5F, 0x45, 0x46, 0x46, 0x45, 0x43, 0x54, 0x20, 0x76
|
||||
.byte 0x72, 0x61, 0x6D, 0x20, 0x72, 0x65, 0x6D, 0x61, 0x69, 0x6E, 0x64, 0x65, 0x72, 0x20, 0x6E, 0x75
|
||||
.byte 0x6D, 0x20, 0x3A, 0x20, 0x25, 0x64, 0x20, 0x0A, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov10_022C7A50
|
||||
ov10_022C7A50:
|
||||
.global TRAP_ANIMATION_INFO
|
||||
TRAP_ANIMATION_INFO:
|
||||
.byte 0x00, 0x00, 0x82, 0x01
|
||||
.byte 0xB3, 0x01, 0x84, 0x01, 0x83, 0x01, 0x00, 0x00, 0x00, 0x00, 0x85, 0x01, 0x86, 0x01, 0x87, 0x01
|
||||
.byte 0x40, 0x01, 0x9A, 0x00, 0x88, 0x01, 0x00, 0x00, 0x00, 0x00, 0xB0, 0x01, 0x89, 0x01, 0x00, 0x00
|
||||
.byte 0xD2, 0x00, 0x00, 0x00, 0x0C, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x01, 0x00, 0x00
|
||||
.global ov10_022C7A84
|
||||
ov10_022C7A84:
|
||||
.global ITEM_ANIMATION_INFO
|
||||
ITEM_ANIMATION_INFO:
|
||||
.byte 0x00, 0x00
|
||||
.global ov10_022C7A86
|
||||
ov10_022C7A86:
|
||||
@@ -10376,8 +10376,8 @@ ov10_022C7A86:
|
||||
.byte 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00
|
||||
.byte 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00
|
||||
.byte 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00, 0x15, 0x00, 0x08, 0x00
|
||||
.global ov10_022C9064
|
||||
ov10_022C9064:
|
||||
.global MOVE_ANIMATION_INFO
|
||||
MOVE_ANIMATION_INFO:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov10_022C9070
|
||||
ov10_022C9070:
|
||||
@@ -11226,8 +11226,8 @@ ov10_022C9070:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0B, 0x00, 0x00, 0x3F, 0x00, 0x00, 0xFE, 0x1C
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x2A, 0x02, 0x28, 0x02, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
||||
.byte 0x0B, 0x03, 0x00, 0x3F, 0x00, 0x00, 0xFE, 0x1C
|
||||
.global ov10_022CC52C
|
||||
ov10_022CC52C:
|
||||
.global EFFECT_ANIMATION_INFO
|
||||
EFFECT_ANIMATION_INFO:
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0xFF, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00
|
||||
@@ -12454,8 +12454,8 @@ ov10_022CC52C:
|
||||
.byte 0x1C, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x00, 0x05, 0x00, 0x00, 0x00
|
||||
.byte 0x14, 0x00, 0x00, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1C, 0x10, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x01, 0x00
|
||||
.global ov10_022D11BC
|
||||
ov10_022D11BC:
|
||||
.global SPECIAL_MONSTER_MOVE_ANIMATION_INFO
|
||||
SPECIAL_MONSTER_MOVE_ANIMATION_INFO:
|
||||
.byte 0x01, 0x00, 0x03, 0x00, 0x00, 0x3F, 0x02, 0x00
|
||||
.byte 0x03, 0x00, 0x00, 0x3F, 0x03, 0x00, 0x03, 0x00, 0x00, 0x3F, 0x61, 0x00, 0x03, 0x00, 0x00, 0x3F
|
||||
.byte 0x8D, 0x01, 0x03, 0x00, 0x00, 0x3F, 0x8C, 0x01, 0x03, 0x00, 0x00, 0x3F, 0x8B, 0x01, 0x03, 0x00
|
||||
|
||||
@@ -15756,7 +15756,7 @@ _022E977C:
|
||||
bl ov11_022E98CC
|
||||
bl ov11_022E99E0
|
||||
ldr r0, _022E9844 ; =0x02388FD8
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
mov r2, #0x100
|
||||
ldr r0, _022E9844 ; =0x02388FD8
|
||||
mov r1, #0xc0
|
||||
@@ -27000,7 +27000,7 @@ _022F2ED8:
|
||||
tst r0, #2
|
||||
bne _022F2EF0
|
||||
add r0, r1, #8
|
||||
bl sub_0201F1D4
|
||||
bl Render3dElement64
|
||||
_022F2EF0:
|
||||
add r6, r6, #1
|
||||
cmp r6, #0x30
|
||||
@@ -27025,7 +27025,7 @@ ov11_022F2F1C: ; 0x022F2F1C
|
||||
_022F2F2C:
|
||||
mla r7, r6, r4, r5
|
||||
add r0, r7, #8
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
ldrb r0, [r7, #0x45]
|
||||
add r6, r6, #1
|
||||
cmp r6, #0x30
|
||||
@@ -69294,8 +69294,8 @@ ov11_023168E0:
|
||||
.byte 0x92, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00
|
||||
.byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov11_02316AF8
|
||||
ov11_02316AF8:
|
||||
.global SCRIPT_OP_CODE_NAMES
|
||||
SCRIPT_OP_CODE_NAMES:
|
||||
.byte 0x45, 0x6E, 0x64, 0x00
|
||||
.global ov11_02316AFC
|
||||
ov11_02316AFC:
|
||||
@@ -70878,7 +70878,7 @@ ov11_023185EC:
|
||||
.byte 0x00, 0xFF, 0x00, 0x00
|
||||
.word ov11_02316B94
|
||||
.byte 0x00, 0xFF, 0x00, 0x00
|
||||
.word ov11_02316AF8
|
||||
.word SCRIPT_OP_CODE_NAMES
|
||||
.byte 0x00, 0xFF, 0x00, 0x00
|
||||
.word ov11_02316E5C
|
||||
.byte 0x01, 0xFF, 0x00, 0x00
|
||||
@@ -71562,8 +71562,8 @@ ov11_023185EC:
|
||||
.byte 0x4F, 0x4D, 0x4D, 0x4F, 0x4E, 0x2F, 0x75, 0x6E, 0x69, 0x6F, 0x6E, 0x61, 0x6C, 0x6C, 0x2E, 0x73
|
||||
.byte 0x73, 0x62, 0x00, 0x00, 0x63, 0x6F, 0x6D, 0x6D, 0x6F, 0x6E, 0x20, 0x73, 0x63, 0x72, 0x69, 0x70
|
||||
.byte 0x74, 0x20, 0x73, 0x69, 0x7A, 0x65, 0x20, 0x25, 0x30, 0x38, 0x78, 0x0A, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov11_02319AEC
|
||||
ov11_02319AEC:
|
||||
.global C_ROUTINE_NAMES
|
||||
C_ROUTINE_NAMES:
|
||||
.byte 0x44, 0x45, 0x4D, 0x4F, 0x5F, 0x30, 0x35, 0x00
|
||||
.global ov11_02319AF4
|
||||
ov11_02319AF4:
|
||||
@@ -74528,7 +74528,7 @@ ov11_0231C808:
|
||||
.byte 0x51, 0x00, 0x0A, 0x00
|
||||
.word ov11_02319AFC
|
||||
.byte 0x52, 0x00, 0x0A, 0x00
|
||||
.word ov11_02319AEC
|
||||
.word C_ROUTINE_NAMES
|
||||
.byte 0x53, 0x00, 0x0A, 0x00
|
||||
.word ov11_02319B14
|
||||
.byte 0x54, 0x00, 0x0A, 0x00
|
||||
@@ -75769,8 +75769,8 @@ ov11_0231C808:
|
||||
.byte 0x02, 0x00, 0xB2, 0x01, 0x01, 0x00, 0xB3, 0x01, 0x02, 0x00, 0xB4, 0x01, 0x01, 0x00, 0xB5, 0x01
|
||||
.byte 0x02, 0x00, 0xB6, 0x01, 0x01, 0x00, 0xB7, 0x01, 0x02, 0x00, 0xB8, 0x01, 0x01, 0x00, 0xB9, 0x01
|
||||
.byte 0x02, 0x00, 0xBA, 0x01
|
||||
.global ov11_0231DE40
|
||||
ov11_0231DE40:
|
||||
.global GROUND_WAN_FILES_TABLE
|
||||
GROUND_WAN_FILES_TABLE:
|
||||
.byte 0x64, 0x33, 0x30, 0x70, 0x33, 0x33, 0x61, 0x35, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov11_0231DE4C
|
||||
ov11_0231DE4C:
|
||||
@@ -78199,7 +78199,7 @@ ov11_0231EE48:
|
||||
.word ov11_0231DE4C
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x0B, 0x00, 0x00, 0x00
|
||||
.word ov11_0231DE40
|
||||
.word GROUND_WAN_FILES_TABLE
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00
|
||||
.byte 0x01, 0x01, 0x01, 0x00, 0x02, 0x01, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
||||
|
||||
144
asm/overlay_13.s
144
asm/overlay_13.s
@@ -15,7 +15,7 @@ EntryOverlay13: ; 0x0238A140
|
||||
str r0, [r1]
|
||||
strb r3, [r0]
|
||||
ldr r2, [r1]
|
||||
ldr r0, _0238A18C ; =ov13_0238C024
|
||||
ldr r0, _0238A18C ; =OVERLAY13_UNKNOWN_STRUCT__NA_238C024
|
||||
str r3, [r2, #0x20]
|
||||
ldr r1, [r1]
|
||||
sub r2, r3, #2
|
||||
@@ -25,7 +25,7 @@ EntryOverlay13: ; 0x0238A140
|
||||
.align 2, 0
|
||||
_0238A184: .word 0x00000428
|
||||
_0238A188: .word ov13_0238CEA0
|
||||
_0238A18C: .word ov13_0238C024
|
||||
_0238A18C: .word OVERLAY13_UNKNOWN_STRUCT__NA_238C024
|
||||
arm_func_end EntryOverlay13
|
||||
|
||||
arm_func_start ExitOverlay13
|
||||
@@ -432,7 +432,7 @@ _0238A6F4:
|
||||
str r0, [r1, #0x20]
|
||||
b _0238BD74
|
||||
_0238A73C:
|
||||
ldr r0, _0238B4FC ; =ov13_0238C064
|
||||
ldr r0, _0238B4FC ; =QUIZ_D_BOX_LAYOUT_4
|
||||
bl CreateDBox
|
||||
ldr r1, _0238B4F8 ; =ov13_0238CEA0
|
||||
mov r3, #2
|
||||
@@ -467,7 +467,7 @@ _0238A79C:
|
||||
ldrsb r0, [r0, #2]
|
||||
bl FreeDBox
|
||||
ldr r1, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r0, _0238B500 ; =ov13_0238C034
|
||||
ldr r0, _0238B500 ; =QUIZ_D_BOX_LAYOUT_1
|
||||
ldr r1, [r1]
|
||||
mvn r2, #1
|
||||
strb r2, [r1, #2]
|
||||
@@ -523,7 +523,7 @@ _0238A830:
|
||||
bl GetDebugFlag
|
||||
cmp r0, #0
|
||||
beq _0238BD74
|
||||
ldr r0, _0238B504 ; =ov13_0238C054
|
||||
ldr r0, _0238B504 ; =QUIZ_D_BOX_LAYOUT_3
|
||||
ldr r1, _0238B508 ; =ov13_0238BE6C
|
||||
bl sub_0202F8C4
|
||||
ldr r1, _0238B4F8 ; =ov13_0238CEA0
|
||||
@@ -544,7 +544,7 @@ _0238A8B8:
|
||||
ldr r7, [r0]
|
||||
mov r2, #0
|
||||
ldr r4, [r7, #0x24]
|
||||
ldr r1, _0238B510 ; =ov13_0238C1AC
|
||||
ldr r1, _0238B510 ; =QUIZ_QUESTION_STRINGS
|
||||
add r4, r7, r4
|
||||
ldrb r4, [r4, #0x54]
|
||||
mov r4, r4, lsl #1
|
||||
@@ -572,7 +572,7 @@ _0238A8B8:
|
||||
ldr r5, _0238B514 ; =ov13_0238CECC
|
||||
add r0, r2, #0x6c
|
||||
str r0, [r2, #8]
|
||||
ldr r0, _0238B518 ; =ov13_0238C230
|
||||
ldr r0, _0238B518 ; =QUIZ_ANSWER_STRINGS
|
||||
add r6, r0, r1, lsl #1
|
||||
b _0238A9A4
|
||||
_0238A968:
|
||||
@@ -664,7 +664,7 @@ _0238AA6C:
|
||||
cmp r0, #0
|
||||
bne _0238AAF4
|
||||
mov r4, #0
|
||||
ldr r2, _0238B524 ; =ov13_0238C01C
|
||||
ldr r2, _0238B524 ; =QUIZ_MALE_FEMALE_BOOST_TABLE
|
||||
b _0238AAEC
|
||||
_0238AAC0:
|
||||
ldr r1, [r3]
|
||||
@@ -734,7 +734,7 @@ _0238ABA4:
|
||||
add r1, r2, r1
|
||||
ldrb r2, [r1, #0x54]
|
||||
ldr r1, _0238B50C ; =ov13_0238CF24
|
||||
ldr r5, _0238B528 ; =ov13_0238C390
|
||||
ldr r5, _0238B528 ; =QUIZ_ANSWER_POINTS
|
||||
mov r2, r2, lsl #1
|
||||
ldrh r2, [r1, r2]
|
||||
mov r1, #0
|
||||
@@ -815,7 +815,7 @@ _0238ACC0:
|
||||
add r0, r0, r0, lsl #1
|
||||
ldr r3, [r1]
|
||||
mov r2, r0, lsl #1
|
||||
ldr r1, _0238B52C ; =ov13_0238C14C
|
||||
ldr r1, _0238B52C ; =STARTERS_STRINGS
|
||||
ldrsb r0, [r3, #2]
|
||||
ldrh r2, [r1, r2]
|
||||
mov r1, #8
|
||||
@@ -836,7 +836,7 @@ _0238AD00:
|
||||
bl GetPersonality
|
||||
mov r3, r0
|
||||
ldrb r2, [r4, #0x5f]
|
||||
ldr r1, _0238B530 ; =ov13_0238C0B8
|
||||
ldr r1, _0238B530 ; =STARTERS_HERO_IDS
|
||||
add r0, r4, #0x3b4
|
||||
add r2, r2, r3, lsl #1
|
||||
mov r2, r2, lsl #1
|
||||
@@ -868,7 +868,7 @@ _0238AD00:
|
||||
add r3, r0, #1
|
||||
ldrsb r0, [r4, #2]
|
||||
ldrb r4, [r4, #0x5f]
|
||||
ldr r2, _0238B52C ; =ov13_0238C14C
|
||||
ldr r2, _0238B52C ; =STARTERS_STRINGS
|
||||
mov r1, #0x18
|
||||
add r3, r4, r3
|
||||
mov r3, r3, lsl #1
|
||||
@@ -1052,10 +1052,10 @@ _0238AFF8:
|
||||
b _0238BD74
|
||||
_0238B038:
|
||||
ldrb r1, [r0, #0x5f]
|
||||
ldr r0, _0238B53C ; =ov13_0238C010
|
||||
ldr r0, _0238B53C ; =QUIZ_BORDER_COLOR_TABLE
|
||||
ldrb r0, [r0, r1]
|
||||
bl SetBothScreensWindowsColor
|
||||
ldr r0, _0238B540 ; =ov13_0238C044
|
||||
ldr r0, _0238B540 ; =QUIZ_D_BOX_LAYOUT_2
|
||||
bl CreateDBox
|
||||
ldr r1, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r2, [r1]
|
||||
@@ -1274,7 +1274,7 @@ _0238B360:
|
||||
ldr r4, [r0]
|
||||
bl GetPersonality
|
||||
ldrb r3, [r4, #0x5f]
|
||||
ldr r1, _0238B530 ; =ov13_0238C0B8
|
||||
ldr r1, _0238B530 ; =STARTERS_HERO_IDS
|
||||
add r2, r4, #0x400
|
||||
add r0, r3, r0, lsl #1
|
||||
mov r0, r0, lsl #1
|
||||
@@ -1374,24 +1374,24 @@ _0238B4C0:
|
||||
b _0238BD74
|
||||
.align 2, 0
|
||||
_0238B4F8: .word ov13_0238CEA0
|
||||
_0238B4FC: .word ov13_0238C064
|
||||
_0238B500: .word ov13_0238C034
|
||||
_0238B504: .word ov13_0238C054
|
||||
_0238B4FC: .word QUIZ_D_BOX_LAYOUT_4
|
||||
_0238B500: .word QUIZ_D_BOX_LAYOUT_1
|
||||
_0238B504: .word QUIZ_D_BOX_LAYOUT_3
|
||||
_0238B508: .word ov13_0238BE6C
|
||||
_0238B50C: .word ov13_0238CF24
|
||||
_0238B510: .word ov13_0238C1AC
|
||||
_0238B510: .word QUIZ_QUESTION_STRINGS
|
||||
_0238B514: .word ov13_0238CECC
|
||||
_0238B518: .word ov13_0238C230
|
||||
_0238B518: .word QUIZ_ANSWER_STRINGS
|
||||
_0238B51C: .word ov13_0238CEAC
|
||||
_0238B520: .word 0x00300011
|
||||
_0238B524: .word ov13_0238C01C
|
||||
_0238B528: .word ov13_0238C390
|
||||
_0238B52C: .word ov13_0238C14C
|
||||
_0238B530: .word ov13_0238C0B8
|
||||
_0238B524: .word QUIZ_MALE_FEMALE_BOOST_TABLE
|
||||
_0238B528: .word QUIZ_ANSWER_POINTS
|
||||
_0238B52C: .word STARTERS_STRINGS
|
||||
_0238B530: .word STARTERS_HERO_IDS
|
||||
_0238B534: .word 0x00002208
|
||||
_0238B538: .word 0x000005CC
|
||||
_0238B53C: .word ov13_0238C010
|
||||
_0238B540: .word ov13_0238C044
|
||||
_0238B53C: .word QUIZ_BORDER_COLOR_TABLE
|
||||
_0238B540: .word QUIZ_D_BOX_LAYOUT_2
|
||||
_0238B544: .word 0x000006AD
|
||||
_0238B548: .word 0x000006AE
|
||||
_0238B54C: .word 0x000006AF
|
||||
@@ -1548,7 +1548,7 @@ _0238B774:
|
||||
ldr r0, _0238B51C ; =ov13_0238CEAC
|
||||
mov r4, #2
|
||||
ldr r1, _0238BD88 ; =0x00300013
|
||||
ldr r3, _0238BD8C ; =ov13_0238C074
|
||||
ldr r3, _0238BD8C ; =QUIZ_MENU_1
|
||||
mov r2, #0
|
||||
str r4, [sp]
|
||||
bl CreateNormalMenu
|
||||
@@ -1614,7 +1614,7 @@ _0238B878:
|
||||
str r0, [r2, #8]
|
||||
bl GetPersonality
|
||||
ldr r1, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r2, _0238B530 ; =ov13_0238C0B8
|
||||
ldr r2, _0238B530 ; =STARTERS_HERO_IDS
|
||||
ldr r1, [r1]
|
||||
ldrb r1, [r1, #0x5f]
|
||||
add r0, r1, r0, lsl #1
|
||||
@@ -1634,18 +1634,18 @@ _0238B8BC:
|
||||
mov r1, #0
|
||||
str r1, [r2, #0x370]
|
||||
bl GetType
|
||||
ldr r2, _0238BD90 ; =ov13_0238C0F8
|
||||
ldr r2, _0238BD90 ; =STARTERS_TYPE_INCOMPATIBILITY_TABLE
|
||||
mov r1, #1
|
||||
ldr sb, [r2, r0, lsl #2]
|
||||
mov r0, r4
|
||||
bl GetType
|
||||
ldr r1, _0238BD90 ; =ov13_0238C0F8
|
||||
ldr r1, _0238BD90 ; =STARTERS_TYPE_INCOMPATIBILITY_TABLE
|
||||
ldr r1, [r1, r0, lsl #2]
|
||||
mov r0, #0x15
|
||||
orr sb, sb, r1
|
||||
bl RandInt
|
||||
ldr fp, _0238BD94 ; =ov13_0238C08C
|
||||
ldr r5, _0238BD90 ; =ov13_0238C0F8
|
||||
ldr fp, _0238BD94 ; =STARTERS_PARTNER_IDS
|
||||
ldr r5, _0238BD90 ; =STARTERS_TYPE_INCOMPATIBILITY_TABLE
|
||||
ldr r4, _0238B4F8 ; =ov13_0238CEA0
|
||||
mov r6, r0
|
||||
mov r7, #0
|
||||
@@ -1730,7 +1730,7 @@ _0238B9FC:
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitLayout
|
||||
ldr r0, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r1, _0238BDA4 ; =ov13_0238C014
|
||||
ldr r1, _0238BDA4 ; =PORTRAIT_ATTRIBUTES
|
||||
ldr r0, [r0]
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitOffset
|
||||
@@ -1771,7 +1771,7 @@ _0238BA70:
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitLayout
|
||||
ldr r0, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r1, _0238BDA4 ; =ov13_0238C014
|
||||
ldr r1, _0238BDA4 ; =PORTRAIT_ATTRIBUTES
|
||||
ldr r0, [r0]
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitOffset
|
||||
@@ -1807,7 +1807,7 @@ _0238BB10:
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitLayout
|
||||
ldr r0, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r1, _0238BDA4 ; =ov13_0238C014
|
||||
ldr r1, _0238BDA4 ; =PORTRAIT_ATTRIBUTES
|
||||
ldr r0, [r0]
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitOffset
|
||||
@@ -1863,7 +1863,7 @@ _0238BB98:
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitLayout
|
||||
ldr r0, _0238B4F8 ; =ov13_0238CEA0
|
||||
ldr r1, _0238BDA4 ; =ov13_0238C014
|
||||
ldr r1, _0238BDA4 ; =PORTRAIT_ATTRIBUTES
|
||||
ldr r0, [r0]
|
||||
add r0, r0, #0x3b4
|
||||
bl SetPortraitOffset
|
||||
@@ -1948,13 +1948,13 @@ _0238BD7C: .word 0x000006C2
|
||||
_0238BD80: .word 0x000006C3
|
||||
_0238BD84: .word 0x000006C5
|
||||
_0238BD88: .word 0x00300013
|
||||
_0238BD8C: .word ov13_0238C074
|
||||
_0238BD90: .word ov13_0238C0F8
|
||||
_0238BD94: .word ov13_0238C08C
|
||||
_0238BD8C: .word QUIZ_MENU_1
|
||||
_0238BD90: .word STARTERS_TYPE_INCOMPATIBILITY_TABLE
|
||||
_0238BD94: .word STARTERS_PARTNER_IDS
|
||||
_0238BD98: .word ov13_0238CEBC
|
||||
_0238BD9C: .word 0x00001011
|
||||
_0238BDA0: .word GetOptionStringFromID
|
||||
_0238BDA4: .word ov13_0238C014
|
||||
_0238BDA4: .word PORTRAIT_ATTRIBUTES
|
||||
arm_func_end ov13_0238ADFC
|
||||
|
||||
arm_func_start GetPersonality
|
||||
@@ -2133,64 +2133,64 @@ _0238C00C: .word 0x000006CD
|
||||
arm_func_end ov13_0238BE6C
|
||||
; 0x0238C010
|
||||
|
||||
.global ov13_0238C010
|
||||
ov13_0238C010:
|
||||
.global QUIZ_BORDER_COLOR_TABLE
|
||||
QUIZ_BORDER_COLOR_TABLE:
|
||||
.byte 0x00, 0x01, 0x00, 0x00
|
||||
.global ov13_0238C014
|
||||
ov13_0238C014:
|
||||
.global PORTRAIT_ATTRIBUTES
|
||||
PORTRAIT_ATTRIBUTES:
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C01C
|
||||
ov13_0238C01C:
|
||||
.global QUIZ_MALE_FEMALE_BOOST_TABLE
|
||||
QUIZ_MALE_FEMALE_BOOST_TABLE:
|
||||
.byte 0x07, 0x08, 0x0A, 0x10
|
||||
.byte 0x03, 0x0A, 0x10, 0x00
|
||||
.global ov13_0238C024
|
||||
ov13_0238C024:
|
||||
.global OVERLAY13_UNKNOWN_STRUCT__NA_238C024
|
||||
OVERLAY13_UNKNOWN_STRUCT__NA_238C024:
|
||||
.byte 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.word ExitOverlay13
|
||||
.word Overlay13SwitchFunctionNa238A1C8
|
||||
.global ov13_0238C034
|
||||
ov13_0238C034:
|
||||
.global QUIZ_D_BOX_LAYOUT_1
|
||||
QUIZ_D_BOX_LAYOUT_1:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x11, 0x1C, 0x05, 0x00, 0xFD, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C044
|
||||
ov13_0238C044:
|
||||
.global QUIZ_D_BOX_LAYOUT_2
|
||||
QUIZ_D_BOX_LAYOUT_2:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x11, 0x1C, 0x05, 0x01, 0xFD, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C054
|
||||
ov13_0238C054:
|
||||
.global QUIZ_D_BOX_LAYOUT_3
|
||||
QUIZ_D_BOX_LAYOUT_3:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1E, 0x06, 0x01, 0xFD, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C064
|
||||
ov13_0238C064:
|
||||
.global QUIZ_D_BOX_LAYOUT_4
|
||||
QUIZ_D_BOX_LAYOUT_4:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x02, 0x11, 0x1C, 0x05, 0x00, 0xFA, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C074
|
||||
ov13_0238C074:
|
||||
.global QUIZ_MENU_1
|
||||
QUIZ_MENU_1:
|
||||
.byte 0xC6, 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xC7, 0x06, 0x00, 0x00
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00
|
||||
.global ov13_0238C08C
|
||||
ov13_0238C08C:
|
||||
.global STARTERS_PARTNER_IDS
|
||||
STARTERS_PARTNER_IDS:
|
||||
.byte 0x01, 0x00, 0x04, 0x00
|
||||
.byte 0x07, 0x00, 0x19, 0x00, 0xF0, 0x02, 0x9B, 0x00, 0x9E, 0x00, 0x18, 0x01, 0x73, 0x03, 0x1E, 0x01
|
||||
.byte 0xA6, 0x01, 0xA9, 0x01, 0xAC, 0x01, 0xDD, 0x02, 0xB6, 0x01, 0xE9, 0x01, 0x02, 0x01, 0x7D, 0x02
|
||||
.byte 0xA0, 0x03, 0x34, 0x00, 0xE8, 0x01, 0x00, 0x00
|
||||
.global ov13_0238C0B8
|
||||
ov13_0238C0B8:
|
||||
.global STARTERS_HERO_IDS
|
||||
STARTERS_HERO_IDS:
|
||||
.byte 0x1B, 0x01, 0x70, 0x03, 0x04, 0x00, 0x59, 0x02
|
||||
.byte 0x19, 0x00, 0x5C, 0x02, 0x9E, 0x00, 0xDD, 0x02, 0xAC, 0x01, 0x01, 0x04, 0xA9, 0x01, 0xA0, 0x03
|
||||
.byte 0x9B, 0x00, 0xFE, 0x03, 0xB6, 0x01, 0x71, 0x02, 0xE9, 0x01, 0xF6, 0x02, 0x98, 0x00, 0xF3, 0x02
|
||||
.byte 0x02, 0x01, 0x7D, 0x02, 0x01, 0x00, 0x76, 0x03, 0x07, 0x00, 0x04, 0x04, 0x18, 0x01, 0xF0, 0x02
|
||||
.byte 0x1E, 0x01, 0x73, 0x03, 0xA6, 0x01, 0x5F, 0x02
|
||||
.global ov13_0238C0F8
|
||||
ov13_0238C0F8:
|
||||
.global STARTERS_TYPE_INCOMPATIBILITY_TABLE
|
||||
STARTERS_TYPE_INCOMPATIBILITY_TABLE:
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00
|
||||
.byte 0x20, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00
|
||||
.byte 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00
|
||||
.byte 0x00, 0x20, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00
|
||||
.byte 0x10, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00
|
||||
.global ov13_0238C14C
|
||||
ov13_0238C14C:
|
||||
.global STARTERS_STRINGS
|
||||
STARTERS_STRINGS:
|
||||
.byte 0x7D, 0x06, 0x7E, 0x06
|
||||
.byte 0x7F, 0x06, 0x80, 0x06, 0x81, 0x06, 0x82, 0x06, 0x83, 0x06, 0x84, 0x06, 0x85, 0x06, 0x86, 0x06
|
||||
.byte 0x87, 0x06, 0x88, 0x06, 0x89, 0x06, 0x8A, 0x06, 0x8B, 0x06, 0x8C, 0x06, 0x8D, 0x06, 0x8E, 0x06
|
||||
@@ -2198,8 +2198,8 @@ ov13_0238C14C:
|
||||
.byte 0x97, 0x06, 0x98, 0x06, 0x99, 0x06, 0x9A, 0x06, 0x9B, 0x06, 0x9C, 0x06, 0x9D, 0x06, 0x9E, 0x06
|
||||
.byte 0x9F, 0x06, 0xA0, 0x06, 0xA1, 0x06, 0xA2, 0x06, 0xA3, 0x06, 0xA4, 0x06, 0xA5, 0x06, 0xA6, 0x06
|
||||
.byte 0xA7, 0x06, 0xA8, 0x06, 0xA9, 0x06, 0xAA, 0x06, 0xAB, 0x06, 0xAC, 0x06
|
||||
.global ov13_0238C1AC
|
||||
ov13_0238C1AC:
|
||||
.global QUIZ_QUESTION_STRINGS
|
||||
QUIZ_QUESTION_STRINGS:
|
||||
.byte 0x8B, 0x05, 0x8C, 0x05
|
||||
.byte 0x8D, 0x05, 0x8E, 0x05, 0x8F, 0x05, 0x90, 0x05, 0x91, 0x05, 0x92, 0x05, 0x93, 0x05, 0x94, 0x05
|
||||
.byte 0x95, 0x05, 0x96, 0x05, 0x97, 0x05, 0x98, 0x05, 0x99, 0x05, 0x9A, 0x05, 0x9B, 0x05, 0x9C, 0x05
|
||||
@@ -2209,8 +2209,8 @@ ov13_0238C1AC:
|
||||
.byte 0xB5, 0x05, 0xB6, 0x05, 0xB7, 0x05, 0xB8, 0x05, 0xB9, 0x05, 0xBA, 0x05, 0xBB, 0x05, 0xBC, 0x05
|
||||
.byte 0xBD, 0x05, 0xBE, 0x05, 0xBF, 0x05, 0xC0, 0x05, 0xC1, 0x05, 0xC2, 0x05, 0xC3, 0x05, 0xC4, 0x05
|
||||
.byte 0xC5, 0x05, 0xC6, 0x05, 0xC7, 0x05, 0xC8, 0x05, 0xC9, 0x05, 0xCA, 0x05, 0xCB, 0x05, 0xCD, 0x05
|
||||
.global ov13_0238C230
|
||||
ov13_0238C230:
|
||||
.global QUIZ_ANSWER_STRINGS
|
||||
QUIZ_ANSWER_STRINGS:
|
||||
.byte 0xCE, 0x05, 0xCF, 0x05, 0xD0, 0x05, 0xD1, 0x05, 0xD2, 0x05, 0xD3, 0x05, 0xD4, 0x05, 0xD5, 0x05
|
||||
.byte 0xD6, 0x05, 0xD7, 0x05, 0xD8, 0x05, 0xD9, 0x05, 0xDA, 0x05, 0xDB, 0x05, 0xDC, 0x05, 0xDD, 0x05
|
||||
.byte 0xDE, 0x05, 0xDF, 0x05, 0xE0, 0x05, 0xE1, 0x05, 0xE2, 0x05, 0xE3, 0x05, 0xE4, 0x05, 0xE5, 0x05
|
||||
@@ -2233,8 +2233,8 @@ ov13_0238C230:
|
||||
.byte 0x66, 0x06, 0x67, 0x06, 0x68, 0x06, 0x69, 0x06, 0x6A, 0x06, 0x6B, 0x06, 0x6C, 0x06, 0x6D, 0x06
|
||||
.byte 0x6E, 0x06, 0x6F, 0x06, 0x70, 0x06, 0x71, 0x06, 0x72, 0x06, 0x73, 0x06, 0x74, 0x06, 0x75, 0x06
|
||||
.byte 0x76, 0x06, 0x77, 0x06, 0x78, 0x06, 0x79, 0x06, 0x7A, 0x06, 0x7B, 0x06, 0x7C, 0x06, 0x00, 0x00
|
||||
.global ov13_0238C390
|
||||
ov13_0238C390:
|
||||
.global QUIZ_ANSWER_POINTS
|
||||
QUIZ_ANSWER_POINTS:
|
||||
.byte 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04
|
||||
|
||||
@@ -2167,7 +2167,7 @@ _0238BFE4:
|
||||
bne _0238C030
|
||||
ldr r0, _0238C1B8 ; =ov14_0238D9A8
|
||||
mov r4, #8
|
||||
ldr r3, _0238C1BC ; =ov14_0238DAA0
|
||||
ldr r3, _0238C1BC ; =FOOTPRINT_DEBUG_MENU
|
||||
mov r1, #0x13
|
||||
mov r2, #0
|
||||
str r4, [sp]
|
||||
@@ -2285,7 +2285,7 @@ _0238C1AC: .word ov14_0238D988
|
||||
_0238C1B0: .word ov14_0238AD04
|
||||
_0238C1B4: .word ov14_0238D998
|
||||
_0238C1B8: .word ov14_0238D9A8
|
||||
_0238C1BC: .word ov14_0238DAA0
|
||||
_0238C1BC: .word FOOTPRINT_DEBUG_MENU
|
||||
_0238C1C0: .word ov14_0238D9E8
|
||||
_0238C1C4: .word ov14_0238DA08
|
||||
arm_func_end SentryRunState
|
||||
@@ -2605,7 +2605,7 @@ _0238C564:
|
||||
mov r1, #0x65
|
||||
bl RandRange
|
||||
ldr r2, _0238CA54 ; =ov14_0238DB80
|
||||
ldr r3, _0238CA60 ; =_020A1BB0
|
||||
ldr r3, _0238CA60 ; =SENTRY_DUTY_MONSTER_IDS
|
||||
ldr r1, [r2]
|
||||
add r1, r1, #0x3000
|
||||
str r0, [r1, #0x880]
|
||||
@@ -2678,7 +2678,7 @@ _0238C670:
|
||||
ldr r0, [r0, #0x87c]
|
||||
cmp sb, r0
|
||||
beq _0238C72C
|
||||
ldr r4, _0238CA60 ; =_020A1BB0
|
||||
ldr r4, _0238CA60 ; =SENTRY_DUTY_MONSTER_IDS
|
||||
ldr fp, _0238CA64 ; =0x00000119
|
||||
_0238C690:
|
||||
mov r0, #0
|
||||
@@ -2939,7 +2939,7 @@ _0238CA10:
|
||||
_0238CA54: .word ov14_0238DB80
|
||||
_0238CA58: .word 0x000003FA
|
||||
_0238CA5C: .word 0x000005DC
|
||||
_0238CA60: .word _020A1BB0
|
||||
_0238CA60: .word SENTRY_DUTY_MONSTER_IDS
|
||||
_0238CA64: .word 0x00000119
|
||||
_0238CA68: .word ov14_0238DB2C
|
||||
_0238CA6C: .word ov14_0238DB44
|
||||
@@ -4156,8 +4156,8 @@ ov14_0238DA80:
|
||||
.byte 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00
|
||||
.byte 0x0A, 0x00, 0x00, 0x00
|
||||
.global ov14_0238DAA0
|
||||
ov14_0238DAA0:
|
||||
.global FOOTPRINT_DEBUG_MENU
|
||||
FOOTPRINT_DEBUG_MENU:
|
||||
.byte 0xCE, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCF, 0x06, 0x00, 0x00
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0xD0, 0x06, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xD1, 0x06, 0x00, 0x00
|
||||
.byte 0x03, 0x00, 0x00, 0x00, 0xD2, 0x06, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xD3, 0x06, 0x00, 0x00
|
||||
|
||||
@@ -823,7 +823,7 @@ _0238AC74:
|
||||
_0238AC9C:
|
||||
add r0, sp, #0
|
||||
mov r1, #3
|
||||
bl sub_020276C0
|
||||
bl NewDialogBox
|
||||
ldr r1, _0238ACF8 ; =ov28_0238AD80
|
||||
ldr r2, [r1]
|
||||
add r2, r2, r7
|
||||
|
||||
@@ -329,7 +329,7 @@ _022ED1D0:
|
||||
bne _022ED370
|
||||
_022ED1E0:
|
||||
add r0, sp, #0x48
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
ldr r1, _022ED7F4 ; =0x0237C99C
|
||||
ldr r0, _022ED7F8 ; =0x020AFC70
|
||||
ldrh r2, [r1]
|
||||
@@ -450,7 +450,7 @@ _022ED37C:
|
||||
strh r1, [sp, #6]
|
||||
ldrsh r5, [r2, #0xa]
|
||||
ldrsh r4, [r2, #8]
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
ldrsh r3, [sp, #2]
|
||||
ldrsh r6, [sp, #4]
|
||||
ldrsh lr, [sp]
|
||||
|
||||
@@ -529,7 +529,7 @@ ov29_02335808: ; 0x02335808
|
||||
stmdb sp!, {r3, r4, r5, lr}
|
||||
mov r4, r0
|
||||
mov r5, r1
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
mov r1, #0
|
||||
mov r0, r5, lsl #0x10
|
||||
strb r1, [r4, #0x3c]
|
||||
@@ -904,7 +904,7 @@ _02335C48:
|
||||
mov r6, #0x10
|
||||
blt _02335F24
|
||||
add r0, sp, #4
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
ldr r0, _02335F30 ; =0x0237CA8C
|
||||
mov fp, #5
|
||||
ldrh r3, [r0]
|
||||
@@ -1039,7 +1039,7 @@ ov29_02335F40: ; 0x02335F40
|
||||
mov sl, r1
|
||||
mov r4, r3
|
||||
ldr sb, [sp, #0x6c]
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
mov r0, #0
|
||||
ldrh r1, [sp, #0x68]
|
||||
mov r2, #0x21
|
||||
|
||||
@@ -1408,7 +1408,7 @@ _02338E04:
|
||||
add r7, r8, r6, lsl #6
|
||||
mov r0, r7
|
||||
mov r4, r6, lsl #6
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
strb fp, [r7, #0x3c]
|
||||
strh fp, [r8, r4]
|
||||
strh fp, [r7, #2]
|
||||
|
||||
@@ -3216,7 +3216,7 @@ ov29_0234C2F4: ; 0x0234C2F4
|
||||
bl MemZero
|
||||
add r0, r5, #0x48
|
||||
strb r4, [r5, #0x88]
|
||||
bl InitRender3dElement
|
||||
bl InitRender3dElement64
|
||||
mov r0, #0x100
|
||||
strh r0, [r5, #0x4c]
|
||||
mov r0, #0xc0
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
|
||||
// Program position info (basically stack trace info) for debug logging.
|
||||
struct prog_pos_info {
|
||||
char* file; // file name
|
||||
int line; // line number
|
||||
u8* file; // file name
|
||||
s32 line; // line number
|
||||
};
|
||||
|
||||
// Flags listed in the debug menu
|
||||
@@ -73,7 +73,7 @@ void InitDebugStripped6(void);
|
||||
// prog_pos: program position info
|
||||
// msg: base message
|
||||
// return: number of characters printed, excluding the null-terminator
|
||||
int AppendProgPos(char* str, struct prog_pos_info* prog_pos, const char* msg);
|
||||
s32 AppendProgPos(u8* str, struct prog_pos_info* prog_pos, const u8* msg);
|
||||
|
||||
// Does nothing, only called in the debug initialization function.
|
||||
void InitDebugStripped5(void);
|
||||
@@ -83,17 +83,17 @@ void InitDebugStripped5(void);
|
||||
// If message is a null pointer, the string " Print " is used instead.
|
||||
// msg: message
|
||||
// prog_pos: program position info (can be null)
|
||||
void DebugPrintTrace(const char* msg, struct prog_pos_info* prog_pos);
|
||||
void DebugPrintTrace(const u8* msg, struct prog_pos_info* prog_pos);
|
||||
|
||||
// Would display a printf format string on the top screen in the debug binary.
|
||||
// This still constructs the string with vsprintf, but doesn't actually do anything with it in the final binary.
|
||||
// Identical to DebugPrint0 in release builds.
|
||||
void DebugDisplay(const char* fmt, ...);
|
||||
void DebugDisplay(const u8* fmt, ...);
|
||||
|
||||
// Would log a printf format string in the debug binary.
|
||||
// This still constructs the string with vsprintf, but doesn't actually do anything with it in the final binary.
|
||||
// Identical to DebugDisplay in release builds.
|
||||
void DebugPrint0(const char* fmt, ...);
|
||||
void DebugPrint0(const u8* fmt, ...);
|
||||
|
||||
// Would have initialized the second set of debug flags.
|
||||
// Does nothing in release binary.
|
||||
@@ -112,7 +112,7 @@ void SetDebugLogFlag(enum debug_log_flag flag, u32 val);
|
||||
// Would log a printf format string in the debug binary. A no-op in the final binary.
|
||||
// level: log level
|
||||
// fmt: format
|
||||
void DebugPrint(u8 level, const char* fmt, ...);
|
||||
void DebugPrint(u8 level, const u8* fmt, ...);
|
||||
|
||||
// Does nothing, only called in the debug initialization function.
|
||||
void InitDebugStripped4(void);
|
||||
@@ -128,6 +128,6 @@ void InitDebugStripped1(void);
|
||||
|
||||
// Display some debug messages, then hangs the process.
|
||||
// This function is called in lots of places to bail on a fatal error. Looking at the static data callers use to fill in the program position info is informative, as it tells you the original file name (probably from the standard __FILE__ macro) and line number (probably from the standard __LINE__ macro) in the source code.
|
||||
void FatalError(struct prog_pos_info *prog_pos, const char* fmt, ...);
|
||||
void FatalError(struct prog_pos_info *prog_pos, const u8* fmt, ...);
|
||||
|
||||
#endif //PMDSKY_MAIN_DEBUG_H
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <files/pack.h>
|
||||
|
||||
// Open the 6 files at PACK_FILE_PATHS_TABLE into PACK_FILE_OPENED. Called during game initialization.
|
||||
// Open the 6 files at PACK_FILE_PATHS_TABLE into PACK_FILES_OPENED. Called during game initialization.
|
||||
void OpenAllPackFiles(void);
|
||||
|
||||
// Call GetFileLengthInPack after looking up the global Pack archive by its number
|
||||
|
||||
@@ -303,9 +303,15 @@ OSi_ReferSymbol: ; 0x02000B9C
|
||||
|
||||
.public _start_ModuleParams
|
||||
_start_ModuleParams:
|
||||
.byte 0xE0, 0x73, 0x0B, 0x02, 0xF8, 0x73, 0x0B, 0x02, 0x80, 0x33, 0x0B, 0x02, 0x80, 0x33, 0x0B, 0x02
|
||||
.byte 0x80, 0xCA, 0x2B, 0x02, 0x00, 0x00, 0x00, 0x00, 0x34, 0x75, 0x02, 0x04, 0x21, 0x06, 0xC0, 0xDE
|
||||
.byte 0xDE, 0xC0, 0x06, 0x21
|
||||
.word SDK_AUTOLOAD_LIST
|
||||
.word SDK_AUTOLOAD_LIST_END
|
||||
.word SDK_AUTOLOAD_START
|
||||
.word SDK_STATIC_BSS_START
|
||||
.word SDK_STATIC_BSS_END
|
||||
.word 0 ; SDK_COMPRESSED_STATIC_END
|
||||
.word 0x04027534 ; SDK_VERSION_ID
|
||||
.word 0xDEC00621 ; SDK_NITROCODE_BE
|
||||
.word 0x2106C0DE ; SDK_NITROCODE_LE
|
||||
|
||||
.global _02000BC4
|
||||
_02000BC4:
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
#pragma once
|
||||
.public SDK_AUTOLOAD_LIST
|
||||
.public SDK_AUTOLOAD_LIST_END
|
||||
.public SDK_AUTOLOAD_START
|
||||
.public SDK_STATIC_BSS_END
|
||||
.public SDK_STATIC_BSS_START
|
||||
.public sub_020907F0
|
||||
.public sub_020908A8
|
||||
.public sub_020908A8
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
#include "main_debug.h"
|
||||
|
||||
extern int vsprintf(char* str, const char* format, va_list ap);
|
||||
extern char* strcpy(char* dest, const char* src);
|
||||
extern char* strcat(char* dest, const char* src);
|
||||
extern s32 vsprintf(u8* str, const u8* format, va_list ap);
|
||||
extern u8* strcpy(u8* dest, const u8* src);
|
||||
extern u8* strcat(u8* dest, const u8* src);
|
||||
extern void WaitForever(void);
|
||||
extern int sprintf(char* str, const char* format, ...);
|
||||
extern s32 sprintf(u8* str, const u8* format, ...);
|
||||
|
||||
extern char STRING_DEBUG_EMPTY;
|
||||
extern char STRING_DEBUG_FORMAT_LINE_FILE;
|
||||
extern char STRING_DEBUG_NO_PROG_POS;
|
||||
extern char STRING_DEBUG_SPACED_PRINT;
|
||||
extern char STRING_DEBUG_FATAL;
|
||||
extern char STRING_DEBUG_NEWLINE;
|
||||
extern char STRING_DEBUG_LOG_NULL;
|
||||
extern char STRING_DEBUG_STRING_NEWLINE;
|
||||
extern u8 STRING_DEBUG_EMPTY;
|
||||
extern u8 STRING_DEBUG_FORMAT_LINE_FILE;
|
||||
extern u8 STRING_DEBUG_NO_PROG_POS;
|
||||
extern u8 STRING_DEBUG_SPACED_PRINT;
|
||||
extern u8 STRING_DEBUG_FATAL;
|
||||
extern u8 STRING_DEBUG_NEWLINE;
|
||||
extern u8 STRING_DEBUG_LOG_NULL;
|
||||
extern u8 STRING_DEBUG_STRING_NEWLINE;
|
||||
|
||||
extern BOOL DEBUG_IS_INITIALIZED;
|
||||
|
||||
@@ -42,7 +42,7 @@ void SetDebugFlag(enum debug_flag flag, u32 val) {}
|
||||
|
||||
void InitDebugStripped6(void) {}
|
||||
|
||||
int AppendProgPos(char* str, struct prog_pos_info* prog_pos, const char* msg) {
|
||||
s32 AppendProgPos(u8* str, struct prog_pos_info* prog_pos, const u8* msg) {
|
||||
if (msg == NULL) {
|
||||
msg = &STRING_DEBUG_EMPTY;
|
||||
};
|
||||
@@ -56,8 +56,8 @@ int AppendProgPos(char* str, struct prog_pos_info* prog_pos, const char* msg) {
|
||||
|
||||
void InitDebugStripped5(void) {}
|
||||
|
||||
void DebugPrintTrace(const char* msg, struct prog_pos_info* prog_pos) {
|
||||
char message_buffer[256];
|
||||
void DebugPrintTrace(const u8* msg, struct prog_pos_info* prog_pos) {
|
||||
u8 message_buffer[256];
|
||||
|
||||
if (prog_pos != NULL) {
|
||||
if (msg != NULL) {
|
||||
@@ -76,18 +76,18 @@ void DebugPrintTrace(const char* msg, struct prog_pos_info* prog_pos) {
|
||||
// Call to function that actually print something would have been here
|
||||
}
|
||||
|
||||
void DebugDisplay(const char* fmt, ...) {
|
||||
void DebugDisplay(const u8* fmt, ...) {
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
char message_buffer[256];
|
||||
u8 message_buffer[256];
|
||||
vsprintf(message_buffer, fmt, args);
|
||||
// Would have called the "display to top screen" function here
|
||||
}
|
||||
|
||||
void DebugPrint0(const char* fmt, ...) {
|
||||
void DebugPrint0(const u8* fmt, ...) {
|
||||
va_list args;
|
||||
va_start(args, fmt);
|
||||
char message_buffer[256];
|
||||
u8 message_buffer[256];
|
||||
vsprintf(message_buffer, fmt, args);
|
||||
}
|
||||
|
||||
@@ -99,16 +99,16 @@ u32 GetDebugLogFlag(enum debug_log_flag flag) {
|
||||
|
||||
void SetDebugLogFlag(enum debug_log_flag flag, u32 val) {}
|
||||
|
||||
void DebugPrint(u8 level, const char* fmt, ...) {}
|
||||
void DebugPrint(u8 level, const u8* fmt, ...) {}
|
||||
|
||||
void InitDebugStripped4(void) {}
|
||||
void InitDebugStripped3(void) {}
|
||||
void InitDebugStripped2(void) {}
|
||||
void InitDebugStripped1(void) {}
|
||||
|
||||
void FatalError(struct prog_pos_info *prog_pos, const char* fmt, ...) {
|
||||
void FatalError(struct prog_pos_info *prog_pos, const u8* fmt, ...) {
|
||||
va_list args;
|
||||
char message_buffer[256];
|
||||
u8 message_buffer[256];
|
||||
DebugPrintTrace(&STRING_DEBUG_FATAL, prog_pos);
|
||||
if (fmt != NULL) {
|
||||
va_start(args, fmt);
|
||||
|
||||
@@ -36,16 +36,24 @@ def read_pmdsky_debug_symbols() -> Dict[str, Dict[int, SymbolDetails]]:
|
||||
with open(full_file_path, 'r') as symbols_file:
|
||||
symbols_yaml = yaml.safe_load(symbols_file)
|
||||
|
||||
for function in symbols_yaml[list(symbols_yaml.keys())[0]]['functions']:
|
||||
if 'NA' not in function['address']:
|
||||
continue
|
||||
addresses = function['address'][f'NA{address_suffix}']
|
||||
function_name = function['name']
|
||||
if isinstance(addresses, list):
|
||||
for address in addresses:
|
||||
symbols[address] = SymbolDetails(f'{function_name}__{address:08X}', full_file_path)
|
||||
else:
|
||||
symbols[addresses] = SymbolDetails(function_name, full_file_path)
|
||||
def read_symbols_from_array(array_key: str, is_data: bool):
|
||||
for symbol in symbols_yaml[list(symbols_yaml.keys())[0]][array_key]:
|
||||
target_region = f'NA{address_suffix}'
|
||||
if target_region not in symbol['address']:
|
||||
continue
|
||||
addresses = symbol['address'][target_region]
|
||||
symbol_name = symbol['name']
|
||||
if isinstance(addresses, list):
|
||||
if len(addresses) > 1:
|
||||
for address in addresses:
|
||||
symbols[address] = SymbolDetails(f'{symbol_name}__{address:08X}', full_file_path, is_data)
|
||||
else:
|
||||
symbols[addresses[0]] = SymbolDetails(symbol_name, full_file_path, is_data)
|
||||
else:
|
||||
symbols[addresses] = SymbolDetails(symbol_name, full_file_path, is_data)
|
||||
|
||||
read_symbols_from_array('functions', False)
|
||||
read_symbols_from_array('data', True)
|
||||
|
||||
return symbols
|
||||
|
||||
|
||||
@@ -1,16 +1,19 @@
|
||||
from dataclasses import dataclass
|
||||
|
||||
MIXED_CASE_SYMBOLS = {
|
||||
'_secure': 'SECURE',
|
||||
'_start_AutoloadDoneCallback': 'StartAutoloadDoneCallback',
|
||||
'_start_ModuleParams': 'START_MODULE_PARAMS',
|
||||
'MIi_UncompressBackward': 'MIiUncompressBackward',
|
||||
'OSi_ReferSymbol': 'OSiReferSymbol',
|
||||
'SVC_CpuSet': 'SvcCpuSet',
|
||||
'SVC_SoftReset': 'SvcSoftReset',
|
||||
'SVC_WaitByLoop': 'SvcWaitByLoop',
|
||||
'SVC_WaitByLoop': 'SvcWaitByLoop',
|
||||
'_start_AutoloadDoneCallback': 'StartAutoloadDoneCallback',
|
||||
}
|
||||
|
||||
@dataclass
|
||||
class SymbolDetails:
|
||||
name: str
|
||||
file_path: str
|
||||
is_data: bool
|
||||
|
||||
@@ -2,6 +2,7 @@ from pmdsky_debug_reader import *
|
||||
from symbol_details import *
|
||||
from xmap_reader import *
|
||||
from typing import List
|
||||
import re
|
||||
|
||||
# Syncs symbols from pmdsky-debug (https://github.com/UsernameFodder/pmdsky-debug) to the decomp.
|
||||
# To use this script, you will need:
|
||||
@@ -37,21 +38,30 @@ for section_name, pmdsky_debug_section in pmdsky_debug_symbols.items():
|
||||
if address in xmap_section and xmap_section[address].name != symbol.name and xmap_section[address].name not in MIXED_CASE_SYMBOLS:
|
||||
old_symbol = xmap_section[address]
|
||||
print(f'Replacing {old_symbol.name} with {symbol.name}')
|
||||
asm_search_string_bases = [
|
||||
f'arm_func_start {old_symbol.name}\n',
|
||||
f'arm_func_end {old_symbol.name}\n',
|
||||
f'\n{old_symbol.name}: ',
|
||||
f'thumb_func_start {old_symbol.name}\n',
|
||||
f'thumb_func_end {old_symbol.name}\n',
|
||||
f'.word {old_symbol.name}\n',
|
||||
f'b {old_symbol.name} ; case',
|
||||
f'bl {old_symbol.name}\n',
|
||||
f'blx {old_symbol.name}\n',
|
||||
f'beq {old_symbol.name}\n',
|
||||
f'bne {old_symbol.name}\n',
|
||||
f'; ={old_symbol.name}\n',
|
||||
f'.public {old_symbol.name}\n',
|
||||
]
|
||||
if symbol.is_data:
|
||||
asm_search_string_bases = [
|
||||
f'\n{old_symbol.name}:\n',
|
||||
f'.word {old_symbol.name}\n',
|
||||
f'; ={old_symbol.name}\n',
|
||||
f'.global {old_symbol.name}\n',
|
||||
f'.public {old_symbol.name}\n',
|
||||
]
|
||||
else:
|
||||
asm_search_string_bases = [
|
||||
f'arm_func_start {old_symbol.name}\n',
|
||||
f'arm_func_end {old_symbol.name}\n',
|
||||
f'\n{old_symbol.name}: ',
|
||||
f'thumb_func_start {old_symbol.name}\n',
|
||||
f'thumb_func_end {old_symbol.name}\n',
|
||||
f'.word {old_symbol.name}\n',
|
||||
f'b {old_symbol.name} ; case',
|
||||
f'bl {old_symbol.name}\n',
|
||||
f'blx {old_symbol.name}\n',
|
||||
f'beq {old_symbol.name}\n',
|
||||
f'bne {old_symbol.name}\n',
|
||||
f'; ={old_symbol.name}\n',
|
||||
f'.public {old_symbol.name}\n',
|
||||
]
|
||||
asm_search_strings = [(base, base.replace(old_symbol.name, symbol.name)) for base in asm_search_string_bases]
|
||||
for file_path in asm_files:
|
||||
with open(file_path, 'r') as asm_file:
|
||||
@@ -61,15 +71,21 @@ for section_name, pmdsky_debug_section in pmdsky_debug_symbols.items():
|
||||
with open(file_path, 'w') as asm_file:
|
||||
asm_file.write(asm_contents)
|
||||
|
||||
src_search_string_data_regex = re.compile(fr'([ &*(]){old_symbol.name}([,); [])')
|
||||
src_search_string_data_regex_replace = fr'\1{symbol.name}\2'
|
||||
|
||||
src_search_string_bases = [
|
||||
f' {old_symbol.name}(',
|
||||
f'({old_symbol.name}(',
|
||||
]
|
||||
src_search_strings = [(base, base.replace(old_symbol.name, symbol.name)) for base in src_search_string_bases]
|
||||
src_search_function_strings = [(base, base.replace(old_symbol.name, symbol.name)) for base in src_search_string_bases]
|
||||
for file_path in src_files:
|
||||
with open(file_path, 'r') as src_file:
|
||||
src_contents = src_file.read()
|
||||
for search_string in src_search_strings:
|
||||
src_contents = src_contents.replace(search_string[0], search_string[1])
|
||||
if symbol.is_data:
|
||||
src_contents = src_search_string_data_regex.sub(src_search_string_data_regex_replace, src_contents)
|
||||
else:
|
||||
for search_string in src_search_function_strings:
|
||||
src_contents = src_contents.replace(search_string[0], search_string[1])
|
||||
with open(file_path, 'w') as src_file:
|
||||
src_file.write(src_contents)
|
||||
|
||||
@@ -13,7 +13,7 @@ pmdsky_debug_symbols = read_pmdsky_debug_symbols()
|
||||
xmap_symbols = read_xmap_symbols()
|
||||
|
||||
pmdsky_debug_location = get_pmdsky_debug_location()
|
||||
default_symbol_name = re.compile(r'^(?:ov\d{2}|sub)_[\dA-F]{8}$')
|
||||
default_symbol_name = re.compile(r'^(?:ov\d{2}|sub)?_[\dA-F]{8}$')
|
||||
multiple_symbol_suffix = re.compile(r'__[\dA-F]{8}$')
|
||||
|
||||
for section_name, xmap_section in xmap_symbols.items():
|
||||
@@ -85,8 +85,33 @@ for section_name, xmap_section in xmap_symbols.items():
|
||||
else:
|
||||
symbol.name = base_symbol_name
|
||||
|
||||
symbol_length = 0
|
||||
string_length = None
|
||||
if symbol.is_data:
|
||||
symbols_start = ' data:\n'
|
||||
|
||||
asm_path = os.path.join('asm', symbol.file_path.replace('.o', '.s'))
|
||||
if os.path.exists(asm_path):
|
||||
with open(asm_path) as asm_file:
|
||||
asm_contents = asm_file.readlines()
|
||||
for i, line in enumerate(asm_contents):
|
||||
if line.startswith(f'\t.global {symbol.name}'):
|
||||
target_line = asm_contents[i + 2]
|
||||
string_index = target_line.find('.string "')
|
||||
if string_index >= 0:
|
||||
target_string = target_line[string_index + len('.string "'):-2].replace('\\n', 'n')
|
||||
string_length = len(target_string)
|
||||
symbol_length = string_length + 1
|
||||
if symbol_length % 4 > 0:
|
||||
symbol_length += 4 - symbol_length % 4
|
||||
break
|
||||
|
||||
else:
|
||||
symbols_start = ' functions:\n'
|
||||
|
||||
found_symbols = False
|
||||
symbol_before = None
|
||||
write_end_list = False
|
||||
for i, line in enumerate(symbol_contents):
|
||||
if found_symbols:
|
||||
write_new_symbol = False
|
||||
@@ -97,42 +122,60 @@ for section_name, xmap_section in xmap_symbols.items():
|
||||
address_line = symbol_contents[i + 1]
|
||||
else:
|
||||
address_line = line
|
||||
current_symbol_address = int(address_line[-11 : -1], 16)
|
||||
write_new_symbol = address < current_symbol_address
|
||||
elif line == ' data:\n':
|
||||
address_line_string = address_line[-10 : -1]
|
||||
if ':' not in address_line_string:
|
||||
current_symbol_address = int(address_line_string, 16)
|
||||
write_new_symbol = address < current_symbol_address
|
||||
elif symbol.is_data and i >= len(symbol_contents) - 2 or not symbol.is_data and line == ' data:\n':
|
||||
write_new_symbol = True
|
||||
write_end_list = True
|
||||
current_symbol_index = i
|
||||
|
||||
if write_new_symbol:
|
||||
if 'data:' in symbol_contents[current_symbol_index]:
|
||||
if write_end_list:
|
||||
symbol_before = None
|
||||
else:
|
||||
symbol_before = symbol_contents[current_symbol_index][len(' - name: ') : -1]
|
||||
symbol_contents[current_symbol_index - 1] += f""" - name: {symbol.name}
|
||||
if symbol.is_data:
|
||||
symbol_contents[current_symbol_index - 1] += f""" - name: {symbol.name}
|
||||
address:
|
||||
NA: 0x{address:X}
|
||||
length:
|
||||
NA: 0x{symbol_length:X}
|
||||
"""
|
||||
else:
|
||||
symbol_contents[current_symbol_index - 1] += f""" - name: {symbol.name}
|
||||
address:
|
||||
NA: 0x{address:X}
|
||||
"""
|
||||
break
|
||||
|
||||
elif line == ' functions:\n':
|
||||
elif line == symbols_start:
|
||||
found_symbols = True
|
||||
current_symbol_index = i
|
||||
|
||||
with open(symbol_path, 'w') as symbol_file:
|
||||
symbol_file.writelines(symbol_contents)
|
||||
|
||||
header_path = symbol_path.replace(SYMBOLS_FOLDER, os.path.join('headers', 'functions')).replace('.yml', '.h')
|
||||
|
||||
if symbol.is_data:
|
||||
header_file_name = 'data'
|
||||
else:
|
||||
header_file_name = 'functions'
|
||||
|
||||
header_path = symbol_path.replace(SYMBOLS_FOLDER, os.path.join('headers', header_file_name)).replace('.yml', '.h')
|
||||
with open(header_path, 'r') as header_file:
|
||||
header_contents = header_file.readlines()
|
||||
|
||||
target_line = None
|
||||
if symbol_before is not None:
|
||||
for i, line in enumerate(header_contents):
|
||||
if f' {symbol_before}(' in line:
|
||||
if symbol.is_data and re.search(fr' {symbol_before}[[;]', line) or symbol.is_data and f' {symbol_before}(' in line:
|
||||
target_line = i
|
||||
break
|
||||
if target_line is None:
|
||||
print(f'Could not find preceding symbol {symbol_before} to {symbol.name} in {header_path}')
|
||||
continue
|
||||
|
||||
if target_line is None:
|
||||
if 'arm9' in header_path:
|
||||
@@ -144,8 +187,12 @@ for section_name, xmap_section in xmap_symbols.items():
|
||||
target_line = len(header_contents) - 2
|
||||
|
||||
symbol_header_path = os.path.join(HEADER_FOLDER, symbol.file_path.replace('.o', '.h'))
|
||||
symbol_header = f'void {symbol.name}(void);\n'
|
||||
if os.path.exists(symbol_header_path):
|
||||
if symbol.is_data:
|
||||
if string_length is not None:
|
||||
symbol_header = f'extern char {symbol.name}[{string_length}];\n'
|
||||
else:
|
||||
symbol_header = f'extern undefined {symbol.name};\n'
|
||||
elif os.path.exists(symbol_header_path):
|
||||
with open(symbol_header_path, 'r') as symbol_header_file:
|
||||
symbol_header_contents = symbol_header_file.readlines()
|
||||
for line in symbol_header_contents:
|
||||
|
||||
@@ -51,9 +51,9 @@ def read_xmap_symbols() -> Dict[str, Dict[int, SymbolDetails]]:
|
||||
symbol_name = symbol_split[0]
|
||||
symbol_address = int(line[2:10], 16)
|
||||
if '00000000' in line:
|
||||
# TODO Handle non-function symbols.
|
||||
pass
|
||||
if not symbol_name.startswith('$'):
|
||||
xmap_symbols[current_section][symbol_address] = SymbolDetails(symbol_name, symbol_split[1][1:-1], True)
|
||||
else:
|
||||
xmap_symbols[current_section][symbol_address] = SymbolDetails(symbol_name, symbol_split[1][1:-1])
|
||||
xmap_symbols[current_section][symbol_address] = SymbolDetails(symbol_name, symbol_split[1][1:-1], False)
|
||||
|
||||
return xmap_symbols
|
||||
|
||||
Reference in New Issue
Block a user