diff options
author | Seth Barberee <seth.barberee@gmail.com> | 2020-11-12 18:26:02 -0600 |
---|---|---|
committer | Seth Barberee <seth.barberee@gmail.com> | 2020-11-12 18:26:02 -0600 |
commit | 9237db777e49204e8f09ec6607caefedb469da05 (patch) | |
tree | 73b881bd4c278707b99f54a6f3231150ab620354 | |
parent | 0578f4a0623b0e3078f922c37a587d6bbafdbf4d (diff) |
3% decompiled woo
-rw-r--r-- | asm/code_801D760.s | 111 | ||||
-rw-r--r-- | asm/code_8092334.s | 30 | ||||
-rw-r--r-- | src/code_801D760.c | 101 | ||||
-rw-r--r-- | src/code_8092334.c | 19 |
4 files changed, 120 insertions, 141 deletions
diff --git a/asm/code_801D760.s b/asm/code_801D760.s index 341e154..8b6a04b 100644 --- a/asm/code_801D760.s +++ b/asm/code_801D760.s @@ -5,117 +5,6 @@ .text - thumb_func_start sub_801D7CC -sub_801D7CC: - push {r4,lr} - bl sub_8025354 - cmp r0, 0x1 - bls _0801D802 - cmp r0, 0x3 - bhi _0801D802 - bl sub_802540C - ldr r4, _0801D7F8 - ldr r1, [r4] - strb r0, [r1, 0x7] - bl sub_8025418 - ldr r0, [r4] - ldrb r0, [r0, 0x7] - cmp r0, 0 - beq _0801D7FC - movs r0, 0x2 - bl sub_801D208 - b _0801D802 - .align 2, 0 -_0801D7F8: .4byte gUnknown_203B250 -_0801D7FC: - movs r0, 0x1 - bl sub_801D208 -_0801D802: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_801D7CC - - thumb_func_start sub_801D808 -sub_801D808: - push {lr} - bl sub_80244E4 - cmp r0, 0x1 - bls _0801D820 - cmp r0, 0x3 - bhi _0801D820 - bl sub_802453C - movs r0, 0x1 - bl sub_801D208 -_0801D820: - pop {r0} - bx r0 - thumb_func_end sub_801D808 - - thumb_func_start sub_801D824 -sub_801D824: - push {lr} - bl sub_801BF48 - cmp r0, 0x1 - bls _0801D83C - cmp r0, 0x3 - bhi _0801D83C - bl sub_801BF98 - movs r0, 0x1 - bl sub_801D208 -_0801D83C: - pop {r0} - bx r0 - thumb_func_end sub_801D824 - - thumb_func_start sub_801D840 -sub_801D840: - push {lr} - bl sub_80217EC - cmp r0, 0x1 - bls _0801D858 - cmp r0, 0x3 - bhi _0801D858 - bl sub_8021830 - movs r0, 0x1 - bl sub_801D208 -_0801D858: - pop {r0} - bx r0 - thumb_func_end sub_801D840 - - thumb_func_start sub_801D85C -sub_801D85C: - push {lr} - bl sub_802C898 - cmp r0, 0x1 - bls _0801D874 - cmp r0, 0x3 - bhi _0801D874 - bl sub_802C8F4 - movs r0, 0x1 - bl sub_801D208 -_0801D874: - pop {r0} - bx r0 - thumb_func_end sub_801D85C - - thumb_func_start sub_801D878 -sub_801D878: - push {lr} - bl sub_801DCE8 - cmp r0, 0x1 - bls _0801D890 - cmp r0, 0x3 - bhi _0801D890 - bl sub_801DD50 - movs r0, 0x1 - bl sub_801D208 -_0801D890: - pop {r0} - bx r0 - thumb_func_end sub_801D878 - thumb_func_start sub_801D894 sub_801D894: push {r4-r6,lr} diff --git a/asm/code_8092334.s b/asm/code_8092334.s index cd890b2..9048c87 100644 --- a/asm/code_8092334.s +++ b/asm/code_8092334.s @@ -5,36 +5,6 @@ .text - thumb_func_start sub_80923D4 -sub_80923D4: - push {r4,r5,lr} - adds r4, r0, 0 - movs r3, 0 - movs r1, 0 - ldr r2, _080923F0 -_080923DE: - movs r5, 0 - ldrsh r0, [r2, r5] - adds r3, r0 - cmp r3, r4 - ble _080923F4 - lsls r0, r1, 24 - lsrs r0, 24 - b _080923FE - .align 2, 0 -_080923F0: .4byte gUnknown_810AA90 -_080923F4: - adds r2, 0x8 - adds r1, 0x1 - cmp r1, 0x39 - ble _080923DE - movs r0, 0 -_080923FE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80923D4 - thumb_func_start sub_8092404 sub_8092404: push {r4-r7,lr} diff --git a/src/code_801D760.c b/src/code_801D760.c index 89cd661..e2e6617 100644 --- a/src/code_801D760.c +++ b/src/code_801D760.c @@ -8,6 +8,19 @@ extern u32 sub_80270A4(); extern u32 sub_8025F68(); extern u8 sub_802604C(); extern void sub_8026058(); +extern u32 sub_8025354(void); +extern u8 sub_802540C(void); +extern void sub_8025418(void); +extern u32 sub_80244E4(void); +extern void sub_802453C(void); +extern u32 sub_801BF48(void); +extern void sub_801BF98(void); +extern u32 sub_80217EC(void); +extern void sub_8021830(void); +extern u32 sub_802C898(void); +extern void sub_802C8F4(void); +extern u32 sub_801DCE8(void); +extern void sub_801DD50(void); struct unk_203B250 { @@ -58,3 +71,91 @@ void sub_801D798(void) sub_8026058(); sub_801D208(2); } + +void sub_801D7CC() +{ + u32 check; + u32 temp2; + + check = sub_8025354(); + if(check <= 1) + return; + if(check > 3) + return; + + temp2 = sub_802540C(); + gUnknown_203B250->unk7 = temp2; + + sub_8025418(); + + if(gUnknown_203B250->unk7 != 0) + { + sub_801D208(2); + } + else + { + sub_801D208(1); + } +} + +void sub_801D808(void) +{ + u32 check; + + check = sub_80244E4(); + if(check <= 1) + return; + if(check > 3) + return; + + sub_802453C(); + sub_801D208(1); +} + +void sub_801D824(void) +{ + u32 check; + check = sub_801BF48(); + if(check <= 1) + return; + if(check > 3) + return; + sub_801BF98(); + sub_801D208(1); +} + +void sub_801D840(void) +{ + u32 check; + check = sub_80217EC(); + if(check <= 1) + return; + if(check > 3) + return; + sub_8021830(); + sub_801D208(1); +} + +void sub_801D85C(void) +{ + u32 check; + check = sub_802C898(); + if(check <= 1) + return; + if(check > 3) + return; + sub_802C8F4(); + sub_801D208(1); +} + +void sub_801D878(void) +{ + u32 check; + check = sub_801DCE8(); + if(check <= 1) + return; + if(check > 3) + return; + sub_801DD50(); + sub_801D208(1); +} diff --git a/src/code_8092334.c b/src/code_8092334.c index d5d17ee..1fba58e 100644 --- a/src/code_8092334.c +++ b/src/code_8092334.c @@ -14,6 +14,7 @@ extern u8 *AbilityDescriptions[]; extern u8 gBoughtFriendAreas[NUM_FRIEND_AREAS]; extern u8 *gUnknown_203B468; +extern s16 gUnknown_810AA90[]; u32 GetUnformattedTypeString(u8 type) { @@ -63,3 +64,21 @@ void sub_80923B8(void) gUnknown_203B468[counter] = 0; } } + +u8 sub_80923D4(s32 target) +{ + s32 counter; + s32 index; + s32 sum = 0; + index = 0; + for(counter = 0; counter < NUM_FRIEND_AREAS; counter++) + { + sum += gUnknown_810AA90[index]; + if(sum > target) + { + return counter; + } + index += 4; + } + return 0; +} |