Merge pull request #180 from Chesyon/main
Some checks failed
build / build (push) Has been cancelled

Decomped GetColorCodePaletteOffset, UnloadFile, MemFree, and RoundUpDiv256
This commit is contained in:
AnonymousRandomPerson
2025-09-19 19:50:15 -04:00
committed by GitHub
33 changed files with 25495 additions and 25442 deletions

View File

@@ -1,58 +1,18 @@
#pragma once
.public DEFAULT_MEMORY_ARENA_MEMORY
.public Debug_FatalError
.public Debug_Print0
.public MEMORY_ALLOCATION_ARENA_GETTERS
.public MemLocateSet
.public _02090B40
.public _02090B70
.public _02090BA0
.public _02090BC8
.public _02090BFC
.public _02090C48
.public _02092464
.public _020AEF08
.public _020AEF30
.public _020AEF58
.public _020B3380
.public _020B3384
.public _020B33A0
.public _020B33C0
.public _0229AFC0
.public _0229AFCC
.public _0229AFE4
.public _0229B004
.public _0229B0E0
.public _0229B0E8
.public _0229B0F0
.public _0229B0F8
.public _0229B110
.public _0229B114
.public _022B966C
.public CardPullOut
.public Debug_FatalError
.public Debug_Print0
.public DEFAULT_MEMORY_ARENA_MEMORY
.public GX_DispOff
.public MEMORY_ALLOCATION_ARENA_GETTERS
.public NATURAL_LOG_VALUE_TABLE
.public OS_GetLockID
.public PRNG_SEQUENCE_NUM
.public StartThread
.public sub_02003AD0
.public sub_020059A8
.public sub_02079844
.public sub_02079888
.public sub_02079940
.public sub_02079A64
.public sub_02079B0C
.public sub_02079C14
.public sub_02079DB8
.public sub_02079DE0
.public sub_02079E74
.public sub_0207A030
.public sub_0207A048
.public sub_0207A0CC
.public sub_0207A164
.public sub_0207B930
.public sub_02083434
.public sub_02083450
.public sub_0208346C
.public sub_0208347C
.public sub_020845D8
.public WaitForInterrupt
.public sub_02002C40
.public sub_02002CAC
.public sub_02002CB4
.public sub_02002E98

View File

@@ -0,0 +1,17 @@
#pragma once
.public Debug_FatalError
.public FindAvailableMemBlock
.public InitMemArena
.public MEMORY_ALLOCATION_ARENA_GETTERS
.public MemAllocFlagsToBlockType
.public SplitMemBlock
.public _02090B40
.public _02090BA0
.public _02090BC8
.public _02090BFC
.public _020AEF08
.public _020B3380
.public _020B3384
.public _020B33A0
.public sub_02002CB4
.public sub_02002E98

View File

@@ -0,0 +1,47 @@
#pragma once
.public CardPullOut
.public Debug_Print0
.public GX_DispOff
.public InitMemAllocTable
.public MemAlloc
.public NATURAL_LOG_VALUE_TABLE
.public OS_GetLockID
.public PRNG_SEQUENCE_NUM
.public StartThread
.public WaitForInterrupt
.public _02090C48
.public _02092464
.public _020AEF30
.public _020AEF58
.public _0229AFC0
.public _0229AFCC
.public _0229AFE4
.public _0229B004
.public _0229B0E0
.public _0229B0E8
.public _0229B0F0
.public _0229B0F8
.public _0229B110
.public _0229B114
.public _022B966C
.public sub_02003AD0
.public sub_020059A8
.public sub_02079844
.public sub_02079888
.public sub_02079940
.public sub_02079A64
.public sub_02079B0C
.public sub_02079C14
.public sub_02079DB8
.public sub_02079DE0
.public sub_02079E74
.public sub_0207A030
.public sub_0207A048
.public sub_0207A0CC
.public sub_0207A164
.public sub_0207B930
.public sub_02083434
.public sub_02083450
.public sub_0208346C
.public sub_0208347C
.public sub_020845D8

View File

@@ -1,21 +1,14 @@
#pragma once
.public _0200A314
.public _0200A344
.public CardPullOutWithStatus
.public DebugPrintSystemClock
.public Debug_FatalError
.public Debug_Print0
.public MemAlloc
.public _02092908
.public _02092978
.public _0209297C
.public _0209299C
.public _020929B8
.public _02092A04
.public _02092A18
.public _02092A38
.public _02092A58
.public _02092A78
.public _02092A98
.public _02092AB8
.public _02092AD8
.public _02094AE8
.public _02094AF0
.public _020AF360
.public _020AF3D0
.public _020AF3E4
@@ -25,112 +18,9 @@
.public _020AF490
.public _020AF53C
.public _020AF5E8
.public _020AF694
.public _020AFF38_EU
.public _020AFF3C_EU
.public _022A3698
.public _022A369C
.public _022A36C4
.public _022A37A0
.public _022A37A4
.public _022A37AC
.public _022A37AD
.public _022A37AE
.public _022A37AF
.public _022A37B0
.public _022A37B6
.public _022A37B7
.public _022A37B8
.public _022A37B9
.public _022A37BA
.public _022A37BC
.public _022A37BE
.public _022A37CC
.public _022A37D0
.public _022A37D4
.public _022A37D8
.public _022A37EC
.public _022A37ED
.public _022A37EE
.public _022A37EF
.public _022A37F0
.public _022A37F1
.public _022A37F2
.public _022A37F3
.public _022A37F4
.public _022A37F5
.public _022A37F6
.public _022A37F7
.public _022A37F8
.public _022A37F9
.public _022A37FA
.public _022A37FB
.public _022A37FC
.public _022A37FD
.public _022A37FE
.public _022A37FF
.public _022A3800
.public _022A3801
.public _022A3802
.public _022A3803
.public _022A3804
.public _022A3805
.public _022A3806
.public _s32_div_f
.public ArrayFill32Fast
.public CardPullOutWithStatus
.public CART_REMOVED_IMG_DATA
.public Debug_FatalError
.public Debug_Print0
.public DebugPrintSystemClock
.public DecompressAtFromMemoryPointer
.public G2x_SetBlendAlpha_
.public G3X_ClearFifo
.public G3X_Init
.public G3X_SetClearColor
.public GetLanguage
.public GX_BeginLoadBGExtPltt
.public GX_BeginLoadOBJExtPltt
.public GX_DisableBankForBG
.public GX_DisableBankForBGExtPltt
.public GX_DisableBankForLCDC
.public GX_DisableBankForOBJ
.public GX_DisableBankForOBJExtPltt
.public GX_DisableBankForSubBG
.public GX_DisableBankForSubBGExtPltt
.public GX_DisableBankForSubOBJ
.public GX_DisableBankForTex
.public GX_DisableBankForTexPltt
.public GX_DispOff
.public GX_DispOn
.public GX_EndLoadBGExtPltt
.public GX_EndLoadOBJExtPltt
.public GX_Init
.public GX_SetBankForBG
.public GX_SetBankForBGExtPltt
.public GX_SetBankForLCDC
.public GX_SetBankForOBJ
.public GX_SetBankForOBJExtPltt
.public GX_SetBankForSubBG
.public GX_SetBankForSubBGExtPltt
.public GX_SetBankForSubOBJ
.public GX_SetBankForTex
.public GX_SetBankForTexPltt
.public GX_SetGraphicsMode
.public GXi_DmaId
.public GXS_BeginLoadBGExtPltt
.public GXS_BeginLoadOBJExtPltt
.public GXS_EndLoadBGExtPltt
.public GXS_EndLoadOBJExtPltt
.public GXS_SetGraphicsMode
.public GXx_SetMasterBrightness_
.public MemAlloc
.public Memcpy32
.public MemcpySimple
.public MemFree
.public MemZero16
.public MemZero32
.public Rgb8ToRgb5
.public strcpy
.public sub_02002778
.public sub_020027E8
@@ -149,9 +39,6 @@
.public sub_02002F34
.public sub_02002F7C
.public sub_02002F98
.public sub_02004FF8
.public sub_02005D30
.public sub_02005E10
.public sub_02006ED4
.public sub_02007004
.public sub_02007380
@@ -172,8 +59,5 @@
.public sub_02007CA0
.public sub_02007D94
.public sub_02007E2C
.public sub_02019304
.public sub_0207A2DC
.public sub_0207C164
.public sub_02008C68
.public sub_0207F70C
.public sub_02082420

