mirror of https://github.com/zeldaret/tp.git
129 lines
5.5 KiB
ArmAsm
129 lines
5.5 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 8034ba6c
|
|
|
|
|
|
.global ErrorCode2Num
|
|
ErrorCode2Num:
|
|
/* 8034BA6C 003489AC 38 00 00 02 */ li r0, 2
|
|
/* 8034BA70 003489B0 3C 80 80 3D */ lis r4, lbl_803D16A8@ha
|
|
/* 8034BA74 003489B4 7C 09 03 A6 */ mtctr r0
|
|
/* 8034BA78 003489B8 38 84 16 A8 */ addi r4, r4, lbl_803D16A8@l
|
|
/* 8034BA7C 003489BC 38 A0 00 00 */ li r5, 0
|
|
lbl_8034BA80:
|
|
/* 8034BA80 003489C0 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8034BA84 003489C4 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BA88 003489C8 40 82 00 0C */ bne lbl_8034BA94
|
|
/* 8034BA8C 003489CC 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BA90 003489D0 4E 80 00 20 */ blr
|
|
lbl_8034BA94:
|
|
/* 8034BA94 003489D4 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BA98 003489D8 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BA9C 003489DC 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BAA0 003489E0 40 82 00 0C */ bne lbl_8034BAAC
|
|
/* 8034BAA4 003489E4 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BAA8 003489E8 4E 80 00 20 */ blr
|
|
lbl_8034BAAC:
|
|
/* 8034BAAC 003489EC 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BAB0 003489F0 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BAB4 003489F4 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BAB8 003489F8 40 82 00 0C */ bne lbl_8034BAC4
|
|
/* 8034BABC 003489FC 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BAC0 00348A00 4E 80 00 20 */ blr
|
|
lbl_8034BAC4:
|
|
/* 8034BAC4 00348A04 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BAC8 00348A08 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BACC 00348A0C 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BAD0 00348A10 40 82 00 0C */ bne lbl_8034BADC
|
|
/* 8034BAD4 00348A14 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BAD8 00348A18 4E 80 00 20 */ blr
|
|
lbl_8034BADC:
|
|
/* 8034BADC 00348A1C 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BAE0 00348A20 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BAE4 00348A24 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BAE8 00348A28 40 82 00 0C */ bne lbl_8034BAF4
|
|
/* 8034BAEC 00348A2C 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BAF0 00348A30 4E 80 00 20 */ blr
|
|
lbl_8034BAF4:
|
|
/* 8034BAF4 00348A34 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BAF8 00348A38 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BAFC 00348A3C 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BB00 00348A40 40 82 00 0C */ bne lbl_8034BB0C
|
|
/* 8034BB04 00348A44 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BB08 00348A48 4E 80 00 20 */ blr
|
|
lbl_8034BB0C:
|
|
/* 8034BB0C 00348A4C 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BB10 00348A50 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BB14 00348A54 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BB18 00348A58 40 82 00 0C */ bne lbl_8034BB24
|
|
/* 8034BB1C 00348A5C 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BB20 00348A60 4E 80 00 20 */ blr
|
|
lbl_8034BB24:
|
|
/* 8034BB24 00348A64 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BB28 00348A68 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BB2C 00348A6C 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BB30 00348A70 40 82 00 0C */ bne lbl_8034BB3C
|
|
/* 8034BB34 00348A74 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BB38 00348A78 4E 80 00 20 */ blr
|
|
lbl_8034BB3C:
|
|
/* 8034BB3C 00348A7C 84 04 00 04 */ lwzu r0, 4(r4)
|
|
/* 8034BB40 00348A80 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BB44 00348A84 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BB48 00348A88 40 82 00 0C */ bne lbl_8034BB54
|
|
/* 8034BB4C 00348A8C 54 A3 06 3E */ clrlwi r3, r5, 0x18
|
|
/* 8034BB50 00348A90 4E 80 00 20 */ blr
|
|
lbl_8034BB54:
|
|
/* 8034BB54 00348A94 38 84 00 04 */ addi r4, r4, 4
|
|
/* 8034BB58 00348A98 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8034BB5C 00348A9C 42 00 FF 24 */ bdnz lbl_8034BA80
|
|
/* 8034BB60 00348AA0 3C 80 00 10 */ lis r4, 0x10
|
|
/* 8034BB64 00348AA4 7C 03 20 40 */ cmplw r3, r4
|
|
/* 8034BB68 00348AA8 41 80 00 18 */ blt lbl_8034BB80
|
|
/* 8034BB6C 00348AAC 38 04 00 08 */ addi r0, r4, 8
|
|
/* 8034BB70 00348AB0 7C 03 00 40 */ cmplw r3, r0
|
|
/* 8034BB74 00348AB4 41 81 00 0C */ bgt lbl_8034BB80
|
|
/* 8034BB78 00348AB8 38 60 00 11 */ li r3, 0x11
|
|
/* 8034BB7C 00348ABC 4E 80 00 20 */ blr
|
|
lbl_8034BB80:
|
|
/* 8034BB80 00348AC0 38 60 00 1D */ li r3, 0x1d
|
|
/* 8034BB84 00348AC4 4E 80 00 20 */ blr
|
|
|
|
.global __DVDStoreErrorCode
|
|
__DVDStoreErrorCode:
|
|
/* 8034BB88 00348AC8 7C 08 02 A6 */ mflr r0
|
|
/* 8034BB8C 00348ACC 90 01 00 04 */ stw r0, 4(r1)
|
|
/* 8034BB90 00348AD0 3C 03 FE DD */ addis r0, r3, 0xfedd
|
|
/* 8034BB94 00348AD4 28 00 45 67 */ cmplwi r0, 0x4567
|
|
/* 8034BB98 00348AD8 94 21 FF E8 */ stwu r1, -0x18(r1)
|
|
/* 8034BB9C 00348ADC 93 E1 00 14 */ stw r31, 0x14(r1)
|
|
/* 8034BBA0 00348AE0 40 82 00 0C */ bne lbl_8034BBAC
|
|
/* 8034BBA4 00348AE4 3B E0 00 FF */ li r31, 0xff
|
|
/* 8034BBA8 00348AE8 48 00 00 38 */ b lbl_8034BBE0
|
|
lbl_8034BBAC:
|
|
/* 8034BBAC 00348AEC 28 00 45 68 */ cmplwi r0, 0x4568
|
|
/* 8034BBB0 00348AF0 40 82 00 0C */ bne lbl_8034BBBC
|
|
/* 8034BBB4 00348AF4 3B E0 00 FE */ li r31, 0xfe
|
|
/* 8034BBB8 00348AF8 48 00 00 28 */ b lbl_8034BBE0
|
|
lbl_8034BBBC:
|
|
/* 8034BBBC 00348AFC 54 7F 46 3E */ srwi r31, r3, 0x18
|
|
/* 8034BBC0 00348B00 54 63 02 3E */ clrlwi r3, r3, 8
|
|
/* 8034BBC4 00348B04 4B FF FE A9 */ bl ErrorCode2Num
|
|
/* 8034BBC8 00348B08 28 1F 00 06 */ cmplwi r31, 6
|
|
/* 8034BBCC 00348B0C 41 80 00 08 */ blt lbl_8034BBD4
|
|
/* 8034BBD0 00348B10 3B E0 00 06 */ li r31, 6
|
|
lbl_8034BBD4:
|
|
/* 8034BBD4 00348B14 1C 1F 00 1E */ mulli r0, r31, 0x1e
|
|
/* 8034BBD8 00348B18 54 63 06 3E */ clrlwi r3, r3, 0x18
|
|
/* 8034BBDC 00348B1C 7F E3 02 14 */ add r31, r3, r0
|
|
lbl_8034BBE0:
|
|
/* 8034BBE0 00348B20 4B FF 45 C1 */ bl __OSLockSramEx
|
|
/* 8034BBE4 00348B24 9B E3 00 24 */ stb r31, 0x24(r3)
|
|
/* 8034BBE8 00348B28 38 60 00 01 */ li r3, 1
|
|
/* 8034BBEC 00348B2C 4B FF 49 71 */ bl __OSUnlockSramEx
|
|
/* 8034BBF0 00348B30 80 01 00 1C */ lwz r0, 0x1c(r1)
|
|
/* 8034BBF4 00348B34 83 E1 00 14 */ lwz r31, 0x14(r1)
|
|
/* 8034BBF8 00348B38 38 21 00 18 */ addi r1, r1, 0x18
|
|
/* 8034BBFC 00348B3C 7C 08 03 A6 */ mtlr r0
|
|
/* 8034BC00 00348B40 4E 80 00 20 */ blr
|
|
|