through ScrCmd_bufferstring
This commit is contained in:
@@ -1604,7 +1604,7 @@ _080D7F9C:
|
||||
ldrh r0, [r0]
|
||||
_080D7FA0:
|
||||
mov r1, sp
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
mov r4, sp
|
||||
b _080D8382
|
||||
.align 2, 0
|
||||
@@ -2495,12 +2495,12 @@ _080D8698: .4byte gUnknown_83FD8A2
|
||||
_080D869C:
|
||||
adds r0, r2, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
b _080D86AE
|
||||
_080D86A6:
|
||||
adds r0, r2, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
_080D86AE:
|
||||
adds r5, 0x3
|
||||
_080D86B0:
|
||||
|
||||
+1
-1
@@ -3229,7 +3229,7 @@ sub_80E724C: @ 80E724C
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _080E7290 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _080E7294 @ =gSpecialVar_Result
|
||||
strh r4, [r0]
|
||||
b _080E72AA
|
||||
|
||||
+5
-5
@@ -733,7 +733,7 @@ sub_813D31C: @ 813D31C
|
||||
bl StringAppend
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r1, _0813D394 @ =gUnknown_84643B4
|
||||
adds r0, r4, 0
|
||||
bl StringAppend
|
||||
@@ -2736,7 +2736,7 @@ sub_813E37C: @ 813E37C
|
||||
bne _0813E3D8
|
||||
ldr r1, _0813E3C8 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0813E3CC @ =gStringVar4
|
||||
ldr r1, _0813E3D0 @ =gUnknown_8416374
|
||||
adds r0, r4, 0
|
||||
@@ -2815,7 +2815,7 @@ sub_813E428: @ 813E428
|
||||
bne _0813E488
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _0813E478 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0813E47C @ =gStringVar4
|
||||
ldr r1, _0813E480 @ =gUnknown_84168F1
|
||||
adds r0, r4, 0
|
||||
@@ -2855,7 +2855,7 @@ _0813E4A0:
|
||||
_0813E4A8:
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _0813E4D4 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0813E4D8 @ =gStringVar4
|
||||
ldr r1, _0813E4DC @ =gUnknown_8416911
|
||||
adds r0, r4, 0
|
||||
@@ -3188,7 +3188,7 @@ sub_813E768: @ 813E768
|
||||
ldr r0, _0813E7D8 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _0813E7DC @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r6, _0813E7E0 @ =gStringVar3
|
||||
ldrh r1, [r4, 0x2]
|
||||
movs r0, 0x5
|
||||
|
||||
@@ -3267,7 +3267,7 @@ TV_PrintIntToStringVar: @ 80CBED4
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
adds r0, r5, 0
|
||||
bl sub_80CBF04
|
||||
bl CountDigits
|
||||
adds r3, r0, 0
|
||||
ldr r0, _080CBF00 @ =gUnknown_83F5AF8
|
||||
lsls r4, 2
|
||||
@@ -3285,8 +3285,8 @@ TV_PrintIntToStringVar: @ 80CBED4
|
||||
_080CBF00: .4byte gUnknown_83F5AF8
|
||||
thumb_func_end TV_PrintIntToStringVar
|
||||
|
||||
thumb_func_start sub_80CBF04
|
||||
sub_80CBF04: @ 80CBF04
|
||||
thumb_func_start CountDigits
|
||||
CountDigits: @ 80CBF04
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0xA
|
||||
@@ -3366,7 +3366,7 @@ _080CBF9A:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_80CBF04
|
||||
thumb_func_end CountDigits
|
||||
|
||||
thumb_func_start sub_80CBFA0
|
||||
sub_80CBFA0: @ 80CBFA0
|
||||
|
||||
+3
-3
@@ -149,8 +149,8 @@ _08099E88: .4byte gSaveBlock1Ptr
|
||||
_08099E8C: .4byte 0x0000054c
|
||||
thumb_func_end sub_8099E44
|
||||
|
||||
thumb_func_start sub_8099E90
|
||||
sub_8099E90: @ 8099E90
|
||||
thumb_func_start CopyItemName
|
||||
CopyItemName: @ 8099E90
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
lsls r0, 16
|
||||
@@ -177,7 +177,7 @@ _08099EC4:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8099E90
|
||||
thumb_func_end CopyItemName
|
||||
|
||||
thumb_func_start sub_8099ECC
|
||||
sub_8099ECC: @ 8099ECC
|
||||
|
||||
+8
-8
@@ -3237,7 +3237,7 @@ sub_810971C: @ 810971C
|
||||
lsrs r0, 16
|
||||
ldr r1, _081097D8 @ =gStringVar1
|
||||
mov r10, r1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _081097DC @ =gStringVar4
|
||||
mov r9, r0
|
||||
adds r1, r6, 0
|
||||
@@ -3725,7 +3725,7 @@ _08109AD4:
|
||||
ldr r0, _08109BA8 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _08109BAC @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r6, _08109BB0 @ =gStringVar4
|
||||
ldr r1, _08109BB4 @ =gUnknown_84162FF
|
||||
adds r0, r6, 0
|
||||
@@ -4125,7 +4125,7 @@ sub_8109EA8: @ 8109EA8
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _08109F30 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _08109F34 @ =gStringVar2
|
||||
movs r2, 0x10
|
||||
ldrsh r1, [r6, r2]
|
||||
@@ -4447,7 +4447,7 @@ sub_810A18C: @ 810A18C
|
||||
ldr r0, _0810A1BC @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _0810A1C0 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r5, _0810A1C4 @ =gStringVar4
|
||||
ldr r1, _0810A1C8 @ =gUnknown_841635E
|
||||
adds r0, r5, 0
|
||||
@@ -4969,7 +4969,7 @@ _0810A5B4:
|
||||
bne _0810A5F8
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _0810A5E8 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0810A5EC @ =gStringVar4
|
||||
ldr r1, _0810A5F0 @ =gUnknown_84168F1
|
||||
adds r0, r4, 0
|
||||
@@ -5007,7 +5007,7 @@ _0810A610:
|
||||
_0810A618:
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _0810A644 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0810A648 @ =gStringVar4
|
||||
ldr r1, _0810A64C @ =gUnknown_8416911
|
||||
adds r0, r4, 0
|
||||
@@ -5397,7 +5397,7 @@ sub_810A940: @ 810A940
|
||||
ldr r0, _0810A9B8 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _0810A9BC @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r6, _0810A9C0 @ =gStringVar3
|
||||
ldr r0, _0810A9C4 @ =gUnknown_203ACFC
|
||||
ldrb r0, [r0, 0x6]
|
||||
@@ -5756,7 +5756,7 @@ sub_810AC40: @ 810AC40
|
||||
bl sub_80A2294
|
||||
ldrh r0, [r5]
|
||||
ldr r1, _0810ACD8 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _0810ACDC @ =gStringVar2
|
||||
movs r2, 0x10
|
||||
ldrsh r1, [r7, r2]
|
||||
|
||||
+3
-3
@@ -1886,7 +1886,7 @@ sub_810E274: @ 810E274
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0810E348 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r6, _0810E34C @ =gStringVar4
|
||||
ldr r1, _0810E350 @ =gUnknown_84162FF
|
||||
adds r0, r6, 0
|
||||
@@ -2048,7 +2048,7 @@ sub_810E418: @ 810E418
|
||||
bl sub_80A2294
|
||||
ldr r1, _0810E4A4 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _0810E4A8 @ =gStringVar2
|
||||
movs r2, 0x10
|
||||
ldrsh r1, [r5, r2]
|
||||
@@ -2241,7 +2241,7 @@ sub_810E5E0: @ 810E5E0
|
||||
lsrs r0, 16
|
||||
ldr r6, _0810E660 @ =gStringVar1
|
||||
adds r1, r6, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r5, _0810E664 @ =gStringVar4
|
||||
ldr r1, _0810E668 @ =gUnknown_84177AC
|
||||
adds r0, r5, 0
|
||||
|
||||
+3
-3
@@ -1374,7 +1374,7 @@ sub_80A1A44: @ 80A1A44
|
||||
bl sub_81089F4
|
||||
ldrh r0, [r4]
|
||||
ldr r1, _080A1A88 @ =gStringVar2
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _080A1A8C @ =gStringVar4
|
||||
ldr r1, _080A1A90 @ =gUnknown_841658C
|
||||
bl StringExpandPlaceholders
|
||||
@@ -1409,7 +1409,7 @@ sub_80A1A94: @ 80A1A94
|
||||
bl FlagClear
|
||||
ldrh r0, [r5]
|
||||
ldr r1, _080A1AE4 @ =gStringVar2
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _080A1AE8 @ =gStringVar4
|
||||
ldr r1, _080A1AEC @ =gUnknown_84165D2
|
||||
bl StringExpandPlaceholders
|
||||
@@ -1435,7 +1435,7 @@ _080A1AF4:
|
||||
bl FlagClear
|
||||
ldrh r0, [r5]
|
||||
ldr r1, _080A1B34 @ =gStringVar2
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _080A1B38 @ =gStringVar4
|
||||
ldr r1, _080A1B3C @ =gUnknown_8416600
|
||||
bl StringExpandPlaceholders
|
||||
|
||||
+1
-1
@@ -72,7 +72,7 @@ sub_8054C48: @ 8054C48
|
||||
bl sub_8054C04
|
||||
adds r4, r0, 0
|
||||
ldr r5, _08054C6C @ =gStringVar1
|
||||
bl sub_80CBF04
|
||||
bl CountDigits
|
||||
adds r3, r0, 0
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
|
||||
+5
-5
@@ -3383,7 +3383,7 @@ _08120468:
|
||||
bl GetMonNickname
|
||||
ldr r1, _081204A0 @ =gStringVar2
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _081204A4 @ =gStringVar4
|
||||
ldr r1, _081204A8 @ =gUnknown_8416C2A
|
||||
adds r0, r4, 0
|
||||
@@ -3424,7 +3424,7 @@ sub_81204AC: @ 81204AC
|
||||
bl GetMonNickname
|
||||
ldr r1, _08120500 @ =gStringVar2
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _08120504 @ =gStringVar4
|
||||
ldr r1, _08120508 @ =gUnknown_8416CAC
|
||||
adds r0, r4, 0
|
||||
@@ -3458,7 +3458,7 @@ sub_812050C: @ 812050C
|
||||
bl GetMonNickname
|
||||
ldr r1, _0812054C @ =gStringVar2
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _08120550 @ =gStringVar4
|
||||
ldr r1, _08120554 @ =gUnknown_8416C49
|
||||
adds r0, r4, 0
|
||||
@@ -3502,10 +3502,10 @@ sub_8120558: @ 8120558
|
||||
bl sub_8124B60
|
||||
ldr r1, _081205B8 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r1, _081205BC @ =gStringVar2
|
||||
adds r0, r5, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _081205C0 @ =gStringVar4
|
||||
ldr r1, _081205C4 @ =gUnknown_8416CEA
|
||||
adds r0, r4, 0
|
||||
|
||||
@@ -3587,7 +3587,7 @@ _08136338:
|
||||
ldr r1, [r6]
|
||||
ldr r2, _0813634C @ =0x00003074
|
||||
adds r1, r2
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
_08136342:
|
||||
add sp, 0x14
|
||||
pop {r4-r7}
|
||||
|
||||
-355
@@ -5,361 +5,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ScrCmd_vmessage
|
||||
ScrCmd_vmessage: @ 806BC6C
|
||||
push {lr}
|
||||
bl ScriptReadWord
|
||||
ldr r1, _0806BC84 @ =gVScriptOffset
|
||||
ldr r1, [r1]
|
||||
subs r0, r1
|
||||
bl ShowFieldMessage
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BC84: .4byte gVScriptOffset
|
||||
thumb_func_end ScrCmd_vmessage
|
||||
|
||||
thumb_func_start ScrCmd_bufferspeciesname
|
||||
ScrCmd_bufferspeciesname: @ 806BC88
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0806BCC0 @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r1
|
||||
ldr r2, [r4]
|
||||
movs r1, 0xB
|
||||
muls r1, r0
|
||||
ldr r0, _0806BCC4 @ =gSpeciesNames
|
||||
adds r1, r0
|
||||
adds r0, r2, 0
|
||||
bl StringCopy
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BCC0: .4byte sScriptStringVars
|
||||
_0806BCC4: .4byte gSpeciesNames
|
||||
thumb_func_end ScrCmd_bufferspeciesname
|
||||
|
||||
thumb_func_start ScrCmd_bufferleadmonspeciesname
|
||||
ScrCmd_bufferleadmonspeciesname: @ 806BCC8
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r2, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
ldr r0, _0806BD08 @ =sScriptStringVars
|
||||
lsls r2, 2
|
||||
adds r2, r0
|
||||
ldr r4, [r2]
|
||||
bl GetLeadMonIndex
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x64
|
||||
muls r0, r1
|
||||
ldr r1, _0806BD0C @ =gPlayerParty
|
||||
adds r0, r1
|
||||
movs r1, 0xB
|
||||
movs r2, 0
|
||||
bl GetMonData
|
||||
movs r1, 0xB
|
||||
muls r1, r0
|
||||
ldr r0, _0806BD10 @ =gSpeciesNames
|
||||
adds r1, r0
|
||||
adds r0, r4, 0
|
||||
bl StringCopy
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BD08: .4byte sScriptStringVars
|
||||
_0806BD0C: .4byte gPlayerParty
|
||||
_0806BD10: .4byte gSpeciesNames
|
||||
thumb_func_end ScrCmd_bufferleadmonspeciesname
|
||||
|
||||
thumb_func_start ScrCmd_bufferpartymonnick
|
||||
ScrCmd_bufferpartymonnick: @ 806BD14
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x64
|
||||
muls r0, r1
|
||||
ldr r1, _0806BD54 @ =gPlayerParty
|
||||
adds r0, r1
|
||||
ldr r1, _0806BD58 @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r1
|
||||
ldr r4, [r4]
|
||||
movs r1, 0x2
|
||||
adds r2, r4, 0
|
||||
bl GetMonData
|
||||
adds r0, r4, 0
|
||||
bl StringGetEnd10
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BD54: .4byte gPlayerParty
|
||||
_0806BD58: .4byte sScriptStringVars
|
||||
thumb_func_end ScrCmd_bufferpartymonnick
|
||||
|
||||
thumb_func_start ScrCmd_bufferitemname
|
||||
ScrCmd_bufferitemname: @ 806BD5C
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0806BD8C @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r1
|
||||
ldr r1, [r4]
|
||||
bl sub_8099E90
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BD8C: .4byte sScriptStringVars
|
||||
thumb_func_end ScrCmd_bufferitemname
|
||||
|
||||
thumb_func_start ScrCmd_cmdDA
|
||||
ScrCmd_cmdDA: @ 806BD90
|
||||
push {r4-r7,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r4, 0x8]
|
||||
ldrb r7, [r0]
|
||||
adds r0, 0x1
|
||||
str r0, [r4, 0x8]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r6, r0, 16
|
||||
ldr r1, _0806BDE4 @ =sScriptStringVars
|
||||
lsls r0, r7, 2
|
||||
adds r0, r1
|
||||
ldr r4, [r0]
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
bl sub_8099E90
|
||||
cmp r5, 0x4
|
||||
bne _0806BDEC
|
||||
cmp r6, 0x1
|
||||
bls _0806BDEC
|
||||
ldr r1, _0806BDE8 @ =gUnknown_83A72A0
|
||||
adds r0, r4, 0
|
||||
bl StringAppend
|
||||
b _0806BE22
|
||||
.align 2, 0
|
||||
_0806BDE4: .4byte sScriptStringVars
|
||||
_0806BDE8: .4byte gUnknown_83A72A0
|
||||
_0806BDEC:
|
||||
adds r0, r5, 0
|
||||
subs r0, 0x85
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, 0x29
|
||||
bhi _0806BE22
|
||||
cmp r6, 0x1
|
||||
bls _0806BE22
|
||||
ldr r0, _0806BE2C @ =sScriptStringVars
|
||||
lsls r1, r7, 2
|
||||
adds r1, r0
|
||||
ldr r4, [r1]
|
||||
adds r0, r4, 0
|
||||
bl StringLength
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, 0
|
||||
beq _0806BE22
|
||||
adds r0, r4, r0
|
||||
subs r0, 0x1
|
||||
movs r1, 0xFF
|
||||
strb r1, [r0]
|
||||
ldr r1, _0806BE30 @ =gUnknown_83A72A2
|
||||
adds r0, r4, 0
|
||||
bl StringAppend
|
||||
_0806BE22:
|
||||
movs r0, 0
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BE2C: .4byte sScriptStringVars
|
||||
_0806BE30: .4byte gUnknown_83A72A2
|
||||
thumb_func_end ScrCmd_cmdDA
|
||||
|
||||
thumb_func_start ScrCmd_bufferdecorationname
|
||||
ScrCmd_bufferdecorationname: @ 806BE34
|
||||
push {lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
movs r0, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end ScrCmd_bufferdecorationname
|
||||
|
||||
thumb_func_start ScrCmd_buffermovename
|
||||
ScrCmd_buffermovename: @ 806BE50
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0806BE88 @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r1
|
||||
ldr r2, [r4]
|
||||
movs r1, 0xD
|
||||
muls r1, r0
|
||||
ldr r0, _0806BE8C @ =gMoveNames
|
||||
adds r1, r0
|
||||
adds r0, r2, 0
|
||||
bl StringCopy
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BE88: .4byte sScriptStringVars
|
||||
_0806BE8C: .4byte gMoveNames
|
||||
thumb_func_end ScrCmd_buffermovename
|
||||
|
||||
thumb_func_start ScrCmd_buffernumberstring
|
||||
ScrCmd_buffernumberstring: @ 806BE90
|
||||
push {r4,r5,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r5, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r4, 0
|
||||
bl sub_80CBF04
|
||||
adds r3, r0, 0
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
ldr r0, _0806BED0 @ =sScriptStringVars
|
||||
lsls r5, 2
|
||||
adds r5, r0
|
||||
ldr r0, [r5]
|
||||
adds r1, r4, 0
|
||||
movs r2, 0
|
||||
bl ConvertIntToDecimalStringN
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BED0: .4byte sScriptStringVars
|
||||
thumb_func_end ScrCmd_buffernumberstring
|
||||
|
||||
thumb_func_start ScrCmd_bufferstdstring
|
||||
ScrCmd_bufferstdstring: @ 806BED4
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl VarGet
|
||||
lsls r0, 16
|
||||
ldr r1, _0806BF0C @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r1
|
||||
ldr r2, [r4]
|
||||
ldr r1, _0806BF10 @ =gUnknown_83E06B8
|
||||
lsrs r0, 14
|
||||
adds r0, r1
|
||||
ldr r1, [r0]
|
||||
adds r0, r2, 0
|
||||
bl StringCopy
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BF0C: .4byte sScriptStringVars
|
||||
_0806BF10: .4byte gUnknown_83E06B8
|
||||
thumb_func_end ScrCmd_bufferstdstring
|
||||
|
||||
thumb_func_start ScrCmd_bufferstring
|
||||
ScrCmd_bufferstring: @ 806BF14
|
||||
push {r4,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadWord
|
||||
adds r1, r0, 0
|
||||
ldr r0, _0806BF38 @ =sScriptStringVars
|
||||
lsls r4, 2
|
||||
adds r4, r0
|
||||
ldr r0, [r4]
|
||||
bl StringCopy
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0806BF38: .4byte sScriptStringVars
|
||||
thumb_func_end ScrCmd_bufferstring
|
||||
|
||||
thumb_func_start ScrCmd_vloadword
|
||||
ScrCmd_vloadword: @ 806BF3C
|
||||
push {lr}
|
||||
|
||||
+3
-3
@@ -1023,7 +1023,7 @@ sub_809B300: @ 809B300
|
||||
lsrs r5, 16
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
str r6, [r4]
|
||||
str r5, [r4, 0x4]
|
||||
pop {r4-r6}
|
||||
@@ -2232,7 +2232,7 @@ _0809BC78: .4byte sub_809BF98
|
||||
_0809BC7C:
|
||||
ldr r1, _0809BC94 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r1, _0809BC98 @ =gUnknown_8416766
|
||||
ldr r2, _0809BC9C @ =sub_809BCA0
|
||||
adds r0, r6, 0
|
||||
@@ -2408,7 +2408,7 @@ _0809BDD4:
|
||||
bl PutWindowTilemap
|
||||
ldrh r0, [r4, 0xA]
|
||||
ldr r1, _0809BE40 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, _0809BE44 @ =gStringVar2
|
||||
movs r2, 0x2
|
||||
ldrsh r1, [r4, r2]
|
||||
|
||||
+4
-4
@@ -1855,7 +1855,7 @@ sub_8132714: @ 8132714
|
||||
ldr r0, _08132744 @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _08132748 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r5, _0813274C @ =gStringVar4
|
||||
ldr r1, _08132750 @ =gUnknown_841635E
|
||||
adds r0, r5, 0
|
||||
@@ -2093,7 +2093,7 @@ sub_8132908: @ 8132908
|
||||
bne _08132968
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _08132958 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _0813295C @ =gStringVar4
|
||||
ldr r1, _08132960 @ =gUnknown_84168F1
|
||||
adds r0, r4, 0
|
||||
@@ -2133,7 +2133,7 @@ _08132980:
|
||||
_08132988:
|
||||
ldrh r0, [r6]
|
||||
ldr r1, _081329B4 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r4, _081329B8 @ =gStringVar4
|
||||
ldr r1, _081329BC @ =gUnknown_8416911
|
||||
adds r0, r4, 0
|
||||
@@ -2506,7 +2506,7 @@ sub_8132CAC: @ 8132CAC
|
||||
ldr r0, _08132D1C @ =gSpecialVar_ItemId
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _08132D20 @ =gStringVar1
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r6, _08132D24 @ =gStringVar3
|
||||
ldrh r1, [r4, 0x2]
|
||||
movs r0, 0x4
|
||||
|
||||
+3
-3
@@ -5613,7 +5613,7 @@ sub_814A468: @ 814A468
|
||||
ldr r1, [r5]
|
||||
adds r1, 0x26
|
||||
adds r0, r4, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
ldr r0, [r5]
|
||||
adds r0, 0x66
|
||||
adds r1, r6, 0
|
||||
@@ -5705,7 +5705,7 @@ sub_814A53C: @ 814A53C
|
||||
ldr r4, _0814A5AC @ =gUnknown_203F3D8
|
||||
ldr r1, [r4]
|
||||
adds r1, 0x26
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
bl UnkTextUtil_Reset
|
||||
ldr r1, [r4]
|
||||
adds r1, 0x26
|
||||
@@ -5760,7 +5760,7 @@ sub_814A5B4: @ 814A5B4
|
||||
ldr r4, _0814A624 @ =gUnknown_203F3D8
|
||||
ldr r1, [r4]
|
||||
adds r1, 0x26
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
bl UnkTextUtil_Reset
|
||||
ldr r1, [r4]
|
||||
adds r1, 0x26
|
||||
|
||||
+2
-2
@@ -9989,7 +9989,7 @@ _08155480:
|
||||
lsrs r0, 16
|
||||
add r5, sp, 0x70
|
||||
adds r1, r5, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
movs r0, 0
|
||||
adds r1, r5, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
@@ -10021,7 +10021,7 @@ _08155480:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
adds r1, r5, 0
|
||||
bl sub_8099E90
|
||||
bl CopyItemName
|
||||
movs r0, 0
|
||||
adds r1, r5, 0
|
||||
bl UnkTextUtil_SetPtrI
|
||||
|
||||
+1
-1
@@ -1547,7 +1547,7 @@ gUnknown_83DFC9C:: @ 83DFC9C
|
||||
gUnknown_83E04B0:: @ 83E04B0
|
||||
.incbin "baserom.gba", 0x3E04B0, 0x208
|
||||
|
||||
gUnknown_83E06B8:: @ 83E06B8
|
||||
gStdStringPtrs:: @ 83E06B8
|
||||
.incbin "baserom.gba", 0x3E06B8, 0x74
|
||||
|
||||
gUnknown_83E072C:: @ 83E072C
|
||||
|
||||
@@ -213,7 +213,7 @@ gScriptCmdTable:: @ 815F9B4
|
||||
.4byte ScrCmd_warpD1
|
||||
.4byte ScrCmd_setmonmetlocation
|
||||
.4byte ScrCmd_getbraillestringwidth
|
||||
.4byte ScrCmd_cmdDA
|
||||
.4byte ScrCmd_bufferitemnameplural
|
||||
|
||||
gScriptCmdTableEnd:: @ 815FD08
|
||||
.4byte ScrCmd_nop
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "global.h"
|
||||
|
||||
u8 GetLeadMonIndex(void);
|
||||
u8 CountDigits(u16 number);
|
||||
void TV_PrintIntToStringVar(u8, int);
|
||||
|
||||
#endif // GUARD_FIELD_SPECIALS_H
|
||||
|
||||
+1
-1
@@ -62,7 +62,7 @@ u8 ItemId_GetSecondaryId(u16 itemId);
|
||||
u16 itemid_get_market_price(u16 itemId);
|
||||
void sub_809A2DC(void);
|
||||
void sub_809A2A4(void);
|
||||
void sub_8099E90(u16, u8 *);
|
||||
void CopyItemName(u16, u8 *);
|
||||
void sub_809A824(u16 itemId);
|
||||
bool8 AddBagItem(u16 itemId, u16 amount);
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
extern const u8 *const gUnknown_0858BAF0[9];
|
||||
extern const u8 *const gStdStringPtrs[9];
|
||||
|
||||
bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 var3, u8 var4);
|
||||
bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 var3, u8 var4, u8 var5);
|
||||
|
||||
+2
-2
@@ -4312,7 +4312,7 @@ u16 * sub_8114C68(u16 * a0, const u16 * a1)
|
||||
const u16 * sub_8114C8C(const u16 * a0)
|
||||
{
|
||||
const u16 *r4 = sub_8113E88(28, a0);
|
||||
sub_8099E90(r4[0], gStringVar1);
|
||||
CopyItemName(r4[0], gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841A391);
|
||||
return r4 + 1;
|
||||
}
|
||||
@@ -4329,7 +4329,7 @@ u16 * sub_8114CC0(u16 * a0, const u16 * a1)
|
||||
const u16 * sub_8114CE4(const u16 * a0)
|
||||
{
|
||||
const u16 *r4 = sub_8113E88(29, a0);
|
||||
sub_8099E90(r4[0], gStringVar1);
|
||||
CopyItemName(r4[0], gStringVar1);
|
||||
StringExpandPlaceholders(gStringVar4, gUnknown_841A3DA);
|
||||
return r4 + 1;
|
||||
}
|
||||
|
||||
+141
-7
@@ -24,6 +24,10 @@
|
||||
#include "window.h"
|
||||
#include "start_menu.h"
|
||||
#include "script_menu.h"
|
||||
#include "string_util.h"
|
||||
#include "data2.h"
|
||||
#include "field_specials.h"
|
||||
#include "constants/items.h"
|
||||
|
||||
extern u16 (*const gSpecials[])(void);
|
||||
extern u16 (*const gSpecialsEnd[])(void);
|
||||
@@ -341,13 +345,6 @@ SCRCMD_DEF(setorcopyvar)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
u8 * const sScriptStringVars[] =
|
||||
{
|
||||
gStringVar1,
|
||||
gStringVar2,
|
||||
gStringVar3,
|
||||
};
|
||||
|
||||
u8 compare_012(u16 left, u16 right)
|
||||
{
|
||||
if (left < right)
|
||||
@@ -1575,3 +1572,140 @@ SCRCMD_DEF(getbraillestringwidth)
|
||||
gSpecialVar_0x8004 = GetStringWidth(6, ptr, -1);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
SCRCMD_DEF(vmessage)
|
||||
{
|
||||
u32 v1 = ScriptReadWord(ctx);
|
||||
|
||||
ShowFieldMessage((u8 *)(v1 - gVScriptOffset));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
u8 * const sScriptStringVars[] =
|
||||
{
|
||||
gStringVar1,
|
||||
gStringVar2,
|
||||
gStringVar3,
|
||||
};
|
||||
|
||||
bool8 ScrCmd_bufferspeciesname(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 species = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
StringCopy(sScriptStringVars[stringVarIndex], gSpeciesNames[species]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_bufferleadmonspeciesname(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
|
||||
u8 *dest = sScriptStringVars[stringVarIndex];
|
||||
u8 partyIndex = GetLeadMonIndex();
|
||||
u32 species = GetMonData(&gPlayerParty[partyIndex], MON_DATA_SPECIES, NULL);
|
||||
StringCopy(dest, gSpeciesNames[species]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_bufferpartymonnick(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 partyIndex = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
GetMonData(&gPlayerParty[partyIndex], MON_DATA_NICKNAME, sScriptStringVars[stringVarIndex]);
|
||||
StringGetEnd10(sScriptStringVars[stringVarIndex]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_bufferitemname(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
CopyItemName(itemId, sScriptStringVars[stringVarIndex]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
extern const u8 gUnknown_83A72A0[];
|
||||
extern const u8 gUnknown_83A72A2[];
|
||||
|
||||
bool8 ScrCmd_bufferitemnameplural(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 itemId = VarGet(ScriptReadHalfword(ctx));
|
||||
u16 quantity = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
CopyItemName(itemId, sScriptStringVars[stringVarIndex]);
|
||||
if (itemId == ITEM_POKE_BALL && quantity >= 2)
|
||||
StringAppend(sScriptStringVars[stringVarIndex], gUnknown_83A72A0);
|
||||
else if (itemId >= ITEM_CHERI_BERRY && itemId < ITEM_ENIGMA_BERRY && quantity >= 2)
|
||||
{
|
||||
u16 strlength = StringLength(sScriptStringVars[stringVarIndex]);
|
||||
if (strlength != 0)
|
||||
{
|
||||
u8 * endptr = sScriptStringVars[stringVarIndex] + strlength;
|
||||
endptr[-1] = EOS;
|
||||
StringAppend(sScriptStringVars[stringVarIndex], gUnknown_83A72A2);
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_bufferdecorationname(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 decorId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
// StringCopy(sScriptStringVars[stringVarIndex], gDecorations[decorId].name);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_buffermovename(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 moveId = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
StringCopy(sScriptStringVars[stringVarIndex], gMoveNames[moveId]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_buffernumberstring(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 v1 = VarGet(ScriptReadHalfword(ctx));
|
||||
u8 v2 = CountDigits(v1);
|
||||
|
||||
ConvertIntToDecimalStringN(sScriptStringVars[stringVarIndex], v1, 0, v2);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
bool8 ScrCmd_bufferstdstring(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 index = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
StringCopy(sScriptStringVars[stringVarIndex], gStdStringPtrs[index]);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
bool8 ScrCmd_buffercontesttype(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
u16 index = VarGet(ScriptReadHalfword(ctx));
|
||||
|
||||
sub_818E868(sScriptStringVars[stringVarIndex], index);
|
||||
return FALSE;
|
||||
}
|
||||
*/
|
||||
|
||||
bool8 ScrCmd_bufferstring(struct ScriptContext *ctx)
|
||||
{
|
||||
u8 stringVarIndex = ScriptReadByte(ctx);
|
||||
const u8 *text = (u8 *)ScriptReadWord(ctx);
|
||||
|
||||
StringCopy(sScriptStringVars[stringVarIndex], text);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
+1
-1
@@ -821,7 +821,7 @@ void sub_815E408(void)
|
||||
gSpecialVar_Result = 2;
|
||||
else if (AddBagItem(itemId, 1) == 1)
|
||||
{
|
||||
sub_8099E90(itemId, gStringVar2);
|
||||
CopyItemName(itemId, gStringVar2);
|
||||
gSaveBlock1Ptr->unkArray[gSaveBlock1Ptr->unkArrayIdx].unkA_0 = TRUE;
|
||||
gSpecialVar_Result = 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user