View File

@@ -0,0 +1,125 @@
#pragma once
.public ArrayFill32Fast
.public CART_REMOVED_IMG_DATA
.public Debug_Print0
.public DecompressAtFromMemoryPointer
.public G2x_SetBlendAlpha_
.public G3X_ClearFifo
.public G3X_Init
.public G3X_SetClearColor
.public GXS_BeginLoadBGExtPltt
.public GXS_BeginLoadOBJExtPltt
.public GXS_EndLoadBGExtPltt
.public GXS_EndLoadOBJExtPltt
.public GXS_SetGraphicsMode
.public GX_BeginLoadBGExtPltt
.public GX_BeginLoadOBJExtPltt
.public GX_DisableBankForBG
.public GX_DisableBankForBGExtPltt
.public GX_DisableBankForLCDC
.public GX_DisableBankForOBJ
.public GX_DisableBankForOBJExtPltt
.public GX_DisableBankForSubBG
.public GX_DisableBankForSubBGExtPltt
.public GX_DisableBankForSubOBJ
.public GX_DisableBankForTex
.public GX_DisableBankForTexPltt
.public GX_DispOff
.public GX_DispOn
.public GX_EndLoadBGExtPltt
.public GX_EndLoadOBJExtPltt
.public GX_Init
.public GX_SetBankForBG
.public GX_SetBankForBGExtPltt
.public GX_SetBankForLCDC
.public GX_SetBankForOBJ
.public GX_SetBankForOBJExtPltt
.public GX_SetBankForSubBG
.public GX_SetBankForSubBGExtPltt
.public GX_SetBankForSubOBJ
.public GX_SetBankForTex
.public GX_SetBankForTexPltt
.public GX_SetGraphicsMode
.public GXi_DmaId
.public GXx_SetMasterBrightness_
.public GetLanguage
.public MemAlloc
.public MemFree
.public MemZero16
.public MemZero32
.public Memcpy32
.public MemcpySimple
.public Rgb8ToRgb5
.public UnloadFile
.public _0200A314
.public _0200A344
.public _02092A04
.public _02092A18
.public _02092A38
.public _02092A58
.public _02092A78
.public _02092A98
.public _02092AB8
.public _02092AD8
.public _02094AE8
.public _02094AF0
.public _020AF694
.public _020AFF38_EU
.public _020AFF3C_EU
.public _022A37A0
.public _022A37A4
.public _022A37AC
.public _022A37AD
.public _022A37AE
.public _022A37AF
.public _022A37B0
.public _022A37B6
.public _022A37B7
.public _022A37B8
.public _022A37B9
.public _022A37BA
.public _022A37BC
.public _022A37BE
.public _022A37CC
.public _022A37D0
.public _022A37D4
.public _022A37D8
.public _022A37EC
.public _022A37ED
.public _022A37EE
.public _022A37EF
.public _022A37F0
.public _022A37F1
.public _022A37F2
.public _022A37F3
.public _022A37F4
.public _022A37F5
.public _022A37F6
.public _022A37F7
.public _022A37F8
.public _022A37F9
.public _022A37FA
.public _022A37FB
.public _022A37FC
.public _022A37FD
.public _022A37FE
.public _022A37FF
.public _022A3800
.public _022A3801
.public _022A3802
.public _022A3803
.public _022A3804
.public _022A3805
.public _022A3806
.public _s32_div_f
.public sub_02004FF8
.public sub_02005D30
.public sub_02005E10
.public sub_0200844C
.public sub_0200846C
.public sub_02008980
.public sub_02008A84
.public sub_02019304
.public sub_0207A2DC
.public sub_0207C164
.public sub_02082420

View File

