.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global VFiPFAPI_ParseOpenModeString VFiPFAPI_ParseOpenModeString: /* 8031A110 00315D70 2C 03 00 00 */ cmpwi r3, 0 /* 8031A114 00315D74 40 82 00 0C */ bne lbl_8031A120 /* 8031A118 00315D78 38 60 00 0A */ li r3, 0xa /* 8031A11C 00315D7C 4E 80 00 20 */ blr lbl_8031A120: /* 8031A120 00315D80 88 03 00 00 */ lbz r0, 0(r3) /* 8031A124 00315D84 38 A0 00 01 */ li r5, 1 /* 8031A128 00315D88 7C 00 07 74 */ extsb r0, r0 /* 8031A12C 00315D8C 2C 00 00 72 */ cmpwi r0, 0x72 /* 8031A130 00315D90 41 82 00 20 */ beq lbl_8031A150 /* 8031A134 00315D94 40 80 00 10 */ bge lbl_8031A144 /* 8031A138 00315D98 2C 00 00 61 */ cmpwi r0, 0x61 /* 8031A13C 00315D9C 41 82 00 24 */ beq lbl_8031A160 /* 8031A140 00315DA0 48 00 00 28 */ b lbl_8031A168 lbl_8031A144: /* 8031A144 00315DA4 2C 00 00 77 */ cmpwi r0, 0x77 /* 8031A148 00315DA8 41 82 00 10 */ beq lbl_8031A158 /* 8031A14C 00315DAC 48 00 00 1C */ b lbl_8031A168 lbl_8031A150: /* 8031A150 00315DB0 38 80 00 02 */ li r4, 2 /* 8031A154 00315DB4 48 00 00 1C */ b lbl_8031A170 lbl_8031A158: /* 8031A158 00315DB8 38 80 00 01 */ li r4, 1 /* 8031A15C 00315DBC 48 00 00 14 */ b lbl_8031A170 lbl_8031A160: /* 8031A160 00315DC0 38 80 00 04 */ li r4, 4 /* 8031A164 00315DC4 48 00 00 0C */ b lbl_8031A170 lbl_8031A168: /* 8031A168 00315DC8 38 60 00 00 */ li r3, 0 /* 8031A16C 00315DCC 4E 80 00 20 */ blr lbl_8031A170: /* 8031A170 00315DD0 88 03 00 01 */ lbz r0, 1(r3) /* 8031A174 00315DD4 2C 00 00 62 */ cmpwi r0, 0x62 /* 8031A178 00315DD8 40 82 00 08 */ bne lbl_8031A180 /* 8031A17C 00315DDC 38 A0 00 02 */ li r5, 2 lbl_8031A180: /* 8031A180 00315DE0 7C 03 28 AE */ lbzx r0, r3, r5 /* 8031A184 00315DE4 38 A5 00 01 */ addi r5, r5, 1 /* 8031A188 00315DE8 7C 00 07 74 */ extsb r0, r0 /* 8031A18C 00315DEC 2C 00 00 2B */ cmpwi r0, 0x2b /* 8031A190 00315DF0 41 82 00 30 */ beq lbl_8031A1C0 /* 8031A194 00315DF4 40 80 00 10 */ bge lbl_8031A1A4 /* 8031A198 00315DF8 2C 00 00 00 */ cmpwi r0, 0 /* 8031A19C 00315DFC 41 82 00 14 */ beq lbl_8031A1B0 /* 8031A1A0 00315E00 48 00 00 18 */ b lbl_8031A1B8 lbl_8031A1A4: /* 8031A1A4 00315E04 2C 00 00 74 */ cmpwi r0, 0x74 /* 8031A1A8 00315E08 41 82 00 10 */ beq lbl_8031A1B8 /* 8031A1AC 00315E0C 48 00 00 0C */ b lbl_8031A1B8 lbl_8031A1B0: /* 8031A1B0 00315E10 7C 83 23 78 */ mr r3, r4 /* 8031A1B4 00315E14 4E 80 00 20 */ blr lbl_8031A1B8: /* 8031A1B8 00315E18 38 60 00 00 */ li r3, 0 /* 8031A1BC 00315E1C 4E 80 00 20 */ blr lbl_8031A1C0: /* 8031A1C0 00315E20 7C 03 28 AE */ lbzx r0, r3, r5 /* 8031A1C4 00315E24 7C 00 07 75 */ extsb. r0, r0 /* 8031A1C8 00315E28 41 82 00 08 */ beq lbl_8031A1D0 /* 8031A1CC 00315E2C 48 00 00 0C */ b lbl_8031A1D8 lbl_8031A1D0: /* 8031A1D0 00315E30 60 83 00 08 */ ori r3, r4, 8 /* 8031A1D4 00315E34 4E 80 00 20 */ blr lbl_8031A1D8: /* 8031A1D8 00315E38 38 60 00 00 */ li r3, 0 /* 8031A1DC 00315E3C 4E 80 00 20 */ blr .global VFiPFAPI_convertError VFiPFAPI_convertError: /* 8031A1E0 00315E40 2C 83 00 00 */ cmpwi cr1, r3, 0 /* 8031A1E4 00315E44 40 86 00 0C */ bne cr1, lbl_8031A1F0 /* 8031A1E8 00315E48 38 60 00 00 */ li r3, 0 /* 8031A1EC 00315E4C 4E 80 00 20 */ blr lbl_8031A1F0: /* 8031A1F0 00315E50 2C 03 FF FF */ cmpwi r3, -1 /* 8031A1F4 00315E54 40 82 00 0C */ bne lbl_8031A200 /* 8031A1F8 00315E58 38 60 FF FF */ li r3, -1 /* 8031A1FC 00315E5C 4E 80 00 20 */ blr lbl_8031A200: /* 8031A200 00315E60 40 85 00 20 */ ble cr1, lbl_8031A220 /* 8031A204 00315E64 2C 03 00 A0 */ cmpwi r3, 0xa0 /* 8031A208 00315E68 40 80 00 18 */ bge lbl_8031A220 /* 8031A20C 00315E6C 3C 80 80 44 */ lis r4, lbl_804465E8@ha /* 8031A210 00315E70 54 60 10 3A */ slwi r0, r3, 2 /* 8031A214 00315E74 38 84 65 E8 */ addi r4, r4, lbl_804465E8@l /* 8031A218 00315E78 7C 64 00 2E */ lwzx r3, r4, r0 /* 8031A21C 00315E7C 4E 80 00 20 */ blr lbl_8031A220: /* 8031A220 00315E80 2C 03 10 00 */ cmpwi r3, 0x1000 /* 8031A224 00315E84 4C 82 00 20 */ bnelr /* 8031A228 00315E88 38 60 00 05 */ li r3, 5 /* 8031A22C 00315E8C 4E 80 00 20 */ blr .global VFiPFAPI_convertReturnValue VFiPFAPI_convertReturnValue: /* 8031A230 00315E90 7C 03 00 D0 */ neg r0, r3 /* 8031A234 00315E94 7C 00 1B 78 */ or r0, r0, r3 /* 8031A238 00315E98 7C 03 FE 70 */ srawi r3, r0, 0x1f /* 8031A23C 00315E9C 4E 80 00 20 */ blr .global VFiPFAPI_convertReturnValue2NULL VFiPFAPI_convertReturnValue2NULL: /* 8031A240 00315EA0 2C 03 00 00 */ cmpwi r3, 0 /* 8031A244 00315EA4 41 82 00 0C */ beq lbl_8031A250 /* 8031A248 00315EA8 38 60 00 00 */ li r3, 0 /* 8031A24C 00315EAC 4E 80 00 20 */ blr lbl_8031A250: /* 8031A250 00315EB0 7C 83 23 78 */ mr r3, r4 /* 8031A254 00315EB4 4E 80 00 20 */ blr