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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global gpiProcessRegisterUniqueNick
gpiProcessRegisterUniqueNick:
/* 80347E24 00343A84 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80347E28 00343A88 7C 08 02 A6 */ mflr r0
/* 80347E2C 00343A8C 90 01 00 34 */ stw r0, 0x34(r1)
/* 80347E30 00343A90 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80347E34 00343A94 7C BF 2B 78 */ mr r31, r5
/* 80347E38 00343A98 38 A0 00 01 */ li r5, 1
/* 80347E3C 00343A9C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80347E40 00343AA0 7C 9E 23 78 */ mr r30, r4
/* 80347E44 00343AA4 7F E4 FB 78 */ mr r4, r31
/* 80347E48 00343AA8 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80347E4C 00343AAC 7C 7D 1B 78 */ mr r29, r3
/* 80347E50 00343AB0 48 00 01 45 */ bl gpiCheckForError
/* 80347E54 00343AB4 2C 03 00 00 */ cmpwi r3, 0
/* 80347E58 00343AB8 41 82 00 0C */ beq lbl_80347E64
/* 80347E5C 00343ABC 38 60 00 04 */ li r3, 4
/* 80347E60 00343AC0 48 00 00 D4 */ b lbl_80347F34
lbl_80347E64:
/* 80347E64 00343AC4 7F E3 FB 78 */ mr r3, r31
/* 80347E68 00343AC8 38 8D 92 A0 */ addi r4, r13, lbl_8063E560-_SDA_BASE_
/* 80347E6C 00343ACC 38 A0 00 04 */ li r5, 4
/* 80347E70 00343AD0 4B E8 66 F9 */ bl strncmp
/* 80347E74 00343AD4 2C 03 00 00 */ cmpwi r3, 0
/* 80347E78 00343AD8 41 82 00 30 */ beq lbl_80347EA8
/* 80347E7C 00343ADC 3C A0 80 45 */ lis r5, lbl_8044B548@ha
/* 80347E80 00343AE0 7F A3 EB 78 */ mr r3, r29
/* 80347E84 00343AE4 38 A5 B5 48 */ addi r5, r5, lbl_8044B548@l
/* 80347E88 00343AE8 38 80 00 01 */ li r4, 1
/* 80347E8C 00343AEC 48 00 05 7D */ bl gpiSetError
/* 80347E90 00343AF0 7F A3 EB 78 */ mr r3, r29
/* 80347E94 00343AF4 38 80 00 03 */ li r4, 3
/* 80347E98 00343AF8 38 A0 00 01 */ li r5, 1
/* 80347E9C 00343AFC 4B FF 7D CD */ bl gpiCallErrorCallback
/* 80347EA0 00343B00 38 60 00 03 */ li r3, 3
/* 80347EA4 00343B04 48 00 00 90 */ b lbl_80347F34
lbl_80347EA8:
/* 80347EA8 00343B08 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80347EAC 00343B0C 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80347EB0 00343B10 2C 03 00 00 */ cmpwi r3, 0
/* 80347EB4 00343B14 90 61 00 10 */ stw r3, 0x10(r1)
/* 80347EB8 00343B18 90 01 00 14 */ stw r0, 0x14(r1)
/* 80347EBC 00343B1C 41 82 00 68 */ beq lbl_80347F24
/* 80347EC0 00343B20 38 60 00 04 */ li r3, 4
/* 80347EC4 00343B24 4B FF 14 51 */ bl gsimalloc
/* 80347EC8 00343B28 2C 03 00 00 */ cmpwi r3, 0
/* 80347ECC 00343B2C 7C 65 1B 78 */ mr r5, r3
/* 80347ED0 00343B30 40 82 00 1C */ bne lbl_80347EEC
/* 80347ED4 00343B34 3C 80 80 45 */ lis r4, lbl_8044B578@ha
/* 80347ED8 00343B38 7F A3 EB 78 */ mr r3, r29
/* 80347EDC 00343B3C 38 84 B5 78 */ addi r4, r4, lbl_8044B578@l
/* 80347EE0 00343B40 48 00 05 79 */ bl gpiSetErrorString
/* 80347EE4 00343B44 38 60 00 01 */ li r3, 1
/* 80347EE8 00343B48 48 00 00 4C */ b lbl_80347F34
lbl_80347EEC:
/* 80347EEC 00343B4C 38 00 00 00 */ li r0, 0
/* 80347EF0 00343B50 80 81 00 10 */ lwz r4, 0x10(r1)
/* 80347EF4 00343B54 90 03 00 00 */ stw r0, 0(r3)
/* 80347EF8 00343B58 7F A3 EB 78 */ mr r3, r29
/* 80347EFC 00343B5C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80347F00 00343B60 7F C6 F3 78 */ mr r6, r30
/* 80347F04 00343B64 90 81 00 08 */ stw r4, 8(r1)
/* 80347F08 00343B68 38 81 00 08 */ addi r4, r1, 8
/* 80347F0C 00343B6C 38 E0 00 00 */ li r7, 0
/* 80347F10 00343B70 90 01 00 0C */ stw r0, 0xc(r1)
/* 80347F14 00343B74 4B FF 7E 15 */ bl gpiAddCallback
/* 80347F18 00343B78 2C 03 00 00 */ cmpwi r3, 0
/* 80347F1C 00343B7C 41 82 00 08 */ beq lbl_80347F24
/* 80347F20 00343B80 48 00 00 14 */ b lbl_80347F34
lbl_80347F24:
/* 80347F24 00343B84 7F A3 EB 78 */ mr r3, r29
/* 80347F28 00343B88 7F C4 F3 78 */ mr r4, r30
/* 80347F2C 00343B8C 4B FF C1 31 */ bl gpiRemoveOperation
/* 80347F30 00343B90 38 60 00 00 */ li r3, 0
lbl_80347F34:
/* 80347F34 00343B94 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80347F38 00343B98 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80347F3C 00343B9C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80347F40 00343BA0 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80347F44 00343BA4 7C 08 03 A6 */ mtlr r0
/* 80347F48 00343BA8 38 21 00 30 */ addi r1, r1, 0x30
/* 80347F4C 00343BAC 4E 80 00 20 */ blr
|