@@ -1,4 +1,23 @@
#pragma once
.public AnalyzeText
.public DrawChar
.public FileRom_HandleRead
.public FileRom_HandleSeek
.public FileRom_InitDataTransfer
.public FileRom_StopDataTransfer
.public GetColorCodePaletteOffset
.public GetHeldButtons
.public GetPressedButtons
.public GetReleasedStylus
.public GetWindow
.public GetWindowRectangle
.public HandleSir0Translation
.public LoadFileFromRom
.public PreprocessStringFromId
.public RandInt
.public TBL_TALK_GROUP_STRING_ID_START
.public UnloadFile
.public UpdateWindow
.public _0209AB60
.public _0209AB9C
.public _0209ABF0
@@ -6,188 +25,24 @@
.public _0209AC18
.public _0209AC2C
.public _0209AC38
.public _0209AC4C
.public _0209AC50
.public _0209AC54
.public _0209AC58
.public _0209AC64
.public _0209AC78
.public _0209ACA8
.public _0209ACAC
.public _0209ADC8
.public _0209ADDC
.public _0209ADF0
.public _0209AE08
.public _0209AE20
.public _0209AE34
.public _0209AE44
.public _0209AEE0
.public _0209AEEC
.public _0209AEF4
.public _0209AEFC
.public _0209AF04
.public _0209AF6C
.public _0209AFC4
.public _0209AFDC
.public _0209AFE4
.public _0209AFEC
.public _0209AFF4
.public _0209AFFC
.public _0209B004
.public _0209B00C
.public _0209B014
.public _0209B01C
.public _0209B024
.public _0209B02C
.public _0209B034
.public _0209B03C
.public _0209B044
.public _0209B04C
.public _0209B054
.public _0209B05C
.public _0209B064
.public _0209B06C
.public _0209B074
.public _0209B07C
.public _0209B084
.public _0209B08C
.public _0209B09C_EU
.public _0209B32C_JP
.public _0209B408_JP
.public _0209B488
.public _0209B548_JP
.public _020AFC70
.public _020AFD04
.public _020AFD14
.public _020AFD1C
.public _020AFD34
.public _020AFD4C
.public _020AFD58
.public _020AFD5C
.public _020AFD60
.public _020AFD94
.public _020AFD98
.public _020AFD9C
.public _020AFDA0
.public _020AFDA8
.public _020AFDAC
.public _020AFDB8
.public _022A7A08
.public _022A7A0C
.public _022A7A54
.public _022A7A5C
.public _022A7A64
.public _022A7A6C
.public _022A7A74
.public _022A7A78
.public _022A7A8C
.public _022A7AA0
.public _022A7AB4
.public _022A7AB6
.public _022A7AC8
.public _022A7AE4
.public _022A7B00
.public _022A7B1C
.public _022A7EDC
.public _022A88E4
.public _022A88F0
.public _022A88F8
.public _022A88FC
.public _022A8908
.public _022A8990
.public _022A8991
.public _022A8992
.public _022A8994
.public _022A92B4_JP
.public _022A92B8_JP
.public _022A92C4
.public _022A9A5C
.public _022AA35C
.public _022AAC68
.public _s32_div_f
.public ADVANCED_MENU_DEFAULT_WINDOW_PARAMS
.public ADVANCED_TEXT_BOX_DEFAULT_WINDOW_PARAMS
.public ALERT_ANIMATION_CONTROL
.public ALERT_BOX_DEFAULT_WINDOW_PARAMS
.public ALERT_SPRITE_ID
.public AnalyzeText
.public AREA_NAME_BOX_DEFAULT_WINDOW_PARAMS
.public COLLECTION_MENU_DEFAULT_WINDOW_PARAMS
.public CONTROLS_CHART_DEFAULT_WINDOW_PARAMS
.public CURSOR_16_ANIMATION_CONTROL
.public CURSOR_16_SPRITE_ID
.public CURSOR_ANIMATION_CONTROL
.public DEBUG_MENU_DEFAULT_WINDOW_PARAMS
.public DecompressAtHalf
.public DelayWteFree
.public DIALOGUE_BOX_DEFAULT_WINDOW_PARAMS
.public FileClose
.public FileRom_HandleOpen
.public FileRom_HandleRead
.public FileRom_HandleSeek
.public FileRom_InitDataTransfer
.public FileRom_StopDataTransfer
.public FileRom_Veneer_FileInit
.public GetHeldButtons
.public GetPressedButtons
.public GetReleasedStylus
.public GetStringFromFileVeneer
.public HandleSir0Translation
.public InitAnimationControlWithSet__0201C0B0
.public InitPortraitParams
.public InitPreprocessorArgs
.public InitRender3dElement64
.public IsValidPortrait
.public KeyWaitInit
.public LoadFileFromRom
.public LoadPortrait
.public LoadWanTableEntry
.public LoadWteFromRom
.public MemAlloc
.public Memcpy32
.public MemcpySimple
.public MemFree
.public memset
.public MemZero
.public OPTIONS_MENU_DEFAULT_WINDOW_PARAMS
.public PARENT_MENU_DEFAULT_WINDOW_PARAMS
.public PlaySeVolumeWrapper
.public PORTRAIT_BOX_DEFAULT_WINDOW_PARAMS
.public PreprocessString
.public PreprocessStringFromId
.public RandInt
.public SCROLL_BOX_DEFAULT_WINDOW_PARAMS
.public SetAnimationForAnimationControl
.public SetSpriteIdForAnimationControl
.public SIMPLE_MENU_DEFAULT_WINDOW_PARAMS
.public sprintf
.public strcpy
.public sub_01FF905C
.public sub_01FF9128
.public sub_01FF9130_JP
.public sub_01FF929C
.public sub_0200302C
.public sub_020030FC
.public sub_020063A0
.public sub_020063F4
.public sub_02006BFC
.public sub_02006C8C
.public sub_0200A124
.public sub_0200A174
.public sub_0200A184
.public sub_0200A29C
.public sub_0200B2C4
.public sub_0200B330
.public sub_0200B340
.public sub_0200B3C0
.public sub_0200B3FC
.public sub_0201C028
.public sub_0201C108
.public sub_0201CF5C
.public sub_0201D110
.public sub_0201D9C8
.public sub_0201E12C
.public sub_0201F2A0
.public sub_02020A9C
.public sub_02020B14
.public sub_02020B4C
@@ -202,17 +57,17 @@
.public sub_02020D54
.public sub_02020D5C
.public sub_02020D7C
.public sub_02021F44
.public sub_0202202C
.public sub_02022118
.public sub_0203C984
.public sub_020469BC
.public sub_02048240
.public sub_02026B1C
.public sub_02026C68
.public sub_02027170
.public sub_02027274
.public sub_02027390
.public sub_0202760C
.public sub_0202796C_JP
.public sub_02027B1C
.public sub_020282C8
.public sub_02028324
.public sub_020288DC
.public sub_020288FC
.public sub_0204AE60
.public TBL_TALK_GROUP_STRING_ID_START
.public TEAM_SELECTION_MENU_DEFAULT_WINDOW_PARAMS
.public TEXT_BOX_DEFAULT_WINDOW_PARAMS
.public UnloadFile
.public UnloadOverlay
.public WAN_TABLE
.public WINDOW_LIST

