tm_case through sub_8132120

This commit is contained in:
PikalaxALT
2019-04-14 15:59:22 -04:00
parent ed4b353795
commit ef00905bd7
8 changed files with 197 additions and 505 deletions
+4 -4
View File
@@ -573,7 +573,7 @@ sub_813D204: @ 813D204
push {r4-r7,lr}
mov r7, r8
push {r7}
ldr r0, _0813D280 @ =gUnknown_20398AC
ldr r0, _0813D280 @ =gBagPockets + 0x20
mov r8, r0
movs r6, 0
ldr r0, _0813D284 @ =gUnknown_203F36C
@@ -633,7 +633,7 @@ _0813D254:
adds r2, r1, 0
b _0813D2A6
.align 2, 0
_0813D280: .4byte gUnknown_20398AC
_0813D280: .4byte gBagPockets + 0x20
_0813D284: .4byte gUnknown_203F36C
_0813D288: .4byte gUnknown_203F380
_0813D28C: .4byte gUnknown_203F37C
@@ -1441,7 +1441,7 @@ _0813D8A4:
thumb_func_start sub_813D8AC
sub_813D8AC: @ 813D8AC
push {r4,lr}
ldr r4, _0813D904 @ =gUnknown_20398AC
ldr r4, _0813D904 @ =gBagPockets + 0x20
adds r0, r4, 0
bl sub_809A720
ldr r3, _0813D908 @ =gUnknown_203F36C
@@ -1485,7 +1485,7 @@ _0813D8EE:
adds r1, r0, 0
b _0813D916
.align 2, 0
_0813D904: .4byte gUnknown_20398AC
_0813D904: .4byte gBagPockets + 0x20
_0813D908: .4byte gUnknown_203F36C
_0813D90C: .4byte gUnknown_203F370
_0813D910:
+27 -27
View File
@@ -61,7 +61,7 @@ ApplyNewEncryptionKeyToBagItems: @ 8099DE0
sub sp, 0x4
mov r8, r0
movs r1, 0
ldr r0, _08099E34 @ =gUnknown_203988C
ldr r0, _08099E34 @ =gBagPockets
mov r9, r0
_08099DF2:
movs r6, 0
@@ -72,7 +72,7 @@ _08099DF2:
ldrb r0, [r0, 0x4]
cmp r6, r0
bcs _08099E20
ldr r2, _08099E34 @ =gUnknown_203988C
ldr r2, _08099E34 @ =gBagPockets
_08099E04:
adds r4, r5, r2
lsls r1, r6, 2
@@ -99,7 +99,7 @@ _08099E20:
pop {r0}
bx r0
.align 2, 0
_08099E34: .4byte gUnknown_203988C
_08099E34: .4byte gBagPockets
thumb_func_end ApplyNewEncryptionKeyToBagItems
thumb_func_start ApplyNewEncryptionKeyToBagItems_
@@ -112,7 +112,7 @@ ApplyNewEncryptionKeyToBagItems_: @ 8099E38
thumb_func_start sub_8099E44
sub_8099E44: @ 8099E44
ldr r1, _08099E84 @ =gUnknown_203988C
ldr r1, _08099E84 @ =gBagPockets
ldr r0, _08099E88 @ =gSaveBlock1Ptr
ldr r2, [r0]
movs r3, 0xC4
@@ -144,7 +144,7 @@ sub_8099E44: @ 8099E44
strb r0, [r1]
bx lr
.align 2, 0
_08099E84: .4byte gUnknown_203988C
_08099E84: .4byte gBagPockets
_08099E88: .4byte gSaveBlock1Ptr
_08099E8C: .4byte 0x0000054c
thumb_func_end sub_8099E44
@@ -184,7 +184,7 @@ sub_8099ECC: @ 8099ECC
push {lr}
lsls r0, 24
movs r2, 0
ldr r1, _08099EF0 @ =gUnknown_203988C
ldr r1, _08099EF0 @ =gBagPockets
lsrs r0, 21
adds r0, r1
ldrb r1, [r0, 0x4]
@@ -201,7 +201,7 @@ _08099EE0:
asrs r0, 24
b _08099F02
.align 2, 0
_08099EF0: .4byte gUnknown_203988C
_08099EF0: .4byte gBagPockets
_08099EF4:
adds r0, r2, 0x1
lsls r0, 16
@@ -221,7 +221,7 @@ sub_8099F08: @ 8099F08
push {lr}
lsls r0, 24
movs r2, 0
ldr r1, _08099F2C @ =gUnknown_203988C
ldr r1, _08099F2C @ =gBagPockets
lsrs r0, 21
subs r0, 0x8
adds r0, r1
@@ -238,7 +238,7 @@ _08099F1E:
movs r0, 0x1
b _08099F3C
.align 2, 0
_08099F2C: .4byte gUnknown_203988C
_08099F2C: .4byte gBagPockets
_08099F30:
adds r0, r2, 0x1
lsls r0, 24
@@ -274,7 +274,7 @@ _08099F5C:
subs r0, 0x1
lsls r0, 24
movs r2, 0
ldr r1, _08099F94 @ =gUnknown_203988C
ldr r1, _08099F94 @ =gBagPockets
lsrs r0, 21
adds r0, r1
ldrb r1, [r0, 0x4]
@@ -296,7 +296,7 @@ _08099F76:
bcs _08099F58
b _08099FA4
.align 2, 0
_08099F94: .4byte gUnknown_203988C
_08099F94: .4byte gBagPockets
_08099F98:
adds r0, r2, 0x1
lsls r0, 24
@@ -378,7 +378,7 @@ CheckBagHasSpace: @ 809A000
lsls r0, 24
lsrs r5, r0, 24
movs r2, 0
ldr r1, _0809A054 @ =gUnknown_203988C
ldr r1, _0809A054 @ =gBagPockets
lsls r0, r5, 3
adds r0, r1
ldrb r1, [r0, 0x4]
@@ -404,7 +404,7 @@ _0809A050:
movs r0, 0
b _0809A07C
.align 2, 0
_0809A054: .4byte gUnknown_203988C
_0809A054: .4byte gBagPockets
_0809A058: .4byte 0x000003e7
_0809A05C:
adds r0, r2, 0x1
@@ -453,7 +453,7 @@ _0809A0A2:
lsls r0, 24
lsrs r7, r0, 24
movs r2, 0
ldr r1, _0809A0E0 @ =gUnknown_203988C
ldr r1, _0809A0E0 @ =gBagPockets
lsls r0, r7, 3
adds r0, r1
ldrb r1, [r0, 0x4]
@@ -478,7 +478,7 @@ _0809A0BE:
ble _0809A1B8
b _0809A1CA
.align 2, 0
_0809A0E0: .4byte gUnknown_203988C
_0809A0E0: .4byte gBagPockets
_0809A0E4: .4byte 0x000003e7
_0809A0E8:
adds r0, r2, 0x1
@@ -506,7 +506,7 @@ _0809A0F4:
negs r0, r0
cmp r1, r0
beq _0809A1CA
ldr r2, _0809A1AC @ =gUnknown_203988C
ldr r2, _0809A1AC @ =gBagPockets
ldr r0, [r2, 0x8]
lsls r1, 2
adds r0, r1, r0
@@ -534,7 +534,7 @@ _0809A132:
negs r0, r0
cmp r1, r0
beq _0809A1CA
ldr r2, _0809A1AC @ =gUnknown_203988C
ldr r2, _0809A1AC @ =gBagPockets
ldr r0, [r2, 0x8]
lsls r1, 2
adds r0, r1, r0
@@ -561,7 +561,7 @@ _0809A180:
negs r0, r0
cmp r2, r0
beq _0809A1CA
ldr r0, _0809A1AC @ =gUnknown_203988C
ldr r0, _0809A1AC @ =gBagPockets
lsls r1, r7, 3
adds r1, r0
ldr r0, [r1]
@@ -574,7 +574,7 @@ _0809A180:
mov r1, r8
b _0809A1C2
.align 2, 0
_0809A1AC: .4byte gUnknown_203988C
_0809A1AC: .4byte gBagPockets
_0809A1B0: .4byte 0x0000016d
_0809A1B4: .4byte 0x00000847
_0809A1B8:
@@ -616,7 +616,7 @@ RemoveBagItem: @ 809A1D8
subs r0, 0x1
lsls r0, 24
movs r2, 0
ldr r1, _0809A248 @ =gUnknown_203988C
ldr r1, _0809A248 @ =gBagPockets
lsrs r0, 21
adds r0, r1
ldrb r1, [r0, 0x4]
@@ -653,7 +653,7 @@ _0809A242:
movs r0, 0x1
b _0809A25A
.align 2, 0
_0809A248: .4byte gUnknown_203988C
_0809A248: .4byte gBagPockets
_0809A24C:
adds r0, r2, 0x1
lsls r0, 24
@@ -745,7 +745,7 @@ _0809A2D8: .4byte gSaveBlock1Ptr
sub_809A2DC: @ 809A2DC
push {r4,r5,lr}
movs r4, 0
ldr r5, _0809A300 @ =gUnknown_203988C
ldr r5, _0809A300 @ =gBagPockets
_0809A2E2:
lsls r1, r4, 3
adds r1, r5
@@ -761,7 +761,7 @@ _0809A2E2:
pop {r0}
bx r0
.align 2, 0
_0809A300: .4byte gUnknown_203988C
_0809A300: .4byte gBagPockets
thumb_func_end sub_809A2DC
thumb_func_start sub_809A304
@@ -1408,7 +1408,7 @@ _0809A786:
sub_809A798: @ 809A798
lsls r0, 24
lsls r1, 16
ldr r2, _0809A7B0 @ =gUnknown_203988C
ldr r2, _0809A7B0 @ =gBagPockets
lsrs r0, 21
subs r0, 0x8
adds r0, r2
@@ -1418,7 +1418,7 @@ sub_809A798: @ 809A798
ldrh r0, [r1]
bx lr
.align 2, 0
_0809A7B0: .4byte gUnknown_203988C
_0809A7B0: .4byte gBagPockets
thumb_func_end sub_809A798
thumb_func_start sub_809A7B4
@@ -1426,7 +1426,7 @@ sub_809A7B4: @ 809A7B4
push {lr}
lsls r0, 24
lsls r1, 16
ldr r2, _0809A7D8 @ =gUnknown_203988C
ldr r2, _0809A7D8 @ =gBagPockets
lsrs r0, 21
subs r0, 0x8
adds r0, r2
@@ -1440,7 +1440,7 @@ sub_809A7B4: @ 809A7B4
pop {r1}
bx r1
.align 2, 0
_0809A7D8: .4byte gUnknown_203988C
_0809A7D8: .4byte gBagPockets
thumb_func_end sub_809A7B4
thumb_func_start sub_809A7DC
+6 -6
View File
@@ -817,7 +817,7 @@ sub_810842C: @ 810842C
lsls r0, 24
lsrs r7, r0, 24
lsls r1, r7, 3
ldr r0, _0810853C @ =gUnknown_203988C
ldr r0, _0810853C @ =gBagPockets
adds r1, r0
mov r8, r1
movs r6, 0
@@ -946,7 +946,7 @@ _0810848C:
pop {r0}
bx r0
.align 2, 0
_0810853C: .4byte gUnknown_203988C
_0810853C: .4byte gBagPockets
_08108540: .4byte gUnknown_203AD10
_08108544: .4byte gUnknown_203AD1C
_08108548: .4byte gUnknown_203AD18
@@ -2065,7 +2065,7 @@ sub_8108DC8: @ 8108DC8
lsls r0, 24
lsrs r5, r0, 24
lsls r1, r5, 3
ldr r0, _08108E3C @ =gUnknown_203988C
ldr r0, _08108E3C @ =gBagPockets
adds r4, r1, r0
ldr r0, [r4]
ldrb r1, [r4, 0x4]
@@ -2120,7 +2120,7 @@ _08108E1C:
strb r1, [r0]
b _08108E4C
.align 2, 0
_08108E3C: .4byte gUnknown_203988C
_08108E3C: .4byte gBagPockets
_08108E40: .4byte gUnknown_203AD10
_08108E44:
adds r0, r1, 0
@@ -3063,7 +3063,7 @@ _081095DA:
.align 2, 0
_081095E4: .4byte gTasks+0x8
_081095E8:
ldr r1, _0810966C @ =gUnknown_203988C
ldr r1, _0810966C @ =gBagPockets
ldr r4, _08109670 @ =gUnknown_203ACFC
ldrh r0, [r4, 0x6]
lsls r0, 3
@@ -3125,7 +3125,7 @@ _0810965C:
pop {r0}
bx r0
.align 2, 0
_0810966C: .4byte gUnknown_203988C
_0810966C: .4byte gBagPockets
_08109670: .4byte gUnknown_203ACFC
_08109674: .4byte gUnknown_3005E70
_08109678: .4byte sub_8108F0C
-451
View File
@@ -5,457 +5,6 @@
.text
thumb_func_start sub_8131E18
sub_8131E18: @ 8131E18
push {r4-r6,lr}
adds r4, r0, 0
lsls r1, 24
lsrs r6, r1, 24
movs r0, 0x2
negs r0, r0
cmp r4, r0
bne _08131E2C
movs r5, 0
b _08131E3A
_08131E2C:
lsls r1, r4, 16
lsrs r1, 16
movs r0, 0x4
bl sub_809A798
lsls r0, 16
lsrs r5, r0, 16
_08131E3A:
cmp r6, 0x1
beq _08131E50
movs r0, 0x5
bl PlaySE
ldr r0, _08131E64 @ =gUnknown_203B118
ldr r0, [r0]
ldrb r0, [r0, 0x4]
adds r1, r5, 0
bl sub_81337E4
_08131E50:
adds r0, r4, 0
bl sub_8131F0C
adds r0, r5, 0
bl sub_8133444
pop {r4-r6}
pop {r0}
bx r0
.align 2, 0
_08131E64: .4byte gUnknown_203B118
thumb_func_end sub_8131E18
thumb_func_start sub_8131E68
sub_8131E68: @ 8131E68
push {r4-r7,lr}
mov r7, r9
mov r6, r8
push {r6,r7}
sub sp, 0x14
lsls r0, 24
lsrs r0, 24
mov r9, r0
mov r7, r9
lsls r2, 24
lsrs r2, 24
mov r8, r2
mov r4, r8
movs r0, 0x2
negs r0, r0
cmp r1, r0
beq _08131EFE
lsls r0, r1, 16
lsrs r6, r0, 16
movs r0, 0x4
adds r1, r6, 0
bl sub_809A798
lsls r0, 16
lsrs r0, 16
bl itemid_is_unique
lsls r0, 24
lsrs r5, r0, 24
cmp r5, 0
bne _08131EF4
ldr r4, _08131EE8 @ =gStringVar1
movs r0, 0x4
adds r1, r6, 0
bl sub_809A7B4
adds r1, r0, 0
lsls r1, 16
lsrs r1, 16
adds r0, r4, 0
movs r2, 0x1
movs r3, 0x3
bl ConvertIntToDecimalStringN
ldr r4, _08131EEC @ =gStringVar4
ldr r1, _08131EF0 @ =gUnknown_84162B9
adds r0, r4, 0
bl StringExpandPlaceholders
mov r0, r8
str r0, [sp]
str r5, [sp, 0x4]
str r5, [sp, 0x8]
movs r0, 0xFF
str r0, [sp, 0xC]
movs r0, 0x1
str r0, [sp, 0x10]
mov r0, r9
movs r1, 0
adds r2, r4, 0
movs r3, 0x7E
bl sub_81332EC
b _08131EFE
.align 2, 0
_08131EE8: .4byte gStringVar1
_08131EEC: .4byte gStringVar4
_08131EF0: .4byte gUnknown_84162B9
_08131EF4:
adds r0, r7, 0
movs r1, 0x8
adds r2, r4, 0
bl sub_81335B0
_08131EFE:
add sp, 0x14
pop {r3,r4}
mov r8, r3
mov r9, r4
pop {r4-r7}
pop {r0}
bx r0
thumb_func_end sub_8131E68
thumb_func_start sub_8131F0C
sub_8131F0C: @ 8131F0C
push {r4,lr}
sub sp, 0x14
adds r1, r0, 0
movs r0, 0x2
negs r0, r0
cmp r1, r0
beq _08131F30
lsls r1, 16
lsrs r1, 16
movs r0, 0x4
bl sub_809A798
lsls r0, 16
lsrs r0, 16
bl ItemId_GetDescription
adds r4, r0, 0
b _08131F32
_08131F30:
ldr r4, _08131F60 @ =gUnknown_84166E1
_08131F32:
movs r0, 0x1
movs r1, 0
bl FillWindowPixelBuffer
movs r0, 0x3
str r0, [sp]
movs r0, 0x1
str r0, [sp, 0x4]
movs r0, 0
str r0, [sp, 0x8]
str r0, [sp, 0xC]
str r0, [sp, 0x10]
movs r0, 0x1
movs r1, 0x2
adds r2, r4, 0
movs r3, 0x2
bl sub_81332EC
add sp, 0x14
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08131F60: .4byte gUnknown_84166E1
thumb_func_end sub_8131F0C
thumb_func_start sub_8131F64
sub_8131F64: @ 8131F64
push {lr}
sub sp, 0x8
movs r1, 0x8
str r1, [sp]
lsls r0, 1
adds r0, 0x1
lsls r0, 24
lsrs r0, 24
str r0, [sp, 0x4]
movs r0, 0x2
movs r1, 0
movs r2, 0xC
movs r3, 0x1E
bl sub_80F6B08
movs r0, 0x2
bl schedule_bg_copy_tilemap_to_vram
add sp, 0x8
pop {r0}
bx r0
thumb_func_end sub_8131F64
thumb_func_start sub_8131F90
sub_8131F90: @ 8131F90
push {r4,lr}
adds r4, r1, 0
lsls r0, 24
lsrs r0, 24
lsls r4, 24
lsrs r4, 24
bl ListMenuGetYCoordForPrintingArrowCursor
lsls r0, 24
lsrs r0, 24
adds r1, r4, 0
bl sub_8131FB0
pop {r4}
pop {r0}
bx r0
thumb_func_end sub_8131F90
thumb_func_start sub_8131FB0
sub_8131FB0: @ 8131FB0
push {r4,r5,lr}
sub sp, 0x14
lsls r0, 24
lsrs r5, r0, 24
lsls r1, 24
lsrs r1, 24
cmp r1, 0xFF
bne _08131FF4
movs r0, 0x2
movs r1, 0
bl GetFontAttribute
adds r4, r0, 0
lsls r4, 24
lsrs r4, 24
movs r0, 0x2
movs r1, 0x1
bl GetFontAttribute
lsls r0, 24
lsrs r0, 24
str r4, [sp]
str r0, [sp, 0x4]
movs r0, 0
movs r1, 0
movs r2, 0
adds r3, r5, 0
bl FillWindowPixelRect
movs r0, 0
movs r1, 0x2
bl CopyWindowToVram
b _0813200A
_08131FF4:
ldr r2, _08132014 @ =gFameCheckerText_ListMenuCursor
str r5, [sp]
movs r0, 0
str r0, [sp, 0x4]
str r0, [sp, 0x8]
str r0, [sp, 0xC]
str r1, [sp, 0x10]
movs r1, 0x2
movs r3, 0
bl sub_81332EC
_0813200A:
add sp, 0x14
pop {r4,r5}
pop {r0}
bx r0
.align 2, 0
_08132014: .4byte gFameCheckerText_ListMenuCursor
thumb_func_end sub_8131FB0
thumb_func_start sub_8132018
sub_8132018: @ 8132018
push {r4,lr}
sub sp, 0x10
ldr r4, _0813204C @ =gUnknown_203B118
ldr r1, [r4]
ldrb r0, [r1, 0x6]
ldrb r1, [r1, 0x5]
subs r0, r1
adds r0, 0x1
str r0, [sp]
movs r0, 0x6E
str r0, [sp, 0x4]
str r0, [sp, 0x8]
ldr r0, _08132050 @ =gUnknown_203B10C + 10
str r0, [sp, 0xC]
movs r0, 0x2
movs r1, 0xA0
movs r2, 0x8
movs r3, 0x58
bl AddScrollIndicatorArrowPairParametrized
ldr r1, [r4]
strb r0, [r1, 0x8]
add sp, 0x10
pop {r4}
pop {r0}
bx r0
.align 2, 0
_0813204C: .4byte gUnknown_203B118
_08132050: .4byte gUnknown_203B10C + 10
thumb_func_end sub_8132018
thumb_func_start sub_8132054
sub_8132054: @ 8132054
push {r4,lr}
sub sp, 0x10
ldr r4, _08132088 @ =gUnknown_203B118
ldr r1, [r4]
movs r0, 0x1
strh r0, [r1, 0xA]
movs r0, 0x2
str r0, [sp]
movs r0, 0x6E
str r0, [sp, 0x4]
str r0, [sp, 0x8]
adds r1, 0xA
str r1, [sp, 0xC]
movs r0, 0x2
movs r1, 0x98
movs r2, 0x48
movs r3, 0x68
bl AddScrollIndicatorArrowPairParametrized
ldr r1, [r4]
strb r0, [r1, 0x8]
add sp, 0x10
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08132088: .4byte gUnknown_203B118
thumb_func_end sub_8132054
thumb_func_start sub_813208C
sub_813208C: @ 813208C
push {r4,lr}
ldr r4, _081320A8 @ =gUnknown_203B118
ldr r1, [r4]
ldrb r0, [r1, 0x8]
cmp r0, 0xFF
beq _081320A2
bl RemoveScrollIndicatorArrowPair
ldr r1, [r4]
movs r0, 0xFF
strb r0, [r1, 0x8]
_081320A2:
pop {r4}
pop {r0}
bx r0
.align 2, 0
_081320A8: .4byte gUnknown_203B118
thumb_func_end sub_813208C
thumb_func_start sub_81320AC
sub_81320AC: @ 81320AC
ldr r1, _081320B8 @ =gUnknown_203B10C
movs r0, 0
strh r0, [r1, 0x8]
strh r0, [r1, 0xA]
bx lr
.align 2, 0
_081320B8: .4byte gUnknown_203B10C
thumb_func_end sub_81320AC
thumb_func_start sub_81320BC
sub_81320BC: @ 81320BC
push {r4,lr}
ldr r4, _08132118 @ =gUnknown_20398A4
ldr r0, [r4]
ldrb r1, [r4, 0x4]
bl sub_809A584
ldr r3, _0813211C @ =gUnknown_203B118
ldr r1, [r3]
movs r0, 0
strb r0, [r1, 0x6]
movs r2, 0
ldrb r0, [r4, 0x4]
cmp r2, r0
bcs _08132100
ldr r0, [r4]
ldrh r0, [r0]
cmp r0, 0
beq _08132100
_081320E0:
ldr r0, [r3]
ldrb r1, [r0, 0x6]
adds r1, 0x1
strb r1, [r0, 0x6]
adds r0, r2, 0x1
lsls r0, 16
lsrs r2, r0, 16
ldrb r0, [r4, 0x4]
cmp r2, r0
bcs _08132100
ldr r0, [r4]
lsls r1, r2, 2
adds r1, r0
ldrh r0, [r1]
cmp r0, 0
bne _081320E0
_08132100:
ldr r0, _0813211C @ =gUnknown_203B118
ldr r1, [r0]
ldrb r0, [r1, 0x6]
adds r0, 0x1
cmp r0, 0x5
ble _0813210E
movs r0, 0x5
_0813210E:
strb r0, [r1, 0x5]
pop {r4}
pop {r0}
bx r0
.align 2, 0
_08132118: .4byte gUnknown_20398A4
_0813211C: .4byte gUnknown_203B118
thumb_func_end sub_81320BC
thumb_func_start sub_8132120
sub_8132120: @ 8132120
push {r4,r5,lr}
ldr r0, _08132160 @ =gUnknown_203B10C
ldrh r1, [r0, 0xA]
adds r4, r0, 0
ldr r5, _08132164 @ =gUnknown_203B118
cmp r1, 0
beq _08132144
ldrh r0, [r4, 0xA]
ldr r1, [r5]
ldrb r3, [r1, 0x5]
adds r0, r3
ldrb r2, [r1, 0x6]
adds r1, r2, 0x1
cmp r0, r1
ble _08132144
subs r0, r3, 0x1
subs r0, r2, r0
strh r0, [r4, 0xA]
_08132144:
adds r3, r4, 0
ldrh r0, [r3, 0xA]
ldrh r1, [r3, 0x8]
adds r0, r1
ldr r1, [r5]
ldrb r1, [r1, 0x6]
adds r2, r1, 0x1
cmp r0, r2
blt _0813216A
cmp r2, 0x1
bgt _08132168
movs r0, 0
strh r0, [r3, 0x8]
b _0813216A
.align 2, 0
_08132160: .4byte gUnknown_203B10C
_08132164: .4byte gUnknown_203B118
_08132168:
strh r1, [r4, 0x8]
_0813216A:
pop {r4,r5}
pop {r0}
bx r0
thumb_func_end sub_8132120
thumb_func_start sub_8132170
sub_8132170: @ 8132170
push {r4-r6,lr}
+3 -1
View File
@@ -28,7 +28,6 @@ struct BagPocket
};
extern struct BagPocket gBagPockets[];
extern struct BagPocket gUnknown_20398A4;
void GetBerryCountString(u8* dst, const u8* berryName, u32 quantity);
void CopyItemName(u16 itemId, u8 *string);
@@ -69,5 +68,8 @@ bool8 AddBagItem(u16 itemId, u16 amount);
void sub_809A5E4(struct BagPocket *);
u16 sub_809A798(u8 a0, u16 a1);
u16 sub_809A7B4(u8 a0, u16 a1);
bool8 itemid_is_unique(u16 itemId);
void sub_809A584(struct ItemSlot * slots, u8 capacity);
#endif // ITEM_H
+1
View File
@@ -29,5 +29,6 @@ void ResetBg0(void);
void Menu_LoadStdPalAt(u16);
void * malloc_and_decompress(const void * src, u32 * size);
u16 sub_80F796C(void);
void sub_80F6B08(u8 bgId, u8 value, u8 height, u8 width, u8 x, u8 y);
#endif // GUARD_NEW_MENU_HELPERS_H
+154 -8
View File
@@ -8,13 +8,17 @@
#include "text.h"
#include "menu.h"
#include "menu_helpers.h"
#include "new_menu_helpers.h"
#include "list_menu.h"
#include "item.h"
#include "string_util.h"
#include "party_menu.h"
#include "data2.h"
#include "scanline_effect.h"
#include "sound.h"
#include "menu_indicators.h"
#include "constants/items.h"
#include "constants/songs.h"
struct UnkStruct_203B10C
{
@@ -34,7 +38,8 @@ struct UnkStruct_203B118
u8 unk_06;
u8 unk_07;
u8 unk_08;
u8 filler_09[9];
u16 unk_0a;
u8 filler_0c[6];
s16 unk_12;
u8 filler_14[8];
};
@@ -65,6 +70,8 @@ void sub_8131C50(void);
void sub_8131D48(u8 * dest, u16 itemId);
void sub_8131E18(s32 itemIndex, bool8 onInit, struct ListMenu *list);
void sub_8131E68(u8 windowId, s32 itemId, u8 y);
void sub_8131F0C(s32 itemIndex);
void sub_8131FB0(u8 a0, u8 a1);
void sub_8132018(void);
void sub_81320BC(void);
void sub_8132120(void);
@@ -72,9 +79,13 @@ void sub_8132170(void);
void sub_81322D4(u8 taskId);
void sub_8132F20(u8 taskId);
void sub_8133244(void);
void sub_81332EC(u8 windowId, u8 fontId, const u8 * str, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, u8 speed, u8 colorIdx);
void sub_81333C4(void);
void sub_8133404(void);
void sub_8133444(u16 itemId);
void sub_81335B0(u8 windowId, u8 x, u8 y);
u8 sub_813368C(u16 itemId);
void sub_81337E4(u8 a0, u16 itemId);
void sub_81338A8(void);
extern const struct BgTemplate gUnknown_8463134[3];
@@ -84,12 +95,15 @@ extern const u32 gUnknown_8E84B70[];
extern const u32 gUnknown_8E84CB0[];
extern const u32 gUnknown_8E84D20[];
extern const struct CompressedSpriteSheet gUnknown_8463218;
extern const u8 gUnknown_84166DB[];
extern const u8 gUnknown_84166FF[];
extern const u8 gUnknown_8463178[];
extern const u8 gUnknown_8416226[];
extern const u8 gUnknown_846317C[];
extern const u8 gUnknown_8416226[];
extern const u8 gFameCheckerText_ListMenuCursor[];
extern const u8 gUnknown_84162B9[];
extern const u8 gUnknown_84166DB[];
extern const u8 gUnknown_84166E1[];
extern const u8 gUnknown_84166FF[];
extern const u8 gUnknown_8416703[];
void sub_81317F8(u8 a0, void (* a1)(void), u8 a2)
@@ -183,7 +197,7 @@ bool8 sub_81318C0(void)
gMain.state++;
break;
case 9:
sub_809A5E4(&gUnknown_20398A4);
sub_809A5E4(&gBagPockets[POCKET_TM_CASE - 1]);
gMain.state++;
break;
case 10:
@@ -307,14 +321,14 @@ bool8 sub_8131B20(void)
void sub_8131C10(void)
{
struct BagPocket * pocket = &gUnknown_20398A4;
struct BagPocket * pocket = &gBagPockets[POCKET_TM_CASE - 1];
gUnknown_203B124 = Alloc((pocket->capacity + 1) * sizeof(struct ListMenuItem));
gUnknown_203B128 = Alloc(gUnknown_203B118->unk_06 * 29);
}
void sub_8131C50(void)
{
struct BagPocket * pocket = &gUnknown_20398A4;
struct BagPocket * pocket = &gBagPockets[POCKET_TM_CASE - 1];
u16 i;
for (i = 0; i < gUnknown_203B118->unk_06; i++)
@@ -366,3 +380,135 @@ void sub_8131D48(u8 * dest, u16 itemId)
StringAppend(gStringVar4, gMoveNames[ItemIdToBattleMoveId(itemId)]);
StringCopy(dest, gStringVar4);
}
void sub_8131E18(s32 itemIndex, bool8 onInit, struct ListMenu *list)
{
u16 itemId;
if (itemIndex == -2)
itemId = 0;
else
itemId = sub_809A798(POCKET_TM_CASE, itemIndex);
if (onInit != TRUE)
{
PlaySE(SE_SELECT);
sub_81337E4(gUnknown_203B118->unk_04, itemId);
}
sub_8131F0C(itemIndex);
sub_8133444(itemId);
}
void sub_8131E68(u8 windowId, s32 itemId, u8 y)
{
if (itemId != -2)
{
if (!itemid_is_unique(sub_809A798(POCKET_TM_CASE, itemId)))
{
ConvertIntToDecimalStringN(gStringVar1, sub_809A7B4(POCKET_TM_CASE, itemId), STR_CONV_MODE_RIGHT_ALIGN, 3);
StringExpandPlaceholders(gStringVar4, gUnknown_84162B9);
sub_81332EC(windowId, 0, gStringVar4, 0x7E, y, 0, 0, 0xFF, 1);
}
else
{
sub_81335B0(windowId, 8, y);
}
}
}
void sub_8131F0C(s32 itemIndex)
{
const u8 * str;
if (itemIndex != -2)
{
str = ItemId_GetDescription(sub_809A798(POCKET_TM_CASE, itemIndex));
}
else
{
str = gUnknown_84166E1;
}
FillWindowPixelBuffer(1, 0);
sub_81332EC(1, 2, str, 2, 3, 1, 0, 0, 0);
}
void sub_8131F64(s32 a0)
{
sub_80F6B08(2, 0, 12, 30, 8, 2 * a0 + 1);
schedule_bg_copy_tilemap_to_vram(2);
}
void sub_8131F90(u8 a0, u8 a1)
{
sub_8131FB0(ListMenuGetYCoordForPrintingArrowCursor(a0), a1);
}
void sub_8131FB0(u8 a0, u8 a1)
{
if (a1 == 0xFF)
{
FillWindowPixelRect(0, 0, 0, a0, GetFontAttribute(2, 0), GetFontAttribute(2, 1));
CopyWindowToVram(0, 2);
}
else
{
sub_81332EC(0, 2, gFameCheckerText_ListMenuCursor, 0, a0, 0, 0, 0, a1);
}
}
void sub_8132018(void)
{
gUnknown_203B118->unk_08 = AddScrollIndicatorArrowPairParametrized(2, 0xA0, 0x08, 0x58, gUnknown_203B118->unk_06 - gUnknown_203B118->unk_05 + 1, 0x6E, 0x6E, &gUnknown_203B10C.unk_0a);
}
void sub_8132054(void)
{
gUnknown_203B118->unk_0a = 1;
gUnknown_203B118->unk_08 = AddScrollIndicatorArrowPairParametrized(2, 0x98, 0x48, 0x68, 2, 0x6E, 0x6E, &gUnknown_203B118->unk_0a);
}
void sub_813208C(void)
{
if (gUnknown_203B118->unk_08 != 0xFF)
{
RemoveScrollIndicatorArrowPair(gUnknown_203B118->unk_08);
gUnknown_203B118->unk_08 = 0xFF;
}
}
void sub_81320AC(void)
{
gUnknown_203B10C.unk_08 = 0;
gUnknown_203B10C.unk_0a = 0;
}
void sub_81320BC(void)
{
struct BagPocket * pocket = &gBagPockets[POCKET_TM_CASE - 1];
u16 i;
sub_809A584(pocket->itemSlots, pocket->capacity);
gUnknown_203B118->unk_06 = 0;
for (i = 0; i < pocket->capacity; i++)
{
if (pocket->itemSlots[i].itemId == ITEM_NONE)
break;
gUnknown_203B118->unk_06++;
}
gUnknown_203B118->unk_05 = min(gUnknown_203B118->unk_06 + 1, 5);
}
void sub_8132120(void)
{
if (gUnknown_203B10C.unk_0a != 0)
{
if (gUnknown_203B10C.unk_0a + gUnknown_203B118->unk_05 > gUnknown_203B118->unk_06 + 1)
gUnknown_203B10C.unk_0a = gUnknown_203B118->unk_06 + 1 - gUnknown_203B118->unk_05;
}
if (gUnknown_203B10C.unk_0a + gUnknown_203B10C.unk_08 >= gUnknown_203B118->unk_06 + 1)
{
if (gUnknown_203B118->unk_06 + 1 < 2)
gUnknown_203B10C.unk_08 = 0;
else
gUnknown_203B10C.unk_08 = gUnknown_203B118->unk_06;
}
}
+2 -8
View File
@@ -971,14 +971,8 @@ gUnknown_2039884: @ 2039884
gUnknown_2039888: @ 2039888
.space 0x4
gUnknown_203988C: @ 203988C
.space 0x18
gUnknown_20398A4: @ 20398A4
.space 0x8
gUnknown_20398AC: @ 20398AC
.space 0x8
gBagPockets: @ 203988C
.space 0x28
gUnknown_20398B4: @ 20398B4
.space 0x4