.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global bta_sys_init bta_sys_init: /* 802BD888 002B94E8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BD88C 002B94EC 7C 08 02 A6 */ mflr r0 /* 802BD890 002B94F0 38 80 00 00 */ li r4, 0 /* 802BD894 002B94F4 38 A0 00 8C */ li r5, 0x8c /* 802BD898 002B94F8 90 01 00 14 */ stw r0, 0x14(r1) /* 802BD89C 002B94FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BD8A0 002B9500 3F E0 80 57 */ lis r31, lbl_805686D8@ha /* 802BD8A4 002B9504 38 7F 86 D8 */ addi r3, r31, lbl_805686D8@l /* 802BD8A8 002B9508 4B D4 68 5D */ bl memset /* 802BD8AC 002B950C 80 AD 8A 10 */ lwz r5, lbl_8063DCD0-_SDA_BASE_(r13) /* 802BD8B0 002B9510 3B FF 86 D8 */ addi r31, r31, -31016 /* 802BD8B4 002B9514 38 7F 00 68 */ addi r3, r31, 0x68 /* 802BD8B8 002B9518 38 80 03 E8 */ li r4, 0x3e8 /* 802BD8BC 002B951C 88 A5 00 03 */ lbz r5, 3(r5) /* 802BD8C0 002B9520 48 00 02 0D */ bl ptim_init /* 802BD8C4 002B9524 4B FF D8 91 */ bl GKI_get_taskid /* 802BD8C8 002B9528 98 7F 00 7D */ stb r3, 0x7d(r31) /* 802BD8CC 002B952C 80 6D 8A 10 */ lwz r3, lbl_8063DCD0-_SDA_BASE_(r13) /* 802BD8D0 002B9530 88 03 00 04 */ lbz r0, 4(r3) /* 802BD8D4 002B9534 98 0D AE F8 */ stb r0, lbl_806401B8-_SDA_BASE_(r13) /* 802BD8D8 002B9538 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BD8DC 002B953C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BD8E0 002B9540 7C 08 03 A6 */ mtlr r0 /* 802BD8E4 002B9544 38 21 00 10 */ addi r1, r1, 0x10 /* 802BD8E8 002B9548 4E 80 00 20 */ blr .global bta_sys_event bta_sys_event: /* 802BD8EC 002B954C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BD8F0 002B9550 7C 08 02 A6 */ mflr r0 /* 802BD8F4 002B9554 90 01 00 14 */ stw r0, 0x14(r1) /* 802BD8F8 002B9558 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BD8FC 002B955C 3B E0 00 01 */ li r31, 1 /* 802BD900 002B9560 93 C1 00 08 */ stw r30, 8(r1) /* 802BD904 002B9564 7C 7E 1B 78 */ mr r30, r3 /* 802BD908 002B9568 88 0D AE F8 */ lbz r0, lbl_806401B8-_SDA_BASE_(r13) /* 802BD90C 002B956C 28 00 00 04 */ cmplwi r0, 4 /* 802BD910 002B9570 41 80 00 18 */ blt lbl_802BD928 /* 802BD914 002B9574 3C 80 80 44 */ lis r4, lbl_80440030@ha /* 802BD918 002B9578 A0 BE 00 00 */ lhz r5, 0(r30) /* 802BD91C 002B957C 38 84 00 30 */ addi r4, r4, lbl_80440030@l /* 802BD920 002B9580 38 60 05 03 */ li r3, 0x503 /* 802BD924 002B9584 4B FF F6 05 */ bl LogMsg_1 lbl_802BD928: /* 802BD928 002B9588 3C 60 80 57 */ lis r3, lbl_805686D8@ha /* 802BD92C 002B958C A0 9E 00 00 */ lhz r4, 0(r30) /* 802BD930 002B9590 38 63 86 D8 */ addi r3, r3, lbl_805686D8@l /* 802BD934 002B9594 88 03 00 7E */ lbz r0, 0x7e(r3) /* 802BD938 002B9598 7C 85 46 70 */ srawi r5, r4, 8 /* 802BD93C 002B959C 2C 00 00 00 */ cmpwi r0, 0 /* 802BD940 002B95A0 41 82 00 1C */ beq lbl_802BD95C /* 802BD944 002B95A4 28 04 01 01 */ cmplwi r4, 0x101 /* 802BD948 002B95A8 40 82 00 08 */ bne lbl_802BD950 /* 802BD94C 002B95AC 48 00 26 71 */ bl bta_dm_immediate_disable lbl_802BD950: /* 802BD950 002B95B0 7F C3 F3 78 */ mr r3, r30 /* 802BD954 002B95B4 4B FF C3 E1 */ bl GKI_freebuf /* 802BD958 002B95B8 48 00 00 68 */ b lbl_802BD9C0 lbl_802BD95C: /* 802BD95C 002B95BC 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 802BD960 002B95C0 28 00 00 1A */ cmplwi r0, 0x1a /* 802BD964 002B95C4 40 80 00 2C */ bge lbl_802BD990 /* 802BD968 002B95C8 54 A0 15 BA */ rlwinm r0, r5, 2, 0x16, 0x1d /* 802BD96C 002B95CC 7C 63 00 2E */ lwzx r3, r3, r0 /* 802BD970 002B95D0 2C 03 00 00 */ cmpwi r3, 0 /* 802BD974 002B95D4 41 82 00 1C */ beq lbl_802BD990 /* 802BD978 002B95D8 81 83 00 00 */ lwz r12, 0(r3) /* 802BD97C 002B95DC 7F C3 F3 78 */ mr r3, r30 /* 802BD980 002B95E0 7D 89 03 A6 */ mtctr r12 /* 802BD984 002B95E4 4E 80 04 21 */ bctrl /* 802BD988 002B95E8 7C 7F 1B 78 */ mr r31, r3 /* 802BD98C 002B95EC 48 00 00 24 */ b lbl_802BD9B0 lbl_802BD990: /* 802BD990 002B95F0 88 0D AE F8 */ lbz r0, lbl_806401B8-_SDA_BASE_(r13) /* 802BD994 002B95F4 28 00 00 02 */ cmplwi r0, 2 /* 802BD998 002B95F8 41 80 00 18 */ blt lbl_802BD9B0 /* 802BD99C 002B95FC 3C 80 80 44 */ lis r4, lbl_80440044@ha /* 802BD9A0 002B9600 54 A5 06 3E */ clrlwi r5, r5, 0x18 /* 802BD9A4 002B9604 38 84 00 44 */ addi r4, r4, lbl_80440044@l /* 802BD9A8 002B9608 38 60 05 01 */ li r3, 0x501 /* 802BD9AC 002B960C 4B FF F5 7D */ bl LogMsg_1 lbl_802BD9B0: /* 802BD9B0 002B9610 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 802BD9B4 002B9614 41 82 00 0C */ beq lbl_802BD9C0 /* 802BD9B8 002B9618 7F C3 F3 78 */ mr r3, r30 /* 802BD9BC 002B961C 4B FF C3 79 */ bl GKI_freebuf lbl_802BD9C0: /* 802BD9C0 002B9620 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BD9C4 002B9624 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BD9C8 002B9628 83 C1 00 08 */ lwz r30, 8(r1) /* 802BD9CC 002B962C 7C 08 03 A6 */ mtlr r0 /* 802BD9D0 002B9630 38 21 00 10 */ addi r1, r1, 0x10 /* 802BD9D4 002B9634 4E 80 00 20 */ blr .global bta_sys_timer_update bta_sys_timer_update: /* 802BD9D8 002B9638 3C 60 80 57 */ lis r3, lbl_805686D8@ha /* 802BD9DC 002B963C 38 63 86 D8 */ addi r3, r3, lbl_805686D8@l /* 802BD9E0 002B9640 88 03 00 7C */ lbz r0, 0x7c(r3) /* 802BD9E4 002B9644 2C 00 00 00 */ cmpwi r0, 0 /* 802BD9E8 002B9648 4C 82 00 20 */ bnelr /* 802BD9EC 002B964C 38 63 00 68 */ addi r3, r3, 0x68 /* 802BD9F0 002B9650 48 00 01 28 */ b ptim_timer_update /* 802BD9F4 002B9654 4E 80 00 20 */ blr .global bta_sys_register bta_sys_register: /* 802BD9F8 002B9658 3C A0 80 57 */ lis r5, lbl_805686D8@ha /* 802BD9FC 002B965C 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 802BDA00 002B9660 38 A5 86 D8 */ addi r5, r5, lbl_805686D8@l /* 802BDA04 002B9664 7C 85 01 2E */ stwx r4, r5, r0 /* 802BDA08 002B9668 4E 80 00 20 */ blr .global bta_sys_sendmsg bta_sys_sendmsg: /* 802BDA0C 002B966C 80 8D 8A 10 */ lwz r4, lbl_8063DCD0-_SDA_BASE_(r13) /* 802BDA10 002B9670 3C C0 80 57 */ lis r6, lbl_805686D8@ha /* 802BDA14 002B9674 38 C6 86 D8 */ addi r6, r6, lbl_805686D8@l /* 802BDA18 002B9678 7C 65 1B 78 */ mr r5, r3 /* 802BDA1C 002B967C 88 66 00 7D */ lbz r3, 0x7d(r6) /* 802BDA20 002B9680 88 84 00 02 */ lbz r4, 2(r4) /* 802BDA24 002B9684 4B FF C4 C4 */ b GKI_send_msg .global bta_sys_start_timer bta_sys_start_timer: /* 802BDA28 002B9688 3C E0 80 57 */ lis r7, lbl_805686D8@ha /* 802BDA2C 002B968C 7C 80 23 78 */ mr r0, r4 /* 802BDA30 002B9690 38 E7 86 D8 */ addi r7, r7, lbl_805686D8@l /* 802BDA34 002B9694 7C A6 2B 78 */ mr r6, r5 /* 802BDA38 002B9698 7C 64 1B 78 */ mr r4, r3 /* 802BDA3C 002B969C 7C 05 03 78 */ mr r5, r0 /* 802BDA40 002B96A0 38 67 00 68 */ addi r3, r7, 0x68 /* 802BDA44 002B96A4 48 00 01 88 */ b ptim_start_timer .global bta_sys_stop_timer bta_sys_stop_timer: /* 802BDA48 002B96A8 3C A0 80 57 */ lis r5, lbl_805686D8@ha /* 802BDA4C 002B96AC 7C 64 1B 78 */ mr r4, r3 /* 802BDA50 002B96B0 38 A5 86 D8 */ addi r5, r5, lbl_805686D8@l /* 802BDA54 002B96B4 38 65 00 68 */ addi r3, r5, 0x68 /* 802BDA58 002B96B8 48 00 02 14 */ b ptim_stop_timer .global bta_sys_disable bta_sys_disable: /* 802BDA5C 002B96BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BDA60 002B96C0 7C 08 02 A6 */ mflr r0 /* 802BDA64 002B96C4 90 01 00 14 */ stw r0, 0x14(r1) /* 802BDA68 002B96C8 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BDA6C 002B96CC 3F E0 80 57 */ lis r31, lbl_805686D8@ha /* 802BDA70 002B96D0 3B FF 86 D8 */ addi r31, r31, lbl_805686D8@l /* 802BDA74 002B96D4 93 C1 00 08 */ stw r30, 8(r1) /* 802BDA78 002B96D8 3B C0 00 00 */ li r30, 0 lbl_802BDA7C: /* 802BDA7C 002B96DC 80 7F 00 00 */ lwz r3, 0(r31) /* 802BDA80 002B96E0 2C 03 00 00 */ cmpwi r3, 0 /* 802BDA84 002B96E4 41 82 00 18 */ beq lbl_802BDA9C /* 802BDA88 002B96E8 81 83 00 04 */ lwz r12, 4(r3) /* 802BDA8C 002B96EC 2C 0C 00 00 */ cmpwi r12, 0 /* 802BDA90 002B96F0 41 82 00 0C */ beq lbl_802BDA9C /* 802BDA94 002B96F4 7D 89 03 A6 */ mtctr r12 /* 802BDA98 002B96F8 4E 80 04 21 */ bctrl lbl_802BDA9C: /* 802BDA9C 002B96FC 3B DE 00 01 */ addi r30, r30, 1 /* 802BDAA0 002B9700 3B FF 00 04 */ addi r31, r31, 4 /* 802BDAA4 002B9704 2C 1E 00 1A */ cmpwi r30, 0x1a /* 802BDAA8 002B9708 41 80 FF D4 */ blt lbl_802BDA7C /* 802BDAAC 002B970C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BDAB0 002B9710 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BDAB4 002B9714 83 C1 00 08 */ lwz r30, 8(r1) /* 802BDAB8 002B9718 7C 08 03 A6 */ mtlr r0 /* 802BDABC 002B971C 38 21 00 10 */ addi r1, r1, 0x10 /* 802BDAC0 002B9720 4E 80 00 20 */ blr .global bta_sys_set_trace_level bta_sys_set_trace_level: /* 802BDAC4 002B9724 98 6D AE F8 */ stb r3, lbl_806401B8-_SDA_BASE_(r13) /* 802BDAC8 002B9728 4E 80 00 20 */ blr