View File

@@ -0,0 +1,204 @@
#pragma once
.public ADVANCED_MENU_DEFAULT_WINDOW_PARAMS
.public ADVANCED_TEXT_BOX_DEFAULT_WINDOW_PARAMS
.public ALERT_ANIMATION_CONTROL
.public ALERT_BOX_DEFAULT_WINDOW_PARAMS
.public ALERT_SPRITE_ID
.public AREA_NAME_BOX_DEFAULT_WINDOW_PARAMS
.public AnalyzeText
.public COLLECTION_MENU_DEFAULT_WINDOW_PARAMS
.public CONTROLS_CHART_DEFAULT_WINDOW_PARAMS
.public CURSOR_16_ANIMATION_CONTROL
.public CURSOR_16_SPRITE_ID
.public CURSOR_ANIMATION_CONTROL
.public DEBUG_MENU_DEFAULT_WINDOW_PARAMS
.public DIALOGUE_BOX_DEFAULT_WINDOW_PARAMS
.public DecompressAtHalf
.public DelayWteFree
.public DrawTextInWindow
.public FileClose
.public FileRom_HandleOpen
.public FileRom_HandleRead
.public FileRom_HandleSeek
.public FileRom_InitDataTransfer
.public FileRom_StopDataTransfer
.public FileRom_Veneer_FileInit
.public GetHeldButtons
.public GetPressedButtons
.public GetReleasedStylus
.public GetStringFromFileVeneer
.public InitAnimationControlWithSet__0201C0B0
.public InitPortraitParams
.public InitPreprocessorArgs
.public InitRender3dElement64
.public IsValidPortrait
.public KeyWaitInit
.public LoadFileFromRom
.public LoadPortrait
.public LoadWanTableEntry
.public LoadWteFromRom
.public MemAlloc
.public MemFree
.public MemZero
.public Memcpy32
.public MemcpySimple
.public OPTIONS_MENU_DEFAULT_WINDOW_PARAMS
.public PARENT_MENU_DEFAULT_WINDOW_PARAMS
.public PORTRAIT_BOX_DEFAULT_WINDOW_PARAMS
.public PlaySeVolumeWrapper
.public PreprocessString
.public PreprocessStringFromId
.public SCROLL_BOX_DEFAULT_WINDOW_PARAMS
.public SIMPLE_MENU_DEFAULT_WINDOW_PARAMS
.public SetAnimationForAnimationControl
.public SetSpriteIdForAnimationControl
.public TEAM_SELECTION_MENU_DEFAULT_WINDOW_PARAMS
.public TEXT_BOX_DEFAULT_WINDOW_PARAMS
.public UnloadFile
.public UnloadOverlay
.public WAN_TABLE
.public WINDOW_LIST
.public _0209AC4C
.public _0209AC50
.public _0209AC54
.public _0209AC58
.public _0209AC64
.public _0209AC78
.public _0209ACA8
.public _0209ACAC
.public _0209ADC8
.public _0209ADDC
.public _0209ADF0
.public _0209AE08
.public _0209AE20
.public _0209AE34
.public _0209AE44
.public _0209AEE0
.public _0209AEEC
.public _0209AEF4
.public _0209AEFC
.public _0209AF04
.public _0209AF6C
.public _0209AFC4
.public _0209AFDC
.public _0209AFE4
.public _0209AFEC
.public _0209AFF4
.public _0209AFFC
.public _0209B004
.public _0209B00C
.public _0209B014
.public _0209B01C
.public _0209B024
.public _0209B02C
.public _0209B034
.public _0209B03C
.public _0209B044
.public _0209B04C
.public _0209B054
.public _0209B05C
.public _0209B064
.public _0209B06C
.public _0209B074
.public _0209B07C
.public _0209B084
.public _0209B08C
.public _0209B32C_JP
.public _0209B408_JP
.public _020AFC70
.public _020AFD04
.public _020AFD4C
.public _020AFD58
.public _020AFD5C
.public _020AFD60
.public _020AFD94
.public _020AFD98
.public _020AFD9C
.public _020AFDA0
.public _020AFDA8
.public _020AFDAC
.public _020AFDB8
.public _022A7A5C
.public _022A7A6C
.public _022A7A74
.public _022A7A78
.public _022A7A8C
.public _022A7AA0
.public _022A7AB4
.public _022A7AB6
.public _022A7AC8
.public _022A7AE4
.public _022A7B00
.public _022A7B1C
.public _022A7EDC
.public _022A88E4
.public _022A88F0
.public _022A88F8
.public _022A88FC
.public _022A8908
.public _022A8990
.public _022A8991
.public _022A8992
.public _022A8994
.public _022A92B4_JP
.public _022A92B8_JP
.public _022A9A5C
.public _022AA35C
.public _022AAC68
.public _s32_div_f
.public memset
.public strcpy
.public sub_01FF9128
.public sub_01FF929C
.public sub_0200302C
.public sub_020030FC
.public sub_020063A0
.public sub_020063F4
.public sub_02006BFC
.public sub_02006C8C
.public sub_0200A124
.public sub_0200A174
.public sub_0200A184
.public sub_0200A29C
.public sub_0200B2C4
.public sub_0200B330
.public sub_0200B340
.public sub_0200B3C0
.public sub_0200B3FC
.public sub_0201C028
.public sub_0201C108
.public sub_0201CF5C
.public sub_0201D110
.public sub_0201D9C8
.public sub_0201E12C
.public sub_0201F2A0
.public sub_02020B60
.public sub_02020BC4
.public sub_02021F44
.public sub_0202202C
.public sub_02025C7C
.public sub_02025D50
.public sub_02025D90
.public sub_02025E84
.public sub_0202613C
.public sub_0202614C
.public sub_02026174
.public sub_02026184
.public sub_02026194
.public sub_020261A4
.public sub_020261B4
.public sub_020261C4
.public sub_020261D4
.public sub_020261E4
.public sub_020261F4
.public sub_02026204
.public sub_02026268
.public sub_02026358
.public sub_020263C8
.public sub_02026428
.public sub_02026594
.public sub_020265A8
.public sub_0203C984
.public sub_020469BC
.public sub_02048240
.public sub_0204AE60

File diff suppressed because it is too large Load Diff

534
asm/main_0200119C.s Normal file
View File

@@ -0,0 +1,534 @@
.include "asm/macros.inc"
.include "main_0200119C.inc"
.text
arm_func_start MemArenaAlloc
MemArenaAlloc: ; 0x0200119C
stmdb sp!, {r4, r5, r6, r7, lr}
sub sp, sp, #0x14
mov r5, r0
ldr r0, _0200126C ; =_020AEF08
mov r4, r1
mov r7, r2
mov r6, r3
bl sub_02002CB4
ldr r1, _02001270 ; =MEMORY_ALLOCATION_ARENA_GETTERS
mov r0, r5
ldr r2, [r1]
mov r1, r6
blx r2
movs r5, r0
ldreq r5, _02001274 ; =_020B3384
mov r2, r4
mov r0, r5
mov r1, #9
bl FindAvailableMemBlock
movs r1, r0
bmi _02001238
mov r0, r5
mov r3, r4
str r6, [sp]
mov r2, #9
bl SplitMemBlock
ldr r2, [r0, #0xc]
mov r1, r7
str r2, [sp, #0xc]
ldr r2, [r0, #0x10]
add r0, sp, #0xc
str r2, [sp, #0x10]
bl CreateMemArena
mov r4, r0
ldr r0, _0200126C ; =_020AEF08
str r5, [r4, #4]
bl sub_02002E98
mov r0, r4
b _02001264
_02001238:
ldr r0, _0200126C ; =_020AEF08
bl sub_02002E98
ldr r1, _02001278 ; =_02090B40
add r0, sp, #4
ldr r3, [r1, #0xc]
ldr ip, [r1, #8]
ldr r1, _0200127C ; =_02090BC8
mov r2, r4
str ip, [sp, #4]
str r3, [sp, #8]
bl Debug_FatalError
_02001264:
add sp, sp, #0x14
ldmia sp!, {r4, r5, r6, r7, pc}
.align 2, 0
_0200126C: .word _020AEF08
_02001270: .word MEMORY_ALLOCATION_ARENA_GETTERS
_02001274: .word _020B3384
_02001278: .word _02090B40
_0200127C: .word _02090BC8
arm_func_end MemArenaAlloc
arm_func_start CreateMemArena
CreateMemArena: ; 0x02001280
stmdb sp!, {r4, lr}
sub sp, sp, #8
mov r3, r1
mov r1, #0x18
mul r2, r3, r1
ldr r1, [r0, #4]
ldr r4, [r0]
add r0, r2, #3
bic ip, r0, #3
sub r0, r1, #0x1c
sub r0, r0, ip
bic lr, r0, #3
add r2, r4, #0x1c
add ip, r2, ip
add r1, sp, #0
mov r0, r4
str ip, [sp]
str lr, [sp, #4]
bl InitMemArena
mov r0, r4
add sp, sp, #8
ldmia sp!, {r4, pc}
arm_func_end CreateMemArena
arm_func_start sub_020012D8
sub_020012D8: ; 0x020012D8
stmdb sp!, {r3, lr}
movs r1, r0
ldmeqia sp!, {r3, pc}
ldr r0, [r1, #0xc]
cmp r0, #1
ldreq r0, [r1, #8]
ldreq r0, [r0, #4]
cmpeq r0, #0
moveq r0, #1
movne r0, #0
tst r0, #0xff
ldmeqia sp!, {r3, pc}
ldr r0, _02001388 ; =_020B3380
mov ip, #0
mov r3, ip
ldr lr, [r0]
ldr r2, _0200138C ; =_020B33A0
b _02001368
_02001320:
ldr r0, [r2, r3, lsl #2]
cmp r0, r1
bne _02001364
ldr r0, _02001388 ; =_020B3380
ldr r2, [r0]
sub ip, r2, #1
str ip, [r0]
ldr r2, _0200138C ; =_020B33A0
b _02001354
_02001344:
add r0, r2, r3, lsl #2
ldr r0, [r0, #4]
str r0, [r2, r3, lsl #2]
add r3, r3, #1
_02001354:
cmp r3, ip
blt _02001344
mov ip, #1
b _02001370
_02001364:
add r3, r3, #1
_02001368:
cmp r3, lr
blt _02001320
_02001370:
cmp ip, #0
ldrne r0, [r1, #4]
cmpne r0, #0
ldmeqia sp!, {r3, pc}
bl MemLocateUnset
ldmia sp!, {r3, pc}
.align 2, 0
_02001388: .word _020B3380
_0200138C: .word _020B33A0
arm_func_end sub_020012D8
arm_func_start MemLocateSet
MemLocateSet: ; 0x02001390
stmdb sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, lr}
sub sp, sp, #0x20
mov r4, r0
ldr r0, _0200161C ; =_020AEF08
mov r5, r1
orr r7, r2, #0x100
bl sub_02002CB4
ldr r1, _02001620 ; =MEMORY_ALLOCATION_ARENA_GETTERS
mov r0, r4
ldr r2, [r1]
mov r1, r7
blx r2
movs r4, r0
mov r0, r7, asr #8
orr r8, r0, #1
and r0, r8, #2
ldreq r4, _02001624 ; =_020B3384
cmp r0, #2
and sb, r7, #0xff
bne _020015A0
tst r8, #4
ldr r0, [r4, #8]
ldr lr, [r4, #0xc]
beq _02001458
mov r2, r0
mov r7, #0
b _02001420
_020013FC:
ldr r1, [r2, #4]
tst r1, #1
bne _02001418
ldr r1, [r2, #0x10]
cmp r1, r5
blt _0200144C
b _020014A8
_02001418:
add r7, r7, #1
add r2, r2, #0x18
_02001420:
cmp r7, lr
blt _020013FC
b _0200144C
_0200142C:
ldr r1, [r2, #4]
tst r1, #1
bne _02001444
ldr r1, [r2, #0x10]
cmp r1, r5
bge _020014A8
_02001444:
add r7, r7, #1
add r2, r2, #0x18
_0200144C:
cmp r7, lr
blt _0200142C
b _020014A4
_02001458:
mov sl, r0
mvn r7, #0
ldr r2, _02001628 ; =0x001E6401
mov r3, #0
b _02001498
_0200146C:
ldr r1, [sl, #4]
tst r1, #1
bne _02001490
ldr r1, [sl, #0x10]
cmp r1, r5
blt _02001490
cmp r1, r2
movlt r7, r3
movlt r2, r1
_02001490:
add r3, r3, #1
add sl, sl, #0x18
_02001498:
cmp r3, lr
blt _0200146C
b _020014A8
_020014A4:
mvn r7, #0
_020014A8:
cmp r7, #0
blt _020015DC
mov r1, #0x18
mla r6, r7, r1, r0
add r3, r5, #3
ldr r2, [r6, #0x10]
bic fp, r3, #3
cmp r2, fp
ble _02001584
mla ip, lr, r1, r0
b _0200150C
_020014D4:
sub r0, ip, #0x18
mov sl, r0
ldmia sl!, {r0, r1, r2, r3}
str sl, [sp, #0xc]
mov sl, ip
stmia sl!, {r0, r1, r2, r3}
str ip, [sp, #8]
ldr r0, [sp, #0xc]
mov r2, sl
ldmia r0, {r0, r1}
stmia r2, {r0, r1}
str sl, [sp, #8]
sub lr, lr, #1
sub ip, ip, #0x18
_0200150C:
cmp lr, r7
bgt _020014D4
ldr r0, [r4, #0xc]
add r1, r0, #1
str r1, [r4, #0xc]
ldr r0, [r4, #0x10]
cmp r1, r0
ble _02001554
ldr r1, _0200162C ; =_02090B40
add r0, sp, #0x18
ldr r2, [r1, #0x14]
ldr r1, [r1, #0x10]
str r2, [sp, #0x1c]
str r1, [sp, #0x18]
ldr r2, [r4, #0xc]
ldr r3, [r4, #0x10]
ldr r1, _02001630 ; =_02090BA0
bl Debug_FatalError
_02001554:
ldr r2, [r4, #8]
add r1, r7, #1
mov r0, #0x18
mla r2, r1, r0, r2
ldr r0, [r2, #0xc]
add r0, r0, fp
str r0, [r2, #0xc]
ldr r0, [r2, #0x10]
sub r0, r0, fp
str r0, [r2, #0x10]
str fp, [r6, #0x10]
str r5, [r6, #0x14]
_02001584:
mov r0, r8
bl MemAllocFlagsToBlockType
stmia r6, {r0, r8, sb}
ldr r0, _0200161C ; =_020AEF08
ldr r6, [r6, #0xc]
bl sub_02002E98
b _02001610
_020015A0:
mov r0, r4
mov r1, r8
mov r2, r5
bl FindAvailableMemBlock
movs r1, r0
bmi _020015DC
mov r0, r4
mov r2, r8
mov r3, r5
str sb, [sp]
bl SplitMemBlock
ldr r6, [r0, #0xc]
ldr r0, _0200161C ; =_020AEF08
bl sub_02002E98
b _02001610
_020015DC:
ldr r0, _0200161C ; =_020AEF08
bl sub_02002E98
ldr r1, _0200162C ; =_02090B40
add r0, sp, #0x10
ldr r2, [r1, #4]
ldr r1, [r1]
str r2, [sp, #0x14]
str r1, [sp, #0x10]
ldr r1, _02001634 ; =_02090BFC
mov r2, r4
mov r3, r5
stmia sp, {r8, sb}
bl Debug_FatalError
_02001610:
mov r0, r6
add sp, sp, #0x20
ldmia sp!, {r3, r4, r5, r6, r7, r8, sb, sl, fp, pc}
.align 2, 0
_0200161C: .word _020AEF08
_02001620: .word MEMORY_ALLOCATION_ARENA_GETTERS
_02001624: .word _020B3384
_02001628: .word 0x001E6401
_0200162C: .word _02090B40
_02001630: .word _02090BA0
_02001634: .word _02090BFC
arm_func_end MemLocateSet
arm_func_start MemLocateUnset
MemLocateUnset: ; 0x02001638
stmdb sp!, {r4, r5, r6, r7, r8, lr}
mov r7, r0
ldr r0, _020017A8 ; =_020AEF08
mov r6, r1
bl sub_02002CB4
ldr r1, _020017AC ; =MEMORY_ALLOCATION_ARENA_GETTERS
mov r0, r7
ldr r2, [r1, #4]
mov r1, r6
blx r2
movs r7, r0
ldreq r7, _020017B0 ; =_020B3384
cmp r6, #0
bne _0200167C
ldr r0, _020017A8 ; =_020AEF08
bl sub_02002E98
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0200167C:
ldr r4, [r7, #8]
ldr r1, [r7, #0xc]
mov r5, #0
b _02001794
_0200168C:
ldr r0, [r4, #0xc]
cmp r0, r6
bne _0200178C
mov r0, #0
str r0, [r4]
str r0, [r4, #4]
str r0, [r4, #0x14]
str r0, [r4, #8]
ldr r0, [r7, #0xc]
sub r0, r0, #1
cmp r5, r0
bge _0200171C
add ip, r4, #0x18
ldr r0, [ip, #4]
cmp r0, #0
bne _0200171C
ldr r1, [r4, #0x10]
ldr r0, [ip, #0x10]
add lr, r5, #1
add r0, r1, r0
str r0, [r4, #0x10]
ldr r0, [r7, #0xc]
sub r0, r0, #1
str r0, [r7, #0xc]
b _02001710
_020016F0:
add r8, ip, #0x18
mov r6, ip
ldmia r8!, {r0, r1, r2, r3}
stmia r6!, {r0, r1, r2, r3}
ldmia r8, {r0, r1}
stmia r6, {r0, r1}
add lr, lr, #1
add ip, ip, #0x18
_02001710:
ldr r0, [r7, #0xc]
cmp lr, r0
blt _020016F0
_0200171C:
cmp r5, #0
ble _02001780
sub r2, r4, #0x18
ldr r0, [r2, #4]
cmp r0, #0
bne _02001780
ldr r1, [r2, #0x10]
ldr r0, [r4, #0x10]
add r0, r1, r0
str r0, [r2, #0x10]
ldr r0, [r7, #0xc]
sub r0, r0, #1
str r0, [r7, #0xc]
b _02001774
_02001754:
add ip, r4, #0x18
mov r6, r4
ldmia ip!, {r0, r1, r2, r3}
stmia r6!, {r0, r1, r2, r3}
ldmia ip, {r0, r1}
stmia r6, {r0, r1}
add r5, r5, #1
add r4, r4, #0x18
_02001774:
ldr r0, [r7, #0xc]
cmp r5, r0
blt _02001754
_02001780:
ldr r0, _020017A8 ; =_020AEF08
bl sub_02002E98
ldmia sp!, {r4, r5, r6, r7, r8, pc}
_0200178C:
add r5, r5, #1
add r4, r4, #0x18
_02001794:
cmp r5, r1
blt _0200168C
ldr r0, _020017A8 ; =_020AEF08
bl sub_02002E98
ldmia sp!, {r4, r5, r6, r7, r8, pc}
.align 2, 0
_020017A8: .word _020AEF08
_020017AC: .word MEMORY_ALLOCATION_ARENA_GETTERS
_020017B0: .word _020B3384
arm_func_end MemLocateUnset
arm_func_start sub_020017B4
sub_020017B4: ; 0x020017B4
ldr r2, [r0, #8]
ldr ip, [r0, #0xc]
mov r3, #0
b _020017DC
_020017C4:
ldr r0, [r2, #0xc]
cmp r0, r1
moveq r0, #1
bxeq lr
add r3, r3, #1
add r2, r2, #0x18
_020017DC:
cmp r3, ip
blt _020017C4
mov r0, #0
bx lr
arm_func_end sub_020017B4
arm_func_start sub_020017EC
sub_020017EC: ; 0x020017EC
stmdb sp!, {r3, lr}
ldr r0, _02001804 ; =_020AEF08
bl sub_02002CB4
ldr r0, _02001804 ; =_020AEF08
bl sub_02002E98
ldmia sp!, {r3, pc}
.align 2, 0
_02001804: .word _020AEF08
arm_func_end sub_020017EC
arm_func_start sub_02001808
sub_02001808: ; 0x02001808
stmdb sp!, {r4, lr}
ldr r0, _0200187C ; =_020AEF08
bl sub_02002CB4
ldr r0, _02001880 ; =MEMORY_ALLOCATION_ARENA_GETTERS
mov r4, #0
ldr r2, [r0]
ldr r0, _02001884 ; =_020B3384
mov r1, r4
blx r2
cmp r0, #0
ldreq r0, _02001884 ; =_020B3384
mov r1, #0
ldr r2, [r0, #8]
ldr r3, [r0, #0xc]
b _02001864
_02001844:
ldr r0, [r2]
cmp r0, #0
bne _0200185C
ldr r0, [r2, #0x10]
cmp r4, r0
movlt r4, r0
_0200185C:
add r1, r1, #1
add r2, r2, #0x18
_02001864:
cmp r1, r3
blt _02001844
ldr r0, _0200187C ; =_020AEF08
bl sub_02002E98
mov r0, r4
ldmia sp!, {r4, pc}
.align 2, 0
_0200187C: .word _020AEF08
_02001880: .word MEMORY_ALLOCATION_ARENA_GETTERS
_02001884: .word _020B3384
arm_func_end sub_02001808
arm_func_start sub_02001888
sub_02001888: ; 0x02001888
tst r0, #0xff
addne r0, r0, #0x100
bx lr
arm_func_end sub_02001888

2166
asm/main_020018A4.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

4187
asm/main_02008BF4.s Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

18042
asm/main_0202676C.s Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -22,4 +22,9 @@ struct file_stream {
u32 field_0x44;
};
#endif
struct iovec {
void* iov_base;
u32 iov_len;
};
#endif

View File

@@ -2,13 +2,9 @@
#define PMDSKY_GROUND_BG_H
#include "util.h"
#include <file.h>
// TODO: Move these to actual headers later on
struct iovec
{
void* iov_base;
u32 iov_len;
};
typedef struct PixelPos
{

26
include/main_02001188.h Normal file
View File

@@ -0,0 +1,26 @@
#ifndef PMDSKY_MAIN_02001188_H
#define PMDSKY_MAIN_02001188_H
// Unclear if these structs match, since they haven't been used other than in extern prototypes. Hopefully they do, though.
struct mem_block {
u32 content_flags; // Bit 0: in_use. Bit 1: object. Bit 2: arena. Bits 3-31: Unused?
u32 allocator_flags; // Bit 0: alloc_in_use. Bit 1: alloc_object. Bit 2: alloc_arena. Bit 3: alloc_subarena. Bits 4-31: Unused?
u32 user_flags; // Bits 0-7: ??? Bit 8: user_alloc_in_use. Bit 9: user_alloc_arena. Bit 10: user_alloc_arena. Bit 11: user_alloc_subarena. Bits 12-31: Unused?
void * data;
u32 available;
u32 used;
};
struct mem_arena {
u32 content_flags;
struct mem_arena *parent;
struct mem_block *blocks;
u32 n_blocks;
u32 max_blocks;
void *data;
u32 len;
};
void MemFree(void * ptr);
#endif //PMDSKY_MAIN_02001188_H

6
include/main_02001894.h Normal file
View File

@@ -0,0 +1,6 @@
#ifndef PMDSKY_MAIN_02001894_H
#define PMDSKY_MAIN_02001894_H
s32 RoundUpDiv256(s32 x);
#endif //PMDSKY_MAIN_02001894_H

View File

@@ -1,7 +1,8 @@
#ifndef PMDSKY_MAIN_0200330C_H
#define PMDSKY_MAIN_0200330C_H
#include "ground_bg.h"
#include "util.h"
#include <file.h>
void ZInit8(struct iovec* ptr);
bool8 PointsToZero(struct iovec* ptr);

8
include/main_02008BD4.h Normal file
View File

@@ -0,0 +1,8 @@
#ifndef PMDSKY_MAIN_02008BD4_H
#define PMDSKY_MAIN_02008BD4_H
#include <file.h>
void UnloadFile(struct iovec* iov);
#endif //PMDSKY_MAIN_02008BD4_H

6
include/main_020265C4.h Normal file
View File

@@ -0,0 +1,6 @@
#ifndef PMDSKY_MAIN_020265C4_H
#define PMDSKY_MAIN_020265C4_H
u8 GetColorCodePaletteOffset(char letter);
#endif //PMDSKY_MAIN_020265C4_H

View File

@@ -11,6 +11,10 @@ Static main
StackSize 0 2048
Object src/main_02000C6C.o
Object asm/main_02000DE0.o
Object src/main_02001188.o
Object asm/main_0200119C.o
Object src/main_02001894.o
Object asm/main_020018A4.o
Object src/main_0200330C.o
Object asm/main_02003328.o
Object src/main_0200383C.o
@@ -21,6 +25,8 @@ Static main
Object asm/main_02008240.o
Object src/main_02008254.o
Object asm/main_020082C4.o
Object src/main_02008BD4.o
Object asm/main_02008BF4.o
Object src/debug.o
Object src/directory_file_mngr.o
Object src/directory_file.o
@@ -57,6 +63,8 @@ Static main
Object asm/main_020257FC.o
Object src/main_0202593C.o
Object asm/main_0202598C.o
Object src/main_020265C4.o
Object asm/main_0202676C.o
Object src/main_020348E4.o
Object asm/main_02034974.o
Object src/main_0203C760.o

View File

@@ -1,6 +1,8 @@
#include "ground_bg.h"
#include "file_rom.h"
#include "main_0200330C.h"
#include "main_02001188.h"
#include "main_02008BD4.h"
// TODO: Move these to headers
#define RGB_R 0
@@ -41,8 +43,6 @@ extern struct UnkStruct_2324CBC *ov11_02324CBC;
extern void FileClose(struct file_stream* file);
extern void* MemAlloc(u32 len, u32 flags);
extern void MemFree(void* ptr);
extern void UnloadFile(struct iovec* ptr);
extern void sub_0200A590(struct UnkStruct_2324CBC_Sub98 *, s32 id, const RGB_Array *src);
extern void sub_0200A504(struct UnkStruct_2324CBC_Sub98 *);
extern s32 sprintf(u8* str, const u8* format, ...);

8
src/main_02001188.c Normal file
View File

@@ -0,0 +1,8 @@
#include "main_02001188.h"
extern void MemLocateUnset(struct mem_arena *arena, void *ptr);
void MemFree(void * ptr)
{
MemLocateUnset(0, ptr);
}

7
src/main_02001894.c Normal file
View File

@@ -0,0 +1,7 @@
#include "main_02001894.h"
// Divides x by 256, and rounds up to 1 if the division would make x 0.
s32 RoundUpDiv256(s32 x) {
if (x & 0xFF) x += 0x100;
return x >> 8;
}

8
src/main_02008BD4.c Normal file
View File

@@ -0,0 +1,8 @@
#include "main_02008BD4.h"
#include "main_02001188.h"
void UnloadFile(struct iovec* iov) {
MemFree(iov->iov_base);
iov->iov_base = 0;
iov->iov_len = 0;
}

33
src/main_020265C4.c Normal file
View File

@@ -0,0 +1,33 @@
#include "main_020265C4.h"
u8 GetColorCodePaletteOffset(char letter)
{
switch (letter) {
case 'T': return 0x0;
case 'r': return 0x15;
case 'E': return 0x18;
case 'C': return 0x19;
case 'W': return 0x1A;
case 'X': return 0x1B;
case 'Y': return 0x1C;
case 'F': return 0x1D;
case 'N': return 0x1E;
case 'K': return 0x1F;
case 'M': return 0x20;
case 'P': case 'j': return 0x21;
case 'V': return 0x22;
case 'B': return 0x23;
case 'S': return 0x24;
case 'Q': return 0x25;
case 'A': case 'I': return 0x26;
case 'U': return 0x27;
case 'Z': return 0x28;
case 'G': return 0x29;
case 'R': return 0x2A;
case 'L': return 0x2B;
case 'H': return 0x2C;
case 'J': return 0x2D;
case 'O': return 0x2E;
default: return 0x17;
}
}

View File

@@ -1,7 +1,7 @@
#include "overlay_13_EntryOverlay13.h"
#include "main_02001188.h"
extern void* MemAlloc(u32 len, u32 flags);
extern void MemFree(void* ptr);
void sub_0201F2E4(void);
void sub_020348E4(const u8 *);
extern void ov11_022E6E8C(u32);

View File

@@ -1,11 +1,11 @@
#include "overlay_15_0238AE6C.h"
#include "main_02001188.h"
extern unkStruct_ov15_0238AE6C* OVERLAY15_UNKNOWN_POINTER__NA_238B180;
extern void ov15_0238AD78(u8);
extern u16 ov15_0238A140(void);
extern void Debug_Print0(const char* fmt);
extern void MemFree(void* ptr);
extern int ov15_0238A234(void);
extern int IsDialogueBoxActive(s8);
extern void HidePortraitBox(int);

View File

@@ -1,7 +1,7 @@
#include "overlay_17_0238A71C.h"
#include "main_02001188.h"
extern void sub_0203C760(void);
extern void MemFree(void *);
extern void *OVERLAY17_UNKNOWN_POINTER__NA_238BE00;
void ov17_0238A71C(void)

View File

@@ -1,4 +1,5 @@
#include "overlay_28_0238A58C.h"
#include "main_02001188.h"
extern void* ov28_0238AD80;
@@ -6,7 +7,6 @@ extern void ov28_0238AB5C(s32);
extern void sub_02025C14();
extern void sub_02027170();
extern void sub_02027228();
extern void MemFree(void* ptr);
void ov28_0238A58C(void)
{

View File

@@ -3,6 +3,7 @@
#include "dungeon_util_static.h"
#include "number_util.h"
#include "weather.h"
#include "main_02001188.h"
extern const u8 DUNGEON_MENU_SWITCH_STR1[];// = "[dungeon:0]";
@@ -50,7 +51,6 @@ extern struct struct_1* sub_0202ABB0(s8);
extern void CloseTextBox(s8);
extern void CloseParentMenu(s8);
extern void MemFree(void* ptr);
extern void ov29_022EA428(u32, u32);
extern void AdvanceFrame(u8);

View File

@@ -2,6 +2,7 @@
#include "dungeon.h"
#include "main_0202593C.h"
#include "overlay_31_02383478.h"
#include "main_02001188.h"
extern struct dungeon* DUNGEON_PTR[];
extern struct loc_struct* OVERLAY31_UNKNOWN_POINTER__NA_238A26C;
@@ -13,7 +14,6 @@ extern s32 sub_020282F4(s8);
extern void CloseInventoryMenu(s8);
extern void ov29_0234E988(u8*);
extern void CloseTextBox2();
extern void MemFree(void* ptr);
extern void DrawTextInWindow(struct window*, u32, u32, u8*);
u8 ov31_0238372C(struct position* x)