.include "macros.inc" .section .text, "ax" # 0x80005600 - 0x8036FBA0 .global TRKMessageIntoReply TRKMessageIntoReply: /* 80088B2C 00085A6C 7C 08 02 A6 */ mflr r0 /* 80088B30 00085A70 90 01 00 04 */ stw r0, 4(r1) /* 80088B34 00085A74 94 21 FF E8 */ stwu r1, -0x18(r1) /* 80088B38 00085A78 93 E1 00 14 */ stw r31, 0x14(r1) /* 80088B3C 00085A7C 3B E5 00 00 */ addi r31, r5, 0 /* 80088B40 00085A80 93 C1 00 10 */ stw r30, 0x10(r1) /* 80088B44 00085A84 3B C4 00 00 */ addi r30, r4, 0 /* 80088B48 00085A88 38 80 00 01 */ li r4, 1 /* 80088B4C 00085A8C 93 A1 00 0C */ stw r29, 0xc(r1) /* 80088B50 00085A90 3B A3 00 00 */ addi r29, r3, 0 /* 80088B54 00085A94 4B FF F6 DD */ bl TRKResetBuffer /* 80088B58 00085A98 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80088B5C 00085A9C 28 03 08 80 */ cmplwi r3, 0x880 /* 80088B60 00085AA0 40 80 00 20 */ bge lbl_80088B80 /* 80088B64 00085AA4 38 03 00 01 */ addi r0, r3, 1 /* 80088B68 00085AA8 7C 7D 1A 14 */ add r3, r29, r3 /* 80088B6C 00085AAC 90 1D 00 0C */ stw r0, 0xc(r29) /* 80088B70 00085AB0 9B C3 00 10 */ stb r30, 0x10(r3) /* 80088B74 00085AB4 80 7D 00 08 */ lwz r3, 8(r29) /* 80088B78 00085AB8 38 03 00 01 */ addi r0, r3, 1 /* 80088B7C 00085ABC 90 1D 00 08 */ stw r0, 8(r29) lbl_80088B80: /* 80088B80 00085AC0 80 7D 00 0C */ lwz r3, 0xc(r29) /* 80088B84 00085AC4 28 03 08 80 */ cmplwi r3, 0x880 /* 80088B88 00085AC8 40 80 00 20 */ bge lbl_80088BA8 /* 80088B8C 00085ACC 38 03 00 01 */ addi r0, r3, 1 /* 80088B90 00085AD0 7C 7D 1A 14 */ add r3, r29, r3 /* 80088B94 00085AD4 90 1D 00 0C */ stw r0, 0xc(r29) /* 80088B98 00085AD8 9B E3 00 10 */ stb r31, 0x10(r3) /* 80088B9C 00085ADC 80 7D 00 08 */ lwz r3, 8(r29) /* 80088BA0 00085AE0 38 03 00 01 */ addi r0, r3, 1 /* 80088BA4 00085AE4 90 1D 00 08 */ stw r0, 8(r29) lbl_80088BA8: /* 80088BA8 00085AE8 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80088BAC 00085AEC 83 C1 00 10 */ lwz r30, 0x10(r1) /* 80088BB0 00085AF0 83 A1 00 0C */ lwz r29, 0xc(r1) /* 80088BB4 00085AF4 38 21 00 18 */ addi r1, r1, 0x18 /* 80088BB8 00085AF8 80 01 00 04 */ lwz r0, 4(r1) /* 80088BBC 00085AFC 7C 08 03 A6 */ mtlr r0 /* 80088BC0 00085B00 4E 80 00 20 */ blr .global TRKSendACK TRKSendACK: /* 80088BC4 00085B04 7C 08 02 A6 */ mflr r0 /* 80088BC8 00085B08 90 01 00 04 */ stw r0, 4(r1) /* 80088BCC 00085B0C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80088BD0 00085B10 93 E1 00 0C */ stw r31, 0xc(r1) /* 80088BD4 00085B14 3B E0 00 03 */ li r31, 3 /* 80088BD8 00085B18 93 C1 00 08 */ stw r30, 8(r1) /* 80088BDC 00085B1C 3B C3 00 00 */ addi r30, r3, 0 lbl_80088BE0: /* 80088BE0 00085B20 7F C3 F3 78 */ mr r3, r30 /* 80088BE4 00085B24 4B FF F4 75 */ bl TRKMessageSend /* 80088BE8 00085B28 2C 03 00 00 */ cmpwi r3, 0 /* 80088BEC 00085B2C 3B FF FF FF */ addi r31, r31, -1 /* 80088BF0 00085B30 41 82 00 0C */ beq lbl_80088BFC /* 80088BF4 00085B34 2C 1F 00 00 */ cmpwi r31, 0 /* 80088BF8 00085B38 41 81 FF E8 */ bgt lbl_80088BE0 lbl_80088BFC: /* 80088BFC 00085B3C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80088C00 00085B40 83 C1 00 08 */ lwz r30, 8(r1) /* 80088C04 00085B44 38 21 00 10 */ addi r1, r1, 0x10 /* 80088C08 00085B48 80 01 00 04 */ lwz r0, 4(r1) /* 80088C0C 00085B4C 7C 08 03 A6 */ mtlr r0 /* 80088C10 00085B50 4E 80 00 20 */ blr .global TRKStandardACK TRKStandardACK: /* 80088C14 00085B54 7C 08 02 A6 */ mflr r0 /* 80088C18 00085B58 90 01 00 04 */ stw r0, 4(r1) /* 80088C1C 00085B5C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80088C20 00085B60 93 E1 00 0C */ stw r31, 0xc(r1) /* 80088C24 00085B64 7C 7F 1B 78 */ mr r31, r3 /* 80088C28 00085B68 4B FF FF 05 */ bl TRKMessageIntoReply /* 80088C2C 00085B6C 7F E3 FB 78 */ mr r3, r31 /* 80088C30 00085B70 4B FF FF 95 */ bl TRKSendACK /* 80088C34 00085B74 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80088C38 00085B78 38 21 00 10 */ addi r1, r1, 0x10 /* 80088C3C 00085B7C 80 01 00 04 */ lwz r0, 4(r1) /* 80088C40 00085B80 7C 08 03 A6 */ mtlr r0 /* 80088C44 00085B84 4E 80 00 20 */ blr .global TRKDoUnsupported TRKDoUnsupported: /* 80088C48 00085B88 7C 08 02 A6 */ mflr r0 /* 80088C4C 00085B8C 38 80 00 80 */ li r4, 0x80 /* 80088C50 00085B90 90 01 00 04 */ stw r0, 4(r1) /* 80088C54 00085B94 38 A0 00 10 */ li r5, 0x10 /* 80088C58 00085B98 94 21 FF F8 */ stwu r1, -8(r1) /* 80088C5C 00085B9C 4B FF FF B9 */ bl TRKStandardACK /* 80088C60 00085BA0 38 21 00 08 */ addi r1, r1, 8 /* 80088C64 00085BA4 80 01 00 04 */ lwz r0, 4(r1) /* 80088C68 00085BA8 7C 08 03 A6 */ mtlr r0 /* 80088C6C 00085BAC 4E 80 00 20 */ blr .global TRKDoConnect TRKDoConnect: /* 80088C70 00085BB0 7C 08 02 A6 */ mflr r0 /* 80088C74 00085BB4 38 80 00 80 */ li r4, 0x80 /* 80088C78 00085BB8 90 01 00 04 */ stw r0, 4(r1) /* 80088C7C 00085BBC 38 A0 00 00 */ li r5, 0 /* 80088C80 00085BC0 94 21 FF F8 */ stwu r1, -8(r1) /* 80088C84 00085BC4 4B FF FF 91 */ bl TRKStandardACK /* 80088C88 00085BC8 38 21 00 08 */ addi r1, r1, 8 /* 80088C8C 00085BCC 80 01 00 04 */ lwz r0, 4(r1) /* 80088C90 00085BD0 7C 08 03 A6 */ mtlr r0 /* 80088C94 00085BD4 4E 80 00 20 */ blr .global TRKDoDisconnect TRKDoDisconnect: /* 80088C98 00085BD8 7C 08 02 A6 */ mflr r0 /* 80088C9C 00085BDC 38 80 00 80 */ li r4, 0x80 /* 80088CA0 00085BE0 90 01 00 04 */ stw r0, 4(r1) /* 80088CA4 00085BE4 38 A0 00 00 */ li r5, 0 /* 80088CA8 00085BE8 94 21 FF E8 */ stwu r1, -0x18(r1) /* 80088CAC 00085BEC 93 E1 00 14 */ stw r31, 0x14(r1) /* 80088CB0 00085BF0 4B FF FF 65 */ bl TRKStandardACK /* 80088CB4 00085BF4 7C 7F 1B 79 */ or. r31, r3, r3 /* 80088CB8 00085BF8 40 82 00 18 */ bne lbl_80088CD0 /* 80088CBC 00085BFC 38 61 00 08 */ addi r3, r1, 8 /* 80088CC0 00085C00 38 80 00 01 */ li r4, 1 /* 80088CC4 00085C04 4B FF F1 C5 */ bl TRKConstructEvent /* 80088CC8 00085C08 38 61 00 08 */ addi r3, r1, 8 /* 80088CCC 00085C0C 4B FF F0 DD */ bl TRKPostEvent lbl_80088CD0: /* 80088CD0 00085C10 7F E3 FB 78 */ mr r3, r31 /* 80088CD4 00085C14 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80088CD8 00085C18 38 21 00 18 */ addi r1, r1, 0x18 /* 80088CDC 00085C1C 80 01 00 04 */ lwz r0, 4(r1) /* 80088CE0 00085C20 7C 08 03 A6 */ mtlr r0 /* 80088CE4 00085C24 4E 80 00 20 */ blr .global TRKDoReset TRKDoReset: /* 80088CE8 00085C28 7C 08 02 A6 */ mflr r0 /* 80088CEC 00085C2C 38 80 00 80 */ li r4, 0x80 /* 80088CF0 00085C30 90 01 00 04 */ stw r0, 4(r1) /* 80088CF4 00085C34 38 A0 00 00 */ li r5, 0 /* 80088CF8 00085C38 94 21 FF F8 */ stwu r1, -8(r1) /* 80088CFC 00085C3C 4B FF FF 19 */ bl TRKStandardACK /* 80088D00 00085C40 4B F7 C4 CD */ bl __TRK_reset /* 80088D04 00085C44 38 60 00 00 */ li r3, 0 /* 80088D08 00085C48 38 21 00 08 */ addi r1, r1, 8 /* 80088D0C 00085C4C 80 01 00 04 */ lwz r0, 4(r1) /* 80088D10 00085C50 7C 08 03 A6 */ mtlr r0 /* 80088D14 00085C54 4E 80 00 20 */ blr .global TRKDoVersions TRKDoVersions: /* 80088D18 00085C58 7C 08 02 A6 */ mflr r0 /* 80088D1C 00085C5C 90 01 00 04 */ stw r0, 4(r1) /* 80088D20 00085C60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80088D24 00085C64 93 E1 00 0C */ stw r31, 0xc(r1) /* 80088D28 00085C68 7C 7F 1B 78 */ mr r31, r3 /* 80088D2C 00085C6C 80 03 00 08 */ lwz r0, 8(r3) /* 80088D30 00085C70 28 00 00 01 */ cmplwi r0, 1 /* 80088D34 00085C74 41 82 00 18 */ beq lbl_80088D4C /* 80088D38 00085C78 38 7F 00 00 */ addi r3, r31, 0 /* 80088D3C 00085C7C 38 80 00 80 */ li r4, 0x80 /* 80088D40 00085C80 38 A0 00 02 */ li r5, 2 /* 80088D44 00085C84 4B FF FE D1 */ bl TRKStandardACK /* 80088D48 00085C88 48 00 01 40 */ b lbl_80088E88 lbl_80088D4C: /* 80088D4C 00085C8C 38 7F 00 00 */ addi r3, r31, 0 /* 80088D50 00085C90 38 80 00 80 */ li r4, 0x80 /* 80088D54 00085C94 38 A0 00 00 */ li r5, 0 /* 80088D58 00085C98 4B FF FD D5 */ bl TRKMessageIntoReply /* 80088D5C 00085C9C 38 61 00 08 */ addi r3, r1, 8 /* 80088D60 00085CA0 48 00 1F 45 */ bl TRKTargetVersions /* 80088D64 00085CA4 2C 03 00 00 */ cmpwi r3, 0 /* 80088D68 00085CA8 40 82 00 3C */ bne lbl_80088DA4 /* 80088D6C 00085CAC 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088D70 00085CB0 88 A1 00 08 */ lbz r5, 8(r1) /* 80088D74 00085CB4 28 03 08 80 */ cmplwi r3, 0x880 /* 80088D78 00085CB8 41 80 00 0C */ blt lbl_80088D84 /* 80088D7C 00085CBC 38 60 03 01 */ li r3, 0x301 /* 80088D80 00085CC0 48 00 00 24 */ b lbl_80088DA4 lbl_80088D84: /* 80088D84 00085CC4 38 03 00 01 */ addi r0, r3, 1 /* 80088D88 00085CC8 7C 9F 1A 14 */ add r4, r31, r3 /* 80088D8C 00085CCC 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088D90 00085CD0 38 60 00 00 */ li r3, 0 /* 80088D94 00085CD4 98 A4 00 10 */ stb r5, 0x10(r4) /* 80088D98 00085CD8 80 9F 00 08 */ lwz r4, 8(r31) /* 80088D9C 00085CDC 38 04 00 01 */ addi r0, r4, 1 /* 80088DA0 00085CE0 90 1F 00 08 */ stw r0, 8(r31) lbl_80088DA4: /* 80088DA4 00085CE4 2C 03 00 00 */ cmpwi r3, 0 /* 80088DA8 00085CE8 40 82 00 3C */ bne lbl_80088DE4 /* 80088DAC 00085CEC 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088DB0 00085CF0 88 A1 00 09 */ lbz r5, 9(r1) /* 80088DB4 00085CF4 28 03 08 80 */ cmplwi r3, 0x880 /* 80088DB8 00085CF8 41 80 00 0C */ blt lbl_80088DC4 /* 80088DBC 00085CFC 38 60 03 01 */ li r3, 0x301 /* 80088DC0 00085D00 48 00 00 24 */ b lbl_80088DE4 lbl_80088DC4: /* 80088DC4 00085D04 38 03 00 01 */ addi r0, r3, 1 /* 80088DC8 00085D08 7C 9F 1A 14 */ add r4, r31, r3 /* 80088DCC 00085D0C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088DD0 00085D10 38 60 00 00 */ li r3, 0 /* 80088DD4 00085D14 98 A4 00 10 */ stb r5, 0x10(r4) /* 80088DD8 00085D18 80 9F 00 08 */ lwz r4, 8(r31) /* 80088DDC 00085D1C 38 04 00 01 */ addi r0, r4, 1 /* 80088DE0 00085D20 90 1F 00 08 */ stw r0, 8(r31) lbl_80088DE4: /* 80088DE4 00085D24 2C 03 00 00 */ cmpwi r3, 0 /* 80088DE8 00085D28 40 82 00 3C */ bne lbl_80088E24 /* 80088DEC 00085D2C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088DF0 00085D30 88 A1 00 0A */ lbz r5, 0xa(r1) /* 80088DF4 00085D34 28 03 08 80 */ cmplwi r3, 0x880 /* 80088DF8 00085D38 41 80 00 0C */ blt lbl_80088E04 /* 80088DFC 00085D3C 38 60 03 01 */ li r3, 0x301 /* 80088E00 00085D40 48 00 00 24 */ b lbl_80088E24 lbl_80088E04: /* 80088E04 00085D44 38 03 00 01 */ addi r0, r3, 1 /* 80088E08 00085D48 7C 9F 1A 14 */ add r4, r31, r3 /* 80088E0C 00085D4C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088E10 00085D50 38 60 00 00 */ li r3, 0 /* 80088E14 00085D54 98 A4 00 10 */ stb r5, 0x10(r4) /* 80088E18 00085D58 80 9F 00 08 */ lwz r4, 8(r31) /* 80088E1C 00085D5C 38 04 00 01 */ addi r0, r4, 1 /* 80088E20 00085D60 90 1F 00 08 */ stw r0, 8(r31) lbl_80088E24: /* 80088E24 00085D64 2C 03 00 00 */ cmpwi r3, 0 /* 80088E28 00085D68 40 82 00 3C */ bne lbl_80088E64 /* 80088E2C 00085D6C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088E30 00085D70 88 A1 00 0B */ lbz r5, 0xb(r1) /* 80088E34 00085D74 28 03 08 80 */ cmplwi r3, 0x880 /* 80088E38 00085D78 41 80 00 0C */ blt lbl_80088E44 /* 80088E3C 00085D7C 38 60 03 01 */ li r3, 0x301 /* 80088E40 00085D80 48 00 00 24 */ b lbl_80088E64 lbl_80088E44: /* 80088E44 00085D84 38 03 00 01 */ addi r0, r3, 1 /* 80088E48 00085D88 7C 9F 1A 14 */ add r4, r31, r3 /* 80088E4C 00085D8C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088E50 00085D90 38 60 00 00 */ li r3, 0 /* 80088E54 00085D94 98 A4 00 10 */ stb r5, 0x10(r4) /* 80088E58 00085D98 80 9F 00 08 */ lwz r4, 8(r31) /* 80088E5C 00085D9C 38 04 00 01 */ addi r0, r4, 1 /* 80088E60 00085DA0 90 1F 00 08 */ stw r0, 8(r31) lbl_80088E64: /* 80088E64 00085DA4 2C 03 00 00 */ cmpwi r3, 0 /* 80088E68 00085DA8 41 82 00 18 */ beq lbl_80088E80 /* 80088E6C 00085DAC 38 7F 00 00 */ addi r3, r31, 0 /* 80088E70 00085DB0 38 80 00 80 */ li r4, 0x80 /* 80088E74 00085DB4 38 A0 00 03 */ li r5, 3 /* 80088E78 00085DB8 4B FF FD 9D */ bl TRKStandardACK /* 80088E7C 00085DBC 48 00 00 0C */ b lbl_80088E88 lbl_80088E80: /* 80088E80 00085DC0 7F E3 FB 78 */ mr r3, r31 /* 80088E84 00085DC4 4B FF FD 41 */ bl TRKSendACK lbl_80088E88: /* 80088E88 00085DC8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80088E8C 00085DCC 38 21 00 10 */ addi r1, r1, 0x10 /* 80088E90 00085DD0 80 01 00 04 */ lwz r0, 4(r1) /* 80088E94 00085DD4 7C 08 03 A6 */ mtlr r0 /* 80088E98 00085DD8 4E 80 00 20 */ blr .global TRKDoSupportMask TRKDoSupportMask: /* 80088E9C 00085DDC 7C 08 02 A6 */ mflr r0 /* 80088EA0 00085DE0 90 01 00 04 */ stw r0, 4(r1) /* 80088EA4 00085DE4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80088EA8 00085DE8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80088EAC 00085DEC 7C 7F 1B 78 */ mr r31, r3 /* 80088EB0 00085DF0 80 03 00 08 */ lwz r0, 8(r3) /* 80088EB4 00085DF4 28 00 00 01 */ cmplwi r0, 1 /* 80088EB8 00085DF8 41 82 00 18 */ beq lbl_80088ED0 /* 80088EBC 00085DFC 38 7F 00 00 */ addi r3, r31, 0 /* 80088EC0 00085E00 38 80 00 80 */ li r4, 0x80 /* 80088EC4 00085E04 38 A0 00 02 */ li r5, 2 /* 80088EC8 00085E08 4B FF FD 4D */ bl TRKStandardACK /* 80088ECC 00085E0C 48 00 00 98 */ b lbl_80088F64 lbl_80088ED0: /* 80088ED0 00085E10 38 7F 00 00 */ addi r3, r31, 0 /* 80088ED4 00085E14 38 80 00 80 */ li r4, 0x80 /* 80088ED8 00085E18 38 A0 00 00 */ li r5, 0 /* 80088EDC 00085E1C 4B FF FC 51 */ bl TRKMessageIntoReply /* 80088EE0 00085E20 38 61 00 08 */ addi r3, r1, 8 /* 80088EE4 00085E24 48 00 1D E9 */ bl TRKTargetSupportMask /* 80088EE8 00085E28 2C 03 00 00 */ cmpwi r3, 0 /* 80088EEC 00085E2C 40 82 00 14 */ bne lbl_80088F00 /* 80088EF0 00085E30 38 7F 00 00 */ addi r3, r31, 0 /* 80088EF4 00085E34 38 81 00 08 */ addi r4, r1, 8 /* 80088EF8 00085E38 38 A0 00 20 */ li r5, 0x20 /* 80088EFC 00085E3C 4B FF F3 A5 */ bl TRKAppendBuffer lbl_80088F00: /* 80088F00 00085E40 2C 03 00 00 */ cmpwi r3, 0 /* 80088F04 00085E44 40 82 00 3C */ bne lbl_80088F40 /* 80088F08 00085E48 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088F0C 00085E4C 28 03 08 80 */ cmplwi r3, 0x880 /* 80088F10 00085E50 41 80 00 0C */ blt lbl_80088F1C /* 80088F14 00085E54 38 60 03 01 */ li r3, 0x301 /* 80088F18 00085E58 48 00 00 28 */ b lbl_80088F40 lbl_80088F1C: /* 80088F1C 00085E5C 38 03 00 01 */ addi r0, r3, 1 /* 80088F20 00085E60 7C 9F 1A 14 */ add r4, r31, r3 /* 80088F24 00085E64 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088F28 00085E68 38 00 00 02 */ li r0, 2 /* 80088F2C 00085E6C 38 60 00 00 */ li r3, 0 /* 80088F30 00085E70 98 04 00 10 */ stb r0, 0x10(r4) /* 80088F34 00085E74 80 9F 00 08 */ lwz r4, 8(r31) /* 80088F38 00085E78 38 04 00 01 */ addi r0, r4, 1 /* 80088F3C 00085E7C 90 1F 00 08 */ stw r0, 8(r31) lbl_80088F40: /* 80088F40 00085E80 2C 03 00 00 */ cmpwi r3, 0 /* 80088F44 00085E84 41 82 00 18 */ beq lbl_80088F5C /* 80088F48 00085E88 38 7F 00 00 */ addi r3, r31, 0 /* 80088F4C 00085E8C 38 80 00 80 */ li r4, 0x80 /* 80088F50 00085E90 38 A0 00 03 */ li r5, 3 /* 80088F54 00085E94 4B FF FC C1 */ bl TRKStandardACK /* 80088F58 00085E98 48 00 00 0C */ b lbl_80088F64 lbl_80088F5C: /* 80088F5C 00085E9C 7F E3 FB 78 */ mr r3, r31 /* 80088F60 00085EA0 4B FF FC 65 */ bl TRKSendACK lbl_80088F64: /* 80088F64 00085EA4 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80088F68 00085EA8 38 21 00 30 */ addi r1, r1, 0x30 /* 80088F6C 00085EAC 80 01 00 04 */ lwz r0, 4(r1) /* 80088F70 00085EB0 7C 08 03 A6 */ mtlr r0 /* 80088F74 00085EB4 4E 80 00 20 */ blr .global TRKDoCPUType TRKDoCPUType: /* 80088F78 00085EB8 7C 08 02 A6 */ mflr r0 /* 80088F7C 00085EBC 90 01 00 04 */ stw r0, 4(r1) /* 80088F80 00085EC0 94 21 FF E8 */ stwu r1, -0x18(r1) /* 80088F84 00085EC4 93 E1 00 14 */ stw r31, 0x14(r1) /* 80088F88 00085EC8 7C 7F 1B 78 */ mr r31, r3 /* 80088F8C 00085ECC 80 03 00 08 */ lwz r0, 8(r3) /* 80088F90 00085ED0 28 00 00 01 */ cmplwi r0, 1 /* 80088F94 00085ED4 41 82 00 18 */ beq lbl_80088FAC /* 80088F98 00085ED8 38 7F 00 00 */ addi r3, r31, 0 /* 80088F9C 00085EDC 38 80 00 80 */ li r4, 0x80 /* 80088FA0 00085EE0 38 A0 00 02 */ li r5, 2 /* 80088FA4 00085EE4 4B FF FC 71 */ bl TRKStandardACK /* 80088FA8 00085EE8 48 00 02 00 */ b lbl_800891A8 lbl_80088FAC: /* 80088FAC 00085EEC 38 7F 00 00 */ addi r3, r31, 0 /* 80088FB0 00085EF0 38 80 00 80 */ li r4, 0x80 /* 80088FB4 00085EF4 38 A0 00 00 */ li r5, 0 /* 80088FB8 00085EF8 4B FF FB 75 */ bl TRKMessageIntoReply /* 80088FBC 00085EFC 38 61 00 08 */ addi r3, r1, 8 /* 80088FC0 00085F00 48 00 1D B1 */ bl TRKTargetCPUType /* 80088FC4 00085F04 2C 03 00 00 */ cmpwi r3, 0 /* 80088FC8 00085F08 40 82 00 3C */ bne lbl_80089004 /* 80088FCC 00085F0C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80088FD0 00085F10 88 A1 00 08 */ lbz r5, 8(r1) /* 80088FD4 00085F14 28 03 08 80 */ cmplwi r3, 0x880 /* 80088FD8 00085F18 41 80 00 0C */ blt lbl_80088FE4 /* 80088FDC 00085F1C 38 60 03 01 */ li r3, 0x301 /* 80088FE0 00085F20 48 00 00 24 */ b lbl_80089004 lbl_80088FE4: /* 80088FE4 00085F24 38 03 00 01 */ addi r0, r3, 1 /* 80088FE8 00085F28 7C 9F 1A 14 */ add r4, r31, r3 /* 80088FEC 00085F2C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80088FF0 00085F30 38 60 00 00 */ li r3, 0 /* 80088FF4 00085F34 98 A4 00 10 */ stb r5, 0x10(r4) /* 80088FF8 00085F38 80 9F 00 08 */ lwz r4, 8(r31) /* 80088FFC 00085F3C 38 04 00 01 */ addi r0, r4, 1 /* 80089000 00085F40 90 1F 00 08 */ stw r0, 8(r31) lbl_80089004: /* 80089004 00085F44 2C 03 00 00 */ cmpwi r3, 0 /* 80089008 00085F48 40 82 00 3C */ bne lbl_80089044 /* 8008900C 00085F4C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80089010 00085F50 88 A1 00 09 */ lbz r5, 9(r1) /* 80089014 00085F54 28 03 08 80 */ cmplwi r3, 0x880 /* 80089018 00085F58 41 80 00 0C */ blt lbl_80089024 /* 8008901C 00085F5C 38 60 03 01 */ li r3, 0x301 /* 80089020 00085F60 48 00 00 24 */ b lbl_80089044 lbl_80089024: /* 80089024 00085F64 38 03 00 01 */ addi r0, r3, 1 /* 80089028 00085F68 7C 9F 1A 14 */ add r4, r31, r3 /* 8008902C 00085F6C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80089030 00085F70 38 60 00 00 */ li r3, 0 /* 80089034 00085F74 98 A4 00 10 */ stb r5, 0x10(r4) /* 80089038 00085F78 80 9F 00 08 */ lwz r4, 8(r31) /* 8008903C 00085F7C 38 04 00 01 */ addi r0, r4, 1 /* 80089040 00085F80 90 1F 00 08 */ stw r0, 8(r31) lbl_80089044: /* 80089044 00085F84 2C 03 00 00 */ cmpwi r3, 0 /* 80089048 00085F88 40 82 00 3C */ bne lbl_80089084 /* 8008904C 00085F8C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80089050 00085F90 88 A1 00 0A */ lbz r5, 0xa(r1) /* 80089054 00085F94 28 03 08 80 */ cmplwi r3, 0x880 /* 80089058 00085F98 41 80 00 0C */ blt lbl_80089064 /* 8008905C 00085F9C 38 60 03 01 */ li r3, 0x301 /* 80089060 00085FA0 48 00 00 24 */ b lbl_80089084 lbl_80089064: /* 80089064 00085FA4 38 03 00 01 */ addi r0, r3, 1 /* 80089068 00085FA8 7C 9F 1A 14 */ add r4, r31, r3 /* 8008906C 00085FAC 90 1F 00 0C */ stw r0, 0xc(r31) /* 80089070 00085FB0 38 60 00 00 */ li r3, 0 /* 80089074 00085FB4 98 A4 00 10 */ stb r5, 0x10(r4) /* 80089078 00085FB8 80 9F 00 08 */ lwz r4, 8(r31) /* 8008907C 00085FBC 38 04 00 01 */ addi r0, r4, 1 /* 80089080 00085FC0 90 1F 00 08 */ stw r0, 8(r31) lbl_80089084: /* 80089084 00085FC4 2C 03 00 00 */ cmpwi r3, 0 /* 80089088 00085FC8 40 82 00 3C */ bne lbl_800890C4 /* 8008908C 00085FCC 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80089090 00085FD0 88 A1 00 0B */ lbz r5, 0xb(r1) /* 80089094 00085FD4 28 03 08 80 */ cmplwi r3, 0x880 /* 80089098 00085FD8 41 80 00 0C */ blt lbl_800890A4 /* 8008909C 00085FDC 38 60 03 01 */ li r3, 0x301 /* 800890A0 00085FE0 48 00 00 24 */ b lbl_800890C4 lbl_800890A4: /* 800890A4 00085FE4 38 03 00 01 */ addi r0, r3, 1 /* 800890A8 00085FE8 7C 9F 1A 14 */ add r4, r31, r3 /* 800890AC 00085FEC 90 1F 00 0C */ stw r0, 0xc(r31) /* 800890B0 00085FF0 38 60 00 00 */ li r3, 0 /* 800890B4 00085FF4 98 A4 00 10 */ stb r5, 0x10(r4) /* 800890B8 00085FF8 80 9F 00 08 */ lwz r4, 8(r31) /* 800890BC 00085FFC 38 04 00 01 */ addi r0, r4, 1 /* 800890C0 00086000 90 1F 00 08 */ stw r0, 8(r31) lbl_800890C4: /* 800890C4 00086004 2C 03 00 00 */ cmpwi r3, 0 /* 800890C8 00086008 40 82 00 3C */ bne lbl_80089104 /* 800890CC 0008600C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 800890D0 00086010 88 A1 00 0C */ lbz r5, 0xc(r1) /* 800890D4 00086014 28 03 08 80 */ cmplwi r3, 0x880 /* 800890D8 00086018 41 80 00 0C */ blt lbl_800890E4 /* 800890DC 0008601C 38 60 03 01 */ li r3, 0x301 /* 800890E0 00086020 48 00 00 24 */ b lbl_80089104 lbl_800890E4: /* 800890E4 00086024 38 03 00 01 */ addi r0, r3, 1 /* 800890E8 00086028 7C 9F 1A 14 */ add r4, r31, r3 /* 800890EC 0008602C 90 1F 00 0C */ stw r0, 0xc(r31) /* 800890F0 00086030 38 60 00 00 */ li r3, 0 /* 800890F4 00086034 98 A4 00 10 */ stb r5, 0x10(r4) /* 800890F8 00086038 80 9F 00 08 */ lwz r4, 8(r31) /* 800890FC 0008603C 38 04 00 01 */ addi r0, r4, 1 /* 80089100 00086040 90 1F 00 08 */ stw r0, 8(r31) lbl_80089104: /* 80089104 00086044 2C 03 00 00 */ cmpwi r3, 0 /* 80089108 00086048 40 82 00 3C */ bne lbl_80089144 /* 8008910C 0008604C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80089110 00086050 88 A1 00 0D */ lbz r5, 0xd(r1) /* 80089114 00086054 28 03 08 80 */ cmplwi r3, 0x880 /* 80089118 00086058 41 80 00 0C */ blt lbl_80089124 /* 8008911C 0008605C 38 60 03 01 */ li r3, 0x301 /* 80089120 00086060 48 00 00 24 */ b lbl_80089144 lbl_80089124: /* 80089124 00086064 38 03 00 01 */ addi r0, r3, 1 /* 80089128 00086068 7C 9F 1A 14 */ add r4, r31, r3 /* 8008912C 0008606C 90 1F 00 0C */ stw r0, 0xc(r31) /* 80089130 00086070 38 60 00 00 */ li r3, 0 /* 80089134 00086074 98 A4 00 10 */ stb r5, 0x10(r4) /* 80089138 00086078 80 9F 00 08 */ lwz r4, 8(r31) /* 8008913C 0008607C 38 04 00 01 */ addi r0, r4, 1 /* 80089140 00086080 90 1F 00 08 */ stw r0, 8(r31) lbl_80089144: /* 80089144 00086084 2C 03 00 00 */ cmpwi r3, 0 /* 80089148 00086088 40 82 00 3C */ bne lbl_80089184 /* 8008914C 0008608C 80 7F 00 0C */ lwz r3, 0xc(r31) /* 80089150 00086090 88 A1 00 0E */ lbz r5, 0xe(r1) /* 80089154 00086094 28 03 08 80 */ cmplwi r3, 0x880 /* 80089158 00086098 41 80 00 0C */ blt lbl_80089164 /* 8008915C 0008609C 38 60 03 01 */ li r3, 0x301 /* 80089160 000860A0 48 00 00 24 */ b lbl_80089184 lbl_80089164: /* 80089164 000860A4 38 03 00 01 */ addi r0, r3, 1 /* 80089168 000860A8 7C 9F 1A 14 */ add r4, r31, r3 /* 8008916C 000860AC 90 1F 00 0C */ stw r0, 0xc(r31) /* 80089170 000860B0 38 60 00 00 */ li r3, 0 /* 80089174 000860B4 98 A4 00 10 */ stb r5, 0x10(r4) /* 80089178 000860B8 80 9F 00 08 */ lwz r4, 8(r31) /* 8008917C 000860BC 38 04 00 01 */ addi r0, r4, 1 /* 80089180 000860C0 90 1F 00 08 */ stw r0, 8(r31) lbl_80089184: /* 80089184 000860C4 2C 03 00 00 */ cmpwi r3, 0 /* 80089188 000860C8 41 82 00 18 */ beq lbl_800891A0 /* 8008918C 000860CC 38 7F 00 00 */ addi r3, r31, 0 /* 80089190 000860D0 38 80 00 80 */ li r4, 0x80 /* 80089194 000860D4 38 A0 00 03 */ li r5, 3 /* 80089198 000860D8 4B FF FA 7D */ bl TRKStandardACK /* 8008919C 000860DC 48 00 00 0C */ b lbl_800891A8 lbl_800891A0: /* 800891A0 000860E0 7F E3 FB 78 */ mr r3, r31 /* 800891A4 000860E4 4B FF FA 21 */ bl TRKSendACK lbl_800891A8: /* 800891A8 000860E8 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800891AC 000860EC 38 21 00 18 */ addi r1, r1, 0x18 /* 800891B0 000860F0 80 01 00 04 */ lwz r0, 4(r1) /* 800891B4 000860F4 7C 08 03 A6 */ mtlr r0 /* 800891B8 000860F8 4E 80 00 20 */ blr .global TRKDoReadMemory TRKDoReadMemory: /* 800891BC 000860FC 7C 08 02 A6 */ mflr r0 /* 800891C0 00086100 90 01 00 04 */ stw r0, 4(r1) /* 800891C4 00086104 94 21 F7 E0 */ stwu r1, -0x820(r1) /* 800891C8 00086108 93 E1 08 1C */ stw r31, 0x81c(r1) /* 800891CC 0008610C 7C 7F 1B 78 */ mr r31, r3 /* 800891D0 00086110 93 C1 08 18 */ stw r30, 0x818(r1) /* 800891D4 00086114 80 03 00 08 */ lwz r0, 8(r3) /* 800891D8 00086118 28 00 00 08 */ cmplwi r0, 8 /* 800891DC 0008611C 41 82 00 18 */ beq lbl_800891F4 /* 800891E0 00086120 38 7F 00 00 */ addi r3, r31, 0 /* 800891E4 00086124 38 80 00 80 */ li r4, 0x80 /* 800891E8 00086128 38 A0 00 02 */ li r5, 2 /* 800891EC 0008612C 4B FF FA 29 */ bl TRKStandardACK /* 800891F0 00086130 48 00 01 9C */ b lbl_8008938C lbl_800891F4: /* 800891F4 00086134 38 7F 00 00 */ addi r3, r31, 0 /* 800891F8 00086138 38 80 00 00 */ li r4, 0 /* 800891FC 0008613C 4B FF F0 75 */ bl TRKSetBufferPosition /* 80089200 00086140 38 7F 00 00 */ addi r3, r31, 0 /* 80089204 00086144 38 81 00 08 */ addi r4, r1, 8 /* 80089208 00086148 4B FF F3 ED */ bl TRKReadBuffer1_ui8 /* 8008920C 0008614C 7C 7E 1B 79 */ or. r30, r3, r3 /* 80089210 00086150 40 82 00 14 */ bne lbl_80089224 /* 80089214 00086154 38 7F 00 00 */ addi r3, r31, 0 /* 80089218 00086158 38 81 00 09 */ addi r4, r1, 9 /* 8008921C 0008615C 4B FF F3 D9 */ bl TRKReadBuffer1_ui8 /* 80089220 00086160 7C 7E 1B 78 */ mr r30, r3 lbl_80089224: /* 80089224 00086164 2C 1E 00 00 */ cmpwi r30, 0 /* 80089228 00086168 40 82 00 14 */ bne lbl_8008923C /* 8008922C 0008616C 38 7F 00 00 */ addi r3, r31, 0 /* 80089230 00086170 38 81 00 0A */ addi r4, r1, 0xa /* 80089234 00086174 4B FF F3 E5 */ bl TRKReadBuffer1_ui16 /* 80089238 00086178 7C 7E 1B 78 */ mr r30, r3 lbl_8008923C: /* 8008923C 0008617C 2C 1E 00 00 */ cmpwi r30, 0 /* 80089240 00086180 40 82 00 14 */ bne lbl_80089254 /* 80089244 00086184 38 7F 00 00 */ addi r3, r31, 0 /* 80089248 00086188 38 81 00 0C */ addi r4, r1, 0xc /* 8008924C 0008618C 4B FF F4 4D */ bl TRKReadBuffer1_ui32 /* 80089250 00086190 7C 7E 1B 78 */ mr r30, r3 lbl_80089254: /* 80089254 00086194 88 01 00 09 */ lbz r0, 9(r1) /* 80089258 00086198 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 8008925C 0008619C 41 82 00 18 */ beq lbl_80089274 /* 80089260 000861A0 38 7F 00 00 */ addi r3, r31, 0 /* 80089264 000861A4 38 80 00 80 */ li r4, 0x80 /* 80089268 000861A8 38 A0 00 12 */ li r5, 0x12 /* 8008926C 000861AC 4B FF F9 A9 */ bl TRKStandardACK /* 80089270 000861B0 48 00 01 1C */ b lbl_8008938C lbl_80089274: /* 80089274 000861B4 A0 01 00 0A */ lhz r0, 0xa(r1) /* 80089278 000861B8 28 00 08 00 */ cmplwi r0, 0x800 /* 8008927C 000861BC 40 81 00 18 */ ble lbl_80089294 /* 80089280 000861C0 38 7F 00 00 */ addi r3, r31, 0 /* 80089284 000861C4 38 80 00 80 */ li r4, 0x80 /* 80089288 000861C8 38 A0 00 11 */ li r5, 0x11 /* 8008928C 000861CC 4B FF F9 89 */ bl TRKStandardACK /* 80089290 000861D0 48 00 00 FC */ b lbl_8008938C lbl_80089294: /* 80089294 000861D4 38 7F 00 00 */ addi r3, r31, 0 /* 80089298 000861D8 38 80 00 80 */ li r4, 0x80 /* 8008929C 000861DC 38 A0 00 00 */ li r5, 0 /* 800892A0 000861E0 4B FF F8 8D */ bl TRKMessageIntoReply /* 800892A4 000861E4 2C 1E 00 00 */ cmpwi r30, 0 /* 800892A8 000861E8 40 82 00 74 */ bne lbl_8008931C /* 800892AC 000861EC 88 01 00 09 */ lbz r0, 9(r1) /* 800892B0 000861F0 A0 61 00 0A */ lhz r3, 0xa(r1) /* 800892B4 000861F4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 800892B8 000861F8 90 61 00 10 */ stw r3, 0x10(r1) /* 800892BC 000861FC 41 82 00 0C */ beq lbl_800892C8 /* 800892C0 00086200 38 C0 00 00 */ li r6, 0 /* 800892C4 00086204 48 00 00 08 */ b lbl_800892CC lbl_800892C8: /* 800892C8 00086208 38 C0 00 01 */ li r6, 1 lbl_800892CC: /* 800892CC 0008620C 80 81 00 0C */ lwz r4, 0xc(r1) /* 800892D0 00086210 38 61 00 14 */ addi r3, r1, 0x14 /* 800892D4 00086214 38 A1 00 10 */ addi r5, r1, 0x10 /* 800892D8 00086218 38 E0 00 01 */ li r7, 1 /* 800892DC 0008621C 48 00 12 E1 */ bl TRKTargetAccessMemory /* 800892E0 00086220 80 01 00 10 */ lwz r0, 0x10(r1) /* 800892E4 00086224 7C 7E 1B 79 */ or. r30, r3, r3 /* 800892E8 00086228 B0 01 00 0A */ sth r0, 0xa(r1) /* 800892EC 0008622C 40 82 00 14 */ bne lbl_80089300 /* 800892F0 00086230 7F E3 FB 78 */ mr r3, r31 /* 800892F4 00086234 A0 81 00 0A */ lhz r4, 0xa(r1) /* 800892F8 00086238 4B FF F0 D9 */ bl TRKAppendBuffer1_ui16 /* 800892FC 0008623C 7C 7E 1B 78 */ mr r30, r3 lbl_80089300: /* 80089300 00086240 2C 1E 00 00 */ cmpwi r30, 0 /* 80089304 00086244 40 82 00 18 */ bne lbl_8008931C /* 80089308 00086248 80 A1 00 10 */ lwz r5, 0x10(r1) /* 8008930C 0008624C 38 7F 00 00 */ addi r3, r31, 0 /* 80089310 00086250 38 81 00 14 */ addi r4, r1, 0x14 /* 80089314 00086254 4B FF EF 8D */ bl TRKAppendBuffer /* 80089318 00086258 7C 7E 1B 78 */ mr r30, r3 lbl_8008931C: /* 8008931C 0008625C 2C 1E 00 00 */ cmpwi r30, 0 /* 80089320 00086260 41 82 00 64 */ beq lbl_80089384 /* 80089324 00086264 38 1E F9 00 */ addi r0, r30, -1792 /* 80089328 00086268 28 00 00 06 */ cmplwi r0, 6 /* 8008932C 0008626C 41 81 00 44 */ bgt lbl_80089370 /* 80089330 00086270 3C 60 80 3B */ lis r3, "@175"@ha /* 80089334 00086274 38 63 EF E0 */ addi r3, r3, "@175"@l /* 80089338 00086278 54 00 10 3A */ slwi r0, r0, 2 /* 8008933C 0008627C 7C 03 00 2E */ lwzx r0, r3, r0 /* 80089340 00086280 7C 09 03 A6 */ mtctr r0 /* 80089344 00086284 4E 80 04 20 */ bctr lbl_80089348: /* 80089348 00086288 38 A0 00 15 */ li r5, 0x15 /* 8008934C 0008628C 48 00 00 28 */ b lbl_80089374 lbl_80089350: /* 80089350 00086290 38 A0 00 13 */ li r5, 0x13 /* 80089354 00086294 48 00 00 20 */ b lbl_80089374 lbl_80089358: /* 80089358 00086298 38 A0 00 21 */ li r5, 0x21 /* 8008935C 0008629C 48 00 00 18 */ b lbl_80089374 lbl_80089360: /* 80089360 000862A0 38 A0 00 22 */ li r5, 0x22 /* 80089364 000862A4 48 00 00 10 */ b lbl_80089374 lbl_80089368: /* 80089368 000862A8 38 A0 00 20 */ li r5, 0x20 /* 8008936C 000862AC 48 00 00 08 */ b lbl_80089374 lbl_80089370: /* 80089370 000862B0 38 A0 00 03 */ li r5, 3 lbl_80089374: /* 80089374 000862B4 38 7F 00 00 */ addi r3, r31, 0 /* 80089378 000862B8 38 80 00 80 */ li r4, 0x80 /* 8008937C 000862BC 4B FF F8 99 */ bl TRKStandardACK /* 80089380 000862C0 48 00 00 0C */ b lbl_8008938C lbl_80089384: /* 80089384 000862C4 7F E3 FB 78 */ mr r3, r31 /* 80089388 000862C8 4B FF F8 3D */ bl TRKSendACK lbl_8008938C: /* 8008938C 000862CC 83 E1 08 1C */ lwz r31, 0x81c(r1) /* 80089390 000862D0 83 C1 08 18 */ lwz r30, 0x818(r1) /* 80089394 000862D4 38 21 08 20 */ addi r1, r1, 0x820 /* 80089398 000862D8 80 01 00 04 */ lwz r0, 4(r1) /* 8008939C 000862DC 7C 08 03 A6 */ mtlr r0 /* 800893A0 000862E0 4E 80 00 20 */ blr .global TRKDoWriteMemory TRKDoWriteMemory: /* 800893A4 000862E4 7C 08 02 A6 */ mflr r0 /* 800893A8 000862E8 90 01 00 04 */ stw r0, 4(r1) /* 800893AC 000862EC 94 21 F7 E0 */ stwu r1, -0x820(r1) /* 800893B0 000862F0 93 E1 08 1C */ stw r31, 0x81c(r1) /* 800893B4 000862F4 7C 7F 1B 78 */ mr r31, r3 /* 800893B8 000862F8 93 C1 08 18 */ stw r30, 0x818(r1) /* 800893BC 000862FC 80 03 00 08 */ lwz r0, 8(r3) /* 800893C0 00086300 28 00 00 08 */ cmplwi r0, 8 /* 800893C4 00086304 41 81 00 18 */ bgt lbl_800893DC /* 800893C8 00086308 38 7F 00 00 */ addi r3, r31, 0 /* 800893CC 0008630C 38 80 00 80 */ li r4, 0x80 /* 800893D0 00086310 38 A0 00 02 */ li r5, 2 /* 800893D4 00086314 4B FF F8 41 */ bl TRKStandardACK /* 800893D8 00086318 48 00 01 B0 */ b lbl_80089588 lbl_800893DC: /* 800893DC 0008631C 38 7F 00 00 */ addi r3, r31, 0 /* 800893E0 00086320 38 80 00 00 */ li r4, 0 /* 800893E4 00086324 4B FF EE 8D */ bl TRKSetBufferPosition /* 800893E8 00086328 38 7F 00 00 */ addi r3, r31, 0 /* 800893EC 0008632C 38 81 00 08 */ addi r4, r1, 8 /* 800893F0 00086330 4B FF F2 05 */ bl TRKReadBuffer1_ui8 /* 800893F4 00086334 7C 7E 1B 79 */ or. r30, r3, r3 /* 800893F8 00086338 40 82 00 14 */ bne lbl_8008940C /* 800893FC 0008633C 38 7F 00 00 */ addi r3, r31, 0 /* 80089400 00086340 38 81 00 09 */ addi r4, r1, 9 /* 80089404 00086344 4B FF F1 F1 */ bl TRKReadBuffer1_ui8 /* 80089408 00086348 7C 7E 1B 78 */ mr r30, r3 lbl_8008940C: /* 8008940C 0008634C 2C 1E 00 00 */ cmpwi r30, 0 /* 80089410 00086350 40 82 00 14 */ bne lbl_80089424 /* 80089414 00086354 38 7F 00 00 */ addi r3, r31, 0 /* 80089418 00086358 38 81 00 0A */ addi r4, r1, 0xa /* 8008941C 0008635C 4B FF F1 FD */ bl TRKReadBuffer1_ui16 /* 80089420 00086360 7C 7E 1B 78 */ mr r30, r3 lbl_80089424: /* 80089424 00086364 2C 1E 00 00 */ cmpwi r30, 0 /* 80089428 00086368 40 82 00 14 */ bne lbl_8008943C /* 8008942C 0008636C 38 7F 00 00 */ addi r3, r31, 0 /* 80089430 00086370 38 81 00 0C */ addi r4, r1, 0xc /* 80089434 00086374 4B FF F2 65 */ bl TRKReadBuffer1_ui32 /* 80089438 00086378 7C 7E 1B 78 */ mr r30, r3 lbl_8008943C: /* 8008943C 0008637C 88 01 00 09 */ lbz r0, 9(r1) /* 80089440 00086380 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 80089444 00086384 41 82 00 18 */ beq lbl_8008945C /* 80089448 00086388 38 7F 00 00 */ addi r3, r31, 0 /* 8008944C 0008638C 38 80 00 80 */ li r4, 0x80 /* 80089450 00086390 38 A0 00 12 */ li r5, 0x12 /* 80089454 00086394 4B FF F7 C1 */ bl TRKStandardACK /* 80089458 00086398 48 00 01 30 */ b lbl_80089588 lbl_8008945C: /* 8008945C 0008639C A0 81 00 0A */ lhz r4, 0xa(r1) /* 80089460 000863A0 80 7F 00 08 */ lwz r3, 8(r31) /* 80089464 000863A4 38 04 00 08 */ addi r0, r4, 8 /* 80089468 000863A8 7C 03 00 40 */ cmplw r3, r0 /* 8008946C 000863AC 40 82 00 0C */ bne lbl_80089478 /* 80089470 000863B0 28 04 08 00 */ cmplwi r4, 0x800 /* 80089474 000863B4 40 81 00 18 */ ble lbl_8008948C lbl_80089478: /* 80089478 000863B8 38 7F 00 00 */ addi r3, r31, 0 /* 8008947C 000863BC 38 80 00 80 */ li r4, 0x80 /* 80089480 000863C0 38 A0 00 11 */ li r5, 0x11 /* 80089484 000863C4 4B FF F7 91 */ bl TRKStandardACK /* 80089488 000863C8 48 00 01 00 */ b lbl_80089588 lbl_8008948C: /* 8008948C 000863CC 2C 1E 00 00 */ cmpwi r30, 0 /* 80089490 000863D0 40 82 00 58 */ bne lbl_800894E8 /* 80089494 000863D4 90 81 00 10 */ stw r4, 0x10(r1) /* 80089498 000863D8 38 7F 00 00 */ addi r3, r31, 0 /* 8008949C 000863DC 38 81 00 14 */ addi r4, r1, 0x14 /* 800894A0 000863E0 80 A1 00 10 */ lwz r5, 0x10(r1) /* 800894A4 000863E4 4B FF EE A1 */ bl TRKReadBuffer /* 800894A8 000863E8 7C 7E 1B 79 */ or. r30, r3, r3 /* 800894AC 000863EC 40 82 00 34 */ bne lbl_800894E0 /* 800894B0 000863F0 88 01 00 09 */ lbz r0, 9(r1) /* 800894B4 000863F4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c /* 800894B8 000863F8 41 82 00 0C */ beq lbl_800894C4 /* 800894BC 000863FC 38 C0 00 00 */ li r6, 0 /* 800894C0 00086400 48 00 00 08 */ b lbl_800894C8 lbl_800894C4: /* 800894C4 00086404 38 C0 00 01 */ li r6, 1 lbl_800894C8: /* 800894C8 00086408 80 81 00 0C */ lwz r4, 0xc(r1) /* 800894CC 0008640C 38 61 00 14 */ addi r3, r1, 0x14 /* 800894D0 00086410 38 A1 00 10 */ addi r5, r1, 0x10 /* 800894D4 00086414 38 E0 00 00 */ li r7, 0 /* 800894D8 00086418 48 00 10 E5 */ bl TRKTargetAccessMemory /* 800894DC 0008641C 7C 7E 1B 78 */ mr r30, r3 lbl_800894E0: /* 800894E0 00086420 80 01 00 10 */ lwz r0, 0x10(r1) /* 800894E4 00086424 B0 01 00 0A */ sth r0, 0xa(r1) lbl_800894E8: /* 800894E8 00086428 2C 1E 00 00 */ cmpwi r30, 0 /* 800894EC 0008642C 40 82 00 14 */ bne lbl_80089500 /* 800894F0 00086430 38 7F 00 00 */ addi r3, r31, 0 /* 800894F4 00086434 38 80 00 80 */ li r4, 0x80 /* 800894F8 00086438 38 A0 00 00 */ li r5, 0 /* 800894FC 0008643C 4B FF F6 31 */ bl TRKMessageIntoReply lbl_80089500: /* 80089500 00086440 2C 1E 00 00 */ cmpwi r30, 0 /* 80089504 00086444 40 82 00 14 */ bne lbl_80089518 /* 80089508 00086448 7F E3 FB 78 */ mr r3, r31 /* 8008950C 0008644C A0 81 00 0A */ lhz r4, 0xa(r1) /* 80089510 00086450 4B FF EE C1 */ bl TRKAppendBuffer1_ui16 /* 80089514 00086454 7C 7E 1B 78 */ mr r30, r3 lbl_80089518: /* 80089518 00086458 2C 1E 00 00 */ cmpwi r30, 0 /* 8008951C 0008645C 41 82 00 64 */ beq lbl_80089580 /* 80089520 00086460 38 1E F9 00 */ addi r0, r30, -1792 /* 80089524 00086464 28 00 00 06 */ cmplwi r0, 6 /* 80089528 00086468 41 81 00 44 */ bgt lbl_8008956C /* 8008952C 0008646C 3C 60 80 3B */ lis r3, "@214"@ha /* 80089530 00086470 38 63 EF FC */ addi r3, r3, "@214"@l /* 80089534 00086474 54 00 10 3A */ slwi r0, r0, 2 /* 80089538 00086478 7C 03 00 2E */ lwzx r0, r3, r0 /* 8008953C 0008647C 7C 09 03 A6 */ mtctr r0 /* 80089540 00086480 4E 80 04 20 */ bctr lbl_80089544: /* 80089544 00086484 38 A0 00 15 */ li r5, 0x15 /* 80089548 00086488 48 00 00 28 */ b lbl_80089570 lbl_8008954C: /* 8008954C 0008648C 38 A0 00 13 */ li r5, 0x13 /* 80089550 00086490 48 00 00 20 */ b lbl_80089570 lbl_80089554: /* 80089554 00086494 38 A0 00 21 */ li r5, 0x21 /* 80089558 00086498 48 00 00 18 */ b lbl_80089570 lbl_8008955C: /* 8008955C 0008649C 38 A0 00 22 */ li r5, 0x22 /* 80089560 000864A0 48 00 00 10 */ b lbl_80089570 lbl_80089564: /* 80089564 000864A4 38 A0 00 20 */ li r5, 0x20 /* 80089568 000864A8 48 00 00 08 */ b lbl_80089570 lbl_8008956C: /* 8008956C 000864AC 38 A0 00 03 */ li r5, 3 lbl_80089570: /* 80089570 000864B0 38 7F 00 00 */ addi r3, r31, 0 /* 80089574 000864B4 38 80 00 80 */ li r4, 0x80 /* 80089578 000864B8 4B FF F6 9D */ bl TRKStandardACK /* 8008957C 000864BC 48 00 00 0C */ b lbl_80089588 lbl_80089580: /* 80089580 000864C0 7F E3 FB 78 */ mr r3, r31 /* 80089584 000864C4 4B FF F6 41 */ bl TRKSendACK lbl_80089588: /* 80089588 000864C8 83 E1 08 1C */ lwz r31, 0x81c(r1) /* 8008958C 000864CC 83 C1 08 18 */ lwz r30, 0x818(r1) /* 80089590 000864D0 38 21 08 20 */ addi r1, r1, 0x820 /* 80089594 000864D4 80 01 00 04 */ lwz r0, 4(r1) /* 80089598 000864D8 7C 08 03 A6 */ mtlr r0 /* 8008959C 000864DC 4E 80 00 20 */ blr .global TRKDoReadRegisters TRKDoReadRegisters: /* 800895A0 000864E0 7C 08 02 A6 */ mflr r0 /* 800895A4 000864E4 90 01 00 04 */ stw r0, 4(r1) /* 800895A8 000864E8 94 21 FF E8 */ stwu r1, -0x18(r1) /* 800895AC 000864EC 93 E1 00 14 */ stw r31, 0x14(r1) /* 800895B0 000864F0 7C 7F 1B 78 */ mr r31, r3 /* 800895B4 000864F4 80 03 00 08 */ lwz r0, 8(r3) /* 800895B8 000864F8 28 00 00 06 */ cmplwi r0, 6 /* 800895BC 000864FC 41 82 00 18 */ beq lbl_800895D4 /* 800895C0 00086500 38 7F 00 00 */ addi r3, r31, 0 /* 800895C4 00086504 38 80 00 80 */ li r4, 0x80 /* 800895C8 00086508 38 A0 00 02 */ li r5, 2 /* 800895CC 0008650C 4B FF F6 49 */ bl TRKStandardACK /* 800895D0 00086510 48 00 01 C0 */ b lbl_80089790 lbl_800895D4: /* 800895D4 00086514 38 7F 00 00 */ addi r3, r31, 0 /* 800895D8 00086518 38 80 00 00 */ li r4, 0 /* 800895DC 0008651C 4B FF EC 95 */ bl TRKSetBufferPosition /* 800895E0 00086520 38 7F 00 00 */ addi r3, r31, 0 /* 800895E4 00086524 38 81 00 08 */ addi r4, r1, 8 /* 800895E8 00086528 4B FF F0 0D */ bl TRKReadBuffer1_ui8 /* 800895EC 0008652C 2C 03 00 00 */ cmpwi r3, 0 /* 800895F0 00086530 40 82 00 10 */ bne lbl_80089600 /* 800895F4 00086534 38 7F 00 00 */ addi r3, r31, 0 /* 800895F8 00086538 38 81 00 09 */ addi r4, r1, 9 /* 800895FC 0008653C 4B FF EF F9 */ bl TRKReadBuffer1_ui8 lbl_80089600: /* 80089600 00086540 2C 03 00 00 */ cmpwi r3, 0 /* 80089604 00086544 40 82 00 10 */ bne lbl_80089614 /* 80089608 00086548 38 7F 00 00 */ addi r3, r31, 0 /* 8008960C 0008654C 38 81 00 0A */ addi r4, r1, 0xa /* 80089610 00086550 4B FF F0 09 */ bl TRKReadBuffer1_ui16 lbl_80089614: /* 80089614 00086554 2C 03 00 00 */ cmpwi r3, 0 /* 80089618 00086558 40 82 00 10 */ bne lbl_80089628 /* 8008961C 0008655C 38 7F 00 00 */ addi r3, r31, 0 /* 80089620 00086560 38 81 00 0C */ addi r4, r1, 0xc /* 80089624 00086564 4B FF EF F5 */ bl TRKReadBuffer1_ui16 lbl_80089628: /* 80089628 00086568 A0 81 00 0A */ lhz r4, 0xa(r1) /* 8008962C 0008656C A0 01 00 0C */ lhz r0, 0xc(r1) /* 80089630 00086570 7C 04 00 40 */ cmplw r4, r0 /* 80089634 00086574 40 81 00 18 */ ble lbl_8008964C /* 80089638 00086578 38 7F 00 00 */ addi r3, r31, 0 /* 8008963C 0008657C 38 80 00 80 */ li r4, 0x80 /* 80089640 00086580 38 A0 00 14 */ li r5, 0x14 /* 80089644 00086584 4B FF F5 D1 */ bl TRKStandardACK /* 80089648 00086588 48 00 01 48 */ b lbl_80089790 lbl_8008964C: /* 8008964C 0008658C 2C 03 00 00 */ cmpwi r3, 0 /* 80089650 00086590 40 82 00 14 */ bne lbl_80089664 /* 80089654 00086594 38 7F 00 00 */ addi r3, r31, 0 /* 80089658 00086598 38 80 00 80 */ li r4, 0x80 /* 8008965C 0008659C 38 A0 00 00 */ li r5, 0 /* 80089660 000865A0 4B FF F4 CD */ bl TRKMessageIntoReply lbl_80089664: /* 80089664 000865A4 88 01 00 09 */ lbz r0, 9(r1) /* 80089668 000865A8 54 00 07 7E */ clrlwi r0, r0, 0x1d /* 8008966C 000865AC 2C 00 00 02 */ cmpwi r0, 2 /* 80089670 000865B0 41 82 00 5C */ beq lbl_800896CC /* 80089674 000865B4 40 80 00 14 */ bge lbl_80089688 /* 80089678 000865B8 2C 00 00 00 */ cmpwi r0, 0 /* 8008967C 000865BC 41 82 00 18 */ beq lbl_80089694 /* 80089680 000865C0 40 80 00 30 */ bge lbl_800896B0 /* 80089684 000865C4 48 00 00 80 */ b lbl_80089704 lbl_80089688: /* 80089688 000865C8 2C 00 00 04 */ cmpwi r0, 4 /* 8008968C 000865CC 40 80 00 78 */ bge lbl_80089704 /* 80089690 000865D0 48 00 00 58 */ b lbl_800896E8 lbl_80089694: /* 80089694 000865D4 A0 61 00 0A */ lhz r3, 0xa(r1) /* 80089698 000865D8 7F E5 FB 78 */ mr r5, r31 /* 8008969C 000865DC A0 81 00 0C */ lhz r4, 0xc(r1) /* 800896A0 000865E0 38 C1 00 10 */ addi r6, r1, 0x10 /* 800896A4 000865E4 38 E0 00 01 */ li r7, 1 /* 800896A8 000865E8 48 00 10 C5 */ bl TRKTargetAccessDefault /* 800896AC 000865EC 48 00 00 5C */ b lbl_80089708 lbl_800896B0: /* 800896B0 000865F0 A0 61 00 0A */ lhz r3, 0xa(r1) /* 800896B4 000865F4 7F E5 FB 78 */ mr r5, r31 /* 800896B8 000865F8 A0 81 00 0C */ lhz r4, 0xc(r1) /* 800896BC 000865FC 38 C1 00 10 */ addi r6, r1, 0x10 /* 800896C0 00086600 38 E0 00 01 */ li r7, 1 /* 800896C4 00086604 48 00 11 A5 */ bl TRKTargetAccessFP /* 800896C8 00086608 48 00 00 40 */ b lbl_80089708 lbl_800896CC: /* 800896CC 0008660C A0 61 00 0A */ lhz r3, 0xa(r1) /* 800896D0 00086610 7F E5 FB 78 */ mr r5, r31 /* 800896D4 00086614 A0 81 00 0C */ lhz r4, 0xc(r1) /* 800896D8 00086618 38 C1 00 10 */ addi r6, r1, 0x10 /* 800896DC 0008661C 38 E0 00 01 */ li r7, 1 /* 800896E0 00086620 48 00 12 D1 */ bl TRKTargetAccessExtended1 /* 800896E4 00086624 48 00 00 24 */ b lbl_80089708 lbl_800896E8: /* 800896E8 00086628 A0 61 00 0A */ lhz r3, 0xa(r1) /* 800896EC 0008662C 7F E5 FB 78 */ mr r5, r31 /* 800896F0 00086630 A0 81 00 0C */ lhz r4, 0xc(r1) /* 800896F4 00086634 38 C1 00 10 */ addi r6, r1, 0x10 /* 800896F8 00086638 38 E0 00 01 */ li r7, 1 /* 800896FC 0008663C 48 00 14 2D */ bl TRKTargetAccessExtended2 /* 80089700 00086640 48 00 00 08 */ b lbl_80089708 lbl_80089704: /* 80089704 00086644 38 60 07 03 */ li r3, 0x703 lbl_80089708: /* 80089708 00086648 2C 03 00 00 */ cmpwi r3, 0 /* 8008970C 0008664C 41 82 00 7C */ beq lbl_80089788 /* 80089710 00086650 2C 03 07 04 */ cmpwi r3, 0x704 /* 80089714 00086654 41 82 00 48 */ beq lbl_8008975C /* 80089718 00086658 40 80 00 1C */ bge lbl_80089734 /* 8008971C 0008665C 2C 03 07 02 */ cmpwi r3, 0x702 /* 80089720 00086660 41 82 00 34 */ beq lbl_80089754 /* 80089724 00086664 40 80 00 20 */ bge lbl_80089744 /* 80089728 00086668 2C 03 07 01 */ cmpwi r3, 0x701 /* 8008972C 0008666C 40 80 00 20 */ bge lbl_8008974C /* 80089730 00086670 48 00 00 44 */ b lbl_80089774 lbl_80089734: /* 80089734 00086674 2C 03 07 06 */ cmpwi r3, 0x706 /* 80089738 00086678 41 82 00 34 */ beq lbl_8008976C /* 8008973C 0008667C 40 80 00 38 */ bge lbl_80089774 /* 80089740 00086680 48 00 00 24 */ b lbl_80089764 lbl_80089744: /* 80089744 00086684 38 A0 00 12 */ li r5, 0x12 /* 80089748 00086688 48 00 00 30 */ b lbl_80089778 lbl_8008974C: /* 8008974C 0008668C 38 A0 00 14 */ li r5, 0x14 /* 80089750 00086690 48 00 00 28 */ b lbl_80089778 lbl_80089754: /* 80089754 00086694 38 A0 00 15 */ li r5, 0x15 /* 80089758 00086698 48 00 00 20 */ b lbl_80089778 lbl_8008975C: /* 8008975C 0008669C 38 A0 00 21 */ li r5, 0x21 /* 80089760 000866A0 48 00 00 18 */ b lbl_80089778 lbl_80089764: /* 80089764 000866A4 38 A0 00 22 */ li r5, 0x22 /* 80089768 000866A8 48 00 00 10 */ b lbl_80089778 lbl_8008976C: /* 8008976C 000866AC 38 A0 00 20 */ li r5, 0x20 /* 80089770 000866B0 48 00 00 08 */ b lbl_80089778 lbl_80089774: /* 80089774 000866B4 38 A0 00 03 */ li r5, 3 lbl_80089778: /* 80089778 000866B8 38 7F 00 00 */ addi r3, r31, 0 /* 8008977C 000866BC 38 80 00 80 */ li r4, 0x80 /* 80089780 000866C0 4B FF F4 95 */ bl TRKStandardACK /* 80089784 000866C4 48 00 00 0C */ b lbl_80089790 lbl_80089788: /* 80089788 000866C8 7F E3 FB 78 */ mr r3, r31 /* 8008978C 000866CC 4B FF F4 39 */ bl TRKSendACK lbl_80089790: /* 80089790 000866D0 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80089794 000866D4 38 21 00 18 */ addi r1, r1, 0x18 /* 80089798 000866D8 80 01 00 04 */ lwz r0, 4(r1) /* 8008979C 000866DC 7C 08 03 A6 */ mtlr r0 /* 800897A0 000866E0 4E 80 00 20 */ blr .global TRKDoWriteRegisters TRKDoWriteRegisters: /* 800897A4 000866E4 7C 08 02 A6 */ mflr r0 /* 800897A8 000866E8 90 01 00 04 */ stw r0, 4(r1) /* 800897AC 000866EC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800897B0 000866F0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800897B4 000866F4 93 C1 00 18 */ stw r30, 0x18(r1) /* 800897B8 000866F8 7C 7E 1B 78 */ mr r30, r3 /* 800897BC 000866FC 80 03 00 08 */ lwz r0, 8(r3) /* 800897C0 00086700 28 00 00 06 */ cmplwi r0, 6 /* 800897C4 00086704 41 81 00 18 */ bgt lbl_800897DC /* 800897C8 00086708 38 7E 00 00 */ addi r3, r30, 0 /* 800897CC 0008670C 38 80 00 80 */ li r4, 0x80 /* 800897D0 00086710 38 A0 00 02 */ li r5, 2 /* 800897D4 00086714 4B FF F4 41 */ bl TRKStandardACK /* 800897D8 00086718 48 00 01 BC */ b lbl_80089994 lbl_800897DC: /* 800897DC 0008671C 38 7E 00 00 */ addi r3, r30, 0 /* 800897E0 00086720 38 80 00 00 */ li r4, 0 /* 800897E4 00086724 4B FF EA 8D */ bl TRKSetBufferPosition /* 800897E8 00086728 38 7E 00 00 */ addi r3, r30, 0 /* 800897EC 0008672C 38 81 00 08 */ addi r4, r1, 8 /* 800897F0 00086730 4B FF EE 05 */ bl TRKReadBuffer1_ui8 /* 800897F4 00086734 2C 03 00 00 */ cmpwi r3, 0 /* 800897F8 00086738 40 82 00 10 */ bne lbl_80089808 /* 800897FC 0008673C 38 7E 00 00 */ addi r3, r30, 0 /* 80089800 00086740 38 81 00 09 */ addi r4, r1, 9 /* 80089804 00086744 4B FF ED F1 */ bl TRKReadBuffer1_ui8 lbl_80089808: /* 80089808 00086748 2C 03 00 00 */ cmpwi r3, 0 /* 8008980C 0008674C 40 82 00 10 */ bne lbl_8008981C /* 80089810 00086750 38 7E 00 00 */ addi r3, r30, 0 /* 80089814 00086754 38 81 00 0A */ addi r4, r1, 0xa /* 80089818 00086758 4B FF EE 01 */ bl TRKReadBuffer1_ui16 lbl_8008981C: /* 8008981C 0008675C 2C 03 00 00 */ cmpwi r3, 0 /* 80089820 00086760 40 82 00 10 */ bne lbl_80089830 /* 80089824 00086764 38 7E 00 00 */ addi r3, r30, 0 /* 80089828 00086768 38 81 00 0C */ addi r4, r1, 0xc /* 8008982C 0008676C 4B FF ED ED */ bl TRKReadBuffer1_ui16 lbl_80089830: /* 80089830 00086770 A0 61 00 0A */ lhz r3, 0xa(r1) /* 80089834 00086774 A0 81 00 0C */ lhz r4, 0xc(r1) /* 80089838 00086778 7C 03 20 40 */ cmplw r3, r4 /* 8008983C 0008677C 40 81 00 18 */ ble lbl_80089854 /* 80089840 00086780 38 7E 00 00 */ addi r3, r30, 0 /* 80089844 00086784 38 80 00 80 */ li r4, 0x80 /* 80089848 00086788 38 A0 00 14 */ li r5, 0x14 /* 8008984C 0008678C 4B FF F3 C9 */ bl TRKStandardACK /* 80089850 00086790 48 00 01 44 */ b lbl_80089994 lbl_80089854: /* 80089854 00086794 88 01 00 09 */ lbz r0, 9(r1) /* 80089858 00086798 2C 00 00 02 */ cmpwi r0, 2 /* 8008985C 0008679C 41 82 00 54 */ beq lbl_800898B0 /* 80089860 000867A0 40 80 00 14 */ bge lbl_80089874 /* 80089864 000867A4 2C 00 00 00 */ cmpwi r0, 0 /* 80089868 000867A8 41 82 00 18 */ beq lbl_80089880 /* 8008986C 000867AC 40 80 00 2C */ bge lbl_80089898 /* 80089870 000867B0 48 00 00 70 */ b lbl_800898E0 lbl_80089874: /* 80089874 000867B4 2C 00 00 04 */ cmpwi r0, 4 /* 80089878 000867B8 40 80 00 68 */ bge lbl_800898E0 /* 8008987C 000867BC 48 00 00 4C */ b lbl_800898C8 lbl_80089880: /* 80089880 000867C0 38 C1 00 10 */ addi r6, r1, 0x10 /* 80089884 000867C4 38 BE 00 00 */ addi r5, r30, 0 /* 80089888 000867C8 38 E0 00 00 */ li r7, 0 /* 8008988C 000867CC 48 00 0E E1 */ bl TRKTargetAccessDefault /* 80089890 000867D0 7C 7F 1B 78 */ mr r31, r3 /* 80089894 000867D4 48 00 00 50 */ b lbl_800898E4 lbl_80089898: /* 80089898 000867D8 38 C1 00 10 */ addi r6, r1, 0x10 /* 8008989C 000867DC 38 BE 00 00 */ addi r5, r30, 0 /* 800898A0 000867E0 38 E0 00 00 */ li r7, 0 /* 800898A4 000867E4 48 00 0F C5 */ bl TRKTargetAccessFP /* 800898A8 000867E8 7C 7F 1B 78 */ mr r31, r3 /* 800898AC 000867EC 48 00 00 38 */ b lbl_800898E4 lbl_800898B0: /* 800898B0 000867F0 38 C1 00 10 */ addi r6, r1, 0x10 /* 800898B4 000867F4 38 BE 00 00 */ addi r5, r30, 0 /* 800898B8 000867F8 38 E0 00 00 */ li r7, 0 /* 800898BC 000867FC 48 00 10 F5 */ bl TRKTargetAccessExtended1 /* 800898C0 00086800 7C 7F 1B 78 */ mr r31, r3 /* 800898C4 00086804 48 00 00 20 */ b lbl_800898E4 lbl_800898C8: /* 800898C8 00086808 38 C1 00 10 */ addi r6, r1, 0x10 /* 800898CC 0008680C 38 BE 00 00 */ addi r5, r30, 0 /* 800898D0 00086810 38 E0 00 00 */ li r7, 0 /* 800898D4 00086814 48 00 12 55 */ bl TRKTargetAccessExtended2 /* 800898D8 00086818 7C 7F 1B 78 */ mr r31, r3 /* 800898DC 0008681C 48 00 00 08 */ b lbl_800898E4 lbl_800898E0: /* 800898E0 00086820 3B E0 07 03 */ li r31, 0x703 lbl_800898E4: /* 800898E4 00086824 2C 1F 00 00 */ cmpwi r31, 0 /* 800898E8 00086828 40 82 00 14 */ bne lbl_800898FC /* 800898EC 0008682C 38 7E 00 00 */ addi r3, r30, 0 /* 800898F0 00086830 38 80 00 80 */ li r4, 0x80 /* 800898F4 00086834 38 A0 00 00 */ li r5, 0 /* 800898F8 00086838 4B FF F2 35 */ bl TRKMessageIntoReply lbl_800898FC: /* 800898FC 0008683C 2C 1F 00 00 */ cmpwi r31, 0 /* 80089900 00086840 41 82 00 8C */ beq lbl_8008998C /* 80089904 00086844 2C 1F 07 03 */ cmpwi r31, 0x703 /* 80089908 00086848 41 82 00 38 */ beq lbl_80089940 /* 8008990C 0008684C 40 80 00 1C */ bge lbl_80089928 /* 80089910 00086850 2C 1F 07 01 */ cmpwi r31, 0x701 /* 80089914 00086854 41 82 00 34 */ beq lbl_80089948 /* 80089918 00086858 40 80 00 40 */ bge lbl_80089958 /* 8008991C 0008685C 2C 1F 03 02 */ cmpwi r31, 0x302 /* 80089920 00086860 41 82 00 30 */ beq lbl_80089950 /* 80089924 00086864 48 00 00 54 */ b lbl_80089978 lbl_80089928: /* 80089928 00086868 2C 1F 07 06 */ cmpwi r31, 0x706 /* 8008992C 0008686C 41 82 00 44 */ beq lbl_80089970 /* 80089930 00086870 40 80 00 48 */ bge lbl_80089978 /* 80089934 00086874 2C 1F 07 05 */ cmpwi r31, 0x705 /* 80089938 00086878 40 80 00 30 */ bge lbl_80089968 /* 8008993C 0008687C 48 00 00 24 */ b lbl_80089960 lbl_80089940: /* 80089940 00086880 38 A0 00 12 */ li r5, 0x12 /* 80089944 00086884 48 00 00 38 */ b lbl_8008997C lbl_80089948: /* 80089948 00086888 38 A0 00 14 */ li r5, 0x14 /* 8008994C 0008688C 48 00 00 30 */ b lbl_8008997C lbl_80089950: /* 80089950 00086890 38 A0 00 02 */ li r5, 2 /* 80089954 00086894 48 00 00 28 */ b lbl_8008997C lbl_80089958: /* 80089958 00086898 38 A0 00 15 */ li r5, 0x15 /* 8008995C 0008689C 48 00 00 20 */ b lbl_8008997C lbl_80089960: /* 80089960 000868A0 38 A0 00 21 */ li r5, 0x21 /* 80089964 000868A4 48 00 00 18 */ b lbl_8008997C lbl_80089968: /* 80089968 000868A8 38 A0 00 22 */ li r5, 0x22 /* 8008996C 000868AC 48 00 00 10 */ b lbl_8008997C lbl_80089970: /* 80089970 000868B0 38 A0 00 20 */ li r5, 0x20 /* 80089974 000868B4 48 00 00 08 */ b lbl_8008997C lbl_80089978: /* 80089978 000868B8 38 A0 00 03 */ li r5, 3 lbl_8008997C: /* 8008997C 000868BC 38 7E 00 00 */ addi r3, r30, 0 /* 80089980 000868C0 38 80 00 80 */ li r4, 0x80 /* 80089984 000868C4 4B FF F2 91 */ bl TRKStandardACK /* 80089988 000868C8 48 00 00 0C */ b lbl_80089994 lbl_8008998C: /* 8008998C 000868CC 7F C3 F3 78 */ mr r3, r30 /* 80089990 000868D0 4B FF F2 35 */ bl TRKSendACK lbl_80089994: /* 80089994 000868D4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80089998 000868D8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8008999C 000868DC 38 21 00 20 */ addi r1, r1, 0x20 /* 800899A0 000868E0 80 01 00 04 */ lwz r0, 4(r1) /* 800899A4 000868E4 7C 08 03 A6 */ mtlr r0 /* 800899A8 000868E8 4E 80 00 20 */ blr .global TRKDoFlushCache TRKDoFlushCache: /* 800899AC 000868EC 7C 08 02 A6 */ mflr r0 /* 800899B0 000868F0 90 01 00 04 */ stw r0, 4(r1) /* 800899B4 000868F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800899B8 000868F8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800899BC 000868FC 93 C1 00 18 */ stw r30, 0x18(r1) /* 800899C0 00086900 7C 7E 1B 78 */ mr r30, r3 /* 800899C4 00086904 80 03 00 08 */ lwz r0, 8(r3) /* 800899C8 00086908 28 00 00 0A */ cmplwi r0, 0xa /* 800899CC 0008690C 41 82 00 18 */ beq lbl_800899E4 /* 800899D0 00086910 38 7E 00 00 */ addi r3, r30, 0 /* 800899D4 00086914 38 80 00 80 */ li r4, 0x80 /* 800899D8 00086918 38 A0 00 02 */ li r5, 2 /* 800899DC 0008691C 4B FF F2 39 */ bl TRKStandardACK /* 800899E0 00086920 48 00 00 EC */ b lbl_80089ACC lbl_800899E4: /* 800899E4 00086924 38 7E 00 00 */ addi r3, r30, 0 /* 800899E8 00086928 38 80 00 00 */ li r4, 0 /* 800899EC 0008692C 4B FF E8 85 */ bl TRKSetBufferPosition /* 800899F0 00086930 38 7E 00 00 */ addi r3, r30, 0 /* 800899F4 00086934 38 81 00 08 */ addi r4, r1, 8 /* 800899F8 00086938 4B FF EB FD */ bl TRKReadBuffer1_ui8 /* 800899FC 0008693C 7C 7F 1B 79 */ or. r31, r3, r3 /* 80089A00 00086940 40 82 00 14 */ bne lbl_80089A14 /* 80089A04 00086944 38 7E 00 00 */ addi r3, r30, 0 /* 80089A08 00086948 38 81 00 09 */ addi r4, r1, 9 /* 80089A0C 0008694C 4B FF EB E9 */ bl TRKReadBuffer1_ui8 /* 80089A10 00086950 7C 7F 1B 78 */ mr r31, r3 lbl_80089A14: /* 80089A14 00086954 2C 1F 00 00 */ cmpwi r31, 0 /* 80089A18 00086958 40 82 00 14 */ bne lbl_80089A2C /* 80089A1C 0008695C 38 7E 00 00 */ addi r3, r30, 0 /* 80089A20 00086960 38 81 00 0C */ addi r4, r1, 0xc /* 80089A24 00086964 4B FF EC 75 */ bl TRKReadBuffer1_ui32 /* 80089A28 00086968 7C 7F 1B 78 */ mr r31, r3 lbl_80089A2C: /* 80089A2C 0008696C 2C 1F 00 00 */ cmpwi r31, 0 /* 80089A30 00086970 40 82 00 14 */ bne lbl_80089A44 /* 80089A34 00086974 38 7E 00 00 */ addi r3, r30, 0 /* 80089A38 00086978 38 81 00 10 */ addi r4, r1, 0x10 /* 80089A3C 0008697C 4B FF EC 5D */ bl TRKReadBuffer1_ui32 /* 80089A40 00086980 7C 7F 1B 78 */ mr r31, r3 lbl_80089A44: /* 80089A44 00086984 80 81 00 0C */ lwz r4, 0xc(r1) /* 80089A48 00086988 80 A1 00 10 */ lwz r5, 0x10(r1) /* 80089A4C 0008698C 7C 04 28 40 */ cmplw r4, r5 /* 80089A50 00086990 40 81 00 18 */ ble lbl_80089A68 /* 80089A54 00086994 38 7E 00 00 */ addi r3, r30, 0 /* 80089A58 00086998 38 80 00 80 */ li r4, 0x80 /* 80089A5C 0008699C 38 A0 00 13 */ li r5, 0x13 /* 80089A60 000869A0 4B FF F1 B5 */ bl TRKStandardACK /* 80089A64 000869A4 48 00 00 68 */ b lbl_80089ACC lbl_80089A68: /* 80089A68 000869A8 2C 1F 00 00 */ cmpwi r31, 0 /* 80089A6C 000869AC 40 82 00 10 */ bne lbl_80089A7C /* 80089A70 000869B0 88 61 00 09 */ lbz r3, 9(r1) /* 80089A74 000869B4 48 00 1B FD */ bl TRKTargetFlushCache /* 80089A78 000869B8 7C 7F 1B 78 */ mr r31, r3 lbl_80089A7C: /* 80089A7C 000869BC 2C 1F 00 00 */ cmpwi r31, 0 /* 80089A80 000869C0 40 82 00 14 */ bne lbl_80089A94 /* 80089A84 000869C4 38 7E 00 00 */ addi r3, r30, 0 /* 80089A88 000869C8 38 80 00 80 */ li r4, 0x80 /* 80089A8C 000869CC 38 A0 00 00 */ li r5, 0 /* 80089A90 000869D0 4B FF F0 9D */ bl TRKMessageIntoReply lbl_80089A94: /* 80089A94 000869D4 2C 1F 00 00 */ cmpwi r31, 0 /* 80089A98 000869D8 41 82 00 2C */ beq lbl_80089AC4 /* 80089A9C 000869DC 2C 1F 07 03 */ cmpwi r31, 0x703 /* 80089AA0 000869E0 41 82 00 08 */ beq lbl_80089AA8 /* 80089AA4 000869E4 48 00 00 0C */ b lbl_80089AB0 lbl_80089AA8: /* 80089AA8 000869E8 38 A0 00 12 */ li r5, 0x12 /* 80089AAC 000869EC 48 00 00 08 */ b lbl_80089AB4 lbl_80089AB0: /* 80089AB0 000869F0 38 A0 00 03 */ li r5, 3 lbl_80089AB4: /* 80089AB4 000869F4 38 7E 00 00 */ addi r3, r30, 0 /* 80089AB8 000869F8 38 80 00 80 */ li r4, 0x80 /* 80089ABC 000869FC 4B FF F1 59 */ bl TRKStandardACK /* 80089AC0 00086A00 48 00 00 0C */ b lbl_80089ACC lbl_80089AC4: /* 80089AC4 00086A04 7F C3 F3 78 */ mr r3, r30 /* 80089AC8 00086A08 4B FF F0 FD */ bl TRKSendACK lbl_80089ACC: /* 80089ACC 00086A0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80089AD0 00086A10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80089AD4 00086A14 38 21 00 20 */ addi r1, r1, 0x20 /* 80089AD8 00086A18 80 01 00 04 */ lwz r0, 4(r1) /* 80089ADC 00086A1C 7C 08 03 A6 */ mtlr r0 /* 80089AE0 00086A20 4E 80 00 20 */ blr .global TRKDoContinue TRKDoContinue: /* 80089AE4 00086A24 7C 08 02 A6 */ mflr r0 /* 80089AE8 00086A28 90 01 00 04 */ stw r0, 4(r1) /* 80089AEC 00086A2C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80089AF0 00086A30 93 E1 00 0C */ stw r31, 0xc(r1) /* 80089AF4 00086A34 7C 7F 1B 78 */ mr r31, r3 /* 80089AF8 00086A38 48 00 1B B5 */ bl TRKTargetStopped /* 80089AFC 00086A3C 2C 03 00 00 */ cmpwi r3, 0 /* 80089B00 00086A40 40 82 00 18 */ bne lbl_80089B18 /* 80089B04 00086A44 38 7F 00 00 */ addi r3, r31, 0 /* 80089B08 00086A48 38 80 00 80 */ li r4, 0x80 /* 80089B0C 00086A4C 38 A0 00 16 */ li r5, 0x16 /* 80089B10 00086A50 4B FF F1 05 */ bl TRKStandardACK /* 80089B14 00086A54 48 00 00 20 */ b lbl_80089B34 lbl_80089B18: /* 80089B18 00086A58 38 7F 00 00 */ addi r3, r31, 0 /* 80089B1C 00086A5C 38 80 00 80 */ li r4, 0x80 /* 80089B20 00086A60 38 A0 00 00 */ li r5, 0 /* 80089B24 00086A64 4B FF F0 F1 */ bl TRKStandardACK /* 80089B28 00086A68 2C 03 00 00 */ cmpwi r3, 0 /* 80089B2C 00086A6C 40 82 00 08 */ bne lbl_80089B34 /* 80089B30 00086A70 48 00 28 3D */ bl TRKTargetContinue lbl_80089B34: /* 80089B34 00086A74 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80089B38 00086A78 38 21 00 10 */ addi r1, r1, 0x10 /* 80089B3C 00086A7C 80 01 00 04 */ lwz r0, 4(r1) /* 80089B40 00086A80 7C 08 03 A6 */ mtlr r0 /* 80089B44 00086A84 4E 80 00 20 */ blr .global TRKDoStep TRKDoStep: /* 80089B48 00086A88 7C 08 02 A6 */ mflr r0 /* 80089B4C 00086A8C 90 01 00 04 */ stw r0, 4(r1) /* 80089B50 00086A90 94 21 FF E8 */ stwu r1, -0x18(r1) /* 80089B54 00086A94 93 E1 00 14 */ stw r31, 0x14(r1) /* 80089B58 00086A98 7C 7F 1B 78 */ mr r31, r3 /* 80089B5C 00086A9C 80 03 00 08 */ lwz r0, 8(r3) /* 80089B60 00086AA0 28 00 00 03 */ cmplwi r0, 3 /* 80089B64 00086AA4 40 80 00 18 */ bge lbl_80089B7C /* 80089B68 00086AA8 38 7F 00 00 */ addi r3, r31, 0 /* 80089B6C 00086AAC 38 80 00 80 */ li r4, 0x80 /* 80089B70 00086AB0 38 A0 00 02 */ li r5, 2 /* 80089B74 00086AB4 4B FF F0 A1 */ bl TRKStandardACK /* 80089B78 00086AB8 48 00 01 C0 */ b lbl_80089D38 lbl_80089B7C: /* 80089B7C 00086ABC 38 7F 00 00 */ addi r3, r31, 0 /* 80089B80 00086AC0 38 80 00 00 */ li r4, 0 /* 80089B84 00086AC4 4B FF E6 ED */ bl TRKSetBufferPosition /* 80089B88 00086AC8 38 7F 00 00 */ addi r3, r31, 0 /* 80089B8C 00086ACC 38 81 00 08 */ addi r4, r1, 8 /* 80089B90 00086AD0 4B FF EA 65 */ bl TRKReadBuffer1_ui8 /* 80089B94 00086AD4 2C 03 00 00 */ cmpwi r3, 0 /* 80089B98 00086AD8 40 82 00 10 */ bne lbl_80089BA8 /* 80089B9C 00086ADC 38 7F 00 00 */ addi r3, r31, 0 /* 80089BA0 00086AE0 38 81 00 09 */ addi r4, r1, 9 /* 80089BA4 00086AE4 4B FF EA 51 */ bl TRKReadBuffer1_ui8 lbl_80089BA8: /* 80089BA8 00086AE8 88 01 00 09 */ lbz r0, 9(r1) /* 80089BAC 00086AEC 2C 00 00 10 */ cmpwi r0, 0x10 /* 80089BB0 00086AF0 41 82 00 2C */ beq lbl_80089BDC /* 80089BB4 00086AF4 40 80 00 1C */ bge lbl_80089BD0 /* 80089BB8 00086AF8 2C 00 00 01 */ cmpwi r0, 1 /* 80089BBC 00086AFC 41 82 00 54 */ beq lbl_80089C10 /* 80089BC0 00086B00 40 80 00 C8 */ bge lbl_80089C88 /* 80089BC4 00086B04 2C 00 00 00 */ cmpwi r0, 0 /* 80089BC8 00086B08 40 80 00 14 */ bge lbl_80089BDC /* 80089BCC 00086B0C 48 00 00 BC */ b lbl_80089C88 lbl_80089BD0: /* 80089BD0 00086B10 2C 00 00 12 */ cmpwi r0, 0x12 /* 80089BD4 00086B14 40 80 00 B4 */ bge lbl_80089C88 /* 80089BD8 00086B18 48 00 00 38 */ b lbl_80089C10 lbl_80089BDC: /* 80089BDC 00086B1C 2C 03 00 00 */ cmpwi r3, 0 /* 80089BE0 00086B20 40 82 00 10 */ bne lbl_80089BF0 /* 80089BE4 00086B24 38 7F 00 00 */ addi r3, r31, 0 /* 80089BE8 00086B28 38 81 00 0A */ addi r4, r1, 0xa /* 80089BEC 00086B2C 4B FF EA 09 */ bl TRKReadBuffer1_ui8 lbl_80089BF0: /* 80089BF0 00086B30 88 01 00 0A */ lbz r0, 0xa(r1) /* 80089BF4 00086B34 28 00 00 01 */ cmplwi r0, 1 /* 80089BF8 00086B38 40 80 00 A4 */ bge lbl_80089C9C /* 80089BFC 00086B3C 38 7F 00 00 */ addi r3, r31, 0 /* 80089C00 00086B40 38 80 00 80 */ li r4, 0x80 /* 80089C04 00086B44 38 A0 00 11 */ li r5, 0x11 /* 80089C08 00086B48 4B FF F0 0D */ bl TRKStandardACK /* 80089C0C 00086B4C 48 00 01 2C */ b lbl_80089D38 lbl_80089C10: /* 80089C10 00086B50 80 1F 00 08 */ lwz r0, 8(r31) /* 80089C14 00086B54 28 00 00 0A */ cmplwi r0, 0xa /* 80089C18 00086B58 41 82 00 18 */ beq lbl_80089C30 /* 80089C1C 00086B5C 38 7F 00 00 */ addi r3, r31, 0 /* 80089C20 00086B60 38 80 00 80 */ li r4, 0x80 /* 80089C24 00086B64 38 A0 00 02 */ li r5, 2 /* 80089C28 00086B68 4B FF EF ED */ bl TRKStandardACK /* 80089C2C 00086B6C 48 00 01 0C */ b lbl_80089D38 lbl_80089C30: /* 80089C30 00086B70 2C 03 00 00 */ cmpwi r3, 0 /* 80089C34 00086B74 40 82 00 10 */ bne lbl_80089C44 /* 80089C38 00086B78 38 7F 00 00 */ addi r3, r31, 0 /* 80089C3C 00086B7C 38 81 00 0C */ addi r4, r1, 0xc /* 80089C40 00086B80 4B FF EA 59 */ bl TRKReadBuffer1_ui32 lbl_80089C44: /* 80089C44 00086B84 2C 03 00 00 */ cmpwi r3, 0 /* 80089C48 00086B88 40 82 00 10 */ bne lbl_80089C58 /* 80089C4C 00086B8C 38 7F 00 00 */ addi r3, r31, 0 /* 80089C50 00086B90 38 81 00 10 */ addi r4, r1, 0x10 /* 80089C54 00086B94 4B FF EA 45 */ bl TRKReadBuffer1_ui32 lbl_80089C58: /* 80089C58 00086B98 48 00 19 19 */ bl TRKTargetGetPC /* 80089C5C 00086B9C 80 01 00 0C */ lwz r0, 0xc(r1) /* 80089C60 00086BA0 7C 03 00 40 */ cmplw r3, r0 /* 80089C64 00086BA4 41 80 00 10 */ blt lbl_80089C74 /* 80089C68 00086BA8 80 01 00 10 */ lwz r0, 0x10(r1) /* 80089C6C 00086BAC 7C 03 00 40 */ cmplw r3, r0 /* 80089C70 00086BB0 40 81 00 2C */ ble lbl_80089C9C lbl_80089C74: /* 80089C74 00086BB4 38 7F 00 00 */ addi r3, r31, 0 /* 80089C78 00086BB8 38 80 00 80 */ li r4, 0x80 /* 80089C7C 00086BBC 38 A0 00 11 */ li r5, 0x11 /* 80089C80 00086BC0 4B FF EF 95 */ bl TRKStandardACK /* 80089C84 00086BC4 48 00 00 B4 */ b lbl_80089D38 lbl_80089C88: /* 80089C88 00086BC8 38 7F 00 00 */ addi r3, r31, 0 /* 80089C8C 00086BCC 38 80 00 80 */ li r4, 0x80 /* 80089C90 00086BD0 38 A0 00 12 */ li r5, 0x12 /* 80089C94 00086BD4 4B FF EF 81 */ bl TRKStandardACK /* 80089C98 00086BD8 48 00 00 A0 */ b lbl_80089D38 lbl_80089C9C: /* 80089C9C 00086BDC 48 00 1A 11 */ bl TRKTargetStopped /* 80089CA0 00086BE0 2C 03 00 00 */ cmpwi r3, 0 /* 80089CA4 00086BE4 40 82 00 18 */ bne lbl_80089CBC /* 80089CA8 00086BE8 38 7F 00 00 */ addi r3, r31, 0 /* 80089CAC 00086BEC 38 80 00 80 */ li r4, 0x80 /* 80089CB0 00086BF0 38 A0 00 16 */ li r5, 0x16 /* 80089CB4 00086BF4 4B FF EF 61 */ bl TRKStandardACK /* 80089CB8 00086BF8 48 00 00 80 */ b lbl_80089D38 lbl_80089CBC: /* 80089CBC 00086BFC 38 7F 00 00 */ addi r3, r31, 0 /* 80089CC0 00086C00 38 80 00 80 */ li r4, 0x80 /* 80089CC4 00086C04 38 A0 00 00 */ li r5, 0 /* 80089CC8 00086C08 4B FF EF 4D */ bl TRKStandardACK /* 80089CCC 00086C0C 2C 03 00 00 */ cmpwi r3, 0 /* 80089CD0 00086C10 40 82 00 68 */ bne lbl_80089D38 /* 80089CD4 00086C14 88 01 00 09 */ lbz r0, 9(r1) /* 80089CD8 00086C18 2C 00 00 10 */ cmpwi r0, 0x10 /* 80089CDC 00086C1C 41 82 00 2C */ beq lbl_80089D08 /* 80089CE0 00086C20 40 80 00 1C */ bge lbl_80089CFC /* 80089CE4 00086C24 2C 00 00 01 */ cmpwi r0, 1 /* 80089CE8 00086C28 41 82 00 38 */ beq lbl_80089D20 /* 80089CEC 00086C2C 40 80 00 4C */ bge lbl_80089D38 /* 80089CF0 00086C30 2C 00 00 00 */ cmpwi r0, 0 /* 80089CF4 00086C34 40 80 00 14 */ bge lbl_80089D08 /* 80089CF8 00086C38 48 00 00 40 */ b lbl_80089D38 lbl_80089CFC: /* 80089CFC 00086C3C 2C 00 00 12 */ cmpwi r0, 0x12 /* 80089D00 00086C40 40 80 00 38 */ bge lbl_80089D38 /* 80089D04 00086C44 48 00 00 1C */ b lbl_80089D20 lbl_80089D08: /* 80089D08 00086C48 20 00 00 10 */ subfic r0, r0, 0x10 /* 80089D0C 00086C4C 88 61 00 0A */ lbz r3, 0xa(r1) /* 80089D10 00086C50 7C 00 00 34 */ cntlzw r0, r0 /* 80089D14 00086C54 54 04 D9 7E */ srwi r4, r0, 5 /* 80089D18 00086C58 48 00 17 CD */ bl TRKTargetSingleStep /* 80089D1C 00086C5C 48 00 00 1C */ b lbl_80089D38 lbl_80089D20: /* 80089D20 00086C60 20 00 00 11 */ subfic r0, r0, 0x11 /* 80089D24 00086C64 80 61 00 0C */ lwz r3, 0xc(r1) /* 80089D28 00086C68 7C 00 00 34 */ cntlzw r0, r0 /* 80089D2C 00086C6C 80 81 00 10 */ lwz r4, 0x10(r1) /* 80089D30 00086C70 54 05 D9 7E */ srwi r5, r0, 5 /* 80089D34 00086C74 48 00 17 F5 */ bl TRKTargetStepOutOfRange lbl_80089D38: /* 80089D38 00086C78 83 E1 00 14 */ lwz r31, 0x14(r1) /* 80089D3C 00086C7C 38 21 00 18 */ addi r1, r1, 0x18 /* 80089D40 00086C80 80 01 00 04 */ lwz r0, 4(r1) /* 80089D44 00086C84 7C 08 03 A6 */ mtlr r0 /* 80089D48 00086C88 4E 80 00 20 */ blr .global TRKDoStop TRKDoStop: /* 80089D4C 00086C8C 7C 08 02 A6 */ mflr r0 /* 80089D50 00086C90 90 01 00 04 */ stw r0, 4(r1) /* 80089D54 00086C94 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80089D58 00086C98 93 E1 00 0C */ stw r31, 0xc(r1) /* 80089D5C 00086C9C 7C 7F 1B 78 */ mr r31, r3 /* 80089D60 00086CA0 48 00 19 6D */ bl TRKTargetStop /* 80089D64 00086CA4 2C 03 07 04 */ cmpwi r3, 0x704 /* 80089D68 00086CA8 41 82 00 2C */ beq lbl_80089D94 /* 80089D6C 00086CAC 40 80 00 10 */ bge lbl_80089D7C /* 80089D70 00086CB0 2C 03 00 00 */ cmpwi r3, 0 /* 80089D74 00086CB4 41 82 00 18 */ beq lbl_80089D8C /* 80089D78 00086CB8 48 00 00 34 */ b lbl_80089DAC lbl_80089D7C: /* 80089D7C 00086CBC 2C 03 07 06 */ cmpwi r3, 0x706 /* 80089D80 00086CC0 41 82 00 24 */ beq lbl_80089DA4 /* 80089D84 00086CC4 40 80 00 28 */ bge lbl_80089DAC /* 80089D88 00086CC8 48 00 00 14 */ b lbl_80089D9C lbl_80089D8C: /* 80089D8C 00086CCC 38 A0 00 00 */ li r5, 0 /* 80089D90 00086CD0 48 00 00 20 */ b lbl_80089DB0 lbl_80089D94: /* 80089D94 00086CD4 38 A0 00 21 */ li r5, 0x21 /* 80089D98 00086CD8 48 00 00 18 */ b lbl_80089DB0 lbl_80089D9C: /* 80089D9C 00086CDC 38 A0 00 22 */ li r5, 0x22 /* 80089DA0 00086CE0 48 00 00 10 */ b lbl_80089DB0 lbl_80089DA4: /* 80089DA4 00086CE4 38 A0 00 20 */ li r5, 0x20 /* 80089DA8 00086CE8 48 00 00 08 */ b lbl_80089DB0 lbl_80089DAC: /* 80089DAC 00086CEC 38 A0 00 01 */ li r5, 1 lbl_80089DB0: /* 80089DB0 00086CF0 38 7F 00 00 */ addi r3, r31, 0 /* 80089DB4 00086CF4 38 80 00 80 */ li r4, 0x80 /* 80089DB8 00086CF8 4B FF EE 5D */ bl TRKStandardACK /* 80089DBC 00086CFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80089DC0 00086D00 38 21 00 10 */ addi r1, r1, 0x10 /* 80089DC4 00086D04 80 01 00 04 */ lwz r0, 4(r1) /* 80089DC8 00086D08 7C 08 03 A6 */ mtlr r0 /* 80089DCC 00086D0C 4E 80 00 20 */ blr .section .data, "wa" # 0x803A8380 - 0x803E6000 "@175": .4byte lbl_80089350 .4byte lbl_80089370 .4byte lbl_80089348 .4byte lbl_80089370 .4byte lbl_80089358 .4byte lbl_80089360 .4byte lbl_80089368 "@214": .4byte lbl_8008954C .4byte lbl_8008956C .4byte lbl_80089544 .4byte lbl_8008956C .4byte lbl_80089554 .4byte lbl_8008955C .4byte lbl_80089564