diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/code_8073CF0.s (renamed from asm/code_8073B78.s) | 203 |
1 files changed, 1 insertions, 202 deletions
diff --git a/asm/code_8073B78.s b/asm/code_8073CF0.s index 84affaa..bb9a59e 100644 --- a/asm/code_8073B78.s +++ b/asm/code_8073CF0.s @@ -1,211 +1,10 @@ #include "asm/constants/gba_constants.inc" - #include "asm/macros.inc" + #include "asm/macros.inc" .syntax unified .text - thumb_func_start TargetThrownItem -TargetThrownItem: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r5, r1, 0 - mov r9, r2 - mov r10, r3 - ldr r0, [sp, 0x20] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r2, 0x4 - ldrsh r0, [r5, r2] - subs r2, r1, r0 - cmp r2, 0 - bge _08073BA2 - negs r2, r2 -_08073BA2: - movs r3, 0x6 - ldrsh r1, [r4, r3] - movs r6, 0x6 - ldrsh r0, [r5, r6] - subs r1, r0 - cmp r1, 0 - bge _08073BB2 - negs r1, r1 -_08073BB2: - ldr r0, [r4, 0x70] - adds r0, 0xE0 - ldrb r0, [r0] - cmp r0, 0 - bne _08073BCA - adds r0, r1, 0 - cmp r1, r2 - bge _08073BC4 - adds r0, r2, 0 -_08073BC4: - cmp r0, 0xA - ble _08073BCA - b _08073CDC -_08073BCA: - movs r6, 0x1 - negs r6, r6 - cmp r2, r1 - bne _08073C14 - movs r7, 0x4 - ldrsh r1, [r4, r7] - movs r2, 0x4 - ldrsh r0, [r5, r2] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bge _08073BFA - movs r6, 0x6 - ldrsh r1, [r4, r6] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bge _08073BF2 - movs r6, 0x1 - b _08073C7E -_08073BF2: - cmp r1, r0 - ble _08073BFA - movs r6, 0x3 - b _08073C7E -_08073BFA: - lsls r1, r2, 16 - lsls r0, r3, 16 - movs r6, 0x7 - cmp r1, r0 - ble _08073C7A - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - ble _08073C7A - movs r6, 0x5 - b _08073C7E -_08073C14: - movs r3, 0x4 - ldrsh r1, [r4, r3] - movs r7, 0x4 - ldrsh r0, [r5, r7] - ldrh r2, [r4, 0x4] - ldrh r3, [r5, 0x4] - cmp r1, r0 - bne _08073C34 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bge _08073C34 - movs r6, 0 - b _08073C7E -_08073C34: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bge _08073C4C - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - bne _08073C4C - movs r6, 0x2 - b _08073C7E -_08073C4C: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - bne _08073C64 - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r7, 0x6 - ldrsh r0, [r5, r7] - cmp r1, r0 - ble _08073C64 - movs r6, 0x4 - b _08073C7E -_08073C64: - lsls r1, r2, 16 - lsls r0, r3, 16 - cmp r1, r0 - ble _08073C7A - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r2, 0x6 - ldrsh r0, [r5, r2] - cmp r1, r0 - bne _08073C7A - movs r6, 0x6 -_08073C7A: - cmp r6, 0 - blt _08073CDC -_08073C7E: - ldr r0, _08073CC0 - adds r7, r6, r0 - ldrb r0, [r7] - cmp r0, 0 - bne _08073CDC - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - movs r3, 0xA - bl IsTargetStraightAhead - lsls r0, 24 - cmp r0, 0 - beq _08073CDC - movs r0, 0x1 - strb r0, [r7] - ldr r1, _08073CC4 - ldr r0, _08073CC8 - ldr r0, [r0] - lsls r0, 2 - adds r1, r0, r1 - str r6, [r1] - ldr r1, _08073CCC - adds r4, r0, r1 - mov r3, r8 - cmp r3, 0 - bne _08073CD0 - adds r0, r5, 0 - mov r1, r9 - mov r2, r10 - bl EvaluateItem - b _08073CD2 - .align 2, 0 -_08073CC0: .4byte gTargetAhead -_08073CC4: .4byte gPotentialTargetDirections -_08073CC8: .4byte gNumPotentialTargets -_08073CCC: .4byte gPotentialTargetWeights -_08073CD0: - movs r0, 0x64 -_08073CD2: - str r0, [r4] - ldr r1, _08073CEC - ldr r0, [r1] - adds r0, 0x1 - str r0, [r1] -_08073CDC: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08073CEC: .4byte gNumPotentialTargets - thumb_func_end TargetThrownItem - thumb_func_start sub_8073CF0 sub_8073CF0: push {lr} |