1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global TRKNubWelcome
TRKNubWelcome:
/* 801D4B58 001D07B8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801D4B5C 001D07BC 7C 08 02 A6 */ mflr r0
/* 801D4B60 001D07C0 3C 60 80 40 */ lis r3, lbl_803FD640@ha
/* 801D4B64 001D07C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 801D4B68 001D07C8 38 63 D6 40 */ addi r3, r3, lbl_803FD640@l
/* 801D4B6C 001D07CC 48 00 4A 11 */ bl TRK_board_display
/* 801D4B70 001D07D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801D4B74 001D07D4 7C 08 03 A6 */ mtlr r0
/* 801D4B78 001D07D8 38 21 00 10 */ addi r1, r1, 0x10
/* 801D4B7C 001D07DC 4E 80 00 20 */ blr
.global TRKTerminateNub
TRKTerminateNub:
/* 801D4B80 001D07E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801D4B84 001D07E4 7C 08 02 A6 */ mflr r0
/* 801D4B88 001D07E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 801D4B8C 001D07EC 48 00 09 B9 */ bl TRKTerminateSerialHandler
/* 801D4B90 001D07F0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801D4B94 001D07F4 38 60 00 00 */ li r3, 0
/* 801D4B98 001D07F8 7C 08 03 A6 */ mtlr r0
/* 801D4B9C 001D07FC 38 21 00 10 */ addi r1, r1, 0x10
/* 801D4BA0 001D0800 4E 80 00 20 */ blr
.global TRKInitializeNub
TRKInitializeNub:
/* 801D4BA4 001D0804 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801D4BA8 001D0808 7C 08 02 A6 */ mflr r0
/* 801D4BAC 001D080C 38 A0 00 12 */ li r5, 0x12
/* 801D4BB0 001D0810 38 80 00 34 */ li r4, 0x34
/* 801D4BB4 001D0814 90 01 00 24 */ stw r0, 0x24(r1)
/* 801D4BB8 001D0818 38 60 00 56 */ li r3, 0x56
/* 801D4BBC 001D081C 38 00 00 78 */ li r0, 0x78
/* 801D4BC0 001D0820 38 C0 00 01 */ li r6, 1
/* 801D4BC4 001D0824 98 A1 00 08 */ stb r5, 8(r1)
/* 801D4BC8 001D0828 3C A0 80 49 */ lis r5, lbl_8048EE18@ha
/* 801D4BCC 001D082C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801D4BD0 001D0830 3B E0 00 00 */ li r31, 0
/* 801D4BD4 001D0834 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801D4BD8 001D0838 98 81 00 09 */ stb r4, 9(r1)
/* 801D4BDC 001D083C 98 61 00 0A */ stb r3, 0xa(r1)
/* 801D4BE0 001D0840 98 01 00 0B */ stb r0, 0xb(r1)
/* 801D4BE4 001D0844 80 61 00 08 */ lwz r3, 8(r1)
/* 801D4BE8 001D0848 94 C5 EE 18 */ stwu r6, lbl_8048EE18@l(r5)
/* 801D4BEC 001D084C 3C 03 ED CC */ addis r0, r3, 0xedcc
/* 801D4BF0 001D0850 28 00 56 78 */ cmplwi r0, 0x5678
/* 801D4BF4 001D0854 40 82 00 0C */ bne lbl_801D4C00
/* 801D4BF8 001D0858 90 C5 00 00 */ stw r6, 0(r5)
/* 801D4BFC 001D085C 48 00 00 1C */ b lbl_801D4C18
lbl_801D4C00:
/* 801D4C00 001D0860 3C 03 87 AA */ addis r0, r3, 0x87aa
/* 801D4C04 001D0864 28 00 34 12 */ cmplwi r0, 0x3412
/* 801D4C08 001D0868 40 82 00 0C */ bne lbl_801D4C14
/* 801D4C0C 001D086C 93 E5 00 00 */ stw r31, 0(r5)
/* 801D4C10 001D0870 48 00 00 08 */ b lbl_801D4C18
lbl_801D4C14:
/* 801D4C14 001D0874 7C DF 33 78 */ mr r31, r6
lbl_801D4C18:
/* 801D4C18 001D0878 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C1C 001D087C 40 82 00 08 */ bne lbl_801D4C24
/* 801D4C20 001D0880 48 00 0A D1 */ bl usr_put_initialize
lbl_801D4C24:
/* 801D4C24 001D0884 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C28 001D0888 40 82 00 0C */ bne lbl_801D4C34
/* 801D4C2C 001D088C 4B FF FE D5 */ bl TRKInitializeEventQueue
/* 801D4C30 001D0890 7C 7F 1B 78 */ mr r31, r3
lbl_801D4C34:
/* 801D4C34 001D0894 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C38 001D0898 40 82 00 0C */ bne lbl_801D4C44
/* 801D4C3C 001D089C 48 00 08 95 */ bl TRKInitializeMessageBuffers
/* 801D4C40 001D08A0 7C 7F 1B 78 */ mr r31, r3
lbl_801D4C44:
/* 801D4C44 001D08A4 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C48 001D08A8 40 82 00 0C */ bne lbl_801D4C54
/* 801D4C4C 001D08AC 48 00 0C 71 */ bl TRKInitializeDispatcher
/* 801D4C50 001D08B0 7C 7F 1B 78 */ mr r31, r3
lbl_801D4C54:
/* 801D4C54 001D08B4 48 00 48 D1 */ bl InitializeProgramEndTrap
/* 801D4C58 001D08B8 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C5C 001D08BC 40 82 00 0C */ bne lbl_801D4C68
/* 801D4C60 001D08C0 48 00 08 ED */ bl TRKInitializeSerialHandler
/* 801D4C64 001D08C4 7C 7F 1B 78 */ mr r31, r3
lbl_801D4C68:
/* 801D4C68 001D08C8 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C6C 001D08CC 40 82 00 0C */ bne lbl_801D4C78
/* 801D4C70 001D08D0 48 00 45 F5 */ bl TRKInitializeTarget
/* 801D4C74 001D08D4 7C 7F 1B 78 */ mr r31, r3
lbl_801D4C78:
/* 801D4C78 001D08D8 2C 1F 00 00 */ cmpwi r31, 0
/* 801D4C7C 001D08DC 40 82 00 44 */ bne lbl_801D4CC0
/* 801D4C80 001D08E0 3C 60 80 64 */ lis r3, lbl_8063F2A0@ha
/* 801D4C84 001D08E4 3C A0 00 01 */ lis r5, 0x0000E100@ha
/* 801D4C88 001D08E8 38 C3 F2 A0 */ addi r6, r3, lbl_8063F2A0@l
/* 801D4C8C 001D08EC 38 80 00 01 */ li r4, 1
/* 801D4C90 001D08F0 38 65 E1 00 */ addi r3, r5, 0x0000E100@l
/* 801D4C94 001D08F4 38 A0 00 00 */ li r5, 0
/* 801D4C98 001D08F8 48 00 4A 65 */ bl TRKInitializeIntDrivenUART
/* 801D4C9C 001D08FC 3C 80 80 64 */ lis r4, lbl_8063F2A0@ha
/* 801D4CA0 001D0900 7C 60 1B 78 */ mr r0, r3
/* 801D4CA4 001D0904 38 64 F2 A0 */ addi r3, r4, lbl_8063F2A0@l
/* 801D4CA8 001D0908 80 63 00 00 */ lwz r3, 0(r3)
/* 801D4CAC 001D090C 7C 1E 03 78 */ mr r30, r0
/* 801D4CB0 001D0910 48 00 29 3D */ bl TRKTargetSetInputPendingPtr
/* 801D4CB4 001D0914 2C 1E 00 00 */ cmpwi r30, 0
/* 801D4CB8 001D0918 41 82 00 08 */ beq lbl_801D4CC0
/* 801D4CBC 001D091C 7F DF F3 78 */ mr r31, r30
lbl_801D4CC0:
/* 801D4CC0 001D0920 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801D4CC4 001D0924 7F E3 FB 78 */ mr r3, r31
/* 801D4CC8 001D0928 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801D4CCC 001D092C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801D4CD0 001D0930 7C 08 03 A6 */ mtlr r0
/* 801D4CD4 001D0934 38 21 00 20 */ addi r1, r1, 0x20
/* 801D4CD8 001D0938 4E 80 00 20 */ blr
|