Skip to content

Commit

Permalink
Merge pull request #49 from WhenGryphonsFly/working
Browse files Browse the repository at this point in the history
Mostly decompile sub_31F6C
  • Loading branch information
WhenGryphonsFly authored Sep 12, 2024
2 parents c2a0226 + a6eb8d3 commit 1c547a1
Show file tree
Hide file tree
Showing 2 changed files with 410 additions and 294 deletions.
294 changes: 0 additions & 294 deletions asm/rom_11B9C.s
Original file line number Diff line number Diff line change
Expand Up @@ -63873,297 +63873,3 @@ _08031F5E:
bx r0
.align 2, 0
_08031F68: .4byte 0x0000027F

thumb_func_start sub_31F6C
sub_31F6C: @ 0x08031F6C
push {r4, r5, r6, r7, lr}
mov r7, sl
mov r6, sb
mov r5, r8
push {r5, r6, r7}
sub sp, #4
ldr r4, _08031FE0 @ =gUnknown_020314E0
ldr r0, [r4]
movs r1, #0x97
lsls r1, r1, #1
adds r3, r0, r1
movs r1, #0
strh r1, [r3]
ldr r3, _08031FE4 @ =0x0000073D
adds r0, r0, r3
ldrb r0, [r0] @ number of "catch" arrows lit up
lsls r0, r0, #0x18
asrs r0, r0, #0x18
cmp r0, #3
bne _08031F96
movs r1, #1 @ rare mons
_08031F96:
movs r2, #0
lsls r1, r1, #4
str r1, [sp]
ldr r5, _08031FE8 @ =gMain+0x74
mov r8, r5
mov sl, r4
_08031FA2:
lsls r2, r2, #0x10
asrs r1, r2, #0xf
ldr r0, [sp]
adds r1, r1, r0
mov r3, sl
ldr r0, [r3]
adds r0, #0x35
ldrb r0, [r0] @ current area
lsls r0, r0, #0x18
asrs r0, r0, #0x18
lsls r0, r0, #5
adds r1, r1, r0
ldr r5, _08031FEC @ =gWildMonLocations
adds r1, r1, r5
ldrh r6, [r1]
movs r3, #0
ldrsh r0, [r1, r3]
mov sb, r2
cmp r0, #0x8d
beq _08032018
cmp r0, #0x8d
bgt _08031FFA
cmp r0, #0x84
beq _08032018
cmp r0, #0x84
bgt _08031FF0
cmp r0, #0x3b
beq _08032018
cmp r0, #0x72
beq _08032018
b _080320A8
.align 2, 0
_08031FE0: .4byte gUnknown_020314E0
_08031FE4: .4byte 0x0000073D
_08031FE8: .4byte gMain+0x74
_08031FEC: .4byte gWildMonLocations
_08031FF0:
cmp r0, #0x86
beq _08032018
cmp r0, #0x8b
beq _08032018
b _080320A8
_08031FFA:
cmp r0, #0xa0
beq _08032018
cmp r0, #0xa0
bgt _0803200C
cmp r0, #0x90
beq _08032018
cmp r0, #0x97
beq _08032018
b _080320A8
_0803200C:
cmp r0, #0xaf
beq _0803205E
cmp r0, #0xcd
bne _08032016
b _08032138
_08032016:
b _080320A8
_08032018:
ldr r0, _08032038 @ =gMain
ldrb r0, [r0, #8]
lsls r0, r0, #0x18
asrs r0, r0, #0x18
cmp r0, #0
beq _0803203C
lsls r0, r6, #0x10
asrs r0, r0, #0x10
add r0, r8
ldrb r0, [r0]
movs r5, #4
cmp r0, #1
bhi _0803204C
movs r5, #2
b _0803204C
.align 2, 0
_08032038: .4byte gMain
_0803203C:
lsls r0, r6, #0x10
asrs r0, r0, #0x10
add r0, r8
ldrb r0, [r0]
movs r5, #2
cmp r0, #1
bhi _0803204C
movs r5, #1
_0803204C:
mov r1, sl
ldr r0, [r1]
movs r3, #0xbe
lsls r3, r3, #3
adds r0, r0, r3
ldrh r0, [r0]
cmp r0, #0
bne _0803213A
b _08032138
_0803205E:
ldr r4, _080320A0 @ =gUnknown_086AE5E0
ldr r3, _080320A4 @ =gMain+0x74
adds r0, r3, #0
adds r0, #0xaf
ldrb r1, [r0]
lsls r1, r1, #1
adds r1, r1, r4
adds r0, #1
ldrb r0, [r0]
lsls r0, r0, #1
adds r0, r0, r4
ldrh r2, [r0]
ldrh r5, [r1]
movs r0, #0
ldrsh r1, [r1, r0]
lsls r2, r2, #0x10
asrs r0, r2, #0x10
cmp r1, r0
bge _08032086
lsrs r5, r2, #0x10
_08032086:
adds r0, r3, #0
adds r0, #0xb1
ldrb r0, [r0]
lsls r0, r0, #1
adds r0, r0, r4
ldrh r2, [r0]
lsls r0, r5, #0x10
lsls r1, r2, #0x10
cmp r0, r1
bge _0803213A
lsrs r5, r1, #0x10
b _0803213A
.align 2, 0
_080320A0: .4byte gUnknown_086AE5E0
_080320A4: .4byte gMain+0x74
_080320A8:
ldr r0, _0803218C @ =gUnknown_086AE5E0
lsls r1, r6, #0x10
asrs r1, r1, #0x10
add r1, r8
ldrb r1, [r1]
lsls r1, r1, #1
adds r1, r1, r0
ldrh r5, [r1]
movs r3, #0
ldr r1, _08032190 @ =gUnknown_086A3700
mov ip, r1
mov r7, ip
adds r4, r0, #0
_080320C2:
lsls r1, r6, #0x10
asrs r1, r1, #0x10
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #3
adds r0, r0, r7
ldrb r6, [r0, #0x15]
adds r0, r6, #0
cmp r0, #0xcc
bgt _080320FA @ check if mon's evolution species is < SPECIES_NONE
add r0, r8
ldrb r0, [r0]
lsls r0, r0, #1
adds r0, r0, r4
ldrh r2, [r0]
lsls r0, r5, #0x10
lsls r1, r2, #0x10
cmp r0, r1
bge _080320EA
lsrs r5, r1, #0x10
_080320EA:
lsls r0, r3, #0x10
movs r3, #0x80
lsls r3, r3, #9
adds r0, r0, r3
lsrs r3, r0, #0x10
asrs r0, r0, #0x10
cmp r0, #1
ble _080320C2
_080320FA:
mov r0, sb
asrs r1, r0, #0xf
ldr r3, [sp]
adds r1, r1, r3
mov r0, sl
ldr r2, [r0]
adds r0, r2, #0
adds r0, #0x35
ldrb r0, [r0]
lsls r0, r0, #0x18
asrs r0, r0, #0x18
lsls r0, r0, #5
adds r1, r1, r0
ldr r3, _08032194 @ =gWildMonLocations
adds r1, r1, r3
ldrh r6, [r1]
movs r0, #0xbe
lsls r0, r0, #3
adds r2, r2, r0
ldrh r0, [r2]
cmp r0, #0
bne _0803213A
lsls r0, r6, #0x10
asrs r0, r0, #0x10
lsls r1, r0, #1
adds r1, r1, r0
lsls r1, r1, #3
add r1, ip
ldrb r0, [r1, #0x15]
cmp r0, #0xcc
bls _0803213A
_08032138:
movs r5, #0
_0803213A:
mov r1, sl
ldr r4, [r1]
ldr r3, _08032198 @ =0x0000059C
adds r0, r4, r3
ldrh r1, [r0]
lsls r0, r6, #0x10
asrs r0, r0, #0x10
cmp r1, r0
bne _0803214E
movs r5, #0
_0803214E:
movs r1, #0x97
lsls r1, r1, #1
adds r0, r4, r1
lsls r2, r5, #0x10
asrs r2, r2, #0x10
ldrh r3, [r0]
adds r2, r2, r3
strh r2, [r0]
mov r5, sb
asrs r1, r5, #0x10
lsls r3, r1, #1
movs r5, #0x98
lsls r5, r5, #1
adds r0, r4, r5
adds r0, r0, r3
strh r2, [r0]
adds r1, #1
lsls r1, r1, #0x10
lsrs r2, r1, #0x10
asrs r1, r1, #0x10
cmp r1, #7
bgt _0803217C
b _08031FA2
_0803217C:
add sp, #4
pop {r3, r4, r5}
mov r8, r3
mov sb, r4
mov sl, r5
pop {r4, r5, r6, r7}
pop {r0}
bx r0
.align 2, 0
_0803218C: .4byte gUnknown_086AE5E0
_08032190: .4byte gUnknown_086A3700
_08032194: .4byte gWildMonLocations
_08032198: .4byte 0x0000059C

Loading

0 comments on commit 1c547a1

Please sign in to comment.