diff options
Diffstat (limited to 'asm/berry.s')
-rw-r--r-- | asm/berry.s | 311 |
1 files changed, 0 insertions, 311 deletions
diff --git a/asm/berry.s b/asm/berry.s deleted file mode 100644 index 5537e3590..000000000 --- a/asm/berry.s +++ /dev/null @@ -1,311 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_809C718 -sub_809C718: @ 809C718 - push {r4,r5,lr} - ldr r2, _0809C778 @ =gSaveBlock1Ptr - ldr r1, [r2] - ldr r0, _0809C77C @ =gUnknown_83DF7E8 - ldr r3, _0809C780 @ =0x000030ec - adds r1, r3 - movs r4, 0x93 - lsls r4, 3 - adds r0, r4 - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldm r0!, {r3-r5} - stm r1!, {r3-r5} - ldr r0, [r0] - str r0, [r1] - movs r1, 0 - adds r4, r2, 0 - adds r5, r4, 0 - ldr r3, _0809C784 @ =0x00003108 - movs r2, 0 -_0809C740: - ldr r0, [r5] - adds r0, r3 - adds r0, r1 - strb r2, [r0] - adds r1, 0x1 - cmp r1, 0x11 - ble _0809C740 - ldr r0, [r4] - ldr r5, _0809C788 @ =0x0000311a - adds r0, r5 - movs r1, 0 - strb r1, [r0] - ldr r0, [r4] - ldr r2, _0809C78C @ =0x0000311b - adds r0, r2 - strb r1, [r0] - ldr r0, [r4] - ldr r3, _0809C780 @ =0x000030ec - adds r0, r3 - bl GetEnigmaBerryChecksum - ldr r1, [r4] - ldr r4, _0809C790 @ =0x0000311c - adds r1, r4 - str r0, [r1] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0809C778: .4byte gSaveBlock1Ptr -_0809C77C: .4byte gUnknown_83DF7E8 -_0809C780: .4byte 0x000030ec -_0809C784: .4byte 0x00003108 -_0809C788: .4byte 0x0000311a -_0809C78C: .4byte 0x0000311b -_0809C790: .4byte 0x0000311c - thumb_func_end sub_809C718 - - thumb_func_start sub_809C794 -sub_809C794: @ 809C794 - push {lr} - sub sp, 0x4 - mov r1, sp - movs r0, 0 - strh r0, [r1] - ldr r0, _0809C7B8 @ =gSaveBlock1Ptr - ldr r1, [r0] - ldr r0, _0809C7BC @ =0x000030ec - adds r1, r0 - ldr r2, _0809C7C0 @ =0x0100001a - mov r0, sp - bl CpuSet - bl sub_809C718 - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_0809C7B8: .4byte gSaveBlock1Ptr -_0809C7BC: .4byte 0x000030ec -_0809C7C0: .4byte 0x0100001a - thumb_func_end sub_809C794 - - thumb_func_start SetEnigmaBerry -SetEnigmaBerry: @ 809C7C4 - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_809C794 - adds r5, r4, 0 - ldr r0, _0809C824 @ =gSaveBlock1Ptr - ldr r2, [r0] - ldr r0, _0809C828 @ =0x000030ec - adds r4, r2, r0 - adds r1, r4, 0 - adds r0, r5, 0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldr r0, [r0] - str r0, [r1] - movs r3, 0 - ldr r0, _0809C82C @ =0x00003108 - adds r6, r2, r0 - ldr r1, _0809C830 @ =0x00000516 - adds r2, r5, r1 -_0809C7F0: - adds r0, r6, r3 - adds r1, r2, r3 - ldrb r1, [r1] - strb r1, [r0] - adds r3, 0x1 - cmp r3, 0x11 - ble _0809C7F0 - movs r3, 0xA5 - lsls r3, 3 - adds r0, r5, r3 - ldrb r0, [r0] - adds r1, r4, 0 - adds r1, 0x2E - strb r0, [r1] - ldr r6, _0809C834 @ =0x00000529 - adds r0, r5, r6 - ldrb r0, [r0] - adds r1, 0x1 - strb r0, [r1] - adds r0, r4, 0 - bl GetEnigmaBerryChecksum - str r0, [r4, 0x30] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0809C824: .4byte gSaveBlock1Ptr -_0809C828: .4byte 0x000030ec -_0809C82C: .4byte 0x00003108 -_0809C830: .4byte 0x00000516 -_0809C834: .4byte 0x00000529 - thumb_func_end SetEnigmaBerry - - thumb_func_start GetEnigmaBerryChecksum -GetEnigmaBerryChecksum: @ 809C838 - push {lr} - adds r3, r0, 0 - movs r2, 0 - movs r1, 0 -_0809C840: - adds r0, r3, r1 - ldrb r0, [r0] - adds r2, r0 - adds r1, 0x1 - cmp r1, 0x2F - bls _0809C840 - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end GetEnigmaBerryChecksum - - thumb_func_start IsEnigmaBerryValid -IsEnigmaBerryValid: @ 809C854 - push {r4,lr} - ldr r4, _0809C888 @ =gSaveBlock1Ptr - ldr r1, [r4] - movs r2, 0xC4 - lsls r2, 6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0809C898 - ldr r2, _0809C88C @ =0x000030f6 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - beq _0809C898 - ldr r2, _0809C890 @ =0x000030ec - adds r0, r1, r2 - bl GetEnigmaBerryChecksum - ldr r1, [r4] - ldr r2, _0809C894 @ =0x0000311c - adds r1, r2 - ldr r1, [r1] - cmp r0, r1 - bne _0809C898 - movs r0, 0x1 - b _0809C89A - .align 2, 0 -_0809C888: .4byte gSaveBlock1Ptr -_0809C88C: .4byte 0x000030f6 -_0809C890: .4byte 0x000030ec -_0809C894: .4byte 0x0000311c -_0809C898: - movs r0, 0 -_0809C89A: - pop {r4} - pop {r1} - bx r1 - thumb_func_end IsEnigmaBerryValid - - thumb_func_start sub_809C8A0 -sub_809C8A0: @ 809C8A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2B - bne _0809C8C4 - bl IsEnigmaBerryValid - cmp r0, 0 - beq _0809C8C4 - ldr r0, _0809C8BC @ =gSaveBlock1Ptr - ldr r0, [r0] - ldr r1, _0809C8C0 @ =0x000030ec - b _0809C8D8 - .align 2, 0 -_0809C8BC: .4byte gSaveBlock1Ptr -_0809C8C0: .4byte 0x000030ec -_0809C8C4: - subs r0, r4, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2A - bls _0809C8D0 - movs r4, 0x1 -_0809C8D0: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 2 - ldr r1, _0809C8E0 @ =gUnknown_83DF7CC -_0809C8D8: - adds r0, r1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0809C8E0: .4byte gUnknown_83DF7CC - thumb_func_end sub_809C8A0 - - thumb_func_start ItemIdToBerryType -ItemIdToBerryType: @ 809C8E4 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r2, _0809C900 @ =0xff7b0000 - adds r0, r2 - lsrs r0, 16 - cmp r0, 0x2A - bhi _0809C904 - adds r0, r1, 0 - adds r0, 0x7C - lsls r0, 24 - lsrs r0, 24 - b _0809C906 - .align 2, 0 -_0809C900: .4byte 0xff7b0000 -_0809C904: - movs r0, 0x1 -_0809C906: - pop {r1} - bx r1 - thumb_func_end ItemIdToBerryType - - thumb_func_start BerryTypeToItemId -BerryTypeToItemId: @ 809C90C - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r2, _0809C928 @ =0xffff0000 - adds r0, r2 - lsrs r0, 16 - cmp r0, 0x2A - bhi _0809C92C - adds r0, r1, 0 - adds r0, 0x84 - lsls r0, 16 - lsrs r0, 16 - b _0809C92E - .align 2, 0 -_0809C928: .4byte 0xffff0000 -_0809C92C: - movs r0, 0x85 -_0809C92E: - pop {r1} - bx r1 - thumb_func_end BerryTypeToItemId - - thumb_func_start GetBerryNameByBerryType -GetBerryNameByBerryType: @ 809C934 - push {r4,lr} - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - bl sub_809C8A0 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x6 - bl memcpy - movs r0, 0xFF - strb r0, [r4, 0x6] - pop {r4} - pop {r0} - bx r0 - thumb_func_end GetBerryNameByBerryType - - .align 2, 0 @ Don't pad with nop. |