diff options
author | PikalaxALT <PikalaxALT@users.noreply.github.com> | 2019-01-03 21:05:13 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-03 21:05:13 -0500 |
commit | 3a4f44ef36c1f0eb6a25bd86234cb94ef73a0c59 (patch) | |
tree | 3fdb692dd75014069d0ec086568844b570098bf2 /asm | |
parent | 84e22a9ecf52bb73993feadce91524355f1bb70f (diff) | |
parent | 1de4e55185f4f3e6e5f59541236abc10b69d51aa (diff) |
Merge pull request #36 from PikalaxALT/trainer_tower
Trainer tower (phase 1)
Diffstat (limited to 'asm')
-rw-r--r-- | asm/region_map.s | 4 | ||||
-rw-r--r-- | asm/trainer_tower.s | 1146 |
2 files changed, 2 insertions, 1148 deletions
diff --git a/asm/region_map.s b/asm/region_map.s index f860c6065..168ca47c3 100644 --- a/asm/region_map.s +++ b/asm/region_map.s @@ -9706,11 +9706,11 @@ sub_80C4D78: @ 80C4D78 bl sub_80C4D40 cmp r0, 0x1 bne _080C4DA4 - ldr r1, _080C4DA0 @ =gUnknown_83EF22E + ldr r1, _080C4DA0 @ =gMapSecName_CeladonDept b _080C4DAC .align 2, 0 _080C4D9C: .4byte 0xffa80000 -_080C4DA0: .4byte gUnknown_83EF22E +_080C4DA0: .4byte gMapSecName_CeladonDept _080C4DA4: ldr r0, _080C4DB8 @ =gUnknown_83F1CAC lsls r1, r5, 2 diff --git a/asm/trainer_tower.s b/asm/trainer_tower.s index 5b65927d5..c1da74a98 100644 --- a/asm/trainer_tower.s +++ b/asm/trainer_tower.s @@ -5,1152 +5,6 @@ .text - thumb_func_start sub_815D7BC -sub_815D7BC: @ 815D7BC - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0x1E - bl TryCopySpecialSaveSection - cmp r0, 0x1 - bne _0815D804 - ldr r2, _0815D800 @ =0x00000f88 - adds r0, r5, 0 - adds r1, r4, 0 - bl memcpy - movs r0, 0x1F - adds r1, r4, 0 - bl TryCopySpecialSaveSection - cmp r0, 0x1 - bne _0815D804 - ldr r1, _0815D800 @ =0x00000f88 - adds r0, r5, r1 - movs r2, 0xF8 - lsls r2, 4 - adds r1, r4, 0 - bl memcpy - adds r0, r5, 0 - bl sub_815D6B4 - cmp r0, 0 - beq _0815D804 - movs r0, 0x1 - b _0815D806 - .align 2, 0 -_0815D800: .4byte 0x00000f88 -_0815D804: - movs r0, 0 -_0815D806: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_815D7BC - - thumb_func_start sub_815D80C -sub_815D80C: @ 815D80C - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0x80 - lsls r0, 5 - bl AllocZeroed - adds r5, r0, 0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_815D7BC - adds r4, r0, 0 - adds r0, r5, 0 - bl Free - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_815D80C - - thumb_func_start sub_815D834 -sub_815D834: @ 815D834 - movs r0, 0 - bx lr - thumb_func_end sub_815D834 - - thumb_func_start sub_815D838 -sub_815D838: @ 815D838 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r2, 0 - ldr r0, _0815D8C0 @ =gUnknown_8479D38 - mov r10, r0 - movs r1, 0xFA - lsls r1, 2 - adds r5, r1, 0 -_0815D84E: - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r1, r0, 0 - add r1, r10 - mov r8, r1 - mov r1, r10 - adds r1, 0x8 - adds r7, r0, r1 - ldr r1, _0815D8C4 @ =gUnknown_8479D48 - adds r6, r0, r1 - movs r4, 0 - adds r2, 0x1 - mov r9, r2 -_0815D86A: - mov r0, r8 - adds r1, r0, r4 - ldrb r0, [r1] - cmp r0, 0xFF - beq _0815D87C - ldrb r1, [r1] - adds r0, r5, r1 - bl FlagSet -_0815D87C: - adds r1, r7, r4 - ldrb r0, [r1] - cmp r0, 0xFF - beq _0815D88C - ldrb r1, [r1] - adds r0, r5, r1 - bl FlagSet -_0815D88C: - adds r1, r6, r4 - ldrb r0, [r1] - cmp r0, 0xFF - beq _0815D89C - ldrb r1, [r1] - adds r0, r5, r1 - bl FlagSet -_0815D89C: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _0815D86A - mov r1, r9 - lsls r0, r1, 24 - lsrs r2, r0, 24 - cmp r2, 0xE - bls _0815D84E - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0815D8C0: .4byte gUnknown_8479D38 -_0815D8C4: .4byte gUnknown_8479D48 - thumb_func_end sub_815D838 - - thumb_func_start sub_815D8C8 -sub_815D8C8: @ 815D8C8 - push {r4,lr} - ldr r4, _0815D8F0 @ =0x00004023 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _0815D8F4 @ =0x000005db - cmp r1, r0 - bhi _0815D8E8 - adds r1, 0x1 - lsls r1, 16 - lsrs r1, 16 - adds r0, r4, 0 - bl VarSet -_0815D8E8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0815D8F0: .4byte 0x00004023 -_0815D8F4: .4byte 0x000005db - thumb_func_end sub_815D8C8 - - thumb_func_start sub_815D8F8 -sub_815D8F8: @ 815D8F8 - push {r4-r6,lr} - movs r4, 0xFF - movs r2, 0 - ldr r6, _0815D95C @ =gUnknown_8479D34 - ldr r0, _0815D960 @ =gSaveBlock1Ptr - ldr r3, [r0] - movs r5, 0x4 - ldrsb r5, [r3, r5] -_0815D908: - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r1, r0, r6 - movs r0, 0 - ldrsb r0, [r1, r0] - cmp r0, r5 - bne _0815D928 - ldrb r1, [r1, 0x1] - lsls r1, 24 - asrs r1, 24 - movs r0, 0x5 - ldrsb r0, [r3, r0] - cmp r1, r0 - bne _0815D928 - adds r4, r2, 0 -_0815D928: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xE - bls _0815D908 - cmp r4, 0xFF - beq _0815D956 - ldr r4, _0815D964 @ =0x00004023 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - ldr r1, _0815D968 @ =0x05db0000 - cmp r0, r1 - bls _0815D956 - adds r0, r4, 0 - movs r1, 0 - bl VarSet - bl sub_815D838 - bl sub_815D96C -_0815D956: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0815D95C: .4byte gUnknown_8479D34 -_0815D960: .4byte gSaveBlock1Ptr -_0815D964: .4byte 0x00004023 -_0815D968: .4byte 0x05db0000 - thumb_func_end sub_815D8F8 - - thumb_func_start sub_815D96C -sub_815D96C: @ 815D96C - push {r4-r6,lr} - movs r6, 0 -_0815D970: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x64 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x59 - bls _0815D994 - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r1, _0815D990 @ =gUnknown_8479D38 - b _0815D9B0 - .align 2, 0 -_0815D990: .4byte gUnknown_8479D38 -_0815D994: - cmp r0, 0x3B - bls _0815D9A8 - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r1, _0815D9A4 @ =gUnknown_8479D40 - b _0815D9B0 - .align 2, 0 -_0815D9A4: .4byte gUnknown_8479D40 -_0815D9A8: - lsls r0, r6, 3 - subs r0, r6 - lsls r0, 2 - ldr r1, _0815D9E4 @ =gUnknown_8479D48 -_0815D9B0: - adds r5, r0, r1 - movs r4, 0 - adds r6, 0x1 -_0815D9B6: - adds r1, r5, r4 - ldrb r0, [r1] - cmp r0, 0xFF - beq _0815D9CC - movs r2, 0xFA - lsls r2, 2 - adds r0, r2, 0 - ldrb r1, [r1] - adds r0, r1 - bl FlagClear -_0815D9CC: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x7 - bls _0815D9B6 - lsls r0, r6, 24 - lsrs r6, r0, 24 - cmp r6, 0xE - bls _0815D970 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0815D9E4: .4byte gUnknown_8479D48 - thumb_func_end sub_815D96C - - thumb_func_start sub_815D9E8 -sub_815D9E8: @ 815D9E8 - push {lr} - bl sub_815DC8C - ldr r1, _0815DA08 @ =gUnknown_847A230 - ldr r0, _0815DA0C @ =gSpecialVar_0x8004 - ldrh r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl _call_via_r0 - bl sub_815DD2C - pop {r0} - bx r0 - .align 2, 0 -_0815DA08: .4byte gUnknown_847A230 -_0815DA0C: .4byte gSpecialVar_0x8004 - thumb_func_end sub_815D9E8 - - thumb_func_start sub_815DA10 -sub_815DA10: @ 815DA10 - ldr r1, _0815DA20 @ =gFacilityClassToTrainerClass - ldr r0, _0815DA24 @ =gUnknown_203F45C - ldr r0, [r0] - adds r0, 0x3D - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0815DA20: .4byte gFacilityClassToTrainerClass -_0815DA24: .4byte gUnknown_203F45C - thumb_func_end sub_815DA10 - - thumb_func_start sub_815DA28 -sub_815DA28: @ 815DA28 - push {lr} - ldr r1, _0815DA38 @ =gUnknown_203F45C - ldr r1, [r1] - movs r2, 0xB - bl StringCopyN - pop {r0} - bx r0 - .align 2, 0 -_0815DA38: .4byte gUnknown_203F45C - thumb_func_end sub_815DA28 - - thumb_func_start sub_815DA3C -sub_815DA3C: @ 815DA3C - ldr r1, _0815DA4C @ =gFacilityClassToPicIndex - ldr r0, _0815DA50 @ =gUnknown_203F45C - ldr r0, [r0] - adds r0, 0x3D - ldrb r0, [r0] - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0815DA4C: .4byte gFacilityClassToPicIndex -_0815DA50: .4byte gUnknown_203F45C - thumb_func_end sub_815DA3C - - thumb_func_start sub_815DA54 -sub_815DA54: @ 815DA54 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - bl sub_815DC8C - ldr r5, _0815DBC4 @ =gUnknown_203F45C - movs r0, 0x40 - bl AllocZeroed - str r0, [r5] - ldr r0, _0815DBC8 @ =0x00004001 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - mov r10, r0 - ldr r0, [r5] - ldr r1, _0815DBCC @ =gUnknown_203F458 - ldr r1, [r1] - ldrb r3, [r1] - lsls r2, r3, 5 - subs r2, r3 - lsls r2, 5 - adds r2, 0xC - adds r1, r2 - mov r2, r10 - lsls r6, r2, 2 - adds r4, r6, r2 - lsls r4, 3 - add r4, r10 - lsls r4, 3 - adds r2, r4, 0x4 - adds r1, r2 - movs r2, 0xB - bl StringCopyN - movs r0, 0 - mov r9, r0 - str r6, [sp] - mov r12, r4 - mov r1, r10 - adds r1, 0x1 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r1 - lsls r5, r0, 3 -_0815DAB8: - ldr r0, _0815DBC4 @ =gUnknown_203F45C - ldr r0, [r0] - mov r8, r0 - mov r1, r9 - lsls r4, r1, 1 - mov r2, r8 - adds r2, 0xC - adds r2, r4 - ldr r0, _0815DBCC @ =gUnknown_203F458 - ldr r3, [r0] - ldrb r1, [r3] - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 5 - add r0, r12 - adds r7, r3, 0 - adds r7, 0x2A - adds r0, r7, r0 - ldrh r0, [r0] - strh r0, [r2] - mov r2, r8 - adds r2, 0x18 - adds r2, r4 - ldrb r1, [r3] - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 5 - add r0, r12 - adds r6, r3, 0 - adds r6, 0x36 - adds r0, r6, r0 - ldrh r0, [r0] - strh r0, [r2] - ldrb r1, [r3] - lsls r0, r1, 5 - subs r0, r1 - lsls r2, r0, 5 - adds r0, r3, r2 - ldrb r0, [r0, 0xE] - cmp r0, 0x1 - bne _0815DB2E - mov r1, r8 - adds r1, 0x24 - adds r1, r4 - adds r0, r5, r2 - adds r0, r7, r0 - ldrh r0, [r0] - strh r0, [r1] - mov r2, r8 - adds r2, 0x30 - adds r2, r4 - ldrb r1, [r3] - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 5 - adds r0, r5, r0 - adds r0, r6, r0 - ldrh r0, [r0] - strh r0, [r2] -_0815DB2E: - movs r2, 0x2 - add r12, r2 - adds r5, 0x2 - movs r0, 0x1 - add r9, r0 - mov r1, r9 - cmp r1, 0x5 - ble _0815DAB8 - ldr r2, _0815DBC4 @ =gUnknown_203F45C - ldr r3, [r2] - ldr r0, _0815DBCC @ =gUnknown_203F458 - ldr r1, [r0] - ldrb r2, [r1] - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 5 - adds r1, r0 - ldrb r0, [r1, 0xE] - adds r3, 0x3C - strb r0, [r3] - ldr r1, _0815DBC4 @ =gUnknown_203F45C - ldr r4, [r1] - ldr r2, _0815DBCC @ =gUnknown_203F458 - ldr r3, [r2] - ldr r1, [sp] - add r1, r10 - lsls r1, 3 - add r1, r10 - lsls r1, 3 - ldrb r2, [r3] - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 5 - adds r0, r1, r0 - adds r3, r0 - ldrb r0, [r3, 0x1B] - adds r4, 0x3D - strb r0, [r4] - ldr r0, _0815DBC4 @ =gUnknown_203F45C - ldr r4, [r0] - ldr r2, _0815DBCC @ =gUnknown_203F458 - ldr r3, [r2] - ldrb r2, [r3] - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 5 - adds r1, r0 - adds r3, r1 - ldrb r0, [r3, 0x1C] - adds r4, 0x3E - strb r0, [r4] - ldr r0, _0815DBD0 @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r2, _0815DBD4 @ =0x00003d34 - adds r1, r0, r2 - ldr r2, [r1] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - ldr r2, _0815DBD8 @ =0x00003d38 - adds r1, r2 - adds r0, r1 - bl SetVBlankCounter1Ptr - bl sub_815DD2C - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0815DBC4: .4byte gUnknown_203F45C -_0815DBC8: .4byte 0x00004001 -_0815DBCC: .4byte gUnknown_203F458 -_0815DBD0: .4byte gSaveBlock1Ptr -_0815DBD4: .4byte 0x00003d34 -_0815DBD8: .4byte 0x00003d38 - thumb_func_end sub_815DA54 - - thumb_func_start sub_815DBDC -sub_815DBDC: @ 815DBDC - push {r4,lr} - ldr r4, _0815DBF0 @ =gUnknown_203F45C - ldr r0, [r4] - bl Free - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0815DBF0: .4byte gUnknown_203F45C - thumb_func_end sub_815DBDC - - thumb_func_start sub_815DBF4 -sub_815DBF4: @ 815DBF4 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - ldr r0, _0815DC28 @ =0x00004003 - adds r1, r4, 0 - bl VarSet - ldr r5, _0815DC2C @ =gUnknown_203F45C - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x3C - ldrb r0, [r0] - adds r1, 0x3D - ldrb r1, [r1] - bl sub_815E068 - cmp r4, 0 - bne _0815DC30 - ldr r0, [r5] - adds r0, 0xC - adds r1, r6, 0 - bl sub_815DEFC - b _0815DC3A - .align 2, 0 -_0815DC28: .4byte 0x00004003 -_0815DC2C: .4byte gUnknown_203F45C -_0815DC30: - ldr r0, [r5] - adds r0, 0x24 - adds r1, r6, 0 - bl sub_815DEFC -_0815DC3A: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_815DBF4 - - thumb_func_start sub_815DC40 -sub_815DC40: @ 815DC40 - push {r4-r6,lr} - adds r6, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - ldr r0, _0815DC74 @ =0x00004003 - adds r1, r4, 0 - bl VarSet - ldr r5, _0815DC78 @ =gUnknown_203F45C - ldr r1, [r5] - adds r0, r1, 0 - adds r0, 0x3C - ldrb r0, [r0] - adds r1, 0x3D - ldrb r1, [r1] - bl sub_815E068 - cmp r4, 0 - bne _0815DC7C - ldr r0, [r5] - adds r0, 0x18 - adds r1, r6, 0 - bl sub_815DEFC - b _0815DC86 - .align 2, 0 -_0815DC74: .4byte 0x00004003 -_0815DC78: .4byte gUnknown_203F45C -_0815DC7C: - ldr r0, [r5] - adds r0, 0x30 - adds r1, r6, 0 - bl sub_815DEFC -_0815DC86: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_815DC40 - - thumb_func_start sub_815DC8C -sub_815DC8C: @ 815DC8C - push {r4-r7,lr} - ldr r0, _0815DCBC @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _0815DCC0 @ =0x00003d34 - adds r0, r1 - ldr r5, [r0] - ldr r4, _0815DCC4 @ =gUnknown_203F458 - ldr r0, _0815DCC8 @ =0x00001f0c - bl AllocZeroed - str r0, [r4] - ldr r1, _0815DCCC @ =gMapHeader - ldrb r1, [r1, 0x12] - subs r1, 0x2A - strb r1, [r0] - bl sub_815D834 - cmp r0, 0x1 - bne _0815DCD0 - ldr r0, [r4] - adds r0, 0x4 - bl sub_815D80C - b _0815DD18 - .align 2, 0 -_0815DCBC: .4byte gSaveBlock1Ptr -_0815DCC0: .4byte 0x00003d34 -_0815DCC4: .4byte gUnknown_203F458 -_0815DCC8: .4byte 0x00001f0c -_0815DCCC: .4byte gMapHeader -_0815DCD0: - ldr r0, [r4] - ldr r1, _0815DD20 @ =gUnknown_84827AC - adds r0, 0x4 - movs r2, 0x8 - bl memcpy - lsls r1, r5, 5 - ldr r0, _0815DD24 @ =gUnknown_84827B4 - adds r7, r1, r0 - movs r5, 0 - movs r4, 0x7 -_0815DCE6: - ldr r6, _0815DD28 @ =gUnknown_203F458 - ldr r0, [r6] - adds r0, r5, r0 - adds r0, 0xC - ldm r7!, {r1} - movs r2, 0xF8 - lsls r2, 2 - bl memcpy - movs r0, 0xF8 - lsls r0, 2 - adds r5, r0 - subs r4, 0x1 - cmp r4, 0 - bge _0815DCE6 - ldr r0, [r6] - adds r0, 0xC - movs r1, 0xF8 - lsls r1, 5 - bl CalcByteArraySum - ldr r1, [r6] - str r0, [r1, 0x8] - bl sub_815EC0C -_0815DD18: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0815DD20: .4byte gUnknown_84827AC -_0815DD24: .4byte gUnknown_84827B4 -_0815DD28: .4byte gUnknown_203F458 - thumb_func_end sub_815DC8C - - thumb_func_start sub_815DD2C -sub_815DD2C: @ 815DD2C - push {r4,lr} - ldr r4, _0815DD40 @ =gUnknown_203F458 - ldr r0, [r4] - bl Free - movs r0, 0 - str r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0815DD40: .4byte gUnknown_203F458 - thumb_func_end sub_815DD2C - - thumb_func_start sub_815DD44 -sub_815DD44: @ 815DD44 - push {r4,lr} - ldr r0, _0815DD68 @ =gMapHeader - ldrh r0, [r0, 0x12] - ldr r1, _0815DD6C @ =0xfffffed7 - adds r0, r1 - ldr r1, _0815DD70 @ =gUnknown_203F458 - ldr r4, [r1] - ldrb r1, [r4, 0x4] - cmp r0, r1 - ble _0815DD78 - ldr r0, _0815DD74 @ =gSpecialVar_Result - movs r1, 0x3 - strh r1, [r0] - movs r0, 0x99 - lsls r0, 1 - bl sub_8055D40 - b _0815DDA2 - .align 2, 0 -_0815DD68: .4byte gMapHeader -_0815DD6C: .4byte 0xfffffed7 -_0815DD70: .4byte gUnknown_203F458 -_0815DD74: .4byte gSpecialVar_Result -_0815DD78: - ldr r3, _0815DDA8 @ =gSpecialVar_Result - ldrb r1, [r4] - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 5 - adds r0, r4, r0 - ldrb r0, [r0, 0xE] - strh r0, [r3] - ldr r2, _0815DDAC @ =gUnknown_847A284 - ldrb r1, [r4] - lsls r0, r1, 1 - adds r0, r1 - ldrh r3, [r3] - adds r0, r3 - lsls r0, 1 - adds r0, r2 - ldrh r0, [r0] - bl sub_8055D40 - bl sub_815DDB0 -_0815DDA2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0815DDA8: .4byte gSpecialVar_Result -_0815DDAC: .4byte gUnknown_847A284 - thumb_func_end sub_815DD44 - - thumb_func_start sub_815DDB0 -sub_815DDB0: @ 815DDB0 - push {r4-r6,lr} - ldr r0, _0815DDD0 @ =gUnknown_203F458 - ldr r2, [r0] - ldrb r1, [r2] - lsls r0, r1, 5 - subs r0, r1 - lsls r0, 5 - adds r2, r0 - ldrb r0, [r2, 0xE] - cmp r0, 0x1 - beq _0815DE18 - cmp r0, 0x1 - bgt _0815DDD4 - cmp r0, 0 - beq _0815DDDA - b _0815DEF0 - .align 2, 0 -_0815DDD0: .4byte gUnknown_203F458 -_0815DDD4: - cmp r0, 0x2 - beq _0815DE64 - b _0815DEF0 -_0815DDDA: - ldrb r2, [r2, 0x1B] - movs r3, 0 - ldr r0, _0815DE04 @ =gUnknown_8479ED8 - ldrb r1, [r0, 0x1] - adds r6, r0, 0 - cmp r1, r2 - beq _0815DDF8 - adds r1, r6, 0 -_0815DDEA: - adds r1, 0x4 - adds r3, 0x1 - cmp r3, 0x52 - bhi _0815DDF8 - ldrb r0, [r1, 0x1] - cmp r0, r2 - bne _0815DDEA -_0815DDF8: - cmp r3, 0x53 - beq _0815DE08 - lsls r0, r3, 2 - adds r0, r6 - ldrb r1, [r0] - b _0815DE0A - .align 2, 0 -_0815DE04: .4byte gUnknown_8479ED8 -_0815DE08: - movs r1, 0x12 -_0815DE0A: - ldr r0, _0815DE14 @ =0x00004011 - bl VarSet - b _0815DEF0 - .align 2, 0 -_0815DE14: .4byte 0x00004011 -_0815DE18: - ldrb r2, [r2, 0x1B] - movs r3, 0 - ldr r0, _0815DE44 @ =gUnknown_847A024 - ldrb r1, [r0, 0x2] - adds r4, r0, 0 - cmp r1, r2 - beq _0815DE36 - adds r1, r4, 0 -_0815DE28: - adds r1, 0x8 - adds r3, 0x1 - cmp r3, 0x9 - bhi _0815DE36 - ldrb r0, [r1, 0x2] - cmp r0, r2 - bne _0815DE28 -_0815DE36: - cmp r3, 0xA - beq _0815DE48 - lsls r0, r3, 3 - adds r0, r4 - ldrb r1, [r0] - ldrb r4, [r0, 0x1] - b _0815DE4C - .align 2, 0 -_0815DE44: .4byte gUnknown_847A024 -_0815DE48: - movs r1, 0x12 - movs r4, 0x12 -_0815DE4C: - ldr r0, _0815DE5C @ =0x00004010 - bl VarSet - ldr r0, _0815DE60 @ =0x00004013 - adds r1, r4, 0 - bl VarSet - b _0815DEF0 - .align 2, 0 -_0815DE5C: .4byte 0x00004010 -_0815DE60: .4byte 0x00004013 -_0815DE64: - movs r4, 0 - ldr r6, _0815DEAC @ =gUnknown_8479ED8 -_0815DE68: - ldr r0, _0815DEB0 @ =gUnknown_203F458 - ldr r3, [r0] - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r4 - lsls r1, 3 - ldrb r2, [r3] - lsls r0, r2, 5 - subs r0, r2 - lsls r0, 5 - adds r1, r0 - adds r3, r1 - ldrb r2, [r3, 0x1B] - movs r3, 0 - ldr r1, _0815DEAC @ =gUnknown_8479ED8 - ldrb r0, [r1, 0x1] - adds r5, r4, 0x1 - cmp r0, r2 - beq _0815DE9E -_0815DE90: - adds r1, 0x4 - adds r3, 0x1 - cmp r3, 0x52 - bhi _0815DE9E - ldrb r0, [r1, 0x1] - cmp r0, r2 - bne _0815DE90 -_0815DE9E: - cmp r3, 0x53 - beq _0815DEB4 - lsls r0, r3, 2 - adds r0, r6 - ldrb r1, [r0] - b _0815DEB6 - .align 2, 0 -_0815DEAC: .4byte gUnknown_8479ED8 -_0815DEB0: .4byte gUnknown_203F458 -_0815DEB4: - movs r1, 0x12 -_0815DEB6: - cmp r4, 0x1 - beq _0815DED8 - cmp r4, 0x1 - bgt _0815DEC4 - cmp r4, 0 - beq _0815DECA - b _0815DEEA -_0815DEC4: - cmp r4, 0x2 - beq _0815DEE4 - b _0815DEEA -_0815DECA: - ldr r0, _0815DED4 @ =0x00004012 - bl VarSet - b _0815DEEA - .align 2, 0 -_0815DED4: .4byte 0x00004012 -_0815DED8: - ldr r0, _0815DEE0 @ =0x00004010 - bl VarSet - b _0815DEEA - .align 2, 0 -_0815DEE0: .4byte 0x00004010 -_0815DEE4: - ldr r0, _0815DEF8 @ =0x00004011 - bl VarSet -_0815DEEA: - adds r4, r5, 0 - cmp r4, 0x2 - ble _0815DE68 -_0815DEF0: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0815DEF8: .4byte 0x00004011 - thumb_func_end sub_815DDB0 - - thumb_func_start sub_815DEFC -sub_815DEFC: @ 815DEFC - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - movs r2, 0x1 - negs r2, r2 - movs r0, 0x2 - adds r1, r4, 0 - bl GetStringWidth - cmp r0, 0xC4 - bls _0815DF4E - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - movs r3, 0x3 - bl ConvertEasyChatWordsToString - ldrb r0, [r4] - movs r1, 0x1 - cmp r0, 0xFE - beq _0815DF40 -_0815DF32: - adds r0, r4, r1 - ldrb r0, [r0] - adds r1, 0x1 - cmp r0, 0xFE - bne _0815DF32 - b _0815DF40 -_0815DF3E: - adds r1, 0x1 -_0815DF40: - adds r0, r4, r1 - ldrb r0, [r0] - cmp r0, 0xFE - bne _0815DF3E - adds r1, r4, r1 - movs r0, 0xFA - strb r0, [r1] -_0815DF4E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_815DEFC - - thumb_func_start sub_815DF54 -sub_815DF54: @ 815DF54 - push {r4,r5,lr} - ldr r0, _0815DF90 @ =gSpecialVar_0x8006 - ldrh r4, [r0] - ldr r2, _0815DF94 @ =gUnknown_203F458 - ldr r3, [r2] - ldrb r1, [r3] - lsls r0, r1, 5 - subs r0, r1 - lsls r1, r0, 5 - adds r0, r3, r1 - ldrb r5, [r0, 0xE] - cmp r5, 0x1 - beq _0815DF7C - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - adds r0, r3, r0 -_0815DF7C: - ldrb r1, [r0, 0x1B] - ldr r0, _0815DF98 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - cmp r0, 0x3 - beq _0815DFD4 - cmp r0, 0x3 - bgt _0815DF9C - cmp r0, 0x2 - beq _0815DFA6 - b _0815E05C - .align 2, 0 -_0815DF90: .4byte gSpecialVar_0x8006 -_0815DF94: .4byte gUnknown_203F458 -_0815DF98: .4byte gSpecialVar_0x8005 -_0815DF9C: - cmp r0, 0x4 - beq _0815E000 - cmp r0, 0x5 - beq _0815E038 - b _0815E05C -_0815DFA6: - adds r0, r5, 0 - bl sub_815E068 - ldr r0, _0815DFD0 @ =gUnknown_203F458 - ldr r0, [r0] - ldrb r2, [r0] - lsls r1, r2, 5 - subs r1, r2 - lsls r1, 5 - adds r1, 0xC - adds r0, r1 - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r4 - lsls r1, 3 - adds r1, 0x4 - adds r0, r1 - adds r0, 0xE - b _0815E026 - .align 2, 0 -_0815DFD0: .4byte gUnknown_203F458 -_0815DFD4: - adds r0, r5, 0 - bl sub_815E068 - ldr r0, _0815DFFC @ =gUnknown_203F458 - ldr r0, [r0] - ldrb r2, [r0] - lsls r1, r2, 5 - subs r1, r2 - lsls r1, 5 - adds r1, 0xC - adds r0, r1 - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r4 - lsls r1, 3 - adds r1, 0x4 - adds r0, r1 - adds r0, 0x1A - b _0815E026 - .align 2, 0 -_0815DFFC: .4byte gUnknown_203F458 -_0815E000: - adds r0, r5, 0 - bl sub_815E068 - ldr r0, _0815E030 @ =gUnknown_203F458 - ldr r0, [r0] - ldrb r2, [r0] - lsls r1, r2, 5 - subs r1, r2 - lsls r1, 5 - adds r1, 0xC - adds r0, r1 - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r4 - lsls r1, 3 - adds r1, 0x4 - adds r0, r1 - adds r0, 0x26 -_0815E026: - ldr r1, _0815E034 @ =gStringVar4 - bl sub_815DEFC - b _0815E05C - .align 2, 0 -_0815E030: .4byte gUnknown_203F458 -_0815E034: .4byte gStringVar4 -_0815E038: - ldr r0, [r2] - ldrb r2, [r0] - lsls r1, r2, 5 - subs r1, r2 - lsls r1, 5 - adds r1, 0xC - adds r0, r1 - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r4 - lsls r1, 3 - adds r1, 0x4 - adds r0, r1 - adds r0, 0x32 - ldr r1, _0815E064 @ =gStringVar4 - bl sub_815DEFC -_0815E05C: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0815E064: .4byte gStringVar4 - thumb_func_end sub_815DF54 - thumb_func_start sub_815E068 sub_815E068: @ 815E068 push {r4,r5,lr} |