mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
29823 lines
1.5 MiB
Plaintext
29823 lines
1.5 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_022A6624 @ 0x22a6624
|
|
void Gambit_fn_022A6624(CPUState* cpu) {
|
|
L_022A6624: ; // 0x22a6624
|
|
/* 022A6624 */ return;
|
|
}
|
|
|
|
// fn_022A6628 @ 0x22a6628
|
|
void Gambit_fn_022A6628(CPUState* cpu) {
|
|
L_022A6628: ; // 0x22a6628
|
|
/* 022A6628 */ return;
|
|
}
|
|
|
|
// fn_022A662C @ 0x22a662c
|
|
void Gambit_fn_022A662C(CPUState* cpu) {
|
|
L_022A662C: ; // 0x22a662c
|
|
/* 022A662C */ return;
|
|
}
|
|
|
|
// fn_022A6630 @ 0x22a6630
|
|
void Gambit_fn_022A6630(CPUState* cpu) {
|
|
L_022A6630: ; // 0x22a6630
|
|
/* 022A6630 */ return;
|
|
}
|
|
|
|
// fn_022A6634 @ 0x22a6634
|
|
void Gambit_fn_022A6634(CPUState* cpu) {
|
|
L_022A6634: ; // 0x22a6634
|
|
/* 022A6634 */ return;
|
|
}
|
|
|
|
// fn_022A6638 @ 0x22a6638
|
|
void Gambit_fn_022A6638(CPUState* cpu) {
|
|
L_022A6638: ; // 0x22a6638
|
|
/* 022A6638 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A663C */ return;
|
|
}
|
|
|
|
// fn_022A6640 @ 0x22a6640
|
|
void Gambit_fn_022A6640(CPUState* cpu) {
|
|
L_022A6640: ; // 0x22a6640
|
|
/* 022A6640 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A6644 */ return;
|
|
}
|
|
|
|
// fn_022A6648 @ 0x22a6648
|
|
void Gambit_fn_022A6648(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022A6648: ; // 0x22a6648
|
|
/* 022A6648 */ cpu->r[0] = cpu->lr;
|
|
/* 022A664C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A664C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A664C */ cpu->r[1] = _t0;
|
|
/* 022A6650 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A6650 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A6654 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6654 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A6658 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022A6658 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A665C */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022A665C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6660 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A6664 */ cpu->ctr = cpu->r[9];
|
|
/* 022A6668 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A666C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6670 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A6674 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022A6674 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A6678 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6678 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A667C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022A667C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022A6680 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022A6680 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022A6684 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022A6684 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022A6688 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A668C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022A668C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A6690 */ cpu->lr = cpu->r[0];
|
|
/* 022A6694 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A6698 */ return;
|
|
}
|
|
|
|
// fn_022A664C @ 0x22a664c
|
|
void Gambit_fn_022A664C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022A664C: ; // 0x22a664c
|
|
/* 022A664C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A664C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A664C */ cpu->r[1] = _t0;
|
|
/* 022A6650 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A6650 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A6654 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6654 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A6658 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022A6658 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A665C */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022A665C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6660 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A6664 */ cpu->ctr = cpu->r[9];
|
|
/* 022A6668 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A666C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6670 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A6674 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022A6674 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A6678 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6678 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A667C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022A667C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022A6680 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022A6680 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022A6684 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022A6684 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022A6688 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A668C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022A668C */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A6690 */ cpu->lr = cpu->r[0];
|
|
/* 022A6694 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A6698 */ return;
|
|
}
|
|
|
|
// fn_022A669C @ 0x22a669c
|
|
void Gambit_fn_022A669C(CPUState* cpu) {
|
|
L_022A669C: ; // 0x22a669c
|
|
/* 022A669C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A66A0 */ return;
|
|
}
|
|
|
|
// fn_022A66A4 @ 0x22a66a4
|
|
void Gambit_fn_022A66A4(CPUState* cpu) {
|
|
L_022A66A4: ; // 0x22a66a4
|
|
/* 022A66A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A66A8 */ return;
|
|
}
|
|
|
|
// fn_022A66AC @ 0x22a66ac
|
|
void Gambit_fn_022A66AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A66AC: ; // 0x22a66ac
|
|
/* 022A66AC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A66AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A66B0 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022A66B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A66B4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A66B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A66BC @ 0x22a66bc
|
|
void Gambit_fn_022A66BC(CPUState* cpu) {
|
|
L_022A66BC: ; // 0x22a66bc
|
|
/* 022A66BC */ return;
|
|
}
|
|
|
|
// fn_022A66C0 @ 0x22a66c0
|
|
void Gambit_fn_022A66C0(CPUState* cpu) {
|
|
L_022A66C0: ; // 0x22a66c0
|
|
/* 022A66C0 */ return;
|
|
}
|
|
|
|
// fn_022A66C4 @ 0x22a66c4
|
|
void Gambit_fn_022A66C4(CPUState* cpu) {
|
|
L_022A66C4: ; // 0x22a66c4
|
|
/* 022A66C4 */ return;
|
|
}
|
|
|
|
// fn_022A66C8 @ 0x22a66c8
|
|
void Gambit_fn_022A66C8(CPUState* cpu) {
|
|
L_022A66C8: ; // 0x22a66c8
|
|
/* 022A66C8 */ return;
|
|
}
|
|
|
|
// fn_022A66CC @ 0x22a66cc
|
|
void Gambit_fn_022A66CC(CPUState* cpu) {
|
|
L_022A66CC: ; // 0x22a66cc
|
|
/* 022A66CC */ cpu->r[3] = 0x00000001u;
|
|
/* 022A66D0 */ return;
|
|
}
|
|
|
|
// fn_022A66D4 @ 0x22a66d4
|
|
void Gambit_fn_022A66D4(CPUState* cpu) {
|
|
L_022A66D4: ; // 0x22a66d4
|
|
/* 022A66D4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A66D8 */ return;
|
|
}
|
|
|
|
// fn_022A66DC @ 0x22a66dc
|
|
void Gambit_fn_022A66DC(CPUState* cpu) {
|
|
L_022A66DC: ; // 0x22a66dc
|
|
/* 022A66DC */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022A66E0 */ return;
|
|
}
|
|
|
|
// fn_022A66E4 @ 0x22a66e4
|
|
void Gambit_fn_022A66E4(CPUState* cpu) {
|
|
L_022A66E4: ; // 0x22a66e4
|
|
/* 022A66E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A66E8 */ return;
|
|
}
|
|
|
|
// fn_022A66EC @ 0x22a66ec
|
|
void Gambit_fn_022A66EC(CPUState* cpu) {
|
|
L_022A66EC: ; // 0x22a66ec
|
|
/* 022A66EC */ cpu->r[3] = 0x00000000u;
|
|
/* 022A66F0 */ return;
|
|
}
|
|
|
|
// fn_022A66F4 @ 0x22a66f4
|
|
void Gambit_fn_022A66F4(CPUState* cpu) {
|
|
L_022A66F4: ; // 0x22a66f4
|
|
/* 022A66F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A66F8 */ return;
|
|
}
|
|
|
|
// fn_022A66FC @ 0x22a66fc
|
|
void Gambit_fn_022A66FC(CPUState* cpu) {
|
|
L_022A66FC: ; // 0x22a66fc
|
|
/* 022A66FC */ cpu->r[3] = 0x00000000u;
|
|
/* 022A6700 */ return;
|
|
}
|
|
|
|
// fn_022A6704 @ 0x22a6704
|
|
void Gambit_fn_022A6704(CPUState* cpu) {
|
|
L_022A6704: ; // 0x22a6704
|
|
/* 022A6704 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A6708 */ return;
|
|
}
|
|
|
|
// fn_022A670C @ 0x22a670c
|
|
void Gambit_fn_022A670C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A670C: ; // 0x22a670c
|
|
/* 022A670C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A6710 */ _t0 = cpu->r[12] + 0x00000CE4u;
|
|
/* 022A6710 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A6714 */ return;
|
|
}
|
|
|
|
// fn_022A6718 @ 0x22a6718
|
|
void Gambit_fn_022A6718(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A6718: ; // 0x22a6718
|
|
/* 022A6718 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A671C */ _t0 = cpu->r[12] + 0x00000CE4u;
|
|
/* 022A671C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A6720 */ return;
|
|
}
|
|
|
|
// fn_022A6724 @ 0x22a6724
|
|
void Gambit_fn_022A6724(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A6724: ; // 0x22a6724
|
|
/* 022A6724 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A6728 */ _t0 = cpu->r[12] + 0x00000CE4u;
|
|
/* 022A6728 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A672C */ return;
|
|
}
|
|
|
|
// fn_022A6730 @ 0x22a6730
|
|
void Gambit_fn_022A6730(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A6730: ; // 0x22a6730
|
|
/* 022A6730 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A6734 */ _t0 = cpu->r[12] + 0x00000CE4u;
|
|
/* 022A6734 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A6738 */ return;
|
|
}
|
|
|
|
// fn_022A673C @ 0x22a673c
|
|
void Gambit_fn_022A673C(CPUState* cpu) {
|
|
L_022A673C: ; // 0x22a673c
|
|
/* 022A673C */ cpu->r[3] = 0x00000001u;
|
|
/* 022A6740 */ return;
|
|
}
|
|
|
|
// fn_022A6744 @ 0x22a6744
|
|
void Gambit_fn_022A6744(CPUState* cpu) {
|
|
L_022A6744: ; // 0x22a6744
|
|
/* 022A6744 */ return;
|
|
}
|
|
|
|
// fn_022A6748 @ 0x22a6748
|
|
void Gambit_fn_022A6748(CPUState* cpu) {
|
|
L_022A6748: ; // 0x22a6748
|
|
/* 022A6748 */ return;
|
|
}
|
|
|
|
// fn_022A674C @ 0x22a674c
|
|
void Gambit_fn_022A674C(CPUState* cpu) {
|
|
L_022A674C: ; // 0x22a674c
|
|
/* 022A674C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A6750 */ return;
|
|
}
|
|
|
|
// fn_022A6754 @ 0x22a6754
|
|
void Gambit_fn_022A6754(CPUState* cpu) {
|
|
L_022A6754: ; // 0x22a6754
|
|
/* 022A6754 */ return;
|
|
}
|
|
|
|
// fn_022A6758 @ 0x22a6758
|
|
void Gambit_fn_022A6758(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A6758: ; // 0x22a6758
|
|
/* 022A6758 */ cpu->r[0] = cpu->lr;
|
|
/* 022A675C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022A675C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022A6760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022A6764 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A6764 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022A6764 */ cpu->r[1] = _t1;
|
|
/* 022A6768 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6768 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A6768 */ if (_t3) goto L_022A676C; else goto L_022A6780;
|
|
L_022A676C: ; // 0x22a676c
|
|
/* 022A676C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A676C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6770 */ cpu->lr = cpu->r[0];
|
|
/* 022A6774 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6778 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A677C */ return;
|
|
L_022A6780: ; // 0x22a6780
|
|
/* 022A6780 */ Gambit_fn_022713B8(cpu);
|
|
/* 022A6784 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A6788 */ cpu->lr = cpu->r[0];
|
|
/* 022A678C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6790 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A6794 */ return;
|
|
}
|
|
|
|
// fn_022A6764 @ 0x22a6764
|
|
void Gambit_fn_022A6764(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022A6764: ; // 0x22a6764
|
|
/* 022A6764 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A6764 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A6764 */ cpu->r[1] = _t0;
|
|
/* 022A6768 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6768 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A6768 */ if (_t2) goto L_022A676C; else goto L_022A6780;
|
|
L_022A676C: ; // 0x22a676c
|
|
/* 022A676C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A676C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A6770 */ cpu->lr = cpu->r[0];
|
|
/* 022A6774 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6778 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A677C */ return;
|
|
L_022A6780: ; // 0x22a6780
|
|
/* 022A6780 */ Gambit_fn_022713B8(cpu);
|
|
/* 022A6784 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6788 */ cpu->lr = cpu->r[0];
|
|
/* 022A678C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6790 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A6794 */ return;
|
|
}
|
|
|
|
// fn_022A6798 @ 0x22a6798
|
|
void Gambit_fn_022A6798(CPUState* cpu) {
|
|
L_022A6798: ; // 0x22a6798
|
|
/* 022A6798 */ return;
|
|
}
|
|
|
|
// fn_022A679C @ 0x22a679c
|
|
void Gambit_fn_022A679C(CPUState* cpu) {
|
|
L_022A679C: ; // 0x22a679c
|
|
/* 022A679C */ cpu->r[3] = 0x101F0000u;
|
|
/* 022A67A0 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022A67A4 */ return;
|
|
}
|
|
|
|
// fn_022A67A8 @ 0x22a67a8
|
|
void Gambit_fn_022A67A8(CPUState* cpu) {
|
|
L_022A67A8: ; // 0x22a67a8
|
|
/* 022A67A8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022A67AC */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022A67B0 */ return;
|
|
}
|
|
|
|
// fn_022A67B4 @ 0x22a67b4
|
|
void Gambit_fn_022A67B4(CPUState* cpu) {
|
|
L_022A67B4: ; // 0x22a67b4
|
|
/* 022A67B4 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A67B8 */ cpu->r[3] = cpu->r[3] + 0x00000ABCu;
|
|
/* 022A67BC */ return;
|
|
}
|
|
|
|
// fn_022A67C0 @ 0x22a67c0
|
|
void Gambit_fn_022A67C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022A67C0: ; // 0x22a67c0
|
|
/* 022A67C0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A67C4 */ _t0 = cpu->r[9] + 0x0000011Cu;
|
|
/* 022A67C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A67C8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A67CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A67D0 */ cpu->r[11] = cpu->r[11] + 0x00000164u;
|
|
/* 022A67D4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A67D4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A67D4 */ if (_t2) goto L_022A67D8; else goto L_022A67F0;
|
|
L_022A67D8: ; // 0x22a67d8
|
|
/* 022A67D8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A67DC */ cpu->r[0] = 0x00000001u;
|
|
/* 022A67E0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A67E4 */ cpu->r[9] = cpu->r[9] + 0x00000A64u;
|
|
/* 022A67E8 */ _t3 = cpu->r[12] + 0x0000011Cu;
|
|
/* 022A67E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A67EC */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022A67EC */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022A67F0: ; // 0x22a67f0
|
|
/* 022A67F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022A67F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A67F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A67F4 */ if (_t6) goto L_022A67F8; else goto L_022A6800;
|
|
L_022A67F8: ; // 0x22a67f8
|
|
/* 022A67F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A67FC */ return;
|
|
L_022A6800: ; // 0x22a6800
|
|
/* 022A6800 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A6804 */ _t7 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022A6804 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A6808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A680C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A6810 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022A6814 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6814 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A6814 */ if (_t9) goto L_022A6818; else goto L_022A6830;
|
|
L_022A6818: ; // 0x22a6818
|
|
/* 022A6818 */ cpu->r[11] = 0x10060000u;
|
|
/* 022A681C */ cpu->r[10] = 0x00000001u;
|
|
/* 022A6820 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A6824 */ cpu->r[11] = cpu->r[11] + 0x00000A44u;
|
|
/* 022A6828 */ _t10 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 022A6828 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022A682C */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022A682C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022A6830: ; // 0x22a6830
|
|
/* 022A6830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022A6834 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6834 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A6834 */ if (_t13) goto L_022A6838; else goto L_022A6840;
|
|
L_022A6838: ; // 0x22a6838
|
|
/* 022A6838 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A683C */ goto L_022A68B4;
|
|
L_022A6840: ; // 0x22a6840
|
|
/* 022A6840 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022A6844 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022A6844 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A6844 */ cpu->r[10] = _t14;
|
|
/* 022A6848 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A684C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A6850 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 022A6854 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6854 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A6854 */ if (_t16) goto L_022A6858; else goto L_022A686C;
|
|
L_022A6858: ; // 0x22a6858
|
|
/* 022A6858 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A685C */ cpu->r[0] = 0x00000001u;
|
|
/* 022A6860 */ cpu->r[9] = cpu->r[9] + 0x00000A34u;
|
|
/* 022A6864 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022A6864 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022A6868 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022A6868 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022A686C: ; // 0x22a686c
|
|
/* 022A686C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022A6870 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6870 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022A6870 */ if (_t20) goto L_022A6874; else goto L_022A687C;
|
|
L_022A6874: ; // 0x22a6874
|
|
/* 022A6874 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A6878 */ goto L_022A68B4;
|
|
L_022A687C: ; // 0x22a687c
|
|
/* 022A687C */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A6880 */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 022A6880 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A6880 */ cpu->r[9] = _t21;
|
|
/* 022A6884 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A6888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A688C */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022A6890 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6890 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A6890 */ if (_t23) goto L_022A6894; else goto L_022A68A8;
|
|
L_022A6894: ; // 0x22a6894
|
|
/* 022A6894 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A6898 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A689C */ cpu->r[0] = cpu->r[0] + 0x000009C4u;
|
|
/* 022A68A0 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022A68A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022A68A4 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022A68A4 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022A68A8: ; // 0x22a68a8
|
|
/* 022A68A8 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022A68AC */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022A68B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022A68B4: ; // 0x22a68b4
|
|
/* 022A68B4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022A68B8 */ return;
|
|
}
|
|
|
|
// fn_022A68BC @ 0x22a68bc
|
|
void Gambit_fn_022A68BC(CPUState* cpu) {
|
|
L_022A68BC: ; // 0x22a68bc
|
|
/* 022A68BC */ return;
|
|
}
|
|
|
|
// fn_022A68C0 @ 0x22a68c0
|
|
void Gambit_fn_022A68C0(CPUState* cpu) {
|
|
L_022A68C0: ; // 0x22a68c0
|
|
/* 022A68C0 */ return;
|
|
}
|
|
|
|
// fn_022A68C4 @ 0x22a68c4
|
|
void Gambit_fn_022A68C4(CPUState* cpu) {
|
|
L_022A68C4: ; // 0x22a68c4
|
|
/* 022A68C4 */ return;
|
|
}
|
|
|
|
// fn_022A68C8 @ 0x22a68c8
|
|
void Gambit_fn_022A68C8(CPUState* cpu) {
|
|
L_022A68C8: ; // 0x22a68c8
|
|
/* 022A68C8 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A68CC */ cpu->r[3] = cpu->r[3] + 0x00000AD8u;
|
|
/* 022A68D0 */ return;
|
|
}
|
|
|
|
// fn_022A68D4 @ 0x22a68d4
|
|
void Gambit_fn_022A68D4(CPUState* cpu) {
|
|
L_022A68D4: ; // 0x22a68d4
|
|
/* 022A68D4 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A68D8 */ cpu->r[3] = cpu->r[3] + 0x00000AF0u;
|
|
/* 022A68DC */ return;
|
|
}
|
|
|
|
// fn_022A68E0 @ 0x22a68e0
|
|
void Gambit_fn_022A68E0(CPUState* cpu) {
|
|
L_022A68E0: ; // 0x22a68e0
|
|
/* 022A68E0 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A68E4 */ cpu->r[3] = cpu->r[3] + 0x00000A84u;
|
|
/* 022A68E8 */ return;
|
|
}
|
|
|
|
// fn_022A68EC @ 0x22a68ec
|
|
void Gambit_fn_022A68EC(CPUState* cpu) {
|
|
L_022A68EC: ; // 0x22a68ec
|
|
/* 022A68EC */ cpu->r[3] = 0x10060000u;
|
|
/* 022A68F0 */ cpu->r[3] = cpu->r[3] + 0x00000AA0u;
|
|
/* 022A68F4 */ return;
|
|
}
|
|
|
|
// fn_022A68F8 @ 0x22a68f8
|
|
void Gambit_fn_022A68F8(CPUState* cpu) {
|
|
L_022A68F8: ; // 0x22a68f8
|
|
/* 022A68F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A68FC */ return;
|
|
}
|
|
|
|
// fn_022A6900 @ 0x22a6900
|
|
void Gambit_fn_022A6900(CPUState* cpu) {
|
|
L_022A6900: ; // 0x22a6900
|
|
/* 022A6900 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A6904 */ return;
|
|
}
|
|
|
|
// fn_022A6918 @ 0x22a6918
|
|
void Gambit_fn_022A6918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0229CC38: ; // 0x229cc38
|
|
/* 0229CC38 */ cpu->r[0] = cpu->lr;
|
|
/* 0229CC3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0229CC3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0229CC3C */ cpu->r[1] = _t0;
|
|
/* 0229CC40 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229CC40 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0229CC44 */ cpu->r[31] = cpu->r[3];
|
|
/* 0229CC48 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0229CC48 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0229CC4C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0229CC4C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0229CC50 */ cpu->r[12] = 0x00000000u;
|
|
/* 0229CC54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0229CC58 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0229CC58 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0229CC5C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0229CC5C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0229CC5C */ if (_t6) goto L_0229CC84; else goto L_0229CC60;
|
|
L_0229CC60: ; // 0x229cc60
|
|
/* 0229CC60 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0229CC60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0229CC64 */ /* nop */
|
|
/* 0229CC68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0229CC6C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0229CC6C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0229CC6C */ if (_t9) goto L_0229CC70; else goto L_0229CC84;
|
|
L_0229CC70: ; // 0x229cc70
|
|
/* 0229CC70 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0229CC70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0229CC74 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0229CC74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0229CC78 */ cpu->ctr = cpu->r[0];
|
|
/* 0229CC7C */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CC80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0229CC84: ; // 0x229cc84
|
|
/* 0229CC84 */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CC88 */ Gambit_fn_0229CBB0(cpu);
|
|
/* 0229CC8C */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CC90 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0229CC94 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0229CC94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0229CC98 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229CC98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0229CC9C */ cpu->lr = cpu->r[0];
|
|
/* 0229CCA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0229CCA4 */ return;
|
|
L_022A6918: ; // 0x22a6918
|
|
/* 022A6918 */ cpu->r[3] = cpu->r[3] + 0x00000184u;
|
|
/* 022A691C */ goto L_0229CC38;
|
|
}
|
|
|
|
// fn_022A6920 @ 0x22a6920
|
|
void Gambit_fn_022A6920(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A6920: ; // 0x22a6920
|
|
/* 022A6920 */ cpu->r[0] = cpu->lr;
|
|
/* 022A6924 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A6924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A6924 */ cpu->r[1] = _t0;
|
|
/* 022A6928 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6928 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A692C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A6930 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A6930 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A6934 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022A6934 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022A6938 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A693C */ /* nop */
|
|
/* 022A6940 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A6944 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A6948 */ Gambit_fn_0229CB28(cpu);
|
|
/* 022A694C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022A694C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6950 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6950 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A6954 */ cpu->lr = cpu->r[0];
|
|
/* 022A6958 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A695C */ return;
|
|
}
|
|
|
|
// fn_022A6924 @ 0x22a6924
|
|
void Gambit_fn_022A6924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A6924: ; // 0x22a6924
|
|
/* 022A6924 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A6924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A6924 */ cpu->r[1] = _t0;
|
|
/* 022A6928 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6928 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A692C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A6930 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A6930 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A6934 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022A6934 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022A6938 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A693C */ /* nop */
|
|
/* 022A6940 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A6944 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A6948 */ Gambit_fn_0229CB28(cpu);
|
|
/* 022A694C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022A694C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A6950 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6950 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A6954 */ cpu->lr = cpu->r[0];
|
|
/* 022A6958 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A695C */ return;
|
|
}
|
|
|
|
// fn_022A6960 @ 0x22a6960
|
|
void Gambit_fn_022A6960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022A6960: ; // 0x22a6960
|
|
/* 022A6960 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A6964 */ _t0 = cpu->r[12] + 0x00000120u;
|
|
/* 022A6964 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A6968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A696C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A6970 */ cpu->r[12] = cpu->r[12] + 0x00000160u;
|
|
/* 022A6974 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6974 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A6974 */ if (_t2) goto L_022A6978; else goto L_022A6990;
|
|
L_022A6978: ; // 0x22a6978
|
|
/* 022A6978 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A697C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A6980 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A6984 */ cpu->r[0] = cpu->r[0] + 0x00000A74u;
|
|
/* 022A6988 */ _t3 = cpu->r[8] + 0x00000120u;
|
|
/* 022A6988 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 022A698C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022A698C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_022A6990: ; // 0x22a6990
|
|
/* 022A6990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022A6994 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6994 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A6994 */ if (_t6) goto L_022A6998; else goto L_022A69A0;
|
|
L_022A6998: ; // 0x22a6998
|
|
/* 022A6998 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A699C */ return;
|
|
L_022A69A0: ; // 0x22a69a0
|
|
/* 022A69A0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A69A4 */ _t7 = cpu->r[11] + 0xFFFFDA38u;
|
|
/* 022A69A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A69A4 */ cpu->r[11] = _t7;
|
|
/* 022A69A8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022A69AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A69B0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFE8u;
|
|
/* 022A69B4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A69B4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A69B4 */ if (_t9) goto L_022A69B8; else goto L_022A69CC;
|
|
L_022A69B8: ; // 0x22a69b8
|
|
/* 022A69B8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A69BC */ cpu->r[9] = 0x00000001u;
|
|
/* 022A69C0 */ cpu->r[12] = cpu->r[12] + 0x00000A54u;
|
|
/* 022A69C4 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 022A69C4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022A69C8 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022A69C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_022A69CC: ; // 0x22a69cc
|
|
/* 022A69CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022A69D0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A69D0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A69D0 */ if (_t13) goto L_022A69D4; else goto L_022A69DC;
|
|
L_022A69D4: ; // 0x22a69d4
|
|
/* 022A69D4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A69D8 */ goto L_022A6A14;
|
|
L_022A69DC: ; // 0x22a69dc
|
|
/* 022A69DC */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A69E0 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 022A69E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A69E0 */ cpu->r[8] = _t14;
|
|
/* 022A69E4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A69E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A69EC */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 022A69F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A69F0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A69F0 */ if (_t16) goto L_022A69F4; else goto L_022A6A08;
|
|
L_022A69F4: ; // 0x22a69f4
|
|
/* 022A69F4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A69F8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A69FC */ cpu->r[10] = cpu->r[10] + 0x000009C4u;
|
|
/* 022A6A00 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 022A6A00 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 022A6A04 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022A6A04 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_022A6A08: ; // 0x22a6a08
|
|
/* 022A6A08 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 022A6A0C */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 022A6A10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022A6A14: ; // 0x22a6a14
|
|
/* 022A6A14 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022A6A18 */ return;
|
|
}
|
|
|
|
// fn_022A6A1C @ 0x22a6a1c
|
|
void Gambit_fn_022A6A1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022A6A1C: ; // 0x22a6a1c
|
|
/* 022A6A1C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022A6A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A6A1C */ cpu->r[1] = _t0;
|
|
/* 022A6A20 */ /* nop */
|
|
/* 022A6A24 */ cpu->r[0] = cpu->lr;
|
|
/* 022A6A28 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022A6A28 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A6A2C */ cpu->r[29] = cpu->r[6];
|
|
/* 022A6A30 */ cpu->r[28] = cpu->r[3];
|
|
/* 022A6A34 */ cpu->r[30] = cpu->r[5];
|
|
/* 022A6A38 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022A6A38 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022A6A3C */ cpu->r[31] = 0x101D0000u;
|
|
/* 022A6A40 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022A6A40 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022A6A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6A48 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A6A48 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022A6A4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6A4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A6A4C */ if (_t6) goto L_022A6A90; else goto L_022A6A50;
|
|
L_022A6A50: ; // 0x22a6a50
|
|
/* 022A6A50 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A6A50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A6A54 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A6A58 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A6A58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A6A5C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022A6A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A6A60 */ cpu->ctr = cpu->r[0];
|
|
/* 022A6A64 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A6A68 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6A6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6A74 */ cpu->r[0] = cpu->r[27];
|
|
/* 022A6A78 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6A78 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022A6A78 */ if (_t11) goto L_022A6A80; else goto L_022A6A7C;
|
|
L_022A6A7C: ; // 0x22a6a7c
|
|
/* 022A6A7C */ cpu->r[0] = 0x00000001u;
|
|
L_022A6A80: ; // 0x22a6a80
|
|
/* 022A6A80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A6A84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6A84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A6A84 */ if (_t13) goto L_022A6A90; else goto L_022A6A88;
|
|
L_022A6A88: ; // 0x22a6a88
|
|
/* 022A6A88 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022A6A88 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022A6A8C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022A6A8C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022A6A90: ; // 0x22a6a90
|
|
/* 022A6A90 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022A6A90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A6A94 */ cpu->r[0] = 0x00000000u;
|
|
/* 022A6A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A6A9C */ cpu->r[12] = cpu->r[0];
|
|
/* 022A6AA0 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6AA0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022A6AA0 */ if (_t18) goto L_022A6AA4; else goto L_022A6AC8;
|
|
L_022A6AA4: ; // 0x22a6aa4
|
|
/* 022A6AA4 */ cpu->ctr = cpu->r[7];
|
|
/* 022A6AA8 */ cpu->r[10] = 0x00000000u;
|
|
L_022A6AAC: ; // 0x22a6aac
|
|
/* 022A6AAC */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022A6AAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A6AB0 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022A6AB0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022A6AB4 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022A6AB8 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022A6AB8 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022A6ABC */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022A6AC0 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022A6AC0 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022A6AC4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A6AC4 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A6AC4 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022A6AC4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A6AC4 */ if (_t25) goto L_022A6AAC; else goto L_022A6AC8;
|
|
L_022A6AC8: ; // 0x22a6ac8
|
|
/* 022A6AC8 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A6AC8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022A6ACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6AD0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6AD0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022A6AD0 */ if (_t28) goto L_022A6B14; else goto L_022A6AD4;
|
|
L_022A6AD4: ; // 0x22a6ad4
|
|
/* 022A6AD4 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A6AD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A6AD8 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A6ADC */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A6ADC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A6AE0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022A6AE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A6AE4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A6AE8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A6AEC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6AF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6AF8 */ cpu->r[11] = cpu->r[27];
|
|
/* 022A6AFC */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6AFC */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A6AFC */ if (_t33) goto L_022A6B04; else goto L_022A6B00;
|
|
L_022A6B00: ; // 0x22a6b00
|
|
/* 022A6B00 */ cpu->r[11] = 0x00000001u;
|
|
L_022A6B04: ; // 0x22a6b04
|
|
/* 022A6B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A6B08 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6B08 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022A6B08 */ if (_t35) goto L_022A6B14; else goto L_022A6B0C;
|
|
L_022A6B0C: ; // 0x22a6b0c
|
|
/* 022A6B0C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022A6B0C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022A6B10 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022A6B10 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022A6B14: ; // 0x22a6b14
|
|
/* 022A6B14 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022A6B14 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022A6B18 */ cpu->r[0] = 0x00000000u;
|
|
/* 022A6B1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022A6B20 */ cpu->r[12] = cpu->r[0];
|
|
/* 022A6B24 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6B24 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022A6B24 */ if (_t40) goto L_022A6B28; else goto L_022A6B4C;
|
|
L_022A6B28: ; // 0x22a6b28
|
|
/* 022A6B28 */ cpu->ctr = cpu->r[6];
|
|
/* 022A6B2C */ cpu->r[9] = 0x00000000u;
|
|
L_022A6B30: ; // 0x22a6b30
|
|
/* 022A6B30 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022A6B30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A6B34 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022A6B34 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022A6B38 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022A6B3C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022A6B3C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022A6B40 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022A6B44 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022A6B44 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022A6B48 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A6B48 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A6B48 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022A6B48 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022A6B48 */ if (_t47) goto L_022A6B30; else goto L_022A6B4C;
|
|
L_022A6B4C: ; // 0x22a6b4c
|
|
/* 022A6B4C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A6B4C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022A6B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6B54 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6B54 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022A6B54 */ if (_t50) goto L_022A6B98; else goto L_022A6B58;
|
|
L_022A6B58: ; // 0x22a6b58
|
|
/* 022A6B58 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A6B58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022A6B5C */ Gambit_fn_02826F20(cpu);
|
|
/* 022A6B60 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A6B60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022A6B64 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022A6B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022A6B68 */ cpu->ctr = cpu->r[0];
|
|
/* 022A6B6C */ cpu->r[5] = 0x00000004u;
|
|
/* 022A6B70 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6B74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6B7C */ cpu->r[10] = cpu->r[27];
|
|
/* 022A6B80 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6B80 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022A6B80 */ if (_t55) goto L_022A6B88; else goto L_022A6B84;
|
|
L_022A6B84: ; // 0x22a6b84
|
|
/* 022A6B84 */ cpu->r[10] = 0x00000001u;
|
|
L_022A6B88: ; // 0x22a6b88
|
|
/* 022A6B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A6B8C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6B8C */ _t57 = _t56 & 0x00000001u;
|
|
/* 022A6B8C */ if (_t57) goto L_022A6B98; else goto L_022A6B90;
|
|
L_022A6B90: ; // 0x22a6b90
|
|
/* 022A6B90 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022A6B90 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022A6B94 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022A6B94 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022A6B98: ; // 0x22a6b98
|
|
/* 022A6B98 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022A6B98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022A6B9C */ cpu->r[0] = 0x00000000u;
|
|
/* 022A6BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A6BA4 */ cpu->r[5] = cpu->r[0];
|
|
/* 022A6BA8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6BA8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022A6BA8 */ if (_t62) goto L_022A6BAC; else goto L_022A6BD0;
|
|
L_022A6BAC: ; // 0x22a6bac
|
|
/* 022A6BAC */ cpu->ctr = cpu->r[12];
|
|
/* 022A6BB0 */ cpu->r[8] = 0x00000000u;
|
|
L_022A6BB4: ; // 0x22a6bb4
|
|
/* 022A6BB4 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022A6BB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A6BB8 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022A6BB8 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022A6BBC */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022A6BC0 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022A6BC0 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022A6BC4 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022A6BC8 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022A6BC8 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022A6BCC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A6BCC */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A6BCC */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022A6BCC */ _t69 = _t68 & 0x00000001u;
|
|
/* 022A6BCC */ if (_t69) goto L_022A6BB4; else goto L_022A6BD0;
|
|
L_022A6BD0: ; // 0x22a6bd0
|
|
/* 022A6BD0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022A6BD0 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022A6BD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022A6BD8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6BD8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022A6BD8 */ if (_t72) goto L_022A6CB4; else goto L_022A6BDC;
|
|
L_022A6BDC: ; // 0x22a6bdc
|
|
/* 022A6BDC */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A6BDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022A6BE0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A6BE4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A6BE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022A6BE8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022A6BE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022A6BEC */ cpu->ctr = cpu->r[12];
|
|
/* 022A6BF0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A6BF4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022A6BF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6BFC */ cpu->r[24] = cpu->r[3];
|
|
/* 022A6C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022A6C04 */ cpu->r[30] = cpu->r[25];
|
|
/* 022A6C08 */ cpu->r[7] = 0x00000000u;
|
|
/* 022A6C0C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6C0C */ _t77 = _t76 & 0x00000001u;
|
|
/* 022A6C0C */ if (_t77) goto L_022A6C14; else goto L_022A6C10;
|
|
L_022A6C10: ; // 0x22a6c10
|
|
/* 022A6C10 */ cpu->r[30] = 0x00000001u;
|
|
L_022A6C14: ; // 0x22a6c14
|
|
/* 022A6C14 */ cpu->r[31] = 0x10110000u;
|
|
/* 022A6C18 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022A6C1C */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022A6C1C */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022A6C20 */ cpu->r[23] = 0x00000018u;
|
|
L_022A6C24: ; // 0x22a6c24
|
|
/* 022A6C24 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022A6C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A6C28 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6C28 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022A6C28 */ if (_t80) goto L_022A6C98; else goto L_022A6C2C;
|
|
L_022A6C2C: ; // 0x22a6c2c
|
|
/* 022A6C2C */ cpu->r[26] = cpu->r[27];
|
|
/* 022A6C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022A6C30 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6C30 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022A6C30 */ if (_t82) goto L_022A6C34; else goto L_022A6C44;
|
|
L_022A6C34: ; // 0x22a6c34
|
|
/* 022A6C34 */ cpu->r[3] = 0x00000024u;
|
|
/* 022A6C38 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A6C3C */ cpu->r[26] = cpu->r[3];
|
|
/* 022A6C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022A6C40 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6C40 */ _t84 = _t83 & 0x00000001u;
|
|
/* 022A6C40 */ if (_t84) goto L_022A6C8C; else goto L_022A6C44;
|
|
L_022A6C44: ; // 0x22a6c44
|
|
/* 022A6C44 */ cpu->r[11] = cpu->r[26];
|
|
/* 022A6C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022A6C48 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6C48 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022A6C48 */ if (_t86) goto L_022A6C4C; else goto L_022A6C5C;
|
|
L_022A6C4C: ; // 0x22a6c4c
|
|
/* 022A6C4C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022A6C50 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A6C54 */ cpu->r[11] = cpu->r[3];
|
|
/* 022A6C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022A6C58 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6C58 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022A6C58 */ if (_t88) goto L_022A6C78; else goto L_022A6C5C;
|
|
L_022A6C5C: ; // 0x22a6c5c
|
|
/* 022A6C5C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A6C60 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022A6C60 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022A6C64 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022A6C68 */ cpu->r[5] = cpu->r[5] + 0x000009ECu;
|
|
/* 022A6C6C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022A6C6C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022A6C70 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022A6C70 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022A6C74 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022A6C74 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022A6C78: ; // 0x22a6c78
|
|
/* 022A6C78 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A6C7C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022A6C7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022A6C80 */ cpu->r[6] = cpu->r[6] + 0x00000A04u;
|
|
/* 022A6C84 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022A6C84 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022A6C88 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6C88 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022A6C8C: ; // 0x22a6c8c
|
|
/* 022A6C8C */ cpu->r[0] = 0x10060000u;
|
|
/* 022A6C90 */ cpu->r[0] = cpu->r[0] + 0x00000A1Cu;
|
|
/* 022A6C94 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022A6C94 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022A6C98: ; // 0x22a6c98
|
|
/* 022A6C98 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022A6C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A6C9C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022A6CA0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6CA0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 022A6CA0 */ if (_t98) goto L_022A6CA4; else goto L_022A6C24;
|
|
L_022A6CA4: ; // 0x22a6ca4
|
|
/* 022A6CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022A6CA8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6CA8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022A6CA8 */ if (_t100) goto L_022A6CB4; else goto L_022A6CAC;
|
|
L_022A6CAC: ; // 0x22a6cac
|
|
/* 022A6CAC */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022A6CAC */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022A6CB0 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022A6CB0 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022A6CB4: ; // 0x22a6cb4
|
|
/* 022A6CB4 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022A6CB4 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022A6CB8 */ /* nop */
|
|
/* 022A6CBC */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022A6CBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022A6CC0 */ cpu->lr = cpu->r[0];
|
|
/* 022A6CC4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022A6CC8 */ return;
|
|
}
|
|
|
|
// fn_022A6CCC @ 0x22a6ccc
|
|
void Gambit_fn_022A6CCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022A6CCC: ; // 0x22a6ccc
|
|
/* 022A6CCC */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6CCC */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022A6CD0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022A6CD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A6CD4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022A6CD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A6CD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022A6CDC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022A6CDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A6CE0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A6CE0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A6CE0 */ if (_t5) goto L_022A6CE4; else goto L_022A6CEC;
|
|
L_022A6CE4: ; // 0x22a6ce4
|
|
/* 022A6CE4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6CE8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022A6CEC: ; // 0x22a6cec
|
|
/* 022A6CEC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A6CEC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022A6CF0 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022A6CF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A6CF4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022A6CF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022A6CF8 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6CF8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022A6CFC */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022A6CFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A6D00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022A6D04 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022A6D04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A6D08 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A6D08 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A6D08 */ if (_t13) goto L_022A6D0C; else goto L_022A6D14;
|
|
L_022A6D0C: ; // 0x22a6d0c
|
|
/* 022A6D0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6D10 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022A6D14: ; // 0x22a6d14
|
|
/* 022A6D14 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022A6D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A6D18 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022A6D18 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022A6D1C */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022A6D1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A6D20 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022A6D20 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022A6D24 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022A6D24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A6D28 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6D28 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022A6D2C */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022A6D2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A6D30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022A6D34 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022A6D34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A6D38 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A6D38 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A6D38 */ if (_t23) goto L_022A6D3C; else goto L_022A6D44;
|
|
L_022A6D3C: ; // 0x22a6d3c
|
|
/* 022A6D3C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A6D40 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022A6D44: ; // 0x22a6d44
|
|
/* 022A6D44 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022A6D44 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022A6D48 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022A6D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A6D4C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022A6D4C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022A6D50 */ return;
|
|
}
|
|
|
|
// fn_022A6D54 @ 0x22a6d54
|
|
void Gambit_fn_022A6D54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165;
|
|
|
|
L_022A6D54: ; // 0x22a6d54
|
|
/* 022A6D54 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022A6D54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A6D54 */ cpu->r[1] = _t0;
|
|
/* 022A6D58 */ cpu->r[0] = cpu->lr;
|
|
/* 022A6D5C */ /* nop */
|
|
/* 022A6D60 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A6D60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A6D64 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022A6D64 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A6D68 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6D68 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A6D68 */ if (_t3) goto L_022A6D6C; else goto L_022A6D7C;
|
|
L_022A6D6C: ; // 0x22a6d6c
|
|
/* 022A6D6C */ cpu->r[3] = 0x000001F8u;
|
|
/* 022A6D70 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A6D74 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A6D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A6D78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6D78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A6D78 */ if (_t5) goto L_022A7264; else goto L_022A6D7C;
|
|
L_022A6D7C: ; // 0x22a6d7c
|
|
/* 022A6D7C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A6D80 */ Gambit_fn_0226EA1C(cpu);
|
|
/* 022A6D84 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A6D88 */ cpu->r[29] = 0x00000000u;
|
|
/* 022A6D8C */ cpu->r[10] = cpu->r[10] + 0x00001948u;
|
|
/* 022A6D90 */ cpu->r[31] = cpu->r[30] + 0x00000184u;
|
|
/* 022A6D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A6D94 */ _t6 = cpu->r[30] + 0x00000004u;
|
|
/* 022A6D94 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 022A6D98 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6D98 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A6D98 */ if (_t8) goto L_022A6D9C; else goto L_022A6DAC;
|
|
L_022A6D9C: ; // 0x22a6d9c
|
|
/* 022A6D9C */ cpu->r[3] = 0x00000038u;
|
|
/* 022A6DA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A6DA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A6DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A6DA8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6DA8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A6DA8 */ if (_t10) goto L_022A6DDC; else goto L_022A6DAC;
|
|
L_022A6DAC: ; // 0x22a6dac
|
|
/* 022A6DAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A6DB0 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022A6DB4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A6DB8 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 022A6DB8 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 022A6DBC */ cpu->r[0] = cpu->r[0] + 0xFFFFEF00u;
|
|
/* 022A6DC0 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 022A6DC0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022A6DC4 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 022A6DC4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022A6DC8 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 022A6DC8 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022A6DCC */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 022A6DCC */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 022A6DD0 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022A6DD0 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 022A6DD4 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022A6DD4 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 022A6DD8 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 022A6DD8 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
L_022A6DDC: ; // 0x22a6ddc
|
|
/* 022A6DDC */ cpu->r[5] = 0x101E0000u;
|
|
/* 022A6DE0 */ _t19 = cpu->r[30] + 0x000001BCu;
|
|
/* 022A6DE0 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 022A6DE4 */ cpu->r[5] = cpu->r[5] + 0xFFFF96D4u;
|
|
/* 022A6DE8 */ _t20 = cpu->r[30] + 0x000001CCu;
|
|
/* 022A6DE8 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 022A6DEC */ cpu->r[6] = cpu->r[30] + 0x000001CCu;
|
|
/* 022A6DF0 */ _t21 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A6DF0 */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
/* 022A6DF4 */ cpu->r[8] = 0x00000003u;
|
|
/* 022A6DF8 */ _t22 = cpu->r[30] + 0x000001C4u;
|
|
/* 022A6DF8 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 022A6DFC */ cpu->ctr = cpu->r[8];
|
|
/* 022A6E00 */ _t23 = cpu->r[30] + 0x000001C8u;
|
|
/* 022A6E00 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
L_022A6E04: ; // 0x22a6e04
|
|
/* 022A6E04 */ _t24 = cpu->r[5] + 0x00000004u;
|
|
/* 022A6E04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A6E08 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022A6E08 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
/* 022A6E0C */ _t26 = cpu->r[5] + 0x00000008u;
|
|
/* 022A6E0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A6E10 */ _t27 = cpu->r[6] + 0x00000008u;
|
|
/* 022A6E10 */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 022A6E14 */ _t28 = cpu->r[5] + 0x0000000Cu;
|
|
/* 022A6E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A6E14 */ cpu->r[5] = _t28;
|
|
/* 022A6E18 */ _t29 = cpu->r[6] + 0x0000000Cu;
|
|
/* 022A6E18 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022A6E18 */ cpu->r[6] = _t29;
|
|
/* 022A6E1C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A6E1C */ _t30 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A6E1C */ _t31 = _t30 >> (0x00000002u & 31u);
|
|
/* 022A6E1C */ _t32 = _t31 & 0x00000001u;
|
|
/* 022A6E1C */ if (_t32) goto L_022A6E04; else goto L_022A6E20;
|
|
L_022A6E20: ; // 0x22a6e20
|
|
/* 022A6E20 */ cpu->r[0] = 0x00000004u;
|
|
/* 022A6E24 */ _t33 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A6E24 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 022A6E28 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A6E2C */ cpu->r[4] = cpu->r[30];
|
|
/* 022A6E30 */ cpu->r[6] = 0x00000000u;
|
|
/* 022A6E34 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6E38 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 022A6E38 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[0]);
|
|
/* 022A6E3C */ Gambit_fn_022A9D88(cpu);
|
|
/* 022A6E40 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A6E44 */ cpu->r[4] = cpu->r[30] + 0x00000184u;
|
|
/* 022A6E48 */ Gambit_fn_02000834(cpu);
|
|
/* 022A6E4C */ cpu->r[25] = 0x10060000u;
|
|
/* 022A6E50 */ cpu->r[26] = 0x022B0000u;
|
|
/* 022A6E54 */ cpu->r[25] = cpu->r[25] + 0x00001358u;
|
|
/* 022A6E58 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A6E5C */ cpu->r[26] = cpu->r[26] + 0xFFFF97E8u;
|
|
/* 022A6E60 */ cpu->r[0] = cpu->r[0] + 0x00001604u;
|
|
/* 022A6E64 */ cpu->ctr = cpu->r[26];
|
|
/* 022A6E68 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6E68 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022A6E6C */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6E6C */ rbrew_write32(cpu->mem, _t36, cpu->r[25]);
|
|
/* 022A6E70 */ _t37 = cpu->r[30] + 0x0000019Cu;
|
|
/* 022A6E70 */ cpu->r[24] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022A6E74 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6E78 */ _t38 = cpu->r[24] + 0x00000000u;
|
|
/* 022A6E78 */ cpu->r[27] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022A6E7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6E80 */ cpu->r[28] = 0x10110000u;
|
|
/* 022A6E84 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6E84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A6E88 */ _t40 = cpu->r[28] + 0x00007399u;
|
|
/* 022A6E88 */ cpu->r[28] = rbrew_read8(cpu->mem, _t40);
|
|
/* 022A6E8C */ _t41 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6E8C */ cpu->r[0] = rbrew_read8(cpu->mem, _t41);
|
|
/* 022A6E90 */ cpu->r[31] = 0x00000000u;
|
|
/* 022A6E94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[28]);
|
|
/* 022A6E98 */ cpu->r[9] = 0x00080000u;
|
|
/* 022A6E9C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6E9C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022A6E9C */ if (_t43) goto L_022A6EC4; else goto L_022A6EA0;
|
|
L_022A6EA0: ; // 0x22a6ea0
|
|
/* 022A6EA0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022A6EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022A6EA8 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022A6EAC */ _t44 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6EAC */ _t45 = _t44 & 0x00000001u;
|
|
/* 022A6EAC */ if (_t45) goto L_022A6EC0; else goto L_022A6EB0;
|
|
L_022A6EB0: ; // 0x22a6eb0
|
|
/* 022A6EB0 */ _t46 = cpu->r[7] + 0x00000000u;
|
|
/* 022A6EB0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t46);
|
|
/* 022A6EB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[28]);
|
|
/* 022A6EB8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6EB8 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022A6EB8 */ if (_t48) goto L_022A6EBC; else goto L_022A6EA0;
|
|
L_022A6EBC: ; // 0x22a6ebc
|
|
/* 022A6EBC */ goto L_022A6EC4;
|
|
L_022A6EC0: ; // 0x22a6ec0
|
|
/* 022A6EC0 */ cpu->r[31] = 0x00000000u;
|
|
L_022A6EC4: ; // 0x22a6ec4
|
|
/* 022A6EC4 */ _t49 = cpu->r[24] + 0x00000008u;
|
|
/* 022A6EC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022A6EC8 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6EC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022A6ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022A6ED0 */ _t51 = cpu->r[8] + 0x00000014u;
|
|
/* 022A6ED0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022A6ED4 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A6ED4 */ _t53 = _t52 & 0x00000001u;
|
|
/* 022A6ED4 */ if (_t53) goto L_022A6EDC; else goto L_022A6ED8;
|
|
L_022A6ED8: ; // 0x22a6ed8
|
|
/* 022A6ED8 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022A6EDC: ; // 0x22a6edc
|
|
/* 022A6EDC */ cpu->ctr = cpu->r[9];
|
|
/* 022A6EE0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6EE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6EE8 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6EE8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022A6EEC */ cpu->r[3] = cpu->r[27];
|
|
/* 022A6EF0 */ cpu->r[5] = cpu->r[31];
|
|
/* 022A6EF4 */ cpu->r[6] = 0x00000000u;
|
|
/* 022A6EF8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022A6EFC */ _t55 = cpu->r[27] + cpu->r[31];
|
|
/* 022A6EFC */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[28]);
|
|
/* 022A6F00 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022A6F04 */ _t56 = cpu->r[1] + 0x00000028u;
|
|
/* 022A6F04 */ rbrew_write32(cpu->mem, _t56, cpu->r[29]);
|
|
/* 022A6F08 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022A6F0C */ _t57 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6F0C */ rbrew_write16(cpu->mem, _t57, (uint16_t)cpu->r[29]);
|
|
/* 022A6F10 */ cpu->r[12] = cpu->r[12] + 0xFFFF8E38u;
|
|
/* 022A6F14 */ _t58 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022A6F14 */ rbrew_write16(cpu->mem, _t58, (uint16_t)cpu->r[9]);
|
|
/* 022A6F18 */ cpu->r[7] = 0x00000000u;
|
|
/* 022A6F1C */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 022A6F1C */ rbrew_write32(cpu->mem, _t59, cpu->r[12]);
|
|
/* 022A6F20 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 022A6F20 */ rbrew_write16(cpu->mem, _t60, (uint16_t)cpu->r[29]);
|
|
/* 022A6F24 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022A6F28 */ _t61 = cpu->r[1] + 0x00000016u;
|
|
/* 022A6F28 */ rbrew_write16(cpu->mem, _t61, (uint16_t)cpu->r[9]);
|
|
/* 022A6F2C */ cpu->r[10] = 0x022B0000u;
|
|
/* 022A6F30 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 022A6F30 */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[29]);
|
|
/* 022A6F34 */ cpu->r[10] = cpu->r[10] + 0xFFFF89C0u;
|
|
/* 022A6F38 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A6F3C */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 022A6F3C */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[7]);
|
|
/* 022A6F40 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022A6F44 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A6F48 */ _t64 = cpu->r[1] + 0x00000026u;
|
|
/* 022A6F48 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[29]);
|
|
/* 022A6F4C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022A6F50 */ _t65 = cpu->r[1] + 0x00000018u;
|
|
/* 022A6F50 */ rbrew_write32(cpu->mem, _t65, cpu->r[10]);
|
|
/* 022A6F54 */ Gambit_fn_022AA038(cpu);
|
|
/* 022A6F58 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A6F5C */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6F5C */ rbrew_write32(cpu->mem, _t66, cpu->r[25]);
|
|
/* 022A6F60 */ cpu->r[0] = cpu->r[0] + 0x000015E4u;
|
|
/* 022A6F64 */ _t67 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6F64 */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 022A6F68 */ _t68 = cpu->r[30] + 0x00000198u;
|
|
/* 022A6F68 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022A6F6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 022A6F70 */ _t69 = cpu->r[30] + 0x0000019Cu;
|
|
/* 022A6F70 */ cpu->r[27] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022A6F74 */ _t70 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6F74 */ _t71 = _t70 & 0x00000001u;
|
|
/* 022A6F74 */ if (_t71) goto L_022A6F78; else goto L_022A6F7C;
|
|
L_022A6F78: ; // 0x22a6f78
|
|
/* 022A6F78 */ cpu->r[27] = cpu->r[27] + 0x00000024u;
|
|
L_022A6F7C: ; // 0x22a6f7c
|
|
/* 022A6F7C */ cpu->ctr = cpu->r[26];
|
|
/* 022A6F80 */ _t72 = cpu->r[27] + 0x00000000u;
|
|
/* 022A6F80 */ cpu->r[24] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022A6F84 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6F88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6F8C */ _t73 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022A6F90 */ _t74 = cpu->r[12] + 0x00000000u;
|
|
/* 022A6F90 */ cpu->r[6] = rbrew_read8(cpu->mem, _t74);
|
|
/* 022A6F94 */ cpu->r[31] = 0x00000000u;
|
|
/* 022A6F98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[28]);
|
|
/* 022A6F9C */ cpu->r[5] = 0x00080000u;
|
|
/* 022A6FA0 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6FA0 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022A6FA0 */ if (_t76) goto L_022A6FC8; else goto L_022A6FA4;
|
|
L_022A6FA4: ; // 0x22a6fa4
|
|
/* 022A6FA4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022A6FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022A6FAC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022A6FB0 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A6FB0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022A6FB0 */ if (_t78) goto L_022A6FC4; else goto L_022A6FB4;
|
|
L_022A6FB4: ; // 0x22a6fb4
|
|
/* 022A6FB4 */ _t79 = cpu->r[12] + 0x00000000u;
|
|
/* 022A6FB4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t79);
|
|
/* 022A6FB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[28]);
|
|
/* 022A6FBC */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A6FBC */ _t81 = _t80 & 0x00000001u;
|
|
/* 022A6FBC */ if (_t81) goto L_022A6FC0; else goto L_022A6FA4;
|
|
L_022A6FC0: ; // 0x22a6fc0
|
|
/* 022A6FC0 */ goto L_022A6FC8;
|
|
L_022A6FC4: ; // 0x22a6fc4
|
|
/* 022A6FC4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A6FC8: ; // 0x22a6fc8
|
|
/* 022A6FC8 */ _t82 = cpu->r[27] + 0x00000008u;
|
|
/* 022A6FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022A6FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022A6FD0 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 022A6FD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 022A6FD4 */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A6FD4 */ _t85 = _t84 & 0x00000001u;
|
|
/* 022A6FD4 */ if (_t85) goto L_022A6FDC; else goto L_022A6FD8;
|
|
L_022A6FD8: ; // 0x22a6fd8
|
|
/* 022A6FD8 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022A6FDC: ; // 0x22a6fdc
|
|
/* 022A6FDC */ _t86 = cpu->r[8] + 0x00000014u;
|
|
/* 022A6FDC */ cpu->r[9] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022A6FE0 */ cpu->ctr = cpu->r[9];
|
|
/* 022A6FE4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6FE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A6FEC */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A6FEC */ cpu->r[4] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022A6FF0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022A6FF4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022A6FF8 */ cpu->r[3] = cpu->r[24];
|
|
/* 022A6FFC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022A7000 */ _t88 = cpu->r[24] + cpu->r[31];
|
|
/* 022A7000 */ rbrew_write8(cpu->mem, _t88, (uint8_t)cpu->r[28]);
|
|
/* 022A7004 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A7008 */ _t89 = cpu->r[1] + 0x00000024u;
|
|
/* 022A7008 */ rbrew_write16(cpu->mem, _t89, (uint16_t)cpu->r[29]);
|
|
/* 022A700C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022A7010 */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7010 */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[0]);
|
|
/* 022A7014 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022A7018 */ _t91 = cpu->r[1] + 0x00000016u;
|
|
/* 022A7018 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[11]);
|
|
/* 022A701C */ _t92 = cpu->r[1] + 0x00000026u;
|
|
/* 022A701C */ rbrew_write16(cpu->mem, _t92, (uint16_t)cpu->r[29]);
|
|
/* 022A7020 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022A7024 */ _t93 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022A7024 */ rbrew_write16(cpu->mem, _t93, (uint16_t)cpu->r[11]);
|
|
/* 022A7028 */ cpu->r[9] = cpu->r[9] + 0xFFFF90B0u;
|
|
/* 022A702C */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 022A702C */ rbrew_write16(cpu->mem, _t94, (uint16_t)cpu->r[29]);
|
|
/* 022A7030 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7034 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 022A7034 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 022A7038 */ cpu->r[12] = cpu->r[12] + 0xFFFF8FC4u;
|
|
/* 022A703C */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A7040 */ _t96 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7040 */ rbrew_write16(cpu->mem, _t96, (uint16_t)cpu->r[29]);
|
|
/* 022A7044 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022A7048 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022A704C */ _t97 = cpu->r[1] + 0x00000020u;
|
|
/* 022A704C */ rbrew_write32(cpu->mem, _t97, cpu->r[12]);
|
|
/* 022A7050 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7054 */ _t98 = cpu->r[1] + 0x00000028u;
|
|
/* 022A7054 */ rbrew_write32(cpu->mem, _t98, cpu->r[29]);
|
|
/* 022A7058 */ Gambit_fn_022AA038(cpu);
|
|
/* 022A705C */ cpu->r[11] = 0x10060000u;
|
|
/* 022A7060 */ _t99 = cpu->r[1] + 0x00000010u;
|
|
/* 022A7060 */ rbrew_write32(cpu->mem, _t99, cpu->r[25]);
|
|
/* 022A7064 */ cpu->r[11] = cpu->r[11] + 0x00001614u;
|
|
/* 022A7068 */ _t100 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7068 */ rbrew_write32(cpu->mem, _t100, cpu->r[11]);
|
|
/* 022A706C */ _t101 = cpu->r[30] + 0x00000198u;
|
|
/* 022A706C */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022A7070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022A7074 */ _t102 = cpu->r[30] + 0x0000019Cu;
|
|
/* 022A7074 */ cpu->r[27] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022A7078 */ _t103 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A7078 */ _t104 = _t103 & 0x00000001u;
|
|
/* 022A7078 */ if (_t104) goto L_022A707C; else goto L_022A7080;
|
|
L_022A707C: ; // 0x22a707c
|
|
/* 022A707C */ cpu->r[27] = cpu->r[27] + 0x00000048u;
|
|
L_022A7080: ; // 0x22a7080
|
|
/* 022A7080 */ cpu->ctr = cpu->r[26];
|
|
/* 022A7084 */ _t105 = cpu->r[27] + 0x00000000u;
|
|
/* 022A7084 */ cpu->r[24] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022A7088 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A708C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7090 */ _t106 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7090 */ cpu->r[7] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022A7094 */ _t107 = cpu->r[7] + 0x00000000u;
|
|
/* 022A7094 */ cpu->r[6] = rbrew_read8(cpu->mem, _t107);
|
|
/* 022A7098 */ cpu->r[31] = 0x00000000u;
|
|
/* 022A709C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[28]);
|
|
/* 022A70A0 */ cpu->r[10] = 0x00080000u;
|
|
/* 022A70A4 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A70A4 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022A70A4 */ if (_t109) goto L_022A70CC; else goto L_022A70A8;
|
|
L_022A70A8: ; // 0x22a70a8
|
|
/* 022A70A8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022A70AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022A70B0 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022A70B4 */ _t110 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A70B4 */ _t111 = _t110 & 0x00000001u;
|
|
/* 022A70B4 */ if (_t111) goto L_022A70C8; else goto L_022A70B8;
|
|
L_022A70B8: ; // 0x22a70b8
|
|
/* 022A70B8 */ _t112 = cpu->r[7] + 0x00000000u;
|
|
/* 022A70B8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t112);
|
|
/* 022A70BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[28]);
|
|
/* 022A70C0 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A70C0 */ _t114 = _t113 & 0x00000001u;
|
|
/* 022A70C0 */ if (_t114) goto L_022A70C4; else goto L_022A70A8;
|
|
L_022A70C4: ; // 0x22a70c4
|
|
/* 022A70C4 */ goto L_022A70CC;
|
|
L_022A70C8: ; // 0x22a70c8
|
|
/* 022A70C8 */ cpu->r[31] = 0x00000000u;
|
|
L_022A70CC: ; // 0x22a70cc
|
|
/* 022A70CC */ _t115 = cpu->r[27] + 0x00000008u;
|
|
/* 022A70CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t115);
|
|
/* 022A70D0 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 022A70D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t116);
|
|
/* 022A70D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022A70D8 */ _t117 = cpu->r[10] + 0x00000014u;
|
|
/* 022A70D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t117);
|
|
/* 022A70DC */ _t118 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A70DC */ _t119 = _t118 & 0x00000001u;
|
|
/* 022A70DC */ if (_t119) goto L_022A70E4; else goto L_022A70E0;
|
|
L_022A70E0: ; // 0x22a70e0
|
|
/* 022A70E0 */ cpu->r[31] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_022A70E4: ; // 0x22a70e4
|
|
/* 022A70E4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A70E8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A70EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A70F0 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A70F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022A70F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 022A70F8 */ cpu->r[5] = cpu->r[31];
|
|
/* 022A70FC */ cpu->r[3] = cpu->r[24];
|
|
/* 022A7100 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022A7104 */ _t121 = cpu->r[24] + cpu->r[31];
|
|
/* 022A7104 */ rbrew_write8(cpu->mem, _t121, (uint8_t)cpu->r[28]);
|
|
/* 022A7108 */ cpu->r[0] = 0x00000002u;
|
|
/* 022A710C */ _t122 = cpu->r[1] + 0x00000024u;
|
|
/* 022A710C */ rbrew_write16(cpu->mem, _t122, (uint16_t)cpu->r[29]);
|
|
/* 022A7110 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022A7114 */ _t123 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7114 */ rbrew_write8(cpu->mem, _t123, (uint8_t)cpu->r[0]);
|
|
/* 022A7118 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022A711C */ _t124 = cpu->r[1] + 0x00000016u;
|
|
/* 022A711C */ rbrew_write16(cpu->mem, _t124, (uint16_t)cpu->r[8]);
|
|
/* 022A7120 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022A7124 */ _t125 = cpu->r[1] + 0x00000026u;
|
|
/* 022A7124 */ rbrew_write16(cpu->mem, _t125, (uint16_t)cpu->r[29]);
|
|
/* 022A7128 */ _t126 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7128 */ rbrew_write16(cpu->mem, _t126, (uint16_t)cpu->r[29]);
|
|
/* 022A712C */ cpu->r[10] = cpu->r[10] + 0xFFFF9C7Cu;
|
|
/* 022A7130 */ _t127 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022A7130 */ rbrew_write16(cpu->mem, _t127, (uint16_t)cpu->r[8]);
|
|
/* 022A7134 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7138 */ _t128 = cpu->r[1] + 0x00000018u;
|
|
/* 022A7138 */ rbrew_write32(cpu->mem, _t128, cpu->r[10]);
|
|
/* 022A713C */ cpu->r[12] = cpu->r[12] + 0xFFFF91C4u;
|
|
/* 022A7140 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022A7144 */ _t129 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7144 */ rbrew_write16(cpu->mem, _t129, (uint16_t)cpu->r[29]);
|
|
/* 022A7148 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A714C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022A7150 */ _t130 = cpu->r[1] + 0x00000020u;
|
|
/* 022A7150 */ rbrew_write32(cpu->mem, _t130, cpu->r[12]);
|
|
/* 022A7154 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7158 */ _t131 = cpu->r[1] + 0x00000028u;
|
|
/* 022A7158 */ rbrew_write32(cpu->mem, _t131, cpu->r[29]);
|
|
/* 022A715C */ Gambit_fn_022AA038(cpu);
|
|
/* 022A7160 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7164 */ _t132 = cpu->r[1] + 0x00000010u;
|
|
/* 022A7164 */ rbrew_write32(cpu->mem, _t132, cpu->r[25]);
|
|
/* 022A7168 */ cpu->r[0] = cpu->r[0] + 0x000015F0u;
|
|
/* 022A716C */ _t133 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A716C */ rbrew_write32(cpu->mem, _t133, cpu->r[0]);
|
|
/* 022A7170 */ _t134 = cpu->r[30] + 0x00000198u;
|
|
/* 022A7170 */ cpu->r[5] = rbrew_read32(cpu->mem, _t134);
|
|
/* 022A7174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000003u);
|
|
/* 022A7178 */ _t135 = cpu->r[30] + 0x0000019Cu;
|
|
/* 022A7178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t135);
|
|
/* 022A717C */ _t136 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A717C */ _t137 = _t136 & 0x00000001u;
|
|
/* 022A717C */ if (_t137) goto L_022A7180; else goto L_022A7184;
|
|
L_022A7180: ; // 0x22a7180
|
|
/* 022A7180 */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_022A7184: ; // 0x22a7184
|
|
/* 022A7184 */ cpu->ctr = cpu->r[26];
|
|
/* 022A7188 */ _t138 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7188 */ cpu->r[25] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022A718C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7194 */ _t139 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7194 */ cpu->r[10] = rbrew_read32(cpu->mem, _t139);
|
|
/* 022A7198 */ _t140 = cpu->r[10] + 0x00000000u;
|
|
/* 022A7198 */ cpu->r[6] = rbrew_read8(cpu->mem, _t140);
|
|
/* 022A719C */ cpu->r[27] = 0x00000000u;
|
|
/* 022A71A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[28]);
|
|
/* 022A71A4 */ cpu->r[0] = 0x00080000u;
|
|
/* 022A71A8 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A71A8 */ _t142 = _t141 & 0x00000001u;
|
|
/* 022A71A8 */ if (_t142) goto L_022A71D0; else goto L_022A71AC;
|
|
L_022A71AC: ; // 0x22a71ac
|
|
/* 022A71AC */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 022A71B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 022A71B4 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022A71B8 */ _t143 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A71B8 */ _t144 = _t143 & 0x00000001u;
|
|
/* 022A71B8 */ if (_t144) goto L_022A71CC; else goto L_022A71BC;
|
|
L_022A71BC: ; // 0x22a71bc
|
|
/* 022A71BC */ _t145 = cpu->r[10] + 0x00000000u;
|
|
/* 022A71BC */ cpu->r[7] = rbrew_read8(cpu->mem, _t145);
|
|
/* 022A71C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[28]);
|
|
/* 022A71C4 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A71C4 */ _t147 = _t146 & 0x00000001u;
|
|
/* 022A71C4 */ if (_t147) goto L_022A71C8; else goto L_022A71AC;
|
|
L_022A71C8: ; // 0x22a71c8
|
|
/* 022A71C8 */ goto L_022A71D0;
|
|
L_022A71CC: ; // 0x22a71cc
|
|
/* 022A71CC */ cpu->r[27] = 0x00000000u;
|
|
L_022A71D0: ; // 0x22a71d0
|
|
/* 022A71D0 */ _t148 = cpu->r[31] + 0x00000008u;
|
|
/* 022A71D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t148);
|
|
/* 022A71D4 */ _t149 = cpu->r[1] + 0x00000010u;
|
|
/* 022A71D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t149);
|
|
/* 022A71D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]);
|
|
/* 022A71DC */ _t150 = cpu->r[8] + 0x00000014u;
|
|
/* 022A71DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t150);
|
|
/* 022A71E0 */ _t151 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A71E0 */ _t152 = _t151 & 0x00000001u;
|
|
/* 022A71E0 */ if (_t152) goto L_022A71E8; else goto L_022A71E4;
|
|
L_022A71E4: ; // 0x22a71e4
|
|
/* 022A71E4 */ cpu->r[27] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022A71E8: ; // 0x22a71e8
|
|
/* 022A71E8 */ cpu->ctr = cpu->r[9];
|
|
/* 022A71EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A71F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A71F4 */ _t153 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A71F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153);
|
|
/* 022A71F8 */ cpu->r[3] = cpu->r[25];
|
|
/* 022A71FC */ cpu->r[5] = cpu->r[27];
|
|
/* 022A7200 */ cpu->r[6] = 0x00000000u;
|
|
/* 022A7204 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022A7208 */ _t154 = cpu->r[25] + cpu->r[27];
|
|
/* 022A7208 */ rbrew_write8(cpu->mem, _t154, (uint8_t)cpu->r[28]);
|
|
/* 022A720C */ cpu->r[0] = 0x00000003u;
|
|
/* 022A7210 */ _t155 = cpu->r[1] + 0x00000028u;
|
|
/* 022A7210 */ rbrew_write32(cpu->mem, _t155, cpu->r[29]);
|
|
/* 022A7214 */ _t156 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7214 */ rbrew_write8(cpu->mem, _t156, (uint8_t)cpu->r[0]);
|
|
/* 022A7218 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022A721C */ _t157 = cpu->r[1] + 0x00000024u;
|
|
/* 022A721C */ rbrew_write16(cpu->mem, _t157, (uint16_t)cpu->r[29]);
|
|
/* 022A7220 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022A7224 */ _t158 = cpu->r[1] + 0x00000016u;
|
|
/* 022A7224 */ rbrew_write16(cpu->mem, _t158, (uint16_t)cpu->r[0]);
|
|
/* 022A7228 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022A722C */ _t159 = cpu->r[1] + 0x00000026u;
|
|
/* 022A722C */ rbrew_write16(cpu->mem, _t159, (uint16_t)cpu->r[29]);
|
|
/* 022A7230 */ cpu->r[10] = cpu->r[10] + 0xFFFF94B8u;
|
|
/* 022A7234 */ _t160 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022A7234 */ rbrew_write16(cpu->mem, _t160, (uint16_t)cpu->r[0]);
|
|
/* 022A7238 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022A723C */ _t161 = cpu->r[1] + 0x00000020u;
|
|
/* 022A723C */ rbrew_write32(cpu->mem, _t161, cpu->r[10]);
|
|
/* 022A7240 */ cpu->r[0] = cpu->r[0] + 0xFFFF9C80u;
|
|
/* 022A7244 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A7248 */ _t162 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7248 */ rbrew_write16(cpu->mem, _t162, (uint16_t)cpu->r[29]);
|
|
/* 022A724C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022A7250 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7254 */ _t163 = cpu->r[1] + 0x00000018u;
|
|
/* 022A7254 */ rbrew_write32(cpu->mem, _t163, cpu->r[0]);
|
|
/* 022A7258 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A725C */ _t164 = cpu->r[1] + 0x00000014u;
|
|
/* 022A725C */ rbrew_write16(cpu->mem, _t164, (uint16_t)cpu->r[29]);
|
|
/* 022A7260 */ Gambit_fn_022AA038(cpu);
|
|
L_022A7264: ; // 0x22a7264
|
|
/* 022A7264 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7268 */ /* nop */
|
|
/* 022A726C */ _t165 = cpu->r[1] + 0x00000054u;
|
|
/* 022A726C */ cpu->r[0] = rbrew_read32(cpu->mem, _t165);
|
|
/* 022A7270 */ cpu->lr = cpu->r[0];
|
|
/* 022A7274 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022A7278 */ return;
|
|
}
|
|
|
|
// fn_022A727C @ 0x22a727c
|
|
void Gambit_fn_022A727C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022A727C: ; // 0x22a727c
|
|
/* 022A727C */ cpu->r[0] = cpu->lr;
|
|
/* 022A7280 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7280 */ cpu->r[1] = _t0;
|
|
/* 022A7284 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7288 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7288 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A728C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7290 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7294 */ _t3 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7294 */ cpu->r[11] = _t3;
|
|
/* 022A7298 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A729C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A72A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A72A4 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A72A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A72A8 */ if (_t5) goto L_022A72AC; else goto L_022A72C0;
|
|
L_022A72AC: ; // 0x22a72ac
|
|
/* 022A72AC */ cpu->r[0] = 0x10060000u;
|
|
/* 022A72B0 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A72B4 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A72B8 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A72B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 022A72BC */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022A72BC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_022A72C0: ; // 0x22a72c0
|
|
/* 022A72C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A72C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A72C4 */ if (_t9) goto L_022A72E4; else goto L_022A72C8;
|
|
L_022A72C8: ; // 0x22a72c8
|
|
/* 022A72C8 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A72C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A72CC */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A72CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A72D0 */ cpu->ctr = cpu->r[12];
|
|
/* 022A72D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A72D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A72DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A72E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A72E0 */ if (_t13) goto L_022A72E4; else goto L_022A72E8;
|
|
L_022A72E4: ; // 0x22a72e4
|
|
/* 022A72E4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A72E8: ; // 0x22a72e8
|
|
/* 022A72E8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022A72E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A72EC */ _t15 = cpu->r[31] + 0x000012D4u;
|
|
/* 022A72EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A72F0 */ cpu->lr = cpu->r[0];
|
|
/* 022A72F4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A72F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A72F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A72FC */ return;
|
|
}
|
|
|
|
// fn_022A7280 @ 0x22a7280
|
|
void Gambit_fn_022A7280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022A7280: ; // 0x22a7280
|
|
/* 022A7280 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7280 */ cpu->r[1] = _t0;
|
|
/* 022A7284 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7288 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7288 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A728C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7290 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7294 */ _t3 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7294 */ cpu->r[11] = _t3;
|
|
/* 022A7298 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A729C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A72A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A72A4 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A72A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72A8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A72A8 */ if (_t5) goto L_022A72AC; else goto L_022A72C0;
|
|
L_022A72AC: ; // 0x22a72ac
|
|
/* 022A72AC */ cpu->r[0] = 0x10060000u;
|
|
/* 022A72B0 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A72B4 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A72B8 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A72B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 022A72BC */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022A72BC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_022A72C0: ; // 0x22a72c0
|
|
/* 022A72C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A72C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A72C4 */ if (_t9) goto L_022A72E4; else goto L_022A72C8;
|
|
L_022A72C8: ; // 0x22a72c8
|
|
/* 022A72C8 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A72C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A72CC */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A72CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A72D0 */ cpu->ctr = cpu->r[12];
|
|
/* 022A72D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A72D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A72DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A72E0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A72E0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A72E0 */ if (_t13) goto L_022A72E4; else goto L_022A72E8;
|
|
L_022A72E4: ; // 0x22a72e4
|
|
/* 022A72E4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A72E8: ; // 0x22a72e8
|
|
/* 022A72E8 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022A72E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A72EC */ _t15 = cpu->r[31] + 0x000012D4u;
|
|
/* 022A72EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A72F0 */ cpu->lr = cpu->r[0];
|
|
/* 022A72F4 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A72F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A72F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A72FC */ return;
|
|
}
|
|
|
|
// fn_022A7300 @ 0x22a7300
|
|
void Gambit_fn_022A7300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022A7300: ; // 0x22a7300
|
|
/* 022A7300 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7304 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A7304 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7304 */ cpu->r[1] = _t0;
|
|
/* 022A7308 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7308 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A730C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A730C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7310 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7314 */ _t4 = cpu->r[3] + 0x000001C4u;
|
|
/* 022A7314 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022A7318 */ _t5 = cpu->r[4] + 0x00000004u;
|
|
/* 022A7318 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022A731C */ _t6 = cpu->r[3] + 0x000000ECu;
|
|
/* 022A731C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 022A7320 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 022A7320 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022A7324 */ _t8 = cpu->r[3] + 0x000000F0u;
|
|
/* 022A7324 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 022A7328 */ _t9 = cpu->r[4] + 0x0000000Cu;
|
|
/* 022A7328 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022A732C */ _t10 = cpu->r[3] + 0x000000F4u;
|
|
/* 022A732C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022A7330 */ _t11 = cpu->r[4] + 0x00000010u;
|
|
/* 022A7330 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022A7334 */ _t12 = cpu->r[3] + 0x000000F8u;
|
|
/* 022A7334 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022A7338 */ _t13 = cpu->r[4] + 0x00000014u;
|
|
/* 022A7338 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022A733C */ _t14 = cpu->r[3] + 0x000000FCu;
|
|
/* 022A733C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 022A7340 */ _t15 = cpu->r[4] + 0x00000018u;
|
|
/* 022A7340 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A7344 */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 022A7344 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 022A7348 */ _t17 = cpu->r[4] + 0x0000001Cu;
|
|
/* 022A7348 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022A734C */ _t18 = cpu->r[3] + 0x00000104u;
|
|
/* 022A734C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[5]);
|
|
/* 022A7350 */ _t19 = cpu->r[4] + 0x00000020u;
|
|
/* 022A7350 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022A7354 */ _t20 = cpu->r[3] + 0x00000108u;
|
|
/* 022A7354 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[6]);
|
|
/* 022A7358 */ _t21 = cpu->r[4] + 0x00000024u;
|
|
/* 022A7358 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022A735C */ _t22 = cpu->r[3] + 0x0000010Cu;
|
|
/* 022A735C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[7]);
|
|
/* 022A7360 */ _t23 = cpu->r[4] + 0x00000028u;
|
|
/* 022A7360 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A7364 */ _t24 = cpu->r[3] + 0x00000110u;
|
|
/* 022A7364 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[8]);
|
|
/* 022A7368 */ _t25 = cpu->r[4] + 0x0000002Cu;
|
|
/* 022A7368 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022A736C */ _t26 = cpu->r[3] + 0x00000114u;
|
|
/* 022A736C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[8]);
|
|
/* 022A7370 */ _t27 = cpu->r[4] + 0x00000030u;
|
|
/* 022A7370 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022A7374 */ _t28 = cpu->r[3] + 0x00000118u;
|
|
/* 022A7374 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[8]);
|
|
/* 022A7378 */ _t29 = cpu->r[4] + 0x00000034u;
|
|
/* 022A7378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A737C */ _t30 = cpu->r[3] + 0x000001C8u;
|
|
/* 022A737C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022A7380 */ _t31 = cpu->r[4] + 0x00000038u;
|
|
/* 022A7380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A7384 */ _t32 = cpu->r[3] + 0x000001D0u;
|
|
/* 022A7384 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 022A7388 */ _t33 = cpu->r[3] + 0x000001DCu;
|
|
/* 022A7388 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 022A738C */ _t34 = cpu->r[3] + 0x000001E8u;
|
|
/* 022A738C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[5]);
|
|
/* 022A7390 */ _t35 = cpu->r[3] + 0x000001D4u;
|
|
/* 022A7390 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 022A7394 */ _t36 = cpu->r[3] + 0x000001D8u;
|
|
/* 022A7394 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 022A7398 */ _t37 = cpu->r[3] + 0x000001E0u;
|
|
/* 022A7398 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 022A739C */ _t38 = cpu->r[3] + 0x000001E4u;
|
|
/* 022A739C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022A73A0 */ _t39 = cpu->r[3] + 0x000001ECu;
|
|
/* 022A73A0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[6]);
|
|
/* 022A73A4 */ _t40 = cpu->r[3] + 0x000001CCu;
|
|
/* 022A73A4 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 022A73A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A73AC */ _t41 = cpu->r[3] + 0x000001F0u;
|
|
/* 022A73AC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[7]);
|
|
/* 022A73B0 */ Gambit_fn_022A727C(cpu);
|
|
/* 022A73B4 */ cpu->r[12] = 0x43300000u;
|
|
/* 022A73B8 */ _t42 = cpu->r[31] + 0x000001C8u;
|
|
/* 022A73B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A73BC */ cpu->r[9] = 0x10060000u;
|
|
/* 022A73C0 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 022A73C4 */ _t43 = cpu->r[9] + 0x00001628u;
|
|
/* 022A73C4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 022A73C8 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022A73CC */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73CC */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 022A73D0 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A73D0 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 022A73D4 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73D4 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 022A73D8 */ _t47 = cpu->r[31] + 0x000001CCu;
|
|
/* 022A73D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022A73DC */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 022A73E0 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022A73E4 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A73E4 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 022A73E8 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73E8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 022A73EC */ cpu->f[11] = (double)(float)cpu->f[13];
|
|
/* 022A73F0 */ cpu->f[9] = cpu->f[12] - cpu->f[0];
|
|
/* 022A73F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A73F8 */ cpu->f[10] = cpu->f[1] * cpu->f[11];
|
|
/* 022A73FC */ _t50 = cpu->r[12] + 0x00001630u;
|
|
/* 022A73FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022A7400 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 022A7404 */ cpu->f[0] = cpu->f[10] * cpu->f[12];
|
|
/* 022A7408 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A740C */ cpu->f[11] = fma(cpu->f[1], cpu->f[9], -(cpu->f[0]));
|
|
/* 022A7410 */ _t51 = cpu->r[10] + 0x00001634u;
|
|
/* 022A7410 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022A7414 */ cpu->f[1] = cpu->f[11] * cpu->f[13];
|
|
/* 022A7418 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 022A741C */ Gambit_fn_0204E43C(cpu);
|
|
/* 022A7420 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 022A7420 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022A7424 */ _t53 = cpu->r[11] + 0x000000ECu;
|
|
/* 022A7424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022A7428 */ cpu->ctr = cpu->r[0];
|
|
/* 022A742C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7434 */ _t54 = cpu->r[31] + 0x00000070u;
|
|
/* 022A7434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022A7438 */ _t55 = cpu->r[31] + 0x00000134u;
|
|
/* 022A7438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A743C */ _t56 = cpu->r[10] + 0x000000A0u;
|
|
/* 022A743C */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 022A7440 */ _t57 = cpu->r[31] + 0x00000138u;
|
|
/* 022A7440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022A7444 */ _t58 = cpu->r[10] + 0x000000A4u;
|
|
/* 022A7444 */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 022A7448 */ _t59 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022A7448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022A744C */ _t60 = cpu->r[10] + 0x000000A8u;
|
|
/* 022A744C */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 022A7450 */ _t61 = cpu->r[31] + 0x00000192u;
|
|
/* 022A7450 */ cpu->r[4] = rbrew_read8(cpu->mem, _t61);
|
|
/* 022A7454 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A7458 */ /* nop */
|
|
/* 022A745C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A7460 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A7464 */ Gambit_fn_0229CDA8(cpu);
|
|
/* 022A7468 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022A746C */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 022A746C */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A7470 */ cpu->lr = cpu->r[0];
|
|
/* 022A7474 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A7478 */ return;
|
|
}
|
|
|
|
// fn_022A7304 @ 0x22a7304
|
|
void Gambit_fn_022A7304(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022A7304: ; // 0x22a7304
|
|
/* 022A7304 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A7304 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7304 */ cpu->r[1] = _t0;
|
|
/* 022A7308 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7308 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A730C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A730C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7310 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7314 */ _t4 = cpu->r[3] + 0x000001C4u;
|
|
/* 022A7314 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022A7318 */ _t5 = cpu->r[4] + 0x00000004u;
|
|
/* 022A7318 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022A731C */ _t6 = cpu->r[3] + 0x000000ECu;
|
|
/* 022A731C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 022A7320 */ _t7 = cpu->r[4] + 0x00000008u;
|
|
/* 022A7320 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022A7324 */ _t8 = cpu->r[3] + 0x000000F0u;
|
|
/* 022A7324 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 022A7328 */ _t9 = cpu->r[4] + 0x0000000Cu;
|
|
/* 022A7328 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022A732C */ _t10 = cpu->r[3] + 0x000000F4u;
|
|
/* 022A732C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022A7330 */ _t11 = cpu->r[4] + 0x00000010u;
|
|
/* 022A7330 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022A7334 */ _t12 = cpu->r[3] + 0x000000F8u;
|
|
/* 022A7334 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[10]);
|
|
/* 022A7338 */ _t13 = cpu->r[4] + 0x00000014u;
|
|
/* 022A7338 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022A733C */ _t14 = cpu->r[3] + 0x000000FCu;
|
|
/* 022A733C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[9]);
|
|
/* 022A7340 */ _t15 = cpu->r[4] + 0x00000018u;
|
|
/* 022A7340 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A7344 */ _t16 = cpu->r[3] + 0x00000100u;
|
|
/* 022A7344 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 022A7348 */ _t17 = cpu->r[4] + 0x0000001Cu;
|
|
/* 022A7348 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022A734C */ _t18 = cpu->r[3] + 0x00000104u;
|
|
/* 022A734C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[5]);
|
|
/* 022A7350 */ _t19 = cpu->r[4] + 0x00000020u;
|
|
/* 022A7350 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022A7354 */ _t20 = cpu->r[3] + 0x00000108u;
|
|
/* 022A7354 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[6]);
|
|
/* 022A7358 */ _t21 = cpu->r[4] + 0x00000024u;
|
|
/* 022A7358 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022A735C */ _t22 = cpu->r[3] + 0x0000010Cu;
|
|
/* 022A735C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[7]);
|
|
/* 022A7360 */ _t23 = cpu->r[4] + 0x00000028u;
|
|
/* 022A7360 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A7364 */ _t24 = cpu->r[3] + 0x00000110u;
|
|
/* 022A7364 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[8]);
|
|
/* 022A7368 */ _t25 = cpu->r[4] + 0x0000002Cu;
|
|
/* 022A7368 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022A736C */ _t26 = cpu->r[3] + 0x00000114u;
|
|
/* 022A736C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[8]);
|
|
/* 022A7370 */ _t27 = cpu->r[4] + 0x00000030u;
|
|
/* 022A7370 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022A7374 */ _t28 = cpu->r[3] + 0x00000118u;
|
|
/* 022A7374 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[8]);
|
|
/* 022A7378 */ _t29 = cpu->r[4] + 0x00000034u;
|
|
/* 022A7378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A737C */ _t30 = cpu->r[3] + 0x000001C8u;
|
|
/* 022A737C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022A7380 */ _t31 = cpu->r[4] + 0x00000038u;
|
|
/* 022A7380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A7384 */ _t32 = cpu->r[3] + 0x000001D0u;
|
|
/* 022A7384 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 022A7388 */ _t33 = cpu->r[3] + 0x000001DCu;
|
|
/* 022A7388 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 022A738C */ _t34 = cpu->r[3] + 0x000001E8u;
|
|
/* 022A738C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[5]);
|
|
/* 022A7390 */ _t35 = cpu->r[3] + 0x000001D4u;
|
|
/* 022A7390 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
/* 022A7394 */ _t36 = cpu->r[3] + 0x000001D8u;
|
|
/* 022A7394 */ rbrew_write_f32(cpu->mem, _t36, cpu->f[0]);
|
|
/* 022A7398 */ _t37 = cpu->r[3] + 0x000001E0u;
|
|
/* 022A7398 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[9]);
|
|
/* 022A739C */ _t38 = cpu->r[3] + 0x000001E4u;
|
|
/* 022A739C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022A73A0 */ _t39 = cpu->r[3] + 0x000001ECu;
|
|
/* 022A73A0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[6]);
|
|
/* 022A73A4 */ _t40 = cpu->r[3] + 0x000001CCu;
|
|
/* 022A73A4 */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 022A73A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A73AC */ _t41 = cpu->r[3] + 0x000001F0u;
|
|
/* 022A73AC */ rbrew_write_f32(cpu->mem, _t41, cpu->f[7]);
|
|
/* 022A73B0 */ Gambit_fn_022A727C(cpu);
|
|
/* 022A73B4 */ cpu->r[12] = 0x43300000u;
|
|
/* 022A73B8 */ _t42 = cpu->r[31] + 0x000001C8u;
|
|
/* 022A73B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A73BC */ cpu->r[9] = 0x10060000u;
|
|
/* 022A73C0 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 022A73C4 */ _t43 = cpu->r[9] + 0x00001628u;
|
|
/* 022A73C4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t43);
|
|
/* 022A73C8 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022A73CC */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73CC */ rbrew_write32(cpu->mem, _t44, cpu->r[12]);
|
|
/* 022A73D0 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A73D0 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 022A73D4 */ _t46 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73D4 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 022A73D8 */ _t47 = cpu->r[31] + 0x000001CCu;
|
|
/* 022A73D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022A73DC */ cpu->f[13] = cpu->f[12] - cpu->f[0];
|
|
/* 022A73E0 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 022A73E4 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A73E4 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]);
|
|
/* 022A73E8 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 022A73E8 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t49);
|
|
/* 022A73EC */ cpu->f[11] = (double)(float)cpu->f[13];
|
|
/* 022A73F0 */ cpu->f[9] = cpu->f[12] - cpu->f[0];
|
|
/* 022A73F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A73F8 */ cpu->f[10] = cpu->f[1] * cpu->f[11];
|
|
/* 022A73FC */ _t50 = cpu->r[12] + 0x00001630u;
|
|
/* 022A73FC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022A7400 */ cpu->f[9] = (double)(float)cpu->f[9];
|
|
/* 022A7404 */ cpu->f[0] = cpu->f[10] * cpu->f[12];
|
|
/* 022A7408 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A740C */ cpu->f[11] = fma(cpu->f[1], cpu->f[9], -(cpu->f[0]));
|
|
/* 022A7410 */ _t51 = cpu->r[10] + 0x00001634u;
|
|
/* 022A7410 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022A7414 */ cpu->f[1] = cpu->f[11] * cpu->f[13];
|
|
/* 022A7418 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 022A741C */ Gambit_fn_0204E43C(cpu);
|
|
/* 022A7420 */ _t52 = cpu->r[31] + 0x00000004u;
|
|
/* 022A7420 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022A7424 */ _t53 = cpu->r[11] + 0x000000ECu;
|
|
/* 022A7424 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022A7428 */ cpu->ctr = cpu->r[0];
|
|
/* 022A742C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7434 */ _t54 = cpu->r[31] + 0x00000070u;
|
|
/* 022A7434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022A7438 */ _t55 = cpu->r[31] + 0x00000134u;
|
|
/* 022A7438 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A743C */ _t56 = cpu->r[10] + 0x000000A0u;
|
|
/* 022A743C */ rbrew_write32(cpu->mem, _t56, cpu->r[11]);
|
|
/* 022A7440 */ _t57 = cpu->r[31] + 0x00000138u;
|
|
/* 022A7440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022A7444 */ _t58 = cpu->r[10] + 0x000000A4u;
|
|
/* 022A7444 */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 022A7448 */ _t59 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022A7448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022A744C */ _t60 = cpu->r[10] + 0x000000A8u;
|
|
/* 022A744C */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 022A7450 */ _t61 = cpu->r[31] + 0x00000192u;
|
|
/* 022A7450 */ cpu->r[4] = rbrew_read8(cpu->mem, _t61);
|
|
/* 022A7454 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A7458 */ /* nop */
|
|
/* 022A745C */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A7460 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A7464 */ Gambit_fn_0229CDA8(cpu);
|
|
/* 022A7468 */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022A746C */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 022A746C */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A7470 */ cpu->lr = cpu->r[0];
|
|
/* 022A7474 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A7478 */ return;
|
|
}
|
|
|
|
// fn_022A747C @ 0x22a747c
|
|
void Gambit_fn_022A747C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51;
|
|
|
|
L_022A747C: ; // 0x22a747c
|
|
/* 022A747C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022A747C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A747C */ cpu->r[1] = _t0;
|
|
/* 022A7480 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7484 */ /* nop */
|
|
/* 022A7488 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A748C */ cpu->r[3] = 0x00000084u;
|
|
/* 022A7490 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022A7490 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A7494 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A749C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A749C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A749C */ if (_t3) goto L_022A74A4; else goto L_022A74A0;
|
|
L_022A74A0: ; // 0x22a74a0
|
|
/* 022A74A0 */ Gambit_fn_023C28A8(cpu);
|
|
L_022A74A4: ; // 0x22a74a4
|
|
/* 022A74A4 */ cpu->r[4] = 0x00000000u;
|
|
/* 022A74A8 */ _t4 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A74A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 022A74AC */ Gambit_fn_023C26D8(cpu);
|
|
/* 022A74B0 */ _t5 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A74B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A74B4 */ Gambit_fn_023E4504(cpu);
|
|
/* 022A74B8 */ cpu->r[3] = 0x00000030u;
|
|
/* 022A74BC */ Gambit_fn_02801A78(cpu);
|
|
/* 022A74C0 */ cpu->r[0] = cpu->r[3];
|
|
/* 022A74C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A74C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A74C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022A74C4 */ if (_t7) goto L_022A74D4; else goto L_022A74C8;
|
|
L_022A74C8: ; // 0x22a74c8
|
|
/* 022A74C8 */ cpu->r[3] = cpu->r[0];
|
|
/* 022A74CC */ Gambit_fn_02246868(cpu);
|
|
/* 022A74D0 */ cpu->r[0] = cpu->r[3];
|
|
L_022A74D4: ; // 0x22a74d4
|
|
/* 022A74D4 */ cpu->r[3] = 0x00000018u;
|
|
/* 022A74D8 */ _t8 = cpu->r[30] + 0x000001BCu;
|
|
/* 022A74D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 022A74DC */ Gambit_fn_02801A78(cpu);
|
|
/* 022A74E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A74E4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A74E4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A74E4 */ if (_t10) goto L_022A74EC; else goto L_022A74E8;
|
|
L_022A74E8: ; // 0x22a74e8
|
|
/* 022A74E8 */ Gambit_fn_02245EC4(cpu);
|
|
L_022A74EC: ; // 0x22a74ec
|
|
/* 022A74EC */ cpu->r[26] = 0x10060000u;
|
|
/* 022A74F0 */ _t11 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A74F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 022A74F4 */ cpu->r[26] = cpu->r[26] + 0x00001358u;
|
|
/* 022A74F8 */ _t12 = cpu->r[30] + 0x00000008u;
|
|
/* 022A74F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A74FC */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7500 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7500 */ rbrew_write32(cpu->mem, _t13, cpu->r[26]);
|
|
/* 022A7504 */ cpu->r[6] = cpu->r[6] + 0x00001638u;
|
|
/* 022A7508 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022A750C */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022A750C */ rbrew_write32(cpu->mem, _t14, cpu->r[6]);
|
|
/* 022A7510 */ Gambit_fn_029807A8(cpu);
|
|
/* 022A7514 */ _t15 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A7514 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A7518 */ _t16 = cpu->r[7] + 0x00000014u;
|
|
/* 022A7518 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 022A751C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7520 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7524 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A7528 */ _t17 = cpu->r[28] + 0x00000128u;
|
|
/* 022A7528 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A7528 */ cpu->r[28] = _t17;
|
|
/* 022A752C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A7530 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022A7534 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A753C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A7540 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7540 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A7540 */ if (_t19) goto L_022A7544; else goto L_022A7550;
|
|
L_022A7544: ; // 0x22a7544
|
|
/* 022A7544 */ _t20 = cpu->r[27] + 0x00000168u;
|
|
/* 022A7544 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 022A7548 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A754C */ _t21 = cpu->r[28] + 0x00000000u;
|
|
/* 022A754C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
L_022A7550: ; // 0x22a7550
|
|
/* 022A7550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7554 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7554 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A7554 */ if (_t23) goto L_022A7578; else goto L_022A7558;
|
|
L_022A7558: ; // 0x22a7558
|
|
/* 022A7558 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7558 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A755C */ _t25 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022A755C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A7560 */ cpu->ctr = cpu->r[11];
|
|
/* 022A7564 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7568 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A756C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7574 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7574 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022A7574 */ if (_t27) goto L_022A7578; else goto L_022A757C;
|
|
L_022A7578: ; // 0x22a7578
|
|
/* 022A7578 */ cpu->r[31] = 0x00000000u;
|
|
L_022A757C: ; // 0x22a757c
|
|
/* 022A757C */ _t28 = cpu->r[31] + 0x00000D9Cu;
|
|
/* 022A757C */ cpu->r[12] = rbrew_read8(cpu->mem, _t28);
|
|
/* 022A7580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A7584 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7584 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A7584 */ if (_t30) goto L_022A7614; else goto L_022A7588;
|
|
L_022A7588: ; // 0x22a7588
|
|
/* 022A7588 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A758C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7590 */ _t31 = cpu->r[28] + 0x00000000u;
|
|
/* 022A7590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A7594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7598 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A759C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A759C */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A759C */ if (_t33) goto L_022A75A0; else goto L_022A75AC;
|
|
L_022A75A0: ; // 0x22a75a0
|
|
/* 022A75A0 */ _t34 = cpu->r[27] + 0x00000168u;
|
|
/* 022A75A0 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 022A75A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A75A8 */ _t35 = cpu->r[28] + 0x00000000u;
|
|
/* 022A75A8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
L_022A75AC: ; // 0x22a75ac
|
|
/* 022A75AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A75B0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A75B0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022A75B0 */ if (_t37) goto L_022A75D4; else goto L_022A75B4;
|
|
L_022A75B4: ; // 0x22a75b4
|
|
/* 022A75B4 */ _t38 = cpu->r[31] + 0x00000000u;
|
|
/* 022A75B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022A75B8 */ _t39 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022A75B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A75BC */ cpu->ctr = cpu->r[0];
|
|
/* 022A75C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A75C4 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A75C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A75CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A75D0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A75D0 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022A75D0 */ if (_t41) goto L_022A75D4; else goto L_022A75D8;
|
|
L_022A75D4: ; // 0x22a75d4
|
|
/* 022A75D4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A75D8: ; // 0x22a75d8
|
|
/* 022A75D8 */ cpu->r[4] = cpu->r[31] + 0x00001334u;
|
|
/* 022A75DC */ cpu->r[3] = cpu->r[30];
|
|
/* 022A75E0 */ Gambit_fn_02271E7C(cpu);
|
|
/* 022A75E4 */ _t42 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A75E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A75E8 */ _t43 = cpu->r[30] + 0x000000B4u;
|
|
/* 022A75E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A75EC */ _t44 = cpu->r[8] + 0x00000008u;
|
|
/* 022A75EC */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 022A75F0 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 022A75F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022A75F4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A75F8 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 022A75F8 */ rbrew_write32(cpu->mem, _t46, cpu->r[26]);
|
|
/* 022A75FC */ cpu->r[0] = cpu->r[0] + 0x00001640u;
|
|
/* 022A7600 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7604 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 022A7604 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 022A7608 */ Gambit_fn_029807A8(cpu);
|
|
/* 022A760C */ _t48 = cpu->r[30] + 0x000000B4u;
|
|
/* 022A760C */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022A7610 */ _t49 = cpu->r[11] + 0x00000010u;
|
|
/* 022A7610 */ rbrew_write32(cpu->mem, _t49, cpu->r[3]);
|
|
L_022A7614: ; // 0x22a7614
|
|
/* 022A7614 */ _t50 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A7614 */ cpu->r[4] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022A7618 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A761C */ Gambit_fn_02272690(cpu);
|
|
/* 022A7620 */ /* nop */
|
|
/* 022A7624 */ _t51 = cpu->r[1] + 0x00000034u;
|
|
/* 022A7624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022A7628 */ cpu->lr = cpu->r[0];
|
|
/* 022A762C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022A7630 */ return;
|
|
}
|
|
|
|
// fn_022A7634 @ 0x22a7634
|
|
void Gambit_fn_022A7634(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7634: ; // 0x22a7634
|
|
/* 022A7634 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7638 */ cpu->r[1] = _t0;
|
|
/* 022A763C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A763C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7640 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7644 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7644 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7648 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7648 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A764C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7650 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7654 */ _t4 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7654 */ cpu->r[11] = _t4;
|
|
/* 022A7658 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A765C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7664 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7668 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7668 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A7668 */ if (_t6) goto L_022A766C; else goto L_022A7680;
|
|
L_022A766C: ; // 0x22a766c
|
|
/* 022A766C */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7670 */ cpu->r[12] = 0x00000001u;
|
|
/* 022A7674 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7678 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7678 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 022A767C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022A767C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A7680: ; // 0x22a7680
|
|
/* 022A7680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7684 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7684 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A7684 */ if (_t10) goto L_022A76A4; else goto L_022A7688;
|
|
L_022A7688: ; // 0x22a7688
|
|
/* 022A7688 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A768C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A768C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7690 */ cpu->ctr = cpu->r[10];
|
|
/* 022A7694 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7698 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A769C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A76A0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A76A0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A76A0 */ if (_t14) goto L_022A76A4; else goto L_022A76A8;
|
|
L_022A76A4: ; // 0x22a76a4
|
|
/* 022A76A4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A76A8: ; // 0x22a76a8
|
|
/* 022A76A8 */ _t15 = cpu->r[31] + 0x00000D44u;
|
|
/* 022A76A8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022A76AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A76B0 */ cpu->r[5] = 0x00000003u;
|
|
/* 022A76B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A76B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A76B4 */ if (_t17) goto L_022A76BC; else goto L_022A76B8;
|
|
L_022A76B8: ; // 0x22a76b8
|
|
/* 022A76B8 */ cpu->r[5] = 0x00000001u;
|
|
L_022A76BC: ; // 0x22a76bc
|
|
/* 022A76BC */ cpu->r[4] = 0x00000000u;
|
|
/* 022A76C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A76C4 */ Gambit_fn_02271708(cpu);
|
|
/* 022A76C8 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A76C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A76CC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A76CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A76D0 */ cpu->lr = cpu->r[0];
|
|
/* 022A76D4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A76D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A76D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A76DC */ return;
|
|
}
|
|
|
|
// fn_022A7638 @ 0x22a7638
|
|
void Gambit_fn_022A7638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7638: ; // 0x22a7638
|
|
/* 022A7638 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7638 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7638 */ cpu->r[1] = _t0;
|
|
/* 022A763C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A763C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7640 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7644 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7644 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7648 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7648 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A764C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7650 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7654 */ _t4 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7654 */ cpu->r[11] = _t4;
|
|
/* 022A7658 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A765C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7664 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7668 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7668 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A7668 */ if (_t6) goto L_022A766C; else goto L_022A7680;
|
|
L_022A766C: ; // 0x22a766c
|
|
/* 022A766C */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7670 */ cpu->r[12] = 0x00000001u;
|
|
/* 022A7674 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7678 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7678 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 022A767C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022A767C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A7680: ; // 0x22a7680
|
|
/* 022A7680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7684 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7684 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A7684 */ if (_t10) goto L_022A76A4; else goto L_022A7688;
|
|
L_022A7688: ; // 0x22a7688
|
|
/* 022A7688 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A768C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A768C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7690 */ cpu->ctr = cpu->r[10];
|
|
/* 022A7694 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7698 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A769C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A76A0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A76A0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A76A0 */ if (_t14) goto L_022A76A4; else goto L_022A76A8;
|
|
L_022A76A4: ; // 0x22a76a4
|
|
/* 022A76A4 */ cpu->r[31] = 0x00000000u;
|
|
L_022A76A8: ; // 0x22a76a8
|
|
/* 022A76A8 */ _t15 = cpu->r[31] + 0x00000D44u;
|
|
/* 022A76A8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022A76AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A76B0 */ cpu->r[5] = 0x00000003u;
|
|
/* 022A76B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A76B4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A76B4 */ if (_t17) goto L_022A76BC; else goto L_022A76B8;
|
|
L_022A76B8: ; // 0x22a76b8
|
|
/* 022A76B8 */ cpu->r[5] = 0x00000001u;
|
|
L_022A76BC: ; // 0x22a76bc
|
|
/* 022A76BC */ cpu->r[4] = 0x00000000u;
|
|
/* 022A76C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A76C4 */ Gambit_fn_02271708(cpu);
|
|
/* 022A76C8 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A76C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A76CC */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A76CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A76D0 */ cpu->lr = cpu->r[0];
|
|
/* 022A76D4 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A76D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A76D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A76DC */ return;
|
|
}
|
|
|
|
// fn_022A76E0 @ 0x22a76e0
|
|
void Gambit_fn_022A76E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_022A76E0: ; // 0x22a76e0
|
|
/* 022A76E0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022A76E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A76E0 */ cpu->r[1] = _t0;
|
|
/* 022A76E4 */ /* nop */
|
|
/* 022A76E8 */ cpu->r[0] = cpu->lr;
|
|
/* 022A76EC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022A76EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A76F0 */ _t2 = cpu->r[3] + 0x00000070u;
|
|
/* 022A76F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A76F4 */ _t3 = cpu->r[11] + 0x00000010u;
|
|
/* 022A76F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A76F8 */ cpu->r[12] = cpu->r[12] | 0x00000048u;
|
|
/* 022A76FC */ _t4 = cpu->r[11] + 0x00000010u;
|
|
/* 022A76FC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022A7700 */ _t5 = cpu->r[3] + 0x00000070u;
|
|
/* 022A7700 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A7704 */ _t6 = cpu->r[10] + 0x00000010u;
|
|
/* 022A7704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7708 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Cu);
|
|
/* 022A770C */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7710 */ _t7 = cpu->r[10] + 0x00000010u;
|
|
/* 022A7710 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022A7714 */ _t8 = cpu->r[3] + 0x00000090u;
|
|
/* 022A7714 */ cpu->r[26] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A7718 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A771C */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A7720 */ _t9 = cpu->r[28] + 0x00000128u;
|
|
/* 022A7720 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A7720 */ cpu->r[28] = _t9;
|
|
/* 022A7724 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7728 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022A772C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A7730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A7734 */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A7738 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7738 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022A7738 */ if (_t11) goto L_022A773C; else goto L_022A7748;
|
|
L_022A773C: ; // 0x22a773c
|
|
/* 022A773C */ _t12 = cpu->r[27] + 0x00000168u;
|
|
/* 022A773C */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022A7740 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A7744 */ _t13 = cpu->r[28] + 0x00000000u;
|
|
/* 022A7744 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
L_022A7748: ; // 0x22a7748
|
|
/* 022A7748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A774C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A774C */ _t15 = _t14 & 0x00000001u;
|
|
/* 022A774C */ if (_t15) goto L_022A7770; else goto L_022A7750;
|
|
L_022A7750: ; // 0x22a7750
|
|
/* 022A7750 */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7750 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A7754 */ _t17 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A7754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A7758 */ cpu->ctr = cpu->r[0];
|
|
/* 022A775C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7760 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A7764 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A776C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A776C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A776C */ if (_t19) goto L_022A7770; else goto L_022A7774;
|
|
L_022A7770: ; // 0x22a7770
|
|
/* 022A7770 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7774: ; // 0x22a7774
|
|
/* 022A7774 */ _t20 = cpu->r[31] + 0x00001214u;
|
|
/* 022A7774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A7778 */ _t21 = cpu->r[26] + 0x00000014u;
|
|
/* 022A7778 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 022A777C */ _t22 = cpu->r[30] + 0x000001BCu;
|
|
/* 022A777C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A7780 */ Gambit_fn_02246950(cpu);
|
|
/* 022A7784 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7788 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A778C */ _t23 = cpu->r[28] + 0x00000000u;
|
|
/* 022A778C */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022A7790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A7794 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7798 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7798 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A7798 */ if (_t25) goto L_022A779C; else goto L_022A77A8;
|
|
L_022A779C: ; // 0x22a779c
|
|
/* 022A779C */ _t26 = cpu->r[27] + 0x00000168u;
|
|
/* 022A779C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 022A77A0 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A77A4 */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 022A77A4 */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
L_022A77A8: ; // 0x22a77a8
|
|
/* 022A77A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A77AC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A77AC */ _t29 = _t28 & 0x00000001u;
|
|
/* 022A77AC */ if (_t29) goto L_022A77D0; else goto L_022A77B0;
|
|
L_022A77B0: ; // 0x22a77b0
|
|
/* 022A77B0 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 022A77B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A77B4 */ _t31 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A77B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A77B8 */ cpu->ctr = cpu->r[0];
|
|
/* 022A77BC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A77C0 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A77C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A77C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A77CC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A77CC */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A77CC */ if (_t33) goto L_022A77D0; else goto L_022A77D4;
|
|
L_022A77D0: ; // 0x22a77d0
|
|
/* 022A77D0 */ cpu->r[31] = 0x00000000u;
|
|
L_022A77D4: ; // 0x22a77d4
|
|
/* 022A77D4 */ _t34 = cpu->r[31] + 0x00000688u;
|
|
/* 022A77D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022A77D8 */ cpu->r[4] = cpu->r[30] + 0x0000011Cu;
|
|
/* 022A77DC */ _t35 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A77DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A77E0 */ Gambit_fn_02245F30(cpu);
|
|
/* 022A77E4 */ _t36 = cpu->r[30] + 0x000000B4u;
|
|
/* 022A77E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A77E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A77EC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A77EC */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A77EC */ if (_t38) goto L_022A77F4; else goto L_022A77F0;
|
|
L_022A77F0: ; // 0x22a77f0
|
|
/* 022A77F0 */ Gambit_fn_02247F90(cpu);
|
|
L_022A77F4: ; // 0x22a77f4
|
|
/* 022A77F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A77F8 */ Gambit_fn_022A7634(cpu);
|
|
/* 022A77FC */ /* nop */
|
|
/* 022A7800 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 022A7800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A7804 */ cpu->lr = cpu->r[0];
|
|
/* 022A7808 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022A780C */ return;
|
|
}
|
|
|
|
// fn_022A7810 @ 0x22a7810
|
|
void Gambit_fn_022A7810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_022A7810: ; // 0x22a7810
|
|
/* 022A7810 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7814 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7814 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7814 */ cpu->r[1] = _t0;
|
|
/* 022A7818 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7818 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A781C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A781C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7820 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7824 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7824 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A7828 */ _t4 = cpu->r[30] + 0x00000008u;
|
|
/* 022A7828 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A782C */ Gambit_fn_02980904(cpu);
|
|
/* 022A7830 */ _t5 = cpu->r[30] + 0x00000070u;
|
|
/* 022A7830 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A7834 */ _t6 = cpu->r[10] + 0x000000F1u;
|
|
/* 022A7834 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022A7838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A783C */ _t7 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A783C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7840 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7840 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A7840 */ if (_t9) goto L_022A7874; else goto L_022A7844;
|
|
L_022A7844: ; // 0x22a7844
|
|
/* 022A7844 */ _t10 = cpu->r[10] + 0x000000E1u;
|
|
/* 022A7844 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 022A7848 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A784C */ _t11 = cpu->r[12] + 0x00000030u;
|
|
/* 022A784C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[10]);
|
|
/* 022A7850 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7854 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A7858 */ _t12 = cpu->r[12] + 0x00000128u;
|
|
/* 022A7858 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7858 */ cpu->r[12] = _t12;
|
|
/* 022A785C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7860 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A7868 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A786C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A786C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A786C */ if (_t14) goto L_022A7870; else goto L_022A78B4;
|
|
L_022A7870: ; // 0x22a7870
|
|
/* 022A7870 */ goto L_022A78A0;
|
|
L_022A7874: ; // 0x22a7874
|
|
/* 022A7874 */ _t15 = cpu->r[10] + 0x000000E0u;
|
|
/* 022A7874 */ cpu->r[10] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022A7878 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A787C */ _t16 = cpu->r[12] + 0x00000030u;
|
|
/* 022A787C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[10]);
|
|
/* 022A7880 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7884 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A7888 */ _t17 = cpu->r[12] + 0x00000128u;
|
|
/* 022A7888 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A7888 */ cpu->r[12] = _t17;
|
|
/* 022A788C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7890 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A7898 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A789C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A789C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A789C */ if (_t19) goto L_022A78A0; else goto L_022A78B4;
|
|
L_022A78A0: ; // 0x22a78a0
|
|
/* 022A78A0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A78A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A78A8 */ cpu->r[8] = cpu->r[8] + 0x000013F8u;
|
|
/* 022A78AC */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 022A78AC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022A78B0 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 022A78B0 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
L_022A78B4: ; // 0x22a78b4
|
|
/* 022A78B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A78B8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A78B8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A78B8 */ if (_t23) goto L_022A78D8; else goto L_022A78BC;
|
|
L_022A78BC: ; // 0x22a78bc
|
|
/* 022A78BC */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 022A78BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A78C0 */ _t25 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022A78C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A78C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A78C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A78CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A78D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A78D4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A78D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022A78D4 */ if (_t27) goto L_022A78D8; else goto L_022A78DC;
|
|
L_022A78D8: ; // 0x22a78d8
|
|
/* 022A78D8 */ cpu->r[31] = 0x00000000u;
|
|
L_022A78DC: ; // 0x22a78dc
|
|
/* 022A78DC */ _t28 = cpu->r[31] + 0x00000688u;
|
|
/* 022A78DC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022A78E0 */ cpu->r[4] = cpu->r[30] + 0x00000140u;
|
|
/* 022A78E4 */ _t29 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A78E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A78E8 */ Gambit_fn_022483BC(cpu);
|
|
/* 022A78EC */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022A78EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A78F0 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 022A78F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A78F4 */ cpu->lr = cpu->r[0];
|
|
/* 022A78F8 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A78F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022A78FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7900 */ return;
|
|
}
|
|
|
|
// fn_022A7814 @ 0x22a7814
|
|
void Gambit_fn_022A7814(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_022A7814: ; // 0x22a7814
|
|
/* 022A7814 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7814 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7814 */ cpu->r[1] = _t0;
|
|
/* 022A7818 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7818 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A781C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A781C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7820 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7824 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7824 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A7828 */ _t4 = cpu->r[30] + 0x00000008u;
|
|
/* 022A7828 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A782C */ Gambit_fn_02980904(cpu);
|
|
/* 022A7830 */ _t5 = cpu->r[30] + 0x00000070u;
|
|
/* 022A7830 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A7834 */ _t6 = cpu->r[10] + 0x000000F1u;
|
|
/* 022A7834 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022A7838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A783C */ _t7 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A783C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7840 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7840 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A7840 */ if (_t9) goto L_022A7874; else goto L_022A7844;
|
|
L_022A7844: ; // 0x22a7844
|
|
/* 022A7844 */ _t10 = cpu->r[10] + 0x000000E1u;
|
|
/* 022A7844 */ cpu->r[10] = rbrew_read8(cpu->mem, _t10);
|
|
/* 022A7848 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A784C */ _t11 = cpu->r[12] + 0x00000030u;
|
|
/* 022A784C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[10]);
|
|
/* 022A7850 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7854 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A7858 */ _t12 = cpu->r[12] + 0x00000128u;
|
|
/* 022A7858 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7858 */ cpu->r[12] = _t12;
|
|
/* 022A785C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7860 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A7868 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A786C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A786C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A786C */ if (_t14) goto L_022A7870; else goto L_022A78B4;
|
|
L_022A7870: ; // 0x22a7870
|
|
/* 022A7870 */ goto L_022A78A0;
|
|
L_022A7874: ; // 0x22a7874
|
|
/* 022A7874 */ _t15 = cpu->r[10] + 0x000000E0u;
|
|
/* 022A7874 */ cpu->r[10] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022A7878 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A787C */ _t16 = cpu->r[12] + 0x00000030u;
|
|
/* 022A787C */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[10]);
|
|
/* 022A7880 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7884 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A7888 */ _t17 = cpu->r[12] + 0x00000128u;
|
|
/* 022A7888 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A7888 */ cpu->r[12] = _t17;
|
|
/* 022A788C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7890 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A7898 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A789C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A789C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A789C */ if (_t19) goto L_022A78A0; else goto L_022A78B4;
|
|
L_022A78A0: ; // 0x22a78a0
|
|
/* 022A78A0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A78A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A78A8 */ cpu->r[8] = cpu->r[8] + 0x000013F8u;
|
|
/* 022A78AC */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 022A78AC */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022A78B0 */ _t21 = cpu->r[4] + 0x00000000u;
|
|
/* 022A78B0 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
L_022A78B4: ; // 0x22a78b4
|
|
/* 022A78B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A78B8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A78B8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A78B8 */ if (_t23) goto L_022A78D8; else goto L_022A78BC;
|
|
L_022A78BC: ; // 0x22a78bc
|
|
/* 022A78BC */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 022A78BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A78C0 */ _t25 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022A78C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A78C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A78C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A78CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A78D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A78D4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A78D4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022A78D4 */ if (_t27) goto L_022A78D8; else goto L_022A78DC;
|
|
L_022A78D8: ; // 0x22a78d8
|
|
/* 022A78D8 */ cpu->r[31] = 0x00000000u;
|
|
L_022A78DC: ; // 0x22a78dc
|
|
/* 022A78DC */ _t28 = cpu->r[31] + 0x00000688u;
|
|
/* 022A78DC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022A78E0 */ cpu->r[4] = cpu->r[30] + 0x00000140u;
|
|
/* 022A78E4 */ _t29 = cpu->r[30] + 0x000001F4u;
|
|
/* 022A78E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A78E8 */ Gambit_fn_022483BC(cpu);
|
|
/* 022A78EC */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022A78EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A78F0 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 022A78F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A78F4 */ cpu->lr = cpu->r[0];
|
|
/* 022A78F8 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A78F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022A78FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7900 */ return;
|
|
}
|
|
|
|
// fn_022A7904 @ 0x22a7904
|
|
void Gambit_fn_022A7904(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0229CFB0: ; // 0x229cfb0
|
|
/* 0229CFB0 */ cpu->r[0] = cpu->lr;
|
|
/* 0229CFB4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0229CFB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0229CFB4 */ cpu->r[1] = _t0;
|
|
/* 0229CFB8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0229CFB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0229CFBC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229CFBC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0229CFC0 */ cpu->r[30] = cpu->r[3];
|
|
/* 0229CFC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0229CFC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0229CFC8 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0229CFC8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0229CFCC */ /* nop */
|
|
/* 0229CFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0229CFD4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0229CFD8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0229CFD8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0229CFD8 */ if (_t6) goto L_0229CFDC; else goto L_0229CFF0;
|
|
L_0229CFDC: ; // 0x229cfdc
|
|
/* 0229CFDC */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0229CFDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0229CFE0 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0229CFE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0229CFE4 */ cpu->ctr = cpu->r[0];
|
|
/* 0229CFE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0229CFEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0229CFF0: ; // 0x229cff0
|
|
/* 0229CFF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0229CFF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0229CFF8 */ Gambit_fn_0229CF28(cpu);
|
|
/* 0229CFFC */ cpu->r[3] = cpu->r[30];
|
|
/* 0229D000 */ /* nop */
|
|
/* 0229D004 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0229D008 */ cpu->r[3] = cpu->r[30];
|
|
/* 0229D00C */ Gambit_fn_0229CDA8(cpu);
|
|
/* 0229D010 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0229D010 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0229D014 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0229D014 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0229D018 */ cpu->lr = cpu->r[0];
|
|
/* 0229D01C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229D01C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0229D020 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0229D024 */ return;
|
|
L_022A7904: ; // 0x22a7904
|
|
/* 022A7904 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7908 */ _t12 = cpu->r[3] + 0x000000E0u;
|
|
/* 022A7908 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022A790C */ _t13 = cpu->r[12] + 0x00001648u;
|
|
/* 022A790C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022A7910 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022A7914 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7914 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022A7914 */ _t16 = _t15 ^ 0x00000001u;
|
|
/* 022A7914 */ if (_t16) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A7914 */ goto L_022A7918;
|
|
L_022A7918: ; // 0x22a7918
|
|
/* 022A7918 */ cpu->r[3] = cpu->r[3] + 0x00000184u;
|
|
/* 022A791C */ cpu->r[4] = 0x00000003u;
|
|
/* 022A7920 */ goto L_0229CFB0;
|
|
}
|
|
|
|
// fn_022A7924 @ 0x22a7924
|
|
void Gambit_fn_022A7924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7924: ; // 0x22a7924
|
|
/* 022A7924 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7928 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7928 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7928 */ cpu->r[1] = _t0;
|
|
/* 022A792C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A792C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7930 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7934 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7934 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7938 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7938 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A793C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7940 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7944 */ _t4 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7944 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7944 */ cpu->r[11] = _t4;
|
|
/* 022A7948 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A794C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A7954 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7958 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7958 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A7958 */ if (_t6) goto L_022A795C; else goto L_022A7970;
|
|
L_022A795C: ; // 0x22a795c
|
|
/* 022A795C */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7960 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7964 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7968 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7968 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022A796C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022A796C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A7970: ; // 0x22a7970
|
|
/* 022A7970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7974 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7974 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A7974 */ if (_t10) goto L_022A7994; else goto L_022A7978;
|
|
L_022A7978: ; // 0x22a7978
|
|
/* 022A7978 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A797C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A797C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7980 */ cpu->ctr = cpu->r[0];
|
|
/* 022A7984 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7988 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A798C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7990 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7990 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A7990 */ if (_t14) goto L_022A7994; else goto L_022A7998;
|
|
L_022A7994: ; // 0x22a7994
|
|
/* 022A7994 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7998: ; // 0x22a7998
|
|
/* 022A7998 */ _t15 = cpu->r[30] + 0x000000D8u;
|
|
/* 022A7998 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A799C */ cpu->r[5] = cpu->r[30] + 0x00000140u;
|
|
/* 022A79A0 */ _t16 = cpu->r[30] + 0x00000070u;
|
|
/* 022A79A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A79A4 */ _t17 = cpu->r[31] + 0x00001340u;
|
|
/* 022A79A4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022A79A8 */ Gambit_fn_022494D8(cpu);
|
|
/* 022A79AC */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A79AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A79B0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A79B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A79B4 */ cpu->lr = cpu->r[0];
|
|
/* 022A79B8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A79B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A79BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A79C0 */ return;
|
|
}
|
|
|
|
// fn_022A7928 @ 0x22a7928
|
|
void Gambit_fn_022A7928(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7928: ; // 0x22a7928
|
|
/* 022A7928 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7928 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7928 */ cpu->r[1] = _t0;
|
|
/* 022A792C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A792C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7930 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7934 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7934 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7938 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7938 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A793C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7940 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7944 */ _t4 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7944 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7944 */ cpu->r[11] = _t4;
|
|
/* 022A7948 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A794C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A7954 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7958 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7958 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A7958 */ if (_t6) goto L_022A795C; else goto L_022A7970;
|
|
L_022A795C: ; // 0x22a795c
|
|
/* 022A795C */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7960 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7964 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7968 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7968 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022A796C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022A796C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A7970: ; // 0x22a7970
|
|
/* 022A7970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7974 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7974 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A7974 */ if (_t10) goto L_022A7994; else goto L_022A7978;
|
|
L_022A7978: ; // 0x22a7978
|
|
/* 022A7978 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A797C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A797C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7980 */ cpu->ctr = cpu->r[0];
|
|
/* 022A7984 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7988 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A798C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7990 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7990 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A7990 */ if (_t14) goto L_022A7994; else goto L_022A7998;
|
|
L_022A7994: ; // 0x22a7994
|
|
/* 022A7994 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7998: ; // 0x22a7998
|
|
/* 022A7998 */ _t15 = cpu->r[30] + 0x000000D8u;
|
|
/* 022A7998 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A799C */ cpu->r[5] = cpu->r[30] + 0x00000140u;
|
|
/* 022A79A0 */ _t16 = cpu->r[30] + 0x00000070u;
|
|
/* 022A79A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A79A4 */ _t17 = cpu->r[31] + 0x00001340u;
|
|
/* 022A79A4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022A79A8 */ Gambit_fn_022494D8(cpu);
|
|
/* 022A79AC */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A79AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A79B0 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A79B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A79B4 */ cpu->lr = cpu->r[0];
|
|
/* 022A79B8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A79B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A79BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A79C0 */ return;
|
|
}
|
|
|
|
// fn_022A79C4 @ 0x22a79c4
|
|
void Gambit_fn_022A79C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022A79C4: ; // 0x22a79c4
|
|
/* 022A79C4 */ cpu->r[0] = cpu->lr;
|
|
/* 022A79C8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022A79C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A79C8 */ cpu->r[1] = _t0;
|
|
/* 022A79CC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A79CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A79D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A79D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A79D8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 022A79D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A79DC */ Gambit_fn_02245E6C(cpu);
|
|
/* 022A79E0 */ cpu->r[0] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022A79E4 */ _t3 = cpu->r[31] + 0x000001C0u;
|
|
/* 022A79E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A79E8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022A79EC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022A79EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022A79F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022A79F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A79F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022A79F8 */ Gambit_fn_02245FD8(cpu);
|
|
/* 022A79FC */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 022A79FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7A00 */ cpu->lr = cpu->r[0];
|
|
/* 022A7A04 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7A04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7A08 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022A7A0C */ return;
|
|
}
|
|
|
|
// fn_022A79C8 @ 0x22a79c8
|
|
void Gambit_fn_022A79C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022A79C8: ; // 0x22a79c8
|
|
/* 022A79C8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022A79C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A79C8 */ cpu->r[1] = _t0;
|
|
/* 022A79CC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A79CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A79D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A79D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A79D8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 022A79D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A79DC */ Gambit_fn_02245E6C(cpu);
|
|
/* 022A79E0 */ cpu->r[0] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022A79E4 */ _t3 = cpu->r[31] + 0x000001C0u;
|
|
/* 022A79E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A79E8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022A79EC */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022A79EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022A79F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022A79F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A79F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022A79F8 */ Gambit_fn_02245FD8(cpu);
|
|
/* 022A79FC */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 022A79FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7A00 */ cpu->lr = cpu->r[0];
|
|
/* 022A7A04 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7A04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7A08 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022A7A0C */ return;
|
|
}
|
|
|
|
// fn_022A7A10 @ 0x22a7a10
|
|
void Gambit_fn_022A7A10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A7A10: ; // 0x22a7a10
|
|
/* 022A7A10 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7A14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7A14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7A14 */ cpu->r[1] = _t0;
|
|
/* 022A7A18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7A18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7A1C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7A20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7A20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7A24 */ Gambit_fn_022A7810(cpu);
|
|
/* 022A7A28 */ _t3 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022A7A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7A2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A7A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7A30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7A30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A7A30 */ if (_t5) goto L_022A7A34; else goto L_022A7A3C;
|
|
L_022A7A34: ; // 0x22a7a34
|
|
/* 022A7A34 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A38 */ Gambit_fn_022A7904(cpu);
|
|
L_022A7A3C: ; // 0x22a7a3c
|
|
/* 022A7A3C */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A7A3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7A44 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7A44 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A7A44 */ if (_t8) goto L_022A7A4C; else goto L_022A7A48;
|
|
L_022A7A48: ; // 0x22a7a48
|
|
/* 022A7A48 */ Gambit_fn_02248284(cpu);
|
|
L_022A7A4C: ; // 0x22a7a4c
|
|
/* 022A7A4C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A50 */ Gambit_fn_022A7924(cpu);
|
|
/* 022A7A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A58 */ Gambit_fn_022A79C4(cpu);
|
|
/* 022A7A5C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A7A60 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A7A64 */ cpu->lr = cpu->r[0];
|
|
/* 022A7A68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7A6C */ return;
|
|
}
|
|
|
|
// fn_022A7A14 @ 0x22a7a14
|
|
void Gambit_fn_022A7A14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A7A14: ; // 0x22a7a14
|
|
/* 022A7A14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7A14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7A14 */ cpu->r[1] = _t0;
|
|
/* 022A7A18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7A18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7A1C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7A20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7A20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7A24 */ Gambit_fn_022A7810(cpu);
|
|
/* 022A7A28 */ _t3 = cpu->r[31] + 0x0000009Cu;
|
|
/* 022A7A28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7A2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A7A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7A30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7A30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A7A30 */ if (_t5) goto L_022A7A34; else goto L_022A7A3C;
|
|
L_022A7A34: ; // 0x22a7a34
|
|
/* 022A7A34 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A38 */ Gambit_fn_022A7904(cpu);
|
|
L_022A7A3C: ; // 0x22a7a3c
|
|
/* 022A7A3C */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A7A3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7A44 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7A44 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A7A44 */ if (_t8) goto L_022A7A4C; else goto L_022A7A48;
|
|
L_022A7A48: ; // 0x22a7a48
|
|
/* 022A7A48 */ Gambit_fn_02248284(cpu);
|
|
L_022A7A4C: ; // 0x22a7a4c
|
|
/* 022A7A4C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A50 */ Gambit_fn_022A7924(cpu);
|
|
/* 022A7A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7A58 */ Gambit_fn_022A79C4(cpu);
|
|
/* 022A7A5C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7A5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A7A60 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A7A64 */ cpu->lr = cpu->r[0];
|
|
/* 022A7A68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7A6C */ return;
|
|
}
|
|
|
|
// fn_022A7A74 @ 0x22a7a74
|
|
void Gambit_fn_022A7A74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022A7A74: ; // 0x22a7a74
|
|
/* 022A7A74 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022A7A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7A74 */ cpu->r[1] = _t0;
|
|
/* 022A7A78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7A7C */ cpu->r[12] = cpu->r[12] + 0x00001338u;
|
|
/* 022A7A80 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A7A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7A84 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022A7A84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7A88 */ /* nop */
|
|
/* 022A7A8C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7A90 */ cpu->r[12] = cpu->r[12] + 0x00001330u;
|
|
/* 022A7A94 */ /* nop */
|
|
/* 022A7A98 */ /* nop */
|
|
/* 022A7A9C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7AA0 */ cpu->r[12] = cpu->r[12] + 0x00001340u;
|
|
/* 022A7AA4 */ /* nop */
|
|
/* 022A7AA8 */ /* nop */
|
|
/* 022A7AAC */ /* nop */
|
|
/* 022A7AB0 */ /* nop */
|
|
/* 022A7AB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7AB8 */ /* nop */
|
|
/* 022A7ABC */ cpu->r[4] = cpu->r[31] + 0x00000140u;
|
|
/* 022A7AC0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7AC4 */ /* nop */
|
|
/* 022A7AC8 */ Gambit_fn_021620C4(cpu);
|
|
/* 022A7ACC */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 022A7ACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7AD0 */ _t4 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022A7AD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022A7AD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7AD8 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 022A7ADC */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 022A7AE0 */ _t5 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022A7AE0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022A7AE4 */ Gambit_fn_02C69510(cpu);
|
|
/* 022A7AE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7AEC */ cpu->r[4] = 0x00000003u;
|
|
/* 022A7AF0 */ Gambit_fn_02980304(cpu);
|
|
/* 022A7AF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7AF8 */ Gambit_fn_02980318(cpu);
|
|
/* 022A7AFC */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 022A7AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7B00 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A7B00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7B04 */ cpu->lr = cpu->r[0];
|
|
/* 022A7B08 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022A7B0C */ return;
|
|
}
|
|
|
|
// fn_022A7B10 @ 0x22a7b10
|
|
void Gambit_fn_022A7B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022A7A70: ; // 0x22a7a70
|
|
/* 022A7A70 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7A74 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022A7A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7A74 */ cpu->r[1] = _t0;
|
|
/* 022A7A78 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7A7C */ cpu->r[12] = cpu->r[12] + 0x00001338u;
|
|
/* 022A7A80 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A7A80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7A84 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 022A7A84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7A88 */ /* nop */
|
|
/* 022A7A8C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7A90 */ cpu->r[12] = cpu->r[12] + 0x00001330u;
|
|
/* 022A7A94 */ /* nop */
|
|
/* 022A7A98 */ /* nop */
|
|
/* 022A7A9C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7AA0 */ cpu->r[12] = cpu->r[12] + 0x00001340u;
|
|
/* 022A7AA4 */ /* nop */
|
|
/* 022A7AA8 */ /* nop */
|
|
/* 022A7AAC */ /* nop */
|
|
/* 022A7AB0 */ /* nop */
|
|
/* 022A7AB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7AB8 */ /* nop */
|
|
/* 022A7ABC */ cpu->r[4] = cpu->r[31] + 0x00000140u;
|
|
/* 022A7AC0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7AC4 */ /* nop */
|
|
/* 022A7AC8 */ Gambit_fn_021620C4(cpu);
|
|
/* 022A7ACC */ _t3 = cpu->r[31] + 0x00000008u;
|
|
/* 022A7ACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7AD0 */ _t4 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022A7AD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022A7AD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7AD8 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 022A7ADC */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 022A7AE0 */ _t5 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022A7AE0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022A7AE4 */ Gambit_fn_02C69510(cpu);
|
|
/* 022A7AE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7AEC */ cpu->r[4] = 0x00000003u;
|
|
/* 022A7AF0 */ Gambit_fn_02980304(cpu);
|
|
/* 022A7AF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7AF8 */ Gambit_fn_02980318(cpu);
|
|
/* 022A7AFC */ _t6 = cpu->r[1] + 0x00000044u;
|
|
/* 022A7AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A7B00 */ _t7 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A7B00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A7B04 */ cpu->lr = cpu->r[0];
|
|
/* 022A7B08 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022A7B0C */ return;
|
|
L_022A7B10: ; // 0x22a7b10
|
|
/* 022A7B10 */ goto L_022A7A70;
|
|
}
|
|
|
|
// fn_022A7B14 @ 0x22a7b14
|
|
void Gambit_fn_022A7B14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_022A7B14: ; // 0x22a7b14
|
|
/* 022A7B14 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022A7B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7B14 */ cpu->r[1] = _t0;
|
|
/* 022A7B18 */ /* nop */
|
|
/* 022A7B1C */ cpu->r[0] = cpu->lr;
|
|
/* 022A7B20 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022A7B20 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A7B24 */ cpu->r[29] = cpu->r[4];
|
|
/* 022A7B28 */ cpu->r[28] = cpu->r[3];
|
|
/* 022A7B2C */ _t2 = cpu->r[3] + 0x000001BCu;
|
|
/* 022A7B2C */ cpu->r[24] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A7B30 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7B34 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022A7B38 */ _t3 = cpu->r[26] + 0x00000128u;
|
|
/* 022A7B38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7B38 */ cpu->r[26] = _t3;
|
|
/* 022A7B3C */ cpu->r[25] = 0x101D0000u;
|
|
/* 022A7B40 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7B44 */ cpu->r[27] = 0x10060000u;
|
|
/* 022A7B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A7B4C */ cpu->r[27] = cpu->r[27] + 0x000013F8u;
|
|
/* 022A7B50 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7B50 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A7B50 */ if (_t5) goto L_022A7B54; else goto L_022A7B60;
|
|
L_022A7B54: ; // 0x22a7b54
|
|
/* 022A7B54 */ _t6 = cpu->r[25] + 0x00000168u;
|
|
/* 022A7B54 */ rbrew_write32(cpu->mem, _t6, cpu->r[27]);
|
|
/* 022A7B58 */ cpu->r[12] = 0x00000001u;
|
|
/* 022A7B5C */ _t7 = cpu->r[26] + 0x00000000u;
|
|
/* 022A7B5C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
L_022A7B60: ; // 0x22a7b60
|
|
/* 022A7B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7B64 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7B64 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A7B64 */ if (_t9) goto L_022A7B88; else goto L_022A7B68;
|
|
L_022A7B68: ; // 0x22a7b68
|
|
/* 022A7B68 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 022A7B68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A7B6C */ _t11 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022A7B6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A7B70 */ cpu->ctr = cpu->r[0];
|
|
/* 022A7B74 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7B78 */ cpu->r[4] = cpu->r[25] + 0x00000168u;
|
|
/* 022A7B7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7B84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7B84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A7B84 */ if (_t13) goto L_022A7B88; else goto L_022A7B8C;
|
|
L_022A7B88: ; // 0x22a7b88
|
|
/* 022A7B88 */ cpu->r[30] = 0x00000000u;
|
|
L_022A7B8C: ; // 0x22a7b8c
|
|
/* 022A7B8C */ cpu->r[3] = cpu->r[28];
|
|
/* 022A7B90 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7B94 */ _t14 = cpu->r[26] + 0x00000000u;
|
|
/* 022A7B94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A7B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7B9C */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7BA0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7BA0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A7BA0 */ if (_t16) goto L_022A7BA4; else goto L_022A7BB0;
|
|
L_022A7BA4: ; // 0x22a7ba4
|
|
/* 022A7BA4 */ _t17 = cpu->r[25] + 0x00000168u;
|
|
/* 022A7BA4 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 022A7BA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A7BAC */ _t18 = cpu->r[26] + 0x00000000u;
|
|
/* 022A7BAC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_022A7BB0: ; // 0x22a7bb0
|
|
/* 022A7BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7BB4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7BB4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022A7BB4 */ if (_t20) goto L_022A7BD8; else goto L_022A7BB8;
|
|
L_022A7BB8: ; // 0x22a7bb8
|
|
/* 022A7BB8 */ _t21 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7BB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A7BBC */ _t22 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022A7BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A7BC0 */ cpu->ctr = cpu->r[0];
|
|
/* 022A7BC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7BC8 */ cpu->r[4] = cpu->r[25] + 0x00000168u;
|
|
/* 022A7BCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7BD4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7BD4 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022A7BD4 */ if (_t24) goto L_022A7BD8; else goto L_022A7BDC;
|
|
L_022A7BD8: ; // 0x22a7bd8
|
|
/* 022A7BD8 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7BDC: ; // 0x22a7bdc
|
|
/* 022A7BDC */ _t25 = cpu->r[30] + 0x00000FD4u;
|
|
/* 022A7BDC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022A7BE0 */ cpu->r[0] = cpu->r[29] + 0x00000244u;
|
|
/* 022A7BE4 */ _t26 = cpu->r[31] + 0x00001034u;
|
|
/* 022A7BE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022A7BE8 */ cpu->r[11] = cpu->r[28] + 0x00000140u;
|
|
/* 022A7BEC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7BEC */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022A7BF0 */ cpu->r[0] = cpu->r[24] + 0x00000008u;
|
|
/* 022A7BF4 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 022A7BF4 */ rbrew_write32(cpu->mem, _t28, cpu->r[11]);
|
|
/* 022A7BF8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 022A7BFC */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 022A7BFC */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022A7C00 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7C00 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022A7C04 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7C08 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A7C08 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 022A7C0C */ Gambit_fn_022BA208(cpu);
|
|
/* 022A7C10 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A7C14 */ _t32 = cpu->r[9] + 0x0000164Cu;
|
|
/* 022A7C14 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022A7C18 */ cpu->r[7] = 0x00000001u;
|
|
/* 022A7C1C */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 022A7C20 */ cpu->f[1] = cpu->f[2];
|
|
/* 022A7C24 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7C24 */ rbrew_write32(cpu->mem, _t33, cpu->r[7]);
|
|
/* 022A7C28 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022A7C2C */ cpu->r[3] = cpu->r[29];
|
|
/* 022A7C30 */ Gambit_fn_025BD378(cpu);
|
|
/* 022A7C34 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022A7C38 */ cpu->r[4] = 0x00000002u;
|
|
/* 022A7C3C */ Gambit_fn_0229CFB0(cpu);
|
|
/* 022A7C40 */ /* nop */
|
|
/* 022A7C44 */ _t34 = cpu->r[1] + 0x00000054u;
|
|
/* 022A7C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022A7C48 */ cpu->lr = cpu->r[0];
|
|
/* 022A7C4C */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022A7C50 */ return;
|
|
}
|
|
|
|
// fn_022A7C54 @ 0x22a7c54
|
|
void Gambit_fn_022A7C54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7C54: ; // 0x22a7c54
|
|
/* 022A7C54 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7C58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7C58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7C58 */ cpu->r[1] = _t0;
|
|
/* 022A7C5C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7C5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7C60 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7C60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7C64 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A7C68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7C68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A7C6C */ _t4 = cpu->r[8] + 0xFFFFD9C8u;
|
|
/* 022A7C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7C6C */ cpu->r[8] = _t4;
|
|
/* 022A7C70 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7C74 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7C74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A7C78 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7C7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7C80 */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 022A7C84 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7C84 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022A7C84 */ if (_t7) goto L_022A7C88; else goto L_022A7C9C;
|
|
L_022A7C88: ; // 0x22a7c88
|
|
/* 022A7C88 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7C8C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7C90 */ cpu->r[0] = cpu->r[0] + 0x000013C8u;
|
|
/* 022A7C94 */ _t8 = cpu->r[8] + 0x00000000u;
|
|
/* 022A7C94 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 022A7C98 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7C98 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_022A7C9C: ; // 0x22a7c9c
|
|
/* 022A7C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7CA0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CA0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022A7CA0 */ if (_t11) goto L_022A7CD0; else goto L_022A7CA4;
|
|
L_022A7CA4: ; // 0x22a7ca4
|
|
/* 022A7CA4 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 022A7CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7CA8 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 022A7CA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A7CAC */ cpu->ctr = cpu->r[10];
|
|
/* 022A7CB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7CBC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CBC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022A7CBC */ if (_t15) goto L_022A7CD0; else goto L_022A7CC0;
|
|
L_022A7CC0: ; // 0x22a7cc0
|
|
/* 022A7CC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022A7CC4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A7CC4 */ if (_t17) goto L_022A7CD0; else goto L_022A7CC8;
|
|
L_022A7CC8: ; // 0x22a7cc8
|
|
/* 022A7CC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7CCC */ Gambit_fn_022A7B14(cpu);
|
|
L_022A7CD0: ; // 0x22a7cd0
|
|
/* 022A7CD0 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A7CD4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7CD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A7CD8 */ cpu->lr = cpu->r[0];
|
|
/* 022A7CDC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A7CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7CE4 */ return;
|
|
}
|
|
|
|
// fn_022A7C58 @ 0x22a7c58
|
|
void Gambit_fn_022A7C58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022A7C58: ; // 0x22a7c58
|
|
/* 022A7C58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7C58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7C58 */ cpu->r[1] = _t0;
|
|
/* 022A7C5C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7C5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A7C60 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7C60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A7C64 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A7C68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7C68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A7C6C */ _t4 = cpu->r[8] + 0xFFFFD9C8u;
|
|
/* 022A7C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A7C6C */ cpu->r[8] = _t4;
|
|
/* 022A7C70 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7C74 */ _t5 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7C74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A7C78 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7C7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7C80 */ cpu->r[4] = cpu->r[4] + 0xFFFFE310u;
|
|
/* 022A7C84 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7C84 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022A7C84 */ if (_t7) goto L_022A7C88; else goto L_022A7C9C;
|
|
L_022A7C88: ; // 0x22a7c88
|
|
/* 022A7C88 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7C8C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7C90 */ cpu->r[0] = cpu->r[0] + 0x000013C8u;
|
|
/* 022A7C94 */ _t8 = cpu->r[8] + 0x00000000u;
|
|
/* 022A7C94 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 022A7C98 */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7C98 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_022A7C9C: ; // 0x22a7c9c
|
|
/* 022A7C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7CA0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CA0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022A7CA0 */ if (_t11) goto L_022A7CD0; else goto L_022A7CA4;
|
|
L_022A7CA4: ; // 0x22a7ca4
|
|
/* 022A7CA4 */ _t12 = cpu->r[31] + 0x00000004u;
|
|
/* 022A7CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A7CA8 */ _t13 = cpu->r[12] + 0x00000014u;
|
|
/* 022A7CA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A7CAC */ cpu->ctr = cpu->r[10];
|
|
/* 022A7CB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7CBC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CBC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022A7CBC */ if (_t15) goto L_022A7CD0; else goto L_022A7CC0;
|
|
L_022A7CC0: ; // 0x22a7cc0
|
|
/* 022A7CC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022A7CC4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7CC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A7CC4 */ if (_t17) goto L_022A7CD0; else goto L_022A7CC8;
|
|
L_022A7CC8: ; // 0x22a7cc8
|
|
/* 022A7CC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7CCC */ Gambit_fn_022A7B14(cpu);
|
|
L_022A7CD0: ; // 0x22a7cd0
|
|
/* 022A7CD0 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A7CD4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A7CD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A7CD8 */ cpu->lr = cpu->r[0];
|
|
/* 022A7CDC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A7CE0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7CE4 */ return;
|
|
}
|
|
|
|
// fn_022A7CE8 @ 0x22a7ce8
|
|
void Gambit_fn_022A7CE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022A7CE8: ; // 0x22a7ce8
|
|
/* 022A7CE8 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7CEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7CEC */ cpu->r[1] = _t0;
|
|
/* 022A7CF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7CF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7CF8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7CFC */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7D00 */ _t3 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7D00 */ cpu->r[11] = _t3;
|
|
/* 022A7D04 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7D08 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7D10 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7D14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A7D14 */ if (_t5) goto L_022A7D18; else goto L_022A7D2C;
|
|
L_022A7D18: ; // 0x22a7d18
|
|
/* 022A7D18 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7D1C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7D20 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7D24 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7D24 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 022A7D28 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7D28 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_022A7D2C: ; // 0x22a7d2c
|
|
/* 022A7D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7D30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A7D30 */ if (_t9) goto L_022A7D50; else goto L_022A7D34;
|
|
L_022A7D34: ; // 0x22a7d34
|
|
/* 022A7D34 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7D34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A7D38 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A7D38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A7D3C */ cpu->ctr = cpu->r[12];
|
|
/* 022A7D40 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7D44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7D48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7D4C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D4C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A7D4C */ if (_t13) goto L_022A7D50; else goto L_022A7D54;
|
|
L_022A7D50: ; // 0x22a7d50
|
|
/* 022A7D50 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7D54: ; // 0x22a7d54
|
|
/* 022A7D54 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7D54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A7D58 */ _t15 = cpu->r[31] + 0x00000F74u;
|
|
/* 022A7D58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A7D5C */ cpu->lr = cpu->r[0];
|
|
/* 022A7D60 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7D60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A7D64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7D68 */ return;
|
|
}
|
|
|
|
// fn_022A7CEC @ 0x22a7cec
|
|
void Gambit_fn_022A7CEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022A7CEC: ; // 0x22a7cec
|
|
/* 022A7CEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A7CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7CEC */ cpu->r[1] = _t0;
|
|
/* 022A7CF0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7CF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A7CF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7CF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A7CF8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A7CFC */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A7D00 */ _t3 = cpu->r[11] + 0x00000128u;
|
|
/* 022A7D00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A7D00 */ cpu->r[11] = _t3;
|
|
/* 022A7D04 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A7D08 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A7D10 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A7D14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A7D14 */ if (_t5) goto L_022A7D18; else goto L_022A7D2C;
|
|
L_022A7D18: ; // 0x22a7d18
|
|
/* 022A7D18 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7D1C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A7D20 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A7D24 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A7D24 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 022A7D28 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022A7D28 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_022A7D2C: ; // 0x22a7d2c
|
|
/* 022A7D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7D30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A7D30 */ if (_t9) goto L_022A7D50; else goto L_022A7D34;
|
|
L_022A7D34: ; // 0x22a7d34
|
|
/* 022A7D34 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7D34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A7D38 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A7D38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A7D3C */ cpu->ctr = cpu->r[12];
|
|
/* 022A7D40 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7D44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A7D48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A7D4C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7D4C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A7D4C */ if (_t13) goto L_022A7D50; else goto L_022A7D54;
|
|
L_022A7D50: ; // 0x22a7d50
|
|
/* 022A7D50 */ cpu->r[31] = 0x00000000u;
|
|
L_022A7D54: ; // 0x22a7d54
|
|
/* 022A7D54 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7D54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A7D58 */ _t15 = cpu->r[31] + 0x00000F74u;
|
|
/* 022A7D58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A7D5C */ cpu->lr = cpu->r[0];
|
|
/* 022A7D60 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7D60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A7D64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A7D68 */ return;
|
|
}
|
|
|
|
// fn_022A7D6C @ 0x22a7d6c
|
|
void Gambit_fn_022A7D6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198;
|
|
|
|
L_022A7D6C: ; // 0x22a7d6c
|
|
/* 022A7D6C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022A7D6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A7D6C */ cpu->r[1] = _t0;
|
|
/* 022A7D70 */ cpu->r[0] = cpu->lr;
|
|
/* 022A7D74 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 022A7D74 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 022A7D78 */ /* nop */
|
|
/* 022A7D7C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022A7D7C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022A7D80 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022A7D80 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022A7D84 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022A7D84 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022A7D88 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A7D88 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022A7D8C */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 022A7D8C */ rbrew_write_f64(cpu->mem, _t6, cpu->f[29]);
|
|
/* 022A7D90 */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A7D90 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022A7D94 */ /* nop */
|
|
/* 022A7D98 */ _t8 = cpu->r[1] + 0x00000030u;
|
|
/* 022A7D98 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 022A7D9C */ /* nop */
|
|
/* 022A7DA0 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 022A7DA0 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 022A7DA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7DA8 */ _t10 = cpu->r[1] + 0x00000040u;
|
|
/* 022A7DA8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 022A7DAC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7DAC */ _t12 = _t11 & 0x00000001u;
|
|
/* 022A7DAC */ if (_t12) goto L_022A7DB0; else goto L_022A7DC0;
|
|
L_022A7DB0: ; // 0x22a7db0
|
|
/* 022A7DB0 */ cpu->r[3] = 0x000013B0u;
|
|
/* 022A7DB4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7DB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A7DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A7DBC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7DBC */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A7DBC */ if (_t14) goto L_022A8434; else goto L_022A7DC0;
|
|
L_022A7DC0: ; // 0x22a7dc0
|
|
/* 022A7DC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A7DC4 */ Gambit_fn_02318964(cpu);
|
|
/* 022A7DC8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A7DCC */ cpu->r[29] = cpu->r[31] + 0x00000CF0u;
|
|
/* 022A7DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A7DD0 */ cpu->r[0] = cpu->r[0] + 0x000014DCu;
|
|
/* 022A7DD4 */ cpu->r[30] = 0x10060000u;
|
|
/* 022A7DD8 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 022A7DD8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022A7DDC */ cpu->r[30] = cpu->r[30] + 0x00001474u;
|
|
/* 022A7DE0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7DE0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A7DE0 */ if (_t17) goto L_022A7DE4; else goto L_022A7DF4;
|
|
L_022A7DE4: ; // 0x22a7de4
|
|
/* 022A7DE4 */ cpu->r[3] = 0x00000058u;
|
|
/* 022A7DE8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7DEC */ cpu->r[29] = cpu->r[3];
|
|
/* 022A7DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A7DF0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7DF0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A7DF0 */ if (_t19) goto L_022A7E24; else goto L_022A7DF4;
|
|
L_022A7DF4: ; // 0x22a7df4
|
|
/* 022A7DF4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7DF8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7DFC */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7E00 */ cpu->r[5] = cpu->r[5] + 0x0000173Cu;
|
|
/* 022A7E04 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7E08 */ cpu->r[6] = cpu->r[6] + 0x0000169Cu;
|
|
/* 022A7E0C */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7E10 */ cpu->r[3] = cpu->r[29];
|
|
/* 022A7E14 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7E18 */ _t20 = cpu->r[29] + 0x00000000u;
|
|
/* 022A7E18 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 022A7E1C */ cpu->r[9] = 0x00000000u;
|
|
/* 022A7E20 */ _t21 = cpu->r[29] + 0x00000054u;
|
|
/* 022A7E20 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[9]);
|
|
L_022A7E24: ; // 0x22a7e24
|
|
/* 022A7E24 */ cpu->r[29] = cpu->r[31] + 0x00000D48u;
|
|
/* 022A7E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A7E28 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7E28 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A7E28 */ if (_t23) goto L_022A7E2C; else goto L_022A7E3C;
|
|
L_022A7E2C: ; // 0x22a7e2c
|
|
/* 022A7E2C */ cpu->r[3] = 0x00000058u;
|
|
/* 022A7E30 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7E34 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A7E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A7E38 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7E38 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A7E38 */ if (_t25) goto L_022A7E6C; else goto L_022A7E3C;
|
|
L_022A7E3C: ; // 0x22a7e3c
|
|
/* 022A7E3C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7E40 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7E44 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7E48 */ cpu->r[5] = cpu->r[5] + 0x00001704u;
|
|
/* 022A7E4C */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7E50 */ cpu->r[6] = cpu->r[6] + 0x0000174Cu;
|
|
/* 022A7E54 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7E58 */ cpu->r[3] = cpu->r[29];
|
|
/* 022A7E5C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7E60 */ _t26 = cpu->r[29] + 0x00000000u;
|
|
/* 022A7E60 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 022A7E64 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A7E68 */ _t27 = cpu->r[29] + 0x00000054u;
|
|
/* 022A7E68 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[0]);
|
|
L_022A7E6C: ; // 0x22a7e6c
|
|
/* 022A7E6C */ cpu->r[10] = 0x10060000u;
|
|
/* 022A7E70 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A7E74 */ _t28 = cpu->r[10] + 0x00001648u;
|
|
/* 022A7E74 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022A7E78 */ _t29 = cpu->r[8] + 0x00001650u;
|
|
/* 022A7E78 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022A7E7C */ cpu->r[29] = 0x10110000u;
|
|
/* 022A7E80 */ cpu->r[30] = cpu->r[31] + 0x00000DA0u;
|
|
/* 022A7E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7E84 */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 022A7E88 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7E88 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022A7E88 */ if (_t31) goto L_022A7E8C; else goto L_022A7E9C;
|
|
L_022A7E8C: ; // 0x22a7e8c
|
|
/* 022A7E8C */ cpu->r[3] = 0x00000060u;
|
|
/* 022A7E90 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7E94 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7E98 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7E98 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A7E98 */ if (_t33) goto L_022A7ED8; else goto L_022A7E9C;
|
|
L_022A7E9C: ; // 0x22a7e9c
|
|
/* 022A7E9C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7EA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7EA4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7EA8 */ cpu->r[5] = cpu->r[5] + 0x000016A4u;
|
|
/* 022A7EAC */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7EB0 */ cpu->r[6] = cpu->r[6] + 0x00001768u;
|
|
/* 022A7EB4 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7EB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7EBC */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7EC0 */ _t34 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A7EC0 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[30]);
|
|
/* 022A7EC4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022A7EC8 */ _t35 = cpu->r[30] + 0x00000058u;
|
|
/* 022A7EC8 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[31]);
|
|
/* 022A7ECC */ _t36 = cpu->r[7] + 0x00001654u;
|
|
/* 022A7ECC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022A7ED0 */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 022A7ED0 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
/* 022A7ED4 */ _t38 = cpu->r[30] + 0x00000054u;
|
|
/* 022A7ED4 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[13]);
|
|
L_022A7ED8: ; // 0x22a7ed8
|
|
/* 022A7ED8 */ cpu->r[30] = cpu->r[31] + 0x00000E00u;
|
|
/* 022A7ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7EDC */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7EDC */ _t40 = _t39 & 0x00000001u;
|
|
/* 022A7EDC */ if (_t40) goto L_022A7EE0; else goto L_022A7EF0;
|
|
L_022A7EE0: ; // 0x22a7ee0
|
|
/* 022A7EE0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A7EE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7EE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7EEC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7EEC */ _t42 = _t41 & 0x00000001u;
|
|
/* 022A7EEC */ if (_t42) goto L_022A7F2C; else goto L_022A7EF0;
|
|
L_022A7EF0: ; // 0x22a7ef0
|
|
/* 022A7EF0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7EF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7EF8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7EFC */ cpu->r[5] = cpu->r[5] + 0x000016B4u;
|
|
/* 022A7F00 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7F04 */ cpu->r[6] = cpu->r[6] + 0x00001774u;
|
|
/* 022A7F08 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7F0C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7F10 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7F14 */ _t43 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A7F14 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[30]);
|
|
/* 022A7F18 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A7F1C */ _t44 = cpu->r[30] + 0x00000058u;
|
|
/* 022A7F1C */ rbrew_write_f32(cpu->mem, _t44, cpu->f[31]);
|
|
/* 022A7F20 */ _t45 = cpu->r[12] + 0x00001658u;
|
|
/* 022A7F20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022A7F24 */ _t46 = cpu->r[30] + 0x00000000u;
|
|
/* 022A7F24 */ rbrew_write32(cpu->mem, _t46, cpu->r[29]);
|
|
/* 022A7F28 */ _t47 = cpu->r[30] + 0x00000054u;
|
|
/* 022A7F28 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[12]);
|
|
L_022A7F2C: ; // 0x22a7f2c
|
|
/* 022A7F2C */ cpu->r[11] = 0x10060000u;
|
|
/* 022A7F30 */ cpu->r[30] = cpu->r[31] + 0x00000E60u;
|
|
/* 022A7F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7F34 */ _t48 = cpu->r[11] + 0x0000164Cu;
|
|
/* 022A7F34 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022A7F38 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7F38 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022A7F38 */ if (_t50) goto L_022A7F3C; else goto L_022A7F4C;
|
|
L_022A7F3C: ; // 0x22a7f3c
|
|
/* 022A7F3C */ cpu->r[3] = 0x00000060u;
|
|
/* 022A7F40 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7F44 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7F48 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7F48 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022A7F48 */ if (_t52) goto L_022A7F80; else goto L_022A7F4C;
|
|
L_022A7F4C: ; // 0x22a7f4c
|
|
/* 022A7F4C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7F50 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7F54 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7F58 */ cpu->r[5] = cpu->r[5] + 0x000016ACu;
|
|
/* 022A7F5C */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7F60 */ cpu->r[6] = cpu->r[6] + 0x00001788u;
|
|
/* 022A7F64 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7F68 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7F6C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7F70 */ _t53 = cpu->r[30] + 0x00000058u;
|
|
/* 022A7F70 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[31]);
|
|
/* 022A7F74 */ _t54 = cpu->r[30] + 0x00000054u;
|
|
/* 022A7F74 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[29]);
|
|
/* 022A7F78 */ _t55 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A7F78 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[29]);
|
|
/* 022A7F7C */ _t56 = cpu->r[30] + 0x00000000u;
|
|
/* 022A7F7C */ rbrew_write32(cpu->mem, _t56, cpu->r[29]);
|
|
L_022A7F80: ; // 0x22a7f80
|
|
/* 022A7F80 */ cpu->r[30] = cpu->r[31] + 0x00000EC0u;
|
|
/* 022A7F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7F84 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7F84 */ _t58 = _t57 & 0x00000001u;
|
|
/* 022A7F84 */ if (_t58) goto L_022A7F88; else goto L_022A7F98;
|
|
L_022A7F88: ; // 0x22a7f88
|
|
/* 022A7F88 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A7F8C */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7F90 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7F94 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7F94 */ _t60 = _t59 & 0x00000001u;
|
|
/* 022A7F94 */ if (_t60) goto L_022A7FD4; else goto L_022A7F98;
|
|
L_022A7F98: ; // 0x22a7f98
|
|
/* 022A7F98 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7F9C */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7FA0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7FA4 */ cpu->r[5] = cpu->r[5] + 0x000016C4u;
|
|
/* 022A7FA8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A7FAC */ cpu->r[6] = cpu->r[6] + 0x00001794u;
|
|
/* 022A7FB0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A7FB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A7FB8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A7FBC */ _t61 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A7FBC */ rbrew_write_f32(cpu->mem, _t61, cpu->f[29]);
|
|
/* 022A7FC0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A7FC4 */ _t62 = cpu->r[30] + 0x00000058u;
|
|
/* 022A7FC4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[31]);
|
|
/* 022A7FC8 */ _t63 = cpu->r[10] + 0x0000165Cu;
|
|
/* 022A7FC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022A7FCC */ _t64 = cpu->r[30] + 0x00000000u;
|
|
/* 022A7FCC */ rbrew_write32(cpu->mem, _t64, cpu->r[29]);
|
|
/* 022A7FD0 */ _t65 = cpu->r[30] + 0x00000054u;
|
|
/* 022A7FD0 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[11]);
|
|
L_022A7FD4: ; // 0x22a7fd4
|
|
/* 022A7FD4 */ cpu->r[30] = cpu->r[31] + 0x00000F20u;
|
|
/* 022A7FD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7FD8 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7FD8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 022A7FD8 */ if (_t67) goto L_022A7FDC; else goto L_022A7FEC;
|
|
L_022A7FDC: ; // 0x22a7fdc
|
|
/* 022A7FDC */ cpu->r[3] = 0x00000060u;
|
|
/* 022A7FE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A7FE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A7FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A7FE8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A7FE8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022A7FE8 */ if (_t69) goto L_022A8030; else goto L_022A7FEC;
|
|
L_022A7FEC: ; // 0x22a7fec
|
|
/* 022A7FEC */ cpu->r[5] = 0x10060000u;
|
|
/* 022A7FF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A7FF4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A7FF8 */ cpu->r[5] = cpu->r[5] + 0x0000171Cu;
|
|
/* 022A7FFC */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8000 */ cpu->r[6] = cpu->r[6] + 0x000017A8u;
|
|
/* 022A8004 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8008 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A800C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8010 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A8014 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8014 */ rbrew_write32(cpu->mem, _t70, cpu->r[29]);
|
|
/* 022A8018 */ cpu->r[7] = 0x10060000u;
|
|
/* 022A801C */ _t71 = cpu->r[8] + 0x00001660u;
|
|
/* 022A801C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022A8020 */ _t72 = cpu->r[7] + 0x00001664u;
|
|
/* 022A8020 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022A8024 */ _t73 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8024 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[10]);
|
|
/* 022A8028 */ _t74 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A8028 */ rbrew_write_f32(cpu->mem, _t74, cpu->f[9]);
|
|
/* 022A802C */ _t75 = cpu->r[30] + 0x00000058u;
|
|
/* 022A802C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[31]);
|
|
L_022A8030: ; // 0x22a8030
|
|
/* 022A8030 */ cpu->r[30] = cpu->r[31] + 0x00000F80u;
|
|
/* 022A8030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8034 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8034 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022A8034 */ if (_t77) goto L_022A8038; else goto L_022A8048;
|
|
L_022A8038: ; // 0x22a8038
|
|
/* 022A8038 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A803C */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8040 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8044 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8044 */ _t79 = _t78 & 0x00000001u;
|
|
/* 022A8044 */ if (_t79) goto L_022A8084; else goto L_022A8048;
|
|
L_022A8048: ; // 0x22a8048
|
|
/* 022A8048 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A804C */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8050 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8054 */ cpu->r[5] = cpu->r[5] + 0x000016D4u;
|
|
/* 022A8058 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A805C */ cpu->r[6] = cpu->r[6] + 0x000017C8u;
|
|
/* 022A8060 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8064 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8068 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A806C */ _t80 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A806C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[30]);
|
|
/* 022A8070 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A8074 */ _t81 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8074 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[31]);
|
|
/* 022A8078 */ _t82 = cpu->r[12] + 0x00001654u;
|
|
/* 022A8078 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022A807C */ _t83 = cpu->r[30] + 0x00000000u;
|
|
/* 022A807C */ rbrew_write32(cpu->mem, _t83, cpu->r[29]);
|
|
/* 022A8080 */ _t84 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8080 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[0]);
|
|
L_022A8084: ; // 0x22a8084
|
|
/* 022A8084 */ cpu->r[30] = cpu->r[31] + 0x00000FE0u;
|
|
/* 022A8084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8088 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8088 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022A8088 */ if (_t86) goto L_022A808C; else goto L_022A809C;
|
|
L_022A808C: ; // 0x22a808c
|
|
/* 022A808C */ cpu->r[3] = 0x00000060u;
|
|
/* 022A8090 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8094 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8098 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8098 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022A8098 */ if (_t88) goto L_022A80D8; else goto L_022A809C;
|
|
L_022A809C: ; // 0x22a809c
|
|
/* 022A809C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A80A0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A80A4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A80A8 */ cpu->r[5] = cpu->r[5] + 0x000017DCu;
|
|
/* 022A80AC */ cpu->r[8] = 0x00000000u;
|
|
/* 022A80B0 */ cpu->r[6] = cpu->r[6] + 0x000017F0u;
|
|
/* 022A80B4 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A80B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A80BC */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A80C0 */ _t89 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A80C0 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[30]);
|
|
/* 022A80C4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022A80C8 */ _t90 = cpu->r[30] + 0x00000058u;
|
|
/* 022A80C8 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[31]);
|
|
/* 022A80CC */ _t91 = cpu->r[11] + 0x00001664u;
|
|
/* 022A80CC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022A80D0 */ _t92 = cpu->r[30] + 0x00000000u;
|
|
/* 022A80D0 */ rbrew_write32(cpu->mem, _t92, cpu->r[29]);
|
|
/* 022A80D4 */ _t93 = cpu->r[30] + 0x00000054u;
|
|
/* 022A80D4 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[12]);
|
|
L_022A80D8: ; // 0x22a80d8
|
|
/* 022A80D8 */ cpu->r[30] = cpu->r[31] + 0x00001040u;
|
|
/* 022A80D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A80DC */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A80DC */ _t95 = _t94 & 0x00000001u;
|
|
/* 022A80DC */ if (_t95) goto L_022A80E0; else goto L_022A80F0;
|
|
L_022A80E0: ; // 0x22a80e0
|
|
/* 022A80E0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A80E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A80E8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A80E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A80EC */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A80EC */ _t97 = _t96 & 0x00000001u;
|
|
/* 022A80EC */ if (_t97) goto L_022A8134; else goto L_022A80F0;
|
|
L_022A80F0: ; // 0x22a80f0
|
|
/* 022A80F0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A80F4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A80F8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A80FC */ cpu->r[5] = cpu->r[5] + 0x000016E4u;
|
|
/* 022A8100 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8104 */ cpu->r[6] = cpu->r[6] + 0x0000180Cu;
|
|
/* 022A8108 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A810C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8110 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8114 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A8118 */ _t98 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8118 */ rbrew_write32(cpu->mem, _t98, cpu->r[29]);
|
|
/* 022A811C */ cpu->r[9] = 0x10060000u;
|
|
/* 022A8120 */ _t99 = cpu->r[10] + 0x00001668u;
|
|
/* 022A8120 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022A8124 */ _t100 = cpu->r[9] + 0x0000166Cu;
|
|
/* 022A8124 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022A8128 */ _t101 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8128 */ rbrew_write_f32(cpu->mem, _t101, cpu->f[11]);
|
|
/* 022A812C */ _t102 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A812C */ rbrew_write_f32(cpu->mem, _t102, cpu->f[10]);
|
|
/* 022A8130 */ _t103 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8130 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[31]);
|
|
L_022A8134: ; // 0x22a8134
|
|
/* 022A8134 */ cpu->r[30] = cpu->r[31] + 0x000010A0u;
|
|
/* 022A8134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8138 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8138 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022A8138 */ if (_t105) goto L_022A813C; else goto L_022A814C;
|
|
L_022A813C: ; // 0x22a813c
|
|
/* 022A813C */ cpu->r[3] = 0x00000060u;
|
|
/* 022A8140 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8144 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8148 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8148 */ _t107 = _t106 & 0x00000001u;
|
|
/* 022A8148 */ if (_t107) goto L_022A8188; else goto L_022A814C;
|
|
L_022A814C: ; // 0x22a814c
|
|
/* 022A814C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A8150 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8154 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8158 */ cpu->r[5] = cpu->r[5] + 0x000016F4u;
|
|
/* 022A815C */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8160 */ cpu->r[6] = cpu->r[6] + 0x0000181Cu;
|
|
/* 022A8164 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8168 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A816C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8170 */ _t108 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A8170 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[30]);
|
|
/* 022A8174 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A8178 */ _t109 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8178 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 022A817C */ _t110 = cpu->r[8] + 0x00001670u;
|
|
/* 022A817C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t110);
|
|
/* 022A8180 */ _t111 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8180 */ rbrew_write32(cpu->mem, _t111, cpu->r[29]);
|
|
/* 022A8184 */ _t112 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8184 */ rbrew_write_f32(cpu->mem, _t112, cpu->f[9]);
|
|
L_022A8188: ; // 0x22a8188
|
|
/* 022A8188 */ cpu->r[30] = cpu->r[31] + 0x00001100u;
|
|
/* 022A8188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A818C */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A818C */ _t114 = _t113 & 0x00000001u;
|
|
/* 022A818C */ if (_t114) goto L_022A8190; else goto L_022A81A0;
|
|
L_022A8190: ; // 0x22a8190
|
|
/* 022A8190 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A8194 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8198 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A819C */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A819C */ _t116 = _t115 & 0x00000001u;
|
|
/* 022A819C */ if (_t116) goto L_022A81E4; else goto L_022A81A0;
|
|
L_022A81A0: ; // 0x22a81a0
|
|
/* 022A81A0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A81A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A81A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A81AC */ cpu->r[5] = cpu->r[5] + 0x00001830u;
|
|
/* 022A81B0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A81B4 */ cpu->r[6] = cpu->r[6] + 0x00001850u;
|
|
/* 022A81B8 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A81BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022A81C0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A81C4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022A81C8 */ _t117 = cpu->r[30] + 0x00000000u;
|
|
/* 022A81C8 */ rbrew_write32(cpu->mem, _t117, cpu->r[29]);
|
|
/* 022A81CC */ cpu->r[12] = 0x10060000u;
|
|
/* 022A81D0 */ _t118 = cpu->r[7] + 0x00001674u;
|
|
/* 022A81D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t118);
|
|
/* 022A81D4 */ _t119 = cpu->r[12] + 0x00001678u;
|
|
/* 022A81D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t119);
|
|
/* 022A81D8 */ _t120 = cpu->r[30] + 0x00000054u;
|
|
/* 022A81D8 */ rbrew_write_f32(cpu->mem, _t120, cpu->f[0]);
|
|
/* 022A81DC */ _t121 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A81DC */ rbrew_write_f32(cpu->mem, _t121, cpu->f[13]);
|
|
/* 022A81E0 */ _t122 = cpu->r[30] + 0x00000058u;
|
|
/* 022A81E0 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
L_022A81E4: ; // 0x22a81e4
|
|
/* 022A81E4 */ cpu->r[30] = cpu->r[31] + 0x00001160u;
|
|
/* 022A81E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A81E8 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A81E8 */ _t124 = _t123 & 0x00000001u;
|
|
/* 022A81E8 */ if (_t124) goto L_022A81EC; else goto L_022A81FC;
|
|
L_022A81EC: ; // 0x22a81ec
|
|
/* 022A81EC */ cpu->r[3] = 0x00000060u;
|
|
/* 022A81F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A81F4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A81F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A81F8 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A81F8 */ _t126 = _t125 & 0x00000001u;
|
|
/* 022A81F8 */ if (_t126) goto L_022A8230; else goto L_022A81FC;
|
|
L_022A81FC: ; // 0x22a81fc
|
|
/* 022A81FC */ cpu->r[5] = 0x10060000u;
|
|
/* 022A8200 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8204 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8208 */ cpu->r[5] = cpu->r[5] + 0x0000186Cu;
|
|
/* 022A820C */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8210 */ cpu->r[6] = cpu->r[6] + 0x0000188Cu;
|
|
/* 022A8214 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8218 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A821C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8220 */ _t127 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8220 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[31]);
|
|
/* 022A8224 */ _t128 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8224 */ rbrew_write_f32(cpu->mem, _t128, cpu->f[29]);
|
|
/* 022A8228 */ _t129 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A8228 */ rbrew_write_f32(cpu->mem, _t129, cpu->f[30]);
|
|
/* 022A822C */ _t130 = cpu->r[30] + 0x00000000u;
|
|
/* 022A822C */ rbrew_write32(cpu->mem, _t130, cpu->r[29]);
|
|
L_022A8230: ; // 0x22a8230
|
|
/* 022A8230 */ cpu->r[30] = cpu->r[31] + 0x000011C0u;
|
|
/* 022A8230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8234 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8234 */ _t132 = _t131 & 0x00000001u;
|
|
/* 022A8234 */ if (_t132) goto L_022A8238; else goto L_022A8248;
|
|
L_022A8238: ; // 0x22a8238
|
|
/* 022A8238 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A823C */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8240 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8244 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8244 */ _t134 = _t133 & 0x00000001u;
|
|
/* 022A8244 */ if (_t134) goto L_022A8290; else goto L_022A8248;
|
|
L_022A8248: ; // 0x22a8248
|
|
/* 022A8248 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A824C */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8250 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8254 */ cpu->r[5] = cpu->r[5] + 0x000018A8u;
|
|
/* 022A8258 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A825C */ cpu->r[6] = cpu->r[6] + 0x000018C4u;
|
|
/* 022A8260 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8264 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8268 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A826C */ cpu->r[12] = 0x10110000u;
|
|
/* 022A8270 */ cpu->r[0] = 0x00000003u;
|
|
/* 022A8274 */ cpu->r[12] = cpu->r[12] + 0x0000095Cu;
|
|
/* 022A8278 */ _t135 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8278 */ rbrew_write32(cpu->mem, _t135, cpu->r[0]);
|
|
/* 022A827C */ cpu->r[8] = 0x00000005u;
|
|
/* 022A8280 */ _t136 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8280 */ rbrew_write32(cpu->mem, _t136, cpu->r[12]);
|
|
/* 022A8284 */ cpu->r[7] = 0x00000001u;
|
|
/* 022A8288 */ _t137 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A8288 */ rbrew_write32(cpu->mem, _t137, cpu->r[8]);
|
|
/* 022A828C */ _t138 = cpu->r[30] + 0x00000058u;
|
|
/* 022A828C */ rbrew_write32(cpu->mem, _t138, cpu->r[7]);
|
|
L_022A8290: ; // 0x22a8290
|
|
/* 022A8290 */ cpu->r[30] = cpu->r[31] + 0x00001220u;
|
|
/* 022A8290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8294 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8294 */ _t140 = _t139 & 0x00000001u;
|
|
/* 022A8294 */ if (_t140) goto L_022A8298; else goto L_022A82A8;
|
|
L_022A8298: ; // 0x22a8298
|
|
/* 022A8298 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A829C */ Gambit_fn_02801A78(cpu);
|
|
/* 022A82A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A82A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A82A4 */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A82A4 */ _t142 = _t141 & 0x00000001u;
|
|
/* 022A82A4 */ if (_t142) goto L_022A82F4; else goto L_022A82A8;
|
|
L_022A82A8: ; // 0x22a82a8
|
|
/* 022A82A8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A82AC */ cpu->r[4] = cpu->r[31];
|
|
/* 022A82B0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A82B4 */ cpu->r[5] = cpu->r[5] + 0x000018D4u;
|
|
/* 022A82B8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A82BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022A82C0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A82C4 */ cpu->r[6] = cpu->r[6] + 0x000018ECu;
|
|
/* 022A82C8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A82CC */ cpu->r[11] = 0x10060000u;
|
|
/* 022A82D0 */ _t143 = cpu->r[30] + 0x00000000u;
|
|
/* 022A82D0 */ rbrew_write32(cpu->mem, _t143, cpu->r[29]);
|
|
/* 022A82D4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A82D8 */ _t144 = cpu->r[11] + 0x00001680u;
|
|
/* 022A82D8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 022A82DC */ cpu->r[10] = 0x10060000u;
|
|
/* 022A82E0 */ _t145 = cpu->r[9] + 0x0000167Cu;
|
|
/* 022A82E0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t145);
|
|
/* 022A82E4 */ _t146 = cpu->r[10] + 0x00001684u;
|
|
/* 022A82E4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022A82E8 */ _t147 = cpu->r[30] + 0x00000058u;
|
|
/* 022A82E8 */ rbrew_write_f32(cpu->mem, _t147, cpu->f[12]);
|
|
/* 022A82EC */ _t148 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A82EC */ rbrew_write_f32(cpu->mem, _t148, cpu->f[11]);
|
|
/* 022A82F0 */ _t149 = cpu->r[30] + 0x00000054u;
|
|
/* 022A82F0 */ rbrew_write_f32(cpu->mem, _t149, cpu->f[10]);
|
|
L_022A82F4: ; // 0x22a82f4
|
|
/* 022A82F4 */ cpu->r[30] = cpu->r[31] + 0x00001280u;
|
|
/* 022A82F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A82F8 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A82F8 */ _t151 = _t150 & 0x00000001u;
|
|
/* 022A82F8 */ if (_t151) goto L_022A82FC; else goto L_022A830C;
|
|
L_022A82FC: ; // 0x22a82fc
|
|
/* 022A82FC */ cpu->r[3] = 0x00000060u;
|
|
/* 022A8300 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8304 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A8308 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8308 */ _t153 = _t152 & 0x00000001u;
|
|
/* 022A8308 */ if (_t153) goto L_022A8348; else goto L_022A830C;
|
|
L_022A830C: ; // 0x22a830c
|
|
/* 022A830C */ cpu->r[5] = 0x10060000u;
|
|
/* 022A8310 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8314 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8318 */ cpu->r[5] = cpu->r[5] + 0x00001904u;
|
|
/* 022A831C */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8320 */ cpu->r[6] = cpu->r[6] + 0x00001914u;
|
|
/* 022A8324 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A8328 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A832C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8330 */ _t154 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8330 */ rbrew_write_f32(cpu->mem, _t154, cpu->f[31]);
|
|
/* 022A8334 */ cpu->r[8] = 0x10060000u;
|
|
/* 022A8338 */ _t155 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8338 */ rbrew_write32(cpu->mem, _t155, cpu->r[29]);
|
|
/* 022A833C */ _t156 = cpu->r[8] + 0x00001688u;
|
|
/* 022A833C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t156);
|
|
/* 022A8340 */ _t157 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8340 */ rbrew_write_f32(cpu->mem, _t157, cpu->f[30]);
|
|
/* 022A8344 */ _t158 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A8344 */ rbrew_write_f32(cpu->mem, _t158, cpu->f[9]);
|
|
L_022A8348: ; // 0x22a8348
|
|
/* 022A8348 */ cpu->r[30] = cpu->r[31] + 0x000012E0u;
|
|
/* 022A8348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A834C */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A834C */ _t160 = _t159 & 0x00000001u;
|
|
/* 022A834C */ if (_t160) goto L_022A8350; else goto L_022A8360;
|
|
L_022A8350: ; // 0x22a8350
|
|
/* 022A8350 */ cpu->r[3] = 0x00000070u;
|
|
/* 022A8354 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8358 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A835C */ _t161 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A835C */ _t162 = _t161 & 0x00000001u;
|
|
/* 022A835C */ if (_t162) goto L_022A83E8; else goto L_022A8360;
|
|
L_022A8360: ; // 0x22a8360
|
|
/* 022A8360 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A8364 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8368 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A836C */ cpu->r[5] = cpu->r[5] + 0x00001920u;
|
|
/* 022A8370 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8374 */ cpu->r[6] = cpu->r[6] + 0x0000172Cu;
|
|
/* 022A8378 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A837C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8380 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8384 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A8388 */ cpu->r[0] = cpu->r[0] + 0x0000157Cu;
|
|
/* 022A838C */ cpu->r[3] = cpu->r[30] + 0x00000054u;
|
|
/* 022A838C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8390 */ _t163 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8390 */ rbrew_write32(cpu->mem, _t163, cpu->r[0]);
|
|
/* 022A8394 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8394 */ _t165 = _t164 & 0x00000001u;
|
|
/* 022A8394 */ if (_t165) goto L_022A8398; else goto L_022A83A8;
|
|
L_022A8398: ; // 0x22a8398
|
|
/* 022A8398 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 022A839C */ Gambit_fn_02801A78(cpu);
|
|
/* 022A83A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A83A4 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A83A4 */ _t167 = _t166 & 0x00000001u;
|
|
/* 022A83A4 */ if (_t167) goto L_022A83E8; else goto L_022A83A8;
|
|
L_022A83A8: ; // 0x22a83a8
|
|
/* 022A83A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A83AC */ cpu->r[10] = 0x10060000u;
|
|
/* 022A83B0 */ _t168 = cpu->r[12] + 0x00001690u;
|
|
/* 022A83B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 022A83B4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A83B8 */ _t169 = cpu->r[10] + 0x0000168Cu;
|
|
/* 022A83B8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t169);
|
|
/* 022A83BC */ _t170 = cpu->r[3] + 0x00000008u;
|
|
/* 022A83BC */ rbrew_write_f32(cpu->mem, _t170, cpu->f[0]);
|
|
/* 022A83C0 */ _t171 = cpu->r[3] + 0x00000010u;
|
|
/* 022A83C0 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[13]);
|
|
/* 022A83C4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A83C8 */ _t172 = cpu->r[3] + 0x00000004u;
|
|
/* 022A83C8 */ rbrew_write_f32(cpu->mem, _t172, cpu->f[29]);
|
|
/* 022A83CC */ _t173 = cpu->r[9] + 0x00001698u;
|
|
/* 022A83CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t173);
|
|
/* 022A83D0 */ _t174 = cpu->r[12] + 0x00001694u;
|
|
/* 022A83D0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t174);
|
|
/* 022A83D4 */ _t175 = cpu->r[3] + 0x00000014u;
|
|
/* 022A83D4 */ rbrew_write_f32(cpu->mem, _t175, cpu->f[0]);
|
|
/* 022A83D8 */ _t176 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A83D8 */ rbrew_write_f32(cpu->mem, _t176, cpu->f[12]);
|
|
/* 022A83DC */ cpu->r[0] = 0x00000001u;
|
|
/* 022A83E0 */ _t177 = cpu->r[3] + 0x00000000u;
|
|
/* 022A83E0 */ rbrew_write_f32(cpu->mem, _t177, cpu->f[13]);
|
|
/* 022A83E4 */ _t178 = cpu->r[3] + 0x00000018u;
|
|
/* 022A83E4 */ rbrew_write8(cpu->mem, _t178, (uint8_t)cpu->r[0]);
|
|
L_022A83E8: ; // 0x22a83e8
|
|
/* 022A83E8 */ cpu->r[30] = cpu->r[31] + 0x00001350u;
|
|
/* 022A83E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A83EC */ _t179 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A83EC */ _t180 = _t179 & 0x00000001u;
|
|
/* 022A83EC */ if (_t180) goto L_022A83F0; else goto L_022A8400;
|
|
L_022A83F0: ; // 0x22a83f0
|
|
/* 022A83F0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022A83F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A83F8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A83F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A83FC */ _t181 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A83FC */ _t182 = _t181 & 0x00000001u;
|
|
/* 022A83FC */ if (_t182) goto L_022A8434; else goto L_022A8400;
|
|
L_022A8400: ; // 0x22a8400
|
|
/* 022A8400 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A8404 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8408 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A840C */ cpu->r[5] = cpu->r[5] + 0x00001710u;
|
|
/* 022A8410 */ cpu->r[8] = 0x00000000u;
|
|
/* 022A8414 */ cpu->r[6] = cpu->r[6] + 0x00001930u;
|
|
/* 022A8418 */ cpu->r[7] = cpu->r[5];
|
|
/* 022A841C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8420 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022A8424 */ _t183 = cpu->r[30] + 0x00000058u;
|
|
/* 022A8424 */ rbrew_write_f32(cpu->mem, _t183, cpu->f[31]);
|
|
/* 022A8428 */ _t184 = cpu->r[30] + 0x00000054u;
|
|
/* 022A8428 */ rbrew_write_f32(cpu->mem, _t184, cpu->f[29]);
|
|
/* 022A842C */ _t185 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022A842C */ rbrew_write_f32(cpu->mem, _t185, cpu->f[30]);
|
|
/* 022A8430 */ _t186 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8430 */ rbrew_write32(cpu->mem, _t186, cpu->r[29]);
|
|
L_022A8434: ; // 0x22a8434
|
|
/* 022A8434 */ _t187 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8434 */ cpu->r[29] = rbrew_read32(cpu->mem, _t187);
|
|
/* 022A8438 */ _t188 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8438 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 022A843C */ _t189 = cpu->r[1] + 0x00000020u;
|
|
/* 022A843C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t189);
|
|
/* 022A8440 */ _t190 = cpu->r[1] + 0x00000038u;
|
|
/* 022A8440 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t190);
|
|
/* 022A8444 */ _t191 = cpu->r[1] + 0x00000030u;
|
|
/* 022A8444 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t191);
|
|
/* 022A8448 */ _t192 = cpu->r[1] + 0x00000018u;
|
|
/* 022A8448 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t192);
|
|
/* 022A844C */ _t193 = cpu->r[1] + 0x00000028u;
|
|
/* 022A844C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t193);
|
|
/* 022A8450 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8454 */ _t194 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t194);
|
|
/* 022A8458 */ _t195 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8458 */ cpu->r[30] = rbrew_read32(cpu->mem, _t195);
|
|
/* 022A845C */ _t196 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A845C */ _t197 = _t196 & 0x00000001u;
|
|
/* 022A845C */ if (_t197) goto L_022A8460; // else: addr-0 trap, fall-through
|
|
L_022A8460: ; // 0x22a8460
|
|
/* 022A8460 */ _t198 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t198);
|
|
/* 022A8464 */ cpu->lr = cpu->r[0];
|
|
/* 022A8468 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022A846C */ return;
|
|
}
|
|
|
|
// fn_022A8470 @ 0x22a8470
|
|
void Gambit_fn_022A8470(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022A8470: ; // 0x22a8470
|
|
/* 022A8470 */ cpu->r[0] = cpu->lr;
|
|
/* 022A8474 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022A8474 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022A8478 */ cpu->r[3] = 0x000013B0u;
|
|
/* 022A847C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A847C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022A847C */ cpu->r[1] = _t1;
|
|
/* 022A8480 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8488 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8488 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A8488 */ if (_t3) goto L_022A8490; else goto L_022A848C;
|
|
L_022A848C: ; // 0x22a848c
|
|
/* 022A848C */ Gambit_fn_022A7D6C(cpu);
|
|
L_022A8490: ; // 0x22a8490
|
|
/* 022A8490 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A8494 */ cpu->lr = cpu->r[0];
|
|
/* 022A8498 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A849C */ return;
|
|
}
|
|
|
|
// fn_022A847C @ 0x22a847c
|
|
void Gambit_fn_022A847C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022A847C: ; // 0x22a847c
|
|
/* 022A847C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A847C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A847C */ cpu->r[1] = _t0;
|
|
/* 022A8480 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A8484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8488 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8488 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A8488 */ if (_t2) goto L_022A8490; else goto L_022A848C;
|
|
L_022A848C: ; // 0x22a848c
|
|
/* 022A848C */ Gambit_fn_022A7D6C(cpu);
|
|
L_022A8490: ; // 0x22a8490
|
|
/* 022A8490 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A8494 */ cpu->lr = cpu->r[0];
|
|
/* 022A8498 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A849C */ return;
|
|
}
|
|
|
|
// fn_022A84A0 @ 0x22a84a0
|
|
void Gambit_fn_022A84A0(CPUState* cpu) {
|
|
L_022A84A0: ; // 0x22a84a0
|
|
/* 022A84A0 */ return;
|
|
}
|
|
|
|
// fn_022A84A8 @ 0x22a84a8
|
|
void Gambit_fn_022A84A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022A84A8: ; // 0x22a84a8
|
|
/* 022A84A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A84A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A84A8 */ cpu->r[1] = _t0;
|
|
/* 022A84AC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A84AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A84B0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A84B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A84B4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A84B8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A84BC */ _t3 = cpu->r[11] + 0x00000128u;
|
|
/* 022A84BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A84BC */ cpu->r[11] = _t3;
|
|
/* 022A84C0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A84C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A84C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A84CC */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A84D0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A84D0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A84D0 */ if (_t5) goto L_022A84D4; else goto L_022A84E8;
|
|
L_022A84D4: ; // 0x22a84d4
|
|
/* 022A84D4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A84D8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A84DC */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A84E0 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022A84E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 022A84E4 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 022A84E4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_022A84E8: ; // 0x22a84e8
|
|
/* 022A84E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A84EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A84EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A84EC */ if (_t9) goto L_022A850C; else goto L_022A84F0;
|
|
L_022A84F0: ; // 0x22a84f0
|
|
/* 022A84F0 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A84F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A84F4 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A84F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A84F8 */ cpu->ctr = cpu->r[12];
|
|
/* 022A84FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8508 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8508 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8508 */ if (_t13) goto L_022A850C; else goto L_022A8510;
|
|
L_022A850C: ; // 0x22a850c
|
|
/* 022A850C */ cpu->r[31] = 0x00000000u;
|
|
L_022A8510: ; // 0x22a8510
|
|
/* 022A8510 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A8514 */ _t15 = cpu->r[31] + 0x00000DF4u;
|
|
/* 022A8514 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A8518 */ cpu->lr = cpu->r[0];
|
|
/* 022A851C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A851C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A8520 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A8524 */ return;
|
|
}
|
|
|
|
// fn_022A8528 @ 0x22a8528
|
|
void Gambit_fn_022A8528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A8528: ; // 0x22a8528
|
|
/* 022A8528 */ cpu->r[0] = cpu->lr;
|
|
/* 022A852C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A852C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A852C */ cpu->r[1] = _t0;
|
|
/* 022A8530 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8530 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8534 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8534 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A8538 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A853C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A853C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A8540 */ _t4 = cpu->r[30] + 0x000000B4u;
|
|
/* 022A8540 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A8544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8548 */ cpu->r[31] = cpu->r[4];
|
|
/* 022A854C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A854C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A854C */ if (_t6) goto L_022A8558; else goto L_022A8550;
|
|
L_022A8550: ; // 0x22a8550
|
|
/* 022A8550 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8554 */ Gambit_fn_022482C4(cpu);
|
|
L_022A8558: ; // 0x22a8558
|
|
/* 022A8558 */ _t7 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A8558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A855C */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8560 */ cpu->r[5] = cpu->r[30] + 0x0000011Cu;
|
|
/* 022A8564 */ Gambit_fn_0224643C(cpu);
|
|
/* 022A8568 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A856C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022A856C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A8570 */ cpu->lr = cpu->r[0];
|
|
/* 022A8574 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A8578 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A857C */ return;
|
|
}
|
|
|
|
// fn_022A852C @ 0x22a852c
|
|
void Gambit_fn_022A852C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A852C: ; // 0x22a852c
|
|
/* 022A852C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A852C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A852C */ cpu->r[1] = _t0;
|
|
/* 022A8530 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8530 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8534 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8534 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022A8538 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A853C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A853C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A8540 */ _t4 = cpu->r[30] + 0x000000B4u;
|
|
/* 022A8540 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A8544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8548 */ cpu->r[31] = cpu->r[4];
|
|
/* 022A854C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A854C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A854C */ if (_t6) goto L_022A8558; else goto L_022A8550;
|
|
L_022A8550: ; // 0x22a8550
|
|
/* 022A8550 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8554 */ Gambit_fn_022482C4(cpu);
|
|
L_022A8558: ; // 0x22a8558
|
|
/* 022A8558 */ _t7 = cpu->r[30] + 0x000001C0u;
|
|
/* 022A8558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A855C */ cpu->r[4] = cpu->r[31];
|
|
/* 022A8560 */ cpu->r[5] = cpu->r[30] + 0x0000011Cu;
|
|
/* 022A8564 */ Gambit_fn_0224643C(cpu);
|
|
/* 022A8568 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A856C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022A856C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A8570 */ cpu->lr = cpu->r[0];
|
|
/* 022A8574 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8574 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A8578 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A857C */ return;
|
|
}
|
|
|
|
// fn_022A8580 @ 0x22a8580
|
|
void Gambit_fn_022A8580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022A8580: ; // 0x22a8580
|
|
/* 022A8580 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022A8580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8580 */ cpu->r[1] = _t0;
|
|
/* 022A8584 */ /* nop */
|
|
/* 022A8588 */ cpu->r[0] = cpu->lr;
|
|
/* 022A858C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022A858C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A8590 */ cpu->r[26] = cpu->r[3];
|
|
/* 022A8594 */ _t2 = cpu->r[3] + 0x00000070u;
|
|
/* 022A8594 */ cpu->r[24] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A8598 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A859C */ cpu->r[22] = 0x101D0000u;
|
|
/* 022A85A0 */ _t3 = cpu->r[22] + 0x00000128u;
|
|
/* 022A85A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A85A0 */ cpu->r[22] = _t3;
|
|
/* 022A85A4 */ cpu->r[23] = 0x101D0000u;
|
|
/* 022A85A8 */ cpu->r[27] = cpu->r[3];
|
|
/* 022A85AC */ cpu->r[25] = 0x10060000u;
|
|
/* 022A85B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A85B4 */ cpu->r[25] = cpu->r[25] + 0x000013F8u;
|
|
/* 022A85B8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A85B8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A85B8 */ if (_t5) goto L_022A85BC; else goto L_022A85C8;
|
|
L_022A85BC: ; // 0x22a85bc
|
|
/* 022A85BC */ _t6 = cpu->r[23] + 0x00000168u;
|
|
/* 022A85BC */ rbrew_write32(cpu->mem, _t6, cpu->r[25]);
|
|
/* 022A85C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022A85C4 */ _t7 = cpu->r[22] + 0x00000000u;
|
|
/* 022A85C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
L_022A85C8: ; // 0x22a85c8
|
|
/* 022A85C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A85CC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A85CC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A85CC */ if (_t9) goto L_022A85F0; else goto L_022A85D0;
|
|
L_022A85D0: ; // 0x22a85d0
|
|
/* 022A85D0 */ _t10 = cpu->r[27] + 0x00000000u;
|
|
/* 022A85D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A85D4 */ _t11 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022A85D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A85D8 */ cpu->ctr = cpu->r[7];
|
|
/* 022A85DC */ cpu->r[3] = cpu->r[27];
|
|
/* 022A85E0 */ cpu->r[4] = cpu->r[23] + 0x00000168u;
|
|
/* 022A85E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A85E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A85EC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A85EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A85EC */ if (_t13) goto L_022A85F0; else goto L_022A85F4;
|
|
L_022A85F0: ; // 0x22a85f0
|
|
/* 022A85F0 */ cpu->r[27] = 0x00000000u;
|
|
L_022A85F4: ; // 0x22a85f4
|
|
/* 022A85F4 */ cpu->r[3] = cpu->r[26];
|
|
/* 022A85F8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A85FC */ _t14 = cpu->r[22] + 0x00000000u;
|
|
/* 022A85FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A8600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A8604 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8608 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8608 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A8608 */ if (_t16) goto L_022A860C; else goto L_022A8618;
|
|
L_022A860C: ; // 0x22a860c
|
|
/* 022A860C */ _t17 = cpu->r[23] + 0x00000168u;
|
|
/* 022A860C */ rbrew_write32(cpu->mem, _t17, cpu->r[25]);
|
|
/* 022A8610 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A8614 */ _t18 = cpu->r[22] + 0x00000000u;
|
|
/* 022A8614 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022A8618: ; // 0x22a8618
|
|
/* 022A8618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A861C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A861C */ _t20 = _t19 & 0x00000001u;
|
|
/* 022A861C */ if (_t20) goto L_022A8640; else goto L_022A8620;
|
|
L_022A8620: ; // 0x22a8620
|
|
/* 022A8620 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 022A8620 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A8624 */ _t22 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022A8624 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8628 */ cpu->ctr = cpu->r[12];
|
|
/* 022A862C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8630 */ cpu->r[4] = cpu->r[23] + 0x00000168u;
|
|
/* 022A8634 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A863C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A863C */ _t24 = _t23 & 0x00000001u;
|
|
/* 022A863C */ if (_t24) goto L_022A8640; else goto L_022A8644;
|
|
L_022A8640: ; // 0x22a8640
|
|
/* 022A8640 */ cpu->r[30] = 0x00000000u;
|
|
L_022A8644: ; // 0x22a8644
|
|
/* 022A8644 */ cpu->r[3] = cpu->r[26];
|
|
/* 022A8648 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A864C */ _t25 = cpu->r[22] + 0x00000000u;
|
|
/* 022A864C */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A8654 */ cpu->r[28] = cpu->r[3];
|
|
/* 022A8658 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8658 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022A8658 */ if (_t27) goto L_022A865C; else goto L_022A8668;
|
|
L_022A865C: ; // 0x22a865c
|
|
/* 022A865C */ _t28 = cpu->r[23] + 0x00000168u;
|
|
/* 022A865C */ rbrew_write32(cpu->mem, _t28, cpu->r[25]);
|
|
/* 022A8660 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8664 */ _t29 = cpu->r[22] + 0x00000000u;
|
|
/* 022A8664 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_022A8668: ; // 0x22a8668
|
|
/* 022A8668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022A866C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A866C */ _t31 = _t30 & 0x00000001u;
|
|
/* 022A866C */ if (_t31) goto L_022A8690; else goto L_022A8670;
|
|
L_022A8670: ; // 0x22a8670
|
|
/* 022A8670 */ _t32 = cpu->r[28] + 0x00000000u;
|
|
/* 022A8670 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022A8674 */ _t33 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8674 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022A8678 */ cpu->ctr = cpu->r[5];
|
|
/* 022A867C */ cpu->r[3] = cpu->r[28];
|
|
/* 022A8680 */ cpu->r[4] = cpu->r[23] + 0x00000168u;
|
|
/* 022A8684 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8688 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A868C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A868C */ _t35 = _t34 & 0x00000001u;
|
|
/* 022A868C */ if (_t35) goto L_022A8690; else goto L_022A8694;
|
|
L_022A8690: ; // 0x22a8690
|
|
/* 022A8690 */ cpu->r[28] = 0x00000000u;
|
|
L_022A8694: ; // 0x22a8694
|
|
/* 022A8694 */ cpu->r[3] = cpu->r[26];
|
|
/* 022A8698 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A869C */ _t36 = cpu->r[22] + 0x00000000u;
|
|
/* 022A869C */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A86A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022A86A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A86A8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A86A8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A86A8 */ if (_t38) goto L_022A86AC; else goto L_022A86B8;
|
|
L_022A86AC: ; // 0x22a86ac
|
|
/* 022A86AC */ _t39 = cpu->r[23] + 0x00000168u;
|
|
/* 022A86AC */ rbrew_write32(cpu->mem, _t39, cpu->r[25]);
|
|
/* 022A86B0 */ cpu->r[7] = 0x00000001u;
|
|
/* 022A86B4 */ _t40 = cpu->r[22] + 0x00000000u;
|
|
/* 022A86B4 */ rbrew_write32(cpu->mem, _t40, cpu->r[7]);
|
|
L_022A86B8: ; // 0x22a86b8
|
|
/* 022A86B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A86BC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A86BC */ _t42 = _t41 & 0x00000001u;
|
|
/* 022A86BC */ if (_t42) goto L_022A86E0; else goto L_022A86C0;
|
|
L_022A86C0: ; // 0x22a86c0
|
|
/* 022A86C0 */ _t43 = cpu->r[31] + 0x00000000u;
|
|
/* 022A86C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A86C4 */ _t44 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A86C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A86C8 */ cpu->ctr = cpu->r[9];
|
|
/* 022A86CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A86D0 */ cpu->r[4] = cpu->r[23] + 0x00000168u;
|
|
/* 022A86D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A86D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A86DC */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A86DC */ _t46 = _t45 & 0x00000001u;
|
|
/* 022A86DC */ if (_t46) goto L_022A86E0; else goto L_022A86E4;
|
|
L_022A86E0: ; // 0x22a86e0
|
|
/* 022A86E0 */ cpu->r[31] = 0x00000000u;
|
|
L_022A86E4: ; // 0x22a86e4
|
|
/* 022A86E4 */ cpu->r[3] = cpu->r[26];
|
|
/* 022A86E8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A86EC */ _t47 = cpu->r[22] + 0x00000000u;
|
|
/* 022A86EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022A86F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A86F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A86F8 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A86F8 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022A86F8 */ if (_t49) goto L_022A86FC; else goto L_022A8708;
|
|
L_022A86FC: ; // 0x22a86fc
|
|
/* 022A86FC */ _t50 = cpu->r[23] + 0x00000168u;
|
|
/* 022A86FC */ rbrew_write32(cpu->mem, _t50, cpu->r[25]);
|
|
/* 022A8700 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8704 */ _t51 = cpu->r[22] + 0x00000000u;
|
|
/* 022A8704 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
L_022A8708: ; // 0x22a8708
|
|
/* 022A8708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A870C */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A870C */ _t53 = _t52 & 0x00000001u;
|
|
/* 022A870C */ if (_t53) goto L_022A8730; else goto L_022A8710;
|
|
L_022A8710: ; // 0x22a8710
|
|
/* 022A8710 */ _t54 = cpu->r[29] + 0x00000000u;
|
|
/* 022A8710 */ cpu->r[12] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022A8714 */ _t55 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8714 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A8718 */ cpu->ctr = cpu->r[0];
|
|
/* 022A871C */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8720 */ cpu->r[4] = cpu->r[23] + 0x00000168u;
|
|
/* 022A8724 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A872C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A872C */ _t57 = _t56 & 0x00000001u;
|
|
/* 022A872C */ if (_t57) goto L_022A8730; else goto L_022A8734;
|
|
L_022A8730: ; // 0x22a8730
|
|
/* 022A8730 */ cpu->r[29] = 0x00000000u;
|
|
L_022A8734: ; // 0x22a8734
|
|
/* 022A8734 */ _t58 = cpu->r[24] + 0x00000018u;
|
|
/* 022A8734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022A8738 */ cpu->r[7] = cpu->r[27] + 0x000006E8u;
|
|
/* 022A873C */ cpu->r[11] = cpu->r[29] + 0x00000868u;
|
|
/* 022A8740 */ _t59 = cpu->r[26] + 0x00000008u;
|
|
/* 022A8740 */ cpu->r[4] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022A8744 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8748 */ cpu->r[5] = 0x00000000u;
|
|
/* 022A874C */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 022A874C */ rbrew_write32(cpu->mem, _t60, cpu->r[11]);
|
|
/* 022A8750 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A8754 */ cpu->r[8] = cpu->r[30] + 0x00000748u;
|
|
/* 022A8758 */ _t61 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8758 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
/* 022A875C */ cpu->r[6] = cpu->r[6] + 0x0000193Cu;
|
|
/* 022A8760 */ cpu->r[9] = cpu->r[28] + 0x000007A8u;
|
|
/* 022A8764 */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8764 */ rbrew_write32(cpu->mem, _t62, cpu->r[0]);
|
|
/* 022A8768 */ cpu->r[10] = cpu->r[31] + 0x00000808u;
|
|
/* 022A876C */ Gambit_fn_0231E0B4(cpu);
|
|
/* 022A8770 */ /* nop */
|
|
/* 022A8774 */ _t63 = cpu->r[1] + 0x00000044u;
|
|
/* 022A8774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A8778 */ cpu->lr = cpu->r[0];
|
|
/* 022A877C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022A8780 */ return;
|
|
}
|
|
|
|
// fn_022A8784 @ 0x22a8784
|
|
void Gambit_fn_022A8784(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81;
|
|
|
|
L_022A8784: ; // 0x22a8784
|
|
/* 022A8784 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 022A8784 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8784 */ cpu->r[1] = _t0;
|
|
/* 022A8788 */ /* nop */
|
|
/* 022A878C */ cpu->r[0] = cpu->lr;
|
|
/* 022A8790 */ _t1 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022A8790 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A8794 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8798 */ _t2 = cpu->r[30] + 0x00000190u;
|
|
/* 022A8798 */ cpu->r[12] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022A879C */ /* nop */
|
|
/* 022A87A0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A87A0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022A87A0 */ if (_t4) goto L_022A87A4; else goto L_022A87FC;
|
|
L_022A87A4: ; // 0x22a87a4
|
|
/* 022A87A4 */ _t5 = cpu->r[30] + 0x00000070u;
|
|
/* 022A87A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A87A8 */ _t6 = cpu->r[12] + 0x000000A0u;
|
|
/* 022A87A8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022A87AC */ cpu->f[11] = -cpu->f[7];
|
|
/* 022A87B0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022A87B0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[11]);
|
|
/* 022A87B4 */ _t8 = cpu->r[12] + 0x000000A4u;
|
|
/* 022A87B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022A87B8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022A87B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A87BC */ cpu->f[9] = -cpu->f[0];
|
|
/* 022A87C0 */ _t10 = cpu->r[30] + 0x00000090u;
|
|
/* 022A87C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A87C4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A87C4 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[9]);
|
|
/* 022A87C8 */ _t12 = cpu->r[12] + 0x000000A8u;
|
|
/* 022A87C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022A87CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A87CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A87D0 */ cpu->f[9] = -cpu->f[11];
|
|
/* 022A87D4 */ _t14 = cpu->r[1] + 0x00000068u;
|
|
/* 022A87D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022A87D8 */ _t15 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022A87D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 022A87DC */ cpu->r[10] = cpu->r[1] + 0x00000068u;
|
|
/* 022A87E0 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022A87E0 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[9]);
|
|
/* 022A87E4 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022A87E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A87E8 */ cpu->r[5] = cpu->r[10];
|
|
/* 022A87EC */ cpu->r[4] = cpu->r[30] + 0x00000140u;
|
|
/* 022A87F0 */ _t18 = cpu->r[1] + 0x00000070u;
|
|
/* 022A87F0 */ rbrew_write32(cpu->mem, _t18, cpu->r[6]);
|
|
/* 022A87F4 */ Gambit_fn_02390DE4(cpu);
|
|
/* 022A87F8 */ goto L_022A89AC;
|
|
L_022A87FC: ; // 0x22a87fc
|
|
/* 022A87FC */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8800 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8804 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8808 */ _t19 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8808 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8808 */ cpu->r[28] = _t19;
|
|
/* 022A880C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8810 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8814 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022A8818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A881C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8820 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8820 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A8820 */ if (_t21) goto L_022A8824; else goto L_022A8830;
|
|
L_022A8824: ; // 0x22a8824
|
|
/* 022A8824 */ _t22 = cpu->r[27] + 0x00000168u;
|
|
/* 022A8824 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 022A8828 */ cpu->r[8] = 0x00000001u;
|
|
/* 022A882C */ _t23 = cpu->r[28] + 0x00000000u;
|
|
/* 022A882C */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
L_022A8830: ; // 0x22a8830
|
|
/* 022A8830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8834 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8834 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A8834 */ if (_t25) goto L_022A8858; else goto L_022A8838;
|
|
L_022A8838: ; // 0x22a8838
|
|
/* 022A8838 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A883C */ _t27 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022A883C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A8840 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8844 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8848 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A884C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8854 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8854 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022A8854 */ if (_t29) goto L_022A8858; else goto L_022A885C;
|
|
L_022A8858: ; // 0x22a8858
|
|
/* 022A8858 */ cpu->r[31] = 0x00000000u;
|
|
L_022A885C: ; // 0x22a885c
|
|
/* 022A885C */ _t30 = cpu->r[30] + 0x00000070u;
|
|
/* 022A885C */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A8860 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022A8864 */ _t31 = cpu->r[31] + 0x00000688u;
|
|
/* 022A8864 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022A8868 */ /* nop */
|
|
/* 022A886C */ _t32 = cpu->r[30] + 0x00000070u;
|
|
/* 022A886C */ cpu->r[26] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022A8870 */ /* nop */
|
|
/* 022A8874 */ /* nop */
|
|
/* 022A8878 */ /* nop */
|
|
/* 022A887C */ _t33 = cpu->r[3] + 0x00000008u;
|
|
/* 022A887C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022A8880 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8880 */ cpu->r[5] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022A8884 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 022A8884 */ cpu->r[6] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8888 */ _t36 = cpu->r[1] + 0x00000050u;
|
|
/* 022A8888 */ rbrew_write32(cpu->mem, _t36, cpu->r[5]);
|
|
/* 022A888C */ cpu->f[11] = cpu->f[12] * cpu->f[8];
|
|
/* 022A8890 */ _t37 = cpu->r[1] + 0x00000054u;
|
|
/* 022A8890 */ rbrew_write32(cpu->mem, _t37, cpu->r[6]);
|
|
/* 022A8894 */ /* nop */
|
|
/* 022A8898 */ _t38 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8898 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[11]);
|
|
/* 022A889C */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A889C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A88A0 */ _t40 = cpu->r[30] + 0x00000148u;
|
|
/* 022A88A0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A88A4 */ /* nop */
|
|
/* 022A88A8 */ _t41 = cpu->r[1] + 0x00000058u;
|
|
/* 022A88A8 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]);
|
|
/* 022A88AC */ _t42 = cpu->r[1] + 0x00000058u;
|
|
/* 022A88AC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022A88B0 */ /* nop */
|
|
/* 022A88B4 */ _t43 = cpu->r[1] + 0x00000020u;
|
|
/* 022A88B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A88B8 */ cpu->f[0] = cpu->f[7] - cpu->f[10];
|
|
/* 022A88BC */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 022A88BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A88C0 */ _t45 = cpu->r[1] + 0x00000044u;
|
|
/* 022A88C0 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 022A88C4 */ _t46 = cpu->r[1] + 0x00000028u;
|
|
/* 022A88C4 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 022A88C8 */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 022A88C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022A88CC */ _t48 = cpu->r[1] + 0x00000048u;
|
|
/* 022A88CC */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 022A88D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A88D4 */ _t49 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A88D4 */ rbrew_write32(cpu->mem, _t49, cpu->r[12]);
|
|
/* 022A88D8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A88DC */ _t50 = cpu->r[28] + 0x00000000u;
|
|
/* 022A88DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022A88E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A88E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A88E8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A88E8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022A88E8 */ if (_t52) goto L_022A88EC; else goto L_022A88F8;
|
|
L_022A88EC: ; // 0x22a88ec
|
|
/* 022A88EC */ _t53 = cpu->r[27] + 0x00000168u;
|
|
/* 022A88EC */ rbrew_write32(cpu->mem, _t53, cpu->r[29]);
|
|
/* 022A88F0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022A88F4 */ _t54 = cpu->r[28] + 0x00000000u;
|
|
/* 022A88F4 */ rbrew_write32(cpu->mem, _t54, cpu->r[5]);
|
|
L_022A88F8: ; // 0x22a88f8
|
|
/* 022A88F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A88FC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A88FC */ _t56 = _t55 & 0x00000001u;
|
|
/* 022A88FC */ if (_t56) goto L_022A8920; else goto L_022A8900;
|
|
L_022A8900: ; // 0x22a8900
|
|
/* 022A8900 */ _t57 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8900 */ cpu->r[6] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022A8904 */ _t58 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022A8904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022A8908 */ cpu->ctr = cpu->r[0];
|
|
/* 022A890C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8910 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A8914 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A891C */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A891C */ _t60 = _t59 & 0x00000001u;
|
|
/* 022A891C */ if (_t60) goto L_022A8920; else goto L_022A8924;
|
|
L_022A8920: ; // 0x22a8920
|
|
/* 022A8920 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8924: ; // 0x22a8924
|
|
/* 022A8924 */ _t61 = cpu->r[31] + 0x00001274u;
|
|
/* 022A8924 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022A8928 */ /* nop */
|
|
/* 022A892C */ /* nop */
|
|
/* 022A8930 */ /* nop */
|
|
/* 022A8934 */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8934 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 022A8938 */ /* nop */
|
|
/* 022A893C */ _t63 = cpu->r[26] + 0x000000A8u;
|
|
/* 022A893C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022A8940 */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A8940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022A8944 */ _t65 = cpu->r[1] + 0x00000030u;
|
|
/* 022A8944 */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022A8948 */ _t66 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022A8948 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022A894C */ cpu->f[13] = cpu->f[7] * cpu->f[13];
|
|
/* 022A8950 */ _t67 = cpu->r[1] + 0x00000060u;
|
|
/* 022A8950 */ rbrew_write32(cpu->mem, _t67, cpu->r[11]);
|
|
/* 022A8954 */ /* nop */
|
|
/* 022A8958 */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8958 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 022A895C */ /* nop */
|
|
/* 022A8960 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022A8964 */ /* nop */
|
|
/* 022A8968 */ _t70 = cpu->r[1] + 0x00000064u;
|
|
/* 022A8968 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 022A896C */ _t71 = cpu->r[1] + 0x00000064u;
|
|
/* 022A896C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022A8970 */ _t72 = cpu->r[1] + 0x00000038u;
|
|
/* 022A8970 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022A8974 */ _t73 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A8974 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022A8978 */ cpu->f[8] = cpu->f[10] + cpu->f[7];
|
|
/* 022A897C */ _t74 = cpu->r[1] + 0x00000074u;
|
|
/* 022A897C */ rbrew_write32(cpu->mem, _t74, cpu->r[8]);
|
|
/* 022A8980 */ _t75 = cpu->r[1] + 0x00000078u;
|
|
/* 022A8980 */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 022A8984 */ _t76 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8984 */ rbrew_write_f32(cpu->mem, _t76, cpu->f[8]);
|
|
/* 022A8988 */ _t77 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022A898C */ _t78 = cpu->r[30] + 0x00000070u;
|
|
/* 022A898C */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022A8990 */ cpu->r[31] = cpu->r[1] + 0x00000074u;
|
|
/* 022A8994 */ _t79 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022A8994 */ rbrew_write32(cpu->mem, _t79, cpu->r[12]);
|
|
/* 022A8998 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022A899C */ cpu->r[5] = cpu->r[3];
|
|
/* 022A89A0 */ _t80 = cpu->r[30] + 0x00000090u;
|
|
/* 022A89A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022A89A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022A89A8 */ Gambit_fn_02390DE4(cpu);
|
|
L_022A89AC: ; // 0x22a89ac
|
|
/* 022A89AC */ /* nop */
|
|
/* 022A89B0 */ _t81 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022A89B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022A89B4 */ cpu->lr = cpu->r[0];
|
|
/* 022A89B8 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 022A89BC */ return;
|
|
}
|
|
|
|
// fn_022A8A28 @ 0x22a8a28
|
|
void Gambit_fn_022A8A28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022A8A28: ; // 0x22a8a28
|
|
/* 022A8A28 */ cpu->r[0] = cpu->lr;
|
|
/* 022A8A2C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A8A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8A2C */ cpu->r[1] = _t0;
|
|
/* 022A8A30 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8A34 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8A34 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8A38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8A38 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022A8A3C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022A8A40 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8A44 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8A44 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022A8A48 */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A8A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A8A4C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8A50 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022A8A54 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8A5C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8A60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A60 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A8A60 */ if (_t8) goto L_022A8AE4; else goto L_022A8A64;
|
|
L_022A8A64: ; // 0x22a8a64
|
|
/* 022A8A64 */ Gambit_fn_022483A8(cpu);
|
|
/* 022A8A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8A6C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A6C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A8A6C */ if (_t10) goto L_022A8AE4; else goto L_022A8A70;
|
|
L_022A8A70: ; // 0x22a8a70
|
|
/* 022A8A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8A74 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8A78 */ _t11 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8A78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A8A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A8A80 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8A84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8A84 */ if (_t13) goto L_022A8A88; else goto L_022A8A94;
|
|
L_022A8A88: ; // 0x22a8a88
|
|
/* 022A8A88 */ _t14 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8A88 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022A8A8C */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8A90 */ _t15 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8A90 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_022A8A94: ; // 0x22a8a94
|
|
/* 022A8A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8A98 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A98 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A8A98 */ if (_t17) goto L_022A8ABC; else goto L_022A8A9C;
|
|
L_022A8A9C: ; // 0x22a8a9c
|
|
/* 022A8A9C */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8A9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A8AA0 */ _t19 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8AA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8AA4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8AA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8AAC */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8AB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8AB8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8AB8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A8AB8 */ if (_t21) goto L_022A8ABC; else goto L_022A8AC0;
|
|
L_022A8ABC: ; // 0x22a8abc
|
|
/* 022A8ABC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8AC0: ; // 0x22a8ac0
|
|
/* 022A8AC0 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8AC0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8AC4 */ _t23 = cpu->r[31] + 0x00000E54u;
|
|
/* 022A8AC4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A8AC8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8AC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A8ACC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8AD0 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8AD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A8AD4 */ cpu->lr = cpu->r[0];
|
|
/* 022A8AD8 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A8ADC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8AE0 */ return;
|
|
L_022A8AE4: ; // 0x22a8ae4
|
|
/* 022A8AE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8AE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8AEC */ _t28 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8AEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A8AF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A8AF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8AF8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8AF8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A8AF8 */ if (_t30) goto L_022A8AFC; else goto L_022A8B08;
|
|
L_022A8AFC: ; // 0x22a8afc
|
|
/* 022A8AFC */ _t31 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8AFC */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 022A8B00 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8B04 */ _t32 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8B04 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022A8B08: ; // 0x22a8b08
|
|
/* 022A8B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8B0C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B0C */ _t34 = _t33 & 0x00000001u;
|
|
/* 022A8B0C */ if (_t34) goto L_022A8B30; else goto L_022A8B10;
|
|
L_022A8B10: ; // 0x22a8b10
|
|
/* 022A8B10 */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8B10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8B14 */ _t36 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8B14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A8B18 */ cpu->ctr = cpu->r[9];
|
|
/* 022A8B1C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8B20 */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B2C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B2C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A8B2C */ if (_t38) goto L_022A8B30; else goto L_022A8B34;
|
|
L_022A8B30: ; // 0x22a8b30
|
|
/* 022A8B30 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8B34: ; // 0x22a8b34
|
|
/* 022A8B34 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8B34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A8B38 */ _t40 = cpu->r[31] + 0x00000DF4u;
|
|
/* 022A8B38 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A8B3C */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8B3C */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A8B40 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8B44 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8B44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8B48 */ cpu->lr = cpu->r[0];
|
|
/* 022A8B4C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8B4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A8B50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8B54 */ return;
|
|
}
|
|
|
|
// fn_022A8A2C @ 0x22a8a2c
|
|
void Gambit_fn_022A8A2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022A8A2C: ; // 0x22a8a2c
|
|
/* 022A8A2C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A8A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8A2C */ cpu->r[1] = _t0;
|
|
/* 022A8A30 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8A34 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8A34 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8A38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8A38 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022A8A3C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022A8A40 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8A44 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8A44 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022A8A48 */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A8A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A8A4C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8A50 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022A8A54 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8A5C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8A60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A60 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A8A60 */ if (_t8) goto L_022A8AE4; else goto L_022A8A64;
|
|
L_022A8A64: ; // 0x22a8a64
|
|
/* 022A8A64 */ Gambit_fn_022483A8(cpu);
|
|
/* 022A8A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8A6C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A6C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A8A6C */ if (_t10) goto L_022A8AE4; else goto L_022A8A70;
|
|
L_022A8A70: ; // 0x22a8a70
|
|
/* 022A8A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8A74 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8A78 */ _t11 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8A78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A8A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A8A80 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8A84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8A84 */ if (_t13) goto L_022A8A88; else goto L_022A8A94;
|
|
L_022A8A88: ; // 0x22a8a88
|
|
/* 022A8A88 */ _t14 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8A88 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022A8A8C */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8A90 */ _t15 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8A90 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_022A8A94: ; // 0x22a8a94
|
|
/* 022A8A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8A98 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8A98 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A8A98 */ if (_t17) goto L_022A8ABC; else goto L_022A8A9C;
|
|
L_022A8A9C: ; // 0x22a8a9c
|
|
/* 022A8A9C */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8A9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A8AA0 */ _t19 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8AA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8AA4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8AA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8AAC */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8AB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8AB8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8AB8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A8AB8 */ if (_t21) goto L_022A8ABC; else goto L_022A8AC0;
|
|
L_022A8ABC: ; // 0x22a8abc
|
|
/* 022A8ABC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8AC0: ; // 0x22a8ac0
|
|
/* 022A8AC0 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8AC0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8AC4 */ _t23 = cpu->r[31] + 0x00000E54u;
|
|
/* 022A8AC4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A8AC8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8AC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A8ACC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8ACC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8AD0 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8AD0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A8AD4 */ cpu->lr = cpu->r[0];
|
|
/* 022A8AD8 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8AD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A8ADC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8AE0 */ return;
|
|
L_022A8AE4: ; // 0x22a8ae4
|
|
/* 022A8AE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8AE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8AEC */ _t28 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8AEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A8AF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A8AF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8AF8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8AF8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A8AF8 */ if (_t30) goto L_022A8AFC; else goto L_022A8B08;
|
|
L_022A8AFC: ; // 0x22a8afc
|
|
/* 022A8AFC */ _t31 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8AFC */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 022A8B00 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8B04 */ _t32 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8B04 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022A8B08: ; // 0x22a8b08
|
|
/* 022A8B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8B0C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B0C */ _t34 = _t33 & 0x00000001u;
|
|
/* 022A8B0C */ if (_t34) goto L_022A8B30; else goto L_022A8B10;
|
|
L_022A8B10: ; // 0x22a8b10
|
|
/* 022A8B10 */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8B10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8B14 */ _t36 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8B14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A8B18 */ cpu->ctr = cpu->r[9];
|
|
/* 022A8B1C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8B20 */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8B24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B2C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B2C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A8B2C */ if (_t38) goto L_022A8B30; else goto L_022A8B34;
|
|
L_022A8B30: ; // 0x22a8b30
|
|
/* 022A8B30 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8B34: ; // 0x22a8b34
|
|
/* 022A8B34 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8B34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A8B38 */ _t40 = cpu->r[31] + 0x00000DF4u;
|
|
/* 022A8B38 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A8B3C */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8B3C */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A8B40 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8B44 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8B44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8B48 */ cpu->lr = cpu->r[0];
|
|
/* 022A8B4C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8B4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A8B50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8B54 */ return;
|
|
}
|
|
|
|
// fn_022A8B58 @ 0x22a8b58
|
|
void Gambit_fn_022A8B58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022A8B58: ; // 0x22a8b58
|
|
/* 022A8B58 */ cpu->r[0] = cpu->lr;
|
|
/* 022A8B5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A8B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8B5C */ cpu->r[1] = _t0;
|
|
/* 022A8B60 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8B64 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8B68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022A8B6C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022A8B70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8B74 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8B74 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022A8B78 */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A8B78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A8B7C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8B80 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022A8B84 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B8C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8B90 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B90 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A8B90 */ if (_t8) goto L_022A8C14; else goto L_022A8B94;
|
|
L_022A8B94: ; // 0x22a8b94
|
|
/* 022A8B94 */ Gambit_fn_022483A8(cpu);
|
|
/* 022A8B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B9C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B9C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A8B9C */ if (_t10) goto L_022A8C14; else goto L_022A8BA0;
|
|
L_022A8BA0: ; // 0x22a8ba0
|
|
/* 022A8BA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8BA4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8BA8 */ _t11 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8BA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A8BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A8BB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8BB4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BB4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8BB4 */ if (_t13) goto L_022A8BB8; else goto L_022A8BC4;
|
|
L_022A8BB8: ; // 0x22a8bb8
|
|
/* 022A8BB8 */ _t14 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8BB8 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022A8BBC */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8BC0 */ _t15 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8BC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_022A8BC4: ; // 0x22a8bc4
|
|
/* 022A8BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BC8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A8BC8 */ if (_t17) goto L_022A8BEC; else goto L_022A8BCC;
|
|
L_022A8BCC: ; // 0x22a8bcc
|
|
/* 022A8BCC */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8BCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A8BD0 */ _t19 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8BD4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8BD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8BDC */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8BE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8BE8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BE8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A8BE8 */ if (_t21) goto L_022A8BEC; else goto L_022A8BF0;
|
|
L_022A8BEC: ; // 0x22a8bec
|
|
/* 022A8BEC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8BF0: ; // 0x22a8bf0
|
|
/* 022A8BF0 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8BF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8BF4 */ _t23 = cpu->r[31] + 0x00000F14u;
|
|
/* 022A8BF4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A8BF8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8BF8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A8BFC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8C00 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8C00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A8C04 */ cpu->lr = cpu->r[0];
|
|
/* 022A8C08 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8C08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A8C0C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8C10 */ return;
|
|
L_022A8C14: ; // 0x22a8c14
|
|
/* 022A8C14 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8C18 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8C1C */ _t28 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A8C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A8C24 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8C28 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C28 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A8C28 */ if (_t30) goto L_022A8C2C; else goto L_022A8C38;
|
|
L_022A8C2C: ; // 0x22a8c2c
|
|
/* 022A8C2C */ _t31 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8C2C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 022A8C30 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8C34 */ _t32 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8C34 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022A8C38: ; // 0x22a8c38
|
|
/* 022A8C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8C3C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C3C */ _t34 = _t33 & 0x00000001u;
|
|
/* 022A8C3C */ if (_t34) goto L_022A8C60; else goto L_022A8C40;
|
|
L_022A8C40: ; // 0x22a8c40
|
|
/* 022A8C40 */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8C44 */ _t36 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A8C48 */ cpu->ctr = cpu->r[9];
|
|
/* 022A8C4C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8C50 */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8C58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8C5C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C5C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A8C5C */ if (_t38) goto L_022A8C60; else goto L_022A8C64;
|
|
L_022A8C60: ; // 0x22a8c60
|
|
/* 022A8C60 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8C64: ; // 0x22a8c64
|
|
/* 022A8C64 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8C64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A8C68 */ _t40 = cpu->r[31] + 0x00000EB4u;
|
|
/* 022A8C68 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A8C6C */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8C6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A8C70 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8C74 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8C74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8C78 */ cpu->lr = cpu->r[0];
|
|
/* 022A8C7C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8C7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A8C80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8C84 */ return;
|
|
}
|
|
|
|
// fn_022A8B5C @ 0x22a8b5c
|
|
void Gambit_fn_022A8B5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022A8B5C: ; // 0x22a8b5c
|
|
/* 022A8B5C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A8B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8B5C */ cpu->r[1] = _t0;
|
|
/* 022A8B60 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022A8B64 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8B68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022A8B6C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 022A8B70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8B74 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8B74 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022A8B78 */ _t6 = cpu->r[31] + 0x000000B4u;
|
|
/* 022A8B78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A8B7C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8B80 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022A8B84 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B8C */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8B90 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B90 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A8B90 */ if (_t8) goto L_022A8C14; else goto L_022A8B94;
|
|
L_022A8B94: ; // 0x22a8b94
|
|
/* 022A8B94 */ Gambit_fn_022483A8(cpu);
|
|
/* 022A8B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8B9C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8B9C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A8B9C */ if (_t10) goto L_022A8C14; else goto L_022A8BA0;
|
|
L_022A8BA0: ; // 0x22a8ba0
|
|
/* 022A8BA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8BA4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8BA8 */ _t11 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8BA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A8BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A8BB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8BB4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BB4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8BB4 */ if (_t13) goto L_022A8BB8; else goto L_022A8BC4;
|
|
L_022A8BB8: ; // 0x22a8bb8
|
|
/* 022A8BB8 */ _t14 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8BB8 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022A8BBC */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8BC0 */ _t15 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8BC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_022A8BC4: ; // 0x22a8bc4
|
|
/* 022A8BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BC8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A8BC8 */ if (_t17) goto L_022A8BEC; else goto L_022A8BCC;
|
|
L_022A8BCC: ; // 0x22a8bcc
|
|
/* 022A8BCC */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8BCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022A8BD0 */ _t19 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8BD4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8BD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8BDC */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8BE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8BE8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8BE8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A8BE8 */ if (_t21) goto L_022A8BEC; else goto L_022A8BF0;
|
|
L_022A8BEC: ; // 0x22a8bec
|
|
/* 022A8BEC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8BF0: ; // 0x22a8bf0
|
|
/* 022A8BF0 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8BF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8BF4 */ _t23 = cpu->r[31] + 0x00000F14u;
|
|
/* 022A8BF4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022A8BF8 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8BF8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A8BFC */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8BFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8C00 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8C00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A8C04 */ cpu->lr = cpu->r[0];
|
|
/* 022A8C08 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8C08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A8C0C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8C10 */ return;
|
|
L_022A8C14: ; // 0x22a8c14
|
|
/* 022A8C14 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8C18 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8C1C */ _t28 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A8C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A8C24 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8C28 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C28 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A8C28 */ if (_t30) goto L_022A8C2C; else goto L_022A8C38;
|
|
L_022A8C2C: ; // 0x22a8c2c
|
|
/* 022A8C2C */ _t31 = cpu->r[30] + 0x00000168u;
|
|
/* 022A8C2C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 022A8C30 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8C34 */ _t32 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8C34 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022A8C38: ; // 0x22a8c38
|
|
/* 022A8C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8C3C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C3C */ _t34 = _t33 & 0x00000001u;
|
|
/* 022A8C3C */ if (_t34) goto L_022A8C60; else goto L_022A8C40;
|
|
L_022A8C40: ; // 0x22a8c40
|
|
/* 022A8C40 */ _t35 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8C44 */ _t36 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A8C48 */ cpu->ctr = cpu->r[9];
|
|
/* 022A8C4C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8C50 */ cpu->r[4] = cpu->r[30] + 0x00000168u;
|
|
/* 022A8C54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8C58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8C5C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8C5C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022A8C5C */ if (_t38) goto L_022A8C60; else goto L_022A8C64;
|
|
L_022A8C60: ; // 0x22a8c60
|
|
/* 022A8C60 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8C64: ; // 0x22a8c64
|
|
/* 022A8C64 */ _t39 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8C64 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A8C68 */ _t40 = cpu->r[31] + 0x00000EB4u;
|
|
/* 022A8C68 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A8C6C */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8C6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A8C70 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8C74 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8C74 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8C78 */ cpu->lr = cpu->r[0];
|
|
/* 022A8C7C */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8C7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A8C80 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A8C84 */ return;
|
|
}
|
|
|
|
// fn_022A8C88 @ 0x22a8c88
|
|
void Gambit_fn_022A8C88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022A8C88: ; // 0x22a8c88
|
|
/* 022A8C88 */ cpu->r[0] = cpu->lr;
|
|
/* 022A8C8C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022A8C8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8C8C */ cpu->r[1] = _t0;
|
|
/* 022A8C90 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 022A8C90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022A8C94 */ /* nop */
|
|
/* 022A8C98 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 022A8C98 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8C9C */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022A8C9C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022A8CA0 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 022A8CA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022A8CA4 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022A8CA4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022A8CA8 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022A8CA8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022A8CAC */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 022A8CAC */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 022A8CB0 */ _t8 = cpu->r[3] + 0x00000070u;
|
|
/* 022A8CB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A8CB4 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A8CB8 */ Gambit_fn_022A8A28(cpu);
|
|
/* 022A8CBC */ cpu->r[7] = 0x10060000u;
|
|
/* 022A8CC0 */ /* nop */
|
|
/* 022A8CC4 */ _t9 = cpu->r[7] + 0x00001664u;
|
|
/* 022A8CC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022A8CC8 */ /* nop */
|
|
/* 022A8CCC */ /* nop */
|
|
/* 022A8CD0 */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 022A8CD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A8CD4 */ _t11 = cpu->r[31] + 0x000000A8u;
|
|
/* 022A8CD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022A8CD8 */ _t12 = cpu->r[1] + 0x00000050u;
|
|
/* 022A8CD8 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 022A8CDC */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 022A8CE0 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 022A8CE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A8CE4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 022A8CE4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022A8CE8 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022A8CE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A8CEC */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 022A8CEC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 022A8CF0 */ /* nop */
|
|
/* 022A8CF4 */ _t17 = cpu->r[1] + 0x00000058u;
|
|
/* 022A8CF4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 022A8CF8 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 022A8CF8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022A8CFC */ /* nop */
|
|
/* 022A8D00 */ _t19 = cpu->r[29] + 0x00000148u;
|
|
/* 022A8D00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022A8D04 */ cpu->f[8] = cpu->f[9] + cpu->f[9];
|
|
/* 022A8D08 */ /* nop */
|
|
/* 022A8D0C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A8D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A8D10 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8D10 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022A8D14 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8D18 */ /* nop */
|
|
/* 022A8D1C */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8D1C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022A8D20 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8D20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022A8D24 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022A8D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8D28 */ cpu->f[9] = cpu->f[10] + cpu->f[12];
|
|
/* 022A8D2C */ _t26 = cpu->r[1] + 0x00000044u;
|
|
/* 022A8D2C */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022A8D30 */ _t27 = cpu->r[1] + 0x00000048u;
|
|
/* 022A8D30 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022A8D34 */ /* nop */
|
|
/* 022A8D38 */ _t28 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8D38 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 022A8D3C */ _t29 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A8D40 */ /* nop */
|
|
/* 022A8D44 */ /* nop */
|
|
/* 022A8D48 */ _t30 = cpu->r[1] + 0x00000038u;
|
|
/* 022A8D48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A8D4C */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A8D4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A8D50 */ _t32 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022A8D50 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 022A8D54 */ cpu->r[28] = cpu->r[29] + 0x00000140u;
|
|
/* 022A8D58 */ _t33 = cpu->r[1] + 0x00000064u;
|
|
/* 022A8D58 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 022A8D5C */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8D60 */ _t34 = cpu->r[1] + 0x00000060u;
|
|
/* 022A8D60 */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
/* 022A8D64 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8D68 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A8D6C */ _t35 = cpu->r[8] + 0x00000128u;
|
|
/* 022A8D6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8D6C */ cpu->r[8] = _t35;
|
|
/* 022A8D70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8D74 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A8D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A8D7C */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A8D80 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8D80 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022A8D80 */ if (_t37) goto L_022A8D84; else goto L_022A8D98;
|
|
L_022A8D84: ; // 0x22a8d84
|
|
/* 022A8D84 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A8D88 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8D8C */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A8D90 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 022A8D90 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 022A8D94 */ _t39 = cpu->r[4] + 0x00000000u;
|
|
/* 022A8D94 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
L_022A8D98: ; // 0x22a8d98
|
|
/* 022A8D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8D9C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8D9C */ _t41 = _t40 & 0x00000001u;
|
|
/* 022A8D9C */ if (_t41) goto L_022A8DBC; else goto L_022A8DA0;
|
|
L_022A8DA0: ; // 0x22a8da0
|
|
/* 022A8DA0 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8DA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8DA4 */ _t43 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A8DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8DA8 */ cpu->ctr = cpu->r[12];
|
|
/* 022A8DAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8DB8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8DB8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022A8DB8 */ if (_t45) goto L_022A8DBC; else goto L_022A8DC0;
|
|
L_022A8DBC: ; // 0x22a8dbc
|
|
/* 022A8DBC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8DC0: ; // 0x22a8dc0
|
|
/* 022A8DC0 */ _t46 = cpu->r[29] + 0x00000070u;
|
|
/* 022A8DC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022A8DC4 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022A8DC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8DCC */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8DD0 */ Gambit_fn_022A8A28(cpu);
|
|
/* 022A8DD4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8DD8 */ cpu->f[31] = cpu->f[1];
|
|
/* 022A8DDC */ Gambit_fn_022A8B58(cpu);
|
|
/* 022A8DE0 */ _t47 = cpu->r[31] + 0x00000AA0u;
|
|
/* 022A8DE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 022A8DE4 */ cpu->r[10] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022A8DE8 */ _t48 = cpu->r[29] + 0x000001BCu;
|
|
/* 022A8DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022A8DEC */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8DEC */ rbrew_write32(cpu->mem, _t49, cpu->r[10]);
|
|
/* 022A8DF0 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8DF0 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[0]);
|
|
/* 022A8DF4 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8DF4 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
/* 022A8DF8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8DF8 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 022A8DFC */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 022A8DFC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 022A8E00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022A8E04 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8E04 */ rbrew_write32(cpu->mem, _t54, cpu->r[28]);
|
|
/* 022A8E08 */ Gambit_fn_022471AC(cpu);
|
|
/* 022A8E0C */ _t55 = cpu->r[1] + 0x00000068u;
|
|
/* 022A8E0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A8E10 */ _t56 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022A8E10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022A8E14 */ _t57 = cpu->r[1] + 0x00000080u;
|
|
/* 022A8E14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022A8E18 */ _t58 = cpu->r[1] + 0x00000070u;
|
|
/* 022A8E18 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022A8E1C */ _t59 = cpu->r[1] + 0x00000078u;
|
|
/* 022A8E1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 022A8E20 */ _t60 = cpu->r[1] + 0x00000074u;
|
|
/* 022A8E20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022A8E24 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A8E24 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022A8E24 */ if (_t62) goto L_022A8E28; // else: addr-0 trap, fall-through
|
|
L_022A8E28: ; // 0x22a8e28
|
|
/* 022A8E28 */ _t63 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022A8E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A8E2C */ cpu->lr = cpu->r[0];
|
|
/* 022A8E30 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022A8E34 */ return;
|
|
}
|
|
|
|
// fn_022A8C8C @ 0x22a8c8c
|
|
void Gambit_fn_022A8C8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63;
|
|
|
|
L_022A8C8C: ; // 0x22a8c8c
|
|
/* 022A8C8C */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022A8C8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8C8C */ cpu->r[1] = _t0;
|
|
/* 022A8C90 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 022A8C90 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022A8C94 */ /* nop */
|
|
/* 022A8C98 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 022A8C98 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022A8C9C */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022A8C9C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022A8CA0 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 022A8CA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022A8CA4 */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022A8CA4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022A8CA8 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022A8CA8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022A8CAC */ _t7 = cpu->r[1] + 0x00000070u;
|
|
/* 022A8CAC */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 022A8CB0 */ _t8 = cpu->r[3] + 0x00000070u;
|
|
/* 022A8CB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A8CB4 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A8CB8 */ Gambit_fn_022A8A28(cpu);
|
|
/* 022A8CBC */ cpu->r[7] = 0x10060000u;
|
|
/* 022A8CC0 */ /* nop */
|
|
/* 022A8CC4 */ _t9 = cpu->r[7] + 0x00001664u;
|
|
/* 022A8CC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022A8CC8 */ /* nop */
|
|
/* 022A8CCC */ /* nop */
|
|
/* 022A8CD0 */ _t10 = cpu->r[1] + 0x00000020u;
|
|
/* 022A8CD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A8CD4 */ _t11 = cpu->r[31] + 0x000000A8u;
|
|
/* 022A8CD4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 022A8CD8 */ _t12 = cpu->r[1] + 0x00000050u;
|
|
/* 022A8CD8 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
/* 022A8CDC */ cpu->f[12] = cpu->f[13] * cpu->f[1];
|
|
/* 022A8CE0 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 022A8CE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A8CE4 */ _t14 = cpu->r[1] + 0x00000028u;
|
|
/* 022A8CE4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022A8CE8 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 022A8CE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A8CEC */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 022A8CEC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 022A8CF0 */ /* nop */
|
|
/* 022A8CF4 */ _t17 = cpu->r[1] + 0x00000058u;
|
|
/* 022A8CF4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 022A8CF8 */ _t18 = cpu->r[1] + 0x00000058u;
|
|
/* 022A8CF8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022A8CFC */ /* nop */
|
|
/* 022A8D00 */ _t19 = cpu->r[29] + 0x00000148u;
|
|
/* 022A8D00 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022A8D04 */ cpu->f[8] = cpu->f[9] + cpu->f[9];
|
|
/* 022A8D08 */ /* nop */
|
|
/* 022A8D0C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A8D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A8D10 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8D10 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022A8D14 */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8D14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8D18 */ /* nop */
|
|
/* 022A8D1C */ _t23 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8D1C */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022A8D20 */ _t24 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022A8D20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022A8D24 */ _t25 = cpu->r[1] + 0x00000030u;
|
|
/* 022A8D24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022A8D28 */ cpu->f[9] = cpu->f[10] + cpu->f[12];
|
|
/* 022A8D2C */ _t26 = cpu->r[1] + 0x00000044u;
|
|
/* 022A8D2C */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022A8D30 */ _t27 = cpu->r[1] + 0x00000048u;
|
|
/* 022A8D30 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022A8D34 */ /* nop */
|
|
/* 022A8D38 */ _t28 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8D38 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 022A8D3C */ _t29 = cpu->r[1] + 0x00000040u;
|
|
/* 022A8D3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A8D40 */ /* nop */
|
|
/* 022A8D44 */ /* nop */
|
|
/* 022A8D48 */ _t30 = cpu->r[1] + 0x00000038u;
|
|
/* 022A8D48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A8D4C */ _t31 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A8D4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A8D50 */ _t32 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022A8D50 */ rbrew_write32(cpu->mem, _t32, cpu->r[11]);
|
|
/* 022A8D54 */ cpu->r[28] = cpu->r[29] + 0x00000140u;
|
|
/* 022A8D58 */ _t33 = cpu->r[1] + 0x00000064u;
|
|
/* 022A8D58 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 022A8D5C */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8D60 */ _t34 = cpu->r[1] + 0x00000060u;
|
|
/* 022A8D60 */ rbrew_write32(cpu->mem, _t34, cpu->r[12]);
|
|
/* 022A8D64 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8D68 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A8D6C */ _t35 = cpu->r[8] + 0x00000128u;
|
|
/* 022A8D6C */ cpu->r[7] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A8D6C */ cpu->r[8] = _t35;
|
|
/* 022A8D70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8D74 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A8D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A8D7C */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A8D80 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8D80 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022A8D80 */ if (_t37) goto L_022A8D84; else goto L_022A8D98;
|
|
L_022A8D84: ; // 0x22a8d84
|
|
/* 022A8D84 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A8D88 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A8D8C */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A8D90 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 022A8D90 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
/* 022A8D94 */ _t39 = cpu->r[4] + 0x00000000u;
|
|
/* 022A8D94 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
L_022A8D98: ; // 0x22a8d98
|
|
/* 022A8D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8D9C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8D9C */ _t41 = _t40 & 0x00000001u;
|
|
/* 022A8D9C */ if (_t41) goto L_022A8DBC; else goto L_022A8DA0;
|
|
L_022A8DA0: ; // 0x22a8da0
|
|
/* 022A8DA0 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8DA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A8DA4 */ _t43 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A8DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A8DA8 */ cpu->ctr = cpu->r[12];
|
|
/* 022A8DAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8DB8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8DB8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022A8DB8 */ if (_t45) goto L_022A8DBC; else goto L_022A8DC0;
|
|
L_022A8DBC: ; // 0x22a8dbc
|
|
/* 022A8DBC */ cpu->r[31] = 0x00000000u;
|
|
L_022A8DC0: ; // 0x22a8dc0
|
|
/* 022A8DC0 */ _t46 = cpu->r[29] + 0x00000070u;
|
|
/* 022A8DC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022A8DC4 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022A8DC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8DCC */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8DD0 */ Gambit_fn_022A8A28(cpu);
|
|
/* 022A8DD4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022A8DD8 */ cpu->f[31] = cpu->f[1];
|
|
/* 022A8DDC */ Gambit_fn_022A8B58(cpu);
|
|
/* 022A8DE0 */ _t47 = cpu->r[31] + 0x00000AA0u;
|
|
/* 022A8DE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 022A8DE4 */ cpu->r[10] = cpu->r[1] + 0x0000005Cu;
|
|
/* 022A8DE8 */ _t48 = cpu->r[29] + 0x000001BCu;
|
|
/* 022A8DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022A8DEC */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8DEC */ rbrew_write32(cpu->mem, _t49, cpu->r[10]);
|
|
/* 022A8DF0 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8DF0 */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[0]);
|
|
/* 022A8DF4 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8DF4 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]);
|
|
/* 022A8DF8 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8DF8 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[31]);
|
|
/* 022A8DFC */ _t53 = cpu->r[1] + 0x00000018u;
|
|
/* 022A8DFC */ rbrew_write_f32(cpu->mem, _t53, cpu->f[1]);
|
|
/* 022A8E00 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022A8E04 */ _t54 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8E04 */ rbrew_write32(cpu->mem, _t54, cpu->r[28]);
|
|
/* 022A8E08 */ Gambit_fn_022471AC(cpu);
|
|
/* 022A8E0C */ _t55 = cpu->r[1] + 0x00000068u;
|
|
/* 022A8E0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A8E10 */ _t56 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022A8E10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022A8E14 */ _t57 = cpu->r[1] + 0x00000080u;
|
|
/* 022A8E14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022A8E18 */ _t58 = cpu->r[1] + 0x00000070u;
|
|
/* 022A8E18 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022A8E1C */ _t59 = cpu->r[1] + 0x00000078u;
|
|
/* 022A8E1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 022A8E20 */ _t60 = cpu->r[1] + 0x00000074u;
|
|
/* 022A8E20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022A8E24 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022A8E24 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022A8E24 */ if (_t62) goto L_022A8E28; // else: addr-0 trap, fall-through
|
|
L_022A8E28: ; // 0x22a8e28
|
|
/* 022A8E28 */ _t63 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022A8E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A8E2C */ cpu->lr = cpu->r[0];
|
|
/* 022A8E30 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022A8E34 */ return;
|
|
}
|
|
|
|
// fn_022A8E38 @ 0x22a8e38
|
|
void Gambit_fn_022A8E38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_022A8E38: ; // 0x22a8e38
|
|
/* 022A8E38 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022A8E38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8E38 */ cpu->r[1] = _t0;
|
|
/* 022A8E3C */ /* nop */
|
|
/* 022A8E40 */ cpu->r[0] = cpu->lr;
|
|
/* 022A8E44 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8E48 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A8E48 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A8E4C */ Gambit_fn_022A8C88(cpu);
|
|
/* 022A8E50 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8E54 */ _t2 = cpu->r[30] + 0x000001C4u;
|
|
/* 022A8E54 */ cpu->r[26] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A8E58 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8E5C */ cpu->r[28] = 0x101D0000u;
|
|
/* 022A8E60 */ _t3 = cpu->r[28] + 0x00000128u;
|
|
/* 022A8E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A8E60 */ cpu->r[28] = _t3;
|
|
/* 022A8E64 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022A8E68 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8E6C */ cpu->r[29] = 0x10060000u;
|
|
/* 022A8E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A8E74 */ cpu->r[29] = cpu->r[29] + 0x000013F8u;
|
|
/* 022A8E78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8E78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A8E78 */ if (_t5) goto L_022A8E7C; else goto L_022A8E88;
|
|
L_022A8E7C: ; // 0x22a8e7c
|
|
/* 022A8E7C */ _t6 = cpu->r[27] + 0x00000168u;
|
|
/* 022A8E7C */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 022A8E80 */ cpu->r[8] = 0x00000001u;
|
|
/* 022A8E84 */ _t7 = cpu->r[28] + 0x00000000u;
|
|
/* 022A8E84 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
L_022A8E88: ; // 0x22a8e88
|
|
/* 022A8E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8E8C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8E8C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A8E8C */ if (_t9) goto L_022A8EB0; else goto L_022A8E90;
|
|
L_022A8E90: ; // 0x22a8e90
|
|
/* 022A8E90 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8E90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A8E94 */ _t11 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022A8E94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A8E98 */ cpu->ctr = cpu->r[0];
|
|
/* 022A8E9C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8EA0 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A8EA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8EAC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8EAC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A8EAC */ if (_t13) goto L_022A8EB0; else goto L_022A8EB4;
|
|
L_022A8EB0: ; // 0x22a8eb0
|
|
/* 022A8EB0 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8EB4: ; // 0x22a8eb4
|
|
/* 022A8EB4 */ _t14 = cpu->r[26] + 0x00000144u;
|
|
/* 022A8EB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022A8EB8 */ _t15 = cpu->r[31] + 0x00000688u;
|
|
/* 022A8EB8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022A8EBC */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 022A8EC0 */ _t16 = cpu->r[30] + 0x00000144u;
|
|
/* 022A8EC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022A8EC4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022A8EC8 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A8EC8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022A8EC8 */ if (_t18) goto L_022A8FB0; else goto L_022A8ECC;
|
|
L_022A8ECC: ; // 0x22a8ecc
|
|
/* 022A8ECC */ _t19 = cpu->r[30] + 0x00000148u;
|
|
/* 022A8ECC */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A8ED0 */ _t20 = cpu->r[30] + 0x00000144u;
|
|
/* 022A8ED0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A8ED4 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8ED4 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 022A8ED8 */ _t22 = cpu->r[30] + 0x00000140u;
|
|
/* 022A8ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A8EDC */ _t23 = cpu->r[30] + 0x000001C4u;
|
|
/* 022A8EDC */ cpu->r[26] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022A8EE0 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8EE0 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 022A8EE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A8EE8 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8EE8 */ rbrew_write32(cpu->mem, _t25, cpu->r[7]);
|
|
/* 022A8EEC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8EF0 */ _t26 = cpu->r[28] + 0x00000000u;
|
|
/* 022A8EF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A8EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A8EF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8EFC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8EFC */ _t28 = _t27 & 0x00000001u;
|
|
/* 022A8EFC */ if (_t28) goto L_022A8F00; else goto L_022A8F0C;
|
|
L_022A8F00: ; // 0x22a8f00
|
|
/* 022A8F00 */ _t29 = cpu->r[27] + 0x00000168u;
|
|
/* 022A8F00 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 022A8F04 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A8F08 */ _t30 = cpu->r[28] + 0x00000000u;
|
|
/* 022A8F08 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_022A8F0C: ; // 0x22a8f0c
|
|
/* 022A8F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A8F10 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8F10 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022A8F10 */ if (_t32) goto L_022A8F34; else goto L_022A8F14;
|
|
L_022A8F14: ; // 0x22a8f14
|
|
/* 022A8F14 */ _t33 = cpu->r[31] + 0x00000000u;
|
|
/* 022A8F14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022A8F18 */ _t34 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A8F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022A8F1C */ cpu->ctr = cpu->r[0];
|
|
/* 022A8F20 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A8F24 */ cpu->r[4] = cpu->r[27] + 0x00000168u;
|
|
/* 022A8F28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A8F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A8F30 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A8F30 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022A8F30 */ if (_t36) goto L_022A8F34; else goto L_022A8F38;
|
|
L_022A8F34: ; // 0x22a8f34
|
|
/* 022A8F34 */ cpu->r[31] = 0x00000000u;
|
|
L_022A8F38: ; // 0x22a8f38
|
|
/* 022A8F38 */ _t37 = cpu->r[26] + 0x00000144u;
|
|
/* 022A8F38 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022A8F3C */ _t38 = cpu->r[31] + 0x00000688u;
|
|
/* 022A8F3C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022A8F40 */ _t39 = cpu->r[30] + 0x00000070u;
|
|
/* 022A8F40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022A8F44 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 022A8F48 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 022A8F48 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022A8F4C */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022A8F4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022A8F50 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A8F50 */ rbrew_write_f32(cpu->mem, _t42, cpu->f[12]);
|
|
/* 022A8F54 */ _t43 = cpu->r[30] + 0x00000140u;
|
|
/* 022A8F54 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 022A8F58 */ _t44 = cpu->r[30] + 0x00000148u;
|
|
/* 022A8F58 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[13]);
|
|
/* 022A8F5C */ _t45 = cpu->r[30] + 0x00000144u;
|
|
/* 022A8F5C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
/* 022A8F60 */ _t46 = cpu->r[8] + 0x00000034u;
|
|
/* 022A8F60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022A8F64 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A8F68 */ _t47 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8F68 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 022A8F6C */ _t48 = cpu->r[8] + 0x00000038u;
|
|
/* 022A8F6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022A8F70 */ _t49 = cpu->r[9] + 0x00001648u;
|
|
/* 022A8F70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022A8F74 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 022A8F74 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 022A8F78 */ _t51 = cpu->r[8] + 0x0000003Cu;
|
|
/* 022A8F78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022A8F7C */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022A8F7C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022A8F80 */ _t53 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8F80 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 022A8F84 */ _t54 = cpu->r[8] + 0x00000034u;
|
|
/* 022A8F84 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 022A8F88 */ _t55 = cpu->r[8] + 0x00000038u;
|
|
/* 022A8F88 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 022A8F8C */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A8F8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022A8F90 */ _t57 = cpu->r[8] + 0x0000003Cu;
|
|
/* 022A8F90 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 022A8F94 */ _t58 = cpu->r[30] + 0x00000070u;
|
|
/* 022A8F94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022A8F98 */ _t59 = cpu->r[11] + 0x00000010u;
|
|
/* 022A8F98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022A8F9C */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022A8FA0 */ cpu->r[10] = cpu->r[10] | 0x00000004u;
|
|
/* 022A8FA4 */ cpu->r[4] = 0x00000001u;
|
|
/* 022A8FA8 */ _t60 = cpu->r[11] + 0x00000010u;
|
|
/* 022A8FA8 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]);
|
|
/* 022A8FAC */ Gambit_fn_0229CFB0(cpu);
|
|
L_022A8FB0: ; // 0x22a8fb0
|
|
/* 022A8FB0 */ /* nop */
|
|
/* 022A8FB4 */ _t61 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A8FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022A8FB8 */ cpu->lr = cpu->r[0];
|
|
/* 022A8FBC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022A8FC0 */ return;
|
|
}
|
|
|
|
// fn_022A8FC8 @ 0x22a8fc8
|
|
void Gambit_fn_022A8FC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_022A8FC8: ; // 0x22a8fc8
|
|
/* 022A8FC8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022A8FC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A8FC8 */ cpu->r[1] = _t0;
|
|
/* 022A8FCC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022A8FCC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022A8FD0 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022A8FD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022A8FD4 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A8FD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022A8FD8 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 022A8FD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022A8FDC */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022A8FDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A8FE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A8FE4 */ cpu->r[29] = cpu->r[12] + 0x00000310u;
|
|
/* 022A8FE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A8FEC */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A8FF0 */ _t6 = cpu->r[11] + 0x00000128u;
|
|
/* 022A8FF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A8FF0 */ cpu->r[11] = _t6;
|
|
/* 022A8FF4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022A8FF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A8FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A9000 */ cpu->r[4] = cpu->r[4] + 0x00000168u;
|
|
/* 022A9004 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9004 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A9004 */ if (_t8) goto L_022A9008; else goto L_022A901C;
|
|
L_022A9008: ; // 0x22a9008
|
|
/* 022A9008 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A900C */ cpu->r[10] = 0x00000001u;
|
|
/* 022A9010 */ cpu->r[12] = cpu->r[12] + 0x000013F8u;
|
|
/* 022A9014 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9014 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 022A9018 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 022A9018 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
L_022A901C: ; // 0x22a901c
|
|
/* 022A901C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A9020 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9020 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022A9020 */ if (_t12) goto L_022A9040; else goto L_022A9024;
|
|
L_022A9024: ; // 0x22a9024
|
|
/* 022A9024 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 022A9024 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A9028 */ _t14 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A9028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A902C */ cpu->ctr = cpu->r[0];
|
|
/* 022A9030 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A9034 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A903C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A903C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A903C */ if (_t16) goto L_022A9040; else goto L_022A9044;
|
|
L_022A9040: ; // 0x22a9040
|
|
/* 022A9040 */ cpu->r[31] = 0x00000000u;
|
|
L_022A9044: ; // 0x22a9044
|
|
/* 022A9044 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022A9048 */ _t17 = cpu->r[31] + 0x000013A4u;
|
|
/* 022A9048 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022A904C */ cpu->r[10] = cpu->r[10] + 0x00006350u;
|
|
/* 022A9050 */ /* nop */
|
|
/* 022A9054 */ _t18 = cpu->r[10] + 0x00000008u;
|
|
/* 022A9054 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022A9058 */ /* nop */
|
|
/* 022A905C */ /* nop */
|
|
/* 022A9060 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022A9060 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A9064 */ cpu->f[13] = cpu->f[0] * cpu->f[12];
|
|
/* 022A9068 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9068 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A906C */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022A906C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]);
|
|
/* 022A9070 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022A9070 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[13]);
|
|
/* 022A9074 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022A9074 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022A9078 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022A9078 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022A907C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A907C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 022A9080 */ _t26 = cpu->r[29] + 0x00000004u;
|
|
/* 022A9080 */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A9084 */ cpu->ctr = cpu->r[7];
|
|
/* 022A9088 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022A908C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A9090 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9094 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 022A9094 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A9098 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 022A9098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A909C */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A909C */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A90A0 */ cpu->lr = cpu->r[0];
|
|
/* 022A90A4 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 022A90A4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A90A8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022A90AC */ return;
|
|
}
|
|
|
|
// fn_022A90B4 @ 0x22a90b4
|
|
void Gambit_fn_022A90B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
|
|
L_022A90B4: ; // 0x22a90b4
|
|
/* 022A90B4 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022A90B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A90B4 */ cpu->r[1] = _t0;
|
|
/* 022A90B8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022A90B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A90BC */ cpu->r[31] = cpu->r[3];
|
|
/* 022A90C0 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A90C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A90C4 */ _t3 = cpu->r[31] + 0x00000070u;
|
|
/* 022A90C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A90C8 */ _t4 = cpu->r[10] + 0x00000010u;
|
|
/* 022A90C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A90CC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A90CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A90D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A90D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A90D0 */ if (_t6) goto L_022A917C; else goto L_022A90D4;
|
|
L_022A90D4: ; // 0x22a90d4
|
|
/* 022A90D4 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022A90D8 */ Gambit_fn_02043AC4(cpu);
|
|
/* 022A90DC */ cpu->r[9] = 0x101F0000u;
|
|
/* 022A90E0 */ _t7 = cpu->r[9] + 0x00006350u;
|
|
/* 022A90E0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022A90E0 */ cpu->r[9] = _t7;
|
|
/* 022A90E4 */ _t8 = cpu->r[9] + 0x00000004u;
|
|
/* 022A90E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022A90E8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A90EC */ _t9 = cpu->r[9] + 0x00000008u;
|
|
/* 022A90EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022A90F0 */ cpu->f[0] = -cpu->f[0];
|
|
/* 022A90F4 */ _t10 = cpu->r[12] + 0x0000164Cu;
|
|
/* 022A90F4 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022A90F8 */ cpu->f[12] = -cpu->f[13];
|
|
/* 022A90FC */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 022A90FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A9100 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9104 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9104 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022A9108 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9108 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A910C */ cpu->r[3] = 0x101C0000u;
|
|
/* 022A9110 */ _t14 = cpu->r[12] + 0x00001944u;
|
|
/* 022A9110 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022A9114 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022A9114 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[12]);
|
|
/* 022A9118 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022A9118 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A911C */ cpu->f[10] = -cpu->f[11];
|
|
/* 022A9120 */ cpu->r[11] = 0x101E0000u;
|
|
/* 022A9124 */ _t17 = cpu->r[3] + 0x00001EF8u;
|
|
/* 022A9124 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022A9128 */ cpu->f[2] = cpu->f[4];
|
|
/* 022A912C */ _t18 = cpu->r[11] + 0xFFFF958Cu;
|
|
/* 022A912C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022A9130 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 022A9134 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 022A9134 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[10]);
|
|
/* 022A9138 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 022A9138 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A913C */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 022A9140 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 022A9140 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022A9144 */ cpu->r[7] = 0x0000000Fu;
|
|
/* 022A9148 */ cpu->r[4] = cpu->r[31] + 0x00000140u;
|
|
/* 022A914C */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 022A914C */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 022A9150 */ cpu->r[6] = 0x00000200u;
|
|
/* 022A9154 */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022A9154 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 022A9158 */ Gambit_fn_0204A864(cpu);
|
|
/* 022A915C */ cpu->r[11] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A915C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022A9160 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9160 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 022A9164 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9164 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022A9164 */ if (_t26) goto L_022A9178; else goto L_022A9168;
|
|
L_022A9168: ; // 0x22a9168
|
|
/* 022A9168 */ _t27 = cpu->r[31] + 0x00000070u;
|
|
/* 022A9168 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022A916C */ _t28 = cpu->r[9] + 0x00000010u;
|
|
/* 022A916C */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022A9170 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Cu);
|
|
/* 022A9174 */ _t29 = cpu->r[9] + 0x00000010u;
|
|
/* 022A9174 */ rbrew_write32(cpu->mem, _t29, cpu->r[12]);
|
|
L_022A9178: ; // 0x22a9178
|
|
/* 022A9178 */ _t30 = cpu->r[31] + 0x00000070u;
|
|
/* 022A9178 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
L_022A917C: ; // 0x22a917c
|
|
/* 022A917C */ _t31 = cpu->r[10] + 0x0000000Cu;
|
|
/* 022A917C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A9180 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A9180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A9184 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9184 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A9184 */ if (_t33) goto L_022A91A8; else goto L_022A9188;
|
|
L_022A9188: ; // 0x22a9188
|
|
/* 022A9188 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A918C */ cpu->r[4] = 0x00000002u;
|
|
/* 022A9190 */ Gambit_fn_0229CFB0(cpu);
|
|
/* 022A9194 */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A9194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022A9198 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 022A9198 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A919C */ cpu->lr = cpu->r[0];
|
|
/* 022A91A0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022A91A4 */ return;
|
|
L_022A91A8: ; // 0x22a91a8
|
|
/* 022A91A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A91AC */ Gambit_fn_022A8C88(cpu);
|
|
/* 022A91B0 */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A91B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022A91B4 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 022A91B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022A91B8 */ cpu->lr = cpu->r[0];
|
|
/* 022A91BC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022A91C0 */ return;
|
|
}
|
|
|
|
// fn_022A91C4 @ 0x22a91c4
|
|
void Gambit_fn_022A91C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98;
|
|
|
|
L_022A91C4: ; // 0x22a91c4
|
|
/* 022A91C4 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022A91C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A91C4 */ cpu->r[1] = _t0;
|
|
/* 022A91C8 */ /* nop */
|
|
/* 022A91CC */ cpu->r[0] = cpu->lr;
|
|
/* 022A91D0 */ cpu->r[27] = cpu->r[3];
|
|
/* 022A91D4 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A91D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A91D8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A91DC */ cpu->r[25] = 0x101D0000u;
|
|
/* 022A91E0 */ _t2 = cpu->r[25] + 0x00000128u;
|
|
/* 022A91E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A91E0 */ cpu->r[25] = _t2;
|
|
/* 022A91E4 */ cpu->r[24] = 0x101D0000u;
|
|
/* 022A91E8 */ cpu->r[22] = cpu->r[3];
|
|
/* 022A91EC */ cpu->r[26] = 0x10060000u;
|
|
/* 022A91F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A91F4 */ cpu->r[26] = cpu->r[26] + 0x000013F8u;
|
|
/* 022A91F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A91F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022A91F8 */ if (_t4) goto L_022A91FC; else goto L_022A9208;
|
|
L_022A91FC: ; // 0x22a91fc
|
|
/* 022A91FC */ _t5 = cpu->r[24] + 0x00000168u;
|
|
/* 022A91FC */ rbrew_write32(cpu->mem, _t5, cpu->r[26]);
|
|
/* 022A9200 */ cpu->r[8] = 0x00000001u;
|
|
/* 022A9204 */ _t6 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9204 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
L_022A9208: ; // 0x22a9208
|
|
/* 022A9208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u);
|
|
/* 022A920C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A920C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022A920C */ if (_t8) goto L_022A9230; else goto L_022A9210;
|
|
L_022A9210: ; // 0x22a9210
|
|
/* 022A9210 */ _t9 = cpu->r[22] + 0x00000000u;
|
|
/* 022A9210 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A9214 */ _t10 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022A9214 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A9218 */ cpu->ctr = cpu->r[8];
|
|
/* 022A921C */ cpu->r[3] = cpu->r[22];
|
|
/* 022A9220 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9224 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A922C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A922C */ _t12 = _t11 & 0x00000001u;
|
|
/* 022A922C */ if (_t12) goto L_022A9230; else goto L_022A9234;
|
|
L_022A9230: ; // 0x22a9230
|
|
/* 022A9230 */ cpu->r[22] = 0x00000000u;
|
|
L_022A9234: ; // 0x22a9234
|
|
/* 022A9234 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9238 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A923C */ _t13 = cpu->r[25] + 0x00000000u;
|
|
/* 022A923C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022A9240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A9244 */ cpu->r[23] = cpu->r[3];
|
|
/* 022A9248 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9248 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022A9248 */ if (_t15) goto L_022A924C; else goto L_022A9258;
|
|
L_022A924C: ; // 0x22a924c
|
|
/* 022A924C */ _t16 = cpu->r[24] + 0x00000168u;
|
|
/* 022A924C */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 022A9250 */ cpu->r[5] = 0x00000001u;
|
|
/* 022A9254 */ _t17 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9254 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
L_022A9258: ; // 0x22a9258
|
|
/* 022A9258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022A925C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A925C */ _t19 = _t18 & 0x00000001u;
|
|
/* 022A925C */ if (_t19) goto L_022A9280; else goto L_022A9260;
|
|
L_022A9260: ; // 0x22a9260
|
|
/* 022A9260 */ _t20 = cpu->r[23] + 0x00000000u;
|
|
/* 022A9260 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022A9264 */ _t21 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022A9264 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A9268 */ cpu->ctr = cpu->r[8];
|
|
/* 022A926C */ cpu->r[3] = cpu->r[23];
|
|
/* 022A9270 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9274 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A927C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A927C */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A927C */ if (_t23) goto L_022A9280; else goto L_022A9284;
|
|
L_022A9280: ; // 0x22a9280
|
|
/* 022A9280 */ cpu->r[23] = 0x00000000u;
|
|
L_022A9284: ; // 0x22a9284
|
|
/* 022A9284 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9288 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A928C */ _t24 = cpu->r[25] + 0x00000000u;
|
|
/* 022A928C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022A9290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A9294 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A9298 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9298 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022A9298 */ if (_t26) goto L_022A929C; else goto L_022A92A8;
|
|
L_022A929C: ; // 0x22a929c
|
|
/* 022A929C */ _t27 = cpu->r[24] + 0x00000168u;
|
|
/* 022A929C */ rbrew_write32(cpu->mem, _t27, cpu->r[26]);
|
|
/* 022A92A0 */ cpu->r[10] = 0x00000001u;
|
|
/* 022A92A4 */ _t28 = cpu->r[25] + 0x00000000u;
|
|
/* 022A92A4 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]);
|
|
L_022A92A8: ; // 0x22a92a8
|
|
/* 022A92A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A92AC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A92AC */ _t30 = _t29 & 0x00000001u;
|
|
/* 022A92AC */ if (_t30) goto L_022A92D0; else goto L_022A92B0;
|
|
L_022A92B0: ; // 0x22a92b0
|
|
/* 022A92B0 */ _t31 = cpu->r[29] + 0x00000000u;
|
|
/* 022A92B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A92B4 */ _t32 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022A92B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022A92B8 */ cpu->ctr = cpu->r[12];
|
|
/* 022A92BC */ cpu->r[3] = cpu->r[29];
|
|
/* 022A92C0 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A92C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A92C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A92CC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A92CC */ _t34 = _t33 & 0x00000001u;
|
|
/* 022A92CC */ if (_t34) goto L_022A92D0; else goto L_022A92D4;
|
|
L_022A92D0: ; // 0x22a92d0
|
|
/* 022A92D0 */ cpu->r[29] = 0x00000000u;
|
|
L_022A92D4: ; // 0x22a92d4
|
|
/* 022A92D4 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A92D8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A92DC */ _t35 = cpu->r[25] + 0x00000000u;
|
|
/* 022A92DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022A92E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A92E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A92E8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A92E8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022A92E8 */ if (_t37) goto L_022A92EC; else goto L_022A92F8;
|
|
L_022A92EC: ; // 0x22a92ec
|
|
/* 022A92EC */ _t38 = cpu->r[24] + 0x00000168u;
|
|
/* 022A92EC */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 022A92F0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022A92F4 */ _t39 = cpu->r[25] + 0x00000000u;
|
|
/* 022A92F4 */ rbrew_write32(cpu->mem, _t39, cpu->r[5]);
|
|
L_022A92F8: ; // 0x22a92f8
|
|
/* 022A92F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A92FC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A92FC */ _t41 = _t40 & 0x00000001u;
|
|
/* 022A92FC */ if (_t41) goto L_022A9320; else goto L_022A9300;
|
|
L_022A9300: ; // 0x22a9300
|
|
/* 022A9300 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 022A9300 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022A9304 */ _t43 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022A9304 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022A9308 */ cpu->ctr = cpu->r[7];
|
|
/* 022A930C */ cpu->r[3] = cpu->r[31];
|
|
/* 022A9310 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9314 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A931C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A931C */ _t45 = _t44 & 0x00000001u;
|
|
/* 022A931C */ if (_t45) goto L_022A9320; else goto L_022A9324;
|
|
L_022A9320: ; // 0x22a9320
|
|
/* 022A9320 */ cpu->r[31] = 0x00000000u;
|
|
L_022A9324: ; // 0x22a9324
|
|
/* 022A9324 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9328 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A932C */ _t46 = cpu->r[25] + 0x00000000u;
|
|
/* 022A932C */ cpu->r[8] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022A9330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A9334 */ cpu->r[20] = cpu->r[3];
|
|
/* 022A9338 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9338 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022A9338 */ if (_t48) goto L_022A933C; else goto L_022A9348;
|
|
L_022A933C: ; // 0x22a933c
|
|
/* 022A933C */ _t49 = cpu->r[24] + 0x00000168u;
|
|
/* 022A933C */ rbrew_write32(cpu->mem, _t49, cpu->r[26]);
|
|
/* 022A9340 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A9344 */ _t50 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9344 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]);
|
|
L_022A9348: ; // 0x22a9348
|
|
/* 022A9348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 022A934C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A934C */ _t52 = _t51 & 0x00000001u;
|
|
/* 022A934C */ if (_t52) goto L_022A9370; else goto L_022A9350;
|
|
L_022A9350: ; // 0x22a9350
|
|
/* 022A9350 */ _t53 = cpu->r[20] + 0x00000000u;
|
|
/* 022A9350 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022A9354 */ _t54 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022A9354 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022A9358 */ cpu->ctr = cpu->r[11];
|
|
/* 022A935C */ cpu->r[3] = cpu->r[20];
|
|
/* 022A9360 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9364 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A936C */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A936C */ _t56 = _t55 & 0x00000001u;
|
|
/* 022A936C */ if (_t56) goto L_022A9370; else goto L_022A9374;
|
|
L_022A9370: ; // 0x22a9370
|
|
/* 022A9370 */ cpu->r[20] = 0x00000000u;
|
|
L_022A9374: ; // 0x22a9374
|
|
/* 022A9374 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9378 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A937C */ _t57 = cpu->r[25] + 0x00000000u;
|
|
/* 022A937C */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022A9380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9384 */ cpu->r[21] = cpu->r[3];
|
|
/* 022A9388 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9388 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022A9388 */ if (_t59) goto L_022A938C; else goto L_022A9398;
|
|
L_022A938C: ; // 0x22a938c
|
|
/* 022A938C */ _t60 = cpu->r[24] + 0x00000168u;
|
|
/* 022A938C */ rbrew_write32(cpu->mem, _t60, cpu->r[26]);
|
|
/* 022A9390 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9394 */ _t61 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9394 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
L_022A9398: ; // 0x22a9398
|
|
/* 022A9398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 022A939C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A939C */ _t63 = _t62 & 0x00000001u;
|
|
/* 022A939C */ if (_t63) goto L_022A93C0; else goto L_022A93A0;
|
|
L_022A93A0: ; // 0x22a93a0
|
|
/* 022A93A0 */ _t64 = cpu->r[21] + 0x00000000u;
|
|
/* 022A93A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022A93A4 */ _t65 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022A93A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022A93A8 */ cpu->ctr = cpu->r[6];
|
|
/* 022A93AC */ cpu->r[3] = cpu->r[21];
|
|
/* 022A93B0 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A93B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A93B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A93BC */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A93BC */ _t67 = _t66 & 0x00000001u;
|
|
/* 022A93BC */ if (_t67) goto L_022A93C0; else goto L_022A93C4;
|
|
L_022A93C0: ; // 0x22a93c0
|
|
/* 022A93C0 */ cpu->r[21] = 0x00000000u;
|
|
L_022A93C4: ; // 0x22a93c4
|
|
/* 022A93C4 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A93C8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A93CC */ _t68 = cpu->r[25] + 0x00000000u;
|
|
/* 022A93CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022A93D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A93D4 */ cpu->r[28] = cpu->r[3];
|
|
/* 022A93D8 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A93D8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022A93D8 */ if (_t70) goto L_022A93DC; else goto L_022A93E8;
|
|
L_022A93DC: ; // 0x22a93dc
|
|
/* 022A93DC */ _t71 = cpu->r[24] + 0x00000168u;
|
|
/* 022A93DC */ rbrew_write32(cpu->mem, _t71, cpu->r[26]);
|
|
/* 022A93E0 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A93E4 */ _t72 = cpu->r[25] + 0x00000000u;
|
|
/* 022A93E4 */ rbrew_write32(cpu->mem, _t72, cpu->r[11]);
|
|
L_022A93E8: ; // 0x22a93e8
|
|
/* 022A93E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022A93EC */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A93EC */ _t74 = _t73 & 0x00000001u;
|
|
/* 022A93EC */ if (_t74) goto L_022A9410; else goto L_022A93F0;
|
|
L_022A93F0: ; // 0x22a93f0
|
|
/* 022A93F0 */ _t75 = cpu->r[28] + 0x00000000u;
|
|
/* 022A93F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022A93F4 */ _t76 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A93F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022A93F8 */ cpu->ctr = cpu->r[0];
|
|
/* 022A93FC */ cpu->r[3] = cpu->r[28];
|
|
/* 022A9400 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9404 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A940C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A940C */ _t78 = _t77 & 0x00000001u;
|
|
/* 022A940C */ if (_t78) goto L_022A9410; else goto L_022A9414;
|
|
L_022A9410: ; // 0x22a9410
|
|
/* 022A9410 */ cpu->r[28] = 0x00000000u;
|
|
L_022A9414: ; // 0x22a9414
|
|
/* 022A9414 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9418 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A941C */ _t79 = cpu->r[25] + 0x00000000u;
|
|
/* 022A941C */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022A9420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A9424 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A9428 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9428 */ _t81 = _t80 & 0x00000001u;
|
|
/* 022A9428 */ if (_t81) goto L_022A942C; else goto L_022A9438;
|
|
L_022A942C: ; // 0x22a942c
|
|
/* 022A942C */ _t82 = cpu->r[24] + 0x00000168u;
|
|
/* 022A942C */ rbrew_write32(cpu->mem, _t82, cpu->r[26]);
|
|
/* 022A9430 */ cpu->r[10] = 0x00000001u;
|
|
/* 022A9434 */ _t83 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9434 */ rbrew_write32(cpu->mem, _t83, cpu->r[10]);
|
|
L_022A9438: ; // 0x22a9438
|
|
/* 022A9438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A943C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A943C */ _t85 = _t84 & 0x00000001u;
|
|
/* 022A943C */ if (_t85) goto L_022A9460; else goto L_022A9440;
|
|
L_022A9440: ; // 0x22a9440
|
|
/* 022A9440 */ _t86 = cpu->r[30] + 0x00000000u;
|
|
/* 022A9440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022A9444 */ _t87 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A9444 */ cpu->r[6] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022A9448 */ cpu->ctr = cpu->r[6];
|
|
/* 022A944C */ cpu->r[3] = cpu->r[30];
|
|
/* 022A9450 */ cpu->r[4] = cpu->r[24] + 0x00000168u;
|
|
/* 022A9454 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A945C */ _t88 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A945C */ _t89 = _t88 & 0x00000001u;
|
|
/* 022A945C */ if (_t89) goto L_022A9460; else goto L_022A9464;
|
|
L_022A9460: ; // 0x22a9460
|
|
/* 022A9460 */ cpu->r[30] = 0x00000000u;
|
|
L_022A9464: ; // 0x22a9464
|
|
/* 022A9464 */ _t90 = cpu->r[23] + 0x00001094u;
|
|
/* 022A9464 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 022A9468 */ cpu->r[5] = cpu->r[27] + 0x00000140u;
|
|
/* 022A946C */ _t91 = cpu->r[22] + 0x00001094u;
|
|
/* 022A946C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022A9470 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9474 */ _t92 = cpu->r[20] + 0x000010F4u;
|
|
/* 022A9474 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022A9478 */ cpu->r[4] = 0x00000001u;
|
|
/* 022A947C */ _t93 = cpu->r[21] + 0x00001154u;
|
|
/* 022A947C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022A9480 */ _t94 = cpu->r[29] + 0x000010F4u;
|
|
/* 022A9480 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022A9484 */ _t95 = cpu->r[28] + 0x000011B4u;
|
|
/* 022A9484 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022A9488 */ _t96 = cpu->r[30] + 0x00001094u;
|
|
/* 022A9488 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022A948C */ _t97 = cpu->r[31] + 0x00001094u;
|
|
/* 022A948C */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t97);
|
|
/* 022A9490 */ Gambit_fn_022B8D4C(cpu);
|
|
/* 022A9494 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9498 */ Gambit_fn_02271A58(cpu);
|
|
/* 022A949C */ cpu->r[3] = cpu->r[27];
|
|
/* 022A94A0 */ Gambit_fn_02790488(cpu);
|
|
/* 022A94A4 */ /* nop */
|
|
/* 022A94A8 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022A94A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022A94AC */ cpu->lr = cpu->r[0];
|
|
/* 022A94B0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022A94B4 */ return;
|
|
}
|
|
|
|
// fn_022A94B8 @ 0x22a94b8
|
|
void Gambit_fn_022A94B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101;
|
|
|
|
L_022A94B8: ; // 0x22a94b8
|
|
/* 022A94B8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022A94B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A94B8 */ cpu->r[1] = _t0;
|
|
/* 022A94BC */ /* nop */
|
|
/* 022A94C0 */ cpu->r[0] = cpu->lr;
|
|
/* 022A94C4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022A94C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A94C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022A94CC */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 022A94CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022A94D0 */ _t3 = cpu->r[12] + 0x00000268u;
|
|
/* 022A94D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A94D4 */ cpu->r[27] = cpu->r[3];
|
|
/* 022A94D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A94DC */ Gambit_fn_0261F774(cpu);
|
|
/* 022A94E0 */ cpu->r[4] = cpu->r[3];
|
|
/* 022A94E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A94E8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022A94EC */ cpu->r[22] = cpu->r[3];
|
|
/* 022A94F0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A94F4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A94F8 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022A94FC */ _t4 = cpu->r[25] + 0x00000128u;
|
|
/* 022A94FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A94FC */ cpu->r[25] = _t4;
|
|
/* 022A9500 */ cpu->r[26] = 0x10060000u;
|
|
/* 022A9504 */ cpu->r[23] = cpu->r[3];
|
|
/* 022A9508 */ cpu->r[21] = 0x101D0000u;
|
|
/* 022A950C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A9510 */ cpu->r[26] = cpu->r[26] + 0x000013F8u;
|
|
/* 022A9514 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9514 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A9514 */ if (_t6) goto L_022A9518; else goto L_022A9524;
|
|
L_022A9518: ; // 0x22a9518
|
|
/* 022A9518 */ _t7 = cpu->r[21] + 0x00000168u;
|
|
/* 022A9518 */ rbrew_write32(cpu->mem, _t7, cpu->r[26]);
|
|
/* 022A951C */ cpu->r[11] = 0x00000001u;
|
|
/* 022A9520 */ _t8 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9520 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
L_022A9524: ; // 0x22a9524
|
|
/* 022A9524 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022A9528 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9528 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022A9528 */ if (_t10) goto L_022A954C; else goto L_022A952C;
|
|
L_022A952C: ; // 0x22a952c
|
|
/* 022A952C */ _t11 = cpu->r[23] + 0x00000000u;
|
|
/* 022A952C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A9530 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A9530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A9534 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9538 */ cpu->r[3] = cpu->r[23];
|
|
/* 022A953C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9540 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9548 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9548 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022A9548 */ if (_t14) goto L_022A954C; else goto L_022A9550;
|
|
L_022A954C: ; // 0x22a954c
|
|
/* 022A954C */ cpu->r[23] = 0x00000000u;
|
|
L_022A9550: ; // 0x22a9550
|
|
/* 022A9550 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9554 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A9558 */ _t15 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9558 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022A955C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022A9560 */ cpu->r[24] = cpu->r[3];
|
|
/* 022A9564 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9564 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022A9564 */ if (_t17) goto L_022A9568; else goto L_022A9574;
|
|
L_022A9568: ; // 0x22a9568
|
|
/* 022A9568 */ _t18 = cpu->r[21] + 0x00000168u;
|
|
/* 022A9568 */ rbrew_write32(cpu->mem, _t18, cpu->r[26]);
|
|
/* 022A956C */ cpu->r[6] = 0x00000001u;
|
|
/* 022A9570 */ _t19 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9570 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
L_022A9574: ; // 0x22a9574
|
|
/* 022A9574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022A9578 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9578 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022A9578 */ if (_t21) goto L_022A959C; else goto L_022A957C;
|
|
L_022A957C: ; // 0x22a957c
|
|
/* 022A957C */ _t22 = cpu->r[24] + 0x00000000u;
|
|
/* 022A957C */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022A9580 */ _t23 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022A9580 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022A9584 */ cpu->ctr = cpu->r[8];
|
|
/* 022A9588 */ cpu->r[3] = cpu->r[24];
|
|
/* 022A958C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9590 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9598 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9598 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A9598 */ if (_t25) goto L_022A959C; else goto L_022A95A0;
|
|
L_022A959C: ; // 0x22a959c
|
|
/* 022A959C */ cpu->r[24] = 0x00000000u;
|
|
L_022A95A0: ; // 0x22a95a0
|
|
/* 022A95A0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A95A4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A95A8 */ _t26 = cpu->r[25] + 0x00000000u;
|
|
/* 022A95A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022A95AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A95B0 */ cpu->r[28] = cpu->r[3];
|
|
/* 022A95B4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A95B4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022A95B4 */ if (_t28) goto L_022A95B8; else goto L_022A95C4;
|
|
L_022A95B8: ; // 0x22a95b8
|
|
/* 022A95B8 */ _t29 = cpu->r[21] + 0x00000168u;
|
|
/* 022A95B8 */ rbrew_write32(cpu->mem, _t29, cpu->r[26]);
|
|
/* 022A95BC */ cpu->r[10] = 0x00000001u;
|
|
/* 022A95C0 */ _t30 = cpu->r[25] + 0x00000000u;
|
|
/* 022A95C0 */ rbrew_write32(cpu->mem, _t30, cpu->r[10]);
|
|
L_022A95C4: ; // 0x22a95c4
|
|
/* 022A95C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022A95C8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A95C8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022A95C8 */ if (_t32) goto L_022A95EC; else goto L_022A95CC;
|
|
L_022A95CC: ; // 0x22a95cc
|
|
/* 022A95CC */ _t33 = cpu->r[28] + 0x00000000u;
|
|
/* 022A95CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022A95D0 */ _t34 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022A95D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022A95D4 */ cpu->ctr = cpu->r[12];
|
|
/* 022A95D8 */ cpu->r[3] = cpu->r[28];
|
|
/* 022A95DC */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A95E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A95E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A95E8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A95E8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022A95E8 */ if (_t36) goto L_022A95EC; else goto L_022A95F0;
|
|
L_022A95EC: ; // 0x22a95ec
|
|
/* 022A95EC */ cpu->r[28] = 0x00000000u;
|
|
L_022A95F0: ; // 0x22a95f0
|
|
/* 022A95F0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A95F4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A95F8 */ _t37 = cpu->r[25] + 0x00000000u;
|
|
/* 022A95F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022A95FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A9600 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A9604 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9604 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022A9604 */ if (_t39) goto L_022A9608; else goto L_022A9614;
|
|
L_022A9608: ; // 0x22a9608
|
|
/* 022A9608 */ _t40 = cpu->r[21] + 0x00000168u;
|
|
/* 022A9608 */ rbrew_write32(cpu->mem, _t40, cpu->r[26]);
|
|
/* 022A960C */ cpu->r[5] = 0x00000001u;
|
|
/* 022A9610 */ _t41 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9610 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
L_022A9614: ; // 0x22a9614
|
|
/* 022A9614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022A9618 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9618 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022A9618 */ if (_t43) goto L_022A963C; else goto L_022A961C;
|
|
L_022A961C: ; // 0x22a961c
|
|
/* 022A961C */ _t44 = cpu->r[31] + 0x00000000u;
|
|
/* 022A961C */ cpu->r[6] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022A9620 */ _t45 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022A9620 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022A9624 */ cpu->ctr = cpu->r[7];
|
|
/* 022A9628 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A962C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9630 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9638 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9638 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022A9638 */ if (_t47) goto L_022A963C; else goto L_022A9640;
|
|
L_022A963C: ; // 0x22a963c
|
|
/* 022A963C */ cpu->r[31] = 0x00000000u;
|
|
L_022A9640: ; // 0x22a9640
|
|
/* 022A9640 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9644 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A9648 */ _t48 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9648 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022A964C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A9650 */ cpu->r[19] = cpu->r[3];
|
|
/* 022A9654 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9654 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022A9654 */ if (_t50) goto L_022A9658; else goto L_022A9664;
|
|
L_022A9658: ; // 0x22a9658
|
|
/* 022A9658 */ _t51 = cpu->r[21] + 0x00000168u;
|
|
/* 022A9658 */ rbrew_write32(cpu->mem, _t51, cpu->r[26]);
|
|
/* 022A965C */ cpu->r[9] = 0x00000001u;
|
|
/* 022A9660 */ _t52 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9660 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
L_022A9664: ; // 0x22a9664
|
|
/* 022A9664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 022A9668 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9668 */ _t54 = _t53 & 0x00000001u;
|
|
/* 022A9668 */ if (_t54) goto L_022A968C; else goto L_022A966C;
|
|
L_022A966C: ; // 0x22a966c
|
|
/* 022A966C */ _t55 = cpu->r[19] + 0x00000000u;
|
|
/* 022A966C */ cpu->r[10] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022A9670 */ _t56 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022A9670 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022A9674 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9678 */ cpu->r[3] = cpu->r[19];
|
|
/* 022A967C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9680 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9688 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9688 */ _t58 = _t57 & 0x00000001u;
|
|
/* 022A9688 */ if (_t58) goto L_022A968C; else goto L_022A9690;
|
|
L_022A968C: ; // 0x22a968c
|
|
/* 022A968C */ cpu->r[19] = 0x00000000u;
|
|
L_022A9690: ; // 0x22a9690
|
|
/* 022A9690 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9694 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A9698 */ _t59 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9698 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022A969C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022A96A0 */ cpu->r[20] = cpu->r[3];
|
|
/* 022A96A4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A96A4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022A96A4 */ if (_t61) goto L_022A96A8; else goto L_022A96B4;
|
|
L_022A96A8: ; // 0x22a96a8
|
|
/* 022A96A8 */ _t62 = cpu->r[21] + 0x00000168u;
|
|
/* 022A96A8 */ rbrew_write32(cpu->mem, _t62, cpu->r[26]);
|
|
/* 022A96AC */ cpu->r[0] = 0x00000001u;
|
|
/* 022A96B0 */ _t63 = cpu->r[25] + 0x00000000u;
|
|
/* 022A96B0 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
L_022A96B4: ; // 0x22a96b4
|
|
/* 022A96B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 022A96B8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A96B8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022A96B8 */ if (_t65) goto L_022A96DC; else goto L_022A96BC;
|
|
L_022A96BC: ; // 0x22a96bc
|
|
/* 022A96BC */ _t66 = cpu->r[20] + 0x00000000u;
|
|
/* 022A96BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022A96C0 */ _t67 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A96C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022A96C4 */ cpu->ctr = cpu->r[9];
|
|
/* 022A96C8 */ cpu->r[3] = cpu->r[20];
|
|
/* 022A96CC */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A96D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A96D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A96D8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A96D8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022A96D8 */ if (_t69) goto L_022A96DC; else goto L_022A96E0;
|
|
L_022A96DC: ; // 0x22a96dc
|
|
/* 022A96DC */ cpu->r[20] = 0x00000000u;
|
|
L_022A96E0: ; // 0x22a96e0
|
|
/* 022A96E0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A96E4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A96E8 */ _t70 = cpu->r[25] + 0x00000000u;
|
|
/* 022A96E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t70);
|
|
/* 022A96EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A96F0 */ cpu->r[29] = cpu->r[3];
|
|
/* 022A96F4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A96F4 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022A96F4 */ if (_t72) goto L_022A96F8; else goto L_022A9704;
|
|
L_022A96F8: ; // 0x22a96f8
|
|
/* 022A96F8 */ _t73 = cpu->r[21] + 0x00000168u;
|
|
/* 022A96F8 */ rbrew_write32(cpu->mem, _t73, cpu->r[26]);
|
|
/* 022A96FC */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9700 */ _t74 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9700 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
L_022A9704: ; // 0x22a9704
|
|
/* 022A9704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022A9708 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9708 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022A9708 */ if (_t76) goto L_022A972C; else goto L_022A970C;
|
|
L_022A970C: ; // 0x22a970c
|
|
/* 022A970C */ _t77 = cpu->r[29] + 0x00000000u;
|
|
/* 022A970C */ cpu->r[12] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022A9710 */ _t78 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022A9710 */ cpu->r[5] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022A9714 */ cpu->ctr = cpu->r[5];
|
|
/* 022A9718 */ cpu->r[3] = cpu->r[29];
|
|
/* 022A971C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9720 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9728 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9728 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022A9728 */ if (_t80) goto L_022A972C; else goto L_022A9730;
|
|
L_022A972C: ; // 0x22a972c
|
|
/* 022A972C */ cpu->r[29] = 0x00000000u;
|
|
L_022A9730: ; // 0x22a9730
|
|
/* 022A9730 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9734 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022A9738 */ _t81 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9738 */ cpu->r[6] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022A973C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022A9740 */ cpu->r[30] = cpu->r[3];
|
|
/* 022A9744 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9744 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022A9744 */ if (_t83) goto L_022A9748; else goto L_022A9754;
|
|
L_022A9748: ; // 0x22a9748
|
|
/* 022A9748 */ _t84 = cpu->r[21] + 0x00000168u;
|
|
/* 022A9748 */ rbrew_write32(cpu->mem, _t84, cpu->r[26]);
|
|
/* 022A974C */ cpu->r[7] = 0x00000001u;
|
|
/* 022A9750 */ _t85 = cpu->r[25] + 0x00000000u;
|
|
/* 022A9750 */ rbrew_write32(cpu->mem, _t85, cpu->r[7]);
|
|
L_022A9754: ; // 0x22a9754
|
|
/* 022A9754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022A9758 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9758 */ _t87 = _t86 & 0x00000001u;
|
|
/* 022A9758 */ if (_t87) goto L_022A977C; else goto L_022A975C;
|
|
L_022A975C: ; // 0x22a975c
|
|
/* 022A975C */ _t88 = cpu->r[30] + 0x00000000u;
|
|
/* 022A975C */ cpu->r[8] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022A9760 */ _t89 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022A9760 */ cpu->r[9] = rbrew_read32(cpu->mem, _t89);
|
|
/* 022A9764 */ cpu->ctr = cpu->r[9];
|
|
/* 022A9768 */ cpu->r[3] = cpu->r[30];
|
|
/* 022A976C */ cpu->r[4] = cpu->r[21] + 0x00000168u;
|
|
/* 022A9770 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9778 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9778 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022A9778 */ if (_t91) goto L_022A977C; else goto L_022A9780;
|
|
L_022A977C: ; // 0x22a977c
|
|
/* 022A977C */ cpu->r[30] = 0x00000000u;
|
|
L_022A9780: ; // 0x22a9780
|
|
/* 022A9780 */ _t92 = cpu->r[30] + 0x00001094u;
|
|
/* 022A9780 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022A9784 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A9788 */ _t93 = cpu->r[24] + 0x00001094u;
|
|
/* 022A9788 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 022A978C */ cpu->r[5] = cpu->r[27] + 0x00000140u;
|
|
/* 022A9790 */ _t94 = cpu->r[19] + 0x000010F4u;
|
|
/* 022A9790 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022A9794 */ _t95 = cpu->r[31] + 0x00001094u;
|
|
/* 022A9794 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022A9798 */ _t96 = cpu->r[20] + 0x00001154u;
|
|
/* 022A9798 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 022A979C */ _t97 = cpu->r[22] + 0x00000098u;
|
|
/* 022A979C */ cpu->r[4] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022A97A0 */ _t98 = cpu->r[28] + 0x000010F4u;
|
|
/* 022A97A0 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 022A97A4 */ _t99 = cpu->r[23] + 0x00001094u;
|
|
/* 022A97A4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022A97A8 */ _t100 = cpu->r[29] + 0x000011B4u;
|
|
/* 022A97A8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022A97AC */ Gambit_fn_022B8D4C(cpu);
|
|
/* 022A97B0 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A97B4 */ Gambit_fn_02271A58(cpu);
|
|
/* 022A97B8 */ cpu->r[3] = cpu->r[27];
|
|
/* 022A97BC */ Gambit_fn_02790488(cpu);
|
|
/* 022A97C0 */ /* nop */
|
|
/* 022A97C4 */ _t101 = cpu->r[1] + 0x00000044u;
|
|
/* 022A97C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022A97C8 */ cpu->lr = cpu->r[0];
|
|
/* 022A97CC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022A97D0 */ return;
|
|
}
|
|
|
|
// fn_022A97D4 @ 0x22a97d4
|
|
void Gambit_fn_022A97D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022A97D4: ; // 0x22a97d4
|
|
/* 022A97D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A97D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A97D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022A97D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A97D8 */ goto L_022A97DC;
|
|
L_022A97DC: ; // 0x22a97dc
|
|
/* 022A97DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A97DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A97E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A97E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A97E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A97E0 */ goto L_022A97E4;
|
|
L_022A97E4: ; // 0x22a97e4
|
|
/* 022A97E4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022A97E8 @ 0x22a97e8
|
|
void Gambit_fn_022A97E8(CPUState* cpu) {
|
|
L_022A97E8: ; // 0x22a97e8
|
|
/* 022A97E8 */ return;
|
|
}
|
|
|
|
// fn_022A97EC @ 0x22a97ec
|
|
void Gambit_fn_022A97EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022A97EC: ; // 0x22a97ec
|
|
/* 022A97EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A97F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A97F0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022A97F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A97F0 */ goto L_022A97F4;
|
|
L_022A97F4: ; // 0x22a97f4
|
|
/* 022A97F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A97F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A97F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A97F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A97F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A97F8 */ goto L_022A97FC;
|
|
L_022A97FC: ; // 0x22a97fc
|
|
/* 022A97FC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022A9800 @ 0x22a9800
|
|
void Gambit_fn_022A9800(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022A9800: ; // 0x22a9800
|
|
/* 022A9800 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 022A9800 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9804 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 022A9804 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9808 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 022A980C */ cpu->r[11] = 0x10110000u;
|
|
/* 022A9810 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 022A9810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022A9814 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022A9814 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022A9818 */ return;
|
|
}
|
|
|
|
// fn_022A981C @ 0x22a981c
|
|
void Gambit_fn_022A981C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022A981C: ; // 0x22a981c
|
|
/* 022A981C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9820 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9820 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022A9820 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A9820 */ goto L_022A9824;
|
|
L_022A9824: ; // 0x22a9824
|
|
/* 022A9824 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A9824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A9828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A9828 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A9828 */ goto L_022A982C;
|
|
L_022A982C: ; // 0x22a982c
|
|
/* 022A982C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022A9830 @ 0x22a9830
|
|
void Gambit_fn_022A9830(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022A9830: ; // 0x22a9830
|
|
/* 022A9830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9834 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9834 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022A9834 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A9834 */ goto L_022A9838;
|
|
L_022A9838: ; // 0x22a9838
|
|
/* 022A9838 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A9838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A983C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A983C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A983C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A983C */ goto L_022A9840;
|
|
L_022A9840: ; // 0x22a9840
|
|
/* 022A9840 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022A9844 @ 0x22a9844
|
|
void Gambit_fn_022A9844(CPUState* cpu) {
|
|
L_022A9844: ; // 0x22a9844
|
|
/* 022A9844 */ return;
|
|
}
|
|
|
|
// fn_022A9848 @ 0x22a9848
|
|
void Gambit_fn_022A9848(CPUState* cpu) {
|
|
L_022A9848: ; // 0x22a9848
|
|
/* 022A9848 */ return;
|
|
}
|
|
|
|
// fn_022A984C @ 0x22a984c
|
|
void Gambit_fn_022A984C(CPUState* cpu) {
|
|
L_022A984C: ; // 0x22a984c
|
|
/* 022A984C */ return;
|
|
}
|
|
|
|
// fn_022A9850 @ 0x22a9850
|
|
void Gambit_fn_022A9850(CPUState* cpu) {
|
|
L_022A9850: ; // 0x22a9850
|
|
/* 022A9850 */ return;
|
|
}
|
|
|
|
// fn_022A9854 @ 0x22a9854
|
|
void Gambit_fn_022A9854(CPUState* cpu) {
|
|
L_022A9854: ; // 0x22a9854
|
|
/* 022A9854 */ return;
|
|
}
|
|
|
|
// fn_022A9858 @ 0x22a9858
|
|
void Gambit_fn_022A9858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022A9858: ; // 0x22a9858
|
|
/* 022A9858 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022A9858 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A985C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9860 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9860 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A9860 */ if (_t2) goto L_022A986C; else goto L_022A9864;
|
|
L_022A9864: ; // 0x22a9864
|
|
/* 022A9864 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022A9868 */ return;
|
|
L_022A986C: ; // 0x22a986c
|
|
/* 022A986C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9870 */ return;
|
|
}
|
|
|
|
// fn_022A9874 @ 0x22a9874
|
|
void Gambit_fn_022A9874(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022A9874: ; // 0x22a9874
|
|
/* 022A9874 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022A9874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A987C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A987C */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A987C */ if (_t2) goto L_022A9888; else goto L_022A9880;
|
|
L_022A9880: ; // 0x22a9880
|
|
/* 022A9880 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022A9884 */ return;
|
|
L_022A9888: ; // 0x22a9888
|
|
/* 022A9888 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A988C */ return;
|
|
}
|
|
|
|
// fn_022A9890 @ 0x22a9890
|
|
void Gambit_fn_022A9890(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A9890: ; // 0x22a9890
|
|
/* 022A9890 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A9890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9894 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A9894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9898 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9898 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A9898 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022A9898 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A9898 */ goto L_022A989C;
|
|
L_022A989C: ; // 0x22a989c
|
|
/* 022A989C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022A989C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A98A0 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022A98A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A98A4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A98A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A98AC @ 0x22a98ac
|
|
void Gambit_fn_022A98AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A98AC: ; // 0x22a98ac
|
|
/* 022A98AC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A98AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A98B0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A98B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A98B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A98B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A98B4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022A98B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A98B4 */ goto L_022A98B8;
|
|
L_022A98B8: ; // 0x22a98b8
|
|
/* 022A98B8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022A98B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A98BC */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022A98BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A98C0 */ cpu->ctr = cpu->r[0];
|
|
/* 022A98C4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A98C8 @ 0x22a98c8
|
|
void Gambit_fn_022A98C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A98C8: ; // 0x22a98c8
|
|
/* 022A98C8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A98C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A98CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022A98CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A98D0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A98D0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A98D0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022A98D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022A98D0 */ goto L_022A98D4;
|
|
L_022A98D4: ; // 0x22a98d4
|
|
/* 022A98D4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022A98D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A98D8 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022A98D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A98DC */ cpu->ctr = cpu->r[0];
|
|
/* 022A98E0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A98E4 @ 0x22a98e4
|
|
void Gambit_fn_022A98E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A98E4: ; // 0x22a98e4
|
|
/* 022A98E4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A98E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A98E8 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022A98E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A98EC */ cpu->ctr = cpu->r[0];
|
|
/* 022A98F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A98F4 @ 0x22a98f4
|
|
void Gambit_fn_022A98F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A98F4: ; // 0x22a98f4
|
|
/* 022A98F4 */ cpu->r[0] = cpu->lr;
|
|
/* 022A98F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A98F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A98F8 */ cpu->r[1] = _t0;
|
|
/* 022A98FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A98FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A9900 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A9904 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A9908 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022A9908 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A990C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022A9910 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9910 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A9910 */ if (_t5) goto L_022A9914; else goto L_022A9930;
|
|
L_022A9914: ; // 0x22a9914
|
|
/* 022A9914 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022A9914 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A9918 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022A9918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A991C */ cpu->ctr = cpu->r[0];
|
|
/* 022A9920 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A9924 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9928 */ cpu->r[0] = 0x00000002u;
|
|
/* 022A992C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022A992C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A9930: ; // 0x22a9930
|
|
/* 022A9930 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A9934 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A9938 */ cpu->lr = cpu->r[0];
|
|
/* 022A993C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A9940 */ return;
|
|
}
|
|
|
|
// fn_022A98F8 @ 0x22a98f8
|
|
void Gambit_fn_022A98F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022A98F8: ; // 0x22a98f8
|
|
/* 022A98F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A98F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A98F8 */ cpu->r[1] = _t0;
|
|
/* 022A98FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A98FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A9900 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A9904 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9904 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A9908 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022A9908 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A990C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022A9910 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9910 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022A9910 */ if (_t5) goto L_022A9914; else goto L_022A9930;
|
|
L_022A9914: ; // 0x22a9914
|
|
/* 022A9914 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022A9914 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A9918 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022A9918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A991C */ cpu->ctr = cpu->r[0];
|
|
/* 022A9920 */ cpu->r[3] = cpu->r[31];
|
|
/* 022A9924 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9928 */ cpu->r[0] = 0x00000002u;
|
|
/* 022A992C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022A992C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022A9930: ; // 0x22a9930
|
|
/* 022A9930 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A9934 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022A9938 */ cpu->lr = cpu->r[0];
|
|
/* 022A993C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A9940 */ return;
|
|
}
|
|
|
|
// fn_022A9944 @ 0x22a9944
|
|
void Gambit_fn_022A9944(CPUState* cpu) {
|
|
L_022A9944: ; // 0x22a9944
|
|
/* 022A9944 */ return;
|
|
}
|
|
|
|
// fn_022A9948 @ 0x22a9948
|
|
void Gambit_fn_022A9948(CPUState* cpu) {
|
|
L_022A9948: ; // 0x22a9948
|
|
/* 022A9948 */ return;
|
|
}
|
|
|
|
// fn_022A994C @ 0x22a994c
|
|
void Gambit_fn_022A994C(CPUState* cpu) {
|
|
L_022A994C: ; // 0x22a994c
|
|
/* 022A994C */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9950 */ return;
|
|
}
|
|
|
|
// fn_022A9954 @ 0x22a9954
|
|
void Gambit_fn_022A9954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A9954: ; // 0x22a9954
|
|
/* 022A9954 */ goto L_027F8B84;
|
|
L_027F8B84: ; // 0x27f8b84
|
|
/* 027F8B84 */ cpu->r[0] = cpu->lr;
|
|
/* 027F8B88 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 027F8B88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 027F8B88 */ cpu->r[1] = _t0;
|
|
/* 027F8B8C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8B8C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 027F8B90 */ cpu->r[31] = cpu->r[3];
|
|
/* 027F8B94 */ cpu->r[3] = cpu->r[4];
|
|
/* 027F8B98 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8B98 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 027F8B9C */ Gambit_fn_028343D0(cpu);
|
|
/* 027F8BA0 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 027F8BA4 */ cpu->r[12] = cpu->r[3] - cpu->r[0];
|
|
/* 027F8BA8 */ _t3 = cpu->r[31] + 0x00000054u;
|
|
/* 027F8BA8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[12]);
|
|
/* 027F8BAC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 027F8BAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 027F8BB0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027F8BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027F8BB4 */ cpu->lr = cpu->r[0];
|
|
/* 027F8BB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 027F8BBC */ return;
|
|
}
|
|
|
|
// fn_022A9958 @ 0x22a9958
|
|
void Gambit_fn_022A9958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022A9958: ; // 0x22a9958
|
|
/* 022A9958 */ goto L_02319CB4;
|
|
L_02319CB4: ; // 0x2319cb4
|
|
/* 02319CB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02319CB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02319CB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02319CB8 */ cpu->r[1] = _t0;
|
|
/* 02319CBC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319CBC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02319CC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02319CC4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02319CC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02319CC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02319CCC */ cpu->r[3] = cpu->r[31];
|
|
/* 02319CD0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02319CD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02319CD4 */ Gambit_fn_02834450(cpu);
|
|
/* 02319CD8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02319CDC */ _t4 = cpu->r[30] + 0x00000054u;
|
|
/* 02319CDC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 02319CE0 */ Gambit_fn_02834450(cpu);
|
|
/* 02319CE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02319CE8 */ _t5 = cpu->r[30] + 0x00000058u;
|
|
/* 02319CE8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 02319CEC */ Gambit_fn_02834450(cpu);
|
|
/* 02319CF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02319CF4 */ _t6 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02319CF4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[1]);
|
|
/* 02319CF8 */ Gambit_fn_02834450(cpu);
|
|
/* 02319CFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02319D00 */ _t7 = cpu->r[30] + 0x00000060u;
|
|
/* 02319D00 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[1]);
|
|
/* 02319D04 */ Gambit_fn_02834450(cpu);
|
|
/* 02319D08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02319D0C */ _t8 = cpu->r[30] + 0x00000064u;
|
|
/* 02319D0C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[1]);
|
|
/* 02319D10 */ Gambit_fn_02834450(cpu);
|
|
/* 02319D14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02319D18 */ _t9 = cpu->r[30] + 0x00000068u;
|
|
/* 02319D18 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[1]);
|
|
/* 02319D1C */ Gambit_fn_02834410(cpu);
|
|
/* 02319D20 */ cpu->r[0] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02319D24 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02319D28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02319D2C */ _t10 = cpu->r[30] + 0x0000006Cu;
|
|
/* 02319D2C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
/* 02319D30 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02319D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02319D34 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02319D34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02319D38 */ cpu->lr = cpu->r[0];
|
|
/* 02319D3C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319D3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02319D40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02319D44 */ return;
|
|
}
|
|
|
|
// fn_022A995C @ 0x22a995c
|
|
void Gambit_fn_022A995C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A995C: ; // 0x22a995c
|
|
/* 022A995C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A995C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9960 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022A9960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9964 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9968 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A996C @ 0x22a996c
|
|
void Gambit_fn_022A996C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A996C: ; // 0x22a996c
|
|
/* 022A996C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A996C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9970 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022A9970 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9974 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9978 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A997C @ 0x22a997c
|
|
void Gambit_fn_022A997C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A997C: ; // 0x22a997c
|
|
/* 022A997C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A997C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9980 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022A9980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9984 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9988 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A998C @ 0x22a998c
|
|
void Gambit_fn_022A998C(CPUState* cpu) {
|
|
L_022A998C: ; // 0x22a998c
|
|
/* 022A998C */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9990 */ return;
|
|
}
|
|
|
|
// fn_022A9994 @ 0x22a9994
|
|
void Gambit_fn_022A9994(CPUState* cpu) {
|
|
L_022A9994: ; // 0x22a9994
|
|
/* 022A9994 */ return;
|
|
}
|
|
|
|
// fn_022A9998 @ 0x22a9998
|
|
void Gambit_fn_022A9998(CPUState* cpu) {
|
|
L_022A9998: ; // 0x22a9998
|
|
/* 022A9998 */ return;
|
|
}
|
|
|
|
// fn_022A999C @ 0x22a999c
|
|
void Gambit_fn_022A999C(CPUState* cpu) {
|
|
L_022A999C: ; // 0x22a999c
|
|
/* 022A999C */ return;
|
|
}
|
|
|
|
// fn_022A99A0 @ 0x22a99a0
|
|
void Gambit_fn_022A99A0(CPUState* cpu) {
|
|
L_022A99A0: ; // 0x22a99a0
|
|
/* 022A99A0 */ return;
|
|
}
|
|
|
|
// fn_022A99A4 @ 0x22a99a4
|
|
void Gambit_fn_022A99A4(CPUState* cpu) {
|
|
L_022A99A4: ; // 0x22a99a4
|
|
/* 022A99A4 */ return;
|
|
}
|
|
|
|
// fn_022A99A8 @ 0x22a99a8
|
|
void Gambit_fn_022A99A8(CPUState* cpu) {
|
|
L_022A99A8: ; // 0x22a99a8
|
|
/* 022A99A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A99AC */ return;
|
|
}
|
|
|
|
// fn_022A99B0 @ 0x22a99b0
|
|
void Gambit_fn_022A99B0(CPUState* cpu) {
|
|
L_022A99B0: ; // 0x22a99b0
|
|
/* 022A99B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A99B4 */ return;
|
|
}
|
|
|
|
// fn_022A99B8 @ 0x22a99b8
|
|
void Gambit_fn_022A99B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022A99B8: ; // 0x22a99b8
|
|
/* 022A99B8 */ cpu->r[0] = cpu->lr;
|
|
/* 022A99BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A99BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A99BC */ cpu->r[1] = _t0;
|
|
/* 022A99C0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A99C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A99C4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A99C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A99C8 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022A99C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A99CC */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022A99CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A99D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A99D4 */ cpu->ctr = cpu->r[9];
|
|
/* 022A99D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A99DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A99E0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A99E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A99E4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022A99E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A99E8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022A99E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A99EC */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022A99EC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022A99F0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022A99F0 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022A99F4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022A99F4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022A99F8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A99F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A99FC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022A99FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A9A00 */ cpu->lr = cpu->r[0];
|
|
/* 022A9A04 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A9A08 */ return;
|
|
}
|
|
|
|
// fn_022A99BC @ 0x22a99bc
|
|
void Gambit_fn_022A99BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022A99BC: ; // 0x22a99bc
|
|
/* 022A99BC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022A99BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A99BC */ cpu->r[1] = _t0;
|
|
/* 022A99C0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022A99C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A99C4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A99C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A99C8 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022A99C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A99CC */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022A99CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A99D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A99D4 */ cpu->ctr = cpu->r[9];
|
|
/* 022A99D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022A99DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A99E0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A99E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A99E4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022A99E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022A99E8 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022A99E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A99EC */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022A99EC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022A99F0 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022A99F0 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022A99F4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022A99F4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022A99F8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022A99F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022A99FC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022A99FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022A9A00 */ cpu->lr = cpu->r[0];
|
|
/* 022A9A04 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022A9A08 */ return;
|
|
}
|
|
|
|
// fn_022A9A0C @ 0x22a9a0c
|
|
void Gambit_fn_022A9A0C(CPUState* cpu) {
|
|
L_022A9A0C: ; // 0x22a9a0c
|
|
/* 022A9A0C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A10 */ return;
|
|
}
|
|
|
|
// fn_022A9A14 @ 0x22a9a14
|
|
void Gambit_fn_022A9A14(CPUState* cpu) {
|
|
L_022A9A14: ; // 0x22a9a14
|
|
/* 022A9A14 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A18 */ return;
|
|
}
|
|
|
|
// fn_022A9A1C @ 0x22a9a1c
|
|
void Gambit_fn_022A9A1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A9A1C: ; // 0x22a9a1c
|
|
/* 022A9A1C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A9A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9A20 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022A9A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9A24 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9A28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A9A2C @ 0x22a9a2c
|
|
void Gambit_fn_022A9A2C(CPUState* cpu) {
|
|
L_022A9A2C: ; // 0x22a9a2c
|
|
/* 022A9A2C */ return;
|
|
}
|
|
|
|
// fn_022A9A30 @ 0x22a9a30
|
|
void Gambit_fn_022A9A30(CPUState* cpu) {
|
|
L_022A9A30: ; // 0x22a9a30
|
|
/* 022A9A30 */ return;
|
|
}
|
|
|
|
// fn_022A9A34 @ 0x22a9a34
|
|
void Gambit_fn_022A9A34(CPUState* cpu) {
|
|
L_022A9A34: ; // 0x22a9a34
|
|
/* 022A9A34 */ return;
|
|
}
|
|
|
|
// fn_022A9A38 @ 0x22a9a38
|
|
void Gambit_fn_022A9A38(CPUState* cpu) {
|
|
L_022A9A38: ; // 0x22a9a38
|
|
/* 022A9A38 */ return;
|
|
}
|
|
|
|
// fn_022A9A3C @ 0x22a9a3c
|
|
void Gambit_fn_022A9A3C(CPUState* cpu) {
|
|
L_022A9A3C: ; // 0x22a9a3c
|
|
/* 022A9A3C */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9A40 */ return;
|
|
}
|
|
|
|
// fn_022A9A44 @ 0x22a9a44
|
|
void Gambit_fn_022A9A44(CPUState* cpu) {
|
|
L_022A9A44: ; // 0x22a9a44
|
|
/* 022A9A44 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9A48 */ return;
|
|
}
|
|
|
|
// fn_022A9A4C @ 0x22a9a4c
|
|
void Gambit_fn_022A9A4C(CPUState* cpu) {
|
|
L_022A9A4C: ; // 0x22a9a4c
|
|
/* 022A9A4C */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022A9A50 */ return;
|
|
}
|
|
|
|
// fn_022A9A54 @ 0x22a9a54
|
|
void Gambit_fn_022A9A54(CPUState* cpu) {
|
|
L_022A9A54: ; // 0x22a9a54
|
|
/* 022A9A54 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A58 */ return;
|
|
}
|
|
|
|
// fn_022A9A5C @ 0x22a9a5c
|
|
void Gambit_fn_022A9A5C(CPUState* cpu) {
|
|
L_022A9A5C: ; // 0x22a9a5c
|
|
/* 022A9A5C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A60 */ return;
|
|
}
|
|
|
|
// fn_022A9A64 @ 0x22a9a64
|
|
void Gambit_fn_022A9A64(CPUState* cpu) {
|
|
L_022A9A64: ; // 0x22a9a64
|
|
/* 022A9A64 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A68 */ return;
|
|
}
|
|
|
|
// fn_022A9A6C @ 0x22a9a6c
|
|
void Gambit_fn_022A9A6C(CPUState* cpu) {
|
|
L_022A9A6C: ; // 0x22a9a6c
|
|
/* 022A9A6C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A70 */ return;
|
|
}
|
|
|
|
// fn_022A9A74 @ 0x22a9a74
|
|
void Gambit_fn_022A9A74(CPUState* cpu) {
|
|
L_022A9A74: ; // 0x22a9a74
|
|
/* 022A9A74 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9A78 */ return;
|
|
}
|
|
|
|
// fn_022A9A7C @ 0x22a9a7c
|
|
void Gambit_fn_022A9A7C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A9A7C: ; // 0x22a9a7c
|
|
/* 022A9A7C */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9A80 */ _t0 = cpu->r[12] + 0x0000164Cu;
|
|
/* 022A9A80 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A9A84 */ return;
|
|
}
|
|
|
|
// fn_022A9A88 @ 0x22a9a88
|
|
void Gambit_fn_022A9A88(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A9A88: ; // 0x22a9a88
|
|
/* 022A9A88 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9A8C */ _t0 = cpu->r[12] + 0x0000164Cu;
|
|
/* 022A9A8C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A9A90 */ return;
|
|
}
|
|
|
|
// fn_022A9A94 @ 0x22a9a94
|
|
void Gambit_fn_022A9A94(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A9A94: ; // 0x22a9a94
|
|
/* 022A9A94 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9A98 */ _t0 = cpu->r[12] + 0x0000164Cu;
|
|
/* 022A9A98 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A9A9C */ return;
|
|
}
|
|
|
|
// fn_022A9AA0 @ 0x22a9aa0
|
|
void Gambit_fn_022A9AA0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022A9AA0: ; // 0x22a9aa0
|
|
/* 022A9AA0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9AA4 */ _t0 = cpu->r[12] + 0x0000164Cu;
|
|
/* 022A9AA4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022A9AA8 */ return;
|
|
}
|
|
|
|
// fn_022A9AAC @ 0x22a9aac
|
|
void Gambit_fn_022A9AAC(CPUState* cpu) {
|
|
L_022A9AAC: ; // 0x22a9aac
|
|
/* 022A9AAC */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9AB0 */ return;
|
|
}
|
|
|
|
// fn_022A9AB4 @ 0x22a9ab4
|
|
void Gambit_fn_022A9AB4(CPUState* cpu) {
|
|
L_022A9AB4: ; // 0x22a9ab4
|
|
/* 022A9AB4 */ return;
|
|
}
|
|
|
|
// fn_022A9AB8 @ 0x22a9ab8
|
|
void Gambit_fn_022A9AB8(CPUState* cpu) {
|
|
L_022A9AB8: ; // 0x22a9ab8
|
|
/* 022A9AB8 */ return;
|
|
}
|
|
|
|
// fn_022A9ABC @ 0x22a9abc
|
|
void Gambit_fn_022A9ABC(CPUState* cpu) {
|
|
L_022A9ABC: ; // 0x22a9abc
|
|
/* 022A9ABC */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9AC0 */ return;
|
|
}
|
|
|
|
// fn_022A9AC4 @ 0x22a9ac4
|
|
void Gambit_fn_022A9AC4(CPUState* cpu) {
|
|
L_022A9AC4: ; // 0x22a9ac4
|
|
/* 022A9AC4 */ return;
|
|
}
|
|
|
|
// fn_022A9AC8 @ 0x22a9ac8
|
|
void Gambit_fn_022A9AC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A9AC8: ; // 0x22a9ac8
|
|
/* 022A9AC8 */ cpu->r[0] = cpu->lr;
|
|
/* 022A9ACC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022A9ACC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022A9AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022A9AD4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A9AD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022A9AD4 */ cpu->r[1] = _t1;
|
|
/* 022A9AD8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9AD8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022A9AD8 */ if (_t3) goto L_022A9ADC; else goto L_022A9AF0;
|
|
L_022A9ADC: ; // 0x22a9adc
|
|
/* 022A9ADC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A9AE0 */ cpu->lr = cpu->r[0];
|
|
/* 022A9AE4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A9AE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9AEC */ return;
|
|
L_022A9AF0: ; // 0x22a9af0
|
|
/* 022A9AF0 */ Gambit_fn_022713B8(cpu);
|
|
/* 022A9AF4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9AF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A9AF8 */ cpu->lr = cpu->r[0];
|
|
/* 022A9AFC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A9B00 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9B04 */ return;
|
|
}
|
|
|
|
// fn_022A9AD4 @ 0x22a9ad4
|
|
void Gambit_fn_022A9AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022A9AD4: ; // 0x22a9ad4
|
|
/* 022A9AD4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022A9AD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A9AD4 */ cpu->r[1] = _t0;
|
|
/* 022A9AD8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9AD8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A9AD8 */ if (_t2) goto L_022A9ADC; else goto L_022A9AF0;
|
|
L_022A9ADC: ; // 0x22a9adc
|
|
/* 022A9ADC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022A9AE0 */ cpu->lr = cpu->r[0];
|
|
/* 022A9AE4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A9AE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9AEC */ return;
|
|
L_022A9AF0: ; // 0x22a9af0
|
|
/* 022A9AF0 */ Gambit_fn_022713B8(cpu);
|
|
/* 022A9AF4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9AF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A9AF8 */ cpu->lr = cpu->r[0];
|
|
/* 022A9AFC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022A9B00 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9B04 */ return;
|
|
}
|
|
|
|
// fn_022A9B08 @ 0x22a9b08
|
|
void Gambit_fn_022A9B08(CPUState* cpu) {
|
|
L_022A9B08: ; // 0x22a9b08
|
|
/* 022A9B08 */ return;
|
|
}
|
|
|
|
// fn_022A9B0C @ 0x22a9b0c
|
|
void Gambit_fn_022A9B0C(CPUState* cpu) {
|
|
L_022A9B0C: ; // 0x22a9b0c
|
|
/* 022A9B0C */ cpu->r[3] = 0x101F0000u;
|
|
/* 022A9B10 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022A9B14 */ return;
|
|
}
|
|
|
|
// fn_022A9B18 @ 0x22a9b18
|
|
void Gambit_fn_022A9B18(CPUState* cpu) {
|
|
L_022A9B18: ; // 0x22a9b18
|
|
/* 022A9B18 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022A9B1C */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022A9B20 */ return;
|
|
}
|
|
|
|
// fn_022A9B24 @ 0x22a9b24
|
|
void Gambit_fn_022A9B24(CPUState* cpu) {
|
|
L_022A9B24: ; // 0x22a9b24
|
|
/* 022A9B24 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A9B28 */ cpu->r[3] = cpu->r[3] + 0x00001440u;
|
|
/* 022A9B2C */ return;
|
|
}
|
|
|
|
// fn_022A9B30 @ 0x22a9b30
|
|
void Gambit_fn_022A9B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022A9B30: ; // 0x22a9b30
|
|
/* 022A9B30 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A9B34 */ _t0 = cpu->r[9] + 0x00000124u;
|
|
/* 022A9B34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9B38 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A9B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022A9B40 */ cpu->r[11] = cpu->r[11] + 0x0000016Cu;
|
|
/* 022A9B44 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9B44 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A9B44 */ if (_t2) goto L_022A9B48; else goto L_022A9B60;
|
|
L_022A9B48: ; // 0x22a9b48
|
|
/* 022A9B48 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A9B4C */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9B50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9B54 */ cpu->r[9] = cpu->r[9] + 0x000013E8u;
|
|
/* 022A9B58 */ _t3 = cpu->r[12] + 0x00000124u;
|
|
/* 022A9B58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022A9B5C */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9B5C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022A9B60: ; // 0x22a9b60
|
|
/* 022A9B60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022A9B64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9B64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A9B64 */ if (_t6) goto L_022A9B68; else goto L_022A9B70;
|
|
L_022A9B68: ; // 0x22a9b68
|
|
/* 022A9B68 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9B6C */ return;
|
|
L_022A9B70: ; // 0x22a9b70
|
|
/* 022A9B70 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9B74 */ _t7 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022A9B74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A9B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9B7C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9B80 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022A9B84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9B84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A9B84 */ if (_t9) goto L_022A9B88; else goto L_022A9BA0;
|
|
L_022A9B88: ; // 0x22a9b88
|
|
/* 022A9B88 */ cpu->r[11] = 0x10060000u;
|
|
/* 022A9B8C */ cpu->r[10] = 0x00000001u;
|
|
/* 022A9B90 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A9B94 */ cpu->r[11] = cpu->r[11] + 0x000013C8u;
|
|
/* 022A9B98 */ _t10 = cpu->r[9] + 0xFFFFDAC0u;
|
|
/* 022A9B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022A9B9C */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022A9B9C */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022A9BA0: ; // 0x22a9ba0
|
|
/* 022A9BA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022A9BA4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9BA4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A9BA4 */ if (_t13) goto L_022A9BA8; else goto L_022A9BB0;
|
|
L_022A9BA8: ; // 0x22a9ba8
|
|
/* 022A9BA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9BAC */ goto L_022A9C24;
|
|
L_022A9BB0: ; // 0x22a9bb0
|
|
/* 022A9BB0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022A9BB4 */ _t14 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022A9BB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A9BB4 */ cpu->r[10] = _t14;
|
|
/* 022A9BB8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A9BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9BC0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4ECu;
|
|
/* 022A9BC4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9BC4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A9BC4 */ if (_t16) goto L_022A9BC8; else goto L_022A9BDC;
|
|
L_022A9BC8: ; // 0x22a9bc8
|
|
/* 022A9BC8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022A9BCC */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9BD0 */ cpu->r[9] = cpu->r[9] + 0x000013B8u;
|
|
/* 022A9BD4 */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022A9BD4 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022A9BD8 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9BD8 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022A9BDC: ; // 0x22a9bdc
|
|
/* 022A9BDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022A9BE0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9BE0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022A9BE0 */ if (_t20) goto L_022A9BE4; else goto L_022A9BEC;
|
|
L_022A9BE4: ; // 0x22a9be4
|
|
/* 022A9BE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9BE8 */ goto L_022A9C24;
|
|
L_022A9BEC: ; // 0x22a9bec
|
|
/* 022A9BEC */ cpu->r[9] = 0x101D0000u;
|
|
/* 022A9BF0 */ _t21 = cpu->r[9] + 0xFFFFD4E0u;
|
|
/* 022A9BF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022A9BF0 */ cpu->r[9] = _t21;
|
|
/* 022A9BF4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022A9BFC */ cpu->r[12] = cpu->r[12] + 0xFFFFD4E4u;
|
|
/* 022A9C00 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9C00 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022A9C00 */ if (_t23) goto L_022A9C04; else goto L_022A9C18;
|
|
L_022A9C04: ; // 0x22a9c04
|
|
/* 022A9C04 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A9C08 */ cpu->r[11] = 0x00000001u;
|
|
/* 022A9C0C */ cpu->r[0] = cpu->r[0] + 0x00001348u;
|
|
/* 022A9C10 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022A9C10 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022A9C14 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022A9C14 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022A9C18: ; // 0x22a9c18
|
|
/* 022A9C18 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022A9C1C */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022A9C20 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022A9C24: ; // 0x22a9c24
|
|
/* 022A9C24 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022A9C28 */ return;
|
|
}
|
|
|
|
// fn_022A9C2C @ 0x22a9c2c
|
|
void Gambit_fn_022A9C2C(CPUState* cpu) {
|
|
L_022A9C2C: ; // 0x22a9c2c
|
|
/* 022A9C2C */ return;
|
|
}
|
|
|
|
// fn_022A9C30 @ 0x22a9c30
|
|
void Gambit_fn_022A9C30(CPUState* cpu) {
|
|
L_022A9C30: ; // 0x22a9c30
|
|
/* 022A9C30 */ return;
|
|
}
|
|
|
|
// fn_022A9C34 @ 0x22a9c34
|
|
void Gambit_fn_022A9C34(CPUState* cpu) {
|
|
L_022A9C34: ; // 0x22a9c34
|
|
/* 022A9C34 */ return;
|
|
}
|
|
|
|
// fn_022A9C38 @ 0x22a9c38
|
|
void Gambit_fn_022A9C38(CPUState* cpu) {
|
|
L_022A9C38: ; // 0x22a9c38
|
|
/* 022A9C38 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A9C3C */ cpu->r[3] = cpu->r[3] + 0x0000145Cu;
|
|
/* 022A9C40 */ return;
|
|
}
|
|
|
|
// fn_022A9C44 @ 0x22a9c44
|
|
void Gambit_fn_022A9C44(CPUState* cpu) {
|
|
L_022A9C44: ; // 0x22a9c44
|
|
/* 022A9C44 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A9C48 */ cpu->r[3] = cpu->r[3] + 0x00001408u;
|
|
/* 022A9C4C */ return;
|
|
}
|
|
|
|
// fn_022A9C50 @ 0x22a9c50
|
|
void Gambit_fn_022A9C50(CPUState* cpu) {
|
|
L_022A9C50: ; // 0x22a9c50
|
|
/* 022A9C50 */ cpu->r[3] = 0x10060000u;
|
|
/* 022A9C54 */ cpu->r[3] = cpu->r[3] + 0x00001424u;
|
|
/* 022A9C58 */ return;
|
|
}
|
|
|
|
// fn_022A9C5C @ 0x22a9c5c
|
|
void Gambit_fn_022A9C5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022A9C5C: ; // 0x22a9c5c
|
|
/* 022A9C5C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022A9C5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9C60 */ _t1 = cpu->r[12] + 0x000002CCu;
|
|
/* 022A9C60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022A9C64 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9C68 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022A9C6C @ 0x22a9c6c
|
|
void Gambit_fn_022A9C6C(CPUState* cpu) {
|
|
L_022A9C6C: ; // 0x22a9c6c
|
|
/* 022A9C6C */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9C70 */ return;
|
|
}
|
|
|
|
// fn_022A9C74 @ 0x22a9c74
|
|
void Gambit_fn_022A9C74(CPUState* cpu) {
|
|
L_022A9C74: ; // 0x22a9c74
|
|
/* 022A9C74 */ cpu->r[3] = 0x00000000u;
|
|
/* 022A9C78 */ return;
|
|
}
|
|
|
|
// fn_022A9C84 @ 0x22a9c84
|
|
void Gambit_fn_022A9C84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0229CEB8: ; // 0x229ceb8
|
|
/* 0229CEB8 */ cpu->r[0] = cpu->lr;
|
|
/* 0229CEBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0229CEBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0229CEBC */ cpu->r[1] = _t0;
|
|
/* 0229CEC0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229CEC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0229CEC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0229CEC8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0229CEC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0229CECC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0229CECC */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0229CED0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0229CED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0229CED8 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0229CED8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0229CEDC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0229CEDC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0229CEDC */ if (_t6) goto L_0229CF04; else goto L_0229CEE0;
|
|
L_0229CEE0: ; // 0x229cee0
|
|
/* 0229CEE0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0229CEE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0229CEE4 */ /* nop */
|
|
/* 0229CEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0229CEEC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0229CEEC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0229CEEC */ if (_t9) goto L_0229CEF0; else goto L_0229CF04;
|
|
L_0229CEF0: ; // 0x229cef0
|
|
/* 0229CEF0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0229CEF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0229CEF4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0229CEF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0229CEF8 */ cpu->ctr = cpu->r[0];
|
|
/* 0229CEFC */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CF00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0229CF04: ; // 0x229cf04
|
|
/* 0229CF04 */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CF08 */ Gambit_fn_0229CE30(cpu);
|
|
/* 0229CF0C */ cpu->r[3] = cpu->r[31];
|
|
/* 0229CF10 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0229CF14 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0229CF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0229CF18 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0229CF18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0229CF1C */ cpu->lr = cpu->r[0];
|
|
/* 0229CF20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0229CF24 */ return;
|
|
L_022A9C84: ; // 0x22a9c84
|
|
/* 022A9C84 */ cpu->r[3] = cpu->r[3] + 0x00000184u;
|
|
/* 022A9C88 */ goto L_0229CEB8;
|
|
}
|
|
|
|
// fn_022A9C8C @ 0x22a9c8c
|
|
void Gambit_fn_022A9C8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A9C8C: ; // 0x22a9c8c
|
|
/* 022A9C8C */ cpu->r[0] = cpu->lr;
|
|
/* 022A9C90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A9C90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A9C90 */ cpu->r[1] = _t0;
|
|
/* 022A9C94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9C94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A9C98 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A9C9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9C9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A9CA0 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022A9CA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022A9CA4 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A9CA8 */ /* nop */
|
|
/* 022A9CAC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A9CB0 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A9CB4 */ Gambit_fn_0229CDA8(cpu);
|
|
/* 022A9CB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A9CBC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9CBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A9CC0 */ cpu->lr = cpu->r[0];
|
|
/* 022A9CC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A9CC8 */ return;
|
|
}
|
|
|
|
// fn_022A9C90 @ 0x22a9c90
|
|
void Gambit_fn_022A9C90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022A9C90: ; // 0x22a9c90
|
|
/* 022A9C90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022A9C90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A9C90 */ cpu->r[1] = _t0;
|
|
/* 022A9C94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9C94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022A9C98 */ cpu->r[31] = cpu->r[3];
|
|
/* 022A9C9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9C9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022A9CA0 */ _t3 = cpu->r[31] + 0x00000192u;
|
|
/* 022A9CA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022A9CA4 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A9CA8 */ /* nop */
|
|
/* 022A9CAC */ Gambit_fn_027FC35C(cpu);
|
|
/* 022A9CB0 */ cpu->r[3] = cpu->r[31] + 0x00000184u;
|
|
/* 022A9CB4 */ Gambit_fn_0229CDA8(cpu);
|
|
/* 022A9CB8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022A9CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022A9CBC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022A9CBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022A9CC0 */ cpu->lr = cpu->r[0];
|
|
/* 022A9CC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022A9CC8 */ return;
|
|
}
|
|
|
|
// fn_022A9CCC @ 0x22a9ccc
|
|
void Gambit_fn_022A9CCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022A9CCC: ; // 0x22a9ccc
|
|
/* 022A9CCC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9CD0 */ _t0 = cpu->r[12] + 0x00000128u;
|
|
/* 022A9CD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022A9CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9CD8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022A9CDC */ cpu->r[12] = cpu->r[12] + 0x00000168u;
|
|
/* 022A9CE0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9CE0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022A9CE0 */ if (_t2) goto L_022A9CE4; else goto L_022A9CFC;
|
|
L_022A9CE4: ; // 0x22a9ce4
|
|
/* 022A9CE4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A9CE8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A9CEC */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A9CF0 */ cpu->r[0] = cpu->r[0] + 0x000013F8u;
|
|
/* 022A9CF4 */ _t3 = cpu->r[8] + 0x00000128u;
|
|
/* 022A9CF4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 022A9CF8 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 022A9CF8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_022A9CFC: ; // 0x22a9cfc
|
|
/* 022A9CFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022A9D00 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9D00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A9D00 */ if (_t6) goto L_022A9D04; else goto L_022A9D0C;
|
|
L_022A9D04: ; // 0x22a9d04
|
|
/* 022A9D04 */ cpu->r[3] = 0x00000001u;
|
|
/* 022A9D08 */ return;
|
|
L_022A9D0C: ; // 0x22a9d0c
|
|
/* 022A9D0C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A9D10 */ _t7 = cpu->r[11] + 0xFFFFDA38u;
|
|
/* 022A9D10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A9D10 */ cpu->r[11] = _t7;
|
|
/* 022A9D14 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022A9D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022A9D1C */ cpu->r[10] = cpu->r[10] + 0xFFFFFFE8u;
|
|
/* 022A9D20 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9D20 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022A9D20 */ if (_t9) goto L_022A9D24; else goto L_022A9D38;
|
|
L_022A9D24: ; // 0x22a9d24
|
|
/* 022A9D24 */ cpu->r[12] = 0x10060000u;
|
|
/* 022A9D28 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A9D2C */ cpu->r[12] = cpu->r[12] + 0x000013D8u;
|
|
/* 022A9D30 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9D30 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022A9D34 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 022A9D34 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_022A9D38: ; // 0x22a9d38
|
|
/* 022A9D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022A9D3C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9D3C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A9D3C */ if (_t13) goto L_022A9D40; else goto L_022A9D48;
|
|
L_022A9D40: ; // 0x22a9d40
|
|
/* 022A9D40 */ cpu->r[0] = 0x00000001u;
|
|
/* 022A9D44 */ goto L_022A9D80;
|
|
L_022A9D48: ; // 0x22a9d48
|
|
/* 022A9D48 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022A9D4C */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 022A9D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022A9D4C */ cpu->r[8] = _t14;
|
|
/* 022A9D50 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022A9D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022A9D58 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 022A9D5C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9D5C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022A9D5C */ if (_t16) goto L_022A9D60; else goto L_022A9D74;
|
|
L_022A9D60: ; // 0x22a9d60
|
|
/* 022A9D60 */ cpu->r[10] = 0x10060000u;
|
|
/* 022A9D64 */ cpu->r[9] = 0x00000001u;
|
|
/* 022A9D68 */ cpu->r[10] = cpu->r[10] + 0x00001348u;
|
|
/* 022A9D6C */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 022A9D6C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 022A9D70 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9D70 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_022A9D74: ; // 0x22a9d74
|
|
/* 022A9D74 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 022A9D78 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 022A9D7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022A9D80: ; // 0x22a9d80
|
|
/* 022A9D80 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022A9D84 */ return;
|
|
}
|
|
|
|
// fn_022A9D88 @ 0x22a9d88
|
|
void Gambit_fn_022A9D88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022A9D88: ; // 0x22a9d88
|
|
/* 022A9D88 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022A9D88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022A9D88 */ cpu->r[1] = _t0;
|
|
/* 022A9D8C */ /* nop */
|
|
/* 022A9D90 */ cpu->r[0] = cpu->lr;
|
|
/* 022A9D94 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022A9D94 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022A9D98 */ cpu->r[29] = cpu->r[6];
|
|
/* 022A9D9C */ cpu->r[28] = cpu->r[3];
|
|
/* 022A9DA0 */ cpu->r[30] = cpu->r[5];
|
|
/* 022A9DA4 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022A9DA4 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022A9DA8 */ cpu->r[31] = 0x101D0000u;
|
|
/* 022A9DAC */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022A9DAC */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022A9DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9DB4 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A9DB4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022A9DB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9DB8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022A9DB8 */ if (_t6) goto L_022A9DFC; else goto L_022A9DBC;
|
|
L_022A9DBC: ; // 0x22a9dbc
|
|
/* 022A9DBC */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A9DBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022A9DC0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A9DC4 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A9DC4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022A9DC8 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022A9DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022A9DCC */ cpu->ctr = cpu->r[0];
|
|
/* 022A9DD0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A9DD4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A9DD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9DE0 */ cpu->r[0] = cpu->r[27];
|
|
/* 022A9DE4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9DE4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022A9DE4 */ if (_t11) goto L_022A9DEC; else goto L_022A9DE8;
|
|
L_022A9DE8: ; // 0x22a9de8
|
|
/* 022A9DE8 */ cpu->r[0] = 0x00000001u;
|
|
L_022A9DEC: ; // 0x22a9dec
|
|
/* 022A9DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9DF0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9DF0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022A9DF0 */ if (_t13) goto L_022A9DFC; else goto L_022A9DF4;
|
|
L_022A9DF4: ; // 0x22a9df4
|
|
/* 022A9DF4 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022A9DF4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022A9DF8 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022A9DF8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022A9DFC: ; // 0x22a9dfc
|
|
/* 022A9DFC */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022A9DFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022A9E00 */ cpu->r[0] = 0x00000000u;
|
|
/* 022A9E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022A9E08 */ cpu->r[12] = cpu->r[0];
|
|
/* 022A9E0C */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9E0C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022A9E0C */ if (_t18) goto L_022A9E10; else goto L_022A9E34;
|
|
L_022A9E10: ; // 0x22a9e10
|
|
/* 022A9E10 */ cpu->ctr = cpu->r[7];
|
|
/* 022A9E14 */ cpu->r[10] = 0x00000000u;
|
|
L_022A9E18: ; // 0x22a9e18
|
|
/* 022A9E18 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022A9E18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022A9E1C */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022A9E1C */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022A9E20 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022A9E24 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022A9E24 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022A9E28 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022A9E2C */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022A9E2C */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022A9E30 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A9E30 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A9E30 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022A9E30 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022A9E30 */ if (_t25) goto L_022A9E18; else goto L_022A9E34;
|
|
L_022A9E34: ; // 0x22a9e34
|
|
/* 022A9E34 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A9E34 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022A9E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9E3C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9E3C */ _t28 = _t27 & 0x00000001u;
|
|
/* 022A9E3C */ if (_t28) goto L_022A9E80; else goto L_022A9E40;
|
|
L_022A9E40: ; // 0x22a9e40
|
|
/* 022A9E40 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A9E40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022A9E44 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A9E48 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A9E48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022A9E4C */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022A9E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022A9E50 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9E54 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A9E58 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A9E5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9E60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9E64 */ cpu->r[11] = cpu->r[27];
|
|
/* 022A9E68 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9E68 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022A9E68 */ if (_t33) goto L_022A9E70; else goto L_022A9E6C;
|
|
L_022A9E6C: ; // 0x22a9e6c
|
|
/* 022A9E6C */ cpu->r[11] = 0x00000001u;
|
|
L_022A9E70: ; // 0x22a9e70
|
|
/* 022A9E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9E74 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9E74 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022A9E74 */ if (_t35) goto L_022A9E80; else goto L_022A9E78;
|
|
L_022A9E78: ; // 0x22a9e78
|
|
/* 022A9E78 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022A9E78 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022A9E7C */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022A9E7C */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022A9E80: ; // 0x22a9e80
|
|
/* 022A9E80 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022A9E80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022A9E84 */ cpu->r[0] = 0x00000000u;
|
|
/* 022A9E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022A9E8C */ cpu->r[12] = cpu->r[0];
|
|
/* 022A9E90 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9E90 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022A9E90 */ if (_t40) goto L_022A9E94; else goto L_022A9EB8;
|
|
L_022A9E94: ; // 0x22a9e94
|
|
/* 022A9E94 */ cpu->ctr = cpu->r[6];
|
|
/* 022A9E98 */ cpu->r[9] = 0x00000000u;
|
|
L_022A9E9C: ; // 0x22a9e9c
|
|
/* 022A9E9C */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022A9E9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022A9EA0 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022A9EA0 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022A9EA4 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022A9EA8 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022A9EA8 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022A9EAC */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022A9EB0 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022A9EB0 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022A9EB4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A9EB4 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A9EB4 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022A9EB4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022A9EB4 */ if (_t47) goto L_022A9E9C; else goto L_022A9EB8;
|
|
L_022A9EB8: ; // 0x22a9eb8
|
|
/* 022A9EB8 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022A9EB8 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022A9EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9EC0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9EC0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022A9EC0 */ if (_t50) goto L_022A9F04; else goto L_022A9EC4;
|
|
L_022A9EC4: ; // 0x22a9ec4
|
|
/* 022A9EC4 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A9EC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022A9EC8 */ Gambit_fn_02826F20(cpu);
|
|
/* 022A9ECC */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A9ECC */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022A9ED0 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022A9ED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022A9ED4 */ cpu->ctr = cpu->r[0];
|
|
/* 022A9ED8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022A9EDC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022A9EE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9EE8 */ cpu->r[10] = cpu->r[27];
|
|
/* 022A9EEC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9EEC */ _t55 = _t54 & 0x00000001u;
|
|
/* 022A9EEC */ if (_t55) goto L_022A9EF4; else goto L_022A9EF0;
|
|
L_022A9EF0: ; // 0x22a9ef0
|
|
/* 022A9EF0 */ cpu->r[10] = 0x00000001u;
|
|
L_022A9EF4: ; // 0x22a9ef4
|
|
/* 022A9EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022A9EF8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9EF8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022A9EF8 */ if (_t57) goto L_022A9F04; else goto L_022A9EFC;
|
|
L_022A9EFC: ; // 0x22a9efc
|
|
/* 022A9EFC */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022A9EFC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022A9F00 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022A9F00 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022A9F04: ; // 0x22a9f04
|
|
/* 022A9F04 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022A9F04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022A9F08 */ cpu->r[0] = 0x00000000u;
|
|
/* 022A9F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022A9F10 */ cpu->r[5] = cpu->r[0];
|
|
/* 022A9F14 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9F14 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022A9F14 */ if (_t62) goto L_022A9F18; else goto L_022A9F3C;
|
|
L_022A9F18: ; // 0x22a9f18
|
|
/* 022A9F18 */ cpu->ctr = cpu->r[12];
|
|
/* 022A9F1C */ cpu->r[8] = 0x00000000u;
|
|
L_022A9F20: ; // 0x22a9f20
|
|
/* 022A9F20 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022A9F20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022A9F24 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022A9F24 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022A9F28 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022A9F2C */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022A9F2C */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022A9F30 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022A9F34 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022A9F34 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022A9F38 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022A9F38 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022A9F38 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022A9F38 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022A9F38 */ if (_t69) goto L_022A9F20; else goto L_022A9F3C;
|
|
L_022A9F3C: ; // 0x22a9f3c
|
|
/* 022A9F3C */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022A9F3C */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022A9F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022A9F44 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9F44 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022A9F44 */ if (_t72) goto L_022AA020; else goto L_022A9F48;
|
|
L_022A9F48: ; // 0x22a9f48
|
|
/* 022A9F48 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022A9F48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022A9F4C */ Gambit_fn_02826F20(cpu);
|
|
/* 022A9F50 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022A9F50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022A9F54 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022A9F54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022A9F58 */ cpu->ctr = cpu->r[12];
|
|
/* 022A9F5C */ cpu->r[5] = 0x00000004u;
|
|
/* 022A9F60 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022A9F64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022A9F68 */ cpu->r[24] = cpu->r[3];
|
|
/* 022A9F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022A9F70 */ cpu->r[30] = cpu->r[25];
|
|
/* 022A9F74 */ cpu->r[7] = 0x00000000u;
|
|
/* 022A9F78 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022A9F78 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022A9F78 */ if (_t77) goto L_022A9F80; else goto L_022A9F7C;
|
|
L_022A9F7C: ; // 0x22a9f7c
|
|
/* 022A9F7C */ cpu->r[30] = 0x00000001u;
|
|
L_022A9F80: ; // 0x22a9f80
|
|
/* 022A9F80 */ cpu->r[31] = 0x10110000u;
|
|
/* 022A9F84 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022A9F88 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022A9F88 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022A9F8C */ cpu->r[23] = 0x00000018u;
|
|
L_022A9F90: ; // 0x22a9f90
|
|
/* 022A9F90 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022A9F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022A9F94 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9F94 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022A9F94 */ if (_t80) goto L_022AA004; else goto L_022A9F98;
|
|
L_022A9F98: ; // 0x22a9f98
|
|
/* 022A9F98 */ cpu->r[26] = cpu->r[27];
|
|
/* 022A9F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022A9F9C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9F9C */ _t82 = _t81 & 0x00000001u;
|
|
/* 022A9F9C */ if (_t82) goto L_022A9FA0; else goto L_022A9FB0;
|
|
L_022A9FA0: ; // 0x22a9fa0
|
|
/* 022A9FA0 */ cpu->r[3] = 0x00000024u;
|
|
/* 022A9FA4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022A9FA8 */ cpu->r[26] = cpu->r[3];
|
|
/* 022A9FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022A9FAC */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9FAC */ _t84 = _t83 & 0x00000001u;
|
|
/* 022A9FAC */ if (_t84) goto L_022A9FF8; else goto L_022A9FB0;
|
|
L_022A9FB0: ; // 0x22a9fb0
|
|
/* 022A9FB0 */ cpu->r[11] = cpu->r[26];
|
|
/* 022A9FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022A9FB4 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9FB4 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022A9FB4 */ if (_t86) goto L_022A9FB8; else goto L_022A9FC8;
|
|
L_022A9FB8: ; // 0x22a9fb8
|
|
/* 022A9FB8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022A9FBC */ Gambit_fn_02801A78(cpu);
|
|
/* 022A9FC0 */ cpu->r[11] = cpu->r[3];
|
|
/* 022A9FC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022A9FC4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022A9FC4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022A9FC4 */ if (_t88) goto L_022A9FE4; else goto L_022A9FC8;
|
|
L_022A9FC8: ; // 0x22a9fc8
|
|
/* 022A9FC8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022A9FCC */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022A9FCC */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022A9FD0 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022A9FD4 */ cpu->r[5] = cpu->r[5] + 0x00001370u;
|
|
/* 022A9FD8 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022A9FD8 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022A9FDC */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022A9FDC */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022A9FE0 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022A9FE0 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022A9FE4: ; // 0x22a9fe4
|
|
/* 022A9FE4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022A9FE8 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022A9FE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022A9FEC */ cpu->r[6] = cpu->r[6] + 0x00001388u;
|
|
/* 022A9FF0 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022A9FF0 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022A9FF4 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022A9FF4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022A9FF8: ; // 0x22a9ff8
|
|
/* 022A9FF8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022A9FFC */ cpu->r[0] = cpu->r[0] + 0x000013A0u;
|
|
/* 022AA000 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022AA000 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022AA004: ; // 0x22aa004
|
|
/* 022AA004 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022AA004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AA008 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022AA00C */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA00C */ _t98 = _t97 & 0x00000001u;
|
|
/* 022AA00C */ if (_t98) goto L_022AA010; else goto L_022A9F90;
|
|
L_022AA010: ; // 0x22aa010
|
|
/* 022AA010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022AA014 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA014 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022AA014 */ if (_t100) goto L_022AA020; else goto L_022AA018;
|
|
L_022AA018: ; // 0x22aa018
|
|
/* 022AA018 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022AA018 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022AA01C */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022AA01C */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022AA020: ; // 0x22aa020
|
|
/* 022AA020 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022AA020 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022AA024 */ /* nop */
|
|
/* 022AA028 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA028 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022AA02C */ cpu->lr = cpu->r[0];
|
|
/* 022AA030 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022AA034 */ return;
|
|
}
|
|
|
|
// fn_022AA038 @ 0x22aa038
|
|
void Gambit_fn_022AA038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022AA038: ; // 0x22aa038
|
|
/* 022AA038 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022AA038 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AA03C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022AA03C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AA040 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022AA040 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AA044 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022AA048 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022AA048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AA04C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA04C */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AA04C */ if (_t5) goto L_022AA050; else goto L_022AA058;
|
|
L_022AA050: ; // 0x22aa050
|
|
/* 022AA050 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AA054 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022AA058: ; // 0x22aa058
|
|
/* 022AA058 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022AA058 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AA05C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022AA05C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA060 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022AA060 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022AA064 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022AA064 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022AA068 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022AA068 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA06C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022AA070 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022AA070 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AA074 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA074 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AA074 */ if (_t13) goto L_022AA078; else goto L_022AA080;
|
|
L_022AA078: ; // 0x22aa078
|
|
/* 022AA078 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AA07C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022AA080: ; // 0x22aa080
|
|
/* 022AA080 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022AA080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AA084 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022AA084 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022AA088 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022AA088 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AA08C */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022AA08C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022AA090 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022AA090 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AA094 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022AA094 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022AA098 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022AA098 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA09C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022AA0A0 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022AA0A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AA0A4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA0A4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AA0A4 */ if (_t23) goto L_022AA0A8; else goto L_022AA0B0;
|
|
L_022AA0A8: ; // 0x22aa0a8
|
|
/* 022AA0A8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AA0AC */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022AA0B0: ; // 0x22aa0b0
|
|
/* 022AA0B0 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022AA0B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022AA0B4 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022AA0B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AA0B8 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022AA0B8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022AA0BC */ return;
|
|
}
|
|
|
|
// fn_022AA0C0 @ 0x22aa0c0
|
|
void Gambit_fn_022AA0C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_022AA0C0: ; // 0x22aa0c0
|
|
/* 022AA0C0 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA0C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AA0C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA0C4 */ cpu->r[1] = _t0;
|
|
/* 022AA0C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA0C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022AA0CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA0CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022AA0D0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA0D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022AA0D4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA0D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AA0D8 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022AA0DC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA0DC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AA0E0 */ _t6 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA0E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA0E0 */ cpu->r[30] = _t6;
|
|
/* 022AA0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA0E8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022AA0EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA0EC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AA0EC */ if (_t8) goto L_022AA0F0; else goto L_022AA174;
|
|
L_022AA0F0: ; // 0x22aa0f0
|
|
/* 022AA0F0 */ cpu->r[4] = cpu->r[28];
|
|
/* 022AA0F4 */ cpu->r[3] = 0x00000018u;
|
|
/* 022AA0F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022AA0FC */ Gambit_fn_02801ADC(cpu);
|
|
/* 022AA100 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA104 */ cpu->r[29] = cpu->r[31] + 0x00000008u;
|
|
/* 022AA104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AA108 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA108 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AA108 */ if (_t10) goto L_022AA128; else goto L_022AA10C;
|
|
L_022AA10C: ; // 0x22aa10c
|
|
/* 022AA10C */ cpu->r[5] = 0x00000003u;
|
|
/* 022AA110 */ cpu->r[4] = cpu->r[28];
|
|
/* 022AA114 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AA118 */ Gambit_fn_02821D88(cpu);
|
|
/* 022AA11C */ cpu->r[9] = 0x10060000u;
|
|
/* 022AA120 */ cpu->r[9] = cpu->r[9] + 0x00001D98u;
|
|
/* 022AA124 */ _t11 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022AA124 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_022AA128: ; // 0x22aa128
|
|
/* 022AA128 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022AA12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA130 */ _t12 = cpu->r[10] + 0x000056A0u;
|
|
/* 022AA130 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022AA134 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA134 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AA134 */ if (_t14) goto L_022AA170; else goto L_022AA138;
|
|
L_022AA138: ; // 0x22aa138
|
|
/* 022AA138 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA13C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA13C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AA13C */ if (_t16) goto L_022AA140; else goto L_022AA150;
|
|
L_022AA140: ; // 0x22aa140
|
|
/* 022AA140 */ cpu->r[3] = 0x00000008u;
|
|
/* 022AA144 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA14C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA14C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AA14C */ if (_t18) goto L_022AA164; else goto L_022AA150;
|
|
L_022AA150: ; // 0x22aa150
|
|
/* 022AA150 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA154 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA158 */ cpu->r[12] = cpu->r[12] + 0x00001D78u;
|
|
/* 022AA15C */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA15C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022AA160 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA160 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_022AA164: ; // 0x22aa164
|
|
/* 022AA164 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AA168 */ cpu->r[0] = cpu->r[0] + 0x00001D88u;
|
|
/* 022AA16C */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 022AA16C */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_022AA170: ; // 0x22aa170
|
|
/* 022AA170 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 022AA170 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
L_022AA174: ; // 0x22aa174
|
|
/* 022AA174 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA174 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA178 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA178 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA17C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA17C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AA180 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA184 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA184 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AA188 */ cpu->lr = cpu->r[0];
|
|
/* 022AA18C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA18C */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AA190 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AA194 */ return;
|
|
}
|
|
|
|
// fn_022AA0C4 @ 0x22aa0c4
|
|
void Gambit_fn_022AA0C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_022AA0C4: ; // 0x22aa0c4
|
|
/* 022AA0C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AA0C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA0C4 */ cpu->r[1] = _t0;
|
|
/* 022AA0C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA0C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022AA0CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA0CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022AA0D0 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA0D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022AA0D4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA0D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AA0D8 */ cpu->r[30] = 0x101C0000u;
|
|
/* 022AA0DC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA0DC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AA0E0 */ _t6 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA0E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA0E0 */ cpu->r[30] = _t6;
|
|
/* 022AA0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA0E8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022AA0EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA0EC */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AA0EC */ if (_t8) goto L_022AA0F0; else goto L_022AA174;
|
|
L_022AA0F0: ; // 0x22aa0f0
|
|
/* 022AA0F0 */ cpu->r[4] = cpu->r[28];
|
|
/* 022AA0F4 */ cpu->r[3] = 0x00000018u;
|
|
/* 022AA0F8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022AA0FC */ Gambit_fn_02801ADC(cpu);
|
|
/* 022AA100 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA104 */ cpu->r[29] = cpu->r[31] + 0x00000008u;
|
|
/* 022AA104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AA108 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA108 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AA108 */ if (_t10) goto L_022AA128; else goto L_022AA10C;
|
|
L_022AA10C: ; // 0x22aa10c
|
|
/* 022AA10C */ cpu->r[5] = 0x00000003u;
|
|
/* 022AA110 */ cpu->r[4] = cpu->r[28];
|
|
/* 022AA114 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AA118 */ Gambit_fn_02821D88(cpu);
|
|
/* 022AA11C */ cpu->r[9] = 0x10060000u;
|
|
/* 022AA120 */ cpu->r[9] = cpu->r[9] + 0x00001D98u;
|
|
/* 022AA124 */ _t11 = cpu->r[29] + 0x0000000Cu;
|
|
/* 022AA124 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_022AA128: ; // 0x22aa128
|
|
/* 022AA128 */ cpu->r[10] = 0x101C0000u;
|
|
/* 022AA12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA130 */ _t12 = cpu->r[10] + 0x000056A0u;
|
|
/* 022AA130 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022AA134 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA134 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AA134 */ if (_t14) goto L_022AA170; else goto L_022AA138;
|
|
L_022AA138: ; // 0x22aa138
|
|
/* 022AA138 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA13C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA13C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AA13C */ if (_t16) goto L_022AA140; else goto L_022AA150;
|
|
L_022AA140: ; // 0x22aa140
|
|
/* 022AA140 */ cpu->r[3] = 0x00000008u;
|
|
/* 022AA144 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA14C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA14C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AA14C */ if (_t18) goto L_022AA164; else goto L_022AA150;
|
|
L_022AA150: ; // 0x22aa150
|
|
/* 022AA150 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA154 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA158 */ cpu->r[12] = cpu->r[12] + 0x00001D78u;
|
|
/* 022AA15C */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA15C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022AA160 */ _t20 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA160 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
L_022AA164: ; // 0x22aa164
|
|
/* 022AA164 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AA168 */ cpu->r[0] = cpu->r[0] + 0x00001D88u;
|
|
/* 022AA16C */ _t21 = cpu->r[31] + 0x00000004u;
|
|
/* 022AA16C */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_022AA170: ; // 0x22aa170
|
|
/* 022AA170 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 022AA170 */ rbrew_write32(cpu->mem, _t22, cpu->r[31]);
|
|
L_022AA174: ; // 0x22aa174
|
|
/* 022AA174 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA174 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA178 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA178 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA17C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA17C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AA180 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA184 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA184 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AA188 */ cpu->lr = cpu->r[0];
|
|
/* 022AA18C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA18C */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AA190 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AA194 */ return;
|
|
}
|
|
|
|
// fn_022AA198 @ 0x22aa198
|
|
void Gambit_fn_022AA198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_022AA198: ; // 0x22aa198
|
|
/* 022AA198 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA19C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AA19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA19C */ cpu->r[1] = _t0;
|
|
/* 022AA1A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022AA1A4 */ cpu->r[28] = cpu->r[4];
|
|
/* 022AA1A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA1A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA1AC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA1AC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022AA1B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA1B4 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA1B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AA1B8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA1B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AA1BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA1BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AA1BC */ if (_t7) goto L_022AA220; else goto L_022AA1C0;
|
|
L_022AA1C0: ; // 0x22aa1c0
|
|
/* 022AA1C0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AA1C4 */ cpu->r[6] = cpu->r[6] + 0x00001D98u;
|
|
/* 022AA1C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA1CC */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AA1CC */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 022AA1D0 */ _t9 = cpu->r[12] + 0x000056A0u;
|
|
/* 022AA1D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AA1D0 */ cpu->r[12] = _t9;
|
|
/* 022AA1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 022AA1D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA1D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AA1D8 */ if (_t11) goto L_022AA1DC; else goto L_022AA204;
|
|
L_022AA1DC: ; // 0x22aa1dc
|
|
/* 022AA1DC */ cpu->r[30] = 0x101C0000u;
|
|
/* 022AA1E0 */ cpu->r[29] = 0x00000000u;
|
|
/* 022AA1E4 */ _t12 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA1E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA1E8 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022AA1E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 022AA1EC */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA1EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AA1F0 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 022AA1F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AA1F4 */ cpu->ctr = cpu->r[10];
|
|
/* 022AA1F8 */ cpu->r[4] = 0x00000002u;
|
|
/* 022AA1FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA200 */ _t16 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA200 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_022AA204: ; // 0x22aa204
|
|
/* 022AA204 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA208 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AA20C */ Gambit_fn_02821E68(cpu);
|
|
/* 022AA210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AA210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA214 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA214 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AA214 */ if (_t18) goto L_022AA220; else goto L_022AA218;
|
|
L_022AA218: ; // 0x22aa218
|
|
/* 022AA218 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA21C */ Gambit_fn_02801BB0(cpu);
|
|
L_022AA220: ; // 0x22aa220
|
|
/* 022AA220 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA220 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AA224 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA224 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA228 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA228 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AA22C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA22C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA230 */ cpu->lr = cpu->r[0];
|
|
/* 022AA234 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA238 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AA23C */ return;
|
|
}
|
|
|
|
// fn_022AA19C @ 0x22aa19c
|
|
void Gambit_fn_022AA19C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_022AA19C: ; // 0x22aa19c
|
|
/* 022AA19C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AA19C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA19C */ cpu->r[1] = _t0;
|
|
/* 022AA1A0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA1A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022AA1A4 */ cpu->r[28] = cpu->r[4];
|
|
/* 022AA1A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA1A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA1AC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA1AC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022AA1B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA1B4 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA1B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AA1B8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA1B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AA1BC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA1BC */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AA1BC */ if (_t7) goto L_022AA220; else goto L_022AA1C0;
|
|
L_022AA1C0: ; // 0x22aa1c0
|
|
/* 022AA1C0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AA1C4 */ cpu->r[6] = cpu->r[6] + 0x00001D98u;
|
|
/* 022AA1C8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA1CC */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AA1CC */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 022AA1D0 */ _t9 = cpu->r[12] + 0x000056A0u;
|
|
/* 022AA1D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AA1D0 */ cpu->r[12] = _t9;
|
|
/* 022AA1D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 022AA1D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA1D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AA1D8 */ if (_t11) goto L_022AA1DC; else goto L_022AA204;
|
|
L_022AA1DC: ; // 0x22aa1dc
|
|
/* 022AA1DC */ cpu->r[30] = 0x101C0000u;
|
|
/* 022AA1E0 */ cpu->r[29] = 0x00000000u;
|
|
/* 022AA1E4 */ _t12 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA1E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA1E8 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022AA1E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 022AA1EC */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA1EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AA1F0 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 022AA1F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AA1F4 */ cpu->ctr = cpu->r[10];
|
|
/* 022AA1F8 */ cpu->r[4] = 0x00000002u;
|
|
/* 022AA1FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA200 */ _t16 = cpu->r[30] + 0x0000569Cu;
|
|
/* 022AA200 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_022AA204: ; // 0x22aa204
|
|
/* 022AA204 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA208 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AA20C */ Gambit_fn_02821E68(cpu);
|
|
/* 022AA210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AA210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA214 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA214 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AA214 */ if (_t18) goto L_022AA220; else goto L_022AA218;
|
|
L_022AA218: ; // 0x22aa218
|
|
/* 022AA218 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA21C */ Gambit_fn_02801BB0(cpu);
|
|
L_022AA220: ; // 0x22aa220
|
|
/* 022AA220 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA220 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AA224 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA224 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA228 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA228 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AA22C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA22C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA230 */ cpu->lr = cpu->r[0];
|
|
/* 022AA234 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA238 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AA23C */ return;
|
|
}
|
|
|
|
// fn_022AA240 @ 0x22aa240
|
|
void Gambit_fn_022AA240(CPUState* cpu) {
|
|
L_022AA240: ; // 0x22aa240
|
|
/* 022AA240 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AA244 */ return;
|
|
}
|
|
|
|
// fn_022AA248 @ 0x22aa248
|
|
void Gambit_fn_022AA248(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AA248: ; // 0x22aa248
|
|
/* 022AA248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA24C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA24C */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AA24C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AA24C */ goto L_022AA250;
|
|
L_022AA250: ; // 0x22aa250
|
|
/* 022AA250 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AA250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA254 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA254 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AA254 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AA254 */ goto L_022AA258;
|
|
L_022AA258: ; // 0x22aa258
|
|
/* 022AA258 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AA260 @ 0x22aa260
|
|
void Gambit_fn_022AA260(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_022AA260: ; // 0x22aa260
|
|
/* 022AA260 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022AA260 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA260 */ cpu->r[1] = _t0;
|
|
/* 022AA264 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA264 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AA268 */ /* nop */
|
|
/* 022AA26C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA26C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA270 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA270 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AA274 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA278 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA278 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AA27C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA27C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AA27C */ if (_t6) goto L_022AA280; else goto L_022AA290;
|
|
L_022AA280: ; // 0x22aa280
|
|
/* 022AA280 */ cpu->r[3] = 0x000001ECu;
|
|
/* 022AA284 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA288 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA28C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA28C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AA28C */ if (_t8) goto L_022AA338; else goto L_022AA290;
|
|
L_022AA290: ; // 0x22aa290
|
|
/* 022AA290 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA294 */ Gambit_fn_022740E4(cpu);
|
|
/* 022AA298 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA29C */ _t9 = cpu->r[12] + 0x00001E40u;
|
|
/* 022AA29C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AA2A0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA2A4 */ cpu->r[12] = cpu->r[12] + 0x00001E78u;
|
|
/* 022AA2A8 */ cpu->r[3] = cpu->r[31] + 0x000001C4u;
|
|
/* 022AA2A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2AC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AA2AC */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 022AA2B0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2B0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AA2B0 */ if (_t12) goto L_022AA2B4; else goto L_022AA2C4;
|
|
L_022AA2B4: ; // 0x22aa2b4
|
|
/* 022AA2B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AA2B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA2BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AA2C0 */ if (_t14) goto L_022AA2E8; else goto L_022AA2C4;
|
|
L_022AA2C4: ; // 0x22aa2c4
|
|
/* 022AA2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2C8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2C8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AA2C8 */ if (_t16) goto L_022AA2CC; else goto L_022AA2DC;
|
|
L_022AA2CC: ; // 0x22aa2cc
|
|
/* 022AA2CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AA2D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2D8 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2D8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AA2D8 */ if (_t18) goto L_022AA2E8; else goto L_022AA2DC;
|
|
L_022AA2DC: ; // 0x22aa2dc
|
|
/* 022AA2DC */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA2DC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[31]);
|
|
/* 022AA2E0 */ _t20 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA2E0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[31]);
|
|
/* 022AA2E4 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA2E4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[31]);
|
|
L_022AA2E8: ; // 0x22aa2e8
|
|
/* 022AA2E8 */ cpu->r[3] = cpu->r[31] + 0x000001D0u;
|
|
/* 022AA2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2EC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2EC */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AA2EC */ if (_t23) goto L_022AA2F0; else goto L_022AA300;
|
|
L_022AA2F0: ; // 0x22aa2f0
|
|
/* 022AA2F0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AA2F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA2F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA2FC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA2FC */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AA2FC */ if (_t25) goto L_022AA324; else goto L_022AA300;
|
|
L_022AA300: ; // 0x22aa300
|
|
/* 022AA300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA304 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA304 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AA304 */ if (_t27) goto L_022AA308; else goto L_022AA318;
|
|
L_022AA308: ; // 0x22aa308
|
|
/* 022AA308 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AA30C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA314 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA314 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AA314 */ if (_t29) goto L_022AA324; else goto L_022AA318;
|
|
L_022AA318: ; // 0x22aa318
|
|
/* 022AA318 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA318 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[31]);
|
|
/* 022AA31C */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA31C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[31]);
|
|
/* 022AA320 */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA320 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
L_022AA324: ; // 0x22aa324
|
|
/* 022AA324 */ _t33 = cpu->r[31] + 0x000001E0u;
|
|
/* 022AA324 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
/* 022AA328 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA32C */ _t34 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA32C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 022AA330 */ _t35 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA330 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 022AA334 */ _t36 = cpu->r[31] + 0x000001E4u;
|
|
/* 022AA334 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
L_022AA338: ; // 0x22aa338
|
|
/* 022AA338 */ _t37 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA338 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022AA33C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA340 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AA344 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA344 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39);
|
|
/* 022AA348 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA348 */ _t41 = _t40 & 0x00000001u;
|
|
/* 022AA348 */ if (_t41) goto L_022AA34C; // else: addr-0 trap, fall-through
|
|
L_022AA34C: ; // 0x22aa34c
|
|
/* 022AA34C */ _t42 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA34C */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AA350 */ cpu->lr = cpu->r[0];
|
|
/* 022AA354 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022AA358 */ return;
|
|
}
|
|
|
|
// fn_022AA35C @ 0x22aa35c
|
|
void Gambit_fn_022AA35C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022AA35C: ; // 0x22aa35c
|
|
/* 022AA35C */ cpu->r[0] = cpu->lr;
|
|
/* 022AA360 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA360 */ cpu->r[1] = _t0;
|
|
/* 022AA364 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA368 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA368 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AA36C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA370 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AA374 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA374 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA378 */ Gambit_fn_022711B8(cpu);
|
|
/* 022AA37C */ _t4 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA380 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022AA384 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022AA388 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022AA38C */ _t5 = cpu->r[30] + 0x000001E4u;
|
|
/* 022AA38C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[11]);
|
|
/* 022AA390 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA394 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA394 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA398 */ cpu->lr = cpu->r[0];
|
|
/* 022AA39C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA39C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AA3A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA3A4 */ return;
|
|
}
|
|
|
|
// fn_022AA360 @ 0x22aa360
|
|
void Gambit_fn_022AA360(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022AA360: ; // 0x22aa360
|
|
/* 022AA360 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA360 */ cpu->r[1] = _t0;
|
|
/* 022AA364 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA368 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA368 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AA36C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA370 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AA374 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA374 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA378 */ Gambit_fn_022711B8(cpu);
|
|
/* 022AA37C */ _t4 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA380 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 022AA384 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022AA388 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 022AA38C */ _t5 = cpu->r[30] + 0x000001E4u;
|
|
/* 022AA38C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[11]);
|
|
/* 022AA390 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA394 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA394 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA398 */ cpu->lr = cpu->r[0];
|
|
/* 022AA39C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA39C */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AA3A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA3A4 */ return;
|
|
}
|
|
|
|
// fn_022AA3A8 @ 0x22aa3a8
|
|
void Gambit_fn_022AA3A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022AA3A8: ; // 0x22aa3a8
|
|
/* 022AA3A8 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA3AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA3AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA3AC */ cpu->r[1] = _t0;
|
|
/* 022AA3B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA3B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AA3B4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA3B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA3B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA3BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA3BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA3C0 */ _t4 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AA3C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA3C4 */ Gambit_fn_02393BC8(cpu);
|
|
/* 022AA3C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA3CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA3CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AA3CC */ if (_t6) goto L_022AA44C; else goto L_022AA3D0;
|
|
L_022AA3D0: ; // 0x22aa3d0
|
|
/* 022AA3D0 */ _t7 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA3D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022AA3D8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA3D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AA3D8 */ if (_t9) goto L_022AA3DC; else goto L_022AA44C;
|
|
L_022AA3DC: ; // 0x22aa3dc
|
|
/* 022AA3DC */ _t10 = cpu->r[31] + 0x000046C8u;
|
|
/* 022AA3DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA3E0 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022AA3E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AA3E4 */ _t12 = cpu->r[3] + 0x000046BCu;
|
|
/* 022AA3E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA3E8 */ _t13 = cpu->r[11] + 0x0000002Cu;
|
|
/* 022AA3E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AA3EC */ cpu->ctr = cpu->r[12];
|
|
/* 022AA3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA3F4 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA3F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AA3F8 */ _t15 = cpu->r[30] + 0x000001C4u;
|
|
/* 022AA3F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022AA3FC */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA3FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA400 */ _t17 = cpu->r[30] + 0x000001C8u;
|
|
/* 022AA400 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022AA404 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA404 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022AA408 */ _t19 = cpu->r[30] + 0x000001CCu;
|
|
/* 022AA408 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022AA40C */ _t20 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA410 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022AA414 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AA418 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA418 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AA418 */ if (_t22) goto L_022AA41C; else goto L_022AA424;
|
|
L_022AA41C: ; // 0x22aa41c
|
|
/* 022AA41C */ _t23 = cpu->r[31] + 0x000046C8u;
|
|
/* 022AA41C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA420 */ _t24 = cpu->r[11] + 0x00000004u;
|
|
/* 022AA420 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
L_022AA424: ; // 0x22aa424
|
|
/* 022AA424 */ _t25 = cpu->r[3] + 0x000046BCu;
|
|
/* 022AA424 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AA428 */ _t26 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AA428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AA42C */ cpu->ctr = cpu->r[0];
|
|
/* 022AA430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA434 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AA438 */ _t28 = cpu->r[30] + 0x000001D0u;
|
|
/* 022AA438 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022AA43C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA43C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022AA440 */ _t30 = cpu->r[30] + 0x000001D4u;
|
|
/* 022AA440 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022AA444 */ _t31 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AA448 */ _t32 = cpu->r[30] + 0x000001D8u;
|
|
/* 022AA448 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
L_022AA44C: ; // 0x22aa44c
|
|
/* 022AA44C */ cpu->r[3] = 0x00000064u;
|
|
/* 022AA450 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA458 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA458 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022AA458 */ if (_t34) goto L_022AA460; else goto L_022AA45C;
|
|
L_022AA45C: ; // 0x22aa45c
|
|
/* 022AA45C */ Gambit_fn_023F9DB0(cpu);
|
|
L_022AA460: ; // 0x22aa460
|
|
/* 022AA460 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AA464 */ _t35 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA464 */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 022AA468 */ Gambit_fn_023F9D38(cpu);
|
|
/* 022AA46C */ _t36 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA46C */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022AA470 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AA474 */ _t37 = cpu->r[11] + 0x00001E44u;
|
|
/* 022AA474 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022AA478 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA47C */ _t38 = cpu->r[12] + 0x00000060u;
|
|
/* 022AA47C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 022AA480 */ _t39 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA480 */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AA484 */ _t40 = cpu->r[11] + 0x00000028u;
|
|
/* 022AA484 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 022AA488 */ _t41 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA488 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AA48C */ Gambit_fn_023E4504(cpu);
|
|
/* 022AA490 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AA494 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA494 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AA498 */ cpu->lr = cpu->r[0];
|
|
/* 022AA49C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA49C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AA4A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA4A4 */ return;
|
|
}
|
|
|
|
// fn_022AA3AC @ 0x22aa3ac
|
|
void Gambit_fn_022AA3AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_022AA3AC: ; // 0x22aa3ac
|
|
/* 022AA3AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA3AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA3AC */ cpu->r[1] = _t0;
|
|
/* 022AA3B0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA3B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AA3B4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA3B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA3B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA3BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA3BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA3C0 */ _t4 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AA3C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA3C4 */ Gambit_fn_02393BC8(cpu);
|
|
/* 022AA3C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA3C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AA3CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA3CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AA3CC */ if (_t6) goto L_022AA44C; else goto L_022AA3D0;
|
|
L_022AA3D0: ; // 0x22aa3d0
|
|
/* 022AA3D0 */ _t7 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA3D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA3D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022AA3D8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA3D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AA3D8 */ if (_t9) goto L_022AA3DC; else goto L_022AA44C;
|
|
L_022AA3DC: ; // 0x22aa3dc
|
|
/* 022AA3DC */ _t10 = cpu->r[31] + 0x000046C8u;
|
|
/* 022AA3DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA3E0 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022AA3E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AA3E4 */ _t12 = cpu->r[3] + 0x000046BCu;
|
|
/* 022AA3E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA3E8 */ _t13 = cpu->r[11] + 0x0000002Cu;
|
|
/* 022AA3E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AA3EC */ cpu->ctr = cpu->r[12];
|
|
/* 022AA3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA3F4 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA3F4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AA3F8 */ _t15 = cpu->r[30] + 0x000001C4u;
|
|
/* 022AA3F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022AA3FC */ _t16 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA3FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA400 */ _t17 = cpu->r[30] + 0x000001C8u;
|
|
/* 022AA400 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022AA404 */ _t18 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA404 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022AA408 */ _t19 = cpu->r[30] + 0x000001CCu;
|
|
/* 022AA408 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022AA40C */ _t20 = cpu->r[31] + 0x000046C0u;
|
|
/* 022AA40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA410 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022AA414 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AA418 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA418 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AA418 */ if (_t22) goto L_022AA41C; else goto L_022AA424;
|
|
L_022AA41C: ; // 0x22aa41c
|
|
/* 022AA41C */ _t23 = cpu->r[31] + 0x000046C8u;
|
|
/* 022AA41C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA420 */ _t24 = cpu->r[11] + 0x00000004u;
|
|
/* 022AA420 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
L_022AA424: ; // 0x22aa424
|
|
/* 022AA424 */ _t25 = cpu->r[3] + 0x000046BCu;
|
|
/* 022AA424 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AA428 */ _t26 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AA428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AA42C */ cpu->ctr = cpu->r[0];
|
|
/* 022AA430 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AA434 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 022AA434 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AA438 */ _t28 = cpu->r[30] + 0x000001D0u;
|
|
/* 022AA438 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022AA43C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA43C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022AA440 */ _t30 = cpu->r[30] + 0x000001D4u;
|
|
/* 022AA440 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022AA444 */ _t31 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA444 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AA448 */ _t32 = cpu->r[30] + 0x000001D8u;
|
|
/* 022AA448 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
L_022AA44C: ; // 0x22aa44c
|
|
/* 022AA44C */ cpu->r[3] = 0x00000064u;
|
|
/* 022AA450 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AA454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA458 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA458 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022AA458 */ if (_t34) goto L_022AA460; else goto L_022AA45C;
|
|
L_022AA45C: ; // 0x22aa45c
|
|
/* 022AA45C */ Gambit_fn_023F9DB0(cpu);
|
|
L_022AA460: ; // 0x22aa460
|
|
/* 022AA460 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AA464 */ _t35 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA464 */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 022AA468 */ Gambit_fn_023F9D38(cpu);
|
|
/* 022AA46C */ _t36 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA46C */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022AA470 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AA474 */ _t37 = cpu->r[11] + 0x00001E44u;
|
|
/* 022AA474 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022AA478 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA47C */ _t38 = cpu->r[12] + 0x00000060u;
|
|
/* 022AA47C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 022AA480 */ _t39 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA480 */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AA484 */ _t40 = cpu->r[11] + 0x00000028u;
|
|
/* 022AA484 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[0]);
|
|
/* 022AA488 */ _t41 = cpu->r[30] + 0x000001DCu;
|
|
/* 022AA488 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AA48C */ Gambit_fn_023E4504(cpu);
|
|
/* 022AA490 */ _t42 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AA494 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA494 */ cpu->r[30] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AA498 */ cpu->lr = cpu->r[0];
|
|
/* 022AA49C */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA49C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AA4A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA4A4 */ return;
|
|
}
|
|
|
|
// fn_022AA4A8 @ 0x22aa4a8
|
|
void Gambit_fn_022AA4A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AA4A8: ; // 0x22aa4a8
|
|
/* 022AA4A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA4AC */ _t0 = cpu->r[12] + 0x00001E40u;
|
|
/* 022AA4AC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AA4B0 */ _t1 = cpu->r[3] + 0x000001E0u;
|
|
/* 022AA4B0 */ rbrew_write_f32(cpu->mem, _t1, cpu->f[0]);
|
|
/* 022AA4B4 */ _t2 = cpu->r[3] + 0x000001E8u;
|
|
/* 022AA4B4 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[0]);
|
|
/* 022AA4B8 */ return;
|
|
}
|
|
|
|
// fn_022AA4BC @ 0x22aa4bc
|
|
void Gambit_fn_022AA4BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022AA4BC: ; // 0x22aa4bc
|
|
/* 022AA4BC */ cpu->r[0] = cpu->lr;
|
|
/* 022AA4C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA4C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA4C0 */ cpu->r[1] = _t0;
|
|
/* 022AA4C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA4C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA4C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA4CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA4CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AA4D0 */ _t3 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA4D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AA4D4 */ _t4 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA4D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022AA4D8 */ _t5 = cpu->r[12] + 0x0000001Cu;
|
|
/* 022AA4D8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022AA4DC */ _t6 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA4DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AA4E0 */ _t7 = cpu->r[12] + 0x00000020u;
|
|
/* 022AA4E0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022AA4E4 */ _t8 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA4E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022AA4E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA4EC */ _t9 = cpu->r[12] + 0x00000024u;
|
|
/* 022AA4EC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AA4F0 */ _t10 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA4F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA4F4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AA4F8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA4F8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AA4FC */ Gambit_fn_023F9D48(cpu);
|
|
/* 022AA500 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA500 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA504 */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AA508 */ Gambit_fn_023C2480(cpu);
|
|
/* 022AA50C */ _t14 = cpu->r[31] + 0x000001E0u;
|
|
/* 022AA50C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[1]);
|
|
/* 022AA510 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AA514 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA514 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AA518 */ cpu->lr = cpu->r[0];
|
|
/* 022AA51C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA520 */ return;
|
|
}
|
|
|
|
// fn_022AA4C0 @ 0x22aa4c0
|
|
void Gambit_fn_022AA4C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022AA4C0: ; // 0x22aa4c0
|
|
/* 022AA4C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA4C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA4C0 */ cpu->r[1] = _t0;
|
|
/* 022AA4C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA4C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA4C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA4CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA4CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AA4D0 */ _t3 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA4D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AA4D4 */ _t4 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA4D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022AA4D8 */ _t5 = cpu->r[12] + 0x0000001Cu;
|
|
/* 022AA4D8 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[0]);
|
|
/* 022AA4DC */ _t6 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA4DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AA4E0 */ _t7 = cpu->r[12] + 0x00000020u;
|
|
/* 022AA4E0 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022AA4E4 */ _t8 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA4E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022AA4E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AA4EC */ _t9 = cpu->r[12] + 0x00000024u;
|
|
/* 022AA4EC */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AA4F0 */ _t10 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA4F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA4F4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AA4F8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA4F8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AA4FC */ Gambit_fn_023F9D48(cpu);
|
|
/* 022AA500 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA500 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA504 */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 022AA504 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AA508 */ Gambit_fn_023C2480(cpu);
|
|
/* 022AA50C */ _t14 = cpu->r[31] + 0x000001E0u;
|
|
/* 022AA50C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[1]);
|
|
/* 022AA510 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA510 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AA514 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA514 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AA518 */ cpu->lr = cpu->r[0];
|
|
/* 022AA51C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA520 */ return;
|
|
}
|
|
|
|
// fn_022AA524 @ 0x22aa524
|
|
void Gambit_fn_022AA524(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
double _ft44, _ft45;
|
|
|
|
L_022AA524: ; // 0x22aa524
|
|
/* 022AA524 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA528 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 022AA528 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA528 */ cpu->r[1] = _t0;
|
|
/* 022AA52C */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 022AA52C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AA530 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 022AA530 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA534 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA538 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AA538 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA53C */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022AA53C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA540 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022AA540 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AA544 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA548 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA54C */ Gambit_fn_0261F774(cpu);
|
|
/* 022AA550 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AA554 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA558 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AA55C */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022AA55C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA560 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA560 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022AA564 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022AA564 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AA568 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA568 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 022AA56C */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AA56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA570 */ cpu->r[3] = cpu->r[31] + 0x00000140u;
|
|
/* 022AA574 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AA578 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA578 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AA57C */ Gambit_fn_02C693A4(cpu);
|
|
/* 022AA580 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AA584 */ _t12 = cpu->r[6] + 0x00001E48u;
|
|
/* 022AA584 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022AA588 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 022AA58C */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA58C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AA58C */ if (_t14) goto L_022AA774; else goto L_022AA590;
|
|
L_022AA590: ; // 0x22aa590
|
|
/* 022AA590 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA590 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022AA594 */ /* nop */
|
|
/* 022AA598 */ _t16 = cpu->r[31] + 0x000001CCu;
|
|
/* 022AA598 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA59C */ /* nop */
|
|
/* 022AA5A0 */ cpu->f[0] = cpu->f[8] - cpu->f[11];
|
|
/* 022AA5A4 */ /* nop */
|
|
/* 022AA5A8 */ /* nop */
|
|
/* 022AA5AC */ _t17 = cpu->r[31] + 0x000001D8u;
|
|
/* 022AA5AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022AA5B0 */ /* nop */
|
|
/* 022AA5B4 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA5B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AA5B8 */ cpu->f[8] = cpu->f[9] - cpu->f[11];
|
|
/* 022AA5BC */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA5BC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022AA5C0 */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 022AA5C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA5C4 */ /* nop */
|
|
/* 022AA5C8 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA5C8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022AA5CC */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA5CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA5D0 */ /* nop */
|
|
/* 022AA5D4 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 022AA5D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA5D8 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AA5D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA5DC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA5DC */ rbrew_write32(cpu->mem, _t25, cpu->r[7]);
|
|
/* 022AA5E0 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA5E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022AA5E4 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA5E4 */ rbrew_write32(cpu->mem, _t27, cpu->r[5]);
|
|
/* 022AA5E8 */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 022AA5EC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA5EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AA5F0 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022AA5F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA5F8 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022AA5FC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA5FC */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 022AA600 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA600 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AA604 */ _t32 = cpu->r[12] + 0x00001E40u;
|
|
/* 022AA604 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022AA608 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 022AA60C */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA60C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022AA610 */ _t34 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA610 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022AA614 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[8]);
|
|
/* 022AA618 */ _t35 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA618 */ rbrew_write32(cpu->mem, _t35, cpu->r[6]);
|
|
/* 022AA61C */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA61C */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AA61C */ if (_t37) goto L_022AA654; else goto L_022AA620;
|
|
L_022AA620: ; // 0x22aa620
|
|
/* 022AA620 */ /* nop */
|
|
/* 022AA624 */ /* nop */
|
|
/* 022AA628 */ /* nop */
|
|
/* 022AA62C */ /* nop */
|
|
/* 022AA630 */ cpu->f[11] = cpu->f[9];
|
|
/* 022AA634 */ _t38 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022AA638 */ cpu->f[12] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 022AA63C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[8]);
|
|
/* 022AA640 */ cpu->f[13] = cpu->f[13] * cpu->f[12];
|
|
/* 022AA644 */ /* nop */
|
|
/* 022AA648 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA648 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 022AA64C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA64C */ _t41 = _t40 & 0x00000001u;
|
|
/* 022AA64C */ if (_t41) goto L_022AA650; else goto L_022AA6B8;
|
|
L_022AA650: ; // 0x22aa650
|
|
/* 022AA650 */ goto L_022AA774;
|
|
L_022AA654: ; // 0x22aa654
|
|
/* 022AA654 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AA658 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AA65C */ _t42 = cpu->r[9] + 0x00001E50u;
|
|
/* 022AA65C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022AA660 */ _t43 = cpu->r[7] + 0x00001E4Cu;
|
|
/* 022AA660 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022AA664 */ _ft44 = sqrt(cpu->f[10]);
|
|
/* 022AA664 */ _ft45 = (double)(int32_t)0x00000001u;
|
|
/* 022AA664 */ cpu->f[9] = _ft45 / _ft44;
|
|
/* 022AA668 */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 022AA66C */ cpu->f[7] = cpu->f[9] * cpu->f[11];
|
|
/* 022AA670 */ cpu->f[0] = -fma(cpu->f[0], cpu->f[10], -(cpu->f[12]));
|
|
/* 022AA674 */ cpu->f[9] = cpu->f[0] * cpu->f[7];
|
|
/* 022AA678 */ /* nop */
|
|
/* 022AA67C */ cpu->f[10] = cpu->f[10] * cpu->f[9];
|
|
/* 022AA680 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA680 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022AA684 */ /* nop */
|
|
/* 022AA688 */ /* nop */
|
|
/* 022AA68C */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 022AA690 */ /* nop */
|
|
/* 022AA694 */ /* nop */
|
|
/* 022AA698 */ cpu->f[11] = cpu->f[9];
|
|
/* 022AA69C */ _t47 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA69C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022AA6A0 */ cpu->f[12] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 022AA6A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[8]);
|
|
/* 022AA6A8 */ cpu->f[13] = cpu->f[13] * cpu->f[12];
|
|
/* 022AA6AC */ /* nop */
|
|
/* 022AA6B0 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA6B0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022AA6B4 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA6B4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022AA6B4 */ if (_t50) goto L_022AA774; else goto L_022AA6B8;
|
|
L_022AA6B8: ; // 0x22aa6b8
|
|
/* 022AA6B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[10]);
|
|
/* 022AA6BC */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA6BC */ _t52 = _t51 & 0x00000001u;
|
|
/* 022AA6BC */ if (_t52) goto L_022AA774; else goto L_022AA6C0;
|
|
L_022AA6C0: ; // 0x22aa6c0
|
|
/* 022AA6C0 */ /* nop */
|
|
/* 022AA6C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA6C8 */ _t53 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA6C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022AA6CC */ /* nop */
|
|
/* 022AA6D0 */ _t54 = cpu->r[12] + 0x00001E54u;
|
|
/* 022AA6D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022AA6D4 */ _t55 = cpu->r[31] + 0x000001CCu;
|
|
/* 022AA6D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022AA6D8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA6DC */ /* nop */
|
|
/* 022AA6E0 */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 022AA6E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AA6E4 */ cpu->f[12] = cpu->f[11] + cpu->f[13];
|
|
/* 022AA6E8 */ _t57 = cpu->r[8] + 0x00001E58u;
|
|
/* 022AA6E8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022AA6EC */ _t58 = cpu->r[31] + 0x000001E0u;
|
|
/* 022AA6EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022AA6F0 */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AA6F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022AA6F4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA6F8 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA6F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[5]);
|
|
/* 022AA6FC */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA6FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022AA700 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA700 */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 022AA704 */ cpu->f[13] = cpu->f[8] - cpu->f[10];
|
|
/* 022AA708 */ _t63 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA708 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022AA70C */ cpu->f[5] = fma(cpu->f[7], cpu->f[6], cpu->f[9]);
|
|
/* 022AA710 */ _t64 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA710 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022AA714 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AA718 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA718 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022AA71C */ _t66 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AA720 */ cpu->f[11] = cpu->f[0] - cpu->f[8];
|
|
/* 022AA724 */ _t67 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA724 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022AA728 */ cpu->f[10] = fma(cpu->f[13], cpu->f[5], cpu->f[10]);
|
|
/* 022AA72C */ _t68 = cpu->r[8] + 0x00001E5Cu;
|
|
/* 022AA72C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022AA730 */ cpu->f[7] = fma(cpu->f[11], cpu->f[5], cpu->f[8]);
|
|
/* 022AA734 */ _t69 = cpu->r[5] + 0x00001E44u;
|
|
/* 022AA734 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022AA738 */ _t70 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA738 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 022AA73C */ cpu->f[0] = fma(cpu->f[0], cpu->f[6], cpu->f[13]);
|
|
/* 022AA740 */ _t71 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA740 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022AA744 */ _t72 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA744 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022AA748 */ cpu->f[13] = cpu->f[13] - cpu->f[7];
|
|
/* 022AA74C */ cpu->f[8] = cpu->f[11] - cpu->f[12];
|
|
/* 022AA750 */ cpu->f[9] = cpu->f[10] - cpu->f[10];
|
|
/* 022AA754 */ cpu->f[8] = fma(cpu->f[8], cpu->f[5], cpu->f[12]);
|
|
/* 022AA758 */ cpu->f[11] = fma(cpu->f[9], cpu->f[0], cpu->f[10]);
|
|
/* 022AA75C */ cpu->f[10] = cpu->f[8] - cpu->f[8];
|
|
/* 022AA760 */ cpu->f[7] = fma(cpu->f[13], cpu->f[0], cpu->f[7]);
|
|
/* 022AA764 */ _t73 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA764 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[11]);
|
|
/* 022AA768 */ cpu->f[12] = fma(cpu->f[10], cpu->f[0], cpu->f[8]);
|
|
/* 022AA76C */ _t74 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA76C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[7]);
|
|
/* 022AA770 */ _t75 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA770 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
L_022AA774: ; // 0x22aa774
|
|
/* 022AA774 */ _t76 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AA774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022AA778 */ _t77 = cpu->r[1] + 0x00000060u;
|
|
/* 022AA778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AA77C */ cpu->lr = cpu->r[0];
|
|
/* 022AA780 */ _t78 = cpu->r[1] + 0x00000064u;
|
|
/* 022AA780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022AA784 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 022AA788 */ return;
|
|
}
|
|
|
|
// fn_022AA528 @ 0x22aa528
|
|
void Gambit_fn_022AA528(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78;
|
|
double _ft44, _ft45;
|
|
|
|
L_022AA528: ; // 0x22aa528
|
|
/* 022AA528 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 022AA528 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA528 */ cpu->r[1] = _t0;
|
|
/* 022AA52C */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 022AA52C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AA530 */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 022AA530 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA534 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA538 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AA538 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA53C */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022AA53C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AA540 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022AA540 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AA544 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA548 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA54C */ Gambit_fn_0261F774(cpu);
|
|
/* 022AA550 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AA554 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA558 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AA55C */ _t6 = cpu->r[3] + 0x00000244u;
|
|
/* 022AA55C */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA560 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA560 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022AA564 */ _t8 = cpu->r[3] + 0x00000248u;
|
|
/* 022AA564 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AA568 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA568 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 022AA56C */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AA56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA570 */ cpu->r[3] = cpu->r[31] + 0x00000140u;
|
|
/* 022AA574 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AA578 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA578 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AA57C */ Gambit_fn_02C693A4(cpu);
|
|
/* 022AA580 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AA584 */ _t12 = cpu->r[6] + 0x00001E48u;
|
|
/* 022AA584 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022AA588 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 022AA58C */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA58C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AA58C */ if (_t14) goto L_022AA774; else goto L_022AA590;
|
|
L_022AA590: ; // 0x22aa590
|
|
/* 022AA590 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA590 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022AA594 */ /* nop */
|
|
/* 022AA598 */ _t16 = cpu->r[31] + 0x000001CCu;
|
|
/* 022AA598 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA59C */ /* nop */
|
|
/* 022AA5A0 */ cpu->f[0] = cpu->f[8] - cpu->f[11];
|
|
/* 022AA5A4 */ /* nop */
|
|
/* 022AA5A8 */ /* nop */
|
|
/* 022AA5AC */ _t17 = cpu->r[31] + 0x000001D8u;
|
|
/* 022AA5AC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022AA5B0 */ /* nop */
|
|
/* 022AA5B4 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA5B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AA5B8 */ cpu->f[8] = cpu->f[9] - cpu->f[11];
|
|
/* 022AA5BC */ _t19 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA5BC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022AA5C0 */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 022AA5C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AA5C4 */ /* nop */
|
|
/* 022AA5C8 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA5C8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022AA5CC */ _t22 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA5CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA5D0 */ /* nop */
|
|
/* 022AA5D4 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 022AA5D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA5D8 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AA5D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA5DC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA5DC */ rbrew_write32(cpu->mem, _t25, cpu->r[7]);
|
|
/* 022AA5E0 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA5E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022AA5E4 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA5E4 */ rbrew_write32(cpu->mem, _t27, cpu->r[5]);
|
|
/* 022AA5E8 */ cpu->f[10] = cpu->f[12] * cpu->f[12];
|
|
/* 022AA5EC */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA5EC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AA5F0 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022AA5F4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA5F8 */ cpu->f[11] = fma(cpu->f[9], cpu->f[9], cpu->f[10]);
|
|
/* 022AA5FC */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA5FC */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 022AA600 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA600 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AA604 */ _t32 = cpu->r[12] + 0x00001E40u;
|
|
/* 022AA604 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022AA608 */ cpu->f[10] = fma(cpu->f[13], cpu->f[13], cpu->f[11]);
|
|
/* 022AA60C */ _t33 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA60C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 022AA610 */ _t34 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA610 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 022AA614 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[8]);
|
|
/* 022AA618 */ _t35 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA618 */ rbrew_write32(cpu->mem, _t35, cpu->r[6]);
|
|
/* 022AA61C */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA61C */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AA61C */ if (_t37) goto L_022AA654; else goto L_022AA620;
|
|
L_022AA620: ; // 0x22aa620
|
|
/* 022AA620 */ /* nop */
|
|
/* 022AA624 */ /* nop */
|
|
/* 022AA628 */ /* nop */
|
|
/* 022AA62C */ /* nop */
|
|
/* 022AA630 */ cpu->f[11] = cpu->f[9];
|
|
/* 022AA634 */ _t38 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA634 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 022AA638 */ cpu->f[12] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 022AA63C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[8]);
|
|
/* 022AA640 */ cpu->f[13] = cpu->f[13] * cpu->f[12];
|
|
/* 022AA644 */ /* nop */
|
|
/* 022AA648 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA648 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[13]);
|
|
/* 022AA64C */ _t40 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA64C */ _t41 = _t40 & 0x00000001u;
|
|
/* 022AA64C */ if (_t41) goto L_022AA650; else goto L_022AA6B8;
|
|
L_022AA650: ; // 0x22aa650
|
|
/* 022AA650 */ goto L_022AA774;
|
|
L_022AA654: ; // 0x22aa654
|
|
/* 022AA654 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AA658 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AA65C */ _t42 = cpu->r[9] + 0x00001E50u;
|
|
/* 022AA65C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022AA660 */ _t43 = cpu->r[7] + 0x00001E4Cu;
|
|
/* 022AA660 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022AA664 */ _ft44 = sqrt(cpu->f[10]);
|
|
/* 022AA664 */ _ft45 = (double)(int32_t)0x00000001u;
|
|
/* 022AA664 */ cpu->f[9] = _ft45 / _ft44;
|
|
/* 022AA668 */ cpu->f[0] = cpu->f[9] * cpu->f[9];
|
|
/* 022AA66C */ cpu->f[7] = cpu->f[9] * cpu->f[11];
|
|
/* 022AA670 */ cpu->f[0] = -fma(cpu->f[0], cpu->f[10], -(cpu->f[12]));
|
|
/* 022AA674 */ cpu->f[9] = cpu->f[0] * cpu->f[7];
|
|
/* 022AA678 */ /* nop */
|
|
/* 022AA67C */ cpu->f[10] = cpu->f[10] * cpu->f[9];
|
|
/* 022AA680 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA680 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022AA684 */ /* nop */
|
|
/* 022AA688 */ /* nop */
|
|
/* 022AA68C */ cpu->f[13] = cpu->f[13] * cpu->f[9];
|
|
/* 022AA690 */ /* nop */
|
|
/* 022AA694 */ /* nop */
|
|
/* 022AA698 */ cpu->f[11] = cpu->f[9];
|
|
/* 022AA69C */ _t47 = cpu->r[1] + 0x00000058u;
|
|
/* 022AA69C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022AA6A0 */ cpu->f[12] = fma(cpu->f[9], cpu->f[13], cpu->f[11]);
|
|
/* 022AA6A4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[8]);
|
|
/* 022AA6A8 */ cpu->f[13] = cpu->f[13] * cpu->f[12];
|
|
/* 022AA6AC */ /* nop */
|
|
/* 022AA6B0 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA6B0 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[13]);
|
|
/* 022AA6B4 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA6B4 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022AA6B4 */ if (_t50) goto L_022AA774; else goto L_022AA6B8;
|
|
L_022AA6B8: ; // 0x22aa6b8
|
|
/* 022AA6B8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[10]);
|
|
/* 022AA6BC */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AA6BC */ _t52 = _t51 & 0x00000001u;
|
|
/* 022AA6BC */ if (_t52) goto L_022AA774; else goto L_022AA6C0;
|
|
L_022AA6C0: ; // 0x22aa6c0
|
|
/* 022AA6C0 */ /* nop */
|
|
/* 022AA6C4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA6C8 */ _t53 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA6C8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022AA6CC */ /* nop */
|
|
/* 022AA6D0 */ _t54 = cpu->r[12] + 0x00001E54u;
|
|
/* 022AA6D0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022AA6D4 */ _t55 = cpu->r[31] + 0x000001CCu;
|
|
/* 022AA6D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022AA6D8 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA6DC */ /* nop */
|
|
/* 022AA6E0 */ _t56 = cpu->r[1] + 0x00000038u;
|
|
/* 022AA6E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AA6E4 */ cpu->f[12] = cpu->f[11] + cpu->f[13];
|
|
/* 022AA6E8 */ _t57 = cpu->r[8] + 0x00001E58u;
|
|
/* 022AA6E8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022AA6EC */ _t58 = cpu->r[31] + 0x000001E0u;
|
|
/* 022AA6EC */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022AA6F0 */ _t59 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AA6F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022AA6F4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA6F8 */ _t60 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA6F8 */ rbrew_write32(cpu->mem, _t60, cpu->r[5]);
|
|
/* 022AA6FC */ _t61 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA6FC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022AA700 */ _t62 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA700 */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 022AA704 */ cpu->f[13] = cpu->f[8] - cpu->f[10];
|
|
/* 022AA708 */ _t63 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA708 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022AA70C */ cpu->f[5] = fma(cpu->f[7], cpu->f[6], cpu->f[9]);
|
|
/* 022AA710 */ _t64 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA710 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022AA714 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AA718 */ _t65 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA718 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[12]);
|
|
/* 022AA71C */ _t66 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AA720 */ cpu->f[11] = cpu->f[0] - cpu->f[8];
|
|
/* 022AA724 */ _t67 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA724 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022AA728 */ cpu->f[10] = fma(cpu->f[13], cpu->f[5], cpu->f[10]);
|
|
/* 022AA72C */ _t68 = cpu->r[8] + 0x00001E5Cu;
|
|
/* 022AA72C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022AA730 */ cpu->f[7] = fma(cpu->f[11], cpu->f[5], cpu->f[8]);
|
|
/* 022AA734 */ _t69 = cpu->r[5] + 0x00001E44u;
|
|
/* 022AA734 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022AA738 */ _t70 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA738 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 022AA73C */ cpu->f[0] = fma(cpu->f[0], cpu->f[6], cpu->f[13]);
|
|
/* 022AA740 */ _t71 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA740 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022AA744 */ _t72 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA744 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022AA748 */ cpu->f[13] = cpu->f[13] - cpu->f[7];
|
|
/* 022AA74C */ cpu->f[8] = cpu->f[11] - cpu->f[12];
|
|
/* 022AA750 */ cpu->f[9] = cpu->f[10] - cpu->f[10];
|
|
/* 022AA754 */ cpu->f[8] = fma(cpu->f[8], cpu->f[5], cpu->f[12]);
|
|
/* 022AA758 */ cpu->f[11] = fma(cpu->f[9], cpu->f[0], cpu->f[10]);
|
|
/* 022AA75C */ cpu->f[10] = cpu->f[8] - cpu->f[8];
|
|
/* 022AA760 */ cpu->f[7] = fma(cpu->f[13], cpu->f[0], cpu->f[7]);
|
|
/* 022AA764 */ _t73 = cpu->r[31] + 0x00000140u;
|
|
/* 022AA764 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[11]);
|
|
/* 022AA768 */ cpu->f[12] = fma(cpu->f[10], cpu->f[0], cpu->f[8]);
|
|
/* 022AA76C */ _t74 = cpu->r[31] + 0x00000144u;
|
|
/* 022AA76C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[7]);
|
|
/* 022AA770 */ _t75 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA770 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
L_022AA774: ; // 0x22aa774
|
|
/* 022AA774 */ _t76 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AA774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 022AA778 */ _t77 = cpu->r[1] + 0x00000060u;
|
|
/* 022AA778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AA77C */ cpu->lr = cpu->r[0];
|
|
/* 022AA780 */ _t78 = cpu->r[1] + 0x00000064u;
|
|
/* 022AA780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022AA784 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 022AA788 */ return;
|
|
}
|
|
|
|
// fn_022AA78C @ 0x22aa78c
|
|
void Gambit_fn_022AA78C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52;
|
|
|
|
L_022AA78C: ; // 0x22aa78c
|
|
/* 022AA78C */ cpu->r[0] = cpu->lr;
|
|
/* 022AA790 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AA794 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022AA794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA794 */ cpu->r[1] = _t0;
|
|
/* 022AA798 */ _t1 = cpu->r[5] + 0x00001E60u;
|
|
/* 022AA798 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AA79C */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA79C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA7A0 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA7A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022AA7A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA7A8 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA7A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AA7AC */ _t5 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022AA7B0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA7B4 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 022AA7B8 */ _t6 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AA7B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AA7BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022AA7C0 */ cpu->f[13] = cpu->f[11];
|
|
/* 022AA7C4 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA7C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AA7C4 */ if (_t8) goto L_022AA7C8; else goto L_022AA7E4;
|
|
L_022AA7C8: ; // 0x22aa7c8
|
|
/* 022AA7C8 */ _t9 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7C8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022AA7CC */ _t10 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA7D0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA7D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AA7D4 */ cpu->lr = cpu->r[0];
|
|
/* 022AA7D8 */ _t12 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA7D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA7DC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022AA7E0 */ return;
|
|
L_022AA7E4: ; // 0x22aa7e4
|
|
/* 022AA7E4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AA7E8 */ /* nop */
|
|
/* 022AA7EC */ cpu->f[0] = cpu->f[11] - cpu->f[0];
|
|
/* 022AA7F0 */ _t13 = cpu->r[10] + 0x00001E64u;
|
|
/* 022AA7F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022AA7F4 */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA7F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AA7F8 */ _t15 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022AA7FC */ /* nop */
|
|
/* 022AA800 */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 022AA800 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA804 */ /* nop */
|
|
/* 022AA808 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA808 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AA80C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA80C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AA810 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 022AA810 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 022AA814 */ cpu->f[12] = cpu->f[10] * cpu->f[12];
|
|
/* 022AA818 */ /* nop */
|
|
/* 022AA81C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AA81C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022AA820 */ /* nop */
|
|
/* 022AA824 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA824 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 022AA828 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA82C */ /* nop */
|
|
/* 022AA830 */ /* nop */
|
|
/* 022AA834 */ /* nop */
|
|
/* 022AA838 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA83C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA83C */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA840 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AA840 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 022AA844 */ _t26 = cpu->r[1] + 0x00000038u;
|
|
/* 022AA844 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 022AA848 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA84C */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA84C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022AA850 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AA854 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022AA858 */ _t29 = cpu->r[8] + 0x00001E68u;
|
|
/* 022AA858 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022AA85C */ cpu->f[12] = cpu->f[13] + cpu->f[10];
|
|
/* 022AA860 */ _t30 = cpu->r[11] + 0x00006000u;
|
|
/* 022AA860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AA864 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA864 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022AA868 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AA86C */ /* nop */
|
|
/* 022AA870 */ _t33 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022AA870 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022AA874 */ /* nop */
|
|
/* 022AA878 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AA87C */ cpu->f[10] = cpu->f[11] + cpu->f[11];
|
|
/* 022AA880 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 022AA880 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AA884 */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA884 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022AA888 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA888 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022AA88C */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA88C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AA890 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA890 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 022AA894 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA894 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022AA898 */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA898 */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 022AA89C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA8A0 */ _t42 = cpu->r[11] + 0x00000274u;
|
|
/* 022AA8A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AA8A4 */ _t43 = cpu->r[12] + 0x000054A0u;
|
|
/* 022AA8A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AA8A8 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 022AA8AC */ _t44 = cpu->r[11] + 0x00000104u;
|
|
/* 022AA8AC */ cpu->r[4] = rbrew_read8(cpu->mem, _t44);
|
|
/* 022AA8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022AA8B4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA8B4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022AA8B4 */ if (_t46) goto L_022AA8FC; else goto L_022AA8B8;
|
|
L_022AA8B8: ; // 0x22aa8b8
|
|
/* 022AA8B8 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 022AA8BC */ cpu->r[6] = cpu->r[1] + 0x00000038u;
|
|
/* 022AA8C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AA8C4 */ Gambit_fn_021F000C(cpu);
|
|
/* 022AA8C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AA8CC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA8CC */ _t48 = _t47 & 0x00000001u;
|
|
/* 022AA8CC */ if (_t48) goto L_022AA8FC; else goto L_022AA8D0;
|
|
L_022AA8D0: ; // 0x22aa8d0
|
|
/* 022AA8D0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022AA8D4 */ _t49 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022AA8D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AA8D8 */ Gambit_fn_02830138(cpu);
|
|
/* 022AA8DC */ cpu->r[9] = cpu->r[3];
|
|
/* 022AA8E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AA8E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA8E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AA8EC */ cpu->r[6] = cpu->r[5];
|
|
/* 022AA8F0 */ cpu->r[8] = cpu->r[1] + 0x00000044u;
|
|
/* 022AA8F4 */ cpu->r[7] = cpu->r[1] + 0x00000038u;
|
|
/* 022AA8F8 */ Gambit_fn_02223618(cpu);
|
|
L_022AA8FC: ; // 0x22aa8fc
|
|
/* 022AA8FC */ _t50 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA8FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022AA900 */ _t51 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA900 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022AA904 */ cpu->lr = cpu->r[0];
|
|
/* 022AA908 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA908 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022AA90C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022AA910 */ return;
|
|
}
|
|
|
|
// fn_022AA794 @ 0x22aa794
|
|
void Gambit_fn_022AA794(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52;
|
|
|
|
L_022AA794: ; // 0x22aa794
|
|
/* 022AA794 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 022AA794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA794 */ cpu->r[1] = _t0;
|
|
/* 022AA798 */ _t1 = cpu->r[5] + 0x00001E60u;
|
|
/* 022AA798 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AA79C */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA79C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AA7A0 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA7A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022AA7A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA7A8 */ _t4 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA7A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AA7AC */ _t5 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7AC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022AA7B0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA7B4 */ cpu->f[11] = cpu->f[12] + cpu->f[13];
|
|
/* 022AA7B8 */ _t6 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AA7B8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AA7BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022AA7C0 */ cpu->f[13] = cpu->f[11];
|
|
/* 022AA7C4 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AA7C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AA7C4 */ if (_t8) goto L_022AA7C8; else goto L_022AA7E4;
|
|
L_022AA7C8: ; // 0x22aa7c8
|
|
/* 022AA7C8 */ _t9 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7C8 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022AA7CC */ _t10 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AA7D0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA7D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AA7D4 */ cpu->lr = cpu->r[0];
|
|
/* 022AA7D8 */ _t12 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA7D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AA7DC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022AA7E0 */ return;
|
|
L_022AA7E4: ; // 0x22aa7e4
|
|
/* 022AA7E4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AA7E8 */ /* nop */
|
|
/* 022AA7EC */ cpu->f[0] = cpu->f[11] - cpu->f[0];
|
|
/* 022AA7F0 */ _t13 = cpu->r[10] + 0x00001E64u;
|
|
/* 022AA7F0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022AA7F4 */ _t14 = cpu->r[31] + 0x00000148u;
|
|
/* 022AA7F4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AA7F8 */ _t15 = cpu->r[31] + 0x000001E8u;
|
|
/* 022AA7F8 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022AA7FC */ /* nop */
|
|
/* 022AA800 */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 022AA800 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AA804 */ /* nop */
|
|
/* 022AA808 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA808 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AA80C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022AA80C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AA810 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 022AA810 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
/* 022AA814 */ cpu->f[12] = cpu->f[10] * cpu->f[12];
|
|
/* 022AA818 */ /* nop */
|
|
/* 022AA81C */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AA81C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022AA820 */ /* nop */
|
|
/* 022AA824 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA824 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 022AA828 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 022AA828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AA82C */ /* nop */
|
|
/* 022AA830 */ /* nop */
|
|
/* 022AA834 */ /* nop */
|
|
/* 022AA838 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 022AA838 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AA83C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA83C */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AA840 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AA840 */ rbrew_write32(cpu->mem, _t25, cpu->r[9]);
|
|
/* 022AA844 */ _t26 = cpu->r[1] + 0x00000038u;
|
|
/* 022AA844 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 022AA848 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AA84C */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA84C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 022AA850 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 022AA850 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AA854 */ cpu->r[11] = 0x101C0000u;
|
|
/* 022AA858 */ _t29 = cpu->r[8] + 0x00001E68u;
|
|
/* 022AA858 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022AA85C */ cpu->f[12] = cpu->f[13] + cpu->f[10];
|
|
/* 022AA860 */ _t30 = cpu->r[11] + 0x00006000u;
|
|
/* 022AA860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AA864 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA864 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[12]);
|
|
/* 022AA868 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AA868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AA86C */ /* nop */
|
|
/* 022AA870 */ _t33 = cpu->r[31] + 0x0000013Cu;
|
|
/* 022AA870 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022AA874 */ /* nop */
|
|
/* 022AA878 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022AA878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AA87C */ cpu->f[10] = cpu->f[11] + cpu->f[11];
|
|
/* 022AA880 */ _t35 = cpu->r[1] + 0x00000020u;
|
|
/* 022AA880 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AA884 */ _t36 = cpu->r[1] + 0x00000040u;
|
|
/* 022AA884 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022AA888 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA888 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[10]);
|
|
/* 022AA88C */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 022AA88C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AA890 */ _t39 = cpu->r[1] + 0x00000044u;
|
|
/* 022AA890 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 022AA894 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AA894 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022AA898 */ _t41 = cpu->r[1] + 0x00000048u;
|
|
/* 022AA898 */ rbrew_write32(cpu->mem, _t41, cpu->r[9]);
|
|
/* 022AA89C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AA8A0 */ _t42 = cpu->r[11] + 0x00000274u;
|
|
/* 022AA8A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AA8A4 */ _t43 = cpu->r[12] + 0x000054A0u;
|
|
/* 022AA8A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AA8A8 */ cpu->r[11] = cpu->r[3] + cpu->r[12];
|
|
/* 022AA8AC */ _t44 = cpu->r[11] + 0x00000104u;
|
|
/* 022AA8AC */ cpu->r[4] = rbrew_read8(cpu->mem, _t44);
|
|
/* 022AA8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x000000FFu);
|
|
/* 022AA8B4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA8B4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022AA8B4 */ if (_t46) goto L_022AA8FC; else goto L_022AA8B8;
|
|
L_022AA8B8: ; // 0x22aa8b8
|
|
/* 022AA8B8 */ cpu->r[7] = cpu->r[1] + 0x00000044u;
|
|
/* 022AA8BC */ cpu->r[6] = cpu->r[1] + 0x00000038u;
|
|
/* 022AA8C0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AA8C4 */ Gambit_fn_021F000C(cpu);
|
|
/* 022AA8C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AA8C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AA8CC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA8CC */ _t48 = _t47 & 0x00000001u;
|
|
/* 022AA8CC */ if (_t48) goto L_022AA8FC; else goto L_022AA8D0;
|
|
L_022AA8D0: ; // 0x22aa8d0
|
|
/* 022AA8D0 */ cpu->r[3] = 0x101D0000u;
|
|
/* 022AA8D4 */ _t49 = cpu->r[3] + 0xFFFF9918u;
|
|
/* 022AA8D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AA8D8 */ Gambit_fn_02830138(cpu);
|
|
/* 022AA8DC */ cpu->r[9] = cpu->r[3];
|
|
/* 022AA8E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AA8E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AA8E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AA8EC */ cpu->r[6] = cpu->r[5];
|
|
/* 022AA8F0 */ cpu->r[8] = cpu->r[1] + 0x00000044u;
|
|
/* 022AA8F4 */ cpu->r[7] = cpu->r[1] + 0x00000038u;
|
|
/* 022AA8F8 */ Gambit_fn_02223618(cpu);
|
|
L_022AA8FC: ; // 0x22aa8fc
|
|
/* 022AA8FC */ _t50 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AA8FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022AA900 */ _t51 = cpu->r[1] + 0x00000050u;
|
|
/* 022AA900 */ cpu->r[30] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022AA904 */ cpu->lr = cpu->r[0];
|
|
/* 022AA908 */ _t52 = cpu->r[1] + 0x00000054u;
|
|
/* 022AA908 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022AA90C */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 022AA910 */ return;
|
|
}
|
|
|
|
// fn_022AA914 @ 0x22aa914
|
|
void Gambit_fn_022AA914(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AA914: ; // 0x22aa914
|
|
/* 022AA914 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA918 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA918 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA918 */ cpu->r[1] = _t0;
|
|
/* 022AA91C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA91C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA920 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA924 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA924 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AA928 */ Gambit_fn_022AA4BC(cpu);
|
|
/* 022AA92C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA930 */ Gambit_fn_022AA524(cpu);
|
|
/* 022AA934 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA938 */ Gambit_fn_02274628(cpu);
|
|
/* 022AA93C */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 022AA93C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AA940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA944 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA944 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AA944 */ if (_t5) goto L_022AA950; else goto L_022AA948;
|
|
L_022AA948: ; // 0x22aa948
|
|
/* 022AA948 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA94C */ Gambit_fn_022AA78C(cpu);
|
|
L_022AA950: ; // 0x22aa950
|
|
/* 022AA950 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA954 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA954 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA958 */ cpu->lr = cpu->r[0];
|
|
/* 022AA95C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA960 */ return;
|
|
}
|
|
|
|
// fn_022AA918 @ 0x22aa918
|
|
void Gambit_fn_022AA918(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AA918: ; // 0x22aa918
|
|
/* 022AA918 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AA918 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA918 */ cpu->r[1] = _t0;
|
|
/* 022AA91C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA91C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AA920 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AA924 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA924 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AA928 */ Gambit_fn_022AA4BC(cpu);
|
|
/* 022AA92C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA930 */ Gambit_fn_022AA524(cpu);
|
|
/* 022AA934 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA938 */ Gambit_fn_02274628(cpu);
|
|
/* 022AA93C */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 022AA93C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AA940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA944 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA944 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AA944 */ if (_t5) goto L_022AA950; else goto L_022AA948;
|
|
L_022AA948: ; // 0x22aa948
|
|
/* 022AA948 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AA94C */ Gambit_fn_022AA78C(cpu);
|
|
L_022AA950: ; // 0x22aa950
|
|
/* 022AA950 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022AA950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA954 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA954 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA958 */ cpu->lr = cpu->r[0];
|
|
/* 022AA95C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AA960 */ return;
|
|
}
|
|
|
|
// fn_022AA964 @ 0x22aa964
|
|
void Gambit_fn_022AA964(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022709EC: ; // 0x22709ec
|
|
/* 022709EC */ cpu->r[0] = cpu->lr;
|
|
/* 022709F0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022709F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022709F0 */ cpu->r[1] = _t0;
|
|
/* 022709F4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022709F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022709F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022709FC */ _t2 = cpu->r[12] + 0xFFFF8F14u;
|
|
/* 022709FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02270A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02270A04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270A04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02270A08 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02270A08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02270A0C */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02270A0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02270A10 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 02270A10 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 02270A14 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02270A14 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[7]);
|
|
/* 02270A18 */ _t8 = cpu->r[31] + 0x00000140u;
|
|
/* 02270A18 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02270A1C */ _t9 = cpu->r[31] + 0x0000017Cu;
|
|
/* 02270A1C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02270A20 */ _t10 = cpu->r[31] + 0x00000120u;
|
|
/* 02270A20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02270A24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02270A28 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02270A28 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02270A2C */ _t12 = cpu->r[31] + 0x00000124u;
|
|
/* 02270A2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02270A30 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 02270A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02270A34 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02270A34 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02270A38 */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02270A38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02270A3C */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 02270A3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02270A40 */ _t17 = cpu->r[31] + 0x00000128u;
|
|
/* 02270A40 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02270A44 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 02270A44 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02270A48 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02270A48 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02270A4C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02270A4C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 02270A50 */ _t21 = cpu->r[31] + 0x00000134u;
|
|
/* 02270A50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02270A54 */ _t22 = cpu->r[31] + 0x00000148u;
|
|
/* 02270A54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02270A58 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02270A58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 02270A5C */ _t24 = cpu->r[1] + 0x00000040u;
|
|
/* 02270A5C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02270A60 */ _t25 = cpu->r[31] + 0x0000013Cu;
|
|
/* 02270A60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02270A64 */ _t26 = cpu->r[31] + 0x00000144u;
|
|
/* 02270A64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02270A68 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02270A68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[6]);
|
|
/* 02270A6C */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02270A6C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02270A70 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02270A70 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02270A70 */ if (_t30) goto L_02270A90; else goto L_02270A74;
|
|
L_02270A74: ; // 0x2270a74
|
|
/* 02270A74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A78 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02270A78 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02270A7C */ cpu->r[4] = cpu->r[3];
|
|
/* 02270A80 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02270A80 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
/* 02270A84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02270A88 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02270A88 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 02270A8C */ Gambit_fn_02253CE4(cpu);
|
|
L_02270A90: ; // 0x2270a90
|
|
/* 02270A90 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 02270A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02270A94 */ _t35 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270A94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02270A98 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A9C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02270AA0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02270AA4 */ _t36 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270AA4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
/* 02270AA8 */ Gambit_fn_02C69510(cpu);
|
|
/* 02270AAC */ cpu->r[4] = 0x00000003u;
|
|
/* 02270AB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270AB4 */ Gambit_fn_02980304(cpu);
|
|
/* 02270AB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270ABC */ Gambit_fn_02980318(cpu);
|
|
/* 02270AC0 */ _t37 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02270AC4 */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02270AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02270AC8 */ cpu->lr = cpu->r[0];
|
|
/* 02270ACC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02270AD0 */ return;
|
|
L_022AA964: ; // 0x22aa964
|
|
/* 022AA964 */ goto L_022709EC;
|
|
}
|
|
|
|
// fn_022AA968 @ 0x22aa968
|
|
void Gambit_fn_022AA968(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AA968: ; // 0x22aa968
|
|
/* 022AA968 */ cpu->r[0] = cpu->lr;
|
|
/* 022AA96C */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA970 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AA974 */ cpu->r[12] = cpu->r[12] + 0x00001E6Cu;
|
|
/* 022AA978 */ cpu->r[11] = cpu->r[11] + 0x00001DB8u;
|
|
/* 022AA97C */ cpu->r[3] = 0x101E0000u;
|
|
/* 022AA980 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AA980 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AA984 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022AA988 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AA988 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AA988 */ cpu->r[1] = _t1;
|
|
/* 022AA98C */ cpu->r[0] = cpu->r[0] + 0xFFFFAF24u;
|
|
/* 022AA990 */ _t2 = cpu->r[3] + 0x000039E4u;
|
|
/* 022AA990 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 022AA990 */ cpu->r[3] = _t2;
|
|
/* 022AA994 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA998 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA998 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 022AA99C */ cpu->r[12] = cpu->r[12] + 0x00001E20u;
|
|
/* 022AA9A0 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 022AA9A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AA9A4 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA9A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022AA9A8 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AA9A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022AA9AC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022AA9B0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AA9B4 */ cpu->r[3] = cpu->r[3] + 0x000056A4u;
|
|
/* 022AA9B8 */ Gambit_fn_02C83090(cpu);
|
|
/* 022AA9BC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AA9C0 */ cpu->lr = cpu->r[0];
|
|
/* 022AA9C4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AA9C8 */ return;
|
|
}
|
|
|
|
// fn_022AA988 @ 0x22aa988
|
|
void Gambit_fn_022AA988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AA988: ; // 0x22aa988
|
|
/* 022AA988 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AA988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AA988 */ cpu->r[1] = _t0;
|
|
/* 022AA98C */ cpu->r[0] = cpu->r[0] + 0xFFFFAF24u;
|
|
/* 022AA990 */ _t1 = cpu->r[3] + 0x000039E4u;
|
|
/* 022AA990 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 022AA990 */ cpu->r[3] = _t1;
|
|
/* 022AA994 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AA998 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 022AA998 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 022AA99C */ cpu->r[12] = cpu->r[12] + 0x00001E20u;
|
|
/* 022AA9A0 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 022AA9A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AA9A4 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 022AA9A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022AA9A8 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AA9A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022AA9AC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022AA9B0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AA9B4 */ cpu->r[3] = cpu->r[3] + 0x000056A4u;
|
|
/* 022AA9B8 */ Gambit_fn_02C83090(cpu);
|
|
/* 022AA9BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AA9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AA9C0 */ cpu->lr = cpu->r[0];
|
|
/* 022AA9C4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AA9C8 */ return;
|
|
}
|
|
|
|
// fn_022AA9CC @ 0x22aa9cc
|
|
void Gambit_fn_022AA9CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AA9CC: ; // 0x22aa9cc
|
|
/* 022AA9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AA9D0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA9D0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AA9D0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AA9D0 */ goto L_022AA9D4;
|
|
L_022AA9D4: ; // 0x22aa9d4
|
|
/* 022AA9D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AA9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AA9D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AA9D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AA9D8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AA9D8 */ goto L_022AA9DC;
|
|
L_022AA9DC: ; // 0x22aa9dc
|
|
/* 022AA9DC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AA9E0 @ 0x22aa9e0
|
|
void Gambit_fn_022AA9E0(CPUState* cpu) {
|
|
L_022AA9E0: ; // 0x22aa9e0
|
|
/* 022AA9E0 */ return;
|
|
}
|
|
|
|
// fn_022AA9E4 @ 0x22aa9e4
|
|
void Gambit_fn_022AA9E4(CPUState* cpu) {
|
|
L_022AA9E4: ; // 0x22aa9e4
|
|
/* 022AA9E4 */ return;
|
|
}
|
|
|
|
// fn_022AA9E8 @ 0x22aa9e8
|
|
void Gambit_fn_022AA9E8(CPUState* cpu) {
|
|
L_022AA9E8: ; // 0x22aa9e8
|
|
/* 022AA9E8 */ return;
|
|
}
|
|
|
|
// fn_022AA9EC @ 0x22aa9ec
|
|
void Gambit_fn_022AA9EC(CPUState* cpu) {
|
|
L_022AA9EC: ; // 0x22aa9ec
|
|
/* 022AA9EC */ return;
|
|
}
|
|
|
|
// fn_022AA9F0 @ 0x22aa9f0
|
|
void Gambit_fn_022AA9F0(CPUState* cpu) {
|
|
L_022AA9F0: ; // 0x22aa9f0
|
|
/* 022AA9F0 */ return;
|
|
}
|
|
|
|
// fn_022AA9F4 @ 0x22aa9f4
|
|
void Gambit_fn_022AA9F4(CPUState* cpu) {
|
|
L_022AA9F4: ; // 0x22aa9f4
|
|
/* 022AA9F4 */ return;
|
|
}
|
|
|
|
// fn_022AA9F8 @ 0x22aa9f8
|
|
void Gambit_fn_022AA9F8(CPUState* cpu) {
|
|
L_022AA9F8: ; // 0x22aa9f8
|
|
/* 022AA9F8 */ return;
|
|
}
|
|
|
|
// fn_022AA9FC @ 0x22aa9fc
|
|
void Gambit_fn_022AA9FC(CPUState* cpu) {
|
|
L_022AA9FC: ; // 0x22aa9fc
|
|
/* 022AA9FC */ return;
|
|
}
|
|
|
|
// fn_022AAA00 @ 0x22aaa00
|
|
void Gambit_fn_022AAA00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AAA00: ; // 0x22aaa00
|
|
/* 022AAA00 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022AAA00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AAA08 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAA08 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAA08 */ if (_t2) goto L_022AAA14; else goto L_022AAA0C;
|
|
L_022AAA0C: ; // 0x22aaa0c
|
|
/* 022AAA0C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022AAA10 */ return;
|
|
L_022AAA14: ; // 0x22aaa14
|
|
/* 022AAA14 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAA18 */ return;
|
|
}
|
|
|
|
// fn_022AAA1C @ 0x22aaa1c
|
|
void Gambit_fn_022AAA1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AAA1C: ; // 0x22aaa1c
|
|
/* 022AAA1C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022AAA1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AAA24 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAA24 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAA24 */ if (_t2) goto L_022AAA30; else goto L_022AAA28;
|
|
L_022AAA28: ; // 0x22aaa28
|
|
/* 022AAA28 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022AAA2C */ return;
|
|
L_022AAA30: ; // 0x22aaa30
|
|
/* 022AAA30 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAA34 */ return;
|
|
}
|
|
|
|
// fn_022AAA38 @ 0x22aaa38
|
|
void Gambit_fn_022AAA38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AAA38: ; // 0x22aaa38
|
|
/* 022AAA38 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AAA38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA3C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AAA3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AAA40 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAA40 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAA40 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AAA40 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AAA40 */ goto L_022AAA44;
|
|
L_022AAA44: ; // 0x22aaa44
|
|
/* 022AAA44 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAA44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAA48 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022AAA48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAA4C */ cpu->ctr = cpu->r[0];
|
|
/* 022AAA50 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAA54 @ 0x22aaa54
|
|
void Gambit_fn_022AAA54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AAA54: ; // 0x22aaa54
|
|
/* 022AAA54 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AAA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA58 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AAA58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AAA5C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAA5C */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAA5C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AAA5C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AAA5C */ goto L_022AAA60;
|
|
L_022AAA60: ; // 0x22aaa60
|
|
/* 022AAA60 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAA60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAA64 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022AAA64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAA68 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAA6C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAA70 @ 0x22aaa70
|
|
void Gambit_fn_022AAA70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AAA70: ; // 0x22aaa70
|
|
/* 022AAA70 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AAA70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA74 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AAA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AAA78 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAA78 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAA78 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AAA78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AAA78 */ goto L_022AAA7C;
|
|
L_022AAA7C: ; // 0x22aaa7c
|
|
/* 022AAA7C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAA7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAA80 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022AAA80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAA84 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAA88 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAA8C @ 0x22aaa8c
|
|
void Gambit_fn_022AAA8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AAA8C: ; // 0x22aaa8c
|
|
/* 022AAA8C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAA8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAA90 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AAA90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAA94 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAA98 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAA9C @ 0x22aaa9c
|
|
void Gambit_fn_022AAA9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AAA9C: ; // 0x22aaa9c
|
|
/* 022AAA9C */ cpu->r[0] = cpu->lr;
|
|
/* 022AAAA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAAA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAAA0 */ cpu->r[1] = _t0;
|
|
/* 022AAAA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAAA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAAA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAAB0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AAAB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAAB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022AAAB8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAAB8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AAAB8 */ if (_t5) goto L_022AAABC; else goto L_022AAAD8;
|
|
L_022AAABC: ; // 0x22aaabc
|
|
/* 022AAABC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022AAABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAAC0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022AAAC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAAC4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAAC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AAACC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAAD0 */ cpu->r[0] = 0x00000002u;
|
|
/* 022AAAD4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AAAD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AAAD8: ; // 0x22aaad8
|
|
/* 022AAAD8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AAADC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AAAE0 */ cpu->lr = cpu->r[0];
|
|
/* 022AAAE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAAE8 */ return;
|
|
}
|
|
|
|
// fn_022AAAA0 @ 0x22aaaa0
|
|
void Gambit_fn_022AAAA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AAAA0: ; // 0x22aaaa0
|
|
/* 022AAAA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAAA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAAA0 */ cpu->r[1] = _t0;
|
|
/* 022AAAA4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAAA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAAA8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAAB0 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AAAB0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAAB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022AAAB8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAAB8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AAAB8 */ if (_t5) goto L_022AAABC; else goto L_022AAAD8;
|
|
L_022AAABC: ; // 0x22aaabc
|
|
/* 022AAABC */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022AAABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAAC0 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022AAAC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAAC4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAAC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AAACC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAAD0 */ cpu->r[0] = 0x00000002u;
|
|
/* 022AAAD4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AAAD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AAAD8: ; // 0x22aaad8
|
|
/* 022AAAD8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAAD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AAADC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAADC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AAAE0 */ cpu->lr = cpu->r[0];
|
|
/* 022AAAE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAAE8 */ return;
|
|
}
|
|
|
|
// fn_022AAAF4 @ 0x22aaaf4
|
|
void Gambit_fn_022AAAF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AAAF4: ; // 0x22aaaf4
|
|
/* 022AAAF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AAAF8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAAF8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AAAF8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AAAF8 */ goto L_022AAAFC;
|
|
L_022AAAFC: ; // 0x22aaafc
|
|
/* 022AAAFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AAAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AAB00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAB00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AAB00 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AAB00 */ goto L_022AAB04;
|
|
L_022AAB04: ; // 0x22aab04
|
|
/* 022AAB04 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AAB08 @ 0x22aab08
|
|
void Gambit_fn_022AAB08(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AAB08: ; // 0x22aab08
|
|
/* 022AAB08 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAB08 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAB0C */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022AAB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAB10 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAB14 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAB18 @ 0x22aab18
|
|
void Gambit_fn_022AAB18(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AAB18: ; // 0x22aab18
|
|
/* 022AAB18 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAB18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAB1C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022AAB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAB20 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAB24 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAB28 @ 0x22aab28
|
|
void Gambit_fn_022AAB28(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AAB28: ; // 0x22aab28
|
|
/* 022AAB28 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAB28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAB2C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022AAB2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAB30 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAB34 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAB38 @ 0x22aab38
|
|
void Gambit_fn_022AAB38(CPUState* cpu) {
|
|
L_022AAB38: ; // 0x22aab38
|
|
/* 022AAB38 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAB3C */ return;
|
|
}
|
|
|
|
// fn_022AAB40 @ 0x22aab40
|
|
void Gambit_fn_022AAB40(CPUState* cpu) {
|
|
L_022AAB40: ; // 0x22aab40
|
|
/* 022AAB40 */ return;
|
|
}
|
|
|
|
// fn_022AAB44 @ 0x22aab44
|
|
void Gambit_fn_022AAB44(CPUState* cpu) {
|
|
L_022AAB44: ; // 0x22aab44
|
|
/* 022AAB44 */ return;
|
|
}
|
|
|
|
// fn_022AAB48 @ 0x22aab48
|
|
void Gambit_fn_022AAB48(CPUState* cpu) {
|
|
L_022AAB48: ; // 0x22aab48
|
|
/* 022AAB48 */ return;
|
|
}
|
|
|
|
// fn_022AAB4C @ 0x22aab4c
|
|
void Gambit_fn_022AAB4C(CPUState* cpu) {
|
|
L_022AAB4C: ; // 0x22aab4c
|
|
/* 022AAB4C */ return;
|
|
}
|
|
|
|
// fn_022AAB50 @ 0x22aab50
|
|
void Gambit_fn_022AAB50(CPUState* cpu) {
|
|
L_022AAB50: ; // 0x22aab50
|
|
/* 022AAB50 */ return;
|
|
}
|
|
|
|
// fn_022AAB54 @ 0x22aab54
|
|
void Gambit_fn_022AAB54(CPUState* cpu) {
|
|
L_022AAB54: ; // 0x22aab54
|
|
/* 022AAB54 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAB58 */ return;
|
|
}
|
|
|
|
// fn_022AAB5C @ 0x22aab5c
|
|
void Gambit_fn_022AAB5C(CPUState* cpu) {
|
|
L_022AAB5C: ; // 0x22aab5c
|
|
/* 022AAB5C */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAB60 */ return;
|
|
}
|
|
|
|
// fn_022AAB64 @ 0x22aab64
|
|
void Gambit_fn_022AAB64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022AAB64: ; // 0x22aab64
|
|
/* 022AAB64 */ cpu->r[0] = cpu->lr;
|
|
/* 022AAB68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AAB68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAB68 */ cpu->r[1] = _t0;
|
|
/* 022AAB6C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAB6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAB70 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AAB70 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAB74 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022AAB74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAB78 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022AAB78 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAB7C */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAB80 */ cpu->ctr = cpu->r[9];
|
|
/* 022AAB84 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022AAB88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAB8C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAB90 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022AAB90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAB94 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022AAB94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAB98 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022AAB98 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022AAB9C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022AAB9C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022AABA0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AABA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022AABA4 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AABA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AABA8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AABA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AABAC */ cpu->lr = cpu->r[0];
|
|
/* 022AABB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AABB4 */ return;
|
|
}
|
|
|
|
// fn_022AAB68 @ 0x22aab68
|
|
void Gambit_fn_022AAB68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022AAB68: ; // 0x22aab68
|
|
/* 022AAB68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AAB68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAB68 */ cpu->r[1] = _t0;
|
|
/* 022AAB6C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAB6C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAB70 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AAB70 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAB74 */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022AAB74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAB78 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022AAB78 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAB7C */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAB80 */ cpu->ctr = cpu->r[9];
|
|
/* 022AAB84 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022AAB88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAB8C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAB90 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022AAB90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAB94 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022AAB94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAB98 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022AAB98 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022AAB9C */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022AAB9C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022AABA0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AABA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022AABA4 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AABA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AABA8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AABA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AABAC */ cpu->lr = cpu->r[0];
|
|
/* 022AABB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AABB4 */ return;
|
|
}
|
|
|
|
// fn_022AABB8 @ 0x22aabb8
|
|
void Gambit_fn_022AABB8(CPUState* cpu) {
|
|
L_022AABB8: ; // 0x22aabb8
|
|
/* 022AABB8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AABBC */ return;
|
|
}
|
|
|
|
// fn_022AABC0 @ 0x22aabc0
|
|
void Gambit_fn_022AABC0(CPUState* cpu) {
|
|
L_022AABC0: ; // 0x22aabc0
|
|
/* 022AABC0 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AABC4 */ return;
|
|
}
|
|
|
|
// fn_022AABC8 @ 0x22aabc8
|
|
void Gambit_fn_022AABC8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AABC8: ; // 0x22aabc8
|
|
/* 022AABC8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AABCC */ _t0 = cpu->r[12] + 0x00001E40u;
|
|
/* 022AABCC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AABD0 */ return;
|
|
}
|
|
|
|
// fn_022AABD4 @ 0x22aabd4
|
|
void Gambit_fn_022AABD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AABD4: ; // 0x22aabd4
|
|
/* 022AABD4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AABD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AABD8 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022AABD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AABDC */ cpu->ctr = cpu->r[0];
|
|
/* 022AABE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AABE4 @ 0x22aabe4
|
|
void Gambit_fn_022AABE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AABE4: ; // 0x22aabe4
|
|
/* 022AABE4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AABE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AABE8 */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022AABE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AABEC */ cpu->ctr = cpu->r[0];
|
|
/* 022AABF0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AABF4 @ 0x22aabf4
|
|
void Gambit_fn_022AABF4(CPUState* cpu) {
|
|
L_022AABF4: ; // 0x22aabf4
|
|
/* 022AABF4 */ return;
|
|
}
|
|
|
|
// fn_022AABF8 @ 0x22aabf8
|
|
void Gambit_fn_022AABF8(CPUState* cpu) {
|
|
L_022AABF8: ; // 0x22aabf8
|
|
/* 022AABF8 */ return;
|
|
}
|
|
|
|
// fn_022AABFC @ 0x22aabfc
|
|
void Gambit_fn_022AABFC(CPUState* cpu) {
|
|
L_022AABFC: ; // 0x22aabfc
|
|
/* 022AABFC */ return;
|
|
}
|
|
|
|
// fn_022AAC00 @ 0x22aac00
|
|
void Gambit_fn_022AAC00(CPUState* cpu) {
|
|
L_022AAC00: ; // 0x22aac00
|
|
/* 022AAC00 */ return;
|
|
}
|
|
|
|
// fn_022AAC04 @ 0x22aac04
|
|
void Gambit_fn_022AAC04(CPUState* cpu) {
|
|
L_022AAC04: ; // 0x22aac04
|
|
/* 022AAC04 */ return;
|
|
}
|
|
|
|
// fn_022AAC08 @ 0x22aac08
|
|
void Gambit_fn_022AAC08(CPUState* cpu) {
|
|
L_022AAC08: ; // 0x22aac08
|
|
/* 022AAC08 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAC0C */ return;
|
|
}
|
|
|
|
// fn_022AAC10 @ 0x22aac10
|
|
void Gambit_fn_022AAC10(CPUState* cpu) {
|
|
L_022AAC10: ; // 0x22aac10
|
|
/* 022AAC10 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAC14 */ return;
|
|
}
|
|
|
|
// fn_022AAC18 @ 0x22aac18
|
|
void Gambit_fn_022AAC18(CPUState* cpu) {
|
|
L_022AAC18: ; // 0x22aac18
|
|
/* 022AAC18 */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022AAC1C */ return;
|
|
}
|
|
|
|
// fn_022AAC20 @ 0x22aac20
|
|
void Gambit_fn_022AAC20(CPUState* cpu) {
|
|
L_022AAC20: ; // 0x22aac20
|
|
/* 022AAC20 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC24 */ return;
|
|
}
|
|
|
|
// fn_022AAC28 @ 0x22aac28
|
|
void Gambit_fn_022AAC28(CPUState* cpu) {
|
|
L_022AAC28: ; // 0x22aac28
|
|
/* 022AAC28 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC2C */ return;
|
|
}
|
|
|
|
// fn_022AAC30 @ 0x22aac30
|
|
void Gambit_fn_022AAC30(CPUState* cpu) {
|
|
L_022AAC30: ; // 0x22aac30
|
|
/* 022AAC30 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC34 */ return;
|
|
}
|
|
|
|
// fn_022AAC38 @ 0x22aac38
|
|
void Gambit_fn_022AAC38(CPUState* cpu) {
|
|
L_022AAC38: ; // 0x22aac38
|
|
/* 022AAC38 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC3C */ return;
|
|
}
|
|
|
|
// fn_022AAC40 @ 0x22aac40
|
|
void Gambit_fn_022AAC40(CPUState* cpu) {
|
|
L_022AAC40: ; // 0x22aac40
|
|
/* 022AAC40 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC44 */ return;
|
|
}
|
|
|
|
// fn_022AAC48 @ 0x22aac48
|
|
void Gambit_fn_022AAC48(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AAC48: ; // 0x22aac48
|
|
/* 022AAC48 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AAC4C */ _t0 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AAC4C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AAC50 */ return;
|
|
}
|
|
|
|
// fn_022AAC54 @ 0x22aac54
|
|
void Gambit_fn_022AAC54(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AAC54: ; // 0x22aac54
|
|
/* 022AAC54 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AAC58 */ _t0 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AAC58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AAC5C */ return;
|
|
}
|
|
|
|
// fn_022AAC60 @ 0x22aac60
|
|
void Gambit_fn_022AAC60(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AAC60: ; // 0x22aac60
|
|
/* 022AAC60 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AAC64 */ _t0 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AAC64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AAC68 */ return;
|
|
}
|
|
|
|
// fn_022AAC6C @ 0x22aac6c
|
|
void Gambit_fn_022AAC6C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AAC6C: ; // 0x22aac6c
|
|
/* 022AAC6C */ cpu->r[12] = 0x10060000u;
|
|
/* 022AAC70 */ _t0 = cpu->r[12] + 0x00001E44u;
|
|
/* 022AAC70 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AAC74 */ return;
|
|
}
|
|
|
|
// fn_022AAC78 @ 0x22aac78
|
|
void Gambit_fn_022AAC78(CPUState* cpu) {
|
|
L_022AAC78: ; // 0x22aac78
|
|
/* 022AAC78 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAC7C */ return;
|
|
}
|
|
|
|
// fn_022AAC80 @ 0x22aac80
|
|
void Gambit_fn_022AAC80(CPUState* cpu) {
|
|
L_022AAC80: ; // 0x22aac80
|
|
/* 022AAC80 */ return;
|
|
}
|
|
|
|
// fn_022AAC84 @ 0x22aac84
|
|
void Gambit_fn_022AAC84(CPUState* cpu) {
|
|
L_022AAC84: ; // 0x22aac84
|
|
/* 022AAC84 */ return;
|
|
}
|
|
|
|
// fn_022AAC88 @ 0x22aac88
|
|
void Gambit_fn_022AAC88(CPUState* cpu) {
|
|
L_022AAC88: ; // 0x22aac88
|
|
/* 022AAC88 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAC8C */ return;
|
|
}
|
|
|
|
// fn_022AAC90 @ 0x22aac90
|
|
void Gambit_fn_022AAC90(CPUState* cpu) {
|
|
L_022AAC90: ; // 0x22aac90
|
|
/* 022AAC90 */ return;
|
|
}
|
|
|
|
// fn_022AAC94 @ 0x22aac94
|
|
void Gambit_fn_022AAC94(CPUState* cpu) {
|
|
L_022AAC94: ; // 0x22aac94
|
|
/* 022AAC94 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAC98 */ return;
|
|
}
|
|
|
|
// fn_022AAC9C @ 0x22aac9c
|
|
void Gambit_fn_022AAC9C(CPUState* cpu) {
|
|
L_022AAC9C: ; // 0x22aac9c
|
|
/* 022AAC9C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AACA0 */ return;
|
|
}
|
|
|
|
// fn_022AACA4 @ 0x22aaca4
|
|
void Gambit_fn_022AACA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AACA4: ; // 0x22aaca4
|
|
/* 022AACA4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AACA8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AACA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AACAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AACB0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AACB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AACB0 */ cpu->r[1] = _t1;
|
|
/* 022AACB4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AACB4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AACB4 */ if (_t3) goto L_022AACB8; else goto L_022AACCC;
|
|
L_022AACB8: ; // 0x22aacb8
|
|
/* 022AACB8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AACB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AACBC */ cpu->lr = cpu->r[0];
|
|
/* 022AACC0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AACC4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AACC8 */ return;
|
|
L_022AACCC: ; // 0x22aaccc
|
|
/* 022AACCC */ Gambit_fn_022713B8(cpu);
|
|
/* 022AACD0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AACD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AACD4 */ cpu->lr = cpu->r[0];
|
|
/* 022AACD8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AACDC */ cpu->r[3] = 0x00000001u;
|
|
/* 022AACE0 */ return;
|
|
}
|
|
|
|
// fn_022AACB0 @ 0x22aacb0
|
|
void Gambit_fn_022AACB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AACB0: ; // 0x22aacb0
|
|
/* 022AACB0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AACB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AACB0 */ cpu->r[1] = _t0;
|
|
/* 022AACB4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AACB4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AACB4 */ if (_t2) goto L_022AACB8; else goto L_022AACCC;
|
|
L_022AACB8: ; // 0x22aacb8
|
|
/* 022AACB8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AACB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AACBC */ cpu->lr = cpu->r[0];
|
|
/* 022AACC0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AACC4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AACC8 */ return;
|
|
L_022AACCC: ; // 0x22aaccc
|
|
/* 022AACCC */ Gambit_fn_022713B8(cpu);
|
|
/* 022AACD0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AACD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AACD4 */ cpu->lr = cpu->r[0];
|
|
/* 022AACD8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AACDC */ cpu->r[3] = 0x00000001u;
|
|
/* 022AACE0 */ return;
|
|
}
|
|
|
|
// fn_022AACE4 @ 0x22aace4
|
|
void Gambit_fn_022AACE4(CPUState* cpu) {
|
|
L_022AACE4: ; // 0x22aace4
|
|
/* 022AACE4 */ return;
|
|
}
|
|
|
|
// fn_022AACE8 @ 0x22aace8
|
|
void Gambit_fn_022AACE8(CPUState* cpu) {
|
|
L_022AACE8: ; // 0x22aace8
|
|
/* 022AACE8 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022AACEC */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022AACF0 */ return;
|
|
}
|
|
|
|
// fn_022AACF4 @ 0x22aacf4
|
|
void Gambit_fn_022AACF4(CPUState* cpu) {
|
|
L_022AACF4: ; // 0x22aacf4
|
|
/* 022AACF4 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022AACF8 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022AACFC */ return;
|
|
}
|
|
|
|
// fn_022AAD00 @ 0x22aad00
|
|
void Gambit_fn_022AAD00(CPUState* cpu) {
|
|
L_022AAD00: ; // 0x22aad00
|
|
/* 022AAD00 */ return;
|
|
}
|
|
|
|
// fn_022AAD04 @ 0x22aad04
|
|
void Gambit_fn_022AAD04(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AAD04: ; // 0x22aad04
|
|
/* 022AAD04 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AAD04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAD08 */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022AAD08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAD0C */ cpu->ctr = cpu->r[0];
|
|
/* 022AAD10 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AAD14 @ 0x22aad14
|
|
void Gambit_fn_022AAD14(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AAD14: ; // 0x22aad14
|
|
/* 022AAD14 */ _t0 = cpu->r[3] + 0x00000189u;
|
|
/* 022AAD14 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AAD18 */ return;
|
|
}
|
|
|
|
// fn_022AAD1C @ 0x22aad1c
|
|
void Gambit_fn_022AAD1C(CPUState* cpu) {
|
|
L_022AAD1C: ; // 0x22aad1c
|
|
/* 022AAD1C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AAD20 */ return;
|
|
}
|
|
|
|
// fn_022AAD24 @ 0x22aad24
|
|
void Gambit_fn_022AAD24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AAD24: ; // 0x22aad24
|
|
/* 022AAD24 */ cpu->r[0] = cpu->lr;
|
|
/* 022AAD28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAD28 */ cpu->r[1] = _t0;
|
|
/* 022AAD2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAD30 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAD34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAD34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAD38 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 022AAD38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAD3C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 022AAD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAD40 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAD44 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022AAD48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAD4C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAD50 */ _t6 = cpu->r[31] + 0x00000198u;
|
|
/* 022AAD50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAD54 */ cpu->lr = cpu->r[0];
|
|
/* 022AAD58 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAD58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAD5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAD60 */ return;
|
|
}
|
|
|
|
// fn_022AAD28 @ 0x22aad28
|
|
void Gambit_fn_022AAD28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AAD28: ; // 0x22aad28
|
|
/* 022AAD28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAD28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAD28 */ cpu->r[1] = _t0;
|
|
/* 022AAD2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAD2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AAD30 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AAD34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAD34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAD38 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 022AAD38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AAD3C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 022AAD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAD40 */ cpu->ctr = cpu->r[0];
|
|
/* 022AAD44 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022AAD48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAD4C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAD4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAD50 */ _t6 = cpu->r[31] + 0x00000198u;
|
|
/* 022AAD50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AAD54 */ cpu->lr = cpu->r[0];
|
|
/* 022AAD58 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAD58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AAD5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAD60 */ return;
|
|
}
|
|
|
|
// fn_022AAD64 @ 0x22aad64
|
|
void Gambit_fn_022AAD64(CPUState* cpu) {
|
|
L_022AAD64: ; // 0x22aad64
|
|
/* 022AAD64 */ cpu->r[3] = 0x10060000u;
|
|
/* 022AAD68 */ cpu->r[3] = cpu->r[3] + 0x00001E30u;
|
|
/* 022AAD6C */ return;
|
|
}
|
|
|
|
// fn_022AAD70 @ 0x22aad70
|
|
void Gambit_fn_022AAD70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32;
|
|
|
|
L_022AAD70: ; // 0x22aad70
|
|
/* 022AAD70 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AAD74 */ _t0 = cpu->r[10] + 0x00000174u;
|
|
/* 022AAD74 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AAD78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AAD7C */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AAD80 */ cpu->r[10] = cpu->r[10] + 0x00000170u;
|
|
/* 022AAD84 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAD84 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AAD84 */ if (_t2) goto L_022AAD88; else goto L_022AADA0;
|
|
L_022AAD88: ; // 0x22aad88
|
|
/* 022AAD88 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AAD8C */ cpu->r[9] = 0x00000001u;
|
|
/* 022AAD90 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AAD94 */ cpu->r[0] = cpu->r[0] + 0x00001E00u;
|
|
/* 022AAD98 */ _t3 = cpu->r[11] + 0x00000174u;
|
|
/* 022AAD98 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 022AAD9C */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 022AAD9C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_022AADA0: ; // 0x22aada0
|
|
/* 022AADA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022AADA4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AADA4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AADA4 */ if (_t6) goto L_022AADA8; else goto L_022AADB0;
|
|
L_022AADA8: ; // 0x22aada8
|
|
/* 022AADA8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AADAC */ return;
|
|
L_022AADB0: ; // 0x22aadb0
|
|
/* 022AADB0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AADB4 */ _t7 = cpu->r[9] + 0x00000018u;
|
|
/* 022AADB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AADB8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AADBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AADC0 */ cpu->r[11] = cpu->r[11] + 0x00000014u;
|
|
/* 022AADC4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AADC4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AADC4 */ if (_t9) goto L_022AADC8; else goto L_022AADE0;
|
|
L_022AADC8: ; // 0x22aadc8
|
|
/* 022AADC8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AADCC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AADD0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AADD4 */ cpu->r[9] = cpu->r[9] + 0x00001DF0u;
|
|
/* 022AADD8 */ _t10 = cpu->r[10] + 0x00000018u;
|
|
/* 022AADD8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022AADDC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 022AADDC */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_022AADE0: ; // 0x22aade0
|
|
/* 022AADE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022AADE4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AADE4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AADE4 */ if (_t13) goto L_022AADE8; else goto L_022AADF0;
|
|
L_022AADE8: ; // 0x22aade8
|
|
/* 022AADE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AADEC */ goto L_022AAEA8;
|
|
L_022AADF0: ; // 0x22aadf0
|
|
/* 022AADF0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AADF4 */ _t14 = cpu->r[11] + 0xFFFFDAC0u;
|
|
/* 022AADF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AADF8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AADFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AAE00 */ cpu->r[9] = cpu->r[9] + 0xFFFFFBC4u;
|
|
/* 022AAE04 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAE04 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AAE04 */ if (_t16) goto L_022AAE08; else goto L_022AAE20;
|
|
L_022AAE08: ; // 0x22aae08
|
|
/* 022AAE08 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AAE0C */ cpu->r[10] = 0x00000001u;
|
|
/* 022AAE10 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AAE14 */ cpu->r[11] = cpu->r[11] + 0x00001DE0u;
|
|
/* 022AAE18 */ _t17 = cpu->r[12] + 0xFFFFDAC0u;
|
|
/* 022AAE18 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022AAE1C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 022AAE1C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_022AAE20: ; // 0x22aae20
|
|
/* 022AAE20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 022AAE24 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAE24 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AAE24 */ if (_t20) goto L_022AAE28; else goto L_022AAE30;
|
|
L_022AAE28: ; // 0x22aae28
|
|
/* 022AAE28 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AAE2C */ goto L_022AAEA4;
|
|
L_022AAE30: ; // 0x22aae30
|
|
/* 022AAE30 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AAE34 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 022AAE34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AAE34 */ cpu->r[9] = _t21;
|
|
/* 022AAE38 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AAE3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AAE40 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 022AAE44 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAE44 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AAE44 */ if (_t23) goto L_022AAE48; else goto L_022AAE5C;
|
|
L_022AAE48: ; // 0x22aae48
|
|
/* 022AAE48 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AAE4C */ cpu->r[11] = 0x00000001u;
|
|
/* 022AAE50 */ cpu->r[0] = cpu->r[0] + 0x00001DD0u;
|
|
/* 022AAE54 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022AAE54 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022AAE58 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 022AAE58 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022AAE5C: ; // 0x22aae5c
|
|
/* 022AAE5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022AAE60 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAE60 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AAE60 */ if (_t27) goto L_022AAE64; else goto L_022AAE6C;
|
|
L_022AAE64: ; // 0x22aae64
|
|
/* 022AAE64 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AAE68 */ goto L_022AAEA4;
|
|
L_022AAE6C: ; // 0x22aae6c
|
|
/* 022AAE6C */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AAE70 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 022AAE70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AAE70 */ cpu->r[10] = _t28;
|
|
/* 022AAE74 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AAE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AAE7C */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 022AAE80 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAE80 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022AAE80 */ if (_t30) goto L_022AAE84; else goto L_022AAE98;
|
|
L_022AAE84: ; // 0x22aae84
|
|
/* 022AAE84 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AAE88 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AAE8C */ cpu->r[9] = cpu->r[9] + 0x00001DA8u;
|
|
/* 022AAE90 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 022AAE90 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 022AAE94 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 022AAE94 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_022AAE98: ; // 0x22aae98
|
|
/* 022AAE98 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 022AAE9C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 022AAEA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022AAEA4: ; // 0x22aaea4
|
|
/* 022AAEA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_022AAEA8: ; // 0x22aaea8
|
|
/* 022AAEA8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022AAEAC */ return;
|
|
}
|
|
|
|
// fn_022AAEB0 @ 0x22aaeb0
|
|
void Gambit_fn_022AAEB0(CPUState* cpu) {
|
|
L_022AAEB0: ; // 0x22aaeb0
|
|
/* 022AAEB0 */ return;
|
|
}
|
|
|
|
// fn_022AAEB4 @ 0x22aaeb4
|
|
void Gambit_fn_022AAEB4(CPUState* cpu) {
|
|
L_022AAEB4: ; // 0x22aaeb4
|
|
/* 022AAEB4 */ cpu->r[3] = 0x10060000u;
|
|
/* 022AAEB8 */ cpu->r[3] = cpu->r[3] + 0x00001E10u;
|
|
/* 022AAEBC */ return;
|
|
}
|
|
|
|
// fn_022AAEC0 @ 0x22aaec0
|
|
void Gambit_fn_022AAEC0(CPUState* cpu) {
|
|
L_022AAEC0: ; // 0x22aaec0
|
|
/* 022AAEC0 */ return;
|
|
}
|
|
|
|
// fn_022AAEC4 @ 0x22aaec4
|
|
void Gambit_fn_022AAEC4(CPUState* cpu) {
|
|
L_022AAEC4: ; // 0x22aaec4
|
|
/* 022AAEC4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AAEC8 */ return;
|
|
}
|
|
|
|
// fn_022AAECC @ 0x22aaecc
|
|
void Gambit_fn_022AAECC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AAECC: ; // 0x22aaecc
|
|
/* 022AAECC */ cpu->r[0] = cpu->lr;
|
|
/* 022AAED0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AAED4 */ cpu->r[7] = 0x022B0000u;
|
|
/* 022AAED8 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022AAEDC */ cpu->r[10] = 0x101C0000u;
|
|
/* 022AAEE0 */ cpu->r[7] = cpu->r[7] + 0xFFFFAAECu;
|
|
/* 022AAEE4 */ cpu->r[6] = cpu->r[6] + 0xFFFFAAECu;
|
|
/* 022AAEE8 */ cpu->r[10] = cpu->r[10] + 0x000056B4u;
|
|
/* 022AAEEC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AAEEC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AAEF0 */ cpu->r[0] = 0x101C0000u;
|
|
/* 022AAEF4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAEF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AAEF4 */ cpu->r[1] = _t1;
|
|
/* 022AAEF8 */ cpu->r[0] = cpu->r[0] + 0x000056B0u;
|
|
/* 022AAEFC */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022AAEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AAF00 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AAF04 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022AAF04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AAF08 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAF0C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAF0C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022AAF10 */ Gambit_fn_02791B10(cpu);
|
|
/* 022AAF14 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAF18 */ cpu->lr = cpu->r[0];
|
|
/* 022AAF1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAF20 */ return;
|
|
}
|
|
|
|
// fn_022AAEF4 @ 0x22aaef4
|
|
void Gambit_fn_022AAEF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AAEF4: ; // 0x22aaef4
|
|
/* 022AAEF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AAEF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAEF4 */ cpu->r[1] = _t0;
|
|
/* 022AAEF8 */ cpu->r[0] = cpu->r[0] + 0x000056B0u;
|
|
/* 022AAEFC */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022AAEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AAF00 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AAF04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AAF04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AAF08 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAF0C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AAF0C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 022AAF10 */ Gambit_fn_02791B10(cpu);
|
|
/* 022AAF14 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AAF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAF18 */ cpu->lr = cpu->r[0];
|
|
/* 022AAF1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AAF20 */ return;
|
|
}
|
|
|
|
// fn_022AAF24 @ 0x22aaf24
|
|
void Gambit_fn_022AAF24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_022AAF24: ; // 0x22aaf24
|
|
/* 022AAF24 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022AAF24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AAF24 */ cpu->r[1] = _t0;
|
|
/* 022AAF28 */ cpu->r[0] = cpu->lr;
|
|
/* 022AAF2C */ /* nop */
|
|
/* 022AAF30 */ cpu->r[30] = cpu->r[5];
|
|
/* 022AAF34 */ cpu->r[26] = cpu->r[3];
|
|
/* 022AAF38 */ cpu->r[27] = cpu->r[7];
|
|
/* 022AAF3C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AAF40 */ cpu->r[31] = cpu->r[6];
|
|
/* 022AAF44 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AAF44 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AAF48 */ cpu->r[29] = cpu->r[4];
|
|
/* 022AAF4C */ cpu->r[4] = cpu->r[27];
|
|
/* 022AAF50 */ Gambit_fn_027DB318(cpu);
|
|
/* 022AAF54 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022AAF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AAF58 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAF58 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AAF58 */ if (_t3) goto L_022AAFEC; else goto L_022AAF5C;
|
|
L_022AAF5C: ; // 0x22aaf5c
|
|
/* 022AAF5C */ cpu->r[5] = cpu->r[28];
|
|
/* 022AAF60 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AAF64 */ cpu->r[3] = cpu->r[26];
|
|
/* 022AAF68 */ Gambit_fn_022AAECC(cpu);
|
|
/* 022AAF6C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AAF6C */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AAF70 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022AAF70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AAF74 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 022AAF78 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022AAF7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022AAF80 */ cpu->r[25] = 0x00000000u;
|
|
/* 022AAF84 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAF84 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AAF84 */ if (_t7) goto L_022AAFEC; else goto L_022AAF88;
|
|
L_022AAF88: ; // 0x22aaf88
|
|
/* 022AAF88 */ cpu->r[24] = 0x101C0000u;
|
|
L_022AAF8C: ; // 0x22aaf8c
|
|
/* 022AAF8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AAF90 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAF90 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AAF90 */ if (_t9) goto L_022AAFA8; else goto L_022AAF94;
|
|
L_022AAF94: ; // 0x22aaf94
|
|
/* 022AAF94 */ cpu->ctr = cpu->r[27];
|
|
/* 022AAF98 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AAF9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AAFA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AAFA4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAFA4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AAFA4 */ if (_t11) goto L_022AAFD8; else goto L_022AAFA8;
|
|
L_022AAFA8: ; // 0x22aafa8
|
|
/* 022AAFA8 */ _t12 = cpu->r[24] + 0x000056B0u;
|
|
/* 022AAFA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AAFAC */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 022AAFB0 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 022AAFB0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022AAFB4 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 022AAFB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AAFB8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AAFBC */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 022AAFBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AAFC0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AAFC4 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 022AAFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AAFC8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AAFCC */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 022AAFCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AAFD0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022AAFD4 */ Gambit_fn_022AA35C(cpu);
|
|
L_022AAFD8: ; // 0x22aafd8
|
|
/* 022AAFD8 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 022AAFDC */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022AAFDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AAFE0 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022AAFE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022AAFE8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AAFE8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AAFE8 */ if (_t20) goto L_022AAFEC; else goto L_022AAF8C;
|
|
L_022AAFEC: ; // 0x22aafec
|
|
/* 022AAFEC */ cpu->r[3] = cpu->r[28];
|
|
/* 022AAFF0 */ /* nop */
|
|
/* 022AAFF4 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AAFF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AAFF8 */ cpu->lr = cpu->r[0];
|
|
/* 022AAFFC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022AB000 */ return;
|
|
}
|
|
|
|
// fn_022AB004 @ 0x22ab004
|
|
void Gambit_fn_022AB004(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419;
|
|
|
|
L_022AB004: ; // 0x22ab004
|
|
/* 022AB004 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022AB004 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AB004 */ cpu->r[1] = _t0;
|
|
/* 022AB008 */ /* nop */
|
|
/* 022AB00C */ cpu->r[0] = cpu->lr;
|
|
/* 022AB010 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022AB010 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AB014 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AB014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AB018 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB018 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AB018 */ if (_t3) goto L_022AB01C; else goto L_022AB02C;
|
|
L_022AB01C: ; // 0x22ab01c
|
|
/* 022AB01C */ cpu->r[3] = 0x00000304u;
|
|
/* 022AB020 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AB024 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AB024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AB028 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB028 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AB028 */ if (_t5) goto L_022ABC98; else goto L_022AB02C;
|
|
L_022AB02C: ; // 0x22ab02c
|
|
/* 022AB02C */ cpu->r[3] = cpu->r[29];
|
|
/* 022AB030 */ Gambit_fn_02274FA8(cpu);
|
|
/* 022AB034 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AB038 */ cpu->r[31] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB03C */ cpu->r[8] = cpu->r[8] + 0x00002A40u;
|
|
/* 022AB040 */ cpu->r[28] = 0x00000000u;
|
|
/* 022AB044 */ _t6 = cpu->r[29] + 0x00000004u;
|
|
/* 022AB044 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 022AB048 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB048 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AB048 */ if (_t8) goto L_022AB04C; else goto L_022AB05C;
|
|
L_022AB04C: ; // 0x22ab04c
|
|
/* 022AB04C */ cpu->r[3] = 0x00000038u;
|
|
/* 022AB050 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AB054 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AB054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB058 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB058 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AB058 */ if (_t10) goto L_022AB08C; else goto L_022AB05C;
|
|
L_022AB05C: ; // 0x22ab05c
|
|
/* 022AB05C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AB060 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022AB064 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AB068 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 022AB068 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 022AB06C */ cpu->r[11] = cpu->r[11] + 0x00002A10u;
|
|
/* 022AB070 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 022AB070 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 022AB074 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 022AB074 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 022AB078 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 022AB078 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 022AB07C */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 022AB07C */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 022AB080 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022AB080 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 022AB084 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AB084 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 022AB088 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 022AB088 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
L_022AB08C: ; // 0x22ab08c
|
|
/* 022AB08C */ _t19 = cpu->r[29] + 0x00000238u;
|
|
/* 022AB08C */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 022AB090 */ cpu->r[31] = cpu->r[29] + 0x00000240u;
|
|
/* 022AB090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB094 */ _t20 = cpu->r[29] + 0x0000023Cu;
|
|
/* 022AB094 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 022AB098 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB098 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AB098 */ if (_t22) goto L_022AB09C; else goto L_022AB0AC;
|
|
L_022AB09C: ; // 0x22ab09c
|
|
/* 022AB09C */ cpu->r[3] = 0x00000024u;
|
|
/* 022AB0A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AB0A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AB0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB0A8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0A8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022AB0A8 */ if (_t24) goto L_022AB0DC; else goto L_022AB0AC;
|
|
L_022AB0AC: ; // 0x22ab0ac
|
|
/* 022AB0AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB0B0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0B0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022AB0B0 */ if (_t26) goto L_022AB0B4; else goto L_022AB0BC;
|
|
L_022AB0B4: ; // 0x22ab0b4
|
|
/* 022AB0B4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB0B8 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB0BC: ; // 0x22ab0bc
|
|
/* 022AB0BC */ cpu->r[12] = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AB0BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AB0C0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0C0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022AB0C0 */ if (_t28) goto L_022AB0C4; else goto L_022AB0CC;
|
|
L_022AB0C4: ; // 0x22ab0c4
|
|
/* 022AB0C4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB0C8 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB0CC: ; // 0x22ab0cc
|
|
/* 022AB0CC */ cpu->r[0] = cpu->r[31] + 0x00000018u;
|
|
/* 022AB0CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AB0D0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0D0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022AB0D0 */ if (_t30) goto L_022AB0D4; else goto L_022AB0DC;
|
|
L_022AB0D4: ; // 0x22ab0d4
|
|
/* 022AB0D4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB0D8 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB0DC: ; // 0x22ab0dc
|
|
/* 022AB0DC */ cpu->r[4] = cpu->r[29] + 0x00000240u;
|
|
/* 022AB0E0 */ cpu->r[0] = cpu->r[4] + 0x00000024u;
|
|
/* 022AB0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AB0E4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0E4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022AB0E4 */ if (_t32) goto L_022AB0E8; else goto L_022AB0F0;
|
|
L_022AB0E8: ; // 0x22ab0e8
|
|
/* 022AB0E8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB0EC */ Gambit_fn_02801A78(cpu);
|
|
L_022AB0F0: ; // 0x22ab0f0
|
|
/* 022AB0F0 */ cpu->r[31] = cpu->r[29] + 0x00000270u;
|
|
/* 022AB0F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB0F4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB0F4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022AB0F4 */ if (_t34) goto L_022AB0F8; else goto L_022AB108;
|
|
L_022AB0F8: ; // 0x22ab0f8
|
|
/* 022AB0F8 */ cpu->r[3] = 0x00000024u;
|
|
/* 022AB0FC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AB100 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AB100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB104 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB104 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022AB104 */ if (_t36) goto L_022AB138; else goto L_022AB108;
|
|
L_022AB108: ; // 0x22ab108
|
|
/* 022AB108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AB10C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB10C */ _t38 = _t37 & 0x00000001u;
|
|
/* 022AB10C */ if (_t38) goto L_022AB110; else goto L_022AB118;
|
|
L_022AB110: ; // 0x22ab110
|
|
/* 022AB110 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB114 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB118: ; // 0x22ab118
|
|
/* 022AB118 */ cpu->r[9] = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AB118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AB11C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB11C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AB11C */ if (_t40) goto L_022AB120; else goto L_022AB128;
|
|
L_022AB120: ; // 0x22ab120
|
|
/* 022AB120 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB124 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB128: ; // 0x22ab128
|
|
/* 022AB128 */ cpu->r[10] = cpu->r[31] + 0x00000018u;
|
|
/* 022AB128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AB12C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB12C */ _t42 = _t41 & 0x00000001u;
|
|
/* 022AB12C */ if (_t42) goto L_022AB130; else goto L_022AB138;
|
|
L_022AB130: ; // 0x22ab130
|
|
/* 022AB130 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB134 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB138: ; // 0x22ab138
|
|
/* 022AB138 */ cpu->r[12] = cpu->r[29] + 0x00000270u;
|
|
/* 022AB13C */ cpu->r[4] = cpu->r[12] + 0x00000024u;
|
|
/* 022AB13C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 022AB140 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB140 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022AB140 */ if (_t44) goto L_022AB144; else goto L_022AB14C;
|
|
L_022AB144: ; // 0x22ab144
|
|
/* 022AB144 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AB148 */ Gambit_fn_02801A78(cpu);
|
|
L_022AB14C: ; // 0x22ab14c
|
|
/* 022AB14C */ _t45 = cpu->r[29] + 0x000002A0u;
|
|
/* 022AB14C */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 022AB150 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 022AB154 */ _t46 = cpu->r[29] + 0x000002A4u;
|
|
/* 022AB154 */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 022AB158 */ _t47 = cpu->r[29] + 0x000002AAu;
|
|
/* 022AB158 */ rbrew_write16(cpu->mem, _t47, (uint16_t)cpu->r[5]);
|
|
/* 022AB15C */ _t48 = cpu->r[29] + 0x000002A8u;
|
|
/* 022AB15C */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[5]);
|
|
/* 022AB160 */ _t49 = cpu->r[29] + 0x000002B0u;
|
|
/* 022AB160 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[5]);
|
|
/* 022AB164 */ _t50 = cpu->r[29] + 0x000002ACu;
|
|
/* 022AB164 */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[5]);
|
|
/* 022AB168 */ _t51 = cpu->r[29] + 0x000002AEu;
|
|
/* 022AB168 */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[5]);
|
|
/* 022AB16C */ cpu->r[3] = cpu->r[29] + 0x000002B4u;
|
|
/* 022AB16C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AB170 */ _t52 = cpu->r[29] + 0x000002B2u;
|
|
/* 022AB170 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[5]);
|
|
/* 022AB174 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB174 */ _t54 = _t53 & 0x00000001u;
|
|
/* 022AB174 */ if (_t54) goto L_022AB178; else goto L_022AB188;
|
|
L_022AB178: ; // 0x22ab178
|
|
/* 022AB178 */ cpu->r[3] = 0x00000018u;
|
|
/* 022AB17C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AB180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AB184 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB184 */ _t56 = _t55 & 0x00000001u;
|
|
/* 022AB184 */ if (_t56) goto L_022AB1B0; else goto L_022AB188;
|
|
L_022AB188: ; // 0x22ab188
|
|
/* 022AB188 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AB18C */ cpu->r[9] = 0x10060000u;
|
|
/* 022AB190 */ _t57 = cpu->r[10] + 0x00002504u;
|
|
/* 022AB190 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 022AB194 */ _t58 = cpu->r[9] + 0x00002508u;
|
|
/* 022AB194 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022AB198 */ _t59 = cpu->r[3] + 0x00000004u;
|
|
/* 022AB198 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 022AB19C */ _t60 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AB19C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[13]);
|
|
/* 022AB1A0 */ _t61 = cpu->r[3] + 0x00000000u;
|
|
/* 022AB1A0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[0]);
|
|
/* 022AB1A4 */ _t62 = cpu->r[3] + 0x00000010u;
|
|
/* 022AB1A4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
/* 022AB1A8 */ _t63 = cpu->r[3] + 0x00000008u;
|
|
/* 022AB1A8 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[0]);
|
|
/* 022AB1AC */ _t64 = cpu->r[3] + 0x00000014u;
|
|
/* 022AB1AC */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
L_022AB1B0: ; // 0x22ab1b0
|
|
/* 022AB1B0 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022AB1B4 */ _t65 = cpu->r[11] + 0x00006338u;
|
|
/* 022AB1B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AB1B4 */ cpu->r[11] = _t65;
|
|
/* 022AB1B8 */ _t66 = cpu->r[29] + 0x000002CCu;
|
|
/* 022AB1B8 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022AB1BC */ _t67 = cpu->r[11] + 0x00000004u;
|
|
/* 022AB1BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022AB1C0 */ _t68 = cpu->r[29] + 0x000002D0u;
|
|
/* 022AB1C0 */ rbrew_write32(cpu->mem, _t68, cpu->r[0]);
|
|
/* 022AB1C4 */ _t69 = cpu->r[11] + 0x00000008u;
|
|
/* 022AB1C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AB1C8 */ _t70 = cpu->r[29] + 0x000002D4u;
|
|
/* 022AB1C8 */ rbrew_write32(cpu->mem, _t70, cpu->r[5]);
|
|
/* 022AB1CC */ _t71 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB1CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022AB1D0 */ _t72 = cpu->r[29] + 0x000002D8u;
|
|
/* 022AB1D0 */ rbrew_write32(cpu->mem, _t72, cpu->r[6]);
|
|
/* 022AB1D4 */ _t73 = cpu->r[11] + 0x00000004u;
|
|
/* 022AB1D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022AB1D8 */ _t74 = cpu->r[29] + 0x000002DCu;
|
|
/* 022AB1D8 */ rbrew_write32(cpu->mem, _t74, cpu->r[7]);
|
|
/* 022AB1DC */ _t75 = cpu->r[11] + 0x00000008u;
|
|
/* 022AB1DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022AB1E0 */ _t76 = cpu->r[29] + 0x000002E0u;
|
|
/* 022AB1E0 */ rbrew_write32(cpu->mem, _t76, cpu->r[8]);
|
|
/* 022AB1E4 */ _t77 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB1E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AB1E8 */ _t78 = cpu->r[29] + 0x000002E4u;
|
|
/* 022AB1E8 */ rbrew_write32(cpu->mem, _t78, cpu->r[9]);
|
|
/* 022AB1EC */ _t79 = cpu->r[11] + 0x00000004u;
|
|
/* 022AB1EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022AB1F0 */ _t80 = cpu->r[29] + 0x000002E8u;
|
|
/* 022AB1F0 */ rbrew_write32(cpu->mem, _t80, cpu->r[10]);
|
|
/* 022AB1F4 */ _t81 = cpu->r[11] + 0x00000008u;
|
|
/* 022AB1F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022AB1F8 */ _t82 = cpu->r[29] + 0x00000302u;
|
|
/* 022AB1F8 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[28]);
|
|
/* 022AB1FC */ _t83 = cpu->r[29] + 0x000002ECu;
|
|
/* 022AB1FC */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 022AB200 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB204 */ _t84 = cpu->r[29] + 0x00000301u;
|
|
/* 022AB204 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[28]);
|
|
/* 022AB208 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AB20C */ _t85 = cpu->r[29] + 0x000002F0u;
|
|
/* 022AB20C */ rbrew_write32(cpu->mem, _t85, cpu->r[28]);
|
|
/* 022AB210 */ _t86 = cpu->r[29] + 0x000002FCu;
|
|
/* 022AB210 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 022AB214 */ _t87 = cpu->r[29] + 0x000002F8u;
|
|
/* 022AB214 */ rbrew_write32(cpu->mem, _t87, cpu->r[28]);
|
|
/* 022AB218 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB21C */ _t88 = cpu->r[29] + 0x000002F4u;
|
|
/* 022AB21C */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 022AB220 */ cpu->r[0] = 0x0000000Au;
|
|
/* 022AB224 */ _t89 = cpu->r[29] + 0x00000300u;
|
|
/* 022AB224 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[28]);
|
|
/* 022AB228 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB22C */ _t90 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB22C */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[0]);
|
|
/* 022AB230 */ Gambit_fn_022AE924(cpu);
|
|
/* 022AB234 */ cpu->r[4] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB238 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AB23C */ Gambit_fn_02000834(cpu);
|
|
/* 022AB240 */ cpu->r[27] = 0x10060000u;
|
|
/* 022AB244 */ cpu->r[26] = 0x022B0000u;
|
|
/* 022AB248 */ cpu->r[27] = cpu->r[27] + 0x000022ECu;
|
|
/* 022AB24C */ cpu->r[12] = 0x10060000u;
|
|
/* 022AB250 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB250 */ rbrew_write32(cpu->mem, _t91, cpu->r[27]);
|
|
/* 022AB254 */ cpu->r[12] = cpu->r[12] + 0x00002538u;
|
|
/* 022AB258 */ cpu->r[26] = cpu->r[26] + 0xFFFFE048u;
|
|
/* 022AB25C */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB25C */ rbrew_write32(cpu->mem, _t92, cpu->r[12]);
|
|
/* 022AB260 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB264 */ _t93 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB264 */ cpu->r[24] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022AB268 */ _t94 = cpu->r[24] + 0x00000000u;
|
|
/* 022AB268 */ cpu->r[25] = rbrew_read32(cpu->mem, _t94);
|
|
/* 022AB26C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB274 */ cpu->r[30] = 0x10110000u;
|
|
/* 022AB278 */ _t95 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t95);
|
|
/* 022AB27C */ _t96 = cpu->r[30] + 0x00007399u;
|
|
/* 022AB27C */ cpu->r[30] = rbrew_read8(cpu->mem, _t96);
|
|
/* 022AB280 */ _t97 = cpu->r[5] + 0x00000000u;
|
|
/* 022AB280 */ cpu->r[0] = rbrew_read8(cpu->mem, _t97);
|
|
/* 022AB284 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022AB28C */ cpu->r[6] = 0x00080000u;
|
|
/* 022AB290 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB290 */ _t99 = _t98 & 0x00000001u;
|
|
/* 022AB290 */ if (_t99) goto L_022AB2B8; else goto L_022AB294;
|
|
L_022AB294: ; // 0x22ab294
|
|
/* 022AB294 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022AB29C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 022AB2A0 */ _t100 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB2A0 */ _t101 = _t100 & 0x00000001u;
|
|
/* 022AB2A0 */ if (_t101) goto L_022AB2B4; else goto L_022AB2A4;
|
|
L_022AB2A4: ; // 0x22ab2a4
|
|
/* 022AB2A4 */ _t102 = cpu->r[5] + 0x00000000u;
|
|
/* 022AB2A4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t102);
|
|
/* 022AB2A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022AB2AC */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB2AC */ _t104 = _t103 & 0x00000001u;
|
|
/* 022AB2AC */ if (_t104) goto L_022AB2B0; else goto L_022AB294;
|
|
L_022AB2B0: ; // 0x22ab2b0
|
|
/* 022AB2B0 */ goto L_022AB2B8;
|
|
L_022AB2B4: ; // 0x22ab2b4
|
|
/* 022AB2B4 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB2B8: ; // 0x22ab2b8
|
|
/* 022AB2B8 */ _t105 = cpu->r[24] + 0x00000008u;
|
|
/* 022AB2B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022AB2BC */ _t106 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB2BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022AB2C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022AB2C4 */ _t107 = cpu->r[6] + 0x00000014u;
|
|
/* 022AB2C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t107);
|
|
/* 022AB2C8 */ _t108 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB2C8 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022AB2C8 */ if (_t109) goto L_022AB2D0; else goto L_022AB2CC;
|
|
L_022AB2CC: ; // 0x22ab2cc
|
|
/* 022AB2CC */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022AB2D0: ; // 0x22ab2d0
|
|
/* 022AB2D0 */ cpu->ctr = cpu->r[7];
|
|
/* 022AB2D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB2D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB2DC */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB2DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022AB2E0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB2E4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB2E8 */ cpu->r[3] = cpu->r[25];
|
|
/* 022AB2EC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB2F0 */ _t111 = cpu->r[25] + cpu->r[31];
|
|
/* 022AB2F0 */ rbrew_write8(cpu->mem, _t111, (uint8_t)cpu->r[30]);
|
|
/* 022AB2F4 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022AB2F8 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB2F8 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 022AB2FC */ cpu->r[0] = cpu->r[0] + 0xFFFFD478u;
|
|
/* 022AB300 */ _t113 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB300 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[28]);
|
|
/* 022AB304 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022AB308 */ _t114 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB308 */ rbrew_write32(cpu->mem, _t114, cpu->r[0]);
|
|
/* 022AB30C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022AB310 */ _t115 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB310 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 022AB314 */ _t116 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB314 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[28]);
|
|
/* 022AB318 */ cpu->r[11] = 0x00000000u;
|
|
/* 022AB31C */ _t117 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB31C */ rbrew_write16(cpu->mem, _t117, (uint16_t)cpu->r[0]);
|
|
/* 022AB320 */ cpu->r[10] = cpu->r[10] + 0xFFFFE770u;
|
|
/* 022AB324 */ _t118 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB324 */ rbrew_write8(cpu->mem, _t118, (uint8_t)cpu->r[11]);
|
|
/* 022AB328 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB32C */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB330 */ _t119 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB330 */ rbrew_write32(cpu->mem, _t119, cpu->r[10]);
|
|
/* 022AB334 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB338 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB33C */ _t120 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB33C */ rbrew_write16(cpu->mem, _t120, (uint16_t)cpu->r[0]);
|
|
/* 022AB340 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB344 */ _t121 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB344 */ rbrew_write32(cpu->mem, _t121, cpu->r[28]);
|
|
/* 022AB348 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB34C */ cpu->r[11] = 0x10060000u;
|
|
/* 022AB350 */ _t122 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB350 */ rbrew_write32(cpu->mem, _t122, cpu->r[27]);
|
|
/* 022AB354 */ cpu->r[11] = cpu->r[11] + 0x0000254Cu;
|
|
/* 022AB358 */ _t123 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB358 */ rbrew_write32(cpu->mem, _t123, cpu->r[11]);
|
|
/* 022AB35C */ _t124 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB35C */ cpu->r[12] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022AB360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000001u);
|
|
/* 022AB364 */ _t125 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB364 */ cpu->r[25] = rbrew_read32(cpu->mem, _t125);
|
|
/* 022AB368 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB368 */ _t127 = _t126 & 0x00000001u;
|
|
/* 022AB368 */ if (_t127) goto L_022AB36C; else goto L_022AB370;
|
|
L_022AB36C: ; // 0x22ab36c
|
|
/* 022AB36C */ cpu->r[25] = cpu->r[25] + 0x00000024u;
|
|
L_022AB370: ; // 0x22ab370
|
|
/* 022AB370 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB374 */ _t128 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB374 */ cpu->r[24] = rbrew_read32(cpu->mem, _t128);
|
|
/* 022AB378 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB37C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB380 */ _t129 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB380 */ cpu->r[11] = rbrew_read32(cpu->mem, _t129);
|
|
/* 022AB384 */ _t130 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB384 */ cpu->r[0] = rbrew_read8(cpu->mem, _t130);
|
|
/* 022AB388 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB38C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022AB390 */ cpu->r[12] = 0x00080000u;
|
|
/* 022AB394 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB394 */ _t132 = _t131 & 0x00000001u;
|
|
/* 022AB394 */ if (_t132) goto L_022AB3BC; else goto L_022AB398;
|
|
L_022AB398: ; // 0x22ab398
|
|
/* 022AB398 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022AB3A0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022AB3A4 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB3A4 */ _t134 = _t133 & 0x00000001u;
|
|
/* 022AB3A4 */ if (_t134) goto L_022AB3B8; else goto L_022AB3A8;
|
|
L_022AB3A8: ; // 0x22ab3a8
|
|
/* 022AB3A8 */ _t135 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB3A8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t135);
|
|
/* 022AB3AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022AB3B0 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB3B0 */ _t137 = _t136 & 0x00000001u;
|
|
/* 022AB3B0 */ if (_t137) goto L_022AB3B4; else goto L_022AB398;
|
|
L_022AB3B4: ; // 0x22ab3b4
|
|
/* 022AB3B4 */ goto L_022AB3BC;
|
|
L_022AB3B8: ; // 0x22ab3b8
|
|
/* 022AB3B8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB3BC: ; // 0x22ab3bc
|
|
/* 022AB3BC */ _t138 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB3BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022AB3C0 */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB3C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t139);
|
|
/* 022AB3C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022AB3C8 */ _t140 = cpu->r[5] + 0x00000014u;
|
|
/* 022AB3C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 022AB3CC */ _t141 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB3CC */ _t142 = _t141 & 0x00000001u;
|
|
/* 022AB3CC */ if (_t142) goto L_022AB3D4; else goto L_022AB3D0;
|
|
L_022AB3D0: ; // 0x22ab3d0
|
|
/* 022AB3D0 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022AB3D4: ; // 0x22ab3d4
|
|
/* 022AB3D4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AB3D8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB3DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB3E0 */ _t143 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB3E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t143);
|
|
/* 022AB3E4 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB3E8 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB3EC */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB3F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB3F4 */ _t144 = cpu->r[24] + cpu->r[31];
|
|
/* 022AB3F4 */ rbrew_write8(cpu->mem, _t144, (uint8_t)cpu->r[30]);
|
|
/* 022AB3F8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AB3FC */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB3FC */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[28]);
|
|
/* 022AB400 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022AB404 */ _t146 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB404 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[28]);
|
|
/* 022AB408 */ cpu->r[7] = 0x022B0000u;
|
|
/* 022AB40C */ _t147 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB40C */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[8]);
|
|
/* 022AB410 */ cpu->r[7] = cpu->r[7] + 0xFFFFD49Cu;
|
|
/* 022AB414 */ _t148 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB414 */ rbrew_write16(cpu->mem, _t148, (uint16_t)cpu->r[8]);
|
|
/* 022AB418 */ _t149 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB418 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[8]);
|
|
/* 022AB41C */ cpu->r[9] = 0x022B0000u;
|
|
/* 022AB420 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB420 */ rbrew_write8(cpu->mem, _t150, (uint8_t)cpu->r[10]);
|
|
/* 022AB424 */ cpu->r[9] = cpu->r[9] + 0xFFFFE774u;
|
|
/* 022AB428 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB42C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB430 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB430 */ rbrew_write32(cpu->mem, _t151, cpu->r[9]);
|
|
/* 022AB434 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB438 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022AB43C */ _t152 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB43C */ rbrew_write16(cpu->mem, _t152, (uint16_t)cpu->r[28]);
|
|
/* 022AB440 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB444 */ cpu->r[0] = cpu->r[0] + 0xFFFFD4ECu;
|
|
/* 022AB448 */ _t153 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB448 */ rbrew_write32(cpu->mem, _t153, cpu->r[7]);
|
|
/* 022AB44C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB450 */ _t154 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB450 */ rbrew_write32(cpu->mem, _t154, cpu->r[0]);
|
|
/* 022AB454 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB458 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AB45C */ _t155 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB45C */ rbrew_write32(cpu->mem, _t155, cpu->r[27]);
|
|
/* 022AB460 */ cpu->r[6] = cpu->r[6] + 0x0000257Cu;
|
|
/* 022AB464 */ _t156 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB464 */ rbrew_write32(cpu->mem, _t156, cpu->r[6]);
|
|
/* 022AB468 */ _t157 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB468 */ cpu->r[7] = rbrew_read32(cpu->mem, _t157);
|
|
/* 022AB46C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000002u);
|
|
/* 022AB470 */ _t158 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB470 */ cpu->r[25] = rbrew_read32(cpu->mem, _t158);
|
|
/* 022AB474 */ _t159 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB474 */ _t160 = _t159 & 0x00000001u;
|
|
/* 022AB474 */ if (_t160) goto L_022AB478; else goto L_022AB47C;
|
|
L_022AB478: ; // 0x22ab478
|
|
/* 022AB478 */ cpu->r[25] = cpu->r[25] + 0x00000048u;
|
|
L_022AB47C: ; // 0x22ab47c
|
|
/* 022AB47C */ cpu->ctr = cpu->r[26];
|
|
/* 022AB480 */ _t161 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB480 */ cpu->r[24] = rbrew_read32(cpu->mem, _t161);
|
|
/* 022AB484 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB488 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB48C */ _t162 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB48C */ cpu->r[4] = rbrew_read32(cpu->mem, _t162);
|
|
/* 022AB490 */ _t163 = cpu->r[4] + 0x00000000u;
|
|
/* 022AB490 */ cpu->r[8] = rbrew_read8(cpu->mem, _t163);
|
|
/* 022AB494 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022AB49C */ cpu->r[6] = 0x00080000u;
|
|
/* 022AB4A0 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB4A0 */ _t165 = _t164 & 0x00000001u;
|
|
/* 022AB4A0 */ if (_t165) goto L_022AB4C8; else goto L_022AB4A4;
|
|
L_022AB4A4: ; // 0x22ab4a4
|
|
/* 022AB4A4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB4A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 022AB4AC */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 022AB4B0 */ _t166 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB4B0 */ _t167 = _t166 & 0x00000001u;
|
|
/* 022AB4B0 */ if (_t167) goto L_022AB4C4; else goto L_022AB4B4;
|
|
L_022AB4B4: ; // 0x22ab4b4
|
|
/* 022AB4B4 */ _t168 = cpu->r[4] + 0x00000000u;
|
|
/* 022AB4B4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t168);
|
|
/* 022AB4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022AB4BC */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB4BC */ _t170 = _t169 & 0x00000001u;
|
|
/* 022AB4BC */ if (_t170) goto L_022AB4C0; else goto L_022AB4A4;
|
|
L_022AB4C0: ; // 0x22ab4c0
|
|
/* 022AB4C0 */ goto L_022AB4C8;
|
|
L_022AB4C4: ; // 0x22ab4c4
|
|
/* 022AB4C4 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB4C8: ; // 0x22ab4c8
|
|
/* 022AB4C8 */ _t171 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB4C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t171);
|
|
/* 022AB4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022AB4D0 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB4D0 */ _t173 = _t172 & 0x00000001u;
|
|
/* 022AB4D0 */ if (_t173) goto L_022AB4D8; else goto L_022AB4D4;
|
|
L_022AB4D4: ; // 0x22ab4d4
|
|
/* 022AB4D4 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_022AB4D8: ; // 0x22ab4d8
|
|
/* 022AB4D8 */ _t174 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB4D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t174);
|
|
/* 022AB4DC */ _t175 = cpu->r[10] + 0x00000014u;
|
|
/* 022AB4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t175);
|
|
/* 022AB4E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AB4E4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB4E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB4EC */ _t176 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB4EC */ cpu->r[4] = rbrew_read32(cpu->mem, _t176);
|
|
/* 022AB4F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB4F4 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB4F8 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB4FC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB500 */ _t177 = cpu->r[24] + cpu->r[31];
|
|
/* 022AB500 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[30]);
|
|
/* 022AB504 */ cpu->r[0] = 0x00000002u;
|
|
/* 022AB508 */ _t178 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB508 */ rbrew_write32(cpu->mem, _t178, cpu->r[28]);
|
|
/* 022AB50C */ cpu->r[4] = 0x022B0000u;
|
|
/* 022AB510 */ _t179 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB510 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[28]);
|
|
/* 022AB514 */ cpu->r[4] = cpu->r[4] + 0xFFFFD7D0u;
|
|
/* 022AB518 */ _t180 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB518 */ rbrew_write8(cpu->mem, _t180, (uint8_t)cpu->r[0]);
|
|
/* 022AB51C */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 022AB520 */ _t181 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB520 */ rbrew_write32(cpu->mem, _t181, cpu->r[4]);
|
|
/* 022AB524 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB528 */ _t182 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB528 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[9]);
|
|
/* 022AB52C */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AB530 */ _t183 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB530 */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[28]);
|
|
/* 022AB534 */ cpu->r[12] = cpu->r[12] + 0xFFFFE778u;
|
|
/* 022AB538 */ _t184 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB538 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[28]);
|
|
/* 022AB53C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB540 */ _t185 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB540 */ rbrew_write16(cpu->mem, _t185, (uint16_t)cpu->r[9]);
|
|
/* 022AB544 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB548 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB54C */ _t186 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB54C */ rbrew_write32(cpu->mem, _t186, cpu->r[12]);
|
|
/* 022AB550 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB554 */ _t187 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB554 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 022AB558 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB55C */ cpu->r[5] = 0x10060000u;
|
|
/* 022AB560 */ _t188 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB560 */ rbrew_write32(cpu->mem, _t188, cpu->r[27]);
|
|
/* 022AB564 */ cpu->r[5] = cpu->r[5] + 0x0000255Cu;
|
|
/* 022AB568 */ _t189 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB568 */ rbrew_write32(cpu->mem, _t189, cpu->r[5]);
|
|
/* 022AB56C */ _t190 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB56C */ cpu->r[6] = rbrew_read32(cpu->mem, _t190);
|
|
/* 022AB570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 022AB574 */ _t191 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB574 */ cpu->r[25] = rbrew_read32(cpu->mem, _t191);
|
|
/* 022AB578 */ _t192 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB578 */ _t193 = _t192 & 0x00000001u;
|
|
/* 022AB578 */ if (_t193) goto L_022AB57C; else goto L_022AB580;
|
|
L_022AB57C: ; // 0x22ab57c
|
|
/* 022AB57C */ cpu->r[25] = cpu->r[25] + 0x0000006Cu;
|
|
L_022AB580: ; // 0x22ab580
|
|
/* 022AB580 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB584 */ _t194 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB584 */ cpu->r[24] = rbrew_read32(cpu->mem, _t194);
|
|
/* 022AB588 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB58C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB590 */ _t195 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB590 */ cpu->r[10] = rbrew_read32(cpu->mem, _t195);
|
|
/* 022AB594 */ _t196 = cpu->r[10] + 0x00000000u;
|
|
/* 022AB594 */ cpu->r[7] = rbrew_read8(cpu->mem, _t196);
|
|
/* 022AB598 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB59C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022AB5A0 */ cpu->r[11] = 0x00080000u;
|
|
/* 022AB5A4 */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB5A4 */ _t198 = _t197 & 0x00000001u;
|
|
/* 022AB5A4 */ if (_t198) goto L_022AB5CC; else goto L_022AB5A8;
|
|
L_022AB5A8: ; // 0x22ab5a8
|
|
/* 022AB5A8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB5AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 022AB5B0 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 022AB5B4 */ _t199 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB5B4 */ _t200 = _t199 & 0x00000001u;
|
|
/* 022AB5B4 */ if (_t200) goto L_022AB5C8; else goto L_022AB5B8;
|
|
L_022AB5B8: ; // 0x22ab5b8
|
|
/* 022AB5B8 */ _t201 = cpu->r[10] + 0x00000000u;
|
|
/* 022AB5B8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t201);
|
|
/* 022AB5BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022AB5C0 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB5C0 */ _t203 = _t202 & 0x00000001u;
|
|
/* 022AB5C0 */ if (_t203) goto L_022AB5C4; else goto L_022AB5A8;
|
|
L_022AB5C4: ; // 0x22ab5c4
|
|
/* 022AB5C4 */ goto L_022AB5CC;
|
|
L_022AB5C8: ; // 0x22ab5c8
|
|
/* 022AB5C8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB5CC: ; // 0x22ab5cc
|
|
/* 022AB5CC */ _t204 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB5CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t204);
|
|
/* 022AB5D0 */ _t205 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB5D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t205);
|
|
/* 022AB5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 022AB5D8 */ _t206 = cpu->r[9] + 0x00000014u;
|
|
/* 022AB5D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t206);
|
|
/* 022AB5DC */ _t207 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB5DC */ _t208 = _t207 & 0x00000001u;
|
|
/* 022AB5DC */ if (_t208) goto L_022AB5E4; else goto L_022AB5E0;
|
|
L_022AB5E0: ; // 0x22ab5e0
|
|
/* 022AB5E0 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022AB5E4: ; // 0x22ab5e4
|
|
/* 022AB5E4 */ cpu->ctr = cpu->r[10];
|
|
/* 022AB5E8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB5EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB5F0 */ _t209 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB5F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t209);
|
|
/* 022AB5F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB5F8 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB5FC */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB600 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB604 */ _t210 = cpu->r[24] + cpu->r[31];
|
|
/* 022AB604 */ rbrew_write8(cpu->mem, _t210, (uint8_t)cpu->r[30]);
|
|
/* 022AB608 */ cpu->r[11] = 0x022B0000u;
|
|
/* 022AB60C */ _t211 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB60C */ rbrew_write32(cpu->mem, _t211, cpu->r[28]);
|
|
/* 022AB610 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 022AB614 */ _t212 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB614 */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[28]);
|
|
/* 022AB618 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022AB61C */ _t213 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB61C */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[6]);
|
|
/* 022AB620 */ cpu->r[4] = cpu->r[4] + 0xFFFFD7D4u;
|
|
/* 022AB624 */ _t214 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB624 */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[28]);
|
|
/* 022AB628 */ _t215 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB628 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[28]);
|
|
/* 022AB62C */ cpu->r[0] = 0x00000003u;
|
|
/* 022AB630 */ _t216 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB630 */ rbrew_write16(cpu->mem, _t216, (uint16_t)cpu->r[6]);
|
|
/* 022AB634 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB638 */ _t217 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB638 */ rbrew_write8(cpu->mem, _t217, (uint8_t)cpu->r[0]);
|
|
/* 022AB63C */ cpu->r[11] = cpu->r[11] + 0xFFFFE77Cu;
|
|
/* 022AB640 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB644 */ _t218 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB644 */ rbrew_write32(cpu->mem, _t218, cpu->r[4]);
|
|
/* 022AB648 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB64C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB650 */ _t219 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB650 */ rbrew_write16(cpu->mem, _t219, (uint16_t)cpu->r[28]);
|
|
/* 022AB654 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB658 */ _t220 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB658 */ rbrew_write32(cpu->mem, _t220, cpu->r[11]);
|
|
/* 022AB65C */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB660 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AB664 */ _t221 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB664 */ rbrew_write32(cpu->mem, _t221, cpu->r[27]);
|
|
/* 022AB668 */ cpu->r[6] = cpu->r[6] + 0x0000258Cu;
|
|
/* 022AB66C */ _t222 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB66C */ rbrew_write32(cpu->mem, _t222, cpu->r[6]);
|
|
/* 022AB670 */ _t223 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB670 */ cpu->r[7] = rbrew_read32(cpu->mem, _t223);
|
|
/* 022AB674 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000004u);
|
|
/* 022AB678 */ _t224 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB678 */ cpu->r[25] = rbrew_read32(cpu->mem, _t224);
|
|
/* 022AB67C */ _t225 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB67C */ _t226 = _t225 & 0x00000001u;
|
|
/* 022AB67C */ if (_t226) goto L_022AB680; else goto L_022AB684;
|
|
L_022AB680: ; // 0x22ab680
|
|
/* 022AB680 */ cpu->r[25] = cpu->r[25] + 0x00000090u;
|
|
L_022AB684: ; // 0x22ab684
|
|
/* 022AB684 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB688 */ _t227 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB688 */ cpu->r[24] = rbrew_read32(cpu->mem, _t227);
|
|
/* 022AB68C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB690 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB694 */ _t228 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB694 */ cpu->r[5] = rbrew_read32(cpu->mem, _t228);
|
|
/* 022AB698 */ _t229 = cpu->r[5] + 0x00000000u;
|
|
/* 022AB698 */ cpu->r[8] = rbrew_read8(cpu->mem, _t229);
|
|
/* 022AB69C */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB6A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022AB6A4 */ cpu->r[7] = 0x00080000u;
|
|
/* 022AB6A8 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB6A8 */ _t231 = _t230 & 0x00000001u;
|
|
/* 022AB6A8 */ if (_t231) goto L_022AB6D0; else goto L_022AB6AC;
|
|
L_022AB6AC: ; // 0x22ab6ac
|
|
/* 022AB6AC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB6B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022AB6B4 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 022AB6B8 */ _t232 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB6B8 */ _t233 = _t232 & 0x00000001u;
|
|
/* 022AB6B8 */ if (_t233) goto L_022AB6CC; else goto L_022AB6BC;
|
|
L_022AB6BC: ; // 0x22ab6bc
|
|
/* 022AB6BC */ _t234 = cpu->r[5] + 0x00000000u;
|
|
/* 022AB6BC */ cpu->r[9] = rbrew_read8(cpu->mem, _t234);
|
|
/* 022AB6C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 022AB6C4 */ _t235 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB6C4 */ _t236 = _t235 & 0x00000001u;
|
|
/* 022AB6C4 */ if (_t236) goto L_022AB6C8; else goto L_022AB6AC;
|
|
L_022AB6C8: ; // 0x22ab6c8
|
|
/* 022AB6C8 */ goto L_022AB6D0;
|
|
L_022AB6CC: ; // 0x22ab6cc
|
|
/* 022AB6CC */ cpu->r[31] = 0x00000000u;
|
|
L_022AB6D0: ; // 0x22ab6d0
|
|
/* 022AB6D0 */ _t237 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB6D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t237);
|
|
/* 022AB6D4 */ _t238 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB6D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t238);
|
|
/* 022AB6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022AB6DC */ _t239 = cpu->r[10] + 0x00000014u;
|
|
/* 022AB6DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t239);
|
|
/* 022AB6E0 */ _t240 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB6E0 */ _t241 = _t240 & 0x00000001u;
|
|
/* 022AB6E0 */ if (_t241) goto L_022AB6E8; else goto L_022AB6E4;
|
|
L_022AB6E4: ; // 0x22ab6e4
|
|
/* 022AB6E4 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_022AB6E8: ; // 0x22ab6e8
|
|
/* 022AB6E8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AB6EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB6F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB6F4 */ _t242 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB6F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t242);
|
|
/* 022AB6F8 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB6FC */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB700 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB704 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB708 */ _t243 = cpu->r[24] + cpu->r[31];
|
|
/* 022AB708 */ rbrew_write8(cpu->mem, _t243, (uint8_t)cpu->r[30]);
|
|
/* 022AB70C */ cpu->r[0] = 0x00000004u;
|
|
/* 022AB710 */ _t244 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB710 */ rbrew_write32(cpu->mem, _t244, cpu->r[28]);
|
|
/* 022AB714 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AB718 */ _t245 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB718 */ rbrew_write8(cpu->mem, _t245, (uint8_t)cpu->r[0]);
|
|
/* 022AB71C */ cpu->r[10] = 0x022B0000u;
|
|
/* 022AB720 */ _t246 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB720 */ rbrew_write16(cpu->mem, _t246, (uint16_t)cpu->r[28]);
|
|
/* 022AB724 */ cpu->r[10] = cpu->r[10] + 0xFFFFD7D8u;
|
|
/* 022AB728 */ _t247 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB728 */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[28]);
|
|
/* 022AB72C */ _t248 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB72C */ rbrew_write32(cpu->mem, _t248, cpu->r[10]);
|
|
/* 022AB730 */ cpu->r[12] = cpu->r[12] + 0xFFFFE780u;
|
|
/* 022AB734 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB738 */ _t249 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB738 */ rbrew_write32(cpu->mem, _t249, cpu->r[12]);
|
|
/* 022AB73C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 022AB740 */ _t250 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB740 */ rbrew_write16(cpu->mem, _t250, (uint16_t)cpu->r[28]);
|
|
/* 022AB744 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB748 */ _t251 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB748 */ rbrew_write16(cpu->mem, _t251, (uint16_t)cpu->r[4]);
|
|
/* 022AB74C */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB750 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB754 */ _t252 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB754 */ rbrew_write16(cpu->mem, _t252, (uint16_t)cpu->r[4]);
|
|
/* 022AB758 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB75C */ _t253 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB75C */ rbrew_write16(cpu->mem, _t253, (uint16_t)cpu->r[28]);
|
|
/* 022AB760 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB764 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AB768 */ _t254 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB768 */ rbrew_write32(cpu->mem, _t254, cpu->r[27]);
|
|
/* 022AB76C */ cpu->r[11] = cpu->r[11] + 0x0000259Cu;
|
|
/* 022AB770 */ _t255 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB770 */ rbrew_write32(cpu->mem, _t255, cpu->r[11]);
|
|
/* 022AB774 */ _t256 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t256);
|
|
/* 022AB778 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000005u);
|
|
/* 022AB77C */ _t257 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB77C */ cpu->r[25] = rbrew_read32(cpu->mem, _t257);
|
|
/* 022AB780 */ _t258 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB780 */ _t259 = _t258 & 0x00000001u;
|
|
/* 022AB780 */ if (_t259) goto L_022AB784; else goto L_022AB788;
|
|
L_022AB784: ; // 0x22ab784
|
|
/* 022AB784 */ cpu->r[25] = cpu->r[25] + 0x000000B4u;
|
|
L_022AB788: ; // 0x22ab788
|
|
/* 022AB788 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB78C */ _t260 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB78C */ cpu->r[24] = rbrew_read32(cpu->mem, _t260);
|
|
/* 022AB790 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB794 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB798 */ _t261 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB798 */ cpu->r[11] = rbrew_read32(cpu->mem, _t261);
|
|
/* 022AB79C */ _t262 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB79C */ cpu->r[0] = rbrew_read8(cpu->mem, _t262);
|
|
/* 022AB7A0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB7A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 022AB7A8 */ cpu->r[0] = 0x00080000u;
|
|
/* 022AB7AC */ _t263 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB7AC */ _t264 = _t263 & 0x00000001u;
|
|
/* 022AB7AC */ if (_t264) goto L_022AB7D4; else goto L_022AB7B0;
|
|
L_022AB7B0: ; // 0x22ab7b0
|
|
/* 022AB7B0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB7B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 022AB7B8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022AB7BC */ _t265 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB7BC */ _t266 = _t265 & 0x00000001u;
|
|
/* 022AB7BC */ if (_t266) goto L_022AB7D0; else goto L_022AB7C0;
|
|
L_022AB7C0: ; // 0x22ab7c0
|
|
/* 022AB7C0 */ _t267 = cpu->r[11] + 0x00000000u;
|
|
/* 022AB7C0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t267);
|
|
/* 022AB7C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022AB7C8 */ _t268 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB7C8 */ _t269 = _t268 & 0x00000001u;
|
|
/* 022AB7C8 */ if (_t269) goto L_022AB7CC; else goto L_022AB7B0;
|
|
L_022AB7CC: ; // 0x22ab7cc
|
|
/* 022AB7CC */ goto L_022AB7D4;
|
|
L_022AB7D0: ; // 0x22ab7d0
|
|
/* 022AB7D0 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB7D4: ; // 0x22ab7d4
|
|
/* 022AB7D4 */ _t270 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB7D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t270);
|
|
/* 022AB7D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022AB7DC */ _t271 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB7DC */ _t272 = _t271 & 0x00000001u;
|
|
/* 022AB7DC */ if (_t272) goto L_022AB7E4; else goto L_022AB7E0;
|
|
L_022AB7E0: ; // 0x22ab7e0
|
|
/* 022AB7E0 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_022AB7E4: ; // 0x22ab7e4
|
|
/* 022AB7E4 */ _t273 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB7E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t273);
|
|
/* 022AB7E8 */ _t274 = cpu->r[5] + 0x00000014u;
|
|
/* 022AB7E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t274);
|
|
/* 022AB7EC */ cpu->ctr = cpu->r[6];
|
|
/* 022AB7F0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB7F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB7F8 */ _t275 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB7F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t275);
|
|
/* 022AB7FC */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB800 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AB804 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB808 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB80C */ _t276 = cpu->r[24] + cpu->r[31];
|
|
/* 022AB80C */ rbrew_write8(cpu->mem, _t276, (uint8_t)cpu->r[30]);
|
|
/* 022AB810 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AB814 */ _t277 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB814 */ rbrew_write16(cpu->mem, _t277, (uint16_t)cpu->r[28]);
|
|
/* 022AB818 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 022AB81C */ _t278 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB81C */ rbrew_write16(cpu->mem, _t278, (uint16_t)cpu->r[28]);
|
|
/* 022AB820 */ cpu->r[7] = 0x022B0000u;
|
|
/* 022AB824 */ _t279 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB824 */ rbrew_write16(cpu->mem, _t279, (uint16_t)cpu->r[11]);
|
|
/* 022AB828 */ cpu->r[10] = 0x022B0000u;
|
|
/* 022AB82C */ _t280 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB82C */ rbrew_write16(cpu->mem, _t280, (uint16_t)cpu->r[28]);
|
|
/* 022AB830 */ cpu->r[10] = cpu->r[10] + 0xFFFFDB34u;
|
|
/* 022AB834 */ _t281 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB834 */ rbrew_write16(cpu->mem, _t281, (uint16_t)cpu->r[11]);
|
|
/* 022AB838 */ cpu->r[7] = cpu->r[7] + 0xFFFFD844u;
|
|
/* 022AB83C */ _t282 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB83C */ rbrew_write32(cpu->mem, _t282, cpu->r[10]);
|
|
/* 022AB840 */ cpu->r[0] = 0x00000005u;
|
|
/* 022AB844 */ cpu->r[12] = cpu->r[12] + 0xFFFFDC5Cu;
|
|
/* 022AB848 */ _t283 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB848 */ rbrew_write32(cpu->mem, _t283, cpu->r[7]);
|
|
/* 022AB84C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB850 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB854 */ _t284 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB854 */ rbrew_write8(cpu->mem, _t284, (uint8_t)cpu->r[0]);
|
|
/* 022AB858 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB85C */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB860 */ _t285 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB860 */ rbrew_write16(cpu->mem, _t285, (uint16_t)cpu->r[11]);
|
|
/* 022AB864 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB868 */ _t286 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB868 */ rbrew_write32(cpu->mem, _t286, cpu->r[12]);
|
|
/* 022AB86C */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB870 */ cpu->r[4] = 0x10060000u;
|
|
/* 022AB874 */ _t287 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB874 */ rbrew_write32(cpu->mem, _t287, cpu->r[27]);
|
|
/* 022AB878 */ cpu->r[4] = cpu->r[4] + 0x0000256Cu;
|
|
/* 022AB87C */ _t288 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB87C */ rbrew_write32(cpu->mem, _t288, cpu->r[4]);
|
|
/* 022AB880 */ _t289 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t289);
|
|
/* 022AB884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u);
|
|
/* 022AB888 */ _t290 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t290);
|
|
/* 022AB88C */ _t291 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB88C */ _t292 = _t291 & 0x00000001u;
|
|
/* 022AB88C */ if (_t292) goto L_022AB890; else goto L_022AB894;
|
|
L_022AB890: ; // 0x22ab890
|
|
/* 022AB890 */ cpu->r[31] = cpu->r[31] + 0x000000D8u;
|
|
L_022AB894: ; // 0x22ab894
|
|
/* 022AB894 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB898 */ _t293 = cpu->r[31] + 0x00000000u;
|
|
/* 022AB898 */ cpu->r[24] = rbrew_read32(cpu->mem, _t293);
|
|
/* 022AB89C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB8A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB8A4 */ _t294 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB8A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t294);
|
|
/* 022AB8A8 */ _t295 = cpu->r[7] + 0x00000000u;
|
|
/* 022AB8A8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t295);
|
|
/* 022AB8AC */ cpu->r[25] = 0x00000000u;
|
|
/* 022AB8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022AB8B4 */ cpu->r[9] = 0x00080000u;
|
|
/* 022AB8B8 */ _t296 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB8B8 */ _t297 = _t296 & 0x00000001u;
|
|
/* 022AB8B8 */ if (_t297) goto L_022AB8E0; else goto L_022AB8BC;
|
|
L_022AB8BC: ; // 0x22ab8bc
|
|
/* 022AB8BC */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022AB8C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[9]);
|
|
/* 022AB8C4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022AB8C8 */ _t298 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB8C8 */ _t299 = _t298 & 0x00000001u;
|
|
/* 022AB8C8 */ if (_t299) goto L_022AB8DC; else goto L_022AB8CC;
|
|
L_022AB8CC: ; // 0x22ab8cc
|
|
/* 022AB8CC */ _t300 = cpu->r[7] + 0x00000000u;
|
|
/* 022AB8CC */ cpu->r[8] = rbrew_read8(cpu->mem, _t300);
|
|
/* 022AB8D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022AB8D4 */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB8D4 */ _t302 = _t301 & 0x00000001u;
|
|
/* 022AB8D4 */ if (_t302) goto L_022AB8D8; else goto L_022AB8BC;
|
|
L_022AB8D8: ; // 0x22ab8d8
|
|
/* 022AB8D8 */ goto L_022AB8E0;
|
|
L_022AB8DC: ; // 0x22ab8dc
|
|
/* 022AB8DC */ cpu->r[25] = 0x00000000u;
|
|
L_022AB8E0: ; // 0x22ab8e0
|
|
/* 022AB8E0 */ _t303 = cpu->r[31] + 0x00000008u;
|
|
/* 022AB8E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t303);
|
|
/* 022AB8E4 */ _t304 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB8E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t304);
|
|
/* 022AB8E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]);
|
|
/* 022AB8EC */ _t305 = cpu->r[10] + 0x00000014u;
|
|
/* 022AB8EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t305);
|
|
/* 022AB8F0 */ _t306 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB8F0 */ _t307 = _t306 & 0x00000001u;
|
|
/* 022AB8F0 */ if (_t307) goto L_022AB8F8; else goto L_022AB8F4;
|
|
L_022AB8F4: ; // 0x22ab8f4
|
|
/* 022AB8F4 */ cpu->r[25] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_022AB8F8: ; // 0x22ab8f8
|
|
/* 022AB8F8 */ cpu->ctr = cpu->r[11];
|
|
/* 022AB8FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB904 */ _t308 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB904 */ cpu->r[4] = rbrew_read32(cpu->mem, _t308);
|
|
/* 022AB908 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AB90C */ cpu->r[5] = cpu->r[25];
|
|
/* 022AB910 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AB914 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AB918 */ _t309 = cpu->r[24] + cpu->r[25];
|
|
/* 022AB918 */ rbrew_write8(cpu->mem, _t309, (uint8_t)cpu->r[30]);
|
|
/* 022AB91C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022AB920 */ _t310 = cpu->r[1] + 0x00000024u;
|
|
/* 022AB920 */ rbrew_write16(cpu->mem, _t310, (uint16_t)cpu->r[28]);
|
|
/* 022AB924 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022AB928 */ _t311 = cpu->r[1] + 0x00000016u;
|
|
/* 022AB928 */ rbrew_write16(cpu->mem, _t311, (uint16_t)cpu->r[0]);
|
|
/* 022AB92C */ cpu->r[4] = cpu->r[4] + 0xFFFFDC7Cu;
|
|
/* 022AB930 */ _t312 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB930 */ rbrew_write16(cpu->mem, _t312, (uint16_t)cpu->r[28]);
|
|
/* 022AB934 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AB938 */ _t313 = cpu->r[1] + 0x00000026u;
|
|
/* 022AB938 */ rbrew_write16(cpu->mem, _t313, (uint16_t)cpu->r[0]);
|
|
/* 022AB93C */ _t314 = cpu->r[1] + 0x00000014u;
|
|
/* 022AB93C */ rbrew_write16(cpu->mem, _t314, (uint16_t)cpu->r[28]);
|
|
/* 022AB940 */ cpu->r[5] = 0x00000006u;
|
|
/* 022AB944 */ cpu->r[12] = cpu->r[12] + 0xFFFFDC68u;
|
|
/* 022AB948 */ _t315 = cpu->r[1] + 0x00000018u;
|
|
/* 022AB948 */ rbrew_write32(cpu->mem, _t315, cpu->r[4]);
|
|
/* 022AB94C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AB950 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022AB954 */ _t316 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AB954 */ rbrew_write16(cpu->mem, _t316, (uint16_t)cpu->r[0]);
|
|
/* 022AB958 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AB95C */ cpu->r[9] = cpu->r[9] + 0xFFFFE784u;
|
|
/* 022AB960 */ _t317 = cpu->r[1] + 0x00000008u;
|
|
/* 022AB960 */ rbrew_write8(cpu->mem, _t317, (uint8_t)cpu->r[5]);
|
|
/* 022AB964 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022AB968 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AB96C */ _t318 = cpu->r[1] + 0x00000020u;
|
|
/* 022AB96C */ rbrew_write32(cpu->mem, _t318, cpu->r[12]);
|
|
/* 022AB970 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AB974 */ _t319 = cpu->r[1] + 0x00000028u;
|
|
/* 022AB974 */ rbrew_write32(cpu->mem, _t319, cpu->r[9]);
|
|
/* 022AB978 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022AB97C */ cpu->r[10] = 0x10060000u;
|
|
/* 022AB980 */ _t320 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB980 */ rbrew_write32(cpu->mem, _t320, cpu->r[27]);
|
|
/* 022AB984 */ cpu->r[10] = cpu->r[10] + 0x0000250Cu;
|
|
/* 022AB988 */ _t321 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB988 */ rbrew_write32(cpu->mem, _t321, cpu->r[10]);
|
|
/* 022AB98C */ _t322 = cpu->r[29] + 0x00000214u;
|
|
/* 022AB98C */ cpu->r[0] = rbrew_read32(cpu->mem, _t322);
|
|
/* 022AB990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000007u);
|
|
/* 022AB994 */ _t323 = cpu->r[29] + 0x00000218u;
|
|
/* 022AB994 */ cpu->r[25] = rbrew_read32(cpu->mem, _t323);
|
|
/* 022AB998 */ _t324 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB998 */ _t325 = _t324 & 0x00000001u;
|
|
/* 022AB998 */ if (_t325) goto L_022AB99C; else goto L_022AB9A0;
|
|
L_022AB99C: ; // 0x22ab99c
|
|
/* 022AB99C */ cpu->r[25] = cpu->r[25] + 0x000000FCu;
|
|
L_022AB9A0: ; // 0x22ab9a0
|
|
/* 022AB9A0 */ cpu->ctr = cpu->r[26];
|
|
/* 022AB9A4 */ _t326 = cpu->r[25] + 0x00000000u;
|
|
/* 022AB9A4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t326);
|
|
/* 022AB9A8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB9AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AB9B0 */ _t327 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AB9B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t327);
|
|
/* 022AB9B4 */ _t328 = cpu->r[12] + 0x00000000u;
|
|
/* 022AB9B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t328);
|
|
/* 022AB9B8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AB9BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022AB9C0 */ cpu->r[4] = 0x00080000u;
|
|
/* 022AB9C4 */ _t329 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB9C4 */ _t330 = _t329 & 0x00000001u;
|
|
/* 022AB9C4 */ if (_t330) goto L_022AB9EC; else goto L_022AB9C8;
|
|
L_022AB9C8: ; // 0x22ab9c8
|
|
/* 022AB9C8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022AB9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 022AB9D0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022AB9D4 */ _t331 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AB9D4 */ _t332 = _t331 & 0x00000001u;
|
|
/* 022AB9D4 */ if (_t332) goto L_022AB9E8; else goto L_022AB9D8;
|
|
L_022AB9D8: ; // 0x22ab9d8
|
|
/* 022AB9D8 */ _t333 = cpu->r[12] + 0x00000000u;
|
|
/* 022AB9D8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t333);
|
|
/* 022AB9DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022AB9E0 */ _t334 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AB9E0 */ _t335 = _t334 & 0x00000001u;
|
|
/* 022AB9E0 */ if (_t335) goto L_022AB9E4; else goto L_022AB9C8;
|
|
L_022AB9E4: ; // 0x22ab9e4
|
|
/* 022AB9E4 */ goto L_022AB9EC;
|
|
L_022AB9E8: ; // 0x22ab9e8
|
|
/* 022AB9E8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AB9EC: ; // 0x22ab9ec
|
|
/* 022AB9EC */ _t336 = cpu->r[25] + 0x00000008u;
|
|
/* 022AB9EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t336);
|
|
/* 022AB9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[7]);
|
|
/* 022AB9F4 */ _t337 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AB9F4 */ _t338 = _t337 & 0x00000001u;
|
|
/* 022AB9F4 */ if (_t338) goto L_022AB9FC; else goto L_022AB9F8;
|
|
L_022AB9F8: ; // 0x22ab9f8
|
|
/* 022AB9F8 */ cpu->r[31] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022AB9FC: ; // 0x22ab9fc
|
|
/* 022AB9FC */ _t339 = cpu->r[1] + 0x00000010u;
|
|
/* 022AB9FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t339);
|
|
/* 022ABA00 */ _t340 = cpu->r[7] + 0x00000014u;
|
|
/* 022ABA00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t340);
|
|
/* 022ABA04 */ cpu->ctr = cpu->r[9];
|
|
/* 022ABA08 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABA0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABA10 */ _t341 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABA10 */ cpu->r[4] = rbrew_read32(cpu->mem, _t341);
|
|
/* 022ABA14 */ cpu->r[3] = cpu->r[24];
|
|
/* 022ABA18 */ cpu->r[5] = cpu->r[31];
|
|
/* 022ABA1C */ cpu->r[6] = 0x00000000u;
|
|
/* 022ABA20 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022ABA24 */ _t342 = cpu->r[24] + cpu->r[31];
|
|
/* 022ABA24 */ rbrew_write8(cpu->mem, _t342, (uint8_t)cpu->r[30]);
|
|
/* 022ABA28 */ cpu->r[11] = 0x022B0000u;
|
|
/* 022ABA2C */ _t343 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABA2C */ rbrew_write16(cpu->mem, _t343, (uint16_t)cpu->r[28]);
|
|
/* 022ABA30 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD30u;
|
|
/* 022ABA34 */ _t344 = cpu->r[1] + 0x00000024u;
|
|
/* 022ABA34 */ rbrew_write16(cpu->mem, _t344, (uint16_t)cpu->r[28]);
|
|
/* 022ABA38 */ cpu->r[7] = 0xFFFFFFFFu;
|
|
/* 022ABA3C */ _t345 = cpu->r[1] + 0x00000020u;
|
|
/* 022ABA3C */ rbrew_write32(cpu->mem, _t345, cpu->r[11]);
|
|
/* 022ABA40 */ cpu->r[5] = 0x022B0000u;
|
|
/* 022ABA44 */ _t346 = cpu->r[1] + 0x00000026u;
|
|
/* 022ABA44 */ rbrew_write16(cpu->mem, _t346, (uint16_t)cpu->r[7]);
|
|
/* 022ABA48 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022ABA4C */ _t347 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022ABA4C */ rbrew_write16(cpu->mem, _t347, (uint16_t)cpu->r[7]);
|
|
/* 022ABA50 */ cpu->r[12] = 0x00000007u;
|
|
/* 022ABA54 */ _t348 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABA54 */ rbrew_write16(cpu->mem, _t348, (uint16_t)cpu->r[28]);
|
|
/* 022ABA58 */ cpu->r[8] = cpu->r[8] + 0xFFFFE78Cu;
|
|
/* 022ABA5C */ cpu->r[5] = cpu->r[5] + 0xFFFFE788u;
|
|
/* 022ABA60 */ _t349 = cpu->r[1] + 0x00000016u;
|
|
/* 022ABA60 */ rbrew_write16(cpu->mem, _t349, (uint16_t)cpu->r[7]);
|
|
/* 022ABA64 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABA68 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABA6C */ _t350 = cpu->r[1] + 0x00000018u;
|
|
/* 022ABA6C */ rbrew_write32(cpu->mem, _t350, cpu->r[5]);
|
|
/* 022ABA70 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022ABA74 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABA78 */ _t351 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABA78 */ rbrew_write8(cpu->mem, _t351, (uint8_t)cpu->r[12]);
|
|
/* 022ABA7C */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022ABA80 */ _t352 = cpu->r[1] + 0x00000028u;
|
|
/* 022ABA80 */ rbrew_write32(cpu->mem, _t352, cpu->r[8]);
|
|
/* 022ABA84 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022ABA88 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ABA8C */ _t353 = cpu->r[1] + 0x00000010u;
|
|
/* 022ABA8C */ rbrew_write32(cpu->mem, _t353, cpu->r[27]);
|
|
/* 022ABA90 */ cpu->r[10] = cpu->r[10] + 0x0000251Cu;
|
|
/* 022ABA94 */ _t354 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABA94 */ rbrew_write32(cpu->mem, _t354, cpu->r[10]);
|
|
/* 022ABA98 */ _t355 = cpu->r[29] + 0x00000214u;
|
|
/* 022ABA98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t355);
|
|
/* 022ABA9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000008u);
|
|
/* 022ABAA0 */ _t356 = cpu->r[29] + 0x00000218u;
|
|
/* 022ABAA0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t356);
|
|
/* 022ABAA4 */ _t357 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ABAA4 */ _t358 = _t357 & 0x00000001u;
|
|
/* 022ABAA4 */ if (_t358) goto L_022ABAA8; else goto L_022ABAAC;
|
|
L_022ABAA8: ; // 0x22abaa8
|
|
/* 022ABAA8 */ cpu->r[25] = cpu->r[25] + 0x00000120u;
|
|
L_022ABAAC: ; // 0x22abaac
|
|
/* 022ABAAC */ cpu->ctr = cpu->r[26];
|
|
/* 022ABAB0 */ _t359 = cpu->r[25] + 0x00000000u;
|
|
/* 022ABAB0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t359);
|
|
/* 022ABAB4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABAB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABABC */ _t360 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABABC */ cpu->r[8] = rbrew_read32(cpu->mem, _t360);
|
|
/* 022ABAC0 */ _t361 = cpu->r[8] + 0x00000000u;
|
|
/* 022ABAC0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t361);
|
|
/* 022ABAC4 */ cpu->r[31] = 0x00000000u;
|
|
/* 022ABAC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 022ABACC */ cpu->r[10] = 0x00080000u;
|
|
/* 022ABAD0 */ _t362 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABAD0 */ _t363 = _t362 & 0x00000001u;
|
|
/* 022ABAD0 */ if (_t363) goto L_022ABAF8; else goto L_022ABAD4;
|
|
L_022ABAD4: ; // 0x22abad4
|
|
/* 022ABAD4 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022ABAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 022ABADC */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022ABAE0 */ _t364 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ABAE0 */ _t365 = _t364 & 0x00000001u;
|
|
/* 022ABAE0 */ if (_t365) goto L_022ABAF4; else goto L_022ABAE4;
|
|
L_022ABAE4: ; // 0x22abae4
|
|
/* 022ABAE4 */ _t366 = cpu->r[8] + 0x00000000u;
|
|
/* 022ABAE4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t366);
|
|
/* 022ABAE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 022ABAEC */ _t367 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABAEC */ _t368 = _t367 & 0x00000001u;
|
|
/* 022ABAEC */ if (_t368) goto L_022ABAF0; else goto L_022ABAD4;
|
|
L_022ABAF0: ; // 0x22abaf0
|
|
/* 022ABAF0 */ goto L_022ABAF8;
|
|
L_022ABAF4: ; // 0x22abaf4
|
|
/* 022ABAF4 */ cpu->r[31] = 0x00000000u;
|
|
L_022ABAF8: ; // 0x22abaf8
|
|
/* 022ABAF8 */ _t369 = cpu->r[25] + 0x00000008u;
|
|
/* 022ABAF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t369);
|
|
/* 022ABAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 022ABB00 */ _t370 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ABB00 */ _t371 = _t370 & 0x00000001u;
|
|
/* 022ABB00 */ if (_t371) goto L_022ABB08; else goto L_022ABB04;
|
|
L_022ABB04: ; // 0x22abb04
|
|
/* 022ABB04 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022ABB08: ; // 0x22abb08
|
|
/* 022ABB08 */ _t372 = cpu->r[1] + 0x00000010u;
|
|
/* 022ABB08 */ cpu->r[8] = rbrew_read32(cpu->mem, _t372);
|
|
/* 022ABB0C */ _t373 = cpu->r[8] + 0x00000014u;
|
|
/* 022ABB0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t373);
|
|
/* 022ABB10 */ cpu->ctr = cpu->r[9];
|
|
/* 022ABB14 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABB18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABB1C */ _t374 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABB1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t374);
|
|
/* 022ABB20 */ cpu->r[3] = cpu->r[24];
|
|
/* 022ABB24 */ cpu->r[5] = cpu->r[31];
|
|
/* 022ABB28 */ cpu->r[6] = 0x00000000u;
|
|
/* 022ABB2C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022ABB30 */ _t375 = cpu->r[24] + cpu->r[31];
|
|
/* 022ABB30 */ rbrew_write8(cpu->mem, _t375, (uint8_t)cpu->r[30]);
|
|
/* 022ABB34 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022ABB38 */ _t376 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABB38 */ rbrew_write16(cpu->mem, _t376, (uint16_t)cpu->r[28]);
|
|
/* 022ABB3C */ cpu->r[12] = cpu->r[12] + 0xFFFFDDD0u;
|
|
/* 022ABB40 */ _t377 = cpu->r[1] + 0x00000024u;
|
|
/* 022ABB40 */ rbrew_write16(cpu->mem, _t377, (uint16_t)cpu->r[28]);
|
|
/* 022ABB44 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022ABB48 */ _t378 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABB48 */ rbrew_write16(cpu->mem, _t378, (uint16_t)cpu->r[28]);
|
|
/* 022ABB4C */ cpu->r[5] = 0x022B0000u;
|
|
/* 022ABB50 */ _t379 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022ABB50 */ rbrew_write16(cpu->mem, _t379, (uint16_t)cpu->r[0]);
|
|
/* 022ABB54 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABB58 */ _t380 = cpu->r[1] + 0x00000020u;
|
|
/* 022ABB58 */ rbrew_write32(cpu->mem, _t380, cpu->r[12]);
|
|
/* 022ABB5C */ cpu->r[5] = cpu->r[5] + 0xFFFFE790u;
|
|
/* 022ABB60 */ cpu->r[9] = 0x00000008u;
|
|
/* 022ABB64 */ _t381 = cpu->r[1] + 0x00000026u;
|
|
/* 022ABB64 */ rbrew_write16(cpu->mem, _t381, (uint16_t)cpu->r[0]);
|
|
/* 022ABB68 */ cpu->r[8] = 0x022B0000u;
|
|
/* 022ABB6C */ _t382 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABB6C */ rbrew_write8(cpu->mem, _t382, (uint8_t)cpu->r[9]);
|
|
/* 022ABB70 */ cpu->r[8] = cpu->r[8] + 0xFFFFE794u;
|
|
/* 022ABB74 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABB78 */ _t383 = cpu->r[1] + 0x00000018u;
|
|
/* 022ABB78 */ rbrew_write32(cpu->mem, _t383, cpu->r[5]);
|
|
/* 022ABB7C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022ABB80 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABB84 */ _t384 = cpu->r[1] + 0x00000016u;
|
|
/* 022ABB84 */ rbrew_write16(cpu->mem, _t384, (uint16_t)cpu->r[0]);
|
|
/* 022ABB88 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022ABB8C */ _t385 = cpu->r[1] + 0x00000028u;
|
|
/* 022ABB8C */ rbrew_write32(cpu->mem, _t385, cpu->r[8]);
|
|
/* 022ABB90 */ Gambit_fn_022AEBD4(cpu);
|
|
/* 022ABB94 */ cpu->r[0] = 0x10060000u;
|
|
/* 022ABB98 */ _t386 = cpu->r[1] + 0x00000010u;
|
|
/* 022ABB98 */ rbrew_write32(cpu->mem, _t386, cpu->r[27]);
|
|
/* 022ABB9C */ cpu->r[0] = cpu->r[0] + 0x0000252Cu;
|
|
/* 022ABBA0 */ _t387 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABBA0 */ rbrew_write32(cpu->mem, _t387, cpu->r[0]);
|
|
/* 022ABBA4 */ _t388 = cpu->r[29] + 0x00000214u;
|
|
/* 022ABBA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t388);
|
|
/* 022ABBA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000009u);
|
|
/* 022ABBAC */ _t389 = cpu->r[29] + 0x00000218u;
|
|
/* 022ABBAC */ cpu->r[27] = rbrew_read32(cpu->mem, _t389);
|
|
/* 022ABBB0 */ _t390 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ABBB0 */ _t391 = _t390 & 0x00000001u;
|
|
/* 022ABBB0 */ if (_t391) goto L_022ABBB4; else goto L_022ABBB8;
|
|
L_022ABBB4: ; // 0x22abbb4
|
|
/* 022ABBB4 */ cpu->r[27] = cpu->r[27] + 0x00000144u;
|
|
L_022ABBB8: ; // 0x22abbb8
|
|
/* 022ABBB8 */ cpu->ctr = cpu->r[26];
|
|
/* 022ABBBC */ _t392 = cpu->r[27] + 0x00000000u;
|
|
/* 022ABBBC */ cpu->r[25] = rbrew_read32(cpu->mem, _t392);
|
|
/* 022ABBC0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABBC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABBC8 */ _t393 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABBC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t393);
|
|
/* 022ABBCC */ _t394 = cpu->r[12] + 0x00000000u;
|
|
/* 022ABBCC */ cpu->r[7] = rbrew_read8(cpu->mem, _t394);
|
|
/* 022ABBD0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022ABBD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 022ABBD8 */ cpu->r[5] = 0x00080000u;
|
|
/* 022ABBDC */ _t395 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABBDC */ _t396 = _t395 & 0x00000001u;
|
|
/* 022ABBDC */ if (_t396) goto L_022ABC04; else goto L_022ABBE0;
|
|
L_022ABBE0: ; // 0x22abbe0
|
|
/* 022ABBE0 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 022ABBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 022ABBE8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022ABBEC */ _t397 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ABBEC */ _t398 = _t397 & 0x00000001u;
|
|
/* 022ABBEC */ if (_t398) goto L_022ABC00; else goto L_022ABBF0;
|
|
L_022ABBF0: ; // 0x22abbf0
|
|
/* 022ABBF0 */ _t399 = cpu->r[12] + 0x00000000u;
|
|
/* 022ABBF0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t399);
|
|
/* 022ABBF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 022ABBF8 */ _t400 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABBF8 */ _t401 = _t400 & 0x00000001u;
|
|
/* 022ABBF8 */ if (_t401) goto L_022ABBFC; else goto L_022ABBE0;
|
|
L_022ABBFC: ; // 0x22abbfc
|
|
/* 022ABBFC */ goto L_022ABC04;
|
|
L_022ABC00: ; // 0x22abc00
|
|
/* 022ABC00 */ cpu->r[31] = 0x00000000u;
|
|
L_022ABC04: ; // 0x22abc04
|
|
/* 022ABC04 */ _t402 = cpu->r[27] + 0x00000008u;
|
|
/* 022ABC04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t402);
|
|
/* 022ABC08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 022ABC0C */ _t403 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ABC0C */ _t404 = _t403 & 0x00000001u;
|
|
/* 022ABC0C */ if (_t404) goto L_022ABC14; else goto L_022ABC10;
|
|
L_022ABC10: ; // 0x22abc10
|
|
/* 022ABC10 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_022ABC14: ; // 0x22abc14
|
|
/* 022ABC14 */ _t405 = cpu->r[1] + 0x00000010u;
|
|
/* 022ABC14 */ cpu->r[9] = rbrew_read32(cpu->mem, _t405);
|
|
/* 022ABC18 */ _t406 = cpu->r[9] + 0x00000014u;
|
|
/* 022ABC18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t406);
|
|
/* 022ABC1C */ cpu->ctr = cpu->r[0];
|
|
/* 022ABC20 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABC24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABC28 */ _t407 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABC28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t407);
|
|
/* 022ABC2C */ cpu->r[3] = cpu->r[25];
|
|
/* 022ABC30 */ cpu->r[5] = cpu->r[31];
|
|
/* 022ABC34 */ cpu->r[6] = 0x00000000u;
|
|
/* 022ABC38 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022ABC3C */ _t408 = cpu->r[25] + cpu->r[31];
|
|
/* 022ABC3C */ rbrew_write8(cpu->mem, _t408, (uint8_t)cpu->r[30]);
|
|
/* 022ABC40 */ cpu->r[0] = 0x00000009u;
|
|
/* 022ABC44 */ _t409 = cpu->r[1] + 0x00000028u;
|
|
/* 022ABC44 */ rbrew_write32(cpu->mem, _t409, cpu->r[28]);
|
|
/* 022ABC48 */ cpu->r[4] = 0x022B0000u;
|
|
/* 022ABC4C */ _t410 = cpu->r[1] + 0x00000026u;
|
|
/* 022ABC4C */ rbrew_write16(cpu->mem, _t410, (uint16_t)cpu->r[28]);
|
|
/* 022ABC50 */ cpu->r[4] = cpu->r[4] + 0xFFFFDE98u;
|
|
/* 022ABC54 */ _t411 = cpu->r[1] + 0x00000024u;
|
|
/* 022ABC54 */ rbrew_write16(cpu->mem, _t411, (uint16_t)cpu->r[28]);
|
|
/* 022ABC58 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 022ABC5C */ _t412 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABC5C */ rbrew_write16(cpu->mem, _t412, (uint16_t)cpu->r[28]);
|
|
/* 022ABC60 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABC64 */ _t413 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABC64 */ rbrew_write8(cpu->mem, _t413, (uint8_t)cpu->r[0]);
|
|
/* 022ABC68 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022ABC6C */ _t414 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022ABC6C */ rbrew_write16(cpu->mem, _t414, (uint16_t)cpu->r[12]);
|
|
/* 022ABC70 */ cpu->r[0] = cpu->r[0] + 0xFFFFE798u;
|
|
/* 022ABC74 */ _t415 = cpu->r[1] + 0x00000020u;
|
|
/* 022ABC74 */ rbrew_write32(cpu->mem, _t415, cpu->r[4]);
|
|
/* 022ABC78 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABC7C */ _t416 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABC7C */ rbrew_write16(cpu->mem, _t416, (uint16_t)cpu->r[28]);
|
|
/* 022ABC80 */ cpu->r[3] = cpu->r[29] + 0x00000200u;
|
|
/* 022ABC84 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022ABC88 */ _t417 = cpu->r[1] + 0x00000018u;
|
|
/* 022ABC88 */ rbrew_write32(cpu->mem, _t417, cpu->r[0]);
|
|
/* 022ABC8C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABC90 */ _t418 = cpu->r[1] + 0x00000016u;
|
|
/* 022ABC90 */ rbrew_write16(cpu->mem, _t418, (uint16_t)cpu->r[12]);
|
|
/* 022ABC94 */ Gambit_fn_022AEBD4(cpu);
|
|
L_022ABC98: ; // 0x22abc98
|
|
/* 022ABC98 */ cpu->r[3] = cpu->r[29];
|
|
/* 022ABC9C */ /* nop */
|
|
/* 022ABCA0 */ _t419 = cpu->r[1] + 0x00000054u;
|
|
/* 022ABCA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t419);
|
|
/* 022ABCA4 */ cpu->lr = cpu->r[0];
|
|
/* 022ABCA8 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022ABCAC */ return;
|
|
}
|
|
|
|
// fn_022ABCB0 @ 0x22abcb0
|
|
void Gambit_fn_022ABCB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022ABCB0: ; // 0x22abcb0
|
|
/* 022ABCB0 */ cpu->r[0] = cpu->lr;
|
|
/* 022ABCB4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABCB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABCB4 */ cpu->r[1] = _t0;
|
|
/* 022ABCB8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABCB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ABCBC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABCBC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ABCC0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABCC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABCC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ABCC8 */ _t4 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABCC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABCCC */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABCD0 */ Gambit_fn_0203F288(cpu);
|
|
/* 022ABCD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022ABCD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABCDC */ _t5 = cpu->r[31] + 0x000001ECu;
|
|
/* 022ABCDC */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022ABCE0 */ Gambit_fn_02274300(cpu);
|
|
/* 022ABCE4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ABCE8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABCE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ABCEC */ cpu->lr = cpu->r[0];
|
|
/* 022ABCF0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABCF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABCF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABCF8 */ return;
|
|
}
|
|
|
|
// fn_022ABCB4 @ 0x22abcb4
|
|
void Gambit_fn_022ABCB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022ABCB4: ; // 0x22abcb4
|
|
/* 022ABCB4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABCB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABCB4 */ cpu->r[1] = _t0;
|
|
/* 022ABCB8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABCB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ABCBC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABCBC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ABCC0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABCC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABCC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ABCC8 */ _t4 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABCC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABCCC */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABCD0 */ Gambit_fn_0203F288(cpu);
|
|
/* 022ABCD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022ABCD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABCDC */ _t5 = cpu->r[31] + 0x000001ECu;
|
|
/* 022ABCDC */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022ABCE0 */ Gambit_fn_02274300(cpu);
|
|
/* 022ABCE4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ABCE8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABCE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ABCEC */ cpu->lr = cpu->r[0];
|
|
/* 022ABCF0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABCF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABCF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABCF8 */ return;
|
|
}
|
|
|
|
// fn_022ABCFC @ 0x22abcfc
|
|
void Gambit_fn_022ABCFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022ABCFC: ; // 0x22abcfc
|
|
/* 022ABCFC */ cpu->r[0] = cpu->lr;
|
|
/* 022ABD00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABD00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD00 */ cpu->r[1] = _t0;
|
|
/* 022ABD04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABD04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ABD08 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD08 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ABD0C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABD10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ABD14 */ _t4 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABD14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABD18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABD1C */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022ABD20 */ cpu->r[0] = 0x00000000u;
|
|
/* 022ABD24 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABD28 */ _t5 = cpu->r[31] + 0x000001ECu;
|
|
/* 022ABD28 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022ABD2C */ Gambit_fn_02274380(cpu);
|
|
/* 022ABD30 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ABD34 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABD34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ABD38 */ cpu->lr = cpu->r[0];
|
|
/* 022ABD3C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABD40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABD44 */ return;
|
|
}
|
|
|
|
// fn_022ABD00 @ 0x22abd00
|
|
void Gambit_fn_022ABD00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022ABD00: ; // 0x22abd00
|
|
/* 022ABD00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABD00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD00 */ cpu->r[1] = _t0;
|
|
/* 022ABD04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABD04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ABD08 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD08 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ABD0C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABD10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ABD14 */ _t4 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABD14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABD18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABD1C */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022ABD20 */ cpu->r[0] = 0x00000000u;
|
|
/* 022ABD24 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABD28 */ _t5 = cpu->r[31] + 0x000001ECu;
|
|
/* 022ABD28 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 022ABD2C */ Gambit_fn_02274380(cpu);
|
|
/* 022ABD30 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ABD34 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABD34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ABD38 */ cpu->lr = cpu->r[0];
|
|
/* 022ABD3C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABD40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABD44 */ return;
|
|
}
|
|
|
|
// fn_022ABD48 @ 0x22abd48
|
|
void Gambit_fn_022ABD48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022ABD48: ; // 0x22abd48
|
|
/* 022ABD48 */ cpu->r[0] = cpu->lr;
|
|
/* 022ABD4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABD4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD4C */ cpu->r[1] = _t0;
|
|
/* 022ABD50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ABD54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ABD58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ABD5C */ _t3 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022ABD5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022ABD60 */ _t4 = cpu->r[3] + 0x000023B8u;
|
|
/* 022ABD60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABD64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ABD68 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABD68 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022ABD68 */ if (_t6) goto L_022ABD74; else goto L_022ABD6C;
|
|
L_022ABD6C: ; // 0x22abd6c
|
|
/* 022ABD6C */ Gambit_fn_022B9D30(cpu);
|
|
/* 022ABD70 */ _t7 = cpu->r[31] + 0x000002F4u;
|
|
/* 022ABD70 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
L_022ABD74: ; // 0x22abd74
|
|
/* 022ABD74 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABD78 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022ABD7C */ cpu->lr = cpu->r[0];
|
|
/* 022ABD80 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABD84 */ return;
|
|
}
|
|
|
|
// fn_022ABD4C @ 0x22abd4c
|
|
void Gambit_fn_022ABD4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_022ABD4C: ; // 0x22abd4c
|
|
/* 022ABD4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ABD4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD4C */ cpu->r[1] = _t0;
|
|
/* 022ABD50 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ABD54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ABD58 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD58 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ABD5C */ _t3 = cpu->r[31] + 0x0000005Cu;
|
|
/* 022ABD5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022ABD60 */ _t4 = cpu->r[3] + 0x000023B8u;
|
|
/* 022ABD60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABD64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ABD68 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABD68 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022ABD68 */ if (_t6) goto L_022ABD74; else goto L_022ABD6C;
|
|
L_022ABD6C: ; // 0x22abd6c
|
|
/* 022ABD6C */ Gambit_fn_022B9D30(cpu);
|
|
/* 022ABD70 */ _t7 = cpu->r[31] + 0x000002F4u;
|
|
/* 022ABD70 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
L_022ABD74: ; // 0x22abd74
|
|
/* 022ABD74 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022ABD74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ABD78 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABD78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022ABD7C */ cpu->lr = cpu->r[0];
|
|
/* 022ABD80 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABD84 */ return;
|
|
}
|
|
|
|
// fn_022ABD88 @ 0x22abd88
|
|
void Gambit_fn_022ABD88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_022ABD88: ; // 0x22abd88
|
|
/* 022ABD88 */ cpu->r[0] = cpu->lr;
|
|
/* 022ABD8C */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 022ABD8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD8C */ cpu->r[1] = _t0;
|
|
/* 022ABD90 */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 022ABD90 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022ABD94 */ _t2 = cpu->r[1] + 0x000000B8u;
|
|
/* 022ABD94 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022ABD98 */ _t3 = cpu->r[1] + 0x000000B4u;
|
|
/* 022ABD98 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022ABD9C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABDA0 */ _t4 = cpu->r[1] + 0x000000BCu;
|
|
/* 022ABDA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022ABDA4 */ cpu->r[3] = 0x00000010u;
|
|
/* 022ABDA8 */ _t5 = cpu->r[1] + 0x000000C4u;
|
|
/* 022ABDA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022ABDAC */ Gambit_fn_02801A78(cpu);
|
|
/* 022ABDB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ABDB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ABDB4 */ cpu->r[29] = 0x00000000u;
|
|
/* 022ABDB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022ABDB8 */ if (_t7) goto L_022ABE04; else goto L_022ABDBC;
|
|
L_022ABDBC: ; // 0x22abdbc
|
|
/* 022ABDBC */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ABDC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022ABDC0 */ if (_t9) goto L_022ABDC4; else goto L_022ABDD4;
|
|
L_022ABDC4: ; // 0x22abdc4
|
|
/* 022ABDC4 */ cpu->r[3] = 0x00000008u;
|
|
/* 022ABDC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ABDCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ABDD0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDD0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022ABDD0 */ if (_t11) goto L_022ABDE4; else goto L_022ABDD4;
|
|
L_022ABDD4: ; // 0x22abdd4
|
|
/* 022ABDD4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022ABDD8 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 022ABDD8 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022ABDDC */ cpu->r[7] = cpu->r[7] + 0x0000234Cu;
|
|
/* 022ABDE0 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 022ABDE0 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
L_022ABDE4: ; // 0x22abde4
|
|
/* 022ABDE4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022ABDE8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ABDEC */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 022ABDEC */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022ABDF0 */ cpu->r[8] = cpu->r[8] + 0x000023ACu;
|
|
/* 022ABDF4 */ _t15 = cpu->r[12] + 0x000025ACu;
|
|
/* 022ABDF4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022ABDF8 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 022ABDF8 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 022ABDFC */ _t17 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022ABDFC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022ABE00 */ goto L_022ABE08;
|
|
L_022ABE04: ; // 0x22abe04
|
|
/* 022ABE04 */ cpu->r[31] = 0x00000000u;
|
|
L_022ABE08: ; // 0x22abe08
|
|
/* 022ABE08 */ cpu->r[4] = cpu->r[30];
|
|
/* 022ABE0C */ cpu->r[3] = 0x00000000u;
|
|
/* 022ABE10 */ _t18 = cpu->r[30] + 0x00000238u;
|
|
/* 022ABE10 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 022ABE14 */ Gambit_fn_0224BECC(cpu);
|
|
/* 022ABE18 */ cpu->r[4] = cpu->r[30];
|
|
/* 022ABE1C */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022ABE1C */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 022ABE20 */ cpu->r[3] = 0x00000000u;
|
|
/* 022ABE24 */ Gambit_fn_023B15AC(cpu);
|
|
/* 022ABE28 */ _t20 = cpu->r[30] + 0x00000004u;
|
|
/* 022ABE28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022ABE2C */ _t21 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABE2C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022ABE30 */ _t22 = cpu->r[11] + 0x000002C4u;
|
|
/* 022ABE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022ABE34 */ cpu->ctr = cpu->r[0];
|
|
/* 022ABE38 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABE3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABE40 */ cpu->r[31] = 0x10060000u;
|
|
/* 022ABE44 */ cpu->r[5] = 0x00000000u;
|
|
/* 022ABE48 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABE48 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 022ABE4C */ cpu->r[31] = cpu->r[31] + 0x000022ECu;
|
|
/* 022ABE50 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABE54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABE58 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABE58 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 022ABE5C */ cpu->r[6] = cpu->r[5];
|
|
/* 022ABE60 */ Gambit_fn_027C6980(cpu);
|
|
/* 022ABE64 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 022ABE64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022ABE68 */ _t26 = cpu->r[6] + 0x0000043Cu;
|
|
/* 022ABE68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022ABE6C */ cpu->ctr = cpu->r[0];
|
|
/* 022ABE70 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABE74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABE78 */ cpu->r[5] = cpu->r[3];
|
|
/* 022ABE7C */ cpu->r[4] = 0x10060000u;
|
|
/* 022ABE80 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABE84 */ cpu->r[4] = cpu->r[4] + 0x000025C8u;
|
|
/* 022ABE88 */ _t27 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 022ABE88 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022ABE88 */ if (_t28) goto L_022ABE8C; // else: addr-0 trap, fall-through
|
|
L_022ABE8C: ; // 0x22abe8c
|
|
/* 022ABE8C */ Gambit_fn_022AE0A4(cpu);
|
|
/* 022ABE90 */ cpu->r[5] = 0x00000000u;
|
|
/* 022ABE94 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABE98 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABE9C */ Gambit_fn_027C6C00(cpu);
|
|
/* 022ABEA0 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 022ABEA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022ABEA4 */ _t30 = cpu->r[10] + 0x00000014u;
|
|
/* 022ABEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022ABEA8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022ABEAC */ cpu->ctr = cpu->r[0];
|
|
/* 022ABEB0 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABEB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABEB8 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022ABEB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022ABEBC */ cpu->r[4] = cpu->r[28];
|
|
/* 022ABEC0 */ _t32 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABEC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022ABEC4 */ Gambit_fn_0204049C(cpu);
|
|
/* 022ABEC8 */ _t33 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABEC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022ABECC */ cpu->r[6] = 0x10060000u;
|
|
/* 022ABED0 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABED0 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 022ABED4 */ cpu->r[6] = cpu->r[6] + 0x000025B0u;
|
|
/* 022ABED8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEDC */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEDC */ rbrew_write32(cpu->mem, _t35, cpu->r[6]);
|
|
/* 022ABEE0 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABEE4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ABEE8 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022ABEE8 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022ABEEC */ cpu->r[9] = cpu->r[9] + 0x000025B8u;
|
|
/* 022ABEF0 */ _t37 = cpu->r[30] + 0x000002B0u;
|
|
/* 022ABEF0 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 022ABEF4 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEF4 */ rbrew_write32(cpu->mem, _t38, cpu->r[9]);
|
|
/* 022ABEF8 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABEF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022ABEFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF00 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABF00 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 022ABF04 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABF08 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ABF0C */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABF0C */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 022ABF10 */ cpu->r[10] = cpu->r[10] + 0x000025C0u;
|
|
/* 022ABF14 */ _t42 = cpu->r[30] + 0x000002ACu;
|
|
/* 022ABF14 */ rbrew_write32(cpu->mem, _t42, cpu->r[3]);
|
|
/* 022ABF18 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF18 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]);
|
|
/* 022ABF1C */ _t44 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABF1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022ABF20 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF24 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABF24 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 022ABF28 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABF2C */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 022ABF2C */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 022ABF30 */ _t47 = cpu->r[30] + 0x000002A8u;
|
|
/* 022ABF30 */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 022ABF34 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABF38 */ Gambit_fn_022ABD48(cpu);
|
|
/* 022ABF3C */ _t48 = cpu->r[30] + 0x00000070u;
|
|
/* 022ABF3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022ABF40 */ _t49 = cpu->r[30] + 0x00000300u;
|
|
/* 022ABF40 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[29]);
|
|
/* 022ABF44 */ _t50 = cpu->r[7] + 0x00000018u;
|
|
/* 022ABF44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022ABF48 */ cpu->r[12] = cpu->r[30] + 0x000002E4u;
|
|
/* 022ABF4C */ _t51 = cpu->r[8] + 0x0000001Cu;
|
|
/* 022ABF4C */ rbrew_write32(cpu->mem, _t51, cpu->r[12]);
|
|
/* 022ABF50 */ _t52 = cpu->r[1] + 0x000000B0u;
|
|
/* 022ABF50 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022ABF54 */ _t53 = cpu->r[1] + 0x000000B4u;
|
|
/* 022ABF54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022ABF58 */ _t54 = cpu->r[1] + 0x000000C4u;
|
|
/* 022ABF58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022ABF5C */ _t55 = cpu->r[1] + 0x000000BCu;
|
|
/* 022ABF5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022ABF60 */ cpu->lr = cpu->r[0];
|
|
/* 022ABF64 */ _t56 = cpu->r[1] + 0x000000B8u;
|
|
/* 022ABF64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022ABF68 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 022ABF6C */ return;
|
|
}
|
|
|
|
// fn_022ABD8C @ 0x22abd8c
|
|
void Gambit_fn_022ABD8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56;
|
|
|
|
L_022ABD8C: ; // 0x22abd8c
|
|
/* 022ABD8C */ _t0 = cpu->r[1] + 0xFFFFFF40u;
|
|
/* 022ABD8C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABD8C */ cpu->r[1] = _t0;
|
|
/* 022ABD90 */ _t1 = cpu->r[1] + 0x000000B0u;
|
|
/* 022ABD90 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022ABD94 */ _t2 = cpu->r[1] + 0x000000B8u;
|
|
/* 022ABD94 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022ABD98 */ _t3 = cpu->r[1] + 0x000000B4u;
|
|
/* 022ABD98 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022ABD9C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ABDA0 */ _t4 = cpu->r[1] + 0x000000BCu;
|
|
/* 022ABDA0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022ABDA4 */ cpu->r[3] = 0x00000010u;
|
|
/* 022ABDA8 */ _t5 = cpu->r[1] + 0x000000C4u;
|
|
/* 022ABDA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022ABDAC */ Gambit_fn_02801A78(cpu);
|
|
/* 022ABDB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ABDB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ABDB4 */ cpu->r[29] = 0x00000000u;
|
|
/* 022ABDB8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDB8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022ABDB8 */ if (_t7) goto L_022ABE04; else goto L_022ABDBC;
|
|
L_022ABDBC: ; // 0x22abdbc
|
|
/* 022ABDBC */ cpu->r[3] = cpu->r[31];
|
|
/* 022ABDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ABDC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022ABDC0 */ if (_t9) goto L_022ABDC4; else goto L_022ABDD4;
|
|
L_022ABDC4: ; // 0x22abdc4
|
|
/* 022ABDC4 */ cpu->r[3] = 0x00000008u;
|
|
/* 022ABDC8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ABDCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ABDD0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ABDD0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022ABDD0 */ if (_t11) goto L_022ABDE4; else goto L_022ABDD4;
|
|
L_022ABDD4: ; // 0x22abdd4
|
|
/* 022ABDD4 */ cpu->r[7] = 0x10060000u;
|
|
/* 022ABDD8 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 022ABDD8 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 022ABDDC */ cpu->r[7] = cpu->r[7] + 0x0000234Cu;
|
|
/* 022ABDE0 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 022ABDE0 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
L_022ABDE4: ; // 0x22abde4
|
|
/* 022ABDE4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022ABDE8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ABDEC */ _t14 = cpu->r[31] + 0x00000008u;
|
|
/* 022ABDEC */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 022ABDF0 */ cpu->r[8] = cpu->r[8] + 0x000023ACu;
|
|
/* 022ABDF4 */ _t15 = cpu->r[12] + 0x000025ACu;
|
|
/* 022ABDF4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022ABDF8 */ _t16 = cpu->r[31] + 0x00000004u;
|
|
/* 022ABDF8 */ rbrew_write32(cpu->mem, _t16, cpu->r[8]);
|
|
/* 022ABDFC */ _t17 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022ABDFC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022ABE00 */ goto L_022ABE08;
|
|
L_022ABE04: ; // 0x22abe04
|
|
/* 022ABE04 */ cpu->r[31] = 0x00000000u;
|
|
L_022ABE08: ; // 0x22abe08
|
|
/* 022ABE08 */ cpu->r[4] = cpu->r[30];
|
|
/* 022ABE0C */ cpu->r[3] = 0x00000000u;
|
|
/* 022ABE10 */ _t18 = cpu->r[30] + 0x00000238u;
|
|
/* 022ABE10 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 022ABE14 */ Gambit_fn_0224BECC(cpu);
|
|
/* 022ABE18 */ cpu->r[4] = cpu->r[30];
|
|
/* 022ABE1C */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022ABE1C */ rbrew_write32(cpu->mem, _t19, cpu->r[3]);
|
|
/* 022ABE20 */ cpu->r[3] = 0x00000000u;
|
|
/* 022ABE24 */ Gambit_fn_023B15AC(cpu);
|
|
/* 022ABE28 */ _t20 = cpu->r[30] + 0x00000004u;
|
|
/* 022ABE28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022ABE2C */ _t21 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABE2C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 022ABE30 */ _t22 = cpu->r[11] + 0x000002C4u;
|
|
/* 022ABE30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022ABE34 */ cpu->ctr = cpu->r[0];
|
|
/* 022ABE38 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABE3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABE40 */ cpu->r[31] = 0x10060000u;
|
|
/* 022ABE44 */ cpu->r[5] = 0x00000000u;
|
|
/* 022ABE48 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABE48 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 022ABE4C */ cpu->r[31] = cpu->r[31] + 0x000022ECu;
|
|
/* 022ABE50 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABE54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABE58 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABE58 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 022ABE5C */ cpu->r[6] = cpu->r[5];
|
|
/* 022ABE60 */ Gambit_fn_027C6980(cpu);
|
|
/* 022ABE64 */ _t25 = cpu->r[30] + 0x00000004u;
|
|
/* 022ABE64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022ABE68 */ _t26 = cpu->r[6] + 0x0000043Cu;
|
|
/* 022ABE68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022ABE6C */ cpu->ctr = cpu->r[0];
|
|
/* 022ABE70 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABE74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABE78 */ cpu->r[5] = cpu->r[3];
|
|
/* 022ABE7C */ cpu->r[4] = 0x10060000u;
|
|
/* 022ABE80 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABE84 */ cpu->r[4] = cpu->r[4] + 0x000025C8u;
|
|
/* 022ABE88 */ _t27 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 022ABE88 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022ABE88 */ if (_t28) goto L_022ABE8C; // else: addr-0 trap, fall-through
|
|
L_022ABE8C: ; // 0x22abe8c
|
|
/* 022ABE8C */ Gambit_fn_022AE0A4(cpu);
|
|
/* 022ABE90 */ cpu->r[5] = 0x00000000u;
|
|
/* 022ABE94 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 022ABE98 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABE9C */ Gambit_fn_027C6C00(cpu);
|
|
/* 022ABEA0 */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 022ABEA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022ABEA4 */ _t30 = cpu->r[10] + 0x00000014u;
|
|
/* 022ABEA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022ABEA8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022ABEAC */ cpu->ctr = cpu->r[0];
|
|
/* 022ABEB0 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022ABEB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABEB8 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022ABEB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022ABEBC */ cpu->r[4] = cpu->r[28];
|
|
/* 022ABEC0 */ _t32 = cpu->r[30] + 0x000002A0u;
|
|
/* 022ABEC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022ABEC4 */ Gambit_fn_0204049C(cpu);
|
|
/* 022ABEC8 */ _t33 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABEC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022ABECC */ cpu->r[6] = 0x10060000u;
|
|
/* 022ABED0 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABED0 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 022ABED4 */ cpu->r[6] = cpu->r[6] + 0x000025B0u;
|
|
/* 022ABED8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEDC */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEDC */ rbrew_write32(cpu->mem, _t35, cpu->r[6]);
|
|
/* 022ABEE0 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABEE4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ABEE8 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022ABEE8 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022ABEEC */ cpu->r[9] = cpu->r[9] + 0x000025B8u;
|
|
/* 022ABEF0 */ _t37 = cpu->r[30] + 0x000002B0u;
|
|
/* 022ABEF0 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 022ABEF4 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABEF4 */ rbrew_write32(cpu->mem, _t38, cpu->r[9]);
|
|
/* 022ABEF8 */ _t39 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABEF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022ABEFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF00 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABF00 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 022ABF04 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABF08 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ABF0C */ _t41 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ABF0C */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 022ABF10 */ cpu->r[10] = cpu->r[10] + 0x000025C0u;
|
|
/* 022ABF14 */ _t42 = cpu->r[30] + 0x000002ACu;
|
|
/* 022ABF14 */ rbrew_write32(cpu->mem, _t42, cpu->r[3]);
|
|
/* 022ABF18 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF18 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]);
|
|
/* 022ABF1C */ _t44 = cpu->r[30] + 0x00000008u;
|
|
/* 022ABF1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022ABF20 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ABF24 */ _t45 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABF24 */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 022ABF28 */ Gambit_fn_029807A8(cpu);
|
|
/* 022ABF2C */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 022ABF2C */ rbrew_write32(cpu->mem, _t46, cpu->r[3]);
|
|
/* 022ABF30 */ _t47 = cpu->r[30] + 0x000002A8u;
|
|
/* 022ABF30 */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 022ABF34 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ABF38 */ Gambit_fn_022ABD48(cpu);
|
|
/* 022ABF3C */ _t48 = cpu->r[30] + 0x00000070u;
|
|
/* 022ABF3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022ABF40 */ _t49 = cpu->r[30] + 0x00000300u;
|
|
/* 022ABF40 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[29]);
|
|
/* 022ABF44 */ _t50 = cpu->r[7] + 0x00000018u;
|
|
/* 022ABF44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022ABF48 */ cpu->r[12] = cpu->r[30] + 0x000002E4u;
|
|
/* 022ABF4C */ _t51 = cpu->r[8] + 0x0000001Cu;
|
|
/* 022ABF4C */ rbrew_write32(cpu->mem, _t51, cpu->r[12]);
|
|
/* 022ABF50 */ _t52 = cpu->r[1] + 0x000000B0u;
|
|
/* 022ABF50 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022ABF54 */ _t53 = cpu->r[1] + 0x000000B4u;
|
|
/* 022ABF54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022ABF58 */ _t54 = cpu->r[1] + 0x000000C4u;
|
|
/* 022ABF58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022ABF5C */ _t55 = cpu->r[1] + 0x000000BCu;
|
|
/* 022ABF5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022ABF60 */ cpu->lr = cpu->r[0];
|
|
/* 022ABF64 */ _t56 = cpu->r[1] + 0x000000B8u;
|
|
/* 022ABF64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022ABF68 */ cpu->r[1] = cpu->r[1] + 0x000000C0u;
|
|
/* 022ABF6C */ return;
|
|
}
|
|
|
|
// fn_022ABF70 @ 0x22abf70
|
|
void Gambit_fn_022ABF70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116;
|
|
|
|
L_022ABF70: ; // 0x22abf70
|
|
/* 022ABF70 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 022ABF70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ABF70 */ cpu->r[1] = _t0;
|
|
/* 022ABF74 */ /* nop */
|
|
/* 022ABF78 */ cpu->r[0] = cpu->lr;
|
|
/* 022ABF7C */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 022ABF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022ABF80 */ cpu->r[29] = cpu->r[4];
|
|
/* 022ABF84 */ cpu->r[31] = cpu->r[6];
|
|
/* 022ABF88 */ cpu->r[28] = cpu->r[3];
|
|
/* 022ABF8C */ _t2 = cpu->r[31] + 0x00000000u;
|
|
/* 022ABF8C */ cpu->r[27] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t2);
|
|
/* 022ABF90 */ _t3 = cpu->r[28] + 0x00000008u;
|
|
/* 022ABF90 */ cpu->r[26] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022ABF94 */ cpu->r[4] = cpu->r[27];
|
|
/* 022ABF98 */ cpu->r[3] = cpu->r[26];
|
|
/* 022ABF9C */ cpu->r[30] = cpu->r[5];
|
|
/* 022ABFA0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022ABFA4 */ _t4 = cpu->r[26] + 0x0000001Cu;
|
|
/* 022ABFA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ABFA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 022ABFAC */ cpu->r[11] = 0x00000000u;
|
|
/* 022ABFB0 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ABFB0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022ABFB0 */ if (_t6) goto L_022ABFB4; else goto L_022ABFC0;
|
|
L_022ABFB4: ; // 0x22abfb4
|
|
/* 022ABFB4 */ _t7 = cpu->r[26] + 0x00000024u;
|
|
/* 022ABFB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ABFB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022ABFBC */ _t8 = cpu->r[10] + cpu->r[0];
|
|
/* 022ABFBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
L_022ABFC0: ; // 0x22abfc0
|
|
/* 022ABFC0 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 022ABFC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022ABFC4 */ _t10 = cpu->r[3] + 0x00000088u;
|
|
/* 022ABFC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022ABFC8 */ _t11 = cpu->r[7] + 0x00000074u;
|
|
/* 022ABFC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022ABFCC */ cpu->ctr = cpu->r[0];
|
|
/* 022ABFD0 */ _t12 = cpu->r[31] + 0x00000002u;
|
|
/* 022ABFD0 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 022ABFD4 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 022ABFD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ABFDC */ _t13 = cpu->r[1] + 0x00000058u;
|
|
/* 022ABFDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022ABFE0 */ _t14 = cpu->r[1] + 0x00000040u;
|
|
/* 022ABFE0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022ABFE4 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 022ABFE4 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 022ABFE8 */ _t16 = cpu->r[1] + 0x00000054u;
|
|
/* 022ABFE8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022ABFEC */ _t17 = cpu->r[1] + 0x00000038u;
|
|
/* 022ABFEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022ABFF0 */ _t18 = cpu->r[1] + 0x00000048u;
|
|
/* 022ABFF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022ABFF4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022ABFF4 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[11]);
|
|
/* 022ABFF8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ABFF8 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[12]);
|
|
/* 022ABFFC */ _t21 = cpu->r[1] + 0x00000050u;
|
|
/* 022ABFFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AC000 */ _t22 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC000 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AC004 */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC004 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022AC008 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC008 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 022AC00C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC00C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[7]);
|
|
/* 022AC010 */ _t26 = cpu->r[1] + 0x00000064u;
|
|
/* 022AC010 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022AC014 */ _t27 = cpu->r[1] + 0x00000060u;
|
|
/* 022AC014 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AC018 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC018 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[7]);
|
|
/* 022AC01C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC01C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022AC020 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC020 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022AC024 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC024 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[8]);
|
|
/* 022AC028 */ _t32 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC028 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[11]);
|
|
/* 022AC02C */ _t33 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC02C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 022AC030 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AC030 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022AC034 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC034 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 022AC038 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC03C */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC03C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[9]);
|
|
/* 022AC040 */ Gambit_fn_0204CAC0(cpu);
|
|
/* 022AC044 */ _t37 = cpu->r[29] + 0x000001CCu;
|
|
/* 022AC044 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AC048 */ _t38 = cpu->r[8] + 0x00000044u;
|
|
/* 022AC048 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AC04C */ cpu->ctr = cpu->r[9];
|
|
/* 022AC050 */ _t39 = cpu->r[28] + 0x0000017Cu;
|
|
/* 022AC050 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022AC054 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC05C */ _t40 = cpu->r[29] + 0x000001CCu;
|
|
/* 022AC05C */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022AC060 */ _t41 = cpu->r[10] + 0x0000002Cu;
|
|
/* 022AC060 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AC064 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC068 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC06C */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC074 */ _t42 = cpu->r[29] + 0x000001CCu;
|
|
/* 022AC074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AC078 */ _t43 = cpu->r[12] + 0x00000024u;
|
|
/* 022AC078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AC07C */ cpu->ctr = cpu->r[0];
|
|
/* 022AC080 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC084 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC088 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC088 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022AC08C */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC08C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022AC090 */ _t46 = cpu->r[29] + 0x00000204u;
|
|
/* 022AC090 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[13]);
|
|
/* 022AC094 */ _t47 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC094 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022AC098 */ _t48 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC098 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022AC09C */ _t49 = cpu->r[29] + 0x000001F4u;
|
|
/* 022AC09C */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 022AC0A0 */ _t50 = cpu->r[29] + 0x00000210u;
|
|
/* 022AC0A0 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[13]);
|
|
/* 022AC0A4 */ _t51 = cpu->r[29] + 0x00000200u;
|
|
/* 022AC0A4 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[12]);
|
|
/* 022AC0A8 */ _t52 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC0A8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022AC0AC */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC0AC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022AC0B0 */ _t54 = cpu->r[29] + 0x00000218u;
|
|
/* 022AC0B0 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[12]);
|
|
/* 022AC0B4 */ _t55 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC0B4 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022AC0B8 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC0B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022AC0BC */ _t57 = cpu->r[29] + 0x000001F0u;
|
|
/* 022AC0BC */ rbrew_write_f32(cpu->mem, _t57, cpu->f[6]);
|
|
/* 022AC0C0 */ _t58 = cpu->r[29] + 0x000001FCu;
|
|
/* 022AC0C0 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[8]);
|
|
/* 022AC0C4 */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC0C4 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t59);
|
|
/* 022AC0C8 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC0C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022AC0CC */ _t61 = cpu->r[29] + 0x00000208u;
|
|
/* 022AC0CC */ rbrew_write_f32(cpu->mem, _t61, cpu->f[9]);
|
|
/* 022AC0D0 */ _t62 = cpu->r[29] + 0x0000020Cu;
|
|
/* 022AC0D0 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[11]);
|
|
/* 022AC0D4 */ _t63 = cpu->r[29] + 0x000001F8u;
|
|
/* 022AC0D4 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[7]);
|
|
/* 022AC0D8 */ _t64 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC0D8 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022AC0DC */ _t65 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC0DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022AC0E0 */ _t66 = cpu->r[29] + 0x00000214u;
|
|
/* 022AC0E0 */ rbrew_write_f32(cpu->mem, _t66, cpu->f[10]);
|
|
/* 022AC0E4 */ _t67 = cpu->r[29] + 0x0000021Cu;
|
|
/* 022AC0E4 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[0]);
|
|
/* 022AC0E8 */ _t68 = cpu->r[30] + 0x00000000u;
|
|
/* 022AC0E8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022AC0EC */ _t69 = cpu->r[29] + 0x00000220u;
|
|
/* 022AC0EC */ rbrew_write_f32(cpu->mem, _t69, cpu->f[8]);
|
|
/* 022AC0F0 */ _t70 = cpu->r[30] + 0x00000004u;
|
|
/* 022AC0F0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022AC0F4 */ _t71 = cpu->r[29] + 0x00000224u;
|
|
/* 022AC0F4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[10]);
|
|
/* 022AC0F8 */ _t72 = cpu->r[30] + 0x00000008u;
|
|
/* 022AC0F8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t72);
|
|
/* 022AC0FC */ _t73 = cpu->r[29] + 0x00000228u;
|
|
/* 022AC0FC */ rbrew_write_f32(cpu->mem, _t73, cpu->f[12]);
|
|
/* 022AC100 */ _t74 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AC100 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 022AC104 */ _t75 = cpu->r[29] + 0x0000022Cu;
|
|
/* 022AC104 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[0]);
|
|
/* 022AC108 */ _t76 = cpu->r[30] + 0x00000010u;
|
|
/* 022AC108 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022AC10C */ _t77 = cpu->r[29] + 0x00000230u;
|
|
/* 022AC10C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[7]);
|
|
/* 022AC110 */ _t78 = cpu->r[30] + 0x00000014u;
|
|
/* 022AC110 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022AC114 */ _t79 = cpu->r[29] + 0x00000234u;
|
|
/* 022AC114 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[8]);
|
|
/* 022AC118 */ _t80 = cpu->r[30] + 0x00000018u;
|
|
/* 022AC118 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 022AC11C */ _t81 = cpu->r[1] + 0x00000038u;
|
|
/* 022AC11C */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 022AC120 */ _t82 = cpu->r[29] + 0x00000238u;
|
|
/* 022AC120 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[9]);
|
|
/* 022AC124 */ _t83 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022AC124 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022AC128 */ _t84 = cpu->r[1] + 0x00000048u;
|
|
/* 022AC128 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022AC12C */ _t85 = cpu->r[29] + 0x0000023Cu;
|
|
/* 022AC12C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[10]);
|
|
/* 022AC130 */ _t86 = cpu->r[30] + 0x00000020u;
|
|
/* 022AC130 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022AC134 */ _t87 = cpu->r[29] + 0x00000240u;
|
|
/* 022AC134 */ rbrew_write_f32(cpu->mem, _t87, cpu->f[11]);
|
|
/* 022AC138 */ _t88 = cpu->r[30] + 0x00000024u;
|
|
/* 022AC138 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022AC13C */ _t89 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC13C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 022AC140 */ _t90 = cpu->r[29] + 0x00000244u;
|
|
/* 022AC140 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
/* 022AC144 */ _t91 = cpu->r[30] + 0x00000028u;
|
|
/* 022AC144 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022AC148 */ _t92 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC148 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022AC14C */ _t93 = cpu->r[29] + 0x00000248u;
|
|
/* 022AC14C */ rbrew_write_f32(cpu->mem, _t93, cpu->f[13]);
|
|
/* 022AC150 */ _t94 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022AC150 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022AC154 */ _t95 = cpu->r[1] + 0x00000064u;
|
|
/* 022AC154 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 022AC158 */ _t96 = cpu->r[29] + 0x0000024Cu;
|
|
/* 022AC158 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[0]);
|
|
/* 022AC15C */ _t97 = cpu->r[30] + 0x00000004u;
|
|
/* 022AC15C */ rbrew_write_f32(cpu->mem, _t97, cpu->f[7]);
|
|
/* 022AC160 */ _t98 = cpu->r[30] + 0x00000018u;
|
|
/* 022AC160 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[11]);
|
|
/* 022AC164 */ _t99 = cpu->r[1] + 0x00000054u;
|
|
/* 022AC164 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 022AC168 */ _t100 = cpu->r[1] + 0x00000060u;
|
|
/* 022AC168 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 022AC16C */ _t101 = cpu->r[30] + 0x00000028u;
|
|
/* 022AC16C */ rbrew_write_f32(cpu->mem, _t101, cpu->f[11]);
|
|
/* 022AC170 */ _t102 = cpu->r[30] + 0x00000020u;
|
|
/* 022AC170 */ rbrew_write_f32(cpu->mem, _t102, cpu->f[7]);
|
|
/* 022AC174 */ _t103 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022AC174 */ rbrew_write_f32(cpu->mem, _t103, cpu->f[13]);
|
|
/* 022AC178 */ _t104 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC178 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 022AC17C */ _t105 = cpu->r[1] + 0x00000058u;
|
|
/* 022AC17C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 022AC180 */ _t106 = cpu->r[30] + 0x00000010u;
|
|
/* 022AC180 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[7]);
|
|
/* 022AC184 */ _t107 = cpu->r[30] + 0x00000008u;
|
|
/* 022AC184 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[10]);
|
|
/* 022AC188 */ _t108 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AC188 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t108);
|
|
/* 022AC18C */ _t109 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC18C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t109);
|
|
/* 022AC190 */ _t110 = cpu->r[30] + 0x00000014u;
|
|
/* 022AC190 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[8]);
|
|
/* 022AC194 */ _t111 = cpu->r[30] + 0x00000024u;
|
|
/* 022AC194 */ rbrew_write_f32(cpu->mem, _t111, cpu->f[9]);
|
|
/* 022AC198 */ _t112 = cpu->r[1] + 0x00000050u;
|
|
/* 022AC198 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112);
|
|
/* 022AC19C */ _t113 = cpu->r[30] + 0x00000000u;
|
|
/* 022AC19C */ rbrew_write_f32(cpu->mem, _t113, cpu->f[6]);
|
|
/* 022AC1A0 */ _t114 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022AC1A0 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[13]);
|
|
/* 022AC1A4 */ _t115 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AC1A4 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[12]);
|
|
/* 022AC1A8 */ /* nop */
|
|
/* 022AC1AC */ _t116 = cpu->r[1] + 0x00000084u;
|
|
/* 022AC1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t116);
|
|
/* 022AC1B0 */ cpu->lr = cpu->r[0];
|
|
/* 022AC1B4 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 022AC1B8 */ return;
|
|
}
|
|
|
|
// fn_022AC1BC @ 0x22ac1bc
|
|
void Gambit_fn_022AC1BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AC1BC: ; // 0x22ac1bc
|
|
/* 022AC1BC */ cpu->r[0] = cpu->lr;
|
|
/* 022AC1C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC1C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC1C0 */ cpu->r[1] = _t0;
|
|
/* 022AC1C4 */ cpu->r[5] = cpu->r[3] + 0x00000240u;
|
|
/* 022AC1C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC1CC */ cpu->r[6] = cpu->r[3] + 0x000002A8u;
|
|
/* 022AC1D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC1D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC1D4 */ _t3 = cpu->r[3] + 0x00000184u;
|
|
/* 022AC1D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC1D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC1DC */ Gambit_fn_022ABF70(cpu);
|
|
/* 022AC1E0 */ _t4 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC1E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC1E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC1E8 */ cpu->r[5] = cpu->r[31] + 0x00000270u;
|
|
/* 022AC1EC */ cpu->r[6] = cpu->r[31] + 0x000002ACu;
|
|
/* 022AC1F0 */ Gambit_fn_022ABF70(cpu);
|
|
/* 022AC1F4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC1F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AC1F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AC1FC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC1FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC200 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC204 */ return;
|
|
}
|
|
|
|
// fn_022AC1C0 @ 0x22ac1c0
|
|
void Gambit_fn_022AC1C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AC1C0: ; // 0x22ac1c0
|
|
/* 022AC1C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC1C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC1C0 */ cpu->r[1] = _t0;
|
|
/* 022AC1C4 */ cpu->r[5] = cpu->r[3] + 0x00000240u;
|
|
/* 022AC1C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC1CC */ cpu->r[6] = cpu->r[3] + 0x000002A8u;
|
|
/* 022AC1D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC1D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC1D4 */ _t3 = cpu->r[3] + 0x00000184u;
|
|
/* 022AC1D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC1D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC1DC */ Gambit_fn_022ABF70(cpu);
|
|
/* 022AC1E0 */ _t4 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC1E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC1E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC1E8 */ cpu->r[5] = cpu->r[31] + 0x00000270u;
|
|
/* 022AC1EC */ cpu->r[6] = cpu->r[31] + 0x000002ACu;
|
|
/* 022AC1F0 */ Gambit_fn_022ABF70(cpu);
|
|
/* 022AC1F4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC1F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AC1F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AC1FC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC1FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC200 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC204 */ return;
|
|
}
|
|
|
|
// fn_022AC208 @ 0x22ac208
|
|
void Gambit_fn_022AC208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022AC208: ; // 0x22ac208
|
|
/* 022AC208 */ cpu->r[0] = cpu->lr;
|
|
/* 022AC20C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC20C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC20C */ cpu->r[1] = _t0;
|
|
/* 022AC210 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC210 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC214 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC218 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC218 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC21C */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC21C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC220 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC220 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC224 */ _t5 = cpu->r[11] + 0x00000044u;
|
|
/* 022AC224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AC228 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC22C */ cpu->ctr = cpu->r[0];
|
|
/* 022AC230 */ _t6 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AC230 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AC234 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC238 */ _t7 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC23C */ _t8 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC23C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC240 */ _t9 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AC240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AC244 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC248 */ cpu->r[4] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022AC24C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC250 */ _t10 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC250 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AC254 */ _t11 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC254 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AC258 */ _t12 = cpu->r[12] + 0x00000024u;
|
|
/* 022AC258 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AC25C */ cpu->ctr = cpu->r[10];
|
|
/* 022AC260 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC264 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AC268 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC268 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC26C */ cpu->lr = cpu->r[0];
|
|
/* 022AC270 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC274 */ return;
|
|
}
|
|
|
|
// fn_022AC20C @ 0x22ac20c
|
|
void Gambit_fn_022AC20C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_022AC20C: ; // 0x22ac20c
|
|
/* 022AC20C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC20C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC20C */ cpu->r[1] = _t0;
|
|
/* 022AC210 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC210 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC214 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC218 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC218 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC21C */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC21C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC220 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC220 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC224 */ _t5 = cpu->r[11] + 0x00000044u;
|
|
/* 022AC224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AC228 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC22C */ cpu->ctr = cpu->r[0];
|
|
/* 022AC230 */ _t6 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AC230 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022AC234 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC238 */ _t7 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC23C */ _t8 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC23C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC240 */ _t9 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AC240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AC244 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC248 */ cpu->r[4] = cpu->r[31] + 0x0000011Cu;
|
|
/* 022AC24C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC250 */ _t10 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AC250 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AC254 */ _t11 = cpu->r[3] + 0x000001CCu;
|
|
/* 022AC254 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AC258 */ _t12 = cpu->r[12] + 0x00000024u;
|
|
/* 022AC258 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AC25C */ cpu->ctr = cpu->r[10];
|
|
/* 022AC260 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC264 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AC268 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC268 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC26C */ cpu->lr = cpu->r[0];
|
|
/* 022AC270 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC274 */ return;
|
|
}
|
|
|
|
// fn_022AC278 @ 0x22ac278
|
|
void Gambit_fn_022AC278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81;
|
|
|
|
L_022AC278: ; // 0x22ac278
|
|
/* 022AC278 */ cpu->r[0] = cpu->lr;
|
|
/* 022AC27C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022AC27C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC27C */ cpu->r[1] = _t0;
|
|
/* 022AC280 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC280 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AC284 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC288 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC288 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022AC28C */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022AC28C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 022AC290 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC290 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AC294 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC294 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AC298 */ _t6 = cpu->r[30] + 0x00000090u;
|
|
/* 022AC298 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC29C */ cpu->r[4] = 0x00000001u;
|
|
/* 022AC2A0 */ Gambit_fn_02390F04(cpu);
|
|
/* 022AC2A4 */ _t7 = cpu->r[30] + 0x00000070u;
|
|
/* 022AC2A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC2A8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AC2AC */ _t8 = cpu->r[9] + 0x00000010u;
|
|
/* 022AC2AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC2B0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AC2B4 */ _t9 = cpu->r[5] + 0x000025ACu;
|
|
/* 022AC2B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AC2B8 */ cpu->r[0] = cpu->r[0] | 0x00000011u;
|
|
/* 022AC2BC */ _t10 = cpu->r[6] + 0x000025DCu;
|
|
/* 022AC2BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022AC2C0 */ _t11 = cpu->r[9] + 0x00000010u;
|
|
/* 022AC2C0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AC2C4 */ _t12 = cpu->r[30] + 0x00000148u;
|
|
/* 022AC2C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022AC2C8 */ _t13 = cpu->r[30] + 0x0000017Cu;
|
|
/* 022AC2C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022AC2CC */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC2CC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022AC2D0 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC2D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC2D4 */ cpu->f[0] = cpu->f[13] * cpu->f[11];
|
|
/* 022AC2D8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC2D8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 022AC2DC */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC2DC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022AC2E0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC2E0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022AC2E4 */ /* nop */
|
|
/* 022AC2E8 */ /* nop */
|
|
/* 022AC2EC */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022AC2EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AC2F0 */ /* nop */
|
|
/* 022AC2F4 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC2F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022AC2F8 */ /* nop */
|
|
/* 022AC2FC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC2FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AC300 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC300 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AC304 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC304 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AC308 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC308 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022AC30C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC30C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022AC310 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC310 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 022AC314 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC314 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AC318 */ _t28 = cpu->r[30] + 0x00000144u;
|
|
/* 022AC318 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022AC31C */ _t29 = cpu->r[30] + 0x00000140u;
|
|
/* 022AC31C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022AC320 */ _t30 = cpu->r[30] + 0x00000148u;
|
|
/* 022AC320 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022AC324 */ Gambit_fn_0224C0B8(cpu);
|
|
/* 022AC328 */ cpu->r[29] = 0x101C0000u;
|
|
/* 022AC32C */ _t31 = cpu->r[29] + 0x00006000u;
|
|
/* 022AC32C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AC32C */ cpu->r[29] = _t31;
|
|
/* 022AC330 */ _t32 = cpu->r[12] + 0x00000264u;
|
|
/* 022AC330 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AC334 */ _t33 = cpu->r[9] + 0x00000030u;
|
|
/* 022AC334 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AC338 */ _t34 = cpu->r[7] + 0x00000018u;
|
|
/* 022AC338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC340 */ cpu->r[28] = 0x00000000u;
|
|
/* 022AC344 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC344 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022AC344 */ if (_t36) goto L_022AC3C4; else goto L_022AC348;
|
|
L_022AC348: ; // 0x22ac348
|
|
/* 022AC348 */ _t37 = cpu->r[9] + 0x00000030u;
|
|
/* 022AC348 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AC34C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AC350 */ _t38 = cpu->r[10] + 0x00000018u;
|
|
/* 022AC350 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AC354 */ _t39 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 022AC354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AC354 */ cpu->r[11] = _t39;
|
|
/* 022AC358 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AC35C */ _t40 = cpu->r[5] + 0x00000004u;
|
|
/* 022AC35C */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022AC360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC364 */ cpu->r[4] = cpu->r[4] + 0xFFFFFBBCu;
|
|
/* 022AC368 */ _t41 = cpu->r[6] + 0x00000000u;
|
|
/* 022AC368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AC36C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC36C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AC36C */ if (_t43) goto L_022AC370; else goto L_022AC384;
|
|
L_022AC370: ; // 0x22ac370
|
|
/* 022AC370 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AC374 */ cpu->r[8] = 0x00000001u;
|
|
/* 022AC378 */ cpu->r[0] = cpu->r[0] + 0x0000239Cu;
|
|
/* 022AC37C */ _t44 = cpu->r[11] + 0x00000000u;
|
|
/* 022AC37C */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
/* 022AC380 */ _t45 = cpu->r[4] + 0x00000000u;
|
|
/* 022AC380 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
L_022AC384: ; // 0x22ac384
|
|
/* 022AC384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC388 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC388 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022AC388 */ if (_t47) goto L_022AC3A8; else goto L_022AC38C;
|
|
L_022AC38C: ; // 0x22ac38c
|
|
/* 022AC38C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 022AC38C */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AC390 */ _t49 = cpu->r[10] + 0x00000014u;
|
|
/* 022AC390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AC394 */ cpu->ctr = cpu->r[12];
|
|
/* 022AC398 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC39C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC3A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC3A4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC3A4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022AC3A4 */ if (_t51) goto L_022AC3A8; else goto L_022AC3AC;
|
|
L_022AC3A8: ; // 0x22ac3a8
|
|
/* 022AC3A8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC3AC: ; // 0x22ac3ac
|
|
/* 022AC3AC */ _t52 = cpu->r[31] + 0x00000078u;
|
|
/* 022AC3AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022AC3B0 */ _t53 = cpu->r[30] + 0x000002CCu;
|
|
/* 022AC3B0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 022AC3B4 */ _t54 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022AC3B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022AC3B8 */ _t55 = cpu->r[30] + 0x000002D0u;
|
|
/* 022AC3B8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 022AC3BC */ _t56 = cpu->r[31] + 0x00000080u;
|
|
/* 022AC3BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022AC3C0 */ _t57 = cpu->r[30] + 0x000002D4u;
|
|
/* 022AC3C0 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
L_022AC3C4: ; // 0x22ac3c4
|
|
/* 022AC3C4 */ _t58 = cpu->r[30] + 0x00000004u;
|
|
/* 022AC3C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022AC3C8 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC3C8 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 022AC3CC */ _t60 = cpu->r[8] + 0x00000474u;
|
|
/* 022AC3CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AC3D0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC3D4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AC3D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC3DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC3E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC3E4 */ Gambit_fn_022AC1BC(cpu);
|
|
/* 022AC3E8 */ _t61 = cpu->r[30] + 0x00000238u;
|
|
/* 022AC3E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022AC3EC */ cpu->r[31] = 0x00000001u;
|
|
/* 022AC3F0 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 022AC3F0 */ rbrew_write32(cpu->mem, _t62, cpu->r[31]);
|
|
/* 022AC3F4 */ _t63 = cpu->r[29] + 0x00000000u;
|
|
/* 022AC3F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022AC3F8 */ _t64 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022AC3F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022AC3FC */ _t65 = cpu->r[3] + 0x00000004u;
|
|
/* 022AC3FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AC400 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC400 */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 022AC404 */ _t67 = cpu->r[5] + 0x00000134u;
|
|
/* 022AC404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022AC408 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC40C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC410 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC414 */ _t68 = cpu->r[30] + 0x00000189u;
|
|
/* 022AC414 */ cpu->r[6] = rbrew_read8(cpu->mem, _t68);
|
|
/* 022AC418 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AC41C */ _t69 = cpu->r[3] + 0x000060F4u;
|
|
/* 022AC41C */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AC420 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC424 */ Gambit_fn_023F07CC(cpu);
|
|
/* 022AC428 */ _t70 = cpu->r[30] + 0x00000300u;
|
|
/* 022AC428 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[28]);
|
|
/* 022AC42C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC430 */ _t71 = cpu->r[30] + 0x000002F0u;
|
|
/* 022AC430 */ rbrew_write32(cpu->mem, _t71, cpu->r[28]);
|
|
/* 022AC434 */ _t72 = cpu->r[30] + 0x00000302u;
|
|
/* 022AC434 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[28]);
|
|
/* 022AC438 */ _t73 = cpu->r[30] + 0x00000301u;
|
|
/* 022AC438 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[28]);
|
|
/* 022AC43C */ Gambit_fn_022AC208(cpu);
|
|
/* 022AC440 */ cpu->r[4] = 0x10060000u;
|
|
/* 022AC444 */ _t74 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC444 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022AC448 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AC44C */ cpu->r[4] = cpu->r[4] + 0x000025E0u;
|
|
/* 022AC450 */ Gambit_fn_02398850(cpu);
|
|
/* 022AC454 */ _t75 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022AC458 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC45C */ Gambit_fn_02398D60(cpu);
|
|
/* 022AC460 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AC464 */ _t76 = cpu->r[7] + 0x000025D8u;
|
|
/* 022AC464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022AC468 */ cpu->f[1] = cpu->f[1] - cpu->f[0];
|
|
/* 022AC46C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC470 */ Gambit_fn_02398CF8(cpu);
|
|
/* 022AC474 */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 022AC474 */ cpu->r[28] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AC478 */ _t78 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC478 */ cpu->r[29] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022AC47C */ _t79 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC47C */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022AC480 */ _t80 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC480 */ cpu->r[30] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022AC484 */ cpu->lr = cpu->r[0];
|
|
/* 022AC488 */ _t81 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC488 */ cpu->r[31] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022AC48C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022AC490 */ return;
|
|
}
|
|
|
|
// fn_022AC27C @ 0x22ac27c
|
|
void Gambit_fn_022AC27C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81;
|
|
|
|
L_022AC27C: ; // 0x22ac27c
|
|
/* 022AC27C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022AC27C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC27C */ cpu->r[1] = _t0;
|
|
/* 022AC280 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC280 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AC284 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC288 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC288 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022AC28C */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 022AC28C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 022AC290 */ _t4 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC290 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AC294 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC294 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AC298 */ _t6 = cpu->r[30] + 0x00000090u;
|
|
/* 022AC298 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC29C */ cpu->r[4] = 0x00000001u;
|
|
/* 022AC2A0 */ Gambit_fn_02390F04(cpu);
|
|
/* 022AC2A4 */ _t7 = cpu->r[30] + 0x00000070u;
|
|
/* 022AC2A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC2A8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AC2AC */ _t8 = cpu->r[9] + 0x00000010u;
|
|
/* 022AC2AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC2B0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AC2B4 */ _t9 = cpu->r[5] + 0x000025ACu;
|
|
/* 022AC2B4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AC2B8 */ cpu->r[0] = cpu->r[0] | 0x00000011u;
|
|
/* 022AC2BC */ _t10 = cpu->r[6] + 0x000025DCu;
|
|
/* 022AC2BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022AC2C0 */ _t11 = cpu->r[9] + 0x00000010u;
|
|
/* 022AC2C0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022AC2C4 */ _t12 = cpu->r[30] + 0x00000148u;
|
|
/* 022AC2C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022AC2C8 */ _t13 = cpu->r[30] + 0x0000017Cu;
|
|
/* 022AC2C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022AC2CC */ _t14 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC2CC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 022AC2D0 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC2D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC2D4 */ cpu->f[0] = cpu->f[13] * cpu->f[11];
|
|
/* 022AC2D8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC2D8 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 022AC2DC */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC2DC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 022AC2E0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC2E0 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[0]);
|
|
/* 022AC2E4 */ /* nop */
|
|
/* 022AC2E8 */ /* nop */
|
|
/* 022AC2EC */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022AC2EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AC2F0 */ /* nop */
|
|
/* 022AC2F4 */ _t20 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC2F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 022AC2F8 */ /* nop */
|
|
/* 022AC2FC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC2FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AC300 */ _t22 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC300 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AC304 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC304 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AC308 */ _t24 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC308 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022AC30C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC30C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 022AC310 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC310 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]);
|
|
/* 022AC314 */ _t27 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC314 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AC318 */ _t28 = cpu->r[30] + 0x00000144u;
|
|
/* 022AC318 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 022AC31C */ _t29 = cpu->r[30] + 0x00000140u;
|
|
/* 022AC31C */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 022AC320 */ _t30 = cpu->r[30] + 0x00000148u;
|
|
/* 022AC320 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[12]);
|
|
/* 022AC324 */ Gambit_fn_0224C0B8(cpu);
|
|
/* 022AC328 */ cpu->r[29] = 0x101C0000u;
|
|
/* 022AC32C */ _t31 = cpu->r[29] + 0x00006000u;
|
|
/* 022AC32C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AC32C */ cpu->r[29] = _t31;
|
|
/* 022AC330 */ _t32 = cpu->r[12] + 0x00000264u;
|
|
/* 022AC330 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AC334 */ _t33 = cpu->r[9] + 0x00000030u;
|
|
/* 022AC334 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AC338 */ _t34 = cpu->r[7] + 0x00000018u;
|
|
/* 022AC338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC340 */ cpu->r[28] = 0x00000000u;
|
|
/* 022AC344 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC344 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022AC344 */ if (_t36) goto L_022AC3C4; else goto L_022AC348;
|
|
L_022AC348: ; // 0x22ac348
|
|
/* 022AC348 */ _t37 = cpu->r[9] + 0x00000030u;
|
|
/* 022AC348 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AC34C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AC350 */ _t38 = cpu->r[10] + 0x00000018u;
|
|
/* 022AC350 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AC354 */ _t39 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 022AC354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AC354 */ cpu->r[11] = _t39;
|
|
/* 022AC358 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AC35C */ _t40 = cpu->r[5] + 0x00000004u;
|
|
/* 022AC35C */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022AC360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC364 */ cpu->r[4] = cpu->r[4] + 0xFFFFFBBCu;
|
|
/* 022AC368 */ _t41 = cpu->r[6] + 0x00000000u;
|
|
/* 022AC368 */ cpu->r[31] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AC36C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC36C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AC36C */ if (_t43) goto L_022AC370; else goto L_022AC384;
|
|
L_022AC370: ; // 0x22ac370
|
|
/* 022AC370 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AC374 */ cpu->r[8] = 0x00000001u;
|
|
/* 022AC378 */ cpu->r[0] = cpu->r[0] + 0x0000239Cu;
|
|
/* 022AC37C */ _t44 = cpu->r[11] + 0x00000000u;
|
|
/* 022AC37C */ rbrew_write32(cpu->mem, _t44, cpu->r[8]);
|
|
/* 022AC380 */ _t45 = cpu->r[4] + 0x00000000u;
|
|
/* 022AC380 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
L_022AC384: ; // 0x22ac384
|
|
/* 022AC384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC388 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC388 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022AC388 */ if (_t47) goto L_022AC3A8; else goto L_022AC38C;
|
|
L_022AC38C: ; // 0x22ac38c
|
|
/* 022AC38C */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 022AC38C */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AC390 */ _t49 = cpu->r[10] + 0x00000014u;
|
|
/* 022AC390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AC394 */ cpu->ctr = cpu->r[12];
|
|
/* 022AC398 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC39C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC3A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC3A4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC3A4 */ _t51 = _t50 & 0x00000001u;
|
|
/* 022AC3A4 */ if (_t51) goto L_022AC3A8; else goto L_022AC3AC;
|
|
L_022AC3A8: ; // 0x22ac3a8
|
|
/* 022AC3A8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC3AC: ; // 0x22ac3ac
|
|
/* 022AC3AC */ _t52 = cpu->r[31] + 0x00000078u;
|
|
/* 022AC3AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 022AC3B0 */ _t53 = cpu->r[30] + 0x000002CCu;
|
|
/* 022AC3B0 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 022AC3B4 */ _t54 = cpu->r[31] + 0x0000007Cu;
|
|
/* 022AC3B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022AC3B8 */ _t55 = cpu->r[30] + 0x000002D0u;
|
|
/* 022AC3B8 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 022AC3BC */ _t56 = cpu->r[31] + 0x00000080u;
|
|
/* 022AC3BC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022AC3C0 */ _t57 = cpu->r[30] + 0x000002D4u;
|
|
/* 022AC3C0 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
L_022AC3C4: ; // 0x22ac3c4
|
|
/* 022AC3C4 */ _t58 = cpu->r[30] + 0x00000004u;
|
|
/* 022AC3C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58);
|
|
/* 022AC3C8 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC3C8 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 022AC3CC */ _t60 = cpu->r[8] + 0x00000474u;
|
|
/* 022AC3CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AC3D0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC3D4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AC3D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC3DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC3E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC3E4 */ Gambit_fn_022AC1BC(cpu);
|
|
/* 022AC3E8 */ _t61 = cpu->r[30] + 0x00000238u;
|
|
/* 022AC3E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022AC3EC */ cpu->r[31] = 0x00000001u;
|
|
/* 022AC3F0 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 022AC3F0 */ rbrew_write32(cpu->mem, _t62, cpu->r[31]);
|
|
/* 022AC3F4 */ _t63 = cpu->r[29] + 0x00000000u;
|
|
/* 022AC3F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022AC3F8 */ _t64 = cpu->r[30] + 0x0000002Cu;
|
|
/* 022AC3F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022AC3FC */ _t65 = cpu->r[3] + 0x00000004u;
|
|
/* 022AC3FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AC400 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC400 */ rbrew_write32(cpu->mem, _t66, cpu->r[6]);
|
|
/* 022AC404 */ _t67 = cpu->r[5] + 0x00000134u;
|
|
/* 022AC404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022AC408 */ cpu->ctr = cpu->r[0];
|
|
/* 022AC40C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC410 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC414 */ _t68 = cpu->r[30] + 0x00000189u;
|
|
/* 022AC414 */ cpu->r[6] = rbrew_read8(cpu->mem, _t68);
|
|
/* 022AC418 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AC41C */ _t69 = cpu->r[3] + 0x000060F4u;
|
|
/* 022AC41C */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AC420 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC424 */ Gambit_fn_023F07CC(cpu);
|
|
/* 022AC428 */ _t70 = cpu->r[30] + 0x00000300u;
|
|
/* 022AC428 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[28]);
|
|
/* 022AC42C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC430 */ _t71 = cpu->r[30] + 0x000002F0u;
|
|
/* 022AC430 */ rbrew_write32(cpu->mem, _t71, cpu->r[28]);
|
|
/* 022AC434 */ _t72 = cpu->r[30] + 0x00000302u;
|
|
/* 022AC434 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[28]);
|
|
/* 022AC438 */ _t73 = cpu->r[30] + 0x00000301u;
|
|
/* 022AC438 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[28]);
|
|
/* 022AC43C */ Gambit_fn_022AC208(cpu);
|
|
/* 022AC440 */ cpu->r[4] = 0x10060000u;
|
|
/* 022AC444 */ _t74 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC444 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022AC448 */ cpu->r[5] = cpu->r[31];
|
|
/* 022AC44C */ cpu->r[4] = cpu->r[4] + 0x000025E0u;
|
|
/* 022AC450 */ Gambit_fn_02398850(cpu);
|
|
/* 022AC454 */ _t75 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022AC458 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC45C */ Gambit_fn_02398D60(cpu);
|
|
/* 022AC460 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AC464 */ _t76 = cpu->r[7] + 0x000025D8u;
|
|
/* 022AC464 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022AC468 */ cpu->f[1] = cpu->f[1] - cpu->f[0];
|
|
/* 022AC46C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC470 */ Gambit_fn_02398CF8(cpu);
|
|
/* 022AC474 */ _t77 = cpu->r[1] + 0x00000038u;
|
|
/* 022AC474 */ cpu->r[28] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AC478 */ _t78 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AC478 */ cpu->r[29] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022AC47C */ _t79 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC47C */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022AC480 */ _t80 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC480 */ cpu->r[30] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022AC484 */ cpu->lr = cpu->r[0];
|
|
/* 022AC488 */ _t81 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC488 */ cpu->r[31] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022AC48C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 022AC490 */ return;
|
|
}
|
|
|
|
// fn_022AC494 @ 0x22ac494
|
|
void Gambit_fn_022AC494(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022AC494: ; // 0x22ac494
|
|
/* 022AC494 */ cpu->r[0] = cpu->lr;
|
|
/* 022AC498 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022AC498 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC498 */ cpu->r[1] = _t0;
|
|
/* 022AC49C */ cpu->r[11] = 0x10060000u;
|
|
/* 022AC4A0 */ _t1 = cpu->r[11] + 0x000025ACu;
|
|
/* 022AC4A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AC4A4 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC4A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AC4A8 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC4A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AC4AC */ _t4 = cpu->r[3] + 0x00000184u;
|
|
/* 022AC4AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC4B0 */ cpu->r[12] = 0x00000000u;
|
|
/* 022AC4B4 */ _t5 = cpu->r[11] + 0x000001C8u;
|
|
/* 022AC4B4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 022AC4B8 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC4B8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022AC4BC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC4BC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022AC4C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC4C0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022AC4C4 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC4C4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AC4C8 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 022AC4CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC4D0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 022AC4D4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC4D4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022AC4D8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4DC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4E0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC4E0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022AC4E4 */ Gambit_fn_02272EF4(cpu);
|
|
/* 022AC4E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4EC */ _t14 = cpu->r[31] + 0x00000064u;
|
|
/* 022AC4EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC4F0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4F4 */ Gambit_fn_023B38B0(cpu);
|
|
/* 022AC4F8 */ _t15 = cpu->r[31] + 0x00000184u;
|
|
/* 022AC4F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC4FC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC500 */ _t16 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AC500 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
/* 022AC504 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AC508 */ cpu->lr = cpu->r[0];
|
|
/* 022AC50C */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC50C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AC510 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022AC514 */ return;
|
|
}
|
|
|
|
// fn_022AC498 @ 0x22ac498
|
|
void Gambit_fn_022AC498(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022AC498: ; // 0x22ac498
|
|
/* 022AC498 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022AC498 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC498 */ cpu->r[1] = _t0;
|
|
/* 022AC49C */ cpu->r[11] = 0x10060000u;
|
|
/* 022AC4A0 */ _t1 = cpu->r[11] + 0x000025ACu;
|
|
/* 022AC4A0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AC4A4 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC4A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AC4A8 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC4A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AC4AC */ _t4 = cpu->r[3] + 0x00000184u;
|
|
/* 022AC4AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC4B0 */ cpu->r[12] = 0x00000000u;
|
|
/* 022AC4B4 */ _t5 = cpu->r[11] + 0x000001C8u;
|
|
/* 022AC4B4 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 022AC4B8 */ _t6 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC4B8 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022AC4BC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC4BC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022AC4C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC4C0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[0]);
|
|
/* 022AC4C4 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC4C4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AC4C8 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 022AC4CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC4D0 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 022AC4D4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC4D4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022AC4D8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4DC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4E0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC4E0 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 022AC4E4 */ Gambit_fn_02272EF4(cpu);
|
|
/* 022AC4E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AC4EC */ _t14 = cpu->r[31] + 0x00000064u;
|
|
/* 022AC4EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC4F0 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AC4F4 */ Gambit_fn_023B38B0(cpu);
|
|
/* 022AC4F8 */ _t15 = cpu->r[31] + 0x00000184u;
|
|
/* 022AC4F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC4FC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC500 */ _t16 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AC500 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
/* 022AC504 */ _t17 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AC508 */ cpu->lr = cpu->r[0];
|
|
/* 022AC50C */ _t18 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC50C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AC510 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022AC514 */ return;
|
|
}
|
|
|
|
// fn_022AC518 @ 0x22ac518
|
|
void Gambit_fn_022AC518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27;
|
|
|
|
L_022AC518: ; // 0x22ac518
|
|
/* 022AC518 */ _t0 = cpu->r[3] + 0x0000020Cu;
|
|
/* 022AC518 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AC51C */ /* nop */
|
|
/* 022AC520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000009u);
|
|
/* 022AC524 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC524 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AC524 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AC524 */ goto L_022AC528;
|
|
L_022AC528: ; // 0x22ac528
|
|
/* 022AC528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000007u);
|
|
/* 022AC52C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC52C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022AC52C */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AC52C */ goto L_022AC530;
|
|
L_022AC530: ; // 0x22ac530
|
|
/* 022AC530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000008u);
|
|
/* 022AC534 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC534 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AC534 */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AC534 */ goto L_022AC538;
|
|
L_022AC538: ; // 0x22ac538
|
|
/* 022AC538 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC53C */ _t7 = cpu->r[3] + 0x000000E0u;
|
|
/* 022AC53C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022AC540 */ _t8 = cpu->r[12] + 0x000025ACu;
|
|
/* 022AC540 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022AC544 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022AC548 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC548 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AC548 */ _t11 = _t10 ^ 0x00000001u;
|
|
/* 022AC548 */ if (_t11) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AC548 */ goto L_022AC54C;
|
|
L_022AC54C: ; // 0x22ac54c
|
|
/* 022AC54C */ _t12 = cpu->r[3] + 0x000001D8u;
|
|
/* 022AC54C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AC550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022AC554 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC554 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AC554 */ if (_t14) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AC554 */ goto L_022AC558;
|
|
L_022AC558: ; // 0x22ac558
|
|
/* 022AC558 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC55C */ cpu->r[12] = cpu->r[12] + 0x000025E8u;
|
|
/* 022AC560 */ _t15 = cpu->r[12] + cpu->r[0];
|
|
/* 022AC560 */ cpu->r[4] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022AC564 */ cpu->r[3] = cpu->r[3] + 0x00000200u;
|
|
/* 022AC568 */ goto L_022AEDC4;
|
|
L_022AEDC4: ; // 0x22aedc4
|
|
/* 022AEDC4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AEDC8 */ _t16 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEDC8 */ rbrew_write32(cpu->mem, _t16, cpu->r[1]);
|
|
/* 022AEDC8 */ cpu->r[1] = _t16;
|
|
/* 022AEDCC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEDCC */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 022AEDD0 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEDD0 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 022AEDD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AEDD8 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEDD8 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022AEDDC */ _t20 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AEDDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t20);
|
|
/* 022AEDE0 */ /* nop */
|
|
/* 022AEDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022AEDE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AEDEC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEDEC */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AEDEC */ if (_t22) goto L_022AEDF0; else goto L_022AEE04;
|
|
L_022AEDF0: ; // 0x22aedf0
|
|
/* 022AEDF0 */ _t23 = cpu->r[30] + 0x00000004u;
|
|
/* 022AEDF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AEDF4 */ _t24 = cpu->r[11] + 0x00000014u;
|
|
/* 022AEDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AEDF8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEDFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEE04: ; // 0x22aee04
|
|
/* 022AEE04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE08 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AEE0C */ Gambit_fn_022AECB4(cpu);
|
|
/* 022AEE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE14 */ /* nop */
|
|
/* 022AEE18 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AEE1C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE20 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AEE24 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AEE28 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEE28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AEE2C */ cpu->lr = cpu->r[0];
|
|
/* 022AEE30 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEE30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AEE34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEE38 */ return;
|
|
}
|
|
|
|
// fn_022AC56C @ 0x22ac56c
|
|
void Gambit_fn_022AC56C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_022AC56C: ; // 0x22ac56c
|
|
/* 022AC56C */ cpu->r[0] = cpu->lr;
|
|
/* 022AC570 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC570 */ cpu->r[1] = _t0;
|
|
/* 022AC574 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC574 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AC578 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC57C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC57C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AC580 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC580 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AC584 */ Gambit_fn_022AC518(cpu);
|
|
/* 022AC588 */ _t4 = cpu->r[30] + 0x0000020Cu;
|
|
/* 022AC588 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022AC58C */ /* nop */
|
|
/* 022AC590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 022AC594 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AC594 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AC594 */ if (_t6) goto L_022AC674; else goto L_022AC598;
|
|
L_022AC598: ; // 0x22ac598
|
|
/* 022AC598 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC598 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AC598 */ if (_t8) goto L_022AC664; else goto L_022AC59C;
|
|
L_022AC59C: ; // 0x22ac59c
|
|
/* 022AC59C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 022AC5A0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5A0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AC5A0 */ if (_t10) goto L_022AC5C4; else goto L_022AC5A4;
|
|
L_022AC5A4: ; // 0x22ac5a4
|
|
/* 022AC5A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000006u);
|
|
/* 022AC5A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5A8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AC5A8 */ if (_t12) goto L_022AC5E4; else goto L_022AC5AC;
|
|
L_022AC5AC: ; // 0x22ac5ac
|
|
/* 022AC5AC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AC5B0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC5B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC5B4 */ cpu->lr = cpu->r[0];
|
|
/* 022AC5B8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC5B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC5BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC5C0 */ return;
|
|
L_022AC5C4: ; // 0x22ac5c4
|
|
/* 022AC5C4 */ _t16 = cpu->r[30] + 0x00000208u;
|
|
/* 022AC5C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AC5C8 */ _t17 = cpu->r[30] + 0x000002F0u;
|
|
/* 022AC5C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AC5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[9]);
|
|
/* 022AC5D0 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC5D0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022AC5D0 */ if (_t19) goto L_022AC5D4; else goto L_022AC6C4;
|
|
L_022AC5D4: ; // 0x22ac5d4
|
|
/* 022AC5D4 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC5D8 */ cpu->r[4] = 0x00000006u;
|
|
/* 022AC5DC */ Gambit_fn_022AEDC4(cpu);
|
|
/* 022AC5E0 */ goto L_022AC6C4;
|
|
L_022AC5E4: ; // 0x22ac5e4
|
|
/* 022AC5E4 */ _t20 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AC5E8 */ Gambit_fn_02398FA8(cpu);
|
|
/* 022AC5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC5F0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5F0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AC5F0 */ if (_t22) goto L_022AC6C4; else goto L_022AC5F4;
|
|
L_022AC5F4: ; // 0x22ac5f4
|
|
/* 022AC5F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC5F8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC5FC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AC600 */ _t23 = cpu->r[12] + 0x00000184u;
|
|
/* 022AC600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AC600 */ cpu->r[12] = _t23;
|
|
/* 022AC604 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AC608 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC60C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC610 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AC614 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC614 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AC614 */ if (_t25) goto L_022AC618; else goto L_022AC62C;
|
|
L_022AC618: ; // 0x22ac618
|
|
/* 022AC618 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AC61C */ cpu->r[9] = 0x00000001u;
|
|
/* 022AC620 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022AC624 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 022AC624 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 022AC628 */ _t27 = cpu->r[4] + 0x00000000u;
|
|
/* 022AC628 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
L_022AC62C: ; // 0x22ac62c
|
|
/* 022AC62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC630 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC630 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AC630 */ if (_t29) goto L_022AC650; else goto L_022AC634;
|
|
L_022AC634: ; // 0x22ac634
|
|
/* 022AC634 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC634 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AC638 */ _t31 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022AC638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AC63C */ cpu->ctr = cpu->r[0];
|
|
/* 022AC640 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC644 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC64C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC64C */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AC64C */ if (_t33) goto L_022AC650; else goto L_022AC654;
|
|
L_022AC650: ; // 0x22ac650
|
|
/* 022AC650 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC654: ; // 0x22ac654
|
|
/* 022AC654 */ _t34 = cpu->r[30] + 0x00000208u;
|
|
/* 022AC654 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC658 */ _t35 = cpu->r[31] + 0x000018E4u;
|
|
/* 022AC658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AC65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 022AC660 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC660 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AC660 */ if (_t37) goto L_022AC664; else goto L_022AC6C4;
|
|
L_022AC664: ; // 0x22ac664
|
|
/* 022AC664 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC668 */ cpu->r[4] = 0x00000005u;
|
|
/* 022AC66C */ Gambit_fn_022AEDC4(cpu);
|
|
/* 022AC670 */ goto L_022AC6C4;
|
|
L_022AC674: ; // 0x22ac674
|
|
/* 022AC674 */ _t38 = cpu->r[30] + 0x000002F4u;
|
|
/* 022AC674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AC678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC67C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC67C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AC67C */ if (_t40) goto L_022AC6C4; else goto L_022AC680;
|
|
L_022AC680: ; // 0x22ac680
|
|
/* 022AC680 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AC684 */ _t41 = cpu->r[12] + 0x00006000u;
|
|
/* 022AC684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AC688 */ _t42 = cpu->r[12] + 0x00000268u;
|
|
/* 022AC688 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AC68C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC690 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AC694 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC698 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC69C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AC6A0 */ cpu->r[12] = cpu->r[3];
|
|
/* 022AC6A4 */ _t43 = cpu->r[30] + 0x000002F4u;
|
|
/* 022AC6A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AC6A8 */ cpu->r[4] = cpu->r[12] + 0x00000244u;
|
|
/* 022AC6AC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022AC6B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC6B4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC6B4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022AC6B4 */ if (_t45) goto L_022AC6C4; else goto L_022AC6B8;
|
|
L_022AC6B8: ; // 0x22ac6b8
|
|
/* 022AC6B8 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC6BC */ cpu->r[4] = 0x00000001u;
|
|
/* 022AC6C0 */ Gambit_fn_022AEDC4(cpu);
|
|
L_022AC6C4: ; // 0x22ac6c4
|
|
/* 022AC6C4 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022AC6C8 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC6C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AC6CC */ cpu->lr = cpu->r[0];
|
|
/* 022AC6D0 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC6D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AC6D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC6D8 */ return;
|
|
}
|
|
|
|
// fn_022AC570 @ 0x22ac570
|
|
void Gambit_fn_022AC570(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48;
|
|
|
|
L_022AC570: ; // 0x22ac570
|
|
/* 022AC570 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC570 */ cpu->r[1] = _t0;
|
|
/* 022AC574 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC574 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AC578 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC57C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC57C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AC580 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC580 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AC584 */ Gambit_fn_022AC518(cpu);
|
|
/* 022AC588 */ _t4 = cpu->r[30] + 0x0000020Cu;
|
|
/* 022AC588 */ cpu->r[8] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022AC58C */ /* nop */
|
|
/* 022AC590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000001u);
|
|
/* 022AC594 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AC594 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AC594 */ if (_t6) goto L_022AC674; else goto L_022AC598;
|
|
L_022AC598: ; // 0x22ac598
|
|
/* 022AC598 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC598 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AC598 */ if (_t8) goto L_022AC664; else goto L_022AC59C;
|
|
L_022AC59C: ; // 0x22ac59c
|
|
/* 022AC59C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 022AC5A0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5A0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AC5A0 */ if (_t10) goto L_022AC5C4; else goto L_022AC5A4;
|
|
L_022AC5A4: ; // 0x22ac5a4
|
|
/* 022AC5A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000006u);
|
|
/* 022AC5A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5A8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AC5A8 */ if (_t12) goto L_022AC5E4; else goto L_022AC5AC;
|
|
L_022AC5AC: ; // 0x22ac5ac
|
|
/* 022AC5AC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AC5B0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC5B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AC5B4 */ cpu->lr = cpu->r[0];
|
|
/* 022AC5B8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC5B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC5BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC5C0 */ return;
|
|
L_022AC5C4: ; // 0x22ac5c4
|
|
/* 022AC5C4 */ _t16 = cpu->r[30] + 0x00000208u;
|
|
/* 022AC5C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AC5C8 */ _t17 = cpu->r[30] + 0x000002F0u;
|
|
/* 022AC5C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AC5CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[9]);
|
|
/* 022AC5D0 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC5D0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022AC5D0 */ if (_t19) goto L_022AC5D4; else goto L_022AC6C4;
|
|
L_022AC5D4: ; // 0x22ac5d4
|
|
/* 022AC5D4 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC5D8 */ cpu->r[4] = 0x00000006u;
|
|
/* 022AC5DC */ Gambit_fn_022AEDC4(cpu);
|
|
/* 022AC5E0 */ goto L_022AC6C4;
|
|
L_022AC5E4: ; // 0x22ac5e4
|
|
/* 022AC5E4 */ _t20 = cpu->r[30] + 0x00000094u;
|
|
/* 022AC5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AC5E8 */ Gambit_fn_02398FA8(cpu);
|
|
/* 022AC5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC5F0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC5F0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AC5F0 */ if (_t22) goto L_022AC6C4; else goto L_022AC5F4;
|
|
L_022AC5F4: ; // 0x22ac5f4
|
|
/* 022AC5F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC5F8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC5FC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AC600 */ _t23 = cpu->r[12] + 0x00000184u;
|
|
/* 022AC600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AC600 */ cpu->r[12] = _t23;
|
|
/* 022AC604 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AC608 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC60C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC610 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AC614 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC614 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AC614 */ if (_t25) goto L_022AC618; else goto L_022AC62C;
|
|
L_022AC618: ; // 0x22ac618
|
|
/* 022AC618 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AC61C */ cpu->r[9] = 0x00000001u;
|
|
/* 022AC620 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022AC624 */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 022AC624 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]);
|
|
/* 022AC628 */ _t27 = cpu->r[4] + 0x00000000u;
|
|
/* 022AC628 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
L_022AC62C: ; // 0x22ac62c
|
|
/* 022AC62C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC630 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC630 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AC630 */ if (_t29) goto L_022AC650; else goto L_022AC634;
|
|
L_022AC634: ; // 0x22ac634
|
|
/* 022AC634 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC634 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AC638 */ _t31 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022AC638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AC63C */ cpu->ctr = cpu->r[0];
|
|
/* 022AC640 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC644 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC64C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC64C */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AC64C */ if (_t33) goto L_022AC650; else goto L_022AC654;
|
|
L_022AC650: ; // 0x22ac650
|
|
/* 022AC650 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC654: ; // 0x22ac654
|
|
/* 022AC654 */ _t34 = cpu->r[30] + 0x00000208u;
|
|
/* 022AC654 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC658 */ _t35 = cpu->r[31] + 0x000018E4u;
|
|
/* 022AC658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AC65C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 022AC660 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC660 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AC660 */ if (_t37) goto L_022AC664; else goto L_022AC6C4;
|
|
L_022AC664: ; // 0x22ac664
|
|
/* 022AC664 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC668 */ cpu->r[4] = 0x00000005u;
|
|
/* 022AC66C */ Gambit_fn_022AEDC4(cpu);
|
|
/* 022AC670 */ goto L_022AC6C4;
|
|
L_022AC674: ; // 0x22ac674
|
|
/* 022AC674 */ _t38 = cpu->r[30] + 0x000002F4u;
|
|
/* 022AC674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AC678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AC67C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC67C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AC67C */ if (_t40) goto L_022AC6C4; else goto L_022AC680;
|
|
L_022AC680: ; // 0x22ac680
|
|
/* 022AC680 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AC684 */ _t41 = cpu->r[12] + 0x00006000u;
|
|
/* 022AC684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AC688 */ _t42 = cpu->r[12] + 0x00000268u;
|
|
/* 022AC688 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AC68C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC690 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AC694 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC698 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC69C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AC6A0 */ cpu->r[12] = cpu->r[3];
|
|
/* 022AC6A4 */ _t43 = cpu->r[30] + 0x000002F4u;
|
|
/* 022AC6A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AC6A8 */ cpu->r[4] = cpu->r[12] + 0x00000244u;
|
|
/* 022AC6AC */ Gambit_fn_024AE2A0(cpu);
|
|
/* 022AC6B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC6B4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC6B4 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022AC6B4 */ if (_t45) goto L_022AC6C4; else goto L_022AC6B8;
|
|
L_022AC6B8: ; // 0x22ac6b8
|
|
/* 022AC6B8 */ cpu->r[3] = cpu->r[30] + 0x00000200u;
|
|
/* 022AC6BC */ cpu->r[4] = 0x00000001u;
|
|
/* 022AC6C0 */ Gambit_fn_022AEDC4(cpu);
|
|
L_022AC6C4: ; // 0x22ac6c4
|
|
/* 022AC6C4 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC6C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022AC6C8 */ _t47 = cpu->r[1] + 0x00000008u;
|
|
/* 022AC6C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AC6CC */ cpu->lr = cpu->r[0];
|
|
/* 022AC6D0 */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC6D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AC6D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC6D8 */ return;
|
|
}
|
|
|
|
// fn_022AC6DC @ 0x22ac6dc
|
|
void Gambit_fn_022AC6DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AC6DC: ; // 0x22ac6dc
|
|
/* 022AC6DC */ cpu->r[0] = cpu->lr;
|
|
/* 022AC6E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC6E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC6E0 */ cpu->r[1] = _t0;
|
|
/* 022AC6E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC6E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC6E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC6EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC6EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC6F0 */ Gambit_fn_022AC494(cpu);
|
|
/* 022AC6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC6F8 */ Gambit_fn_022AC56C(cpu);
|
|
/* 022AC6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC700 */ Gambit_fn_022AC1BC(cpu);
|
|
/* 022AC704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC708 */ cpu->lr = cpu->r[0];
|
|
/* 022AC70C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC70C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC714 */ return;
|
|
}
|
|
|
|
// fn_022AC6E0 @ 0x22ac6e0
|
|
void Gambit_fn_022AC6E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AC6E0: ; // 0x22ac6e0
|
|
/* 022AC6E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AC6E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC6E0 */ cpu->r[1] = _t0;
|
|
/* 022AC6E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC6E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AC6E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC6EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC6EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AC6F0 */ Gambit_fn_022AC494(cpu);
|
|
/* 022AC6F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC6F8 */ Gambit_fn_022AC56C(cpu);
|
|
/* 022AC6FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC700 */ Gambit_fn_022AC1BC(cpu);
|
|
/* 022AC704 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AC708 */ cpu->lr = cpu->r[0];
|
|
/* 022AC70C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC70C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AC710 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AC714 */ return;
|
|
}
|
|
|
|
// fn_022AC718 @ 0x22ac718
|
|
void Gambit_fn_022AC718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127;
|
|
double _ft49, _ft50;
|
|
|
|
L_022AC718: ; // 0x22ac718
|
|
/* 022AC718 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022AC718 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC718 */ cpu->r[1] = _t0;
|
|
/* 022AC71C */ /* nop */
|
|
/* 022AC720 */ cpu->r[0] = cpu->lr;
|
|
/* 022AC724 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 022AC724 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AC728 */ /* nop */
|
|
/* 022AC72C */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 022AC72C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022AC730 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022AC730 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022AC734 */ _t4 = cpu->r[1] + 0x000000A4u;
|
|
/* 022AC734 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AC738 */ /* nop */
|
|
/* 022AC73C */ _t5 = cpu->r[1] + 0x00000088u;
|
|
/* 022AC73C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022AC740 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AC744 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 022AC744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC748 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AC74C */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 022AC74C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC750 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC754 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AC758 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC75C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC760 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AC764 */ cpu->r[27] = cpu->r[3];
|
|
/* 022AC768 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC76C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC770 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022AC774 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022AC778 */ _t8 = cpu->r[26] + 0x00000184u;
|
|
/* 022AC778 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC778 */ cpu->r[26] = _t8;
|
|
/* 022AC77C */ cpu->r[25] = cpu->r[25] + 0x00000180u;
|
|
/* 022AC780 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC784 */ cpu->r[28] = 0x10060000u;
|
|
/* 022AC788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AC78C */ cpu->r[28] = cpu->r[28] + 0x0000240Cu;
|
|
/* 022AC790 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC790 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AC790 */ if (_t10) goto L_022AC794; else goto L_022AC7A0;
|
|
L_022AC794: ; // 0x22ac794
|
|
/* 022AC794 */ _t11 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC794 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 022AC798 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC79C */ _t12 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC79C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022AC7A0: ; // 0x22ac7a0
|
|
/* 022AC7A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AC7A4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7A4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AC7A4 */ if (_t14) goto L_022AC7C8; else goto L_022AC7A8;
|
|
L_022AC7A8: ; // 0x22ac7a8
|
|
/* 022AC7A8 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 022AC7A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC7AC */ _t16 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022AC7AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AC7B0 */ cpu->ctr = cpu->r[6];
|
|
/* 022AC7B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC7B8 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC7BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC7C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AC7C4 */ if (_t18) goto L_022AC7C8; else goto L_022AC7CC;
|
|
L_022AC7C8: ; // 0x22ac7c8
|
|
/* 022AC7C8 */ cpu->r[30] = 0x00000000u;
|
|
L_022AC7CC: ; // 0x22ac7cc
|
|
/* 022AC7CC */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC7D0 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC7D4 */ _t19 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC7D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AC7D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AC7DC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC7E0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7E0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022AC7E0 */ if (_t21) goto L_022AC7E4; else goto L_022AC7F0;
|
|
L_022AC7E4: ; // 0x22ac7e4
|
|
/* 022AC7E4 */ _t22 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC7E4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 022AC7E8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022AC7EC */ _t23 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC7EC */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_022AC7F0: ; // 0x22ac7f0
|
|
/* 022AC7F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC7F4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7F4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AC7F4 */ if (_t25) goto L_022AC818; else goto L_022AC7F8;
|
|
L_022AC7F8: ; // 0x22ac7f8
|
|
/* 022AC7F8 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC7F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AC7FC */ _t27 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022AC7FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AC800 */ cpu->ctr = cpu->r[7];
|
|
/* 022AC804 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC808 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC80C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC814 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC814 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AC814 */ if (_t29) goto L_022AC818; else goto L_022AC81C;
|
|
L_022AC818: ; // 0x22ac818
|
|
/* 022AC818 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC81C: ; // 0x22ac81c
|
|
/* 022AC81C */ cpu->r[3] = cpu->r[27] + 0x00000244u;
|
|
/* 022AC820 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022AC824 */ Gambit_fn_02C69328(cpu);
|
|
/* 022AC828 */ _t30 = cpu->r[30] + 0x000013A4u;
|
|
/* 022AC828 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022AC82C */ _t31 = cpu->r[31] + 0x000013A4u;
|
|
/* 022AC82C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AC830 */ cpu->f[9] = cpu->f[10] * cpu->f[9];
|
|
/* 022AC834 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 022AC838 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AC838 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AC838 */ if (_t33) goto L_022AC83C; else goto L_022ACAAC;
|
|
L_022AC83C: ; // 0x22ac83c
|
|
/* 022AC83C */ _t34 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022AC83C */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC840 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC840 */ rbrew_write32(cpu->mem, _t35, cpu->r[7]);
|
|
/* 022AC844 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC844 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022AC848 */ _t37 = cpu->r[29] + 0x00000134u;
|
|
/* 022AC848 */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AC84C */ cpu->r[11] = 0x10060000u;
|
|
/* 022AC850 */ cpu->f[9] = cpu->f[30] * cpu->f[30];
|
|
/* 022AC854 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC854 */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 022AC858 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC858 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022AC85C */ _t40 = cpu->r[11] + 0x000025ACu;
|
|
/* 022AC85C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022AC860 */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 022AC864 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022AC868 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC868 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 022AC86C */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC86C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AC86C */ if (_t43) goto L_022AC890; else goto L_022AC870;
|
|
L_022AC870: ; // 0x22ac870
|
|
/* 022AC870 */ /* nop */
|
|
/* 022AC874 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC878 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC87C */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC87C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AC880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC884 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC888 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC888 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022AC888 */ if (_t46) goto L_022AC88C; else goto L_022AC8EC;
|
|
L_022AC88C: ; // 0x22ac88c
|
|
/* 022AC88C */ goto L_022AC8E0;
|
|
L_022AC890: ; // 0x22ac890
|
|
/* 022AC890 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AC894 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AC898 */ _t47 = cpu->r[8] + 0x000025F0u;
|
|
/* 022AC898 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022AC89C */ _t48 = cpu->r[7] + 0x000025ECu;
|
|
/* 022AC89C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022AC8A0 */ _ft49 = sqrt(cpu->f[11]);
|
|
/* 022AC8A0 */ _ft50 = (double)(int32_t)0x00000001u;
|
|
/* 022AC8A0 */ cpu->f[10] = _ft50 / _ft49;
|
|
/* 022AC8A4 */ cpu->f[0] = cpu->f[10] * cpu->f[10];
|
|
/* 022AC8A8 */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 022AC8AC */ cpu->f[0] = -fma(cpu->f[0], cpu->f[11], -(cpu->f[13]));
|
|
/* 022AC8B0 */ cpu->f[10] = cpu->f[0] * cpu->f[9];
|
|
/* 022AC8B4 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC8B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022AC8B8 */ /* nop */
|
|
/* 022AC8BC */ cpu->f[30] = cpu->f[30] * cpu->f[10];
|
|
/* 022AC8C0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC8C4 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC8C4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[30]);
|
|
/* 022AC8C8 */ /* nop */
|
|
/* 022AC8CC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC8D0 */ _t53 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC8D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022AC8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC8D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC8DC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC8DC */ _t55 = _t54 & 0x00000001u;
|
|
/* 022AC8DC */ if (_t55) goto L_022AC8E0; else goto L_022AC8EC;
|
|
L_022AC8E0: ; // 0x22ac8e0
|
|
/* 022AC8E0 */ _t56 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC8E0 */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 022AC8E4 */ cpu->r[9] = 0x00000001u;
|
|
/* 022AC8E8 */ _t57 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC8E8 */ rbrew_write32(cpu->mem, _t57, cpu->r[9]);
|
|
L_022AC8EC: ; // 0x22ac8ec
|
|
/* 022AC8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC8F0 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC8F0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022AC8F0 */ if (_t59) goto L_022AC914; else goto L_022AC8F4;
|
|
L_022AC8F4: ; // 0x22ac8f4
|
|
/* 022AC8F4 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC8F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AC8F8 */ _t61 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022AC8F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022AC8FC */ cpu->ctr = cpu->r[0];
|
|
/* 022AC900 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC904 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC910 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC910 */ _t63 = _t62 & 0x00000001u;
|
|
/* 022AC910 */ if (_t63) goto L_022AC914; else goto L_022AC918;
|
|
L_022AC914: ; // 0x22ac914
|
|
/* 022AC914 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC918: ; // 0x22ac918
|
|
/* 022AC918 */ _t64 = cpu->r[31] + 0x00001404u;
|
|
/* 022AC918 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022AC91C */ /* nop */
|
|
/* 022AC920 */ /* nop */
|
|
/* 022AC924 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AC928 */ cpu->f[13] = cpu->f[30] * cpu->f[10];
|
|
/* 022AC92C */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC92C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AC930 */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC930 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 022AC934 */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC934 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 022AC938 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AC93C */ _t70 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC93C */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 022AC940 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC944 */ _t71 = cpu->r[1] + 0x00000048u;
|
|
/* 022AC944 */ rbrew_write32(cpu->mem, _t71, cpu->r[9]);
|
|
/* 022AC948 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC94C */ _t72 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC94C */ cpu->r[10] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022AC950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AC954 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC958 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC958 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022AC958 */ if (_t74) goto L_022AC95C; else goto L_022AC968;
|
|
L_022AC95C: ; // 0x22ac95c
|
|
/* 022AC95C */ _t75 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC95C */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 022AC960 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC964 */ _t76 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC964 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
L_022AC968: ; // 0x22ac968
|
|
/* 022AC968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC96C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC96C */ _t78 = _t77 & 0x00000001u;
|
|
/* 022AC96C */ if (_t78) goto L_022AC990; else goto L_022AC970;
|
|
L_022AC970: ; // 0x22ac970
|
|
/* 022AC970 */ _t79 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC970 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022AC974 */ _t80 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AC974 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022AC978 */ cpu->ctr = cpu->r[5];
|
|
/* 022AC97C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC980 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC984 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC98C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC98C */ _t82 = _t81 & 0x00000001u;
|
|
/* 022AC98C */ if (_t82) goto L_022AC990; else goto L_022AC994;
|
|
L_022AC990: ; // 0x22ac990
|
|
/* 022AC990 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC994: ; // 0x22ac994
|
|
/* 022AC994 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022AC998 */ _t83 = cpu->r[31] + 0x00001464u;
|
|
/* 022AC998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022AC99C */ cpu->r[6] = cpu->r[6] + 0x00006350u;
|
|
/* 022AC9A0 */ /* nop */
|
|
/* 022AC9A4 */ /* nop */
|
|
/* 022AC9A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC9AC */ _t84 = cpu->r[6] + 0x00000008u;
|
|
/* 022AC9AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022AC9B0 */ /* nop */
|
|
/* 022AC9B4 */ _t85 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AC9B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 022AC9B8 */ /* nop */
|
|
/* 022AC9BC */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC9BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022AC9C0 */ _t87 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC9C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022AC9C4 */ cpu->f[8] = cpu->f[13] * cpu->f[0];
|
|
/* 022AC9C8 */ _t88 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC9C8 */ rbrew_write32(cpu->mem, _t88, cpu->r[9]);
|
|
/* 022AC9CC */ _t89 = cpu->r[1] + 0x00000050u;
|
|
/* 022AC9CC */ rbrew_write32(cpu->mem, _t89, cpu->r[10]);
|
|
/* 022AC9D0 */ /* nop */
|
|
/* 022AC9D4 */ _t90 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC9D4 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[8]);
|
|
/* 022AC9D8 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC9D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022AC9DC */ _t92 = cpu->r[1] + 0x00000048u;
|
|
/* 022AC9DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022AC9E0 */ cpu->r[8] = 0x00000002u;
|
|
/* 022AC9E4 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 022AC9E4 */ rbrew_write32(cpu->mem, _t93, cpu->r[11]);
|
|
/* 022AC9E8 */ _t94 = cpu->r[1] + 0x00000054u;
|
|
/* 022AC9E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022AC9EC */ /* nop */
|
|
/* 022AC9F0 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC9F0 */ rbrew_write32(cpu->mem, _t95, cpu->r[8]);
|
|
/* 022AC9F4 */ cpu->f[8] = cpu->f[9] + cpu->f[11];
|
|
/* 022AC9F8 */ /* nop */
|
|
/* 022AC9FC */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC9FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022ACA00 */ _t97 = cpu->r[1] + 0x00000038u;
|
|
/* 022ACA00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022ACA04 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ACA04 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 022ACA08 */ _t99 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ACA08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022ACA0C */ cpu->f[2] = cpu->f[1];
|
|
/* 022ACA10 */ _t100 = cpu->r[1] + 0x00000058u;
|
|
/* 022ACA10 */ rbrew_write32(cpu->mem, _t100, cpu->r[11]);
|
|
/* 022ACA14 */ cpu->r[4] = cpu->r[1] + 0x00000058u;
|
|
/* 022ACA18 */ cpu->r[3] = cpu->r[27];
|
|
/* 022ACA1C */ _t101 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022ACA1C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 022ACA20 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022ACA24 */ _t102 = cpu->r[1] + 0x00000060u;
|
|
/* 022ACA24 */ rbrew_write32(cpu->mem, _t102, cpu->r[6]);
|
|
/* 022ACA28 */ Gambit_fn_025BD378(cpu);
|
|
/* 022ACA2C */ cpu->r[3] = cpu->r[29];
|
|
/* 022ACA30 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ACA34 */ _t103 = cpu->r[26] + 0x00000000u;
|
|
/* 022ACA34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022ACA38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022ACA3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACA40 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA40 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022ACA40 */ if (_t105) goto L_022ACA44; else goto L_022ACA50;
|
|
L_022ACA44: ; // 0x22aca44
|
|
/* 022ACA44 */ _t106 = cpu->r[25] + 0x00000000u;
|
|
/* 022ACA44 */ rbrew_write32(cpu->mem, _t106, cpu->r[28]);
|
|
/* 022ACA48 */ cpu->r[0] = 0x00000001u;
|
|
/* 022ACA4C */ _t107 = cpu->r[26] + 0x00000000u;
|
|
/* 022ACA4C */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
L_022ACA50: ; // 0x22aca50
|
|
/* 022ACA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ACA54 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA54 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022ACA54 */ if (_t109) goto L_022ACA78; else goto L_022ACA58;
|
|
L_022ACA58: ; // 0x22aca58
|
|
/* 022ACA58 */ _t110 = cpu->r[31] + 0x00000000u;
|
|
/* 022ACA58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022ACA5C */ _t111 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022ACA5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022ACA60 */ cpu->ctr = cpu->r[6];
|
|
/* 022ACA64 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ACA68 */ cpu->r[4] = cpu->r[25];
|
|
/* 022ACA6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ACA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ACA74 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA74 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022ACA74 */ if (_t113) goto L_022ACA78; else goto L_022ACA7C;
|
|
L_022ACA78: ; // 0x22aca78
|
|
/* 022ACA78 */ cpu->r[31] = 0x00000000u;
|
|
L_022ACA7C: ; // 0x22aca7c
|
|
/* 022ACA7C */ cpu->r[6] = 0x00000000u;
|
|
/* 022ACA80 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA80 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[6]);
|
|
/* 022ACA84 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 022ACA88 */ cpu->r[11] = 0x00000003u;
|
|
/* 022ACA8C */ _t116 = rbrew_rlwinm(cpu->r[11], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 022ACA8C */ _t117 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 022ACA8C */ cpu->r[0] = _t117 | _t116;
|
|
/* 022ACA90 */ cpu->r[4] = 0x00000001u;
|
|
/* 022ACA94 */ _t118 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA94 */ rbrew_write32(cpu->mem, _t118, cpu->r[0]);
|
|
/* 022ACA98 */ cpu->r[3] = cpu->r[27];
|
|
/* 022ACA9C */ _t119 = cpu->r[1] + 0x0000000Bu;
|
|
/* 022ACA9C */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[6]);
|
|
/* 022ACAA0 */ _t120 = cpu->r[31] + 0x000014C4u;
|
|
/* 022ACAA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 022ACAA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022ACAA8 */ Gambit_fn_025C6A80(cpu);
|
|
L_022ACAAC: ; // 0x22acaac
|
|
/* 022ACAAC */ /* nop */
|
|
/* 022ACAB0 */ _t121 = cpu->r[1] + 0x00000088u;
|
|
/* 022ACAB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 022ACAB4 */ _t122 = cpu->r[1] + 0x00000098u;
|
|
/* 022ACAB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 022ACAB8 */ _t123 = cpu->r[1] + 0x00000080u;
|
|
/* 022ACAB8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 022ACABC */ _t124 = cpu->r[1] + 0x00000090u;
|
|
/* 022ACABC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t124);
|
|
/* 022ACAC0 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ACAC0 */ _t126 = _t125 & 0x00000001u;
|
|
/* 022ACAC0 */ if (_t126) goto L_022ACAC4; // else: addr-0 trap, fall-through
|
|
L_022ACAC4: ; // 0x22acac4
|
|
/* 022ACAC4 */ _t127 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ACAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022ACAC8 */ cpu->lr = cpu->r[0];
|
|
/* 022ACACC */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ACAD0 */ return;
|
|
}
|
|
|
|
// fn_022ACAD4 @ 0x22acad4
|
|
void Gambit_fn_022ACAD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131;
|
|
double _ft49, _ft50;
|
|
|
|
L_022AC718: ; // 0x22ac718
|
|
/* 022AC718 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022AC718 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AC718 */ cpu->r[1] = _t0;
|
|
/* 022AC71C */ /* nop */
|
|
/* 022AC720 */ cpu->r[0] = cpu->lr;
|
|
/* 022AC724 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 022AC724 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AC728 */ /* nop */
|
|
/* 022AC72C */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 022AC72C */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022AC730 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022AC730 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022AC734 */ _t4 = cpu->r[1] + 0x000000A4u;
|
|
/* 022AC734 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AC738 */ /* nop */
|
|
/* 022AC73C */ _t5 = cpu->r[1] + 0x00000088u;
|
|
/* 022AC73C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022AC740 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AC744 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 022AC744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AC748 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AC74C */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 022AC74C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AC750 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC754 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AC758 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AC75C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC760 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AC764 */ cpu->r[27] = cpu->r[3];
|
|
/* 022AC768 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC76C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC770 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022AC774 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022AC778 */ _t8 = cpu->r[26] + 0x00000184u;
|
|
/* 022AC778 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AC778 */ cpu->r[26] = _t8;
|
|
/* 022AC77C */ cpu->r[25] = cpu->r[25] + 0x00000180u;
|
|
/* 022AC780 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AC784 */ cpu->r[28] = 0x10060000u;
|
|
/* 022AC788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AC78C */ cpu->r[28] = cpu->r[28] + 0x0000240Cu;
|
|
/* 022AC790 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC790 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AC790 */ if (_t10) goto L_022AC794; else goto L_022AC7A0;
|
|
L_022AC794: ; // 0x22ac794
|
|
/* 022AC794 */ _t11 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC794 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 022AC798 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC79C */ _t12 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC79C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_022AC7A0: ; // 0x22ac7a0
|
|
/* 022AC7A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AC7A4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7A4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AC7A4 */ if (_t14) goto L_022AC7C8; else goto L_022AC7A8;
|
|
L_022AC7A8: ; // 0x22ac7a8
|
|
/* 022AC7A8 */ _t15 = cpu->r[30] + 0x00000000u;
|
|
/* 022AC7A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AC7AC */ _t16 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022AC7AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AC7B0 */ cpu->ctr = cpu->r[6];
|
|
/* 022AC7B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AC7B8 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC7BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC7C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC7C4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AC7C4 */ if (_t18) goto L_022AC7C8; else goto L_022AC7CC;
|
|
L_022AC7C8: ; // 0x22ac7c8
|
|
/* 022AC7C8 */ cpu->r[30] = 0x00000000u;
|
|
L_022AC7CC: ; // 0x22ac7cc
|
|
/* 022AC7CC */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC7D0 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC7D4 */ _t19 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC7D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AC7D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AC7DC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC7E0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7E0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022AC7E0 */ if (_t21) goto L_022AC7E4; else goto L_022AC7F0;
|
|
L_022AC7E4: ; // 0x22ac7e4
|
|
/* 022AC7E4 */ _t22 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC7E4 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 022AC7E8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022AC7EC */ _t23 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC7EC */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_022AC7F0: ; // 0x22ac7f0
|
|
/* 022AC7F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC7F4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC7F4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AC7F4 */ if (_t25) goto L_022AC818; else goto L_022AC7F8;
|
|
L_022AC7F8: ; // 0x22ac7f8
|
|
/* 022AC7F8 */ _t26 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC7F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AC7FC */ _t27 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022AC7FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AC800 */ cpu->ctr = cpu->r[7];
|
|
/* 022AC804 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC808 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC80C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC814 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC814 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AC814 */ if (_t29) goto L_022AC818; else goto L_022AC81C;
|
|
L_022AC818: ; // 0x22ac818
|
|
/* 022AC818 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC81C: ; // 0x22ac81c
|
|
/* 022AC81C */ cpu->r[3] = cpu->r[27] + 0x00000244u;
|
|
/* 022AC820 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022AC824 */ Gambit_fn_02C69328(cpu);
|
|
/* 022AC828 */ _t30 = cpu->r[30] + 0x000013A4u;
|
|
/* 022AC828 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022AC82C */ _t31 = cpu->r[31] + 0x000013A4u;
|
|
/* 022AC82C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AC830 */ cpu->f[9] = cpu->f[10] * cpu->f[9];
|
|
/* 022AC834 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[9]);
|
|
/* 022AC838 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AC838 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AC838 */ if (_t33) goto L_022AC83C; else goto L_022ACAAC;
|
|
L_022AC83C: ; // 0x22ac83c
|
|
/* 022AC83C */ _t34 = cpu->r[29] + 0x0000013Cu;
|
|
/* 022AC83C */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AC840 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC840 */ rbrew_write32(cpu->mem, _t35, cpu->r[7]);
|
|
/* 022AC844 */ _t36 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC844 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022AC848 */ _t37 = cpu->r[29] + 0x00000134u;
|
|
/* 022AC848 */ cpu->r[5] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AC84C */ cpu->r[11] = 0x10060000u;
|
|
/* 022AC850 */ cpu->f[9] = cpu->f[30] * cpu->f[30];
|
|
/* 022AC854 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC854 */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 022AC858 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AC858 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 022AC85C */ _t40 = cpu->r[11] + 0x000025ACu;
|
|
/* 022AC85C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022AC860 */ cpu->f[11] = fma(cpu->f[8], cpu->f[8], cpu->f[9]);
|
|
/* 022AC864 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[0]);
|
|
/* 022AC868 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 022AC868 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 022AC86C */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AC86C */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AC86C */ if (_t43) goto L_022AC890; else goto L_022AC870;
|
|
L_022AC870: ; // 0x22ac870
|
|
/* 022AC870 */ /* nop */
|
|
/* 022AC874 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC878 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC87C */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC87C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AC880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC884 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC888 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC888 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022AC888 */ if (_t46) goto L_022AC88C; else goto L_022AC8EC;
|
|
L_022AC88C: ; // 0x22ac88c
|
|
/* 022AC88C */ goto L_022AC8E0;
|
|
L_022AC890: ; // 0x22ac890
|
|
/* 022AC890 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AC894 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AC898 */ _t47 = cpu->r[8] + 0x000025F0u;
|
|
/* 022AC898 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 022AC89C */ _t48 = cpu->r[7] + 0x000025ECu;
|
|
/* 022AC89C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022AC8A0 */ _ft49 = sqrt(cpu->f[11]);
|
|
/* 022AC8A0 */ _ft50 = (double)(int32_t)0x00000001u;
|
|
/* 022AC8A0 */ cpu->f[10] = _ft50 / _ft49;
|
|
/* 022AC8A4 */ cpu->f[0] = cpu->f[10] * cpu->f[10];
|
|
/* 022AC8A8 */ cpu->f[9] = cpu->f[10] * cpu->f[12];
|
|
/* 022AC8AC */ cpu->f[0] = -fma(cpu->f[0], cpu->f[11], -(cpu->f[13]));
|
|
/* 022AC8B0 */ cpu->f[10] = cpu->f[0] * cpu->f[9];
|
|
/* 022AC8B4 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC8B4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 022AC8B8 */ /* nop */
|
|
/* 022AC8BC */ cpu->f[30] = cpu->f[30] * cpu->f[10];
|
|
/* 022AC8C0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC8C4 */ _t52 = cpu->r[1] + 0x00000014u;
|
|
/* 022AC8C4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[30]);
|
|
/* 022AC8C8 */ /* nop */
|
|
/* 022AC8CC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC8D0 */ _t53 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC8D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022AC8D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AC8D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC8DC */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC8DC */ _t55 = _t54 & 0x00000001u;
|
|
/* 022AC8DC */ if (_t55) goto L_022AC8E0; else goto L_022AC8EC;
|
|
L_022AC8E0: ; // 0x22ac8e0
|
|
/* 022AC8E0 */ _t56 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC8E0 */ rbrew_write32(cpu->mem, _t56, cpu->r[28]);
|
|
/* 022AC8E4 */ cpu->r[9] = 0x00000001u;
|
|
/* 022AC8E8 */ _t57 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC8E8 */ rbrew_write32(cpu->mem, _t57, cpu->r[9]);
|
|
L_022AC8EC: ; // 0x22ac8ec
|
|
/* 022AC8EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC8F0 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC8F0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022AC8F0 */ if (_t59) goto L_022AC914; else goto L_022AC8F4;
|
|
L_022AC8F4: ; // 0x22ac8f4
|
|
/* 022AC8F4 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC8F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AC8F8 */ _t61 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022AC8F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022AC8FC */ cpu->ctr = cpu->r[0];
|
|
/* 022AC900 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC904 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC908 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC910 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC910 */ _t63 = _t62 & 0x00000001u;
|
|
/* 022AC910 */ if (_t63) goto L_022AC914; else goto L_022AC918;
|
|
L_022AC914: ; // 0x22ac914
|
|
/* 022AC914 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC918: ; // 0x22ac918
|
|
/* 022AC918 */ _t64 = cpu->r[31] + 0x00001404u;
|
|
/* 022AC918 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022AC91C */ /* nop */
|
|
/* 022AC920 */ /* nop */
|
|
/* 022AC924 */ _t65 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AC924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AC928 */ cpu->f[13] = cpu->f[30] * cpu->f[10];
|
|
/* 022AC92C */ _t66 = cpu->r[1] + 0x00000020u;
|
|
/* 022AC92C */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AC930 */ _t67 = cpu->r[1] + 0x00000040u;
|
|
/* 022AC930 */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 022AC934 */ _t68 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC934 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[13]);
|
|
/* 022AC938 */ _t69 = cpu->r[1] + 0x00000024u;
|
|
/* 022AC938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AC93C */ _t70 = cpu->r[1] + 0x00000044u;
|
|
/* 022AC93C */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 022AC940 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AC944 */ _t71 = cpu->r[1] + 0x00000048u;
|
|
/* 022AC944 */ rbrew_write32(cpu->mem, _t71, cpu->r[9]);
|
|
/* 022AC948 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AC94C */ _t72 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC94C */ cpu->r[10] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022AC950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AC954 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AC958 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC958 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022AC958 */ if (_t74) goto L_022AC95C; else goto L_022AC968;
|
|
L_022AC95C: ; // 0x22ac95c
|
|
/* 022AC95C */ _t75 = cpu->r[25] + 0x00000000u;
|
|
/* 022AC95C */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 022AC960 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AC964 */ _t76 = cpu->r[26] + 0x00000000u;
|
|
/* 022AC964 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
L_022AC968: ; // 0x22ac968
|
|
/* 022AC968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AC96C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC96C */ _t78 = _t77 & 0x00000001u;
|
|
/* 022AC96C */ if (_t78) goto L_022AC990; else goto L_022AC970;
|
|
L_022AC970: ; // 0x22ac970
|
|
/* 022AC970 */ _t79 = cpu->r[31] + 0x00000000u;
|
|
/* 022AC970 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022AC974 */ _t80 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AC974 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 022AC978 */ cpu->ctr = cpu->r[5];
|
|
/* 022AC97C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AC980 */ cpu->r[4] = cpu->r[25];
|
|
/* 022AC984 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AC988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AC98C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AC98C */ _t82 = _t81 & 0x00000001u;
|
|
/* 022AC98C */ if (_t82) goto L_022AC990; else goto L_022AC994;
|
|
L_022AC990: ; // 0x22ac990
|
|
/* 022AC990 */ cpu->r[31] = 0x00000000u;
|
|
L_022AC994: ; // 0x22ac994
|
|
/* 022AC994 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022AC998 */ _t83 = cpu->r[31] + 0x00001464u;
|
|
/* 022AC998 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 022AC99C */ cpu->r[6] = cpu->r[6] + 0x00006350u;
|
|
/* 022AC9A0 */ /* nop */
|
|
/* 022AC9A4 */ /* nop */
|
|
/* 022AC9A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AC9AC */ _t84 = cpu->r[6] + 0x00000008u;
|
|
/* 022AC9AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 022AC9B0 */ /* nop */
|
|
/* 022AC9B4 */ _t85 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AC9B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t85);
|
|
/* 022AC9B8 */ /* nop */
|
|
/* 022AC9BC */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 022AC9BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022AC9C0 */ _t87 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AC9C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022AC9C4 */ cpu->f[8] = cpu->f[13] * cpu->f[0];
|
|
/* 022AC9C8 */ _t88 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AC9C8 */ rbrew_write32(cpu->mem, _t88, cpu->r[9]);
|
|
/* 022AC9CC */ _t89 = cpu->r[1] + 0x00000050u;
|
|
/* 022AC9CC */ rbrew_write32(cpu->mem, _t89, cpu->r[10]);
|
|
/* 022AC9D0 */ /* nop */
|
|
/* 022AC9D4 */ _t90 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC9D4 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[8]);
|
|
/* 022AC9D8 */ _t91 = cpu->r[1] + 0x00000030u;
|
|
/* 022AC9D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022AC9DC */ _t92 = cpu->r[1] + 0x00000048u;
|
|
/* 022AC9DC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 022AC9E0 */ cpu->r[8] = 0x00000002u;
|
|
/* 022AC9E4 */ _t93 = cpu->r[1] + 0x00000054u;
|
|
/* 022AC9E4 */ rbrew_write32(cpu->mem, _t93, cpu->r[11]);
|
|
/* 022AC9E8 */ _t94 = cpu->r[1] + 0x00000054u;
|
|
/* 022AC9E8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 022AC9EC */ /* nop */
|
|
/* 022AC9F0 */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 022AC9F0 */ rbrew_write32(cpu->mem, _t95, cpu->r[8]);
|
|
/* 022AC9F4 */ cpu->f[8] = cpu->f[9] + cpu->f[11];
|
|
/* 022AC9F8 */ /* nop */
|
|
/* 022AC9FC */ _t96 = cpu->r[1] + 0x00000034u;
|
|
/* 022AC9FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t96);
|
|
/* 022ACA00 */ _t97 = cpu->r[1] + 0x00000038u;
|
|
/* 022ACA00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022ACA04 */ _t98 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ACA04 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 022ACA08 */ _t99 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ACA08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 022ACA0C */ cpu->f[2] = cpu->f[1];
|
|
/* 022ACA10 */ _t100 = cpu->r[1] + 0x00000058u;
|
|
/* 022ACA10 */ rbrew_write32(cpu->mem, _t100, cpu->r[11]);
|
|
/* 022ACA14 */ cpu->r[4] = cpu->r[1] + 0x00000058u;
|
|
/* 022ACA18 */ cpu->r[3] = cpu->r[27];
|
|
/* 022ACA1C */ _t101 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022ACA1C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]);
|
|
/* 022ACA20 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022ACA24 */ _t102 = cpu->r[1] + 0x00000060u;
|
|
/* 022ACA24 */ rbrew_write32(cpu->mem, _t102, cpu->r[6]);
|
|
/* 022ACA28 */ Gambit_fn_025BD378(cpu);
|
|
/* 022ACA2C */ cpu->r[3] = cpu->r[29];
|
|
/* 022ACA30 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ACA34 */ _t103 = cpu->r[26] + 0x00000000u;
|
|
/* 022ACA34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022ACA38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022ACA3C */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACA40 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA40 */ _t105 = _t104 & 0x00000001u;
|
|
/* 022ACA40 */ if (_t105) goto L_022ACA44; else goto L_022ACA50;
|
|
L_022ACA44: ; // 0x22aca44
|
|
/* 022ACA44 */ _t106 = cpu->r[25] + 0x00000000u;
|
|
/* 022ACA44 */ rbrew_write32(cpu->mem, _t106, cpu->r[28]);
|
|
/* 022ACA48 */ cpu->r[0] = 0x00000001u;
|
|
/* 022ACA4C */ _t107 = cpu->r[26] + 0x00000000u;
|
|
/* 022ACA4C */ rbrew_write32(cpu->mem, _t107, cpu->r[0]);
|
|
L_022ACA50: ; // 0x22aca50
|
|
/* 022ACA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ACA54 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA54 */ _t109 = _t108 & 0x00000001u;
|
|
/* 022ACA54 */ if (_t109) goto L_022ACA78; else goto L_022ACA58;
|
|
L_022ACA58: ; // 0x22aca58
|
|
/* 022ACA58 */ _t110 = cpu->r[31] + 0x00000000u;
|
|
/* 022ACA58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 022ACA5C */ _t111 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022ACA5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t111);
|
|
/* 022ACA60 */ cpu->ctr = cpu->r[6];
|
|
/* 022ACA64 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ACA68 */ cpu->r[4] = cpu->r[25];
|
|
/* 022ACA6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ACA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ACA74 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACA74 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022ACA74 */ if (_t113) goto L_022ACA78; else goto L_022ACA7C;
|
|
L_022ACA78: ; // 0x22aca78
|
|
/* 022ACA78 */ cpu->r[31] = 0x00000000u;
|
|
L_022ACA7C: ; // 0x22aca7c
|
|
/* 022ACA7C */ cpu->r[6] = 0x00000000u;
|
|
/* 022ACA80 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA80 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[6]);
|
|
/* 022ACA84 */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t115);
|
|
/* 022ACA88 */ cpu->r[11] = 0x00000003u;
|
|
/* 022ACA8C */ _t116 = rbrew_rlwinm(cpu->r[11], 0x00000009u, 0x00000010u, 0x00000016u);
|
|
/* 022ACA8C */ _t117 = cpu->r[0] & 0xFFFF01FFu;
|
|
/* 022ACA8C */ cpu->r[0] = _t117 | _t116;
|
|
/* 022ACA90 */ cpu->r[4] = 0x00000001u;
|
|
/* 022ACA94 */ _t118 = cpu->r[1] + 0x00000008u;
|
|
/* 022ACA94 */ rbrew_write32(cpu->mem, _t118, cpu->r[0]);
|
|
/* 022ACA98 */ cpu->r[3] = cpu->r[27];
|
|
/* 022ACA9C */ _t119 = cpu->r[1] + 0x0000000Bu;
|
|
/* 022ACA9C */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[6]);
|
|
/* 022ACAA0 */ _t120 = cpu->r[31] + 0x000014C4u;
|
|
/* 022ACAA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t120);
|
|
/* 022ACAA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022ACAA8 */ Gambit_fn_025C6A80(cpu);
|
|
L_022ACAAC: ; // 0x22acaac
|
|
/* 022ACAAC */ /* nop */
|
|
/* 022ACAB0 */ _t121 = cpu->r[1] + 0x00000088u;
|
|
/* 022ACAB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t121);
|
|
/* 022ACAB4 */ _t122 = cpu->r[1] + 0x00000098u;
|
|
/* 022ACAB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122);
|
|
/* 022ACAB8 */ _t123 = cpu->r[1] + 0x00000080u;
|
|
/* 022ACAB8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t123);
|
|
/* 022ACABC */ _t124 = cpu->r[1] + 0x00000090u;
|
|
/* 022ACABC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t124);
|
|
/* 022ACAC0 */ _t125 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ACAC0 */ _t126 = _t125 & 0x00000001u;
|
|
/* 022ACAC0 */ if (_t126) goto L_022ACAC4; // else: addr-0 trap, fall-through
|
|
L_022ACAC4: ; // 0x22acac4
|
|
/* 022ACAC4 */ _t127 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ACAC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t127);
|
|
/* 022ACAC8 */ cpu->lr = cpu->r[0];
|
|
/* 022ACACC */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ACAD0 */ return;
|
|
L_022ACAD4: ; // 0x22acad4
|
|
/* 022ACAD4 */ _t128 = cpu->r[3] + 0x00000302u;
|
|
/* 022ACAD4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t128);
|
|
/* 022ACAD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022ACADC */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACADC */ _t130 = _t129 & 0x00000001u;
|
|
/* 022ACADC */ if (_t130) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022ACADC */ goto L_022ACAE0;
|
|
L_022ACAE0: ; // 0x22acae0
|
|
/* 022ACAE0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022ACAE4 */ _t131 = cpu->r[3] + 0x00000302u;
|
|
/* 022ACAE4 */ rbrew_write8(cpu->mem, _t131, (uint8_t)cpu->r[0]);
|
|
/* 022ACAE8 */ goto L_022AC718;
|
|
}
|
|
|
|
// fn_022ACAEC @ 0x22acaec
|
|
void Gambit_fn_022ACAEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022709EC: ; // 0x22709ec
|
|
/* 022709EC */ cpu->r[0] = cpu->lr;
|
|
/* 022709F0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022709F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022709F0 */ cpu->r[1] = _t0;
|
|
/* 022709F4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022709F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022709F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022709FC */ _t2 = cpu->r[12] + 0xFFFF8F14u;
|
|
/* 022709FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02270A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02270A04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270A04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02270A08 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02270A08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02270A0C */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02270A0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02270A10 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 02270A10 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 02270A14 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02270A14 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[7]);
|
|
/* 02270A18 */ _t8 = cpu->r[31] + 0x00000140u;
|
|
/* 02270A18 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02270A1C */ _t9 = cpu->r[31] + 0x0000017Cu;
|
|
/* 02270A1C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02270A20 */ _t10 = cpu->r[31] + 0x00000120u;
|
|
/* 02270A20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02270A24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02270A28 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02270A28 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02270A2C */ _t12 = cpu->r[31] + 0x00000124u;
|
|
/* 02270A2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02270A30 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 02270A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02270A34 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02270A34 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02270A38 */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02270A38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02270A3C */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 02270A3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02270A40 */ _t17 = cpu->r[31] + 0x00000128u;
|
|
/* 02270A40 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02270A44 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 02270A44 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02270A48 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02270A48 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02270A4C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02270A4C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 02270A50 */ _t21 = cpu->r[31] + 0x00000134u;
|
|
/* 02270A50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02270A54 */ _t22 = cpu->r[31] + 0x00000148u;
|
|
/* 02270A54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02270A58 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02270A58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 02270A5C */ _t24 = cpu->r[1] + 0x00000040u;
|
|
/* 02270A5C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02270A60 */ _t25 = cpu->r[31] + 0x0000013Cu;
|
|
/* 02270A60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02270A64 */ _t26 = cpu->r[31] + 0x00000144u;
|
|
/* 02270A64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02270A68 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02270A68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[6]);
|
|
/* 02270A6C */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02270A6C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02270A70 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02270A70 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02270A70 */ if (_t30) goto L_02270A90; else goto L_02270A74;
|
|
L_02270A74: ; // 0x2270a74
|
|
/* 02270A74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A78 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02270A78 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02270A7C */ cpu->r[4] = cpu->r[3];
|
|
/* 02270A80 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02270A80 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
/* 02270A84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02270A88 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02270A88 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 02270A8C */ Gambit_fn_02253CE4(cpu);
|
|
L_02270A90: ; // 0x2270a90
|
|
/* 02270A90 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 02270A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02270A94 */ _t35 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270A94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02270A98 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A9C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02270AA0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02270AA4 */ _t36 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270AA4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
/* 02270AA8 */ Gambit_fn_02C69510(cpu);
|
|
/* 02270AAC */ cpu->r[4] = 0x00000003u;
|
|
/* 02270AB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270AB4 */ Gambit_fn_02980304(cpu);
|
|
/* 02270AB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270ABC */ Gambit_fn_02980318(cpu);
|
|
/* 02270AC0 */ _t37 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02270AC4 */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02270AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02270AC8 */ cpu->lr = cpu->r[0];
|
|
/* 02270ACC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02270AD0 */ return;
|
|
L_022ACAEC: ; // 0x22acaec
|
|
/* 022ACAEC */ goto L_022709EC;
|
|
}
|
|
|
|
// fn_022ACAF0 @ 0x22acaf0
|
|
void Gambit_fn_022ACAF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022ACAF0: ; // 0x22acaf0
|
|
/* 022ACAF0 */ cpu->r[0] = cpu->lr;
|
|
/* 022ACAF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ACAF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ACAF4 */ cpu->r[1] = _t0;
|
|
/* 022ACAF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ACAF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ACAFC */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACB00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ACB00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ACB04 */ Gambit_fn_02276CB8(cpu);
|
|
/* 022ACB08 */ _t3 = cpu->r[31] + 0x00000300u;
|
|
/* 022ACB08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022ACB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ACB10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACB10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022ACB10 */ if (_t5) goto L_022ACB20; else goto L_022ACB14;
|
|
L_022ACB14: ; // 0x22acb14
|
|
/* 022ACB14 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022ACB18 */ cpu->r[4] = 0x00000002u;
|
|
/* 022ACB1C */ Gambit_fn_022AEDC4(cpu);
|
|
L_022ACB20: ; // 0x22acb20
|
|
/* 022ACB20 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ACB20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ACB24 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ACB24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ACB28 */ cpu->lr = cpu->r[0];
|
|
/* 022ACB2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ACB30 */ return;
|
|
}
|
|
|
|
// fn_022ACAF4 @ 0x22acaf4
|
|
void Gambit_fn_022ACAF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022ACAF4: ; // 0x22acaf4
|
|
/* 022ACAF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ACAF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ACAF4 */ cpu->r[1] = _t0;
|
|
/* 022ACAF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ACAF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ACAFC */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACB00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ACB00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ACB04 */ Gambit_fn_02276CB8(cpu);
|
|
/* 022ACB08 */ _t3 = cpu->r[31] + 0x00000300u;
|
|
/* 022ACB08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022ACB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ACB10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACB10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022ACB10 */ if (_t5) goto L_022ACB20; else goto L_022ACB14;
|
|
L_022ACB14: ; // 0x22acb14
|
|
/* 022ACB14 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022ACB18 */ cpu->r[4] = 0x00000002u;
|
|
/* 022ACB1C */ Gambit_fn_022AEDC4(cpu);
|
|
L_022ACB20: ; // 0x22acb20
|
|
/* 022ACB20 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022ACB20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ACB24 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ACB24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ACB28 */ cpu->lr = cpu->r[0];
|
|
/* 022ACB2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ACB30 */ return;
|
|
}
|
|
|
|
// fn_022ACB34 @ 0x22acb34
|
|
void Gambit_fn_022ACB34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233;
|
|
|
|
L_022ACB34: ; // 0x22acb34
|
|
/* 022ACB34 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 022ACB34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ACB34 */ cpu->r[1] = _t0;
|
|
/* 022ACB38 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 022ACB38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 022ACB3C */ /* nop */
|
|
/* 022ACB40 */ cpu->r[0] = cpu->lr;
|
|
/* 022ACB44 */ /* nop */
|
|
/* 022ACB48 */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 022ACB48 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[30]);
|
|
/* 022ACB4C */ /* nop */
|
|
/* 022ACB50 */ _t3 = cpu->r[1] + 0x00000050u;
|
|
/* 022ACB50 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022ACB54 */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 022ACB54 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022ACB58 */ /* nop */
|
|
/* 022ACB5C */ _t5 = cpu->r[1] + 0x00000020u;
|
|
/* 022ACB5C */ rbrew_write_f64(cpu->mem, _t5, cpu->f[28]);
|
|
/* 022ACB60 */ _t6 = cpu->r[1] + 0x00000058u;
|
|
/* 022ACB60 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 022ACB64 */ /* nop */
|
|
/* 022ACB68 */ _t7 = cpu->r[1] + 0x00000064u;
|
|
/* 022ACB68 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022ACB6C */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACB6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ACB70 */ _t8 = cpu->r[1] + 0x00000028u;
|
|
/* 022ACB70 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 022ACB74 */ _t9 = cpu->r[1] + 0x00000048u;
|
|
/* 022ACB74 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]);
|
|
/* 022ACB78 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACB78 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022ACB78 */ if (_t11) goto L_022ACB7C; else goto L_022ACB8C;
|
|
L_022ACB7C: ; // 0x22acb7c
|
|
/* 022ACB7C */ cpu->r[3] = 0x00001950u;
|
|
/* 022ACB80 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ACB84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ACB88 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACB88 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022ACB88 */ if (_t13) goto L_022AD388; else goto L_022ACB8C;
|
|
L_022ACB8C: ; // 0x22acb8c
|
|
/* 022ACB8C */ cpu->r[3] = cpu->r[31];
|
|
/* 022ACB90 */ Gambit_fn_02276DB4(cpu);
|
|
/* 022ACB94 */ cpu->r[0] = 0x10060000u;
|
|
/* 022ACB98 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ACB9C */ cpu->r[0] = cpu->r[0] + 0x00002464u;
|
|
/* 022ACBA0 */ cpu->r[28] = 0x10110000u;
|
|
/* 022ACBA4 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022ACBA4 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 022ACBA8 */ cpu->r[28] = cpu->r[28] + 0x00000A2Cu;
|
|
/* 022ACBAC */ cpu->r[30] = cpu->r[31] + 0x000010B0u;
|
|
/* 022ACBAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACBB0 */ _t15 = cpu->r[9] + 0x000025ACu;
|
|
/* 022ACBB0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022ACBB4 */ cpu->r[29] = 0x00000000u;
|
|
/* 022ACBB8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACBB8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022ACBB8 */ if (_t17) goto L_022ACBBC; else goto L_022ACBCC;
|
|
L_022ACBBC: ; // 0x22acbbc
|
|
/* 022ACBBC */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACBC0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACBC4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACBC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACBC8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACBC8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022ACBC8 */ if (_t19) goto L_022ACC10; else goto L_022ACBCC;
|
|
L_022ACBCC: ; // 0x22acbcc
|
|
/* 022ACBCC */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACBD0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACBD4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACBD8 */ cpu->r[5] = cpu->r[5] + 0x00002848u;
|
|
/* 022ACBDC */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACBE0 */ cpu->r[6] = cpu->r[6] + 0x000026BCu;
|
|
/* 022ACBE4 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACBE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACBEC */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACBF0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022ACBF4 */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACBF4 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 022ACBF8 */ cpu->r[7] = 0x10060000u;
|
|
/* 022ACBFC */ _t21 = cpu->r[8] + 0x000025F4u;
|
|
/* 022ACBFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022ACC00 */ _t22 = cpu->r[7] + 0x000025F0u;
|
|
/* 022ACC00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022ACC04 */ _t23 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACC04 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 022ACC08 */ _t24 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACC08 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 022ACC0C */ _t25 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACC0C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[29]);
|
|
L_022ACC10: ; // 0x22acc10
|
|
/* 022ACC10 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ACC14 */ cpu->r[30] = cpu->r[31] + 0x00001110u;
|
|
/* 022ACC14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACC18 */ _t26 = cpu->r[11] + 0x000025D8u;
|
|
/* 022ACC18 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022ACC1C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACC1C */ _t28 = _t27 & 0x00000001u;
|
|
/* 022ACC1C */ if (_t28) goto L_022ACC20; else goto L_022ACC30;
|
|
L_022ACC20: ; // 0x22acc20
|
|
/* 022ACC20 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACC24 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACC28 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACC28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACC2C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACC2C */ _t30 = _t29 & 0x00000001u;
|
|
/* 022ACC2C */ if (_t30) goto L_022ACC6C; else goto L_022ACC30;
|
|
L_022ACC30: ; // 0x22acc30
|
|
/* 022ACC30 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACC34 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACC38 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACC3C */ cpu->r[5] = cpu->r[5] + 0x00002854u;
|
|
/* 022ACC40 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACC44 */ cpu->r[6] = cpu->r[6] + 0x00002758u;
|
|
/* 022ACC48 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACC4C */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACC50 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACC54 */ _t31 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACC54 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[28]);
|
|
/* 022ACC58 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ACC5C */ _t32 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACC5C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[29]);
|
|
/* 022ACC60 */ _t33 = cpu->r[10] + 0x000025F8u;
|
|
/* 022ACC60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 022ACC64 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACC64 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 022ACC68 */ _t35 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACC68 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[13]);
|
|
L_022ACC6C: ; // 0x22acc6c
|
|
/* 022ACC6C */ cpu->r[30] = cpu->r[31] + 0x00001170u;
|
|
/* 022ACC6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACC70 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACC70 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022ACC70 */ if (_t37) goto L_022ACC74; else goto L_022ACC84;
|
|
L_022ACC74: ; // 0x22acc74
|
|
/* 022ACC74 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACC78 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACC7C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACC7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACC80 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACC80 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022ACC80 */ if (_t39) goto L_022ACCC8; else goto L_022ACC84;
|
|
L_022ACC84: ; // 0x22acc84
|
|
/* 022ACC84 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACC88 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACC8C */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACC90 */ cpu->r[5] = cpu->r[5] + 0x000026C8u;
|
|
/* 022ACC94 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACC98 */ cpu->r[6] = cpu->r[6] + 0x000026D4u;
|
|
/* 022ACC9C */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACCA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACCA4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACCA8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ACCAC */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACCAC */ rbrew_write32(cpu->mem, _t40, cpu->r[28]);
|
|
/* 022ACCB0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022ACCB4 */ _t41 = cpu->r[9] + 0x000025FCu;
|
|
/* 022ACCB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022ACCB8 */ _t42 = cpu->r[8] + 0x00002600u;
|
|
/* 022ACCB8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022ACCBC */ _t43 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACCBC */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
/* 022ACCC0 */ _t44 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACCC0 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[0]);
|
|
/* 022ACCC4 */ _t45 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACCC4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[29]);
|
|
L_022ACCC8: ; // 0x22accc8
|
|
/* 022ACCC8 */ cpu->r[27] = 0x10110000u;
|
|
/* 022ACCCC */ cpu->r[30] = cpu->r[31] + 0x000011D0u;
|
|
/* 022ACCCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACCD0 */ cpu->r[27] = cpu->r[27] + 0x0000095Cu;
|
|
/* 022ACCD4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACCD4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022ACCD4 */ if (_t47) goto L_022ACCD8; else goto L_022ACCE8;
|
|
L_022ACCD8: ; // 0x22accd8
|
|
/* 022ACCD8 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACCDC */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACCE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACCE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACCE4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACCE4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022ACCE4 */ if (_t49) goto L_022ACD24; else goto L_022ACCE8;
|
|
L_022ACCE8: ; // 0x22acce8
|
|
/* 022ACCE8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACCEC */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACCF0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACCF4 */ cpu->r[5] = cpu->r[5] + 0x00002768u;
|
|
/* 022ACCF8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACCFC */ cpu->r[6] = cpu->r[6] + 0x00002774u;
|
|
/* 022ACD00 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACD04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACD08 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACD0C */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACD0C */ rbrew_write32(cpu->mem, _t50, cpu->r[27]);
|
|
/* 022ACD10 */ cpu->r[12] = 0x0000003Cu;
|
|
/* 022ACD14 */ _t51 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACD14 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 022ACD18 */ cpu->r[0] = 0x000003E8u;
|
|
/* 022ACD1C */ _t52 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACD1C */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 022ACD20 */ _t53 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACD20 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
L_022ACD24: ; // 0x22acd24
|
|
/* 022ACD24 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ACD28 */ cpu->r[30] = cpu->r[31] + 0x00001230u;
|
|
/* 022ACD28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACD2C */ _t54 = cpu->r[12] + 0x00002604u;
|
|
/* 022ACD2C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022ACD30 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACD30 */ _t56 = _t55 & 0x00000001u;
|
|
/* 022ACD30 */ if (_t56) goto L_022ACD34; else goto L_022ACD44;
|
|
L_022ACD34: ; // 0x22acd34
|
|
/* 022ACD34 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACD38 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACD3C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACD3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACD40 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACD40 */ _t58 = _t57 & 0x00000001u;
|
|
/* 022ACD40 */ if (_t58) goto L_022ACD80; else goto L_022ACD44;
|
|
L_022ACD44: ; // 0x22acd44
|
|
/* 022ACD44 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACD48 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACD4C */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACD50 */ cpu->r[5] = cpu->r[5] + 0x000026E8u;
|
|
/* 022ACD54 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACD58 */ cpu->r[6] = cpu->r[6] + 0x000026FCu;
|
|
/* 022ACD5C */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACD60 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACD64 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACD68 */ _t59 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACD68 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
/* 022ACD6C */ cpu->r[11] = 0x10060000u;
|
|
/* 022ACD70 */ _t60 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACD70 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[29]);
|
|
/* 022ACD74 */ _t61 = cpu->r[11] + 0x00002608u;
|
|
/* 022ACD74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 022ACD78 */ _t62 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACD78 */ rbrew_write32(cpu->mem, _t62, cpu->r[28]);
|
|
/* 022ACD7C */ _t63 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACD7C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[12]);
|
|
L_022ACD80: ; // 0x22acd80
|
|
/* 022ACD80 */ cpu->r[30] = cpu->r[31] + 0x00001290u;
|
|
/* 022ACD80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACD84 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACD84 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022ACD84 */ if (_t65) goto L_022ACD88; else goto L_022ACD98;
|
|
L_022ACD88: ; // 0x22acd88
|
|
/* 022ACD88 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACD8C */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACD90 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACD94 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACD94 */ _t67 = _t66 & 0x00000001u;
|
|
/* 022ACD94 */ if (_t67) goto L_022ACDD4; else goto L_022ACD98;
|
|
L_022ACD98: ; // 0x22acd98
|
|
/* 022ACD98 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACD9C */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACDA0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACDA4 */ cpu->r[5] = cpu->r[5] + 0x00002644u;
|
|
/* 022ACDA8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACDAC */ cpu->r[6] = cpu->r[6] + 0x00002860u;
|
|
/* 022ACDB0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACDB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACDB8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACDBC */ _t68 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACDBC */ rbrew_write_f32(cpu->mem, _t68, cpu->f[28]);
|
|
/* 022ACDC0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ACDC4 */ _t69 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACDC4 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[29]);
|
|
/* 022ACDC8 */ _t70 = cpu->r[10] + 0x0000260Cu;
|
|
/* 022ACDC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022ACDCC */ _t71 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACDCC */ rbrew_write32(cpu->mem, _t71, cpu->r[28]);
|
|
/* 022ACDD0 */ _t72 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACDD0 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
L_022ACDD4: ; // 0x22acdd4
|
|
/* 022ACDD4 */ cpu->r[30] = cpu->r[31] + 0x000012F0u;
|
|
/* 022ACDD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACDD8 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACDD8 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022ACDD8 */ if (_t74) goto L_022ACDDC; else goto L_022ACDEC;
|
|
L_022ACDDC: ; // 0x22acddc
|
|
/* 022ACDDC */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACDE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACDE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACDE8 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACDE8 */ _t76 = _t75 & 0x00000001u;
|
|
/* 022ACDE8 */ if (_t76) goto L_022ACE28; else goto L_022ACDEC;
|
|
L_022ACDEC: ; // 0x22acdec
|
|
/* 022ACDEC */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACDF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACDF4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACDF8 */ cpu->r[5] = cpu->r[5] + 0x0000287Cu;
|
|
/* 022ACDFC */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACE00 */ cpu->r[6] = cpu->r[6] + 0x0000288Cu;
|
|
/* 022ACE04 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACE08 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACE0C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACE10 */ _t77 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACE10 */ rbrew_write_f32(cpu->mem, _t77, cpu->f[28]);
|
|
/* 022ACE14 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ACE18 */ _t78 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACE18 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[29]);
|
|
/* 022ACE1C */ _t79 = cpu->r[9] + 0x00002610u;
|
|
/* 022ACE1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 022ACE20 */ _t80 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACE20 */ rbrew_write32(cpu->mem, _t80, cpu->r[28]);
|
|
/* 022ACE24 */ _t81 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACE24 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[0]);
|
|
L_022ACE28: ; // 0x22ace28
|
|
/* 022ACE28 */ cpu->r[30] = cpu->r[31] + 0x00001350u;
|
|
/* 022ACE28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACE2C */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACE2C */ _t83 = _t82 & 0x00000001u;
|
|
/* 022ACE2C */ if (_t83) goto L_022ACE30; else goto L_022ACE40;
|
|
L_022ACE30: ; // 0x22ace30
|
|
/* 022ACE30 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACE34 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACE38 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACE38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACE3C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACE3C */ _t85 = _t84 & 0x00000001u;
|
|
/* 022ACE3C */ if (_t85) goto L_022ACE7C; else goto L_022ACE40;
|
|
L_022ACE40: ; // 0x22ace40
|
|
/* 022ACE40 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACE44 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACE48 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACE4C */ cpu->r[5] = cpu->r[5] + 0x000028A8u;
|
|
/* 022ACE50 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACE54 */ cpu->r[6] = cpu->r[6] + 0x00002720u;
|
|
/* 022ACE58 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACE5C */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACE60 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACE64 */ _t86 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACE64 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[29]);
|
|
/* 022ACE68 */ cpu->r[7] = 0x10060000u;
|
|
/* 022ACE6C */ _t87 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACE6C */ rbrew_write32(cpu->mem, _t87, cpu->r[28]);
|
|
/* 022ACE70 */ _t88 = cpu->r[7] + 0x00002614u;
|
|
/* 022ACE70 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022ACE74 */ _t89 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACE74 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[31]);
|
|
/* 022ACE78 */ _t90 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACE78 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
L_022ACE7C: ; // 0x22ace7c
|
|
/* 022ACE7C */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACE80 */ cpu->r[30] = cpu->r[31] + 0x000013B0u;
|
|
/* 022ACE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACE84 */ _t91 = cpu->r[6] + 0x00002618u;
|
|
/* 022ACE84 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 022ACE88 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACE88 */ _t93 = _t92 & 0x00000001u;
|
|
/* 022ACE88 */ if (_t93) goto L_022ACE8C; else goto L_022ACE9C;
|
|
L_022ACE8C: ; // 0x22ace8c
|
|
/* 022ACE8C */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACE90 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACE94 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACE94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACE98 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACE98 */ _t95 = _t94 & 0x00000001u;
|
|
/* 022ACE98 */ if (_t95) goto L_022ACED8; else goto L_022ACE9C;
|
|
L_022ACE9C: ; // 0x22ace9c
|
|
/* 022ACE9C */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACEA0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACEA4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACEA8 */ cpu->r[5] = cpu->r[5] + 0x00002654u;
|
|
/* 022ACEAC */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACEB0 */ cpu->r[6] = cpu->r[6] + 0x000028B8u;
|
|
/* 022ACEB4 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACEB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACEBC */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACEC0 */ _t96 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACEC0 */ rbrew_write_f32(cpu->mem, _t96, cpu->f[30]);
|
|
/* 022ACEC4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ACEC8 */ _t97 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACEC8 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[29]);
|
|
/* 022ACECC */ _t98 = cpu->r[12] + 0x0000261Cu;
|
|
/* 022ACECC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 022ACED0 */ _t99 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACED0 */ rbrew_write32(cpu->mem, _t99, cpu->r[28]);
|
|
/* 022ACED4 */ _t100 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACED4 */ rbrew_write_f32(cpu->mem, _t100, cpu->f[13]);
|
|
L_022ACED8: ; // 0x22aced8
|
|
/* 022ACED8 */ cpu->r[30] = cpu->r[31] + 0x00001410u;
|
|
/* 022ACED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACEDC */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACEDC */ _t102 = _t101 & 0x00000001u;
|
|
/* 022ACEDC */ if (_t102) goto L_022ACEE0; else goto L_022ACEF0;
|
|
L_022ACEE0: ; // 0x22acee0
|
|
/* 022ACEE0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACEE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACEE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACEEC */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACEEC */ _t104 = _t103 & 0x00000001u;
|
|
/* 022ACEEC */ if (_t104) goto L_022ACF2C; else goto L_022ACEF0;
|
|
L_022ACEF0: ; // 0x22acef0
|
|
/* 022ACEF0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACEF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACEF8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACEFC */ cpu->r[5] = cpu->r[5] + 0x00002664u;
|
|
/* 022ACF00 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACF04 */ cpu->r[6] = cpu->r[6] + 0x000028C8u;
|
|
/* 022ACF08 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACF0C */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACF10 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACF14 */ _t105 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACF14 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[30]);
|
|
/* 022ACF18 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ACF1C */ _t106 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACF1C */ rbrew_write_f32(cpu->mem, _t106, cpu->f[29]);
|
|
/* 022ACF20 */ _t107 = cpu->r[11] + 0x00002620u;
|
|
/* 022ACF20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t107);
|
|
/* 022ACF24 */ _t108 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACF24 */ rbrew_write32(cpu->mem, _t108, cpu->r[28]);
|
|
/* 022ACF28 */ _t109 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACF28 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[0]);
|
|
L_022ACF2C: ; // 0x22acf2c
|
|
/* 022ACF2C */ cpu->r[30] = cpu->r[31] + 0x00001470u;
|
|
/* 022ACF2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACF30 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACF30 */ _t111 = _t110 & 0x00000001u;
|
|
/* 022ACF30 */ if (_t111) goto L_022ACF34; else goto L_022ACF44;
|
|
L_022ACF34: ; // 0x22acf34
|
|
/* 022ACF34 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACF38 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACF3C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACF40 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACF40 */ _t113 = _t112 & 0x00000001u;
|
|
/* 022ACF40 */ if (_t113) goto L_022ACF80; else goto L_022ACF44;
|
|
L_022ACF44: ; // 0x22acf44
|
|
/* 022ACF44 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACF48 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACF4C */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACF50 */ cpu->r[5] = cpu->r[5] + 0x000028D8u;
|
|
/* 022ACF54 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACF58 */ cpu->r[6] = cpu->r[6] + 0x00002674u;
|
|
/* 022ACF5C */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACF60 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACF64 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACF68 */ _t114 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACF68 */ rbrew_write_f32(cpu->mem, _t114, cpu->f[28]);
|
|
/* 022ACF6C */ cpu->r[10] = 0x10060000u;
|
|
/* 022ACF70 */ _t115 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACF70 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 022ACF74 */ _t116 = cpu->r[10] + 0x00002624u;
|
|
/* 022ACF74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t116);
|
|
/* 022ACF78 */ _t117 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACF78 */ rbrew_write32(cpu->mem, _t117, cpu->r[28]);
|
|
/* 022ACF7C */ _t118 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACF7C */ rbrew_write_f32(cpu->mem, _t118, cpu->f[12]);
|
|
L_022ACF80: ; // 0x22acf80
|
|
/* 022ACF80 */ cpu->r[30] = cpu->r[31] + 0x000014D0u;
|
|
/* 022ACF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACF84 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACF84 */ _t120 = _t119 & 0x00000001u;
|
|
/* 022ACF84 */ if (_t120) goto L_022ACF88; else goto L_022ACF98;
|
|
L_022ACF88: ; // 0x22acf88
|
|
/* 022ACF88 */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACF8C */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACF90 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACF94 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACF94 */ _t122 = _t121 & 0x00000001u;
|
|
/* 022ACF94 */ if (_t122) goto L_022ACFD4; else goto L_022ACF98;
|
|
L_022ACF98: ; // 0x22acf98
|
|
/* 022ACF98 */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACF9C */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACFA0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACFA4 */ cpu->r[5] = cpu->r[5] + 0x000028E8u;
|
|
/* 022ACFA8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022ACFAC */ cpu->r[6] = cpu->r[6] + 0x000028F8u;
|
|
/* 022ACFB0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022ACFB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ACFB8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022ACFBC */ _t123 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022ACFBC */ rbrew_write_f32(cpu->mem, _t123, cpu->f[31]);
|
|
/* 022ACFC0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022ACFC4 */ _t124 = cpu->r[30] + 0x00000058u;
|
|
/* 022ACFC4 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[29]);
|
|
/* 022ACFC8 */ _t125 = cpu->r[9] + 0x00002628u;
|
|
/* 022ACFC8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 022ACFCC */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 022ACFCC */ rbrew_write32(cpu->mem, _t126, cpu->r[28]);
|
|
/* 022ACFD0 */ _t127 = cpu->r[30] + 0x00000054u;
|
|
/* 022ACFD0 */ rbrew_write_f32(cpu->mem, _t127, cpu->f[13]);
|
|
L_022ACFD4: ; // 0x22acfd4
|
|
/* 022ACFD4 */ cpu->r[30] = cpu->r[31] + 0x00001530u;
|
|
/* 022ACFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACFD8 */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACFD8 */ _t129 = _t128 & 0x00000001u;
|
|
/* 022ACFD8 */ if (_t129) goto L_022ACFDC; else goto L_022ACFEC;
|
|
L_022ACFDC: ; // 0x22acfdc
|
|
/* 022ACFDC */ cpu->r[3] = 0x00000060u;
|
|
/* 022ACFE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022ACFE4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ACFE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022ACFE8 */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ACFE8 */ _t131 = _t130 & 0x00000001u;
|
|
/* 022ACFE8 */ if (_t131) goto L_022AD028; else goto L_022ACFEC;
|
|
L_022ACFEC: ; // 0x22acfec
|
|
/* 022ACFEC */ cpu->r[5] = 0x10060000u;
|
|
/* 022ACFF0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022ACFF4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022ACFF8 */ cpu->r[5] = cpu->r[5] + 0x00002904u;
|
|
/* 022ACFFC */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD000 */ cpu->r[6] = cpu->r[6] + 0x00002784u;
|
|
/* 022AD004 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD008 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD00C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD010 */ _t132 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD010 */ rbrew_write32(cpu->mem, _t132, cpu->r[27]);
|
|
/* 022AD014 */ cpu->r[10] = 0x00000258u;
|
|
/* 022AD018 */ _t133 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD018 */ rbrew_write32(cpu->mem, _t133, cpu->r[29]);
|
|
/* 022AD01C */ cpu->r[0] = 0x000003E8u;
|
|
/* 022AD020 */ _t134 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD020 */ rbrew_write32(cpu->mem, _t134, cpu->r[10]);
|
|
/* 022AD024 */ _t135 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD024 */ rbrew_write32(cpu->mem, _t135, cpu->r[0]);
|
|
L_022AD028: ; // 0x22ad028
|
|
/* 022AD028 */ cpu->r[30] = cpu->r[31] + 0x00001590u;
|
|
/* 022AD028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD02C */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD02C */ _t137 = _t136 & 0x00000001u;
|
|
/* 022AD02C */ if (_t137) goto L_022AD030; else goto L_022AD040;
|
|
L_022AD030: ; // 0x22ad030
|
|
/* 022AD030 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD034 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD038 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD03C */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD03C */ _t139 = _t138 & 0x00000001u;
|
|
/* 022AD03C */ if (_t139) goto L_022AD07C; else goto L_022AD040;
|
|
L_022AD040: ; // 0x22ad040
|
|
/* 022AD040 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD044 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD048 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD04C */ cpu->r[5] = cpu->r[5] + 0x00002910u;
|
|
/* 022AD050 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD054 */ cpu->r[6] = cpu->r[6] + 0x000027A4u;
|
|
/* 022AD058 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD05C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD060 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD064 */ _t140 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD064 */ rbrew_write32(cpu->mem, _t140, cpu->r[27]);
|
|
/* 022AD068 */ cpu->r[12] = 0x0000000Au;
|
|
/* 022AD06C */ _t141 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD06C */ rbrew_write32(cpu->mem, _t141, cpu->r[29]);
|
|
/* 022AD070 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 022AD074 */ _t142 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD074 */ rbrew_write32(cpu->mem, _t142, cpu->r[12]);
|
|
/* 022AD078 */ _t143 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD078 */ rbrew_write32(cpu->mem, _t143, cpu->r[0]);
|
|
L_022AD07C: ; // 0x22ad07c
|
|
/* 022AD07C */ cpu->r[30] = cpu->r[31] + 0x000015F0u;
|
|
/* 022AD07C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD080 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD080 */ _t145 = _t144 & 0x00000001u;
|
|
/* 022AD080 */ if (_t145) goto L_022AD084; else goto L_022AD094;
|
|
L_022AD084: ; // 0x22ad084
|
|
/* 022AD084 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD088 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD08C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD08C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD090 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD090 */ _t147 = _t146 & 0x00000001u;
|
|
/* 022AD090 */ if (_t147) goto L_022AD0D0; else goto L_022AD094;
|
|
L_022AD094: ; // 0x22ad094
|
|
/* 022AD094 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD098 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD09C */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD0A0 */ cpu->r[5] = cpu->r[5] + 0x00002924u;
|
|
/* 022AD0A4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD0A8 */ cpu->r[6] = cpu->r[6] + 0x000027C4u;
|
|
/* 022AD0AC */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD0B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD0B4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD0B8 */ _t148 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD0B8 */ rbrew_write32(cpu->mem, _t148, cpu->r[27]);
|
|
/* 022AD0BC */ cpu->r[7] = 0x00000078u;
|
|
/* 022AD0C0 */ _t149 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD0C0 */ rbrew_write32(cpu->mem, _t149, cpu->r[29]);
|
|
/* 022AD0C4 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 022AD0C8 */ _t150 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD0C8 */ rbrew_write32(cpu->mem, _t150, cpu->r[7]);
|
|
/* 022AD0CC */ _t151 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD0CC */ rbrew_write32(cpu->mem, _t151, cpu->r[0]);
|
|
L_022AD0D0: ; // 0x22ad0d0
|
|
/* 022AD0D0 */ cpu->r[30] = cpu->r[31] + 0x00001650u;
|
|
/* 022AD0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD0D4 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD0D4 */ _t153 = _t152 & 0x00000001u;
|
|
/* 022AD0D4 */ if (_t153) goto L_022AD0D8; else goto L_022AD0E8;
|
|
L_022AD0D8: ; // 0x22ad0d8
|
|
/* 022AD0D8 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD0DC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD0E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD0E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD0E4 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD0E4 */ _t155 = _t154 & 0x00000001u;
|
|
/* 022AD0E4 */ if (_t155) goto L_022AD12C; else goto L_022AD0E8;
|
|
L_022AD0E8: ; // 0x22ad0e8
|
|
/* 022AD0E8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD0EC */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD0F0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD0F4 */ cpu->r[5] = cpu->r[5] + 0x000027E4u;
|
|
/* 022AD0F8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD0FC */ cpu->r[6] = cpu->r[6] + 0x000027F4u;
|
|
/* 022AD100 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD104 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD108 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD10C */ cpu->r[8] = 0x10060000u;
|
|
/* 022AD110 */ _t156 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD110 */ rbrew_write32(cpu->mem, _t156, cpu->r[28]);
|
|
/* 022AD114 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AD118 */ _t157 = cpu->r[8] + 0x0000262Cu;
|
|
/* 022AD118 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t157);
|
|
/* 022AD11C */ _t158 = cpu->r[7] + 0x00002630u;
|
|
/* 022AD11C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t158);
|
|
/* 022AD120 */ _t159 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD120 */ rbrew_write_f32(cpu->mem, _t159, cpu->f[0]);
|
|
/* 022AD124 */ _t160 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD124 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[12]);
|
|
/* 022AD128 */ _t161 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD128 */ rbrew_write_f32(cpu->mem, _t161, cpu->f[29]);
|
|
L_022AD12C: ; // 0x22ad12c
|
|
/* 022AD12C */ cpu->r[30] = cpu->r[31] + 0x000016B0u;
|
|
/* 022AD12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD130 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD130 */ _t163 = _t162 & 0x00000001u;
|
|
/* 022AD130 */ if (_t163) goto L_022AD134; else goto L_022AD144;
|
|
L_022AD134: ; // 0x22ad134
|
|
/* 022AD134 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD138 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD13C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD13C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD140 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD140 */ _t165 = _t164 & 0x00000001u;
|
|
/* 022AD140 */ if (_t165) goto L_022AD188; else goto L_022AD144;
|
|
L_022AD144: ; // 0x22ad144
|
|
/* 022AD144 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD148 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD14C */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD150 */ cpu->r[5] = cpu->r[5] + 0x00002810u;
|
|
/* 022AD154 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD158 */ cpu->r[6] = cpu->r[6] + 0x0000272Cu;
|
|
/* 022AD15C */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD160 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD164 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD168 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD16C */ _t166 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD16C */ rbrew_write32(cpu->mem, _t166, cpu->r[28]);
|
|
/* 022AD170 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AD174 */ _t167 = cpu->r[6] + 0x00002634u;
|
|
/* 022AD174 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t167);
|
|
/* 022AD178 */ _t168 = cpu->r[11] + 0x00002608u;
|
|
/* 022AD178 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t168);
|
|
/* 022AD17C */ _t169 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD17C */ rbrew_write_f32(cpu->mem, _t169, cpu->f[13]);
|
|
/* 022AD180 */ _t170 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD180 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[0]);
|
|
/* 022AD184 */ _t171 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD184 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[29]);
|
|
L_022AD188: ; // 0x22ad188
|
|
/* 022AD188 */ cpu->r[30] = cpu->r[31] + 0x00001710u;
|
|
/* 022AD188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD18C */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD18C */ _t173 = _t172 & 0x00000001u;
|
|
/* 022AD18C */ if (_t173) goto L_022AD190; else goto L_022AD1A0;
|
|
L_022AD190: ; // 0x22ad190
|
|
/* 022AD190 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD194 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD198 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD19C */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD19C */ _t175 = _t174 & 0x00000001u;
|
|
/* 022AD19C */ if (_t175) goto L_022AD1DC; else goto L_022AD1A0;
|
|
L_022AD1A0: ; // 0x22ad1a0
|
|
/* 022AD1A0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD1A4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD1A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD1AC */ cpu->r[5] = cpu->r[5] + 0x00002740u;
|
|
/* 022AD1B0 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD1B4 */ cpu->r[6] = cpu->r[6] + 0x00002934u;
|
|
/* 022AD1B8 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD1BC */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD1C0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD1C4 */ _t176 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD1C4 */ rbrew_write32(cpu->mem, _t176, cpu->r[27]);
|
|
/* 022AD1C8 */ cpu->r[9] = 0x000000C8u;
|
|
/* 022AD1CC */ _t177 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD1CC */ rbrew_write32(cpu->mem, _t177, cpu->r[29]);
|
|
/* 022AD1D0 */ cpu->r[0] = 0x000007D0u;
|
|
/* 022AD1D4 */ _t178 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD1D4 */ rbrew_write32(cpu->mem, _t178, cpu->r[9]);
|
|
/* 022AD1D8 */ _t179 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD1D8 */ rbrew_write32(cpu->mem, _t179, cpu->r[0]);
|
|
L_022AD1DC: ; // 0x22ad1dc
|
|
/* 022AD1DC */ cpu->r[30] = cpu->r[31] + 0x00001770u;
|
|
/* 022AD1DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD1E0 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD1E0 */ _t181 = _t180 & 0x00000001u;
|
|
/* 022AD1E0 */ if (_t181) goto L_022AD1E4; else goto L_022AD1F4;
|
|
L_022AD1E4: ; // 0x22ad1e4
|
|
/* 022AD1E4 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD1E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD1EC */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD1F0 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD1F0 */ _t183 = _t182 & 0x00000001u;
|
|
/* 022AD1F0 */ if (_t183) goto L_022AD238; else goto L_022AD1F4;
|
|
L_022AD1F4: ; // 0x22ad1f4
|
|
/* 022AD1F4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD1F8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD1FC */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD200 */ cpu->r[5] = cpu->r[5] + 0x00002684u;
|
|
/* 022AD204 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD208 */ cpu->r[6] = cpu->r[6] + 0x0000269Cu;
|
|
/* 022AD20C */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD210 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD214 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD218 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AD21C */ _t184 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD21C */ rbrew_write32(cpu->mem, _t184, cpu->r[28]);
|
|
/* 022AD220 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD224 */ _t185 = cpu->r[8] + 0x00002638u;
|
|
/* 022AD224 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t185);
|
|
/* 022AD228 */ _t186 = cpu->r[6] + 0x0000263Cu;
|
|
/* 022AD228 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t186);
|
|
/* 022AD22C */ _t187 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD22C */ rbrew_write_f32(cpu->mem, _t187, cpu->f[13]);
|
|
/* 022AD230 */ _t188 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD230 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[0]);
|
|
/* 022AD234 */ _t189 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD234 */ rbrew_write_f32(cpu->mem, _t189, cpu->f[29]);
|
|
L_022AD238: ; // 0x22ad238
|
|
/* 022AD238 */ cpu->r[30] = cpu->r[31] + 0x000017D0u;
|
|
/* 022AD238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD23C */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD23C */ _t191 = _t190 & 0x00000001u;
|
|
/* 022AD23C */ if (_t191) goto L_022AD240; else goto L_022AD250;
|
|
L_022AD240: ; // 0x22ad240
|
|
/* 022AD240 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD244 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD248 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD24C */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD24C */ _t193 = _t192 & 0x00000001u;
|
|
/* 022AD24C */ if (_t193) goto L_022AD28C; else goto L_022AD250;
|
|
L_022AD250: ; // 0x22ad250
|
|
/* 022AD250 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD254 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD258 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD25C */ cpu->r[5] = cpu->r[5] + 0x00002954u;
|
|
/* 022AD260 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD264 */ cpu->r[6] = cpu->r[6] + 0x00002968u;
|
|
/* 022AD268 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD26C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD270 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD274 */ _t194 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD274 */ rbrew_write32(cpu->mem, _t194, cpu->r[27]);
|
|
/* 022AD278 */ cpu->r[12] = 0x0000000Fu;
|
|
/* 022AD27C */ _t195 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD27C */ rbrew_write32(cpu->mem, _t195, cpu->r[29]);
|
|
/* 022AD280 */ cpu->r[0] = 0x00000064u;
|
|
/* 022AD284 */ _t196 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD284 */ rbrew_write32(cpu->mem, _t196, cpu->r[12]);
|
|
/* 022AD288 */ _t197 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD288 */ rbrew_write32(cpu->mem, _t197, cpu->r[0]);
|
|
L_022AD28C: ; // 0x22ad28c
|
|
/* 022AD28C */ cpu->r[30] = cpu->r[31] + 0x00001830u;
|
|
/* 022AD28C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD290 */ _t198 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD290 */ _t199 = _t198 & 0x00000001u;
|
|
/* 022AD290 */ if (_t199) goto L_022AD294; else goto L_022AD2A4;
|
|
L_022AD294: ; // 0x22ad294
|
|
/* 022AD294 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD298 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD29C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD2A0 */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD2A0 */ _t201 = _t200 & 0x00000001u;
|
|
/* 022AD2A0 */ if (_t201) goto L_022AD2E0; else goto L_022AD2A4;
|
|
L_022AD2A4: ; // 0x22ad2a4
|
|
/* 022AD2A4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD2A8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD2AC */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD2B0 */ cpu->r[5] = cpu->r[5] + 0x00002980u;
|
|
/* 022AD2B4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD2B8 */ cpu->r[6] = cpu->r[6] + 0x00002824u;
|
|
/* 022AD2BC */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD2C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD2C4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD2C8 */ _t202 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD2C8 */ rbrew_write_f32(cpu->mem, _t202, cpu->f[30]);
|
|
/* 022AD2CC */ cpu->r[11] = 0x10060000u;
|
|
/* 022AD2D0 */ _t203 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD2D0 */ rbrew_write_f32(cpu->mem, _t203, cpu->f[29]);
|
|
/* 022AD2D4 */ _t204 = cpu->r[11] + 0x00002640u;
|
|
/* 022AD2D4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t204);
|
|
/* 022AD2D8 */ _t205 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD2D8 */ rbrew_write32(cpu->mem, _t205, cpu->r[28]);
|
|
/* 022AD2DC */ _t206 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD2DC */ rbrew_write_f32(cpu->mem, _t206, cpu->f[12]);
|
|
L_022AD2E0: ; // 0x22ad2e0
|
|
/* 022AD2E0 */ cpu->r[30] = cpu->r[31] + 0x00001890u;
|
|
/* 022AD2E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD2E4 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD2E4 */ _t208 = _t207 & 0x00000001u;
|
|
/* 022AD2E4 */ if (_t208) goto L_022AD2E8; else goto L_022AD2F8;
|
|
L_022AD2E8: ; // 0x22ad2e8
|
|
/* 022AD2E8 */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD2EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD2F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD2F4 */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD2F4 */ _t210 = _t209 & 0x00000001u;
|
|
/* 022AD2F4 */ if (_t210) goto L_022AD334; else goto L_022AD2F8;
|
|
L_022AD2F8: ; // 0x22ad2f8
|
|
/* 022AD2F8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD2FC */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD300 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD304 */ cpu->r[5] = cpu->r[5] + 0x0000274Cu;
|
|
/* 022AD308 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD30C */ cpu->r[6] = cpu->r[6] + 0x0000299Cu;
|
|
/* 022AD310 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD314 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD318 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD31C */ _t211 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD31C */ rbrew_write32(cpu->mem, _t211, cpu->r[27]);
|
|
/* 022AD320 */ cpu->r[9] = 0x00000078u;
|
|
/* 022AD324 */ _t212 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD324 */ rbrew_write32(cpu->mem, _t212, cpu->r[29]);
|
|
/* 022AD328 */ cpu->r[0] = 0x00000064u;
|
|
/* 022AD32C */ _t213 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD32C */ rbrew_write32(cpu->mem, _t213, cpu->r[9]);
|
|
/* 022AD330 */ _t214 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD330 */ rbrew_write32(cpu->mem, _t214, cpu->r[0]);
|
|
L_022AD334: ; // 0x22ad334
|
|
/* 022AD334 */ cpu->r[30] = cpu->r[31] + 0x000018F0u;
|
|
/* 022AD334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD338 */ _t215 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD338 */ _t216 = _t215 & 0x00000001u;
|
|
/* 022AD338 */ if (_t216) goto L_022AD33C; else goto L_022AD34C;
|
|
L_022AD33C: ; // 0x22ad33c
|
|
/* 022AD33C */ cpu->r[3] = 0x00000060u;
|
|
/* 022AD340 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD344 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AD348 */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD348 */ _t218 = _t217 & 0x00000001u;
|
|
/* 022AD348 */ if (_t218) goto L_022AD388; else goto L_022AD34C;
|
|
L_022AD34C: ; // 0x22ad34c
|
|
/* 022AD34C */ cpu->r[5] = 0x10060000u;
|
|
/* 022AD350 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD354 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AD358 */ cpu->r[5] = cpu->r[5] + 0x000029ACu;
|
|
/* 022AD35C */ cpu->r[8] = 0x00000000u;
|
|
/* 022AD360 */ cpu->r[6] = cpu->r[6] + 0x000029B8u;
|
|
/* 022AD364 */ cpu->r[7] = cpu->r[5];
|
|
/* 022AD368 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD36C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022AD370 */ _t219 = cpu->r[30] + 0x00000000u;
|
|
/* 022AD370 */ rbrew_write32(cpu->mem, _t219, cpu->r[27]);
|
|
/* 022AD374 */ cpu->r[12] = 0x000000B4u;
|
|
/* 022AD378 */ _t220 = cpu->r[30] + 0x00000058u;
|
|
/* 022AD378 */ rbrew_write32(cpu->mem, _t220, cpu->r[29]);
|
|
/* 022AD37C */ cpu->r[0] = 0x00000064u;
|
|
/* 022AD380 */ _t221 = cpu->r[30] + 0x00000054u;
|
|
/* 022AD380 */ rbrew_write32(cpu->mem, _t221, cpu->r[12]);
|
|
/* 022AD384 */ _t222 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022AD384 */ rbrew_write32(cpu->mem, _t222, cpu->r[0]);
|
|
L_022AD388: ; // 0x22ad388
|
|
/* 022AD388 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD38C */ /* nop */
|
|
/* 022AD390 */ _t223 = cpu->r[1] + 0x00000038u;
|
|
/* 022AD390 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t223);
|
|
/* 022AD394 */ _t224 = cpu->r[1] + 0x00000048u;
|
|
/* 022AD394 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t224);
|
|
/* 022AD398 */ _t225 = cpu->r[1] + 0x00000030u;
|
|
/* 022AD398 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t225);
|
|
/* 022AD39C */ _t226 = cpu->r[1] + 0x00000040u;
|
|
/* 022AD39C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t226);
|
|
/* 022AD3A0 */ _t227 = cpu->r[1] + 0x00000028u;
|
|
/* 022AD3A0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t227);
|
|
/* 022AD3A4 */ _t228 = cpu->r[1] + 0x00000058u;
|
|
/* 022AD3A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t228);
|
|
/* 022AD3A8 */ _t229 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD3A8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t229);
|
|
/* 022AD3AC */ _t230 = cpu->r[1] + 0x00000050u;
|
|
/* 022AD3AC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t230);
|
|
/* 022AD3B0 */ _t231 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AD3B0 */ _t232 = _t231 & 0x00000001u;
|
|
/* 022AD3B0 */ if (_t232) goto L_022AD3B4; // else: addr-0 trap, fall-through
|
|
L_022AD3B4: ; // 0x22ad3b4
|
|
/* 022AD3B4 */ _t233 = cpu->r[1] + 0x00000064u;
|
|
/* 022AD3B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t233);
|
|
/* 022AD3B8 */ cpu->lr = cpu->r[0];
|
|
/* 022AD3BC */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 022AD3C0 */ return;
|
|
}
|
|
|
|
// fn_022AD3C4 @ 0x22ad3c4
|
|
void Gambit_fn_022AD3C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AD3C4: ; // 0x22ad3c4
|
|
/* 022AD3C4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD3C8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AD3C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AD3CC */ cpu->r[3] = 0x00001950u;
|
|
/* 022AD3D0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AD3D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AD3D0 */ cpu->r[1] = _t1;
|
|
/* 022AD3D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD3DC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD3DC */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AD3DC */ rbrew_dispatch(cpu, (_t3) ? 0x022ad3e0u : 0x022acb34u); return;
|
|
/* 022AD3E0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD3E4 */ cpu->lr = cpu->r[0];
|
|
/* 022AD3E8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AD3EC */ return;
|
|
}
|
|
|
|
// fn_022AD3D0 @ 0x22ad3d0
|
|
void Gambit_fn_022AD3D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022AD3D0: ; // 0x22ad3d0
|
|
/* 022AD3D0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AD3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD3D0 */ cpu->r[1] = _t0;
|
|
/* 022AD3D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AD3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD3DC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD3DC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AD3DC */ rbrew_dispatch(cpu, (_t2) ? 0x022ad3e0u : 0x022acb34u); return;
|
|
/* 022AD3E0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD3E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD3E4 */ cpu->lr = cpu->r[0];
|
|
/* 022AD3E8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AD3EC */ return;
|
|
}
|
|
|
|
// fn_022AD3F0 @ 0x22ad3f0
|
|
void Gambit_fn_022AD3F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_0227251C: ; // 0x227251c
|
|
/* 0227251C */ cpu->r[0] = cpu->lr;
|
|
/* 02272520 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02272520 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02272520 */ cpu->r[1] = _t0;
|
|
/* 02272524 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02272524 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02272528 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02272528 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0227252C */ cpu->r[31] = cpu->r[3];
|
|
/* 02272530 */ cpu->r[30] = cpu->r[4];
|
|
/* 02272534 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02272534 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02272538 */ Gambit_fn_0227219C(cpu);
|
|
/* 0227253C */ cpu->f[10] = cpu->f[1];
|
|
/* 02272540 */ cpu->f[1] = -cpu->f[10];
|
|
/* 02272544 */ cpu->r[3] = cpu->r[31];
|
|
/* 02272548 */ Gambit_fn_0226FC90(cpu);
|
|
/* 0227254C */ cpu->r[12] = 0x10060000u;
|
|
/* 02272550 */ _t4 = cpu->r[12] + 0xFFFF8F18u;
|
|
/* 02272550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02272554 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 02272558 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02272558 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02272558 */ if (_t6) goto L_0227255C; else goto L_02272578;
|
|
L_0227255C: ; // 0x227255c
|
|
/* 0227255C */ _t7 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0227255C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02272560 */ _t8 = cpu->r[31] + 0x000000A4u;
|
|
/* 02272560 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02272564 */ cpu->r[10] = cpu->r[10] | 0x00000002u;
|
|
/* 02272568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0227256C */ _t9 = cpu->r[31] + 0x0000009Cu;
|
|
/* 0227256C */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02272570 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02272570 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02272570 */ if (_t11) goto L_02272578; else goto L_02272574;
|
|
L_02272574: ; // 0x2272574
|
|
/* 02272574 */ Gambit_fn_0224988C(cpu);
|
|
L_02272578: ; // 0x2272578
|
|
/* 02272578 */ _t12 = cpu->r[31] + 0x00000064u;
|
|
/* 02272578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0227257C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02272580 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02272580 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02272580 */ if (_t14) goto L_0227258C; else goto L_02272584;
|
|
L_02272584: ; // 0x2272584
|
|
/* 02272584 */ cpu->r[4] = cpu->r[30];
|
|
/* 02272588 */ Gambit_fn_023B3D38(cpu);
|
|
L_0227258C: ; // 0x227258c
|
|
/* 0227258C */ _t15 = cpu->r[30] + 0x00000008u;
|
|
/* 0227258C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02272590 */ _t16 = cpu->r[31] + 0x000000C4u;
|
|
/* 02272590 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02272594 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02272594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02272598 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02272598 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0227259C */ cpu->lr = cpu->r[0];
|
|
/* 022725A0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022725A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022725A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022725A8 */ return;
|
|
L_022AD3F0: ; // 0x22ad3f0
|
|
/* 022AD3F0 */ _t20 = cpu->r[3] + 0x0000020Cu;
|
|
/* 022AD3F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 022AD3F4 */ /* nop */
|
|
/* 022AD3F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000005u);
|
|
/* 022AD3FC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD3FC */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AD3FC */ _t23 = _t22 ^ 0x00000001u;
|
|
/* 022AD3FC */ if (_t23) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AD3FC */ goto L_022AD400;
|
|
L_022AD400: ; // 0x22ad400
|
|
/* 022AD400 */ goto L_0227251C;
|
|
}
|
|
|
|
// fn_022AD404 @ 0x22ad404
|
|
void Gambit_fn_022AD404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AD404: ; // 0x22ad404
|
|
/* 022AD404 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD408 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD408 */ cpu->r[1] = _t0;
|
|
/* 022AD40C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD40C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD410 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD414 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD414 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD418 */ Gambit_fn_0227456C(cpu);
|
|
/* 022AD41C */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AD41C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD420 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AD424 */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AD424 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 022AD428 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD42C */ cpu->lr = cpu->r[0];
|
|
/* 022AD430 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD430 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD434 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD438 */ return;
|
|
}
|
|
|
|
// fn_022AD408 @ 0x22ad408
|
|
void Gambit_fn_022AD408(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AD408: ; // 0x22ad408
|
|
/* 022AD408 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD408 */ cpu->r[1] = _t0;
|
|
/* 022AD40C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD40C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD410 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD414 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD414 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD418 */ Gambit_fn_0227456C(cpu);
|
|
/* 022AD41C */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AD41C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD420 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AD424 */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AD424 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 022AD428 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD428 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD42C */ cpu->lr = cpu->r[0];
|
|
/* 022AD430 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD430 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD434 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD438 */ return;
|
|
}
|
|
|
|
// fn_022AD43C @ 0x22ad43c
|
|
void Gambit_fn_022AD43C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AD43C: ; // 0x22ad43c
|
|
/* 022AD43C */ cpu->r[0] = cpu->lr;
|
|
/* 022AD440 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD440 */ cpu->r[1] = _t0;
|
|
/* 022AD444 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD444 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD448 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD44C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD44C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD450 */ Gambit_fn_0227457C(cpu);
|
|
/* 022AD454 */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AD454 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD458 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AD45C */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AD45C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 022AD460 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD464 */ cpu->lr = cpu->r[0];
|
|
/* 022AD468 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD46C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD470 */ return;
|
|
}
|
|
|
|
// fn_022AD440 @ 0x22ad440
|
|
void Gambit_fn_022AD440(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022AD440: ; // 0x22ad440
|
|
/* 022AD440 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD440 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD440 */ cpu->r[1] = _t0;
|
|
/* 022AD444 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD444 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD448 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD44C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD44C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD450 */ Gambit_fn_0227457C(cpu);
|
|
/* 022AD454 */ _t3 = cpu->r[31] + 0x000002A0u;
|
|
/* 022AD454 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD458 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AD45C */ _t4 = cpu->r[12] + 0x000001C8u;
|
|
/* 022AD45C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[0]);
|
|
/* 022AD460 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD464 */ cpu->lr = cpu->r[0];
|
|
/* 022AD468 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD46C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD470 */ return;
|
|
}
|
|
|
|
// fn_022AD474 @ 0x22ad474
|
|
void Gambit_fn_022AD474(CPUState* cpu) {
|
|
L_022AD474: ; // 0x22ad474
|
|
/* 022AD474 */ return;
|
|
}
|
|
|
|
// fn_022AD488 @ 0x22ad488
|
|
void Gambit_fn_022AD488(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AD488: ; // 0x22ad488
|
|
/* 022AD488 */ _t0 = cpu->r[3] + 0x00000070u;
|
|
/* 022AD488 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AD48C */ _t1 = cpu->r[12] + 0x00000010u;
|
|
/* 022AD48C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AD490 */ cpu->r[0] = cpu->r[0] | 0x00000004u;
|
|
/* 022AD494 */ _t2 = cpu->r[12] + 0x00000010u;
|
|
/* 022AD494 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD498 */ return;
|
|
}
|
|
|
|
// fn_022AD4A8 @ 0x22ad4a8
|
|
void Gambit_fn_022AD4A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AD4A8: ; // 0x22ad4a8
|
|
/* 022AD4A8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AD4A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD4A8 */ cpu->r[1] = _t0;
|
|
/* 022AD4AC */ Gambit_fn_022AD488(cpu);
|
|
/* 022AD4B0 */ _t1 = cpu->r[11] + 0x00000094u;
|
|
/* 022AD4B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AD4B4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AD4B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AD4BC */ _t2 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AD4BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022AD4C0 */ _t3 = cpu->r[11] + 0x00000300u;
|
|
/* 022AD4C0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022AD4C4 */ Gambit_fn_023988E0(cpu);
|
|
/* 022AD4C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD4CC */ cpu->lr = cpu->r[0];
|
|
/* 022AD4D0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AD4D4 */ return;
|
|
}
|
|
|
|
// fn_022AD4F0 @ 0x22ad4f0
|
|
void Gambit_fn_022AD4F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022AD4F0: ; // 0x22ad4f0
|
|
/* 022AD4F0 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD4F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD4F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD4F4 */ cpu->r[1] = _t0;
|
|
/* 022AD4F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD4F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AD4FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD4FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AD500 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD504 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD504 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD508 */ _t4 = cpu->r[30] + 0x00000064u;
|
|
/* 022AD508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD50C */ cpu->r[31] = cpu->r[4];
|
|
/* 022AD510 */ Gambit_fn_023B3304(cpu);
|
|
/* 022AD514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD518 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD518 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AD518 */ if (_t6) goto L_022AD554; else goto L_022AD51C;
|
|
L_022AD51C: ; // 0x22ad51c
|
|
/* 022AD51C */ _t7 = cpu->r[30] + 0x00000064u;
|
|
/* 022AD51C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AD520 */ Gambit_fn_023B3AF8(cpu);
|
|
/* 022AD524 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 022AD524 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD528 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD528 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022AD52C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD52C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AD530 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022AD530 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 022AD534 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 022AD534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD538 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 022AD538 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022AD53C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AD540 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD540 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AD544 */ cpu->lr = cpu->r[0];
|
|
/* 022AD548 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD548 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AD54C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD550 */ return;
|
|
L_022AD554: ; // 0x22ad554
|
|
/* 022AD554 */ _t17 = cpu->r[30] + 0x00000104u;
|
|
/* 022AD554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AD558 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD558 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022AD55C */ _t19 = cpu->r[30] + 0x00000108u;
|
|
/* 022AD55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AD560 */ _t20 = cpu->r[31] + 0x00000004u;
|
|
/* 022AD560 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022AD564 */ _t21 = cpu->r[30] + 0x0000010Cu;
|
|
/* 022AD564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AD568 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 022AD568 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022AD56C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AD570 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD570 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AD574 */ cpu->lr = cpu->r[0];
|
|
/* 022AD578 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AD57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD580 */ return;
|
|
}
|
|
|
|
// fn_022AD4F4 @ 0x22ad4f4
|
|
void Gambit_fn_022AD4F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022AD4F4: ; // 0x22ad4f4
|
|
/* 022AD4F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD4F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD4F4 */ cpu->r[1] = _t0;
|
|
/* 022AD4F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD4F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AD4FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD4FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AD500 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD504 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD504 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD508 */ _t4 = cpu->r[30] + 0x00000064u;
|
|
/* 022AD508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD50C */ cpu->r[31] = cpu->r[4];
|
|
/* 022AD510 */ Gambit_fn_023B3304(cpu);
|
|
/* 022AD514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD518 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD518 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AD518 */ if (_t6) goto L_022AD554; else goto L_022AD51C;
|
|
L_022AD51C: ; // 0x22ad51c
|
|
/* 022AD51C */ _t7 = cpu->r[30] + 0x00000064u;
|
|
/* 022AD51C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AD520 */ Gambit_fn_023B3AF8(cpu);
|
|
/* 022AD524 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 022AD524 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD528 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD528 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022AD52C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD52C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AD530 */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 022AD530 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 022AD534 */ _t12 = cpu->r[3] + 0x00000008u;
|
|
/* 022AD534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD538 */ _t13 = cpu->r[31] + 0x00000008u;
|
|
/* 022AD538 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022AD53C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AD540 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD540 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AD544 */ cpu->lr = cpu->r[0];
|
|
/* 022AD548 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD548 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AD54C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD550 */ return;
|
|
L_022AD554: ; // 0x22ad554
|
|
/* 022AD554 */ _t17 = cpu->r[30] + 0x00000104u;
|
|
/* 022AD554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AD558 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD558 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 022AD55C */ _t19 = cpu->r[30] + 0x00000108u;
|
|
/* 022AD55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AD560 */ _t20 = cpu->r[31] + 0x00000004u;
|
|
/* 022AD560 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 022AD564 */ _t21 = cpu->r[30] + 0x0000010Cu;
|
|
/* 022AD564 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AD568 */ _t22 = cpu->r[31] + 0x00000008u;
|
|
/* 022AD568 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 022AD56C */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AD570 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD570 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AD574 */ cpu->lr = cpu->r[0];
|
|
/* 022AD578 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AD57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD580 */ return;
|
|
}
|
|
|
|
// fn_022AD584 @ 0x22ad584
|
|
void Gambit_fn_022AD584(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022AD584: ; // 0x22ad584
|
|
/* 022AD584 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD588 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AD588 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD588 */ cpu->r[1] = _t0;
|
|
/* 022AD58C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD58C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AD590 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD590 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AD594 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD598 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD59C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AD5A0 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022AD5A4 */ _t4 = cpu->r[6] + 0x00000184u;
|
|
/* 022AD5A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD5A4 */ cpu->r[6] = _t4;
|
|
/* 022AD5A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD5AC */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AD5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AD5B4 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AD5B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AD5B8 */ if (_t6) goto L_022AD5BC; else goto L_022AD5D0;
|
|
L_022AD5BC: ; // 0x22ad5bc
|
|
/* 022AD5BC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AD5C0 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AD5C4 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022AD5C8 */ _t7 = cpu->r[6] + 0x00000000u;
|
|
/* 022AD5C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022AD5CC */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD5CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AD5D0: ; // 0x22ad5d0
|
|
/* 022AD5D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD5D4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5D4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AD5D4 */ if (_t10) goto L_022AD5F4; else goto L_022AD5D8;
|
|
L_022AD5D8: ; // 0x22ad5d8
|
|
/* 022AD5D8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD5D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AD5DC */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AD5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD5E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD5E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD5E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD5F0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5F0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AD5F0 */ if (_t14) goto L_022AD5F4; else goto L_022AD5F8;
|
|
L_022AD5F4: ; // 0x22ad5f4
|
|
/* 022AD5F4 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD5F8: ; // 0x22ad5f8
|
|
/* 022AD5F8 */ _t15 = cpu->r[30] + 0x000001D8u;
|
|
/* 022AD5F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AD5FC */ cpu->r[7] = 0x43300000u;
|
|
/* 022AD600 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AD604 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD604 */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 022AD608 */ cpu->r[8] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022AD60C */ _t17 = cpu->r[12] + 0x000029C8u;
|
|
/* 022AD60C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 022AD610 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD610 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 022AD614 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD614 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 022AD618 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AD61C */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 022AD620 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD620 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AD624 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AD628 */ cpu->lr = cpu->r[0];
|
|
/* 022AD62C */ _t22 = cpu->r[11] + 0x000025D8u;
|
|
/* 022AD62C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AD630 */ cpu->f[12] = (double)(float)cpu->f[12];
|
|
/* 022AD634 */ _t23 = cpu->r[31] + 0x000017C4u;
|
|
/* 022AD634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022AD638 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD638 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AD63C */ cpu->f[1] = fma(cpu->f[12], cpu->f[13], cpu->f[0]);
|
|
/* 022AD640 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AD644 */ return;
|
|
}
|
|
|
|
// fn_022AD588 @ 0x22ad588
|
|
void Gambit_fn_022AD588(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022AD588: ; // 0x22ad588
|
|
/* 022AD588 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AD588 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD588 */ cpu->r[1] = _t0;
|
|
/* 022AD58C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD58C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AD590 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD590 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AD594 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD598 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD59C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AD5A0 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022AD5A4 */ _t4 = cpu->r[6] + 0x00000184u;
|
|
/* 022AD5A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD5A4 */ cpu->r[6] = _t4;
|
|
/* 022AD5A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD5AC */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AD5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AD5B4 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AD5B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AD5B8 */ if (_t6) goto L_022AD5BC; else goto L_022AD5D0;
|
|
L_022AD5BC: ; // 0x22ad5bc
|
|
/* 022AD5BC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AD5C0 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AD5C4 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022AD5C8 */ _t7 = cpu->r[6] + 0x00000000u;
|
|
/* 022AD5C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022AD5CC */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD5CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AD5D0: ; // 0x22ad5d0
|
|
/* 022AD5D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD5D4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5D4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AD5D4 */ if (_t10) goto L_022AD5F4; else goto L_022AD5D8;
|
|
L_022AD5D8: ; // 0x22ad5d8
|
|
/* 022AD5D8 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD5D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AD5DC */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AD5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD5E0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD5E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD5E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD5F0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD5F0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AD5F0 */ if (_t14) goto L_022AD5F4; else goto L_022AD5F8;
|
|
L_022AD5F4: ; // 0x22ad5f4
|
|
/* 022AD5F4 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD5F8: ; // 0x22ad5f8
|
|
/* 022AD5F8 */ _t15 = cpu->r[30] + 0x000001D8u;
|
|
/* 022AD5F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AD5FC */ cpu->r[7] = 0x43300000u;
|
|
/* 022AD600 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AD604 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD604 */ rbrew_write32(cpu->mem, _t16, cpu->r[7]);
|
|
/* 022AD608 */ cpu->r[8] = cpu->r[0] ^ 0x80000000u;
|
|
/* 022AD60C */ _t17 = cpu->r[12] + 0x000029C8u;
|
|
/* 022AD60C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 022AD610 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD610 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 022AD614 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD614 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t19);
|
|
/* 022AD618 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AD61C */ cpu->f[12] = cpu->f[12] - cpu->f[13];
|
|
/* 022AD620 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD620 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AD624 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AD628 */ cpu->lr = cpu->r[0];
|
|
/* 022AD62C */ _t22 = cpu->r[11] + 0x000025D8u;
|
|
/* 022AD62C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AD630 */ cpu->f[12] = (double)(float)cpu->f[12];
|
|
/* 022AD634 */ _t23 = cpu->r[31] + 0x000017C4u;
|
|
/* 022AD634 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022AD638 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD638 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AD63C */ cpu->f[1] = fma(cpu->f[12], cpu->f[13], cpu->f[0]);
|
|
/* 022AD640 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AD644 */ return;
|
|
}
|
|
|
|
// fn_022AD648 @ 0x22ad648
|
|
void Gambit_fn_022AD648(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_022AD648: ; // 0x22ad648
|
|
/* 022AD648 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD64C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022AD64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD64C */ cpu->r[1] = _t0;
|
|
/* 022AD650 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD650 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AD654 */ /* nop */
|
|
/* 022AD658 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD658 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022AD65C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD65C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AD660 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD660 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AD664 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD664 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022AD668 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD668 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AD66C */ _t7 = cpu->r[3] + 0x0000020Cu;
|
|
/* 022AD66C */ cpu->r[30] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022AD670 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AD674 */ /* nop */
|
|
/* 022AD678 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AD67C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AD680 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD684 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AD688 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022AD68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 022AD690 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AD694 */ _t8 = cpu->r[7] + 0x00000184u;
|
|
/* 022AD694 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD694 */ cpu->r[7] = _t8;
|
|
/* 022AD698 */ cpu->r[10] = cpu->r[10] + 0x0000240Cu;
|
|
/* 022AD69C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD69C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AD69C */ if (_t10) goto L_022AD6A0; else goto L_022AD6F0;
|
|
L_022AD6A0: ; // 0x22ad6a0
|
|
/* 022AD6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AD6A4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6A4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AD6A4 */ if (_t12) goto L_022AD6A8; else goto L_022AD6B4;
|
|
L_022AD6A8: ; // 0x22ad6a8
|
|
/* 022AD6A8 */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD6A8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022AD6AC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AD6B0 */ _t14 = cpu->r[7] + 0x00000000u;
|
|
/* 022AD6B0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_022AD6B4: ; // 0x22ad6b4
|
|
/* 022AD6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD6B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AD6B8 */ if (_t16) goto L_022AD6D8; else goto L_022AD6BC;
|
|
L_022AD6BC: ; // 0x22ad6bc
|
|
/* 022AD6BC */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD6BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AD6C0 */ _t18 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AD6C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AD6C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD6C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD6CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD6D4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6D4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AD6D4 */ if (_t20) goto L_022AD6D8; else goto L_022AD6DC;
|
|
L_022AD6D8: ; // 0x22ad6d8
|
|
/* 022AD6D8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD6DC: ; // 0x22ad6dc
|
|
/* 022AD6DC */ _t21 = cpu->r[31] + 0x00001344u;
|
|
/* 022AD6DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AD6E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AD6E4 */ Gambit_fn_022AD584(cpu);
|
|
/* 022AD6E8 */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 022AD6EC */ goto L_022AD73C;
|
|
L_022AD6F0: ; // 0x22ad6f0
|
|
/* 022AD6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AD6F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AD6F4 */ if (_t23) goto L_022AD6F8; else goto L_022AD704;
|
|
L_022AD6F8: ; // 0x22ad6f8
|
|
/* 022AD6F8 */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD6F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022AD6FC */ cpu->r[6] = 0x00000001u;
|
|
/* 022AD700 */ _t25 = cpu->r[7] + 0x00000000u;
|
|
/* 022AD700 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
L_022AD704: ; // 0x22ad704
|
|
/* 022AD704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD708 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD708 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AD708 */ if (_t27) goto L_022AD728; else goto L_022AD70C;
|
|
L_022AD70C: ; // 0x22ad70c
|
|
/* 022AD70C */ _t28 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD70C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AD710 */ _t29 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022AD710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022AD714 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD718 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD71C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD724 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD724 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AD724 */ if (_t31) goto L_022AD728; else goto L_022AD72C;
|
|
L_022AD728: ; // 0x22ad728
|
|
/* 022AD728 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD72C: ; // 0x22ad72c
|
|
/* 022AD72C */ _t32 = cpu->r[31] + 0x000012E4u;
|
|
/* 022AD72C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022AD730 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AD734 */ Gambit_fn_022AD584(cpu);
|
|
/* 022AD738 */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
L_022AD73C: ; // 0x22ad73c
|
|
/* 022AD73C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD73C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AD740 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD740 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022AD744 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD744 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AD748 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD748 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 022AD74C */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD74C */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AD750 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AD750 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022AD750 */ if (_t39) goto L_022AD754; // else: addr-0 trap, fall-through
|
|
L_022AD754: ; // 0x22ad754
|
|
/* 022AD754 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022AD758 */ cpu->lr = cpu->r[0];
|
|
/* 022AD75C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022AD760 */ return;
|
|
}
|
|
|
|
// fn_022AD64C @ 0x22ad64c
|
|
void Gambit_fn_022AD64C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_022AD64C: ; // 0x22ad64c
|
|
/* 022AD64C */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022AD64C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD64C */ cpu->r[1] = _t0;
|
|
/* 022AD650 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD650 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AD654 */ /* nop */
|
|
/* 022AD658 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD658 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022AD65C */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD65C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AD660 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD660 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AD664 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD664 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 022AD668 */ _t6 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD668 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AD66C */ _t7 = cpu->r[3] + 0x0000020Cu;
|
|
/* 022AD66C */ cpu->r[30] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022AD670 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AD674 */ /* nop */
|
|
/* 022AD678 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AD67C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AD680 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD684 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AD688 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022AD68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 022AD690 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AD694 */ _t8 = cpu->r[7] + 0x00000184u;
|
|
/* 022AD694 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD694 */ cpu->r[7] = _t8;
|
|
/* 022AD698 */ cpu->r[10] = cpu->r[10] + 0x0000240Cu;
|
|
/* 022AD69C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD69C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AD69C */ if (_t10) goto L_022AD6A0; else goto L_022AD6F0;
|
|
L_022AD6A0: ; // 0x22ad6a0
|
|
/* 022AD6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AD6A4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6A4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AD6A4 */ if (_t12) goto L_022AD6A8; else goto L_022AD6B4;
|
|
L_022AD6A8: ; // 0x22ad6a8
|
|
/* 022AD6A8 */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD6A8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 022AD6AC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AD6B0 */ _t14 = cpu->r[7] + 0x00000000u;
|
|
/* 022AD6B0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_022AD6B4: ; // 0x22ad6b4
|
|
/* 022AD6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD6B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AD6B8 */ if (_t16) goto L_022AD6D8; else goto L_022AD6BC;
|
|
L_022AD6BC: ; // 0x22ad6bc
|
|
/* 022AD6BC */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD6BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AD6C0 */ _t18 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AD6C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AD6C4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD6C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD6CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD6D4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6D4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AD6D4 */ if (_t20) goto L_022AD6D8; else goto L_022AD6DC;
|
|
L_022AD6D8: ; // 0x22ad6d8
|
|
/* 022AD6D8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD6DC: ; // 0x22ad6dc
|
|
/* 022AD6DC */ _t21 = cpu->r[31] + 0x00001344u;
|
|
/* 022AD6DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AD6E0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AD6E4 */ Gambit_fn_022AD584(cpu);
|
|
/* 022AD6E8 */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 022AD6EC */ goto L_022AD73C;
|
|
L_022AD6F0: ; // 0x22ad6f0
|
|
/* 022AD6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AD6F4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD6F4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AD6F4 */ if (_t23) goto L_022AD6F8; else goto L_022AD704;
|
|
L_022AD6F8: ; // 0x22ad6f8
|
|
/* 022AD6F8 */ _t24 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD6F8 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
/* 022AD6FC */ cpu->r[6] = 0x00000001u;
|
|
/* 022AD700 */ _t25 = cpu->r[7] + 0x00000000u;
|
|
/* 022AD700 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
L_022AD704: ; // 0x22ad704
|
|
/* 022AD704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD708 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD708 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AD708 */ if (_t27) goto L_022AD728; else goto L_022AD70C;
|
|
L_022AD70C: ; // 0x22ad70c
|
|
/* 022AD70C */ _t28 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD70C */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AD710 */ _t29 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022AD710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022AD714 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD718 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD71C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD724 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD724 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AD724 */ if (_t31) goto L_022AD728; else goto L_022AD72C;
|
|
L_022AD728: ; // 0x22ad728
|
|
/* 022AD728 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD72C: ; // 0x22ad72c
|
|
/* 022AD72C */ _t32 = cpu->r[31] + 0x000012E4u;
|
|
/* 022AD72C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022AD730 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AD734 */ Gambit_fn_022AD584(cpu);
|
|
/* 022AD738 */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
L_022AD73C: ; // 0x22ad73c
|
|
/* 022AD73C */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD73C */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AD740 */ _t34 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD740 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022AD744 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD744 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AD748 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD748 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 022AD74C */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD74C */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AD750 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AD750 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022AD750 */ if (_t39) goto L_022AD754; // else: addr-0 trap, fall-through
|
|
L_022AD754: ; // 0x22ad754
|
|
/* 022AD754 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022AD758 */ cpu->lr = cpu->r[0];
|
|
/* 022AD75C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022AD760 */ return;
|
|
}
|
|
|
|
// fn_022AD768 @ 0x22ad768
|
|
void Gambit_fn_022AD768(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022AD768: ; // 0x22ad768
|
|
/* 022AD768 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022AD768 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD768 */ cpu->r[1] = _t0;
|
|
/* 022AD76C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD76C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD770 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD774 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 022AD774 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AD778 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 022AD77C */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022AD77C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD780 */ Gambit_fn_022AD4F0(cpu);
|
|
/* 022AD784 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD788 */ _t4 = cpu->r[31] + 0x00000070u;
|
|
/* 022AD788 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD78C */ Gambit_fn_022AD648(cpu);
|
|
/* 022AD790 */ cpu->r[12] = cpu->r[31] + 0x00000140u;
|
|
/* 022AD794 */ _t5 = cpu->r[31] + 0x00000238u;
|
|
/* 022AD794 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD798 */ cpu->r[0] = cpu->r[30] + 0x000000A0u;
|
|
/* 022AD79C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD79C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022AD7A0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD7A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022AD7A4 */ cpu->r[0] = cpu->r[1] + 0x00000018u;
|
|
/* 022AD7A8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD7A8 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[1]);
|
|
/* 022AD7AC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022AD7B0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD7B0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 022AD7B4 */ Gambit_fn_02247510(cpu);
|
|
/* 022AD7B8 */ _t10 = cpu->r[1] + 0x00000034u;
|
|
/* 022AD7B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AD7BC */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD7BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AD7C0 */ cpu->lr = cpu->r[0];
|
|
/* 022AD7C4 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 022AD7C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD7C8 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022AD7CC */ return;
|
|
}
|
|
|
|
// fn_022AD7DC @ 0x22ad7dc
|
|
void Gambit_fn_022AD7DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AD7DC: ; // 0x22ad7dc
|
|
/* 022AD7DC */ cpu->r[0] = cpu->lr;
|
|
/* 022AD7E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD7E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD7E0 */ cpu->r[1] = _t0;
|
|
/* 022AD7E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD7E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD7E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD7E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD7EC */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD7EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD7F0 */ _t4 = cpu->r[11] + 0x0000044Cu;
|
|
/* 022AD7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD7F4 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AD7F8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD7FC */ cpu->r[4] = 0x00000000u;
|
|
/* 022AD800 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD804 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AD808 */ _t5 = cpu->r[12] + 0x000060F4u;
|
|
/* 022AD808 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD80C */ cpu->r[12] = cpu->r[12] + 0x00080000u;
|
|
/* 022AD810 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AD814 */ _t6 = cpu->r[12] + 0xFFFFCEDCu;
|
|
/* 022AD814 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD818 */ Gambit_fn_023E43BC(cpu);
|
|
/* 022AD81C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD81C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AD820 */ _t8 = cpu->r[9] + 0x0000004Cu;
|
|
/* 022AD820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD824 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD828 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD82C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD830 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AD834 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AD838 */ cpu->lr = cpu->r[0];
|
|
/* 022AD83C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD840 */ return;
|
|
}
|
|
|
|
// fn_022AD7E0 @ 0x22ad7e0
|
|
void Gambit_fn_022AD7E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AD7E0: ; // 0x22ad7e0
|
|
/* 022AD7E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD7E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD7E0 */ cpu->r[1] = _t0;
|
|
/* 022AD7E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD7E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AD7E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD7E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AD7EC */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD7EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AD7F0 */ _t4 = cpu->r[11] + 0x0000044Cu;
|
|
/* 022AD7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD7F4 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AD7F8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD7FC */ cpu->r[4] = 0x00000000u;
|
|
/* 022AD800 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD804 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AD808 */ _t5 = cpu->r[12] + 0x000060F4u;
|
|
/* 022AD808 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD80C */ cpu->r[12] = cpu->r[12] + 0x00080000u;
|
|
/* 022AD810 */ cpu->r[4] = cpu->r[3];
|
|
/* 022AD814 */ _t6 = cpu->r[12] + 0xFFFFCEDCu;
|
|
/* 022AD814 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AD818 */ Gambit_fn_023E43BC(cpu);
|
|
/* 022AD81C */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 022AD81C */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AD820 */ _t8 = cpu->r[9] + 0x0000004Cu;
|
|
/* 022AD820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AD824 */ cpu->ctr = cpu->r[0];
|
|
/* 022AD828 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD82C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD830 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AD834 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD834 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AD838 */ cpu->lr = cpu->r[0];
|
|
/* 022AD83C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD840 */ return;
|
|
}
|
|
|
|
// fn_022AD848 @ 0x22ad848
|
|
void Gambit_fn_022AD848(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_022AD848: ; // 0x22ad848
|
|
/* 022AD848 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AD848 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD848 */ cpu->r[1] = _t0;
|
|
/* 022AD84C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD84C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AD850 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AD854 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD854 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AD858 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD858 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AD85C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AD860 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AD864 */ _t4 = cpu->r[12] + 0x00000184u;
|
|
/* 022AD864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AD864 */ cpu->r[12] = _t4;
|
|
/* 022AD868 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AD86C */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AD870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AD874 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022AD878 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD878 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AD878 */ if (_t6) goto L_022AD87C; else goto L_022AD890;
|
|
L_022AD87C: ; // 0x22ad87c
|
|
/* 022AD87C */ cpu->r[0] = 0x10060000u;
|
|
/* 022AD880 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AD884 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022AD888 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 022AD888 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022AD88C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022AD88C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AD890: ; // 0x22ad890
|
|
/* 022AD890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AD894 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD894 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AD894 */ if (_t10) goto L_022AD8B4; else goto L_022AD898;
|
|
L_022AD898: ; // 0x22ad898
|
|
/* 022AD898 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022AD898 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AD89C */ _t12 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022AD89C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AD8A0 */ cpu->ctr = cpu->r[9];
|
|
/* 022AD8A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD8A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AD8AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AD8B0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD8B0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AD8B0 */ if (_t14) goto L_022AD8B4; else goto L_022AD8B8;
|
|
L_022AD8B4: ; // 0x22ad8b4
|
|
/* 022AD8B4 */ cpu->r[31] = 0x00000000u;
|
|
L_022AD8B8: ; // 0x22ad8b8
|
|
/* 022AD8B8 */ _t15 = cpu->r[31] + 0x00001584u;
|
|
/* 022AD8B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AD8BC */ cpu->r[31] = 0x00000000u;
|
|
/* 022AD8C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD8C4 */ _t16 = cpu->r[30] + 0x00000301u;
|
|
/* 022AD8C4 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]);
|
|
/* 022AD8C8 */ cpu->r[4] = 0x00000001u;
|
|
/* 022AD8CC */ _t17 = cpu->r[30] + 0x000002F0u;
|
|
/* 022AD8CC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022AD8D0 */ Gambit_fn_022AD7DC(cpu);
|
|
/* 022AD8D4 */ cpu->r[10] = 0x101F0000u;
|
|
/* 022AD8D8 */ _t18 = cpu->r[30] + 0x00000070u;
|
|
/* 022AD8D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AD8DC */ _t19 = cpu->r[10] + 0x00006338u;
|
|
/* 022AD8DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022AD8DC */ cpu->r[10] = _t19;
|
|
/* 022AD8E0 */ _t20 = cpu->r[12] + 0x00000034u;
|
|
/* 022AD8E0 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022AD8E4 */ _t21 = cpu->r[10] + 0x00000004u;
|
|
/* 022AD8E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AD8E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AD8EC */ _t22 = cpu->r[12] + 0x00000038u;
|
|
/* 022AD8EC */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 022AD8F0 */ _t23 = cpu->r[10] + 0x00000008u;
|
|
/* 022AD8F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022AD8F4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AD8F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AD8FC */ _t24 = cpu->r[12] + 0x0000003Cu;
|
|
/* 022AD8FC */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 022AD900 */ Gambit_fn_02271708(cpu);
|
|
/* 022AD904 */ cpu->r[4] = 0x10060000u;
|
|
/* 022AD908 */ _t25 = cpu->r[30] + 0x00000094u;
|
|
/* 022AD908 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AD90C */ cpu->r[5] = 0x00000001u;
|
|
/* 022AD910 */ cpu->r[4] = cpu->r[4] + 0x000029D0u;
|
|
/* 022AD914 */ Gambit_fn_02398850(cpu);
|
|
/* 022AD918 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AD91C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD91C */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AD920 */ cpu->lr = cpu->r[0];
|
|
/* 022AD924 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD924 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AD928 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AD92C */ return;
|
|
}
|
|
|
|
// fn_022AD930 @ 0x22ad930
|
|
void Gambit_fn_022AD930(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
|
|
L_022AD930: ; // 0x22ad930
|
|
/* 022AD930 */ cpu->r[0] = cpu->lr;
|
|
/* 022AD934 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022AD934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD934 */ cpu->r[1] = _t0;
|
|
/* 022AD938 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 022AD938 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AD93C */ /* nop */
|
|
/* 022AD940 */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 022AD940 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022AD944 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AD944 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022AD948 */ _t4 = cpu->r[1] + 0x000000A4u;
|
|
/* 022AD948 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AD94C */ _t5 = cpu->r[3] + 0x000002A4u;
|
|
/* 022AD94C */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AD954 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD954 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AD954 */ if (_t7) goto L_022ADB10; else goto L_022AD958;
|
|
L_022AD958: ; // 0x22ad958
|
|
/* 022AD958 */ _t8 = cpu->r[9] + 0x00000020u;
|
|
/* 022AD958 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022AD95C */ _t9 = cpu->r[9] + 0x00000000u;
|
|
/* 022AD95C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AD960 */ _t10 = cpu->r[9] + 0x00000010u;
|
|
/* 022AD960 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022AD964 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD964 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[8]);
|
|
/* 022AD968 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD968 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 022AD96C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD96C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 022AD970 */ _t14 = cpu->r[9] + 0x00000024u;
|
|
/* 022AD970 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AD974 */ _t15 = cpu->r[9] + 0x00000004u;
|
|
/* 022AD974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022AD978 */ _t16 = cpu->r[9] + 0x00000014u;
|
|
/* 022AD978 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AD97C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD97C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022AD980 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD980 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[8]);
|
|
/* 022AD984 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD984 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[7]);
|
|
/* 022AD988 */ _t20 = cpu->r[9] + 0x00000028u;
|
|
/* 022AD988 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022AD98C */ _t21 = cpu->r[9] + 0x00000008u;
|
|
/* 022AD98C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AD990 */ _t22 = cpu->r[9] + 0x00000018u;
|
|
/* 022AD990 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AD994 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD994 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 022AD998 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 022AD998 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 022AD99C */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 022AD99C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 022AD9A0 */ _t26 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022AD9A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022AD9A4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AD9A8 */ _t27 = cpu->r[9] + 0x0000001Cu;
|
|
/* 022AD9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AD9AC */ _t28 = cpu->r[9] + 0x0000002Cu;
|
|
/* 022AD9AC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AD9B0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD9B0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 022AD9B4 */ _t30 = cpu->r[12] + 0x00006000u;
|
|
/* 022AD9B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AD9B8 */ _t31 = cpu->r[1] + 0x00000030u;
|
|
/* 022AD9B8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 022AD9BC */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 022AD9BC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 022AD9C0 */ _t33 = cpu->r[12] + 0x00000268u;
|
|
/* 022AD9C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AD9C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD9C8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AD9CC */ cpu->r[4] = cpu->r[3];
|
|
/* 022AD9D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD9D4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AD9D8 */ /* nop */
|
|
/* 022AD9DC */ cpu->r[8] = 0x10060000u;
|
|
/* 022AD9E0 */ /* nop */
|
|
/* 022AD9E4 */ /* nop */
|
|
/* 022AD9E8 */ /* nop */
|
|
/* 022AD9EC */ /* nop */
|
|
/* 022AD9F0 */ /* nop */
|
|
/* 022AD9F4 */ _t34 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AD9F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022AD9F8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AD9FC */ /* nop */
|
|
/* 022ADA00 */ _t35 = cpu->r[9] + 0x000029DCu;
|
|
/* 022ADA00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022ADA04 */ cpu->f[5] = cpu->f[8] - cpu->f[31];
|
|
/* 022ADA08 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 022ADA08 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022ADA0C */ /* nop */
|
|
/* 022ADA10 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022ADA10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022ADA14 */ cpu->f[7] = cpu->f[11];
|
|
/* 022ADA18 */ /* nop */
|
|
/* 022ADA1C */ _t38 = cpu->r[1] + 0x00000088u;
|
|
/* 022ADA1C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[5]);
|
|
/* 022ADA20 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADA24 */ cpu->f[9] = fma(cpu->f[5], cpu->f[8], cpu->f[7]);
|
|
/* 022ADA28 */ _t39 = cpu->r[1] + 0x00000038u;
|
|
/* 022ADA28 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[9]);
|
|
/* 022ADA2C */ /* nop */
|
|
/* 022ADA30 */ _t40 = cpu->r[1] + 0x00000048u;
|
|
/* 022ADA30 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 022ADA34 */ /* nop */
|
|
/* 022ADA38 */ _t41 = cpu->r[8] + 0x000029E0u;
|
|
/* 022ADA38 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022ADA3C */ /* nop */
|
|
/* 022ADA40 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADA40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022ADA44 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ADA48 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 022ADA48 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 022ADA4C */ cpu->f[10] = fma(cpu->f[5], cpu->f[10], cpu->f[9]);
|
|
/* 022ADA50 */ _t44 = cpu->r[11] + 0x000029D8u;
|
|
/* 022ADA50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022ADA54 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 022ADA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022ADA58 */ cpu->f[8] = fma(cpu->f[5], cpu->f[7], cpu->f[0]);
|
|
/* 022ADA5C */ _t46 = cpu->r[10] + 0x000025D8u;
|
|
/* 022ADA5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022ADA60 */ _t47 = cpu->r[1] + 0x00000074u;
|
|
/* 022ADA60 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 022ADA64 */ _t48 = cpu->r[1] + 0x00000074u;
|
|
/* 022ADA64 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022ADA68 */ _t49 = cpu->r[1] + 0x00000040u;
|
|
/* 022ADA68 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 022ADA6C */ _t50 = cpu->r[1] + 0x00000040u;
|
|
/* 022ADA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022ADA70 */ cpu->f[10] = cpu->f[12];
|
|
/* 022ADA74 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADA74 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[8]);
|
|
/* 022ADA78 */ _t52 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADA78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022ADA7C */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 022ADA7C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 022ADA80 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022ADA80 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022ADA84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[7]);
|
|
/* 022ADA88 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 022ADA88 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 022ADA8C */ _t56 = cpu->r[1] + 0x00000058u;
|
|
/* 022ADA8C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[12]);
|
|
/* 022ADA90 */ _t57 = cpu->r[1] + 0x00000070u;
|
|
/* 022ADA90 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 022ADA94 */ _t58 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022ADA94 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 022ADA98 */ _t59 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022ADA98 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 022ADA9C */ _t60 = cpu->r[1] + 0x00000054u;
|
|
/* 022ADA9C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 022ADAA0 */ _t61 = cpu->r[1] + 0x00000050u;
|
|
/* 022ADAA0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 022ADAA4 */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022ADAA4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[11]);
|
|
/* 022ADAA8 */ _t63 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022ADAA8 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 022ADAAC */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 022ADAAC */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 022ADAB0 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAB0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022ADAB0 */ if (_t66) goto L_022ADB10; else goto L_022ADAB4;
|
|
L_022ADAB4: ; // 0x22adab4
|
|
/* 022ADAB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[10]);
|
|
/* 022ADAB8 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAB8 */ _t68 = _t67 & 0x00000001u;
|
|
/* 022ADAB8 */ if (_t68) goto L_022ADB10; else goto L_022ADABC;
|
|
L_022ADABC: ; // 0x22adabc
|
|
/* 022ADABC */ _t69 = cpu->r[1] + 0x00000078u;
|
|
/* 022ADABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022ADAC0 */ _t70 = cpu->r[1] + 0x00000048u;
|
|
/* 022ADAC0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022ADAC4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 022ADAC8 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAC8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022ADAC8 */ if (_t72) goto L_022ADB10; else goto L_022ADACC;
|
|
L_022ADACC: ; // 0x22adacc
|
|
/* 022ADACC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022ADAD0 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAD0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022ADAD0 */ if (_t74) goto L_022ADB10; else goto L_022ADAD4;
|
|
L_022ADAD4: ; // 0x22adad4
|
|
/* 022ADAD4 */ _t75 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022ADAD4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022ADAD8 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022ADAD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022ADADC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[7]);
|
|
/* 022ADAE0 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAE0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022ADAE0 */ if (_t78) goto L_022ADB10; else goto L_022ADAE4;
|
|
L_022ADAE4: ; // 0x22adae4
|
|
/* 022ADAE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[12]);
|
|
/* 022ADAE8 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAE8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022ADAE8 */ if (_t80) goto L_022ADB10; else goto L_022ADAEC;
|
|
L_022ADAEC: ; // 0x22adaec
|
|
/* 022ADAEC */ _t81 = cpu->r[1] + 0x00000098u;
|
|
/* 022ADAEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 022ADAF0 */ _t82 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022ADAF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022ADAF4 */ _t83 = cpu->r[1] + 0x00000090u;
|
|
/* 022ADAF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t83);
|
|
/* 022ADAF8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022ADAFC */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ADAFC */ _t85 = _t84 & 0x00000001u;
|
|
/* 022ADAFC */ if (_t85) goto L_022ADB00; // else: addr-0 trap, fall-through
|
|
L_022ADB00: ; // 0x22adb00
|
|
/* 022ADB00 */ _t86 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ADB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022ADB04 */ cpu->lr = cpu->r[0];
|
|
/* 022ADB08 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ADB0C */ return;
|
|
L_022ADB10: ; // 0x22adb10
|
|
/* 022ADB10 */ _t87 = cpu->r[1] + 0x00000098u;
|
|
/* 022ADB10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022ADB14 */ _t88 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022ADB14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022ADB18 */ _t89 = cpu->r[1] + 0x00000090u;
|
|
/* 022ADB18 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 022ADB1C */ cpu->r[3] = 0x00000000u;
|
|
/* 022ADB20 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ADB20 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022ADB20 */ if (_t91) goto L_022ADB24; // else: addr-0 trap, fall-through
|
|
L_022ADB24: ; // 0x22adb24
|
|
/* 022ADB24 */ _t92 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ADB24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022ADB28 */ cpu->lr = cpu->r[0];
|
|
/* 022ADB2C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ADB30 */ return;
|
|
}
|
|
|
|
// fn_022AD934 @ 0x22ad934
|
|
void Gambit_fn_022AD934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
|
|
L_022AD934: ; // 0x22ad934
|
|
/* 022AD934 */ _t0 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 022AD934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AD934 */ cpu->r[1] = _t0;
|
|
/* 022AD938 */ _t1 = cpu->r[1] + 0x00000090u;
|
|
/* 022AD938 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AD93C */ /* nop */
|
|
/* 022AD940 */ _t2 = cpu->r[1] + 0x00000098u;
|
|
/* 022AD940 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022AD944 */ _t3 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AD944 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022AD948 */ _t4 = cpu->r[1] + 0x000000A4u;
|
|
/* 022AD948 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AD94C */ _t5 = cpu->r[3] + 0x000002A4u;
|
|
/* 022AD94C */ cpu->r[9] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AD950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AD954 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AD954 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AD954 */ if (_t7) goto L_022ADB10; else goto L_022AD958;
|
|
L_022AD958: ; // 0x22ad958
|
|
/* 022AD958 */ _t8 = cpu->r[9] + 0x00000020u;
|
|
/* 022AD958 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022AD95C */ _t9 = cpu->r[9] + 0x00000000u;
|
|
/* 022AD95C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AD960 */ _t10 = cpu->r[9] + 0x00000010u;
|
|
/* 022AD960 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022AD964 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 022AD964 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[8]);
|
|
/* 022AD968 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 022AD968 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[13]);
|
|
/* 022AD96C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AD96C */ rbrew_write_f32(cpu->mem, _t13, cpu->f[12]);
|
|
/* 022AD970 */ _t14 = cpu->r[9] + 0x00000024u;
|
|
/* 022AD970 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022AD974 */ _t15 = cpu->r[9] + 0x00000004u;
|
|
/* 022AD974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022AD978 */ _t16 = cpu->r[9] + 0x00000014u;
|
|
/* 022AD978 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022AD97C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022AD97C */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 022AD980 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AD980 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[8]);
|
|
/* 022AD984 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 022AD984 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[7]);
|
|
/* 022AD988 */ _t20 = cpu->r[9] + 0x00000028u;
|
|
/* 022AD988 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022AD98C */ _t21 = cpu->r[9] + 0x00000008u;
|
|
/* 022AD98C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022AD990 */ _t22 = cpu->r[9] + 0x00000018u;
|
|
/* 022AD990 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AD994 */ _t23 = cpu->r[1] + 0x00000020u;
|
|
/* 022AD994 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 022AD998 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 022AD998 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[11]);
|
|
/* 022AD99C */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 022AD99C */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 022AD9A0 */ _t26 = cpu->r[9] + 0x0000000Cu;
|
|
/* 022AD9A0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022AD9A4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022AD9A8 */ _t27 = cpu->r[9] + 0x0000001Cu;
|
|
/* 022AD9A8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022AD9AC */ _t28 = cpu->r[9] + 0x0000002Cu;
|
|
/* 022AD9AC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022AD9B0 */ _t29 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AD9B0 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[12]);
|
|
/* 022AD9B4 */ _t30 = cpu->r[12] + 0x00006000u;
|
|
/* 022AD9B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AD9B8 */ _t31 = cpu->r[1] + 0x00000030u;
|
|
/* 022AD9B8 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[13]);
|
|
/* 022AD9BC */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 022AD9BC */ rbrew_write_f32(cpu->mem, _t32, cpu->f[31]);
|
|
/* 022AD9C0 */ _t33 = cpu->r[12] + 0x00000268u;
|
|
/* 022AD9C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AD9C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD9C8 */ Gambit_fn_0261F774(cpu);
|
|
/* 022AD9CC */ cpu->r[4] = cpu->r[3];
|
|
/* 022AD9D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AD9D4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022AD9D8 */ /* nop */
|
|
/* 022AD9DC */ cpu->r[8] = 0x10060000u;
|
|
/* 022AD9E0 */ /* nop */
|
|
/* 022AD9E4 */ /* nop */
|
|
/* 022AD9E8 */ /* nop */
|
|
/* 022AD9EC */ /* nop */
|
|
/* 022AD9F0 */ /* nop */
|
|
/* 022AD9F4 */ _t34 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AD9F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022AD9F8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AD9FC */ /* nop */
|
|
/* 022ADA00 */ _t35 = cpu->r[9] + 0x000029DCu;
|
|
/* 022ADA00 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022ADA04 */ cpu->f[5] = cpu->f[8] - cpu->f[31];
|
|
/* 022ADA08 */ _t36 = cpu->r[1] + 0x00000010u;
|
|
/* 022ADA08 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022ADA0C */ /* nop */
|
|
/* 022ADA10 */ _t37 = cpu->r[1] + 0x00000028u;
|
|
/* 022ADA10 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022ADA14 */ cpu->f[7] = cpu->f[11];
|
|
/* 022ADA18 */ /* nop */
|
|
/* 022ADA1C */ _t38 = cpu->r[1] + 0x00000088u;
|
|
/* 022ADA1C */ rbrew_write_f32(cpu->mem, _t38, cpu->f[5]);
|
|
/* 022ADA20 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADA24 */ cpu->f[9] = fma(cpu->f[5], cpu->f[8], cpu->f[7]);
|
|
/* 022ADA28 */ _t39 = cpu->r[1] + 0x00000038u;
|
|
/* 022ADA28 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[9]);
|
|
/* 022ADA2C */ /* nop */
|
|
/* 022ADA30 */ _t40 = cpu->r[1] + 0x00000048u;
|
|
/* 022ADA30 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[13]);
|
|
/* 022ADA34 */ /* nop */
|
|
/* 022ADA38 */ _t41 = cpu->r[8] + 0x000029E0u;
|
|
/* 022ADA38 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022ADA3C */ /* nop */
|
|
/* 022ADA40 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADA40 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 022ADA44 */ cpu->r[10] = 0x10060000u;
|
|
/* 022ADA48 */ _t43 = cpu->r[1] + 0x00000068u;
|
|
/* 022ADA48 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[12]);
|
|
/* 022ADA4C */ cpu->f[10] = fma(cpu->f[5], cpu->f[10], cpu->f[9]);
|
|
/* 022ADA50 */ _t44 = cpu->r[11] + 0x000029D8u;
|
|
/* 022ADA50 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 022ADA54 */ _t45 = cpu->r[1] + 0x00000038u;
|
|
/* 022ADA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022ADA58 */ cpu->f[8] = fma(cpu->f[5], cpu->f[7], cpu->f[0]);
|
|
/* 022ADA5C */ _t46 = cpu->r[10] + 0x000025D8u;
|
|
/* 022ADA5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 022ADA60 */ _t47 = cpu->r[1] + 0x00000074u;
|
|
/* 022ADA60 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 022ADA64 */ _t48 = cpu->r[1] + 0x00000074u;
|
|
/* 022ADA64 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 022ADA68 */ _t49 = cpu->r[1] + 0x00000040u;
|
|
/* 022ADA68 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[10]);
|
|
/* 022ADA6C */ _t50 = cpu->r[1] + 0x00000040u;
|
|
/* 022ADA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022ADA70 */ cpu->f[10] = cpu->f[12];
|
|
/* 022ADA74 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADA74 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[8]);
|
|
/* 022ADA78 */ _t52 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADA78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022ADA7C */ _t53 = cpu->r[1] + 0x00000060u;
|
|
/* 022ADA7C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[13]);
|
|
/* 022ADA80 */ _t54 = cpu->r[1] + 0x00000064u;
|
|
/* 022ADA80 */ rbrew_write_f32(cpu->mem, _t54, cpu->f[11]);
|
|
/* 022ADA84 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[7]);
|
|
/* 022ADA88 */ _t55 = cpu->r[1] + 0x00000044u;
|
|
/* 022ADA88 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[11]);
|
|
/* 022ADA8C */ _t56 = cpu->r[1] + 0x00000058u;
|
|
/* 022ADA8C */ rbrew_write_f32(cpu->mem, _t56, cpu->f[12]);
|
|
/* 022ADA90 */ _t57 = cpu->r[1] + 0x00000070u;
|
|
/* 022ADA90 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[12]);
|
|
/* 022ADA94 */ _t58 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022ADA94 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[11]);
|
|
/* 022ADA98 */ _t59 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022ADA98 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[0]);
|
|
/* 022ADA9C */ _t60 = cpu->r[1] + 0x00000054u;
|
|
/* 022ADA9C */ rbrew_write_f32(cpu->mem, _t60, cpu->f[0]);
|
|
/* 022ADAA0 */ _t61 = cpu->r[1] + 0x00000050u;
|
|
/* 022ADAA0 */ rbrew_write_f32(cpu->mem, _t61, cpu->f[10]);
|
|
/* 022ADAA4 */ _t62 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022ADAA4 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[11]);
|
|
/* 022ADAA8 */ _t63 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022ADAA8 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]);
|
|
/* 022ADAAC */ _t64 = cpu->r[1] + 0x00000078u;
|
|
/* 022ADAAC */ rbrew_write32(cpu->mem, _t64, cpu->r[12]);
|
|
/* 022ADAB0 */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAB0 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022ADAB0 */ if (_t66) goto L_022ADB10; else goto L_022ADAB4;
|
|
L_022ADAB4: ; // 0x22adab4
|
|
/* 022ADAB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[10]);
|
|
/* 022ADAB8 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAB8 */ _t68 = _t67 & 0x00000001u;
|
|
/* 022ADAB8 */ if (_t68) goto L_022ADB10; else goto L_022ADABC;
|
|
L_022ADABC: ; // 0x22adabc
|
|
/* 022ADABC */ _t69 = cpu->r[1] + 0x00000078u;
|
|
/* 022ADABC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022ADAC0 */ _t70 = cpu->r[1] + 0x00000048u;
|
|
/* 022ADAC0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 022ADAC4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[13]);
|
|
/* 022ADAC8 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAC8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022ADAC8 */ if (_t72) goto L_022ADB10; else goto L_022ADACC;
|
|
L_022ADACC: ; // 0x22adacc
|
|
/* 022ADACC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022ADAD0 */ _t73 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAD0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 022ADAD0 */ if (_t74) goto L_022ADB10; else goto L_022ADAD4;
|
|
L_022ADAD4: ; // 0x22adad4
|
|
/* 022ADAD4 */ _t75 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022ADAD4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022ADAD8 */ _t76 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022ADAD8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022ADADC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[7]);
|
|
/* 022ADAE0 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAE0 */ _t78 = _t77 & 0x00000001u;
|
|
/* 022ADAE0 */ if (_t78) goto L_022ADB10; else goto L_022ADAE4;
|
|
L_022ADAE4: ; // 0x22adae4
|
|
/* 022ADAE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[12]);
|
|
/* 022ADAE8 */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022ADAE8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022ADAE8 */ if (_t80) goto L_022ADB10; else goto L_022ADAEC;
|
|
L_022ADAEC: ; // 0x22adaec
|
|
/* 022ADAEC */ _t81 = cpu->r[1] + 0x00000098u;
|
|
/* 022ADAEC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t81);
|
|
/* 022ADAF0 */ _t82 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022ADAF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 022ADAF4 */ _t83 = cpu->r[1] + 0x00000090u;
|
|
/* 022ADAF4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t83);
|
|
/* 022ADAF8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022ADAFC */ _t84 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ADAFC */ _t85 = _t84 & 0x00000001u;
|
|
/* 022ADAFC */ if (_t85) goto L_022ADB00; // else: addr-0 trap, fall-through
|
|
L_022ADB00: ; // 0x22adb00
|
|
/* 022ADB00 */ _t86 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ADB00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022ADB04 */ cpu->lr = cpu->r[0];
|
|
/* 022ADB08 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ADB0C */ return;
|
|
L_022ADB10: ; // 0x22adb10
|
|
/* 022ADB10 */ _t87 = cpu->r[1] + 0x00000098u;
|
|
/* 022ADB10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022ADB14 */ _t88 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022ADB14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t88);
|
|
/* 022ADB18 */ _t89 = cpu->r[1] + 0x00000090u;
|
|
/* 022ADB18 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 022ADB1C */ cpu->r[3] = 0x00000000u;
|
|
/* 022ADB20 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022ADB20 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022ADB20 */ if (_t91) goto L_022ADB24; // else: addr-0 trap, fall-through
|
|
L_022ADB24: ; // 0x22adb24
|
|
/* 022ADB24 */ _t92 = cpu->r[1] + 0x000000A4u;
|
|
/* 022ADB24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022ADB28 */ cpu->lr = cpu->r[0];
|
|
/* 022ADB2C */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 022ADB30 */ return;
|
|
}
|
|
|
|
// fn_022ADB34 @ 0x22adb34
|
|
void Gambit_fn_022ADB34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_022ADB34: ; // 0x22adb34
|
|
/* 022ADB34 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022ADB34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADB34 */ cpu->r[1] = _t0;
|
|
/* 022ADB38 */ /* nop */
|
|
/* 022ADB3C */ cpu->r[0] = cpu->lr;
|
|
/* 022ADB40 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022ADB40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022ADB44 */ cpu->r[29] = cpu->r[3];
|
|
/* 022ADB48 */ _t2 = cpu->r[29] + 0x0000009Cu;
|
|
/* 022ADB48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022ADB4C */ cpu->r[28] = 0x101D0000u;
|
|
/* 022ADB50 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022ADB54 */ cpu->r[27] = 0x10060000u;
|
|
/* 022ADB58 */ cpu->r[8] = rbrew_rlwinm(cpu->r[12], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022ADB58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022ADB5C */ cpu->r[27] = cpu->r[27] + 0x0000240Cu;
|
|
/* 022ADB60 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADB60 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022ADB60 */ if (_t4) goto L_022ADBC4; else goto L_022ADB64;
|
|
L_022ADB64: ; // 0x22adb64
|
|
/* 022ADB64 */ cpu->r[3] = cpu->r[29];
|
|
/* 022ADB68 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ADB6C */ _t5 = cpu->r[28] + 0x00000184u;
|
|
/* 022ADB6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022ADB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ADB74 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADB78 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADB78 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022ADB78 */ if (_t7) goto L_022ADB7C; else goto L_022ADB88;
|
|
L_022ADB7C: ; // 0x22adb7c
|
|
/* 022ADB7C */ _t8 = cpu->r[30] + 0x00000180u;
|
|
/* 022ADB7C */ rbrew_write32(cpu->mem, _t8, cpu->r[27]);
|
|
/* 022ADB80 */ cpu->r[8] = 0x00000001u;
|
|
/* 022ADB84 */ _t9 = cpu->r[28] + 0x00000184u;
|
|
/* 022ADB84 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
L_022ADB88: ; // 0x22adb88
|
|
/* 022ADB88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ADB8C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADB8C */ _t11 = _t10 & 0x00000001u;
|
|
/* 022ADB8C */ if (_t11) goto L_022ADBB0; else goto L_022ADB90;
|
|
L_022ADB90: ; // 0x22adb90
|
|
/* 022ADB90 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022ADB90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022ADB94 */ _t13 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022ADB94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022ADB98 */ cpu->ctr = cpu->r[0];
|
|
/* 022ADB9C */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADBA0 */ cpu->r[4] = cpu->r[30] + 0x00000180u;
|
|
/* 022ADBA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADBA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ADBAC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADBAC */ _t15 = _t14 & 0x00000001u;
|
|
/* 022ADBAC */ if (_t15) goto L_022ADBB0; else goto L_022ADBB4;
|
|
L_022ADBB0: ; // 0x22adbb0
|
|
/* 022ADBB0 */ cpu->r[31] = 0x00000000u;
|
|
L_022ADBB4: ; // 0x22adbb4
|
|
/* 022ADBB4 */ _t16 = cpu->r[29] + 0x000002F0u;
|
|
/* 022ADBB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022ADBB8 */ _t17 = cpu->r[31] + 0x000015E4u;
|
|
/* 022ADBB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022ADBBC */ cpu->r[9] = cpu->r[9] + cpu->r[0];
|
|
/* 022ADBC0 */ _t18 = cpu->r[29] + 0x000002F0u;
|
|
/* 022ADBC0 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022ADBC4: ; // 0x22adbc4
|
|
/* 022ADBC4 */ _t19 = cpu->r[29] + 0x00000301u;
|
|
/* 022ADBC4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022ADBC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022ADBCC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADBCC */ _t21 = _t20 & 0x00000001u;
|
|
/* 022ADBCC */ if (_t21) goto L_022ADBD0; else goto L_022ADC48;
|
|
L_022ADBD0: ; // 0x22adbd0
|
|
/* 022ADBD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 022ADBD4 */ Gambit_fn_022AD930(cpu);
|
|
/* 022ADBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ADBDC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADBDC */ _t23 = _t22 & 0x00000001u;
|
|
/* 022ADBDC */ if (_t23) goto L_022ADC48; else goto L_022ADBE0;
|
|
L_022ADBE0: ; // 0x22adbe0
|
|
/* 022ADBE0 */ cpu->r[0] = 0x00000001u;
|
|
/* 022ADBE4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022ADBE8 */ _t24 = cpu->r[29] + 0x00000301u;
|
|
/* 022ADBE8 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[0]);
|
|
/* 022ADBEC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ADBF0 */ _t25 = cpu->r[28] + 0x00000184u;
|
|
/* 022ADBF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022ADBF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022ADBF8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADBFC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADBFC */ _t27 = _t26 & 0x00000001u;
|
|
/* 022ADBFC */ if (_t27) goto L_022ADC00; else goto L_022ADC0C;
|
|
L_022ADC00: ; // 0x22adc00
|
|
/* 022ADC00 */ _t28 = cpu->r[30] + 0x00000180u;
|
|
/* 022ADC00 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 022ADC04 */ cpu->r[10] = 0x00000001u;
|
|
/* 022ADC08 */ _t29 = cpu->r[28] + 0x00000184u;
|
|
/* 022ADC08 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
L_022ADC0C: ; // 0x22adc0c
|
|
/* 022ADC0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ADC10 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADC10 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022ADC10 */ if (_t31) goto L_022ADC34; else goto L_022ADC14;
|
|
L_022ADC14: ; // 0x22adc14
|
|
/* 022ADC14 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022ADC14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022ADC18 */ _t33 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022ADC18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022ADC1C */ cpu->ctr = cpu->r[9];
|
|
/* 022ADC20 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADC24 */ cpu->r[4] = cpu->r[30] + 0x00000180u;
|
|
/* 022ADC28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ADC30 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADC30 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022ADC30 */ if (_t35) goto L_022ADC34; else goto L_022ADC38;
|
|
L_022ADC34: ; // 0x22adc34
|
|
/* 022ADC34 */ cpu->r[31] = 0x00000000u;
|
|
L_022ADC38: ; // 0x22adc38
|
|
/* 022ADC38 */ _t36 = cpu->r[29] + 0x000002F0u;
|
|
/* 022ADC38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022ADC3C */ _t37 = cpu->r[31] + 0x00001644u;
|
|
/* 022ADC3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022ADC40 */ cpu->r[11] = cpu->r[11] + cpu->r[12];
|
|
/* 022ADC44 */ _t38 = cpu->r[29] + 0x000002F0u;
|
|
/* 022ADC44 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]);
|
|
L_022ADC48: ; // 0x22adc48
|
|
/* 022ADC48 */ /* nop */
|
|
/* 022ADC4C */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 022ADC4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022ADC50 */ cpu->lr = cpu->r[0];
|
|
/* 022ADC54 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022ADC58 */ return;
|
|
}
|
|
|
|
// fn_022ADC80 @ 0x22adc80
|
|
void Gambit_fn_022ADC80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23;
|
|
|
|
L_022ADC80: ; // 0x22adc80
|
|
/* 022ADC80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ADC80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADC80 */ cpu->r[1] = _t0;
|
|
/* 022ADC84 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADC84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ADC88 */ cpu->r[30] = cpu->r[3];
|
|
/* 022ADC8C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADC8C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ADC90 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADC90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ADC94 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ADC98 */ cpu->r[7] = 0x101D0000u;
|
|
/* 022ADC9C */ _t4 = cpu->r[7] + 0x00000184u;
|
|
/* 022ADC9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADC9C */ cpu->r[7] = _t4;
|
|
/* 022ADCA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADCA4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022ADCA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022ADCAC */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022ADCB0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADCB0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022ADCB0 */ if (_t6) goto L_022ADCB4; else goto L_022ADCC8;
|
|
L_022ADCB4: ; // 0x22adcb4
|
|
/* 022ADCB4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022ADCB8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022ADCBC */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022ADCC0 */ _t7 = cpu->r[7] + 0x00000000u;
|
|
/* 022ADCC0 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022ADCC4 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022ADCC4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022ADCC8: ; // 0x22adcc8
|
|
/* 022ADCC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ADCCC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADCCC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022ADCCC */ if (_t10) goto L_022ADCEC; else goto L_022ADCD0;
|
|
L_022ADCD0: ; // 0x22adcd0
|
|
/* 022ADCD0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022ADCD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022ADCD4 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022ADCD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022ADCD8 */ cpu->ctr = cpu->r[0];
|
|
/* 022ADCDC */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADCE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADCE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ADCE8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADCE8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022ADCE8 */ if (_t14) goto L_022ADCEC; else goto L_022ADCF0;
|
|
L_022ADCEC: ; // 0x22adcec
|
|
/* 022ADCEC */ cpu->r[31] = 0x00000000u;
|
|
L_022ADCF0: ; // 0x22adcf0
|
|
/* 022ADCF0 */ _t15 = cpu->r[30] + 0x00000208u;
|
|
/* 022ADCF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022ADCF4 */ _t16 = cpu->r[31] + 0x000018E4u;
|
|
/* 022ADCF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022ADCF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 022ADCFC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADCFC */ _t18 = _t17 & 0x00000001u;
|
|
/* 022ADCFC */ if (_t18) goto L_022ADD00; else goto L_022ADD18;
|
|
L_022ADD00: ; // 0x22add00
|
|
/* 022ADD00 */ cpu->r[4] = 0x10060000u;
|
|
/* 022ADD04 */ _t19 = cpu->r[30] + 0x00000094u;
|
|
/* 022ADD04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022ADD08 */ cpu->r[5] = 0x00000001u;
|
|
/* 022ADD0C */ cpu->r[4] = cpu->r[4] + 0x000029ECu;
|
|
/* 022ADD10 */ _t20 = cpu->r[30] + 0x00000302u;
|
|
/* 022ADD10 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[5]);
|
|
/* 022ADD14 */ Gambit_fn_02398850(cpu);
|
|
L_022ADD18: ; // 0x22add18
|
|
/* 022ADD18 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADD18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022ADD1C */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADD1C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022ADD20 */ cpu->lr = cpu->r[0];
|
|
/* 022ADD24 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADD24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022ADD28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ADD2C */ return;
|
|
}
|
|
|
|
// fn_022ADD34 @ 0x22add34
|
|
void Gambit_fn_022ADD34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_022ADD34: ; // 0x22add34
|
|
/* 022ADD34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ADD34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADD34 */ cpu->r[1] = _t0;
|
|
/* 022ADD38 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADD38 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022ADD3C */ cpu->r[30] = cpu->r[3];
|
|
/* 022ADD40 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADD40 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022ADD44 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADD44 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ADD48 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022ADD4C */ cpu->r[11] = 0x101D0000u;
|
|
/* 022ADD50 */ _t4 = cpu->r[11] + 0x00000184u;
|
|
/* 022ADD50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADD50 */ cpu->r[11] = _t4;
|
|
/* 022ADD54 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADD58 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022ADD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022ADD60 */ cpu->r[4] = cpu->r[4] + 0x00000180u;
|
|
/* 022ADD64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADD64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022ADD64 */ if (_t6) goto L_022ADD68; else goto L_022ADD7C;
|
|
L_022ADD68: ; // 0x22add68
|
|
/* 022ADD68 */ cpu->r[0] = 0x10060000u;
|
|
/* 022ADD6C */ cpu->r[9] = 0x00000001u;
|
|
/* 022ADD70 */ cpu->r[0] = cpu->r[0] + 0x0000240Cu;
|
|
/* 022ADD74 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 022ADD74 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 022ADD78 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022ADD78 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022ADD7C: ; // 0x22add7c
|
|
/* 022ADD7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022ADD80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADD80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022ADD80 */ if (_t10) goto L_022ADDA0; else goto L_022ADD84;
|
|
L_022ADD84: ; // 0x22add84
|
|
/* 022ADD84 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022ADD84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022ADD88 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022ADD88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022ADD8C */ cpu->ctr = cpu->r[0];
|
|
/* 022ADD90 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADD94 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADD98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022ADD9C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022ADD9C */ _t14 = _t13 & 0x00000001u;
|
|
/* 022ADD9C */ if (_t14) goto L_022ADDA0; else goto L_022ADDA4;
|
|
L_022ADDA0: ; // 0x22adda0
|
|
/* 022ADDA0 */ cpu->r[31] = 0x00000000u;
|
|
L_022ADDA4: ; // 0x22adda4
|
|
/* 022ADDA4 */ cpu->r[4] = 0x101E0000u;
|
|
/* 022ADDA8 */ cpu->r[3] = cpu->r[30] + 0x00000140u;
|
|
/* 022ADDAC */ _t15 = cpu->r[31] + 0x00001884u;
|
|
/* 022ADDAC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022ADDB0 */ cpu->r[4] = cpu->r[4] + 0x00003A0Cu;
|
|
/* 022ADDB4 */ Gambit_fn_022B9FE0(cpu);
|
|
/* 022ADDB8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADDB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022ADDBC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADDBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022ADDC0 */ cpu->lr = cpu->r[0];
|
|
/* 022ADDC4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADDC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022ADDC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ADDCC */ return;
|
|
}
|
|
|
|
// fn_022ADDD4 @ 0x22addd4
|
|
void Gambit_fn_022ADDD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022ADDD4: ; // 0x22addd4
|
|
/* 022ADDD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022ADDD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADDD4 */ cpu->r[1] = _t0;
|
|
/* 022ADDD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADDD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ADDDC */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADDE0 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022ADDE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022ADDE4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADDE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ADDE8 */ Gambit_fn_02276134(cpu);
|
|
/* 022ADDEC */ _t4 = cpu->r[31] + 0x000001D8u;
|
|
/* 022ADDEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADDF0 */ _t5 = cpu->r[31] + 0x00000004u;
|
|
/* 022ADDF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022ADDF4 */ cpu->r[11] = cpu->r[12] + 0x00000001u;
|
|
/* 022ADDF8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADDF8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022ADDFC */ _t7 = cpu->r[10] + 0x00000474u;
|
|
/* 022ADDFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022ADE00 */ cpu->ctr = cpu->r[0];
|
|
/* 022ADE04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022ADE08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADE0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADE10 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022ADE14 */ _t8 = cpu->r[3] + 0x00006000u;
|
|
/* 022ADE14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022ADE18 */ _t9 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022ADE18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022ADE1C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 022ADE1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022ADE20 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADE20 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022ADE24 */ _t12 = cpu->r[12] + 0x00000134u;
|
|
/* 022ADE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022ADE28 */ cpu->ctr = cpu->r[0];
|
|
/* 022ADE2C */ cpu->r[30] = 0x101C0000u;
|
|
/* 022ADE30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022ADE34 */ _t13 = cpu->r[31] + 0x00000189u;
|
|
/* 022ADE34 */ cpu->r[6] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022ADE38 */ cpu->r[4] = cpu->r[3];
|
|
/* 022ADE3C */ _t14 = cpu->r[30] + 0x000060F4u;
|
|
/* 022ADE3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022ADE40 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADE44 */ Gambit_fn_023F07CC(cpu);
|
|
/* 022ADE48 */ _t15 = cpu->r[30] + 0x000060F4u;
|
|
/* 022ADE48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022ADE4C */ Gambit_fn_023ECD34(cpu);
|
|
/* 022ADE50 */ Gambit_fn_023F79E8(cpu);
|
|
/* 022ADE54 */ _t16 = cpu->r[30] + 0x000060F4u;
|
|
/* 022ADE54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022ADE58 */ cpu->r[9] = cpu->r[10] + 0x00080000u;
|
|
/* 022ADE5C */ cpu->r[4] = cpu->r[3] + 0xFFFFFFFFu;
|
|
/* 022ADE60 */ _t17 = cpu->r[9] + 0xFFFFCD80u;
|
|
/* 022ADE60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022ADE64 */ Gambit_fn_023E8078(cpu);
|
|
/* 022ADE68 */ _t18 = cpu->r[30] + 0x000060F4u;
|
|
/* 022ADE68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022ADE6C */ cpu->r[11] = cpu->r[12] + 0x00080000u;
|
|
/* 022ADE70 */ _t19 = cpu->r[11] + 0xFFFFCEDCu;
|
|
/* 022ADE70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022ADE74 */ Gambit_fn_023E40B0(cpu);
|
|
/* 022ADE78 */ _t20 = cpu->r[31] + 0x000000E4u;
|
|
/* 022ADE78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022ADE7C */ _t21 = cpu->r[31] + 0x000000E0u;
|
|
/* 022ADE7C */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 022ADE80 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADE80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022ADE84 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022ADE84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022ADE88 */ cpu->lr = cpu->r[0];
|
|
/* 022ADE8C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADE8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022ADE90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022ADE94 */ return;
|
|
}
|
|
|
|
// fn_022ADE9C @ 0x22ade9c
|
|
void Gambit_fn_022ADE9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_022ADE9C: ; // 0x22ade9c
|
|
/* 022ADE9C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022ADE9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADE9C */ cpu->r[1] = _t0;
|
|
/* 022ADEA0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022ADEA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ADEA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADEA8 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022ADEA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022ADEAC */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADEAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ADEB0 */ _t4 = cpu->r[31] + 0x00000184u;
|
|
/* 022ADEB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADEB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022ADEB8 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 022ADEBC */ cpu->r[12] = 0x10060000u;
|
|
/* 022ADEC0 */ cpu->r[5] = 0x00000000u;
|
|
/* 022ADEC4 */ _t5 = cpu->r[12] + 0x000029F4u;
|
|
/* 022ADEC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 022ADEC8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ADECC */ _t6 = cpu->r[30] + 0x000001ECu;
|
|
/* 022ADECC */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[5]);
|
|
/* 022ADED0 */ _t7 = cpu->r[31] + 0x00000148u;
|
|
/* 022ADED0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022ADED4 */ _t8 = cpu->r[12] + 0x000029F8u;
|
|
/* 022ADED4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022ADED8 */ _t9 = cpu->r[31] + 0x0000017Cu;
|
|
/* 022ADED8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022ADEDC */ cpu->r[10] = 0x10060000u;
|
|
/* 022ADEE0 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADEE0 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[11]);
|
|
/* 022ADEE4 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022ADEE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022ADEE8 */ cpu->f[13] = fma(cpu->f[0], cpu->f[12], cpu->f[13]);
|
|
/* 022ADEEC */ /* nop */
|
|
/* 022ADEF0 */ _t12 = cpu->r[10] + 0x000025ACu;
|
|
/* 022ADEF0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022ADEF4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADEF4 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 022ADEF8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ADEFC */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 022ADEFC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 022ADF00 */ /* nop */
|
|
/* 022ADF04 */ _t15 = cpu->r[12] + 0x000029DCu;
|
|
/* 022ADF04 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022ADF08 */ /* nop */
|
|
/* 022ADF0C */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 022ADF0C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[12]);
|
|
/* 022ADF10 */ /* nop */
|
|
/* 022ADF14 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022ADF18 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 022ADF18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022ADF1C */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 022ADF1C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 022ADF20 */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 022ADF20 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022ADF24 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 022ADF24 */ rbrew_write32(cpu->mem, _t21, cpu->r[8]);
|
|
/* 022ADF28 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 022ADF28 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022ADF2C */ _t23 = cpu->r[1] + 0x00000028u;
|
|
/* 022ADF2C */ rbrew_write32(cpu->mem, _t23, cpu->r[9]);
|
|
/* 022ADF30 */ _t24 = cpu->r[1] + 0x00000028u;
|
|
/* 022ADF30 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022ADF34 */ _t25 = cpu->r[31] + 0x00000144u;
|
|
/* 022ADF34 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[10]);
|
|
/* 022ADF38 */ cpu->r[4] = 0x00000001u;
|
|
/* 022ADF3C */ _t26 = cpu->r[31] + 0x00000140u;
|
|
/* 022ADF3C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[0]);
|
|
/* 022ADF40 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADF44 */ _t27 = cpu->r[31] + 0x00000148u;
|
|
/* 022ADF44 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[11]);
|
|
/* 022ADF48 */ Gambit_fn_02272C78(cpu);
|
|
/* 022ADF4C */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADF50 */ Gambit_fn_02271A58(cpu);
|
|
/* 022ADF54 */ cpu->r[3] = cpu->r[31];
|
|
/* 022ADF58 */ Gambit_fn_02790488(cpu);
|
|
/* 022ADF5C */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022ADF5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022ADF60 */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 022ADF60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022ADF64 */ cpu->lr = cpu->r[0];
|
|
/* 022ADF68 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 022ADF68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022ADF6C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022ADF70 */ return;
|
|
}
|
|
|
|
// fn_022ADF74 @ 0x22adf74
|
|
void Gambit_fn_022ADF74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022ADF74: ; // 0x22adf74
|
|
/* 022ADF74 */ cpu->r[0] = cpu->lr;
|
|
/* 022ADF78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ADF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADF78 */ cpu->r[1] = _t0;
|
|
/* 022ADF7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ADF80 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADF84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADF84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ADF88 */ Gambit_fn_02276D04(cpu);
|
|
/* 022ADF8C */ _t3 = cpu->r[31] + 0x000001D8u;
|
|
/* 022ADF8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022ADF90 */ _t4 = cpu->r[31] + 0x0000023Cu;
|
|
/* 022ADF90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADF94 */ Gambit_fn_0224C318(cpu);
|
|
/* 022ADF98 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022ADF9C */ cpu->lr = cpu->r[0];
|
|
/* 022ADFA0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADFA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ADFA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ADFA8 */ return;
|
|
}
|
|
|
|
// fn_022ADF78 @ 0x22adf78
|
|
void Gambit_fn_022ADF78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022ADF78: ; // 0x22adf78
|
|
/* 022ADF78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022ADF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADF78 */ cpu->r[1] = _t0;
|
|
/* 022ADF7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022ADF80 */ cpu->r[31] = cpu->r[3];
|
|
/* 022ADF84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADF84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ADF88 */ Gambit_fn_02276D04(cpu);
|
|
/* 022ADF8C */ _t3 = cpu->r[31] + 0x000001D8u;
|
|
/* 022ADF8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022ADF90 */ _t4 = cpu->r[31] + 0x0000023Cu;
|
|
/* 022ADF90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022ADF94 */ Gambit_fn_0224C318(cpu);
|
|
/* 022ADF98 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022ADF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022ADF9C */ cpu->lr = cpu->r[0];
|
|
/* 022ADFA0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022ADFA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022ADFA4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022ADFA8 */ return;
|
|
}
|
|
|
|
// fn_022ADFAC @ 0x22adfac
|
|
void Gambit_fn_022ADFAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022ADFAC: ; // 0x22adfac
|
|
/* 022ADFAC */ cpu->r[0] = cpu->lr;
|
|
/* 022ADFB0 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022ADFB4 */ cpu->r[3] = cpu->r[3] + 0x000039F8u;
|
|
/* 022ADFB8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022ADFBC */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADFC0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022ADFC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022ADFC4 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022ADFC8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022ADFC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022ADFC8 */ cpu->r[1] = _t1;
|
|
/* 022ADFCC */ cpu->r[0] = cpu->r[0] + 0xFFFFEF34u;
|
|
/* 022ADFD0 */ _t2 = cpu->r[11] + 0x00002604u;
|
|
/* 022ADFD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 022ADFD4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADFD8 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 022ADFD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022ADFDC */ cpu->r[11] = cpu->r[11] + 0x000022ECu;
|
|
/* 022ADFE0 */ _t4 = cpu->r[12] + 0x000025ACu;
|
|
/* 022ADFE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 022ADFE4 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 022ADFE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022ADFE8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022ADFEC */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022ADFEC */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022ADFF0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADFF4 */ _t7 = cpu->r[12] + 0x00003A0Cu;
|
|
/* 022ADFF4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 022ADFF4 */ cpu->r[12] = _t7;
|
|
/* 022ADFF8 */ cpu->r[11] = cpu->r[11] + 0x00002A00u;
|
|
/* 022ADFFC */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 022ADFFC */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 022AE000 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AE004 */ _t9 = cpu->r[12] + 0x00000004u;
|
|
/* 022AE004 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[13]);
|
|
/* 022AE008 */ cpu->r[11] = cpu->r[11] + 0x00002434u;
|
|
/* 022AE00C */ _t10 = cpu->r[12] + 0x00000008u;
|
|
/* 022AE00C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022AE010 */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE010 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 022AE014 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022AE018 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AE01C */ cpu->r[3] = cpu->r[3] + 0x000056B8u;
|
|
/* 022AE020 */ Gambit_fn_02C83090(cpu);
|
|
/* 022AE024 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AE028 */ cpu->lr = cpu->r[0];
|
|
/* 022AE02C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE030 */ return;
|
|
}
|
|
|
|
// fn_022ADFC8 @ 0x22adfc8
|
|
void Gambit_fn_022ADFC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022ADFC8: ; // 0x22adfc8
|
|
/* 022ADFC8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022ADFC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022ADFC8 */ cpu->r[1] = _t0;
|
|
/* 022ADFCC */ cpu->r[0] = cpu->r[0] + 0xFFFFEF34u;
|
|
/* 022ADFD0 */ _t1 = cpu->r[11] + 0x00002604u;
|
|
/* 022ADFD0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022ADFD4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADFD8 */ _t2 = cpu->r[3] + 0x00000010u;
|
|
/* 022ADFD8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022ADFDC */ cpu->r[11] = cpu->r[11] + 0x000022ECu;
|
|
/* 022ADFE0 */ _t3 = cpu->r[12] + 0x000025ACu;
|
|
/* 022ADFE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022ADFE4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022ADFE4 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 022ADFE8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 022ADFEC */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022ADFEC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022ADFF0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022ADFF4 */ _t6 = cpu->r[12] + 0x00003A0Cu;
|
|
/* 022ADFF4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 022ADFF4 */ cpu->r[12] = _t6;
|
|
/* 022ADFF8 */ cpu->r[11] = cpu->r[11] + 0x00002A00u;
|
|
/* 022ADFFC */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 022ADFFC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 022AE000 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AE004 */ _t8 = cpu->r[12] + 0x00000004u;
|
|
/* 022AE004 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[13]);
|
|
/* 022AE008 */ cpu->r[11] = cpu->r[11] + 0x00002434u;
|
|
/* 022AE00C */ _t9 = cpu->r[12] + 0x00000008u;
|
|
/* 022AE00C */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AE010 */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE010 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022AE014 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022AE018 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AE01C */ cpu->r[3] = cpu->r[3] + 0x000056B8u;
|
|
/* 022AE020 */ Gambit_fn_02C83090(cpu);
|
|
/* 022AE024 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AE028 */ cpu->lr = cpu->r[0];
|
|
/* 022AE02C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE030 */ return;
|
|
}
|
|
|
|
// fn_022AE034 @ 0x22ae034
|
|
void Gambit_fn_022AE034(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE034: ; // 0x22ae034
|
|
/* 022AE034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE038 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE038 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE038 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE038 */ goto L_022AE03C;
|
|
L_022AE03C: ; // 0x22ae03c
|
|
/* 022AE03C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE040 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE040 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE040 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE040 */ goto L_022AE044;
|
|
L_022AE044: ; // 0x22ae044
|
|
/* 022AE044 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE048 @ 0x22ae048
|
|
void Gambit_fn_022AE048(CPUState* cpu) {
|
|
L_022AE048: ; // 0x22ae048
|
|
/* 022AE048 */ return;
|
|
}
|
|
|
|
// fn_022AE04C @ 0x22ae04c
|
|
void Gambit_fn_022AE04C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE04C: ; // 0x22ae04c
|
|
/* 022AE04C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE050 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE050 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE050 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE050 */ goto L_022AE054;
|
|
L_022AE054: ; // 0x22ae054
|
|
/* 022AE054 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE058 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE058 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE058 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE058 */ goto L_022AE05C;
|
|
L_022AE05C: ; // 0x22ae05c
|
|
/* 022AE05C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE060 @ 0x22ae060
|
|
void Gambit_fn_022AE060(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022AE060: ; // 0x22ae060
|
|
/* 022AE060 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 022AE060 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE064 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE068 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 022AE06C */ cpu->r[11] = 0x10110000u;
|
|
/* 022AE070 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 022AE070 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022AE074 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 022AE074 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 022AE078 */ return;
|
|
}
|
|
|
|
// fn_022AE07C @ 0x22ae07c
|
|
void Gambit_fn_022AE07C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE07C: ; // 0x22ae07c
|
|
/* 022AE07C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE080 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE080 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE080 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE080 */ goto L_022AE084;
|
|
L_022AE084: ; // 0x22ae084
|
|
/* 022AE084 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE088 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE088 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE088 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE088 */ goto L_022AE08C;
|
|
L_022AE08C: ; // 0x22ae08c
|
|
/* 022AE08C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE090 @ 0x22ae090
|
|
void Gambit_fn_022AE090(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE090: ; // 0x22ae090
|
|
/* 022AE090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE094 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE094 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE094 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE094 */ goto L_022AE098;
|
|
L_022AE098: ; // 0x22ae098
|
|
/* 022AE098 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE09C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE09C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE09C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE09C */ goto L_022AE0A0;
|
|
L_022AE0A0: ; // 0x22ae0a0
|
|
/* 022AE0A0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE0A4 @ 0x22ae0a4
|
|
void Gambit_fn_022AE0A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_022AE0A4: ; // 0x22ae0a4
|
|
/* 022AE0A4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AE0A8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022AE0A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE0A8 */ cpu->r[1] = _t0;
|
|
/* 022AE0AC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022AE0AC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 022AE0B0 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 022AE0B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AE0B4 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AE0B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 022AE0B8 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 022AE0B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 022AE0BC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 022AE0BC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022AE0C0 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AE0C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AE0C4 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 022AE0C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022AE0C8 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 022AE0C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 022AE0CC */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 022AE0CC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 022AE0D0 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 022AE0D0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022AE0D4 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022AE0D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 022AE0D8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE0D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 022AE0DC */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 022AE0DC */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 022AE0E0 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 022AE0E0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022AE0E0 */ if (_t15) goto L_022AE0E4; else goto L_022AE104;
|
|
L_022AE0E4: ; // 0x22ae0e4
|
|
/* 022AE0E4 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 022AE0E4 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 022AE0E8 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 022AE0E8 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 022AE0EC */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 022AE0EC */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 022AE0F0 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 022AE0F0 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 022AE0F4 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 022AE0F4 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 022AE0F8 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 022AE0F8 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022AE0FC */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 022AE0FC */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 022AE100 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022AE100 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_022AE104: ; // 0x22ae104
|
|
/* 022AE104 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AE108 */ cpu->r[30] = cpu->r[4];
|
|
/* 022AE10C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE10C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AE10C */ if (_t25) goto L_022AE110; else goto L_022AE120;
|
|
L_022AE110: ; // 0x22ae110
|
|
/* 022AE110 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 022AE114 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE118 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AE11C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE11C */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AE11C */ if (_t27) goto L_022AE1E4; else goto L_022AE120;
|
|
L_022AE120: ; // 0x22ae120
|
|
/* 022AE120 */ cpu->r[29] = cpu->r[31];
|
|
/* 022AE120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AE124 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE124 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AE124 */ if (_t29) goto L_022AE128; else goto L_022AE138;
|
|
L_022AE128: ; // 0x22ae128
|
|
/* 022AE128 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 022AE12C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE130 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AE130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AE134 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE134 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AE134 */ if (_t31) goto L_022AE1A8; else goto L_022AE138;
|
|
L_022AE138: ; // 0x22ae138
|
|
/* 022AE138 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AE138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE13C */ cpu->r[28] = 0x10110000u;
|
|
/* 022AE140 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE140 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AE140 */ if (_t33) goto L_022AE144; else goto L_022AE170;
|
|
L_022AE144: ; // 0x22ae144
|
|
/* 022AE144 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AE148 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE150 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE150 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022AE150 */ if (_t35) goto L_022AE154; else goto L_022AE170;
|
|
L_022AE154: ; // 0x22ae154
|
|
/* 022AE154 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AE158 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 022AE158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 022AE15C */ cpu->r[7] = cpu->r[7] + 0x0000231Cu;
|
|
/* 022AE160 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 022AE160 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AE164 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 022AE164 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022AE168 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE168 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 022AE16C */ goto L_022AE1A8;
|
|
L_022AE170: ; // 0x22ae170
|
|
/* 022AE170 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AE174 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 022AE178 */ cpu->r[5] = cpu->r[5] + 0x00002304u;
|
|
/* 022AE17C */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 022AE17C */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022AE180 */ cpu->r[6] = 0x00000080u;
|
|
/* 022AE184 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE184 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 022AE188 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE188 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 022AE18C */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 022AE18C */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 022AE190 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AE194 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 022AE194 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AE198 */ cpu->r[7] = cpu->r[7] + 0x0000231Cu;
|
|
/* 022AE19C */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 022AE19C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 022AE1A0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 022AE1A0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 022AE1A4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE1A4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_022AE1A8: ; // 0x22ae1a8
|
|
/* 022AE1A8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AE1AC */ cpu->r[12] = 0x00000002u;
|
|
/* 022AE1B0 */ cpu->r[9] = cpu->r[9] + 0x0000241Cu;
|
|
/* 022AE1B4 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 022AE1B8 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE1B8 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 022AE1BC */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 022AE1C0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE1C0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 022AE1C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AE1C8 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 022AE1C8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 022AE1CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE1D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE1D4 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 022AE1D4 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 022AE1D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 022AE1DC */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 022AE1DC */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 022AE1E0 */ Gambit_fn_0282A5DC(cpu);
|
|
L_022AE1E4: ; // 0x22ae1e4
|
|
/* 022AE1E4 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 022AE1E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022AE1E8 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022AE1E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022AE1EC */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AE1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022AE1F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE1F4 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 022AE1F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AE1F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AE1FC */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 022AE1FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022AE200 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022AE204 */ return;
|
|
}
|
|
|
|
// fn_022AE0A8 @ 0x22ae0a8
|
|
void Gambit_fn_022AE0A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_022AE0A8: ; // 0x22ae0a8
|
|
/* 022AE0A8 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022AE0A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE0A8 */ cpu->r[1] = _t0;
|
|
/* 022AE0AC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022AE0AC */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 022AE0B0 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 022AE0B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AE0B4 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AE0B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 022AE0B8 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 022AE0B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 022AE0BC */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 022AE0BC */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022AE0C0 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AE0C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AE0C4 */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 022AE0C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022AE0C8 */ _t8 = cpu->r[1] + 0x00000080u;
|
|
/* 022AE0C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 022AE0CC */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 022AE0CC */ rbrew_write32(cpu->mem, _t9, cpu->r[6]);
|
|
/* 022AE0D0 */ _t10 = cpu->r[1] + 0x00000030u;
|
|
/* 022AE0D0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 022AE0D4 */ _t11 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022AE0D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 022AE0D8 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE0D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 022AE0DC */ _t13 = cpu->r[1] + 0x00000028u;
|
|
/* 022AE0DC */ rbrew_write32(cpu->mem, _t13, cpu->r[7]);
|
|
/* 022AE0E0 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 022AE0E0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022AE0E0 */ if (_t15) goto L_022AE0E4; else goto L_022AE104;
|
|
L_022AE0E4: ; // 0x22ae0e4
|
|
/* 022AE0E4 */ _t16 = cpu->r[1] + 0x00000048u;
|
|
/* 022AE0E4 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]);
|
|
/* 022AE0E8 */ _t17 = cpu->r[1] + 0x00000068u;
|
|
/* 022AE0E8 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]);
|
|
/* 022AE0EC */ _t18 = cpu->r[1] + 0x00000060u;
|
|
/* 022AE0EC */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]);
|
|
/* 022AE0F0 */ _t19 = cpu->r[1] + 0x00000040u;
|
|
/* 022AE0F0 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]);
|
|
/* 022AE0F4 */ _t20 = cpu->r[1] + 0x00000050u;
|
|
/* 022AE0F4 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]);
|
|
/* 022AE0F8 */ _t21 = cpu->r[1] + 0x00000070u;
|
|
/* 022AE0F8 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]);
|
|
/* 022AE0FC */ _t22 = cpu->r[1] + 0x00000058u;
|
|
/* 022AE0FC */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]);
|
|
/* 022AE100 */ _t23 = cpu->r[1] + 0x00000038u;
|
|
/* 022AE100 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]);
|
|
L_022AE104: ; // 0x22ae104
|
|
/* 022AE104 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AE108 */ cpu->r[30] = cpu->r[4];
|
|
/* 022AE10C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE10C */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AE10C */ if (_t25) goto L_022AE110; else goto L_022AE120;
|
|
L_022AE110: ; // 0x22ae110
|
|
/* 022AE110 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 022AE114 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE118 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AE11C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE11C */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AE11C */ if (_t27) goto L_022AE1E4; else goto L_022AE120;
|
|
L_022AE120: ; // 0x22ae120
|
|
/* 022AE120 */ cpu->r[29] = cpu->r[31];
|
|
/* 022AE120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AE124 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE124 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AE124 */ if (_t29) goto L_022AE128; else goto L_022AE138;
|
|
L_022AE128: ; // 0x22ae128
|
|
/* 022AE128 */ cpu->r[3] = 0x0000008Cu;
|
|
/* 022AE12C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE130 */ cpu->r[29] = cpu->r[3];
|
|
/* 022AE130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022AE134 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE134 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AE134 */ if (_t31) goto L_022AE1A8; else goto L_022AE138;
|
|
L_022AE138: ; // 0x22ae138
|
|
/* 022AE138 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AE138 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE13C */ cpu->r[28] = 0x10110000u;
|
|
/* 022AE140 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE140 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AE140 */ if (_t33) goto L_022AE144; else goto L_022AE170;
|
|
L_022AE144: ; // 0x22ae144
|
|
/* 022AE144 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AE148 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AE14C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE150 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE150 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022AE150 */ if (_t35) goto L_022AE154; else goto L_022AE170;
|
|
L_022AE154: ; // 0x22ae154
|
|
/* 022AE154 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AE158 */ _t36 = cpu->r[28] + 0x00007399u;
|
|
/* 022AE158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 022AE15C */ cpu->r[7] = cpu->r[7] + 0x0000231Cu;
|
|
/* 022AE160 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 022AE160 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AE164 */ _t38 = cpu->r[29] + 0x00000004u;
|
|
/* 022AE164 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022AE168 */ _t39 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE168 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
/* 022AE16C */ goto L_022AE1A8;
|
|
L_022AE170: ; // 0x22ae170
|
|
/* 022AE170 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AE174 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu;
|
|
/* 022AE178 */ cpu->r[5] = cpu->r[5] + 0x00002304u;
|
|
/* 022AE17C */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 022AE17C */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 022AE180 */ cpu->r[6] = 0x00000080u;
|
|
/* 022AE184 */ _t41 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE184 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]);
|
|
/* 022AE188 */ _t42 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE188 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]);
|
|
/* 022AE18C */ _t43 = cpu->r[28] + 0x00007399u;
|
|
/* 022AE18C */ cpu->r[0] = rbrew_read8(cpu->mem, _t43);
|
|
/* 022AE190 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AE194 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 022AE194 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AE198 */ cpu->r[7] = cpu->r[7] + 0x0000231Cu;
|
|
/* 022AE19C */ _t45 = cpu->r[29] + 0x0000008Bu;
|
|
/* 022AE19C */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]);
|
|
/* 022AE1A0 */ _t46 = cpu->r[29] + 0x00000004u;
|
|
/* 022AE1A0 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]);
|
|
/* 022AE1A4 */ _t47 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE1A4 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]);
|
|
L_022AE1A8: ; // 0x22ae1a8
|
|
/* 022AE1A8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AE1AC */ cpu->r[12] = 0x00000002u;
|
|
/* 022AE1B0 */ cpu->r[9] = cpu->r[9] + 0x0000241Cu;
|
|
/* 022AE1B4 */ cpu->r[0] = cpu->r[1] + 0x00000090u;
|
|
/* 022AE1B8 */ _t48 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE1B8 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]);
|
|
/* 022AE1BC */ cpu->r[11] = cpu->r[1] + 0x00000018u;
|
|
/* 022AE1C0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE1C0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 022AE1C4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AE1C8 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 022AE1C8 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]);
|
|
/* 022AE1CC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE1D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE1D4 */ _t51 = cpu->r[1] + 0x00000009u;
|
|
/* 022AE1D4 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]);
|
|
/* 022AE1D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 022AE1DC */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 022AE1DC */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]);
|
|
/* 022AE1E0 */ Gambit_fn_0282A5DC(cpu);
|
|
L_022AE1E4: ; // 0x22ae1e4
|
|
/* 022AE1E4 */ _t53 = cpu->r[1] + 0x00000078u;
|
|
/* 022AE1E4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022AE1E8 */ _t54 = cpu->r[1] + 0x0000007Cu;
|
|
/* 022AE1E8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022AE1EC */ _t55 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AE1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022AE1F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE1F4 */ _t56 = cpu->r[1] + 0x00000080u;
|
|
/* 022AE1F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AE1F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AE1FC */ _t57 = cpu->r[1] + 0x00000084u;
|
|
/* 022AE1FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022AE200 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022AE204 */ return;
|
|
}
|
|
|
|
// fn_022AE208 @ 0x22ae208
|
|
void Gambit_fn_022AE208(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE208: ; // 0x22ae208
|
|
/* 022AE208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE20C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE20C */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE20C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE20C */ goto L_022AE210;
|
|
L_022AE210: ; // 0x22ae210
|
|
/* 022AE210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE214 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE214 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE214 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE214 */ goto L_022AE218;
|
|
L_022AE218: ; // 0x22ae218
|
|
/* 022AE218 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE21C @ 0x22ae21c
|
|
void Gambit_fn_022AE21C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE21C: ; // 0x22ae21c
|
|
/* 022AE21C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE220 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE220 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE220 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE220 */ goto L_022AE224;
|
|
L_022AE224: ; // 0x22ae224
|
|
/* 022AE224 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE228 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE228 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE228 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE228 */ goto L_022AE22C;
|
|
L_022AE22C: ; // 0x22ae22c
|
|
/* 022AE22C */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE230 @ 0x22ae230
|
|
void Gambit_fn_022AE230(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE230: ; // 0x22ae230
|
|
/* 022AE230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE234 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE234 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE234 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE234 */ goto L_022AE238;
|
|
L_022AE238: ; // 0x22ae238
|
|
/* 022AE238 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE23C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE23C */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE23C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE23C */ goto L_022AE240;
|
|
L_022AE240: ; // 0x22ae240
|
|
/* 022AE240 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE244 @ 0x22ae244
|
|
void Gambit_fn_022AE244(CPUState* cpu) {
|
|
L_022AE244: ; // 0x22ae244
|
|
/* 022AE244 */ return;
|
|
}
|
|
|
|
// fn_022AE248 @ 0x22ae248
|
|
void Gambit_fn_022AE248(CPUState* cpu) {
|
|
L_022AE248: ; // 0x22ae248
|
|
/* 022AE248 */ return;
|
|
}
|
|
|
|
// fn_022AE24C @ 0x22ae24c
|
|
void Gambit_fn_022AE24C(CPUState* cpu) {
|
|
L_022AE24C: ; // 0x22ae24c
|
|
/* 022AE24C */ return;
|
|
}
|
|
|
|
// fn_022AE250 @ 0x22ae250
|
|
void Gambit_fn_022AE250(CPUState* cpu) {
|
|
L_022AE250: ; // 0x22ae250
|
|
/* 022AE250 */ return;
|
|
}
|
|
|
|
// fn_022AE254 @ 0x22ae254
|
|
void Gambit_fn_022AE254(CPUState* cpu) {
|
|
L_022AE254: ; // 0x22ae254
|
|
/* 022AE254 */ return;
|
|
}
|
|
|
|
// fn_022AE258 @ 0x22ae258
|
|
void Gambit_fn_022AE258(CPUState* cpu) {
|
|
L_022AE258: ; // 0x22ae258
|
|
/* 022AE258 */ return;
|
|
}
|
|
|
|
// fn_022AE25C @ 0x22ae25c
|
|
void Gambit_fn_022AE25C(CPUState* cpu) {
|
|
L_022AE25C: ; // 0x22ae25c
|
|
/* 022AE25C */ return;
|
|
}
|
|
|
|
// fn_022AE260 @ 0x22ae260
|
|
void Gambit_fn_022AE260(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AE260: ; // 0x22ae260
|
|
/* 022AE260 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE268 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE268 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE268 */ if (_t2) goto L_022AE274; else goto L_022AE26C;
|
|
L_022AE26C: ; // 0x22ae26c
|
|
/* 022AE26C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 022AE270 */ return;
|
|
L_022AE274: ; // 0x22ae274
|
|
/* 022AE274 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE278 */ return;
|
|
}
|
|
|
|
// fn_022AE27C @ 0x22ae27c
|
|
void Gambit_fn_022AE27C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AE27C: ; // 0x22ae27c
|
|
/* 022AE27C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE27C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE284 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE284 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE284 */ if (_t2) goto L_022AE290; else goto L_022AE288;
|
|
L_022AE288: ; // 0x22ae288
|
|
/* 022AE288 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 022AE28C */ return;
|
|
L_022AE290: ; // 0x22ae290
|
|
/* 022AE290 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE294 */ return;
|
|
}
|
|
|
|
// fn_022AE298 @ 0x22ae298
|
|
void Gambit_fn_022AE298(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE298: ; // 0x22ae298
|
|
/* 022AE298 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AE298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE29C */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE2A0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE2A0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE2A0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AE2A0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE2A0 */ goto L_022AE2A4;
|
|
L_022AE2A4: ; // 0x22ae2a4
|
|
/* 022AE2A4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE2A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE2A8 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 022AE2A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE2AC */ cpu->ctr = cpu->r[0];
|
|
/* 022AE2B0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE2B4 @ 0x22ae2b4
|
|
void Gambit_fn_022AE2B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE2B4: ; // 0x22ae2b4
|
|
/* 022AE2B4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AE2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE2B8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE2B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE2BC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE2BC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE2BC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AE2BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE2BC */ goto L_022AE2C0;
|
|
L_022AE2C0: ; // 0x22ae2c0
|
|
/* 022AE2C0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE2C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE2C4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 022AE2C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE2C8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE2CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE2D0 @ 0x22ae2d0
|
|
void Gambit_fn_022AE2D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE2D0: ; // 0x22ae2d0
|
|
/* 022AE2D0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AE2D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE2D4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE2D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE2D8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE2D8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE2D8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 022AE2D8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE2D8 */ goto L_022AE2DC;
|
|
L_022AE2DC: ; // 0x22ae2dc
|
|
/* 022AE2DC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE2DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE2E0 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 022AE2E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE2E4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE2E8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE2EC @ 0x22ae2ec
|
|
void Gambit_fn_022AE2EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE2EC: ; // 0x22ae2ec
|
|
/* 022AE2EC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE2EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE2F0 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AE2F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE2F4 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE2F8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE2FC @ 0x22ae2fc
|
|
void Gambit_fn_022AE2FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AE2FC: ; // 0x22ae2fc
|
|
/* 022AE2FC */ cpu->r[0] = cpu->lr;
|
|
/* 022AE300 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE300 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE300 */ cpu->r[1] = _t0;
|
|
/* 022AE304 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE304 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE308 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE30C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE30C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE310 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AE310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022AE318 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE318 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AE318 */ if (_t5) goto L_022AE31C; else goto L_022AE338;
|
|
L_022AE31C: ; // 0x22ae31c
|
|
/* 022AE31C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE31C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE320 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022AE320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE324 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE328 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE32C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE330 */ cpu->r[0] = 0x00000002u;
|
|
/* 022AE334 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AE334 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AE338: ; // 0x22ae338
|
|
/* 022AE338 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AE33C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE33C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AE340 */ cpu->lr = cpu->r[0];
|
|
/* 022AE344 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE348 */ return;
|
|
}
|
|
|
|
// fn_022AE300 @ 0x22ae300
|
|
void Gambit_fn_022AE300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022AE300: ; // 0x22ae300
|
|
/* 022AE300 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE300 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE300 */ cpu->r[1] = _t0;
|
|
/* 022AE304 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE304 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE308 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE30C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE30C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE310 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AE310 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 022AE318 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE318 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AE318 */ if (_t5) goto L_022AE31C; else goto L_022AE338;
|
|
L_022AE31C: ; // 0x22ae31c
|
|
/* 022AE31C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE31C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE320 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 022AE320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE324 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE328 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE32C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE330 */ cpu->r[0] = 0x00000002u;
|
|
/* 022AE334 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AE334 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022AE338: ; // 0x22ae338
|
|
/* 022AE338 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE338 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AE33C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE33C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AE340 */ cpu->lr = cpu->r[0];
|
|
/* 022AE344 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE348 */ return;
|
|
}
|
|
|
|
// fn_022AE354 @ 0x22ae354
|
|
void Gambit_fn_022AE354(CPUState* cpu) {
|
|
L_022AE354: ; // 0x22ae354
|
|
/* 022AE354 */ return;
|
|
}
|
|
|
|
// fn_022AE358 @ 0x22ae358
|
|
void Gambit_fn_022AE358(CPUState* cpu) {
|
|
L_022AE358: ; // 0x22ae358
|
|
/* 022AE358 */ return;
|
|
}
|
|
|
|
// fn_022AE35C @ 0x22ae35c
|
|
void Gambit_fn_022AE35C(CPUState* cpu) {
|
|
L_022AE35C: ; // 0x22ae35c
|
|
/* 022AE35C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE360 */ return;
|
|
}
|
|
|
|
// fn_022AE364 @ 0x22ae364
|
|
void Gambit_fn_022AE364(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022AE364: ; // 0x22ae364
|
|
/* 022AE364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE368 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE368 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022AE368 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE368 */ goto L_022AE36C;
|
|
L_022AE36C: ; // 0x22ae36c
|
|
/* 022AE36C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AE36C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AE370 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE370 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE370 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AE370 */ goto L_022AE374;
|
|
L_022AE374: ; // 0x22ae374
|
|
/* 022AE374 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022AE378 @ 0x22ae378
|
|
void Gambit_fn_022AE378(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE378: ; // 0x22ae378
|
|
/* 022AE378 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE378 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE37C */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 022AE37C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE380 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE384 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE388 @ 0x22ae388
|
|
void Gambit_fn_022AE388(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE388: ; // 0x22ae388
|
|
/* 022AE388 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE388 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE38C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022AE38C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE390 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE394 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE398 @ 0x22ae398
|
|
void Gambit_fn_022AE398(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE398: ; // 0x22ae398
|
|
/* 022AE398 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE398 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE39C */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 022AE39C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE3A0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE3A4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE3A8 @ 0x22ae3a8
|
|
void Gambit_fn_022AE3A8(CPUState* cpu) {
|
|
L_022AE3A8: ; // 0x22ae3a8
|
|
/* 022AE3A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE3AC */ return;
|
|
}
|
|
|
|
// fn_022AE3B0 @ 0x22ae3b0
|
|
void Gambit_fn_022AE3B0(CPUState* cpu) {
|
|
L_022AE3B0: ; // 0x22ae3b0
|
|
/* 022AE3B0 */ return;
|
|
}
|
|
|
|
// fn_022AE3B4 @ 0x22ae3b4
|
|
void Gambit_fn_022AE3B4(CPUState* cpu) {
|
|
L_022AE3B4: ; // 0x22ae3b4
|
|
/* 022AE3B4 */ return;
|
|
}
|
|
|
|
// fn_022AE3B8 @ 0x22ae3b8
|
|
void Gambit_fn_022AE3B8(CPUState* cpu) {
|
|
L_022AE3B8: ; // 0x22ae3b8
|
|
/* 022AE3B8 */ return;
|
|
}
|
|
|
|
// fn_022AE3BC @ 0x22ae3bc
|
|
void Gambit_fn_022AE3BC(CPUState* cpu) {
|
|
L_022AE3BC: ; // 0x22ae3bc
|
|
/* 022AE3BC */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE3C0 */ return;
|
|
}
|
|
|
|
// fn_022AE3C4 @ 0x22ae3c4
|
|
void Gambit_fn_022AE3C4(CPUState* cpu) {
|
|
L_022AE3C4: ; // 0x22ae3c4
|
|
/* 022AE3C4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE3C8 */ return;
|
|
}
|
|
|
|
// fn_022AE3CC @ 0x22ae3cc
|
|
void Gambit_fn_022AE3CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022AE3CC: ; // 0x22ae3cc
|
|
/* 022AE3CC */ cpu->r[0] = cpu->lr;
|
|
/* 022AE3D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AE3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE3D0 */ cpu->r[1] = _t0;
|
|
/* 022AE3D4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE3D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE3D8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE3D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE3DC */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022AE3DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE3E0 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022AE3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE3E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE3E8 */ cpu->ctr = cpu->r[9];
|
|
/* 022AE3EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE3F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE3F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE3F8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022AE3F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE3FC */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022AE3FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE400 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022AE400 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022AE404 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022AE404 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022AE408 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE408 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022AE40C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AE410 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AE414 */ cpu->lr = cpu->r[0];
|
|
/* 022AE418 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AE41C */ return;
|
|
}
|
|
|
|
// fn_022AE3D0 @ 0x22ae3d0
|
|
void Gambit_fn_022AE3D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_022AE3D0: ; // 0x22ae3d0
|
|
/* 022AE3D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AE3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE3D0 */ cpu->r[1] = _t0;
|
|
/* 022AE3D4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE3D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE3D8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE3D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE3DC */ _t3 = cpu->r[4] + 0x00000004u;
|
|
/* 022AE3DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE3E0 */ _t4 = cpu->r[11] + 0x0000025Cu;
|
|
/* 022AE3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE3E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE3E8 */ cpu->ctr = cpu->r[9];
|
|
/* 022AE3EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE3F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE3F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE3F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE3F8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022AE3F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE3FC */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 022AE3FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE400 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 022AE400 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022AE404 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 022AE404 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 022AE408 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AE408 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 022AE40C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AE40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AE410 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AE414 */ cpu->lr = cpu->r[0];
|
|
/* 022AE418 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AE41C */ return;
|
|
}
|
|
|
|
// fn_022AE420 @ 0x22ae420
|
|
void Gambit_fn_022AE420(CPUState* cpu) {
|
|
L_022AE420: ; // 0x22ae420
|
|
/* 022AE420 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE424 */ return;
|
|
}
|
|
|
|
// fn_022AE428 @ 0x22ae428
|
|
void Gambit_fn_022AE428(CPUState* cpu) {
|
|
L_022AE428: ; // 0x22ae428
|
|
/* 022AE428 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE42C */ return;
|
|
}
|
|
|
|
// fn_022AE430 @ 0x22ae430
|
|
void Gambit_fn_022AE430(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE430: ; // 0x22ae430
|
|
/* 022AE430 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE430 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE434 */ _t1 = cpu->r[12] + 0x000002B4u;
|
|
/* 022AE434 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE438 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE43C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE440 @ 0x22ae440
|
|
void Gambit_fn_022AE440(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE440: ; // 0x22ae440
|
|
/* 022AE440 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE444 */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022AE444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE448 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE44C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE450 @ 0x22ae450
|
|
void Gambit_fn_022AE450(CPUState* cpu) {
|
|
L_022AE450: ; // 0x22ae450
|
|
/* 022AE450 */ return;
|
|
}
|
|
|
|
// fn_022AE454 @ 0x22ae454
|
|
void Gambit_fn_022AE454(CPUState* cpu) {
|
|
L_022AE454: ; // 0x22ae454
|
|
/* 022AE454 */ return;
|
|
}
|
|
|
|
// fn_022AE458 @ 0x22ae458
|
|
void Gambit_fn_022AE458(CPUState* cpu) {
|
|
L_022AE458: ; // 0x22ae458
|
|
/* 022AE458 */ return;
|
|
}
|
|
|
|
// fn_022AE45C @ 0x22ae45c
|
|
void Gambit_fn_022AE45C(CPUState* cpu) {
|
|
L_022AE45C: ; // 0x22ae45c
|
|
/* 022AE45C */ return;
|
|
}
|
|
|
|
// fn_022AE460 @ 0x22ae460
|
|
void Gambit_fn_022AE460(CPUState* cpu) {
|
|
L_022AE460: ; // 0x22ae460
|
|
/* 022AE460 */ return;
|
|
}
|
|
|
|
// fn_022AE464 @ 0x22ae464
|
|
void Gambit_fn_022AE464(CPUState* cpu) {
|
|
L_022AE464: ; // 0x22ae464
|
|
/* 022AE464 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE468 */ return;
|
|
}
|
|
|
|
// fn_022AE46C @ 0x22ae46c
|
|
void Gambit_fn_022AE46C(CPUState* cpu) {
|
|
L_022AE46C: ; // 0x22ae46c
|
|
/* 022AE46C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE470 */ return;
|
|
}
|
|
|
|
// fn_022AE474 @ 0x22ae474
|
|
void Gambit_fn_022AE474(CPUState* cpu) {
|
|
L_022AE474: ; // 0x22ae474
|
|
/* 022AE474 */ cpu->r[3] = cpu->r[3] + 0x0000011Cu;
|
|
/* 022AE478 */ return;
|
|
}
|
|
|
|
// fn_022AE47C @ 0x22ae47c
|
|
void Gambit_fn_022AE47C(CPUState* cpu) {
|
|
L_022AE47C: ; // 0x22ae47c
|
|
/* 022AE47C */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE480 */ return;
|
|
}
|
|
|
|
// fn_022AE484 @ 0x22ae484
|
|
void Gambit_fn_022AE484(CPUState* cpu) {
|
|
L_022AE484: ; // 0x22ae484
|
|
/* 022AE484 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE488 */ return;
|
|
}
|
|
|
|
// fn_022AE48C @ 0x22ae48c
|
|
void Gambit_fn_022AE48C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE48C: ; // 0x22ae48c
|
|
/* 022AE48C */ cpu->r[12] = 0x10060000u;
|
|
/* 022AE490 */ _t0 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AE490 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AE494 */ return;
|
|
}
|
|
|
|
// fn_022AE498 @ 0x22ae498
|
|
void Gambit_fn_022AE498(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE498: ; // 0x22ae498
|
|
/* 022AE498 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AE49C */ _t0 = cpu->r[12] + 0x000025D8u;
|
|
/* 022AE49C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AE4A0 */ return;
|
|
}
|
|
|
|
// fn_022AE4A4 @ 0x22ae4a4
|
|
void Gambit_fn_022AE4A4(CPUState* cpu) {
|
|
L_022AE4A4: ; // 0x22ae4a4
|
|
/* 022AE4A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE4A8 */ return;
|
|
}
|
|
|
|
// fn_022AE4AC @ 0x22ae4ac
|
|
void Gambit_fn_022AE4AC(CPUState* cpu) {
|
|
L_022AE4AC: ; // 0x22ae4ac
|
|
/* 022AE4AC */ return;
|
|
}
|
|
|
|
// fn_022AE4B0 @ 0x22ae4b0
|
|
void Gambit_fn_022AE4B0(CPUState* cpu) {
|
|
L_022AE4B0: ; // 0x22ae4b0
|
|
/* 022AE4B0 */ return;
|
|
}
|
|
|
|
// fn_022AE4B4 @ 0x22ae4b4
|
|
void Gambit_fn_022AE4B4(CPUState* cpu) {
|
|
L_022AE4B4: ; // 0x22ae4b4
|
|
/* 022AE4B4 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE4B8 */ return;
|
|
}
|
|
|
|
// fn_022AE4BC @ 0x22ae4bc
|
|
void Gambit_fn_022AE4BC(CPUState* cpu) {
|
|
L_022AE4BC: ; // 0x22ae4bc
|
|
/* 022AE4BC */ return;
|
|
}
|
|
|
|
// fn_022AE4C0 @ 0x22ae4c0
|
|
void Gambit_fn_022AE4C0(CPUState* cpu) {
|
|
L_022AE4C0: ; // 0x22ae4c0
|
|
/* 022AE4C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE4C4 */ return;
|
|
}
|
|
|
|
// fn_022AE4C8 @ 0x22ae4c8
|
|
void Gambit_fn_022AE4C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE4C8: ; // 0x22ae4c8
|
|
/* 022AE4C8 */ cpu->r[0] = cpu->lr;
|
|
/* 022AE4CC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AE4CC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AE4D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AE4D4 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AE4D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AE4D4 */ cpu->r[1] = _t1;
|
|
/* 022AE4D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE4D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AE4D8 */ if (_t3) goto L_022AE4DC; else goto L_022AE4F0;
|
|
L_022AE4DC: ; // 0x22ae4dc
|
|
/* 022AE4DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE4E0 */ cpu->lr = cpu->r[0];
|
|
/* 022AE4E4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE4E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE4EC */ return;
|
|
L_022AE4F0: ; // 0x22ae4f0
|
|
/* 022AE4F0 */ Gambit_fn_022713B8(cpu);
|
|
/* 022AE4F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE4F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AE4FC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE500 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE504 */ return;
|
|
}
|
|
|
|
// fn_022AE4D4 @ 0x22ae4d4
|
|
void Gambit_fn_022AE4D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AE4D4: ; // 0x22ae4d4
|
|
/* 022AE4D4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022AE4D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE4D4 */ cpu->r[1] = _t0;
|
|
/* 022AE4D8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE4D8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE4D8 */ if (_t2) goto L_022AE4DC; else goto L_022AE4F0;
|
|
L_022AE4DC: ; // 0x22ae4dc
|
|
/* 022AE4DC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE4DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE4E0 */ cpu->lr = cpu->r[0];
|
|
/* 022AE4E4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE4E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE4EC */ return;
|
|
L_022AE4F0: ; // 0x22ae4f0
|
|
/* 022AE4F0 */ Gambit_fn_022713B8(cpu);
|
|
/* 022AE4F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE4F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE4F8 */ cpu->lr = cpu->r[0];
|
|
/* 022AE4FC */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022AE500 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE504 */ return;
|
|
}
|
|
|
|
// fn_022AE508 @ 0x22ae508
|
|
void Gambit_fn_022AE508(CPUState* cpu) {
|
|
L_022AE508: ; // 0x22ae508
|
|
/* 022AE508 */ return;
|
|
}
|
|
|
|
// fn_022AE50C @ 0x22ae50c
|
|
void Gambit_fn_022AE50C(CPUState* cpu) {
|
|
L_022AE50C: ; // 0x22ae50c
|
|
/* 022AE50C */ cpu->r[3] = 0x101F0000u;
|
|
/* 022AE510 */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022AE514 */ return;
|
|
}
|
|
|
|
// fn_022AE518 @ 0x22ae518
|
|
void Gambit_fn_022AE518(CPUState* cpu) {
|
|
L_022AE518: ; // 0x22ae518
|
|
/* 022AE518 */ cpu->r[3] = 0x101F0000u;
|
|
/* 022AE51C */ cpu->r[3] = cpu->r[3] + 0x00006350u;
|
|
/* 022AE520 */ return;
|
|
}
|
|
|
|
// fn_022AE524 @ 0x22ae524
|
|
void Gambit_fn_022AE524(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_022AE524: ; // 0x22ae524
|
|
/* 022AE524 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 022AE524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE528 */ _t1 = cpu->r[12] + 0x000002C4u;
|
|
/* 022AE528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AE52C */ cpu->ctr = cpu->r[0];
|
|
/* 022AE530 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AE534 @ 0x22ae534
|
|
void Gambit_fn_022AE534(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE534: ; // 0x22ae534
|
|
/* 022AE534 */ _t0 = cpu->r[3] + 0x00000189u;
|
|
/* 022AE534 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AE538 */ return;
|
|
}
|
|
|
|
// fn_022AE53C @ 0x22ae53c
|
|
void Gambit_fn_022AE53C(CPUState* cpu) {
|
|
L_022AE53C: ; // 0x22ae53c
|
|
/* 022AE53C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE540 */ return;
|
|
}
|
|
|
|
// fn_022AE544 @ 0x22ae544
|
|
void Gambit_fn_022AE544(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AE544: ; // 0x22ae544
|
|
/* 022AE544 */ cpu->r[0] = cpu->lr;
|
|
/* 022AE548 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE548 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE548 */ cpu->r[1] = _t0;
|
|
/* 022AE54C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE54C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE550 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE554 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE554 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE558 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 022AE558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE55C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 022AE55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE560 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE564 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022AE568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE56C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE570 */ _t6 = cpu->r[31] + 0x00000198u;
|
|
/* 022AE570 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE574 */ cpu->lr = cpu->r[0];
|
|
/* 022AE578 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE580 */ return;
|
|
}
|
|
|
|
// fn_022AE548 @ 0x22ae548
|
|
void Gambit_fn_022AE548(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022AE548: ; // 0x22ae548
|
|
/* 022AE548 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE548 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE548 */ cpu->r[1] = _t0;
|
|
/* 022AE54C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE54C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE550 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE554 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE554 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE558 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 022AE558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AE55C */ _t4 = cpu->r[12] + 0x00000014u;
|
|
/* 022AE55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE560 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE564 */ cpu->r[3] = cpu->r[31] + 0x00000198u;
|
|
/* 022AE568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE56C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE56C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE570 */ _t6 = cpu->r[31] + 0x00000198u;
|
|
/* 022AE570 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022AE574 */ cpu->lr = cpu->r[0];
|
|
/* 022AE578 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE57C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE580 */ return;
|
|
}
|
|
|
|
// fn_022AE584 @ 0x22ae584
|
|
void Gambit_fn_022AE584(CPUState* cpu) {
|
|
L_022AE584: ; // 0x22ae584
|
|
/* 022AE584 */ cpu->r[3] = 0x00000000u;
|
|
/* 022AE588 */ return;
|
|
}
|
|
|
|
// fn_022AE58C @ 0x22ae58c
|
|
void Gambit_fn_022AE58C(CPUState* cpu) {
|
|
L_022AE58C: ; // 0x22ae58c
|
|
/* 022AE58C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE590 */ return;
|
|
}
|
|
|
|
// fn_022AE594 @ 0x22ae594
|
|
void Gambit_fn_022AE594(CPUState* cpu) {
|
|
L_022AE594: ; // 0x22ae594
|
|
/* 022AE594 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE598 */ return;
|
|
}
|
|
|
|
// fn_022AE59C @ 0x22ae59c
|
|
void Gambit_fn_022AE59C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE59C: ; // 0x22ae59c
|
|
/* 022AE59C */ cpu->r[12] = 0x10060000u;
|
|
/* 022AE5A0 */ _t0 = cpu->r[12] + 0x0000263Cu;
|
|
/* 022AE5A0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AE5A4 */ return;
|
|
}
|
|
|
|
// fn_022AE5A8 @ 0x22ae5a8
|
|
void Gambit_fn_022AE5A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE5A8: ; // 0x22ae5a8
|
|
/* 022AE5A8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AE5AC */ _t0 = cpu->r[12] + 0x0000263Cu;
|
|
/* 022AE5AC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AE5B0 */ return;
|
|
}
|
|
|
|
// fn_022AE5B4 @ 0x22ae5b4
|
|
void Gambit_fn_022AE5B4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE5B4: ; // 0x22ae5b4
|
|
/* 022AE5B4 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 022AE5B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE5B8 */ return;
|
|
}
|
|
|
|
// fn_022AE5BC @ 0x22ae5bc
|
|
void Gambit_fn_022AE5BC(CPUState* cpu) {
|
|
L_022AE5BC: ; // 0x22ae5bc
|
|
/* 022AE5BC */ return;
|
|
}
|
|
|
|
// fn_022AE5C0 @ 0x22ae5c0
|
|
void Gambit_fn_022AE5C0(CPUState* cpu) {
|
|
L_022AE5C0: ; // 0x22ae5c0
|
|
/* 022AE5C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE5C4 */ return;
|
|
}
|
|
|
|
// fn_022AE5C8 @ 0x22ae5c8
|
|
void Gambit_fn_022AE5C8(CPUState* cpu) {
|
|
L_022AE5C8: ; // 0x22ae5c8
|
|
/* 022AE5C8 */ cpu->r[3] = 0x10060000u;
|
|
/* 022AE5CC */ cpu->r[3] = cpu->r[3] + 0x00002444u;
|
|
/* 022AE5D0 */ return;
|
|
}
|
|
|
|
// fn_022AE5D4 @ 0x22ae5d4
|
|
void Gambit_fn_022AE5D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_022AE5D4: ; // 0x22ae5d4
|
|
/* 022AE5D4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022AE5D8 */ _t0 = cpu->r[8] + 0x0000017Cu;
|
|
/* 022AE5D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE5DC */ cpu->r[6] = 0x101D0000u;
|
|
/* 022AE5E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AE5E4 */ cpu->r[6] = cpu->r[6] + 0x00000178u;
|
|
/* 022AE5E8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE5E8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE5E8 */ if (_t2) goto L_022AE5EC; else goto L_022AE604;
|
|
L_022AE5EC: ; // 0x22ae5ec
|
|
/* 022AE5EC */ cpu->r[5] = 0x10060000u;
|
|
/* 022AE5F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE5F4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022AE5F8 */ cpu->r[5] = cpu->r[5] + 0x000023FCu;
|
|
/* 022AE5FC */ _t3 = cpu->r[8] + 0x0000017Cu;
|
|
/* 022AE5FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AE600 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 022AE600 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_022AE604: ; // 0x22ae604
|
|
/* 022AE604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 022AE608 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE608 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AE608 */ if (_t6) goto L_022AE60C; else goto L_022AE614;
|
|
L_022AE60C: ; // 0x22ae60c
|
|
/* 022AE60C */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE610 */ return;
|
|
L_022AE614: ; // 0x22ae614
|
|
/* 022AE614 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AE618 */ _t7 = cpu->r[10] + 0x00000020u;
|
|
/* 022AE618 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE61C */ cpu->r[8] = 0x101D0000u;
|
|
/* 022AE620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AE624 */ cpu->r[8] = cpu->r[8] + 0x0000001Cu;
|
|
/* 022AE628 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE628 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AE628 */ if (_t9) goto L_022AE62C; else goto L_022AE644;
|
|
L_022AE62C: ; // 0x22ae62c
|
|
/* 022AE62C */ cpu->r[0] = 0x10060000u;
|
|
/* 022AE630 */ cpu->r[7] = 0x00000001u;
|
|
/* 022AE634 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022AE638 */ cpu->r[0] = cpu->r[0] + 0x000023DCu;
|
|
/* 022AE63C */ _t10 = cpu->r[6] + 0x00000020u;
|
|
/* 022AE63C */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 022AE640 */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE640 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022AE644: ; // 0x22ae644
|
|
/* 022AE644 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 022AE648 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE648 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AE648 */ if (_t13) goto L_022AE64C; else goto L_022AE654;
|
|
L_022AE64C: ; // 0x22ae64c
|
|
/* 022AE64C */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE650 */ goto L_022AE74C;
|
|
L_022AE654: ; // 0x22ae654
|
|
/* 022AE654 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE658 */ _t14 = cpu->r[12] + 0x00000018u;
|
|
/* 022AE658 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AE65C */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AE660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE664 */ cpu->r[10] = cpu->r[10] + 0x00000014u;
|
|
/* 022AE668 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE668 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AE668 */ if (_t16) goto L_022AE66C; else goto L_022AE684;
|
|
L_022AE66C: ; // 0x22ae66c
|
|
/* 022AE66C */ cpu->r[7] = 0x10060000u;
|
|
/* 022AE670 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AE674 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE678 */ cpu->r[7] = cpu->r[7] + 0x000023CCu;
|
|
/* 022AE67C */ _t17 = cpu->r[12] + 0x00000018u;
|
|
/* 022AE67C */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 022AE680 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 022AE680 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_022AE684: ; // 0x22ae684
|
|
/* 022AE684 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 022AE688 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE688 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AE688 */ if (_t20) goto L_022AE68C; else goto L_022AE694;
|
|
L_022AE68C: ; // 0x22ae68c
|
|
/* 022AE68C */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE690 */ goto L_022AE74C;
|
|
L_022AE694: ; // 0x22ae694
|
|
/* 022AE694 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AE698 */ _t21 = cpu->r[11] + 0xFFFFDAC0u;
|
|
/* 022AE698 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AE69C */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AE6A4 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBC4u;
|
|
/* 022AE6A8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE6A8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AE6A8 */ if (_t23) goto L_022AE6AC; else goto L_022AE6C4;
|
|
L_022AE6AC: ; // 0x22ae6ac
|
|
/* 022AE6AC */ cpu->r[10] = 0x10060000u;
|
|
/* 022AE6B0 */ cpu->r[9] = 0x00000001u;
|
|
/* 022AE6B4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022AE6B8 */ cpu->r[10] = cpu->r[10] + 0x0000239Cu;
|
|
/* 022AE6BC */ _t24 = cpu->r[8] + 0xFFFFDAC0u;
|
|
/* 022AE6BC */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022AE6C0 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022AE6C0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_022AE6C4: ; // 0x22ae6c4
|
|
/* 022AE6C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022AE6C8 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE6C8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AE6C8 */ if (_t27) goto L_022AE6CC; else goto L_022AE6D4;
|
|
L_022AE6CC: ; // 0x22ae6cc
|
|
/* 022AE6CC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE6D0 */ goto L_022AE748;
|
|
L_022AE6D4: ; // 0x22ae6d4
|
|
/* 022AE6D4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AE6D8 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 022AE6D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AE6D8 */ cpu->r[10] = _t28;
|
|
/* 022AE6DC */ cpu->r[7] = 0x101D0000u;
|
|
/* 022AE6E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AE6E4 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 022AE6E8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE6E8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022AE6E8 */ if (_t30) goto L_022AE6EC; else goto L_022AE700;
|
|
L_022AE6EC: ; // 0x22ae6ec
|
|
/* 022AE6EC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AE6F0 */ cpu->r[12] = 0x00000001u;
|
|
/* 022AE6F4 */ cpu->r[0] = cpu->r[0] + 0x0000238Cu;
|
|
/* 022AE6F8 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 022AE6F8 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 022AE6FC */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 022AE6FC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_022AE700: ; // 0x22ae700
|
|
/* 022AE700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 022AE704 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE704 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022AE704 */ if (_t34) goto L_022AE708; else goto L_022AE710;
|
|
L_022AE708: ; // 0x22ae708
|
|
/* 022AE708 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE70C */ goto L_022AE748;
|
|
L_022AE710: ; // 0x22ae710
|
|
/* 022AE710 */ cpu->r[8] = 0x101D0000u;
|
|
/* 022AE714 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 022AE714 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AE714 */ cpu->r[8] = _t35;
|
|
/* 022AE718 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022AE71C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AE720 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 022AE724 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE724 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AE724 */ if (_t37) goto L_022AE728; else goto L_022AE73C;
|
|
L_022AE728: ; // 0x22ae728
|
|
/* 022AE728 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AE72C */ cpu->r[7] = 0x00000001u;
|
|
/* 022AE730 */ cpu->r[9] = cpu->r[9] + 0x000022DCu;
|
|
/* 022AE734 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 022AE734 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 022AE738 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 022AE738 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_022AE73C: ; // 0x22ae73c
|
|
/* 022AE73C */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 022AE740 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 022AE744 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022AE748: ; // 0x22ae748
|
|
/* 022AE748 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_022AE74C: ; // 0x22ae74c
|
|
/* 022AE74C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022AE750 */ return;
|
|
}
|
|
|
|
// fn_022AE754 @ 0x22ae754
|
|
void Gambit_fn_022AE754(CPUState* cpu) {
|
|
L_022AE754: ; // 0x22ae754
|
|
/* 022AE754 */ cpu->r[3] = 0x10060000u;
|
|
/* 022AE758 */ cpu->r[3] = cpu->r[3] + 0x00002454u;
|
|
/* 022AE75C */ return;
|
|
}
|
|
|
|
// fn_022AE760 @ 0x22ae760
|
|
void Gambit_fn_022AE760(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE760: ; // 0x22ae760
|
|
/* 022AE760 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AE764 */ _t0 = cpu->r[12] + 0x000025ACu;
|
|
/* 022AE764 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 022AE768 */ return;
|
|
}
|
|
|
|
// fn_022AE76C @ 0x22ae76c
|
|
void Gambit_fn_022AE76C(CPUState* cpu) {
|
|
L_022AE76C: ; // 0x22ae76c
|
|
/* 022AE76C */ return;
|
|
}
|
|
|
|
// fn_022AE79C @ 0x22ae79c
|
|
void Gambit_fn_022AE79C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022AE79C: ; // 0x22ae79c
|
|
/* 022AE79C */ cpu->r[3] = cpu->r[3] + 0x00000200u;
|
|
/* 022AE7A0 */ goto L_022AEEC4;
|
|
L_022AEEC4: ; // 0x22aeec4
|
|
/* 022AEEC4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AEEC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEEC8 */ cpu->r[1] = _t0;
|
|
/* 022AEECC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AEED0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AEED4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEED4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AEED8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022AEED8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AEEDC */ cpu->r[12] = 0x00000000u;
|
|
/* 022AEEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AEEE4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022AEEE4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022AEEE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AEEE8 */ if (_t6) goto L_022AEF10; else goto L_022AEEEC;
|
|
L_022AEEEC: ; // 0x22aeeec
|
|
/* 022AEEEC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AEEEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022AEEF0 */ /* nop */
|
|
/* 022AEEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022AEEF8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEF8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AEEF8 */ if (_t9) goto L_022AEEFC; else goto L_022AEF10;
|
|
L_022AEEFC: ; // 0x22aeefc
|
|
/* 022AEEFC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AEEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEF00 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022AEF00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEF04 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEF08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEF10: ; // 0x22aef10
|
|
/* 022AEF10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF14 */ Gambit_fn_022AEE3C(cpu);
|
|
/* 022AEF18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF1C */ Gambit_fn_027FC37C(cpu);
|
|
/* 022AEF20 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEF20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AEF24 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEF24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AEF28 */ cpu->lr = cpu->r[0];
|
|
/* 022AEF2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEF30 */ return;
|
|
}
|
|
|
|
// fn_022AE7A4 @ 0x22ae7a4
|
|
void Gambit_fn_022AE7A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE7A4: ; // 0x22ae7a4
|
|
/* 022AE7A4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AE7A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE7A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE7A8 */ cpu->r[1] = _t0;
|
|
/* 022AE7AC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE7B0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE7B4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022AE7B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AE7B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE7BC */ /* nop */
|
|
/* 022AE7C0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AE7C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE7C8 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AE7CC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE7D0 */ cpu->lr = cpu->r[0];
|
|
/* 022AE7D4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE7D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE7DC */ return;
|
|
}
|
|
|
|
// fn_022AE7A8 @ 0x22ae7a8
|
|
void Gambit_fn_022AE7A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE7A8: ; // 0x22ae7a8
|
|
/* 022AE7A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE7A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE7A8 */ cpu->r[1] = _t0;
|
|
/* 022AE7AC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7AC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE7B0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE7B4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 022AE7B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AE7B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE7BC */ /* nop */
|
|
/* 022AE7C0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AE7C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AE7C8 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AE7CC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE7D0 */ cpu->lr = cpu->r[0];
|
|
/* 022AE7D4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE7D8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE7DC */ return;
|
|
}
|
|
|
|
// fn_022AE7E0 @ 0x22ae7e0
|
|
void Gambit_fn_022AE7E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE7E0: ; // 0x22ae7e0
|
|
/* 022AE7E0 */ cpu->r[0] = cpu->lr;
|
|
/* 022AE7E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE7E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE7E4 */ cpu->r[1] = _t0;
|
|
/* 022AE7E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE7EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE7F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE7F4 */ _t3 = cpu->r[31] + 0x0000020Eu;
|
|
/* 022AE7F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AE7F8 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022AE7FC */ /* nop */
|
|
/* 022AE800 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AE804 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022AE808 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AE80C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE80C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE810 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE814 */ cpu->lr = cpu->r[0];
|
|
/* 022AE818 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE81C */ return;
|
|
}
|
|
|
|
// fn_022AE7E4 @ 0x22ae7e4
|
|
void Gambit_fn_022AE7E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AE7E4: ; // 0x22ae7e4
|
|
/* 022AE7E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AE7E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE7E4 */ cpu->r[1] = _t0;
|
|
/* 022AE7E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE7E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AE7EC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AE7F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE7F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AE7F4 */ _t3 = cpu->r[31] + 0x0000020Eu;
|
|
/* 022AE7F4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AE7F8 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022AE7FC */ /* nop */
|
|
/* 022AE800 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AE804 */ cpu->r[3] = cpu->r[31] + 0x00000200u;
|
|
/* 022AE808 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AE80C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AE80C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AE810 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AE810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AE814 */ cpu->lr = cpu->r[0];
|
|
/* 022AE818 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AE81C */ return;
|
|
}
|
|
|
|
// fn_022AE820 @ 0x22ae820
|
|
void Gambit_fn_022AE820(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_022AE820: ; // 0x22ae820
|
|
/* 022AE820 */ _t0 = cpu->r[3] + 0x00000208u;
|
|
/* 022AE820 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE824 */ return;
|
|
}
|
|
|
|
// fn_022AE828 @ 0x22ae828
|
|
void Gambit_fn_022AE828(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022AE828: ; // 0x22ae828
|
|
/* 022AE828 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AE82C */ _t0 = cpu->r[9] + 0x00000184u;
|
|
/* 022AE82C */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AE830 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AE834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AE838 */ cpu->r[11] = cpu->r[11] + 0x00000180u;
|
|
/* 022AE83C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE83C */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AE83C */ if (_t2) goto L_022AE840; else goto L_022AE858;
|
|
L_022AE840: ; // 0x22ae840
|
|
/* 022AE840 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AE844 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE848 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE84C */ cpu->r[9] = cpu->r[9] + 0x0000240Cu;
|
|
/* 022AE850 */ _t3 = cpu->r[12] + 0x00000184u;
|
|
/* 022AE850 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AE854 */ _t4 = cpu->r[11] + 0x00000000u;
|
|
/* 022AE854 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
L_022AE858: ; // 0x22ae858
|
|
/* 022AE858 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022AE85C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE85C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AE85C */ if (_t6) goto L_022AE860; else goto L_022AE868;
|
|
L_022AE860: ; // 0x22ae860
|
|
/* 022AE860 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AE864 */ return;
|
|
L_022AE868: ; // 0x22ae868
|
|
/* 022AE868 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE86C */ _t7 = cpu->r[12] + 0x00000030u;
|
|
/* 022AE86C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE874 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE878 */ cpu->r[12] = cpu->r[12] + 0x0000002Cu;
|
|
/* 022AE87C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE87C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AE87C */ if (_t9) goto L_022AE880; else goto L_022AE898;
|
|
L_022AE880: ; // 0x22ae880
|
|
/* 022AE880 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AE884 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AE888 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AE88C */ cpu->r[11] = cpu->r[11] + 0x000023ECu;
|
|
/* 022AE890 */ _t10 = cpu->r[9] + 0x00000030u;
|
|
/* 022AE890 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 022AE894 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022AE894 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_022AE898: ; // 0x22ae898
|
|
/* 022AE898 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 022AE89C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE89C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AE89C */ if (_t13) goto L_022AE8A0; else goto L_022AE8A8;
|
|
L_022AE8A0: ; // 0x22ae8a0
|
|
/* 022AE8A0 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE8A4 */ goto L_022AE91C;
|
|
L_022AE8A8: ; // 0x22ae8a8
|
|
/* 022AE8A8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022AE8AC */ _t14 = cpu->r[10] + 0xFFFFDA38u;
|
|
/* 022AE8AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AE8AC */ cpu->r[10] = _t14;
|
|
/* 022AE8B0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 022AE8B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AE8B8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFE8u;
|
|
/* 022AE8BC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE8BC */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AE8BC */ if (_t16) goto L_022AE8C0; else goto L_022AE8D4;
|
|
L_022AE8C0: ; // 0x22ae8c0
|
|
/* 022AE8C0 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AE8C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE8C8 */ cpu->r[9] = cpu->r[9] + 0x000023BCu;
|
|
/* 022AE8CC */ _t17 = cpu->r[10] + 0x00000000u;
|
|
/* 022AE8CC */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 022AE8D0 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 022AE8D0 */ rbrew_write32(cpu->mem, _t18, cpu->r[9]);
|
|
L_022AE8D4: ; // 0x22ae8d4
|
|
/* 022AE8D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 022AE8D8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE8D8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AE8D8 */ if (_t20) goto L_022AE8DC; else goto L_022AE8E4;
|
|
L_022AE8DC: ; // 0x22ae8dc
|
|
/* 022AE8DC */ cpu->r[0] = 0x00000001u;
|
|
/* 022AE8E0 */ goto L_022AE91C;
|
|
L_022AE8E4: ; // 0x22ae8e4
|
|
/* 022AE8E4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022AE8E8 */ _t21 = cpu->r[9] + 0xFFFFDA34u;
|
|
/* 022AE8E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AE8E8 */ cpu->r[9] = _t21;
|
|
/* 022AE8EC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AE8F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AE8F4 */ cpu->r[12] = cpu->r[12] + 0xFFFFDDE4u;
|
|
/* 022AE8F8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE8F8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AE8F8 */ if (_t23) goto L_022AE8FC; else goto L_022AE910;
|
|
L_022AE8FC: ; // 0x22ae8fc
|
|
/* 022AE8FC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AE900 */ cpu->r[11] = 0x00000001u;
|
|
/* 022AE904 */ cpu->r[0] = cpu->r[0] + 0x000022DCu;
|
|
/* 022AE908 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 022AE908 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 022AE90C */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 022AE90C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_022AE910: ; // 0x22ae910
|
|
/* 022AE910 */ cpu->r[9] = cpu->r[4] ^ cpu->r[12];
|
|
/* 022AE914 */ cpu->r[0] = rbrew_clz32(cpu->r[9]);
|
|
/* 022AE918 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_022AE91C: ; // 0x22ae91c
|
|
/* 022AE91C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022AE920 */ return;
|
|
}
|
|
|
|
// fn_022AE924 @ 0x22ae924
|
|
void Gambit_fn_022AE924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104;
|
|
|
|
L_022AE924: ; // 0x22ae924
|
|
/* 022AE924 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 022AE924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AE924 */ cpu->r[1] = _t0;
|
|
/* 022AE928 */ /* nop */
|
|
/* 022AE92C */ cpu->r[0] = cpu->lr;
|
|
/* 022AE930 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 022AE930 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AE934 */ cpu->r[29] = cpu->r[6];
|
|
/* 022AE938 */ cpu->r[28] = cpu->r[3];
|
|
/* 022AE93C */ cpu->r[30] = cpu->r[5];
|
|
/* 022AE940 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 022AE940 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022AE944 */ cpu->r[31] = 0x101D0000u;
|
|
/* 022AE948 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 022AE948 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 022AE94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AE950 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022AE950 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 022AE954 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE954 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AE954 */ if (_t6) goto L_022AE998; else goto L_022AE958;
|
|
L_022AE958: ; // 0x22ae958
|
|
/* 022AE958 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022AE958 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AE95C */ Gambit_fn_02826F20(cpu);
|
|
/* 022AE960 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AE960 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AE964 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 022AE964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AE968 */ cpu->ctr = cpu->r[0];
|
|
/* 022AE96C */ cpu->r[5] = 0x00000004u;
|
|
/* 022AE970 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AE974 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AE97C */ cpu->r[0] = cpu->r[27];
|
|
/* 022AE980 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AE980 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AE980 */ if (_t11) goto L_022AE988; else goto L_022AE984;
|
|
L_022AE984: ; // 0x22ae984
|
|
/* 022AE984 */ cpu->r[0] = 0x00000001u;
|
|
L_022AE988: ; // 0x22ae988
|
|
/* 022AE988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AE98C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE98C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AE98C */ if (_t13) goto L_022AE998; else goto L_022AE990;
|
|
L_022AE990: ; // 0x22ae990
|
|
/* 022AE990 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 022AE990 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 022AE994 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 022AE994 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_022AE998: ; // 0x22ae998
|
|
/* 022AE998 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 022AE998 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AE99C */ cpu->r[0] = 0x00000000u;
|
|
/* 022AE9A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022AE9A4 */ cpu->r[12] = cpu->r[0];
|
|
/* 022AE9A8 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AE9A8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AE9A8 */ if (_t18) goto L_022AE9AC; else goto L_022AE9D0;
|
|
L_022AE9AC: ; // 0x22ae9ac
|
|
/* 022AE9AC */ cpu->ctr = cpu->r[7];
|
|
/* 022AE9B0 */ cpu->r[10] = 0x00000000u;
|
|
L_022AE9B4: ; // 0x22ae9b4
|
|
/* 022AE9B4 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 022AE9B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AE9B8 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 022AE9B8 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 022AE9BC */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 022AE9C0 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 022AE9C0 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 022AE9C4 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 022AE9C8 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 022AE9C8 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 022AE9CC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022AE9CC */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022AE9CC */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 022AE9CC */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AE9CC */ if (_t25) goto L_022AE9B4; else goto L_022AE9D0;
|
|
L_022AE9D0: ; // 0x22ae9d0
|
|
/* 022AE9D0 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022AE9D0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 022AE9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AE9D8 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AE9D8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 022AE9D8 */ if (_t28) goto L_022AEA1C; else goto L_022AE9DC;
|
|
L_022AE9DC: ; // 0x22ae9dc
|
|
/* 022AE9DC */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022AE9DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022AE9E0 */ Gambit_fn_02826F20(cpu);
|
|
/* 022AE9E4 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AE9E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022AE9E8 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 022AE9E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AE9EC */ cpu->ctr = cpu->r[0];
|
|
/* 022AE9F0 */ cpu->r[5] = 0x00000004u;
|
|
/* 022AE9F4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AE9F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AE9FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AEA00 */ cpu->r[11] = cpu->r[27];
|
|
/* 022AEA04 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AEA04 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022AEA04 */ if (_t33) goto L_022AEA0C; else goto L_022AEA08;
|
|
L_022AEA08: ; // 0x22aea08
|
|
/* 022AEA08 */ cpu->r[11] = 0x00000001u;
|
|
L_022AEA0C: ; // 0x22aea0c
|
|
/* 022AEA0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AEA10 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEA10 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022AEA10 */ if (_t35) goto L_022AEA1C; else goto L_022AEA14;
|
|
L_022AEA14: ; // 0x22aea14
|
|
/* 022AEA14 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022AEA14 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 022AEA18 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 022AEA18 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_022AEA1C: ; // 0x22aea1c
|
|
/* 022AEA1C */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 022AEA1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AEA20 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AEA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022AEA28 */ cpu->r[12] = cpu->r[0];
|
|
/* 022AEA2C */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AEA2C */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AEA2C */ if (_t40) goto L_022AEA30; else goto L_022AEA54;
|
|
L_022AEA30: ; // 0x22aea30
|
|
/* 022AEA30 */ cpu->ctr = cpu->r[6];
|
|
/* 022AEA34 */ cpu->r[9] = 0x00000000u;
|
|
L_022AEA38: ; // 0x22aea38
|
|
/* 022AEA38 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 022AEA38 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AEA3C */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 022AEA3C */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 022AEA40 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 022AEA44 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 022AEA44 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 022AEA48 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 022AEA4C */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 022AEA4C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 022AEA50 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022AEA50 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022AEA50 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 022AEA50 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022AEA50 */ if (_t47) goto L_022AEA38; else goto L_022AEA54;
|
|
L_022AEA54: ; // 0x22aea54
|
|
/* 022AEA54 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 022AEA54 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 022AEA58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AEA5C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEA5C */ _t50 = _t49 & 0x00000001u;
|
|
/* 022AEA5C */ if (_t50) goto L_022AEAA0; else goto L_022AEA60;
|
|
L_022AEA60: ; // 0x22aea60
|
|
/* 022AEA60 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022AEA60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022AEA64 */ Gambit_fn_02826F20(cpu);
|
|
/* 022AEA68 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AEA68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022AEA6C */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 022AEA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022AEA70 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEA74 */ cpu->r[5] = 0x00000004u;
|
|
/* 022AEA78 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEA7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AEA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AEA84 */ cpu->r[10] = cpu->r[27];
|
|
/* 022AEA88 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AEA88 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022AEA88 */ if (_t55) goto L_022AEA90; else goto L_022AEA8C;
|
|
L_022AEA8C: ; // 0x22aea8c
|
|
/* 022AEA8C */ cpu->r[10] = 0x00000001u;
|
|
L_022AEA90: ; // 0x22aea90
|
|
/* 022AEA90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AEA94 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEA94 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022AEA94 */ if (_t57) goto L_022AEAA0; else goto L_022AEA98;
|
|
L_022AEA98: ; // 0x22aea98
|
|
/* 022AEA98 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 022AEA98 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 022AEA9C */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 022AEA9C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_022AEAA0: ; // 0x22aeaa0
|
|
/* 022AEAA0 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 022AEAA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AEAA4 */ cpu->r[0] = 0x00000000u;
|
|
/* 022AEAA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022AEAAC */ cpu->r[5] = cpu->r[0];
|
|
/* 022AEAB0 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AEAB0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 022AEAB0 */ if (_t62) goto L_022AEAB4; else goto L_022AEAD8;
|
|
L_022AEAB4: ; // 0x22aeab4
|
|
/* 022AEAB4 */ cpu->ctr = cpu->r[12];
|
|
/* 022AEAB8 */ cpu->r[8] = 0x00000000u;
|
|
L_022AEABC: ; // 0x22aeabc
|
|
/* 022AEABC */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 022AEABC */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022AEAC0 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 022AEAC0 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 022AEAC4 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 022AEAC8 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 022AEAC8 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 022AEACC */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 022AEAD0 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 022AEAD0 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 022AEAD4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 022AEAD4 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 022AEAD4 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 022AEAD4 */ _t69 = _t68 & 0x00000001u;
|
|
/* 022AEAD4 */ if (_t69) goto L_022AEABC; else goto L_022AEAD8;
|
|
L_022AEAD8: ; // 0x22aead8
|
|
/* 022AEAD8 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022AEAD8 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 022AEADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022AEAE0 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEAE0 */ _t72 = _t71 & 0x00000001u;
|
|
/* 022AEAE0 */ if (_t72) goto L_022AEBBC; else goto L_022AEAE4;
|
|
L_022AEAE4: ; // 0x22aeae4
|
|
/* 022AEAE4 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 022AEAE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022AEAE8 */ Gambit_fn_02826F20(cpu);
|
|
/* 022AEAEC */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AEAEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022AEAF0 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 022AEAF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 022AEAF4 */ cpu->ctr = cpu->r[12];
|
|
/* 022AEAF8 */ cpu->r[5] = 0x00000004u;
|
|
/* 022AEAFC */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 022AEB00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AEB04 */ cpu->r[24] = cpu->r[3];
|
|
/* 022AEB08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 022AEB0C */ cpu->r[30] = cpu->r[25];
|
|
/* 022AEB10 */ cpu->r[7] = 0x00000000u;
|
|
/* 022AEB14 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AEB14 */ _t77 = _t76 & 0x00000001u;
|
|
/* 022AEB14 */ if (_t77) goto L_022AEB1C; else goto L_022AEB18;
|
|
L_022AEB18: ; // 0x22aeb18
|
|
/* 022AEB18 */ cpu->r[30] = 0x00000001u;
|
|
L_022AEB1C: ; // 0x22aeb1c
|
|
/* 022AEB1C */ cpu->r[31] = 0x10110000u;
|
|
/* 022AEB20 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 022AEB24 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 022AEB24 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 022AEB28 */ cpu->r[23] = 0x00000018u;
|
|
L_022AEB2C: ; // 0x22aeb2c
|
|
/* 022AEB2C */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 022AEB2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AEB30 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEB30 */ _t80 = _t79 & 0x00000001u;
|
|
/* 022AEB30 */ if (_t80) goto L_022AEBA0; else goto L_022AEB34;
|
|
L_022AEB34: ; // 0x22aeb34
|
|
/* 022AEB34 */ cpu->r[26] = cpu->r[27];
|
|
/* 022AEB34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022AEB38 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEB38 */ _t82 = _t81 & 0x00000001u;
|
|
/* 022AEB38 */ if (_t82) goto L_022AEB3C; else goto L_022AEB4C;
|
|
L_022AEB3C: ; // 0x22aeb3c
|
|
/* 022AEB3C */ cpu->r[3] = 0x00000024u;
|
|
/* 022AEB40 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AEB44 */ cpu->r[26] = cpu->r[3];
|
|
/* 022AEB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 022AEB48 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEB48 */ _t84 = _t83 & 0x00000001u;
|
|
/* 022AEB48 */ if (_t84) goto L_022AEB94; else goto L_022AEB4C;
|
|
L_022AEB4C: ; // 0x22aeb4c
|
|
/* 022AEB4C */ cpu->r[11] = cpu->r[26];
|
|
/* 022AEB4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AEB50 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEB50 */ _t86 = _t85 & 0x00000001u;
|
|
/* 022AEB50 */ if (_t86) goto L_022AEB54; else goto L_022AEB64;
|
|
L_022AEB54: ; // 0x22aeb54
|
|
/* 022AEB54 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AEB58 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AEB5C */ cpu->r[11] = cpu->r[3];
|
|
/* 022AEB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AEB60 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEB60 */ _t88 = _t87 & 0x00000001u;
|
|
/* 022AEB60 */ if (_t88) goto L_022AEB80; else goto L_022AEB64;
|
|
L_022AEB64: ; // 0x22aeb64
|
|
/* 022AEB64 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AEB68 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 022AEB68 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 022AEB6C */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 022AEB70 */ cpu->r[5] = cpu->r[5] + 0x00002304u;
|
|
/* 022AEB74 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 022AEB74 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 022AEB78 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 022AEB78 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 022AEB7C */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 022AEB7C */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_022AEB80: ; // 0x22aeb80
|
|
/* 022AEB80 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AEB84 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 022AEB84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 022AEB88 */ cpu->r[6] = cpu->r[6] + 0x0000235Cu;
|
|
/* 022AEB8C */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 022AEB8C */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 022AEB90 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 022AEB90 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_022AEB94: ; // 0x22aeb94
|
|
/* 022AEB94 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AEB98 */ cpu->r[0] = cpu->r[0] + 0x00002374u;
|
|
/* 022AEB9C */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 022AEB9C */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_022AEBA0: ; // 0x22aeba0
|
|
/* 022AEBA0 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 022AEBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022AEBA4 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 022AEBA8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEBA8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 022AEBA8 */ if (_t98) goto L_022AEBAC; else goto L_022AEB2C;
|
|
L_022AEBAC: ; // 0x22aebac
|
|
/* 022AEBAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 022AEBB0 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEBB0 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022AEBB0 */ if (_t100) goto L_022AEBBC; else goto L_022AEBB4;
|
|
L_022AEBB4: ; // 0x22aebb4
|
|
/* 022AEBB4 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 022AEBB4 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 022AEBB8 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 022AEBB8 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_022AEBBC: ; // 0x22aebbc
|
|
/* 022AEBBC */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 022AEBBC */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 022AEBC0 */ /* nop */
|
|
/* 022AEBC4 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 022AEBC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 022AEBC8 */ cpu->lr = cpu->r[0];
|
|
/* 022AEBCC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 022AEBD0 */ return;
|
|
}
|
|
|
|
// fn_022AEBD4 @ 0x22aebd4
|
|
void Gambit_fn_022AEBD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_022AEBD4: ; // 0x22aebd4
|
|
/* 022AEBD4 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 022AEBD4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AEBD8 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022AEBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AEBDC */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022AEBDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AEBE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 022AEBE4 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 022AEBE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022AEBE8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEBE8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AEBE8 */ if (_t5) goto L_022AEBEC; else goto L_022AEBF4;
|
|
L_022AEBEC: ; // 0x22aebec
|
|
/* 022AEBEC */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEBF0 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_022AEBF4: ; // 0x22aebf4
|
|
/* 022AEBF4 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 022AEBF4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AEBF8 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 022AEBF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AEBFC */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 022AEBFC */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 022AEC00 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 022AEC00 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 022AEC04 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 022AEC04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEC08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 022AEC0C */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022AEC0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEC10 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEC10 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AEC10 */ if (_t13) goto L_022AEC14; else goto L_022AEC1C;
|
|
L_022AEC14: ; // 0x22aec14
|
|
/* 022AEC14 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEC18 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_022AEC1C: ; // 0x22aec1c
|
|
/* 022AEC1C */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 022AEC1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AEC20 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 022AEC20 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 022AEC24 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 022AEC24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AEC28 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 022AEC28 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 022AEC2C */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 022AEC2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AEC30 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 022AEC30 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 022AEC34 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 022AEC34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AEC38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 022AEC3C */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 022AEC3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AEC40 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEC40 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022AEC40 */ if (_t23) goto L_022AEC44; else goto L_022AEC4C;
|
|
L_022AEC44: ; // 0x22aec44
|
|
/* 022AEC44 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEC48 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_022AEC4C: ; // 0x22aec4c
|
|
/* 022AEC4C */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 022AEC4C */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 022AEC50 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 022AEC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AEC54 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 022AEC54 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 022AEC58 */ return;
|
|
}
|
|
|
|
// fn_022AEC5C @ 0x22aec5c
|
|
void Gambit_fn_022AEC5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_022AEC5C: ; // 0x22aec5c
|
|
/* 022AEC5C */ cpu->r[0] = cpu->lr;
|
|
/* 022AEC60 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AEC64 */ cpu->r[7] = 0x022B0000u;
|
|
/* 022AEC68 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022AEC6C */ cpu->r[10] = 0x101C0000u;
|
|
/* 022AEC70 */ cpu->r[7] = cpu->r[7] + 0xFFFFE34Cu;
|
|
/* 022AEC74 */ cpu->r[6] = cpu->r[6] + 0xFFFFE34Cu;
|
|
/* 022AEC78 */ cpu->r[10] = cpu->r[10] + 0x000056C8u;
|
|
/* 022AEC7C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022AEC7C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022AEC80 */ cpu->r[0] = 0x101C0000u;
|
|
/* 022AEC84 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEC84 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022AEC84 */ cpu->r[1] = _t1;
|
|
/* 022AEC88 */ cpu->r[0] = cpu->r[0] + 0x000056C4u;
|
|
/* 022AEC8C */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022AEC8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AEC90 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AEC94 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEC94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AEC98 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEC9C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEC9C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022AECA0 */ Gambit_fn_02791B10(cpu);
|
|
/* 022AECA4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 022AECA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AECA8 */ cpu->lr = cpu->r[0];
|
|
/* 022AECAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AECB0 */ return;
|
|
}
|
|
|
|
// fn_022AEC84 @ 0x22aec84
|
|
void Gambit_fn_022AEC84(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022AEC84: ; // 0x22aec84
|
|
/* 022AEC84 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEC84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEC84 */ cpu->r[1] = _t0;
|
|
/* 022AEC88 */ cpu->r[0] = cpu->r[0] + 0x000056C4u;
|
|
/* 022AEC8C */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 022AEC8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AEC90 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AEC94 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEC94 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AEC98 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEC9C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEC9C */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 022AECA0 */ Gambit_fn_02791B10(cpu);
|
|
/* 022AECA4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AECA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AECA8 */ cpu->lr = cpu->r[0];
|
|
/* 022AECAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AECB0 */ return;
|
|
}
|
|
|
|
// fn_022AECB4 @ 0x22aecb4
|
|
void Gambit_fn_022AECB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022AECB4: ; // 0x22aecb4
|
|
/* 022AECB4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AECB4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AECB8 */ /* nop */
|
|
/* 022AECBC */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 022AECBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AECC0 */ cpu->r[7] = cpu->r[0];
|
|
/* 022AECC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 022AECC8 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 022AECC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AECCC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AECCC */ _t4 = _t3 & 0x00000001u;
|
|
/* 022AECCC */ if (_t4) goto L_022AECD0; else goto L_022AECE8;
|
|
L_022AECD0: ; // 0x22aecd0
|
|
/* 022AECD0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AECD4 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 022AECD8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022AECD8 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022AECDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AECE0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AECE0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AECE0 */ if (_t7) goto L_022AECE4; else goto L_022AECF4;
|
|
L_022AECE4: ; // 0x22aece4
|
|
/* 022AECE4 */ return;
|
|
L_022AECE8: ; // 0x22aece8
|
|
/* 022AECE8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022AECE8 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022AECEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022AECF0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AECF0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AECF0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AECF0 */ goto L_022AECF4;
|
|
L_022AECF4: ; // 0x22aecf4
|
|
/* 022AECF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 022AECF8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022AECF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AECFC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AECFC */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AECFC */ if (_t13) goto L_022AED00; else goto L_022AED08;
|
|
L_022AED00: ; // 0x22aed00
|
|
/* 022AED00 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AED04 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022AED08: ; // 0x22aed08
|
|
/* 022AED08 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022AED08 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022AED0C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022AED0C */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022AED10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022AED14 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022AED14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AED18 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 022AED1C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AED1C */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AED1C */ if (_t18) goto L_022AED34; else goto L_022AED20;
|
|
L_022AED20: ; // 0x22aed20
|
|
/* 022AED20 */ /* nop */
|
|
/* 022AED24 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022AED24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AED28 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AED2C */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 022AED30 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022AED30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022AED34: ; // 0x22aed34
|
|
/* 022AED34 */ cpu->ctr = cpu->r[11];
|
|
/* 022AED38 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AED3C @ 0x22aed3c
|
|
void Gambit_fn_022AED3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022AED3C: ; // 0x22aed3c
|
|
/* 022AED3C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AED3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AED40 */ /* nop */
|
|
/* 022AED44 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 022AED44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AED48 */ cpu->r[8] = cpu->r[0];
|
|
/* 022AED4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022AED50 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 022AED50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AED54 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AED54 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022AED54 */ if (_t4) goto L_022AED58; else goto L_022AED70;
|
|
L_022AED58: ; // 0x22aed58
|
|
/* 022AED58 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AED5C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022AED60 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022AED60 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022AED64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AED68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AED68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AED68 */ if (_t7) goto L_022AED6C; else goto L_022AED7C;
|
|
L_022AED6C: ; // 0x22aed6c
|
|
/* 022AED6C */ return;
|
|
L_022AED70: ; // 0x22aed70
|
|
/* 022AED70 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022AED70 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022AED74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AED78 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AED78 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AED78 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AED78 */ goto L_022AED7C;
|
|
L_022AED7C: ; // 0x22aed7c
|
|
/* 022AED7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022AED80 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022AED80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AED84 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AED84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AED84 */ if (_t13) goto L_022AED88; else goto L_022AED90;
|
|
L_022AED88: ; // 0x22aed88
|
|
/* 022AED88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AED8C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022AED90: ; // 0x22aed90
|
|
/* 022AED90 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022AED90 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022AED94 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022AED94 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022AED98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AED9C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022AED9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AEDA0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022AEDA4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEDA4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AEDA4 */ if (_t18) goto L_022AEDBC; else goto L_022AEDA8;
|
|
L_022AEDA8: ; // 0x22aeda8
|
|
/* 022AEDA8 */ /* nop */
|
|
/* 022AEDAC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022AEDAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AEDB0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEDB4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022AEDB8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022AEDB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022AEDBC: ; // 0x22aedbc
|
|
/* 022AEDBC */ cpu->ctr = cpu->r[11];
|
|
/* 022AEDC0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AEDC4 @ 0x22aedc4
|
|
void Gambit_fn_022AEDC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022AEDC4: ; // 0x22aedc4
|
|
/* 022AEDC4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AEDC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEDC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEDC8 */ cpu->r[1] = _t0;
|
|
/* 022AEDCC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEDCC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AEDD0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEDD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AEDD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AEDD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEDD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AEDDC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AEDDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022AEDE0 */ /* nop */
|
|
/* 022AEDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022AEDE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AEDEC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEDEC */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AEDEC */ if (_t6) goto L_022AEDF0; else goto L_022AEE04;
|
|
L_022AEDF0: ; // 0x22aedf0
|
|
/* 022AEDF0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022AEDF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AEDF4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022AEDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AEDF8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEDFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEE04: ; // 0x22aee04
|
|
/* 022AEE04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE08 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AEE0C */ Gambit_fn_022AECB4(cpu);
|
|
/* 022AEE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE14 */ /* nop */
|
|
/* 022AEE18 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AEE1C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE20 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AEE24 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AEE28 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEE28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEE2C */ cpu->lr = cpu->r[0];
|
|
/* 022AEE30 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEE30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEE34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEE38 */ return;
|
|
}
|
|
|
|
// fn_022AEDC8 @ 0x22aedc8
|
|
void Gambit_fn_022AEDC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_022AEDC8: ; // 0x22aedc8
|
|
/* 022AEDC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEDC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEDC8 */ cpu->r[1] = _t0;
|
|
/* 022AEDCC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEDCC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022AEDD0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEDD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022AEDD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AEDD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEDD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022AEDDC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AEDDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022AEDE0 */ /* nop */
|
|
/* 022AEDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 022AEDE8 */ cpu->r[31] = cpu->r[4];
|
|
/* 022AEDEC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEDEC */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AEDEC */ if (_t6) goto L_022AEDF0; else goto L_022AEE04;
|
|
L_022AEDF0: ; // 0x22aedf0
|
|
/* 022AEDF0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 022AEDF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AEDF4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 022AEDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AEDF8 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEDFC */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEE04: ; // 0x22aee04
|
|
/* 022AEE04 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE08 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AEE0C */ Gambit_fn_022AECB4(cpu);
|
|
/* 022AEE10 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE14 */ /* nop */
|
|
/* 022AEE18 */ Gambit_fn_027FC35C(cpu);
|
|
/* 022AEE1C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEE20 */ Gambit_fn_022AED3C(cpu);
|
|
/* 022AEE24 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEE24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AEE28 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 022AEE28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEE2C */ cpu->lr = cpu->r[0];
|
|
/* 022AEE30 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEE30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEE34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEE38 */ return;
|
|
}
|
|
|
|
// fn_022AEE3C @ 0x22aee3c
|
|
void Gambit_fn_022AEE3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_022AEE3C: ; // 0x22aee3c
|
|
/* 022AEE3C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022AEE3C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022AEE40 */ /* nop */
|
|
/* 022AEE44 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 022AEE44 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 022AEE48 */ cpu->r[8] = cpu->r[0];
|
|
/* 022AEE4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 022AEE50 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022AEE50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AEE54 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEE54 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022AEE54 */ if (_t4) goto L_022AEE58; else goto L_022AEE70;
|
|
L_022AEE58: ; // 0x22aee58
|
|
/* 022AEE58 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEE5C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 022AEE60 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 022AEE60 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 022AEE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AEE68 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEE68 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AEE68 */ if (_t7) goto L_022AEE6C; else goto L_022AEE7C;
|
|
L_022AEE6C: ; // 0x22aee6c
|
|
/* 022AEE6C */ return;
|
|
L_022AEE70: ; // 0x22aee70
|
|
/* 022AEE70 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 022AEE70 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 022AEE74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022AEE78 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEE78 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AEE78 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022AEE78 */ goto L_022AEE7C;
|
|
L_022AEE7C: ; // 0x22aee7c
|
|
/* 022AEE7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 022AEE80 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 022AEE80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEE84 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEE84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AEE84 */ if (_t13) goto L_022AEE88; else goto L_022AEE90;
|
|
L_022AEE88: ; // 0x22aee88
|
|
/* 022AEE88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEE8C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022AEE90: ; // 0x22aee90
|
|
/* 022AEE90 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 022AEE90 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 022AEE94 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 022AEE94 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022AEE98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AEE9C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 022AEE9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AEEA0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 022AEEA4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AEEA4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022AEEA4 */ if (_t18) goto L_022AEEBC; else goto L_022AEEA8;
|
|
L_022AEEA8: ; // 0x22aeea8
|
|
/* 022AEEA8 */ /* nop */
|
|
/* 022AEEAC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 022AEEAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AEEB0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 022AEEB4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 022AEEB8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 022AEEB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_022AEEBC: ; // 0x22aeebc
|
|
/* 022AEEBC */ cpu->ctr = cpu->r[11];
|
|
/* 022AEEC0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_022AEEC4 @ 0x22aeec4
|
|
void Gambit_fn_022AEEC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022AEEC4: ; // 0x22aeec4
|
|
/* 022AEEC4 */ cpu->r[0] = cpu->lr;
|
|
/* 022AEEC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEEC8 */ cpu->r[1] = _t0;
|
|
/* 022AEECC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AEED0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AEED4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEED4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AEED8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022AEED8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AEEDC */ cpu->r[12] = 0x00000000u;
|
|
/* 022AEEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AEEE4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022AEEE4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022AEEE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AEEE8 */ if (_t6) goto L_022AEF10; else goto L_022AEEEC;
|
|
L_022AEEEC: ; // 0x22aeeec
|
|
/* 022AEEEC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AEEEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022AEEF0 */ /* nop */
|
|
/* 022AEEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022AEEF8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEF8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AEEF8 */ if (_t9) goto L_022AEEFC; else goto L_022AEF10;
|
|
L_022AEEFC: ; // 0x22aeefc
|
|
/* 022AEEFC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AEEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEF00 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022AEF00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEF04 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEF08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEF10: ; // 0x22aef10
|
|
/* 022AEF10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF14 */ Gambit_fn_022AEE3C(cpu);
|
|
/* 022AEF18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF1C */ Gambit_fn_027FC37C(cpu);
|
|
/* 022AEF20 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEF20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AEF24 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEF24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AEF28 */ cpu->lr = cpu->r[0];
|
|
/* 022AEF2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEF30 */ return;
|
|
}
|
|
|
|
// fn_022AEEC8 @ 0x22aeec8
|
|
void Gambit_fn_022AEEC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_022AEEC8: ; // 0x22aeec8
|
|
/* 022AEEC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AEEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEEC8 */ cpu->r[1] = _t0;
|
|
/* 022AEECC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022AEED0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AEED4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEED4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AEED8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 022AEED8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 022AEEDC */ cpu->r[12] = 0x00000000u;
|
|
/* 022AEEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AEEE4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 022AEEE4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 022AEEE8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AEEE8 */ if (_t6) goto L_022AEF10; else goto L_022AEEEC;
|
|
L_022AEEEC: ; // 0x22aeeec
|
|
/* 022AEEEC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AEEEC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 022AEEF0 */ /* nop */
|
|
/* 022AEEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 022AEEF8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEEF8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AEEF8 */ if (_t9) goto L_022AEEFC; else goto L_022AEF10;
|
|
L_022AEEFC: ; // 0x22aeefc
|
|
/* 022AEEFC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 022AEEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AEF00 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 022AEF00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AEF04 */ cpu->ctr = cpu->r[0];
|
|
/* 022AEF08 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_022AEF10: ; // 0x22aef10
|
|
/* 022AEF10 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF14 */ Gambit_fn_022AEE3C(cpu);
|
|
/* 022AEF18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEF1C */ Gambit_fn_027FC37C(cpu);
|
|
/* 022AEF20 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022AEF20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AEF24 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AEF24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AEF28 */ cpu->lr = cpu->r[0];
|
|
/* 022AEF2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AEF30 */ return;
|
|
}
|
|
|
|
// fn_022AEF34 @ 0x22aef34
|
|
void Gambit_fn_022AEF34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_022AEF34: ; // 0x22aef34
|
|
/* 022AEF34 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022AEF34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AEF34 */ cpu->r[1] = _t0;
|
|
/* 022AEF38 */ cpu->r[0] = cpu->lr;
|
|
/* 022AEF3C */ /* nop */
|
|
/* 022AEF40 */ cpu->r[30] = cpu->r[5];
|
|
/* 022AEF44 */ cpu->r[26] = cpu->r[3];
|
|
/* 022AEF48 */ cpu->r[27] = cpu->r[7];
|
|
/* 022AEF4C */ cpu->r[3] = cpu->r[30];
|
|
/* 022AEF50 */ cpu->r[31] = cpu->r[6];
|
|
/* 022AEF54 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AEF54 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AEF58 */ cpu->r[29] = cpu->r[4];
|
|
/* 022AEF5C */ cpu->r[4] = cpu->r[27];
|
|
/* 022AEF60 */ Gambit_fn_027DB318(cpu);
|
|
/* 022AEF64 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 022AEF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AEF68 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEF68 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AEF68 */ if (_t3) goto L_022AEFFC; else goto L_022AEF6C;
|
|
L_022AEF6C: ; // 0x22aef6c
|
|
/* 022AEF6C */ cpu->r[5] = cpu->r[28];
|
|
/* 022AEF70 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AEF74 */ cpu->r[3] = cpu->r[26];
|
|
/* 022AEF78 */ Gambit_fn_022AEC5C(cpu);
|
|
/* 022AEF7C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 022AEF7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AEF80 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 022AEF80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AEF84 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 022AEF88 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022AEF8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022AEF90 */ cpu->r[25] = 0x00000000u;
|
|
/* 022AEF94 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEF94 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AEF94 */ if (_t7) goto L_022AEFFC; else goto L_022AEF98;
|
|
L_022AEF98: ; // 0x22aef98
|
|
/* 022AEF98 */ cpu->r[24] = 0x101C0000u;
|
|
L_022AEF9C: ; // 0x22aef9c
|
|
/* 022AEF9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 022AEFA0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEFA0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AEFA0 */ if (_t9) goto L_022AEFB8; else goto L_022AEFA4;
|
|
L_022AEFA4: ; // 0x22aefa4
|
|
/* 022AEFA4 */ cpu->ctr = cpu->r[27];
|
|
/* 022AEFA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AEFAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AEFB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AEFB4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEFB4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AEFB4 */ if (_t11) goto L_022AEFE8; else goto L_022AEFB8;
|
|
L_022AEFB8: ; // 0x22aefb8
|
|
/* 022AEFB8 */ _t12 = cpu->r[24] + 0x000056C4u;
|
|
/* 022AEFB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AEFBC */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 022AEFC0 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 022AEFC0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022AEFC4 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 022AEFC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AEFC8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AEFCC */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 022AEFCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AEFD0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AEFD4 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 022AEFD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AEFD8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022AEFDC */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 022AEFDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AEFE0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 022AEFE4 */ Gambit_fn_022711B8(cpu);
|
|
L_022AEFE8: ; // 0x22aefe8
|
|
/* 022AEFE8 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 022AEFEC */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 022AEFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AEFF0 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 022AEFF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 022AEFF8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AEFF8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AEFF8 */ if (_t20) goto L_022AEFFC; else goto L_022AEF9C;
|
|
L_022AEFFC: ; // 0x22aeffc
|
|
/* 022AEFFC */ cpu->r[3] = cpu->r[28];
|
|
/* 022AF000 */ /* nop */
|
|
/* 022AF004 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AF004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AF008 */ cpu->lr = cpu->r[0];
|
|
/* 022AF00C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022AF010 */ return;
|
|
}
|
|
|
|
// fn_022AF014 @ 0x22af014
|
|
void Gambit_fn_022AF014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216;
|
|
|
|
L_022AF014: ; // 0x22af014
|
|
/* 022AF014 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022AF014 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AF014 */ cpu->r[1] = _t0;
|
|
/* 022AF018 */ cpu->r[0] = cpu->lr;
|
|
/* 022AF01C */ /* nop */
|
|
/* 022AF020 */ cpu->r[28] = cpu->r[3];
|
|
/* 022AF020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AF024 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 022AF024 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AF028 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF028 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022AF028 */ if (_t3) goto L_022AF02C; else goto L_022AF03C;
|
|
L_022AF02C: ; // 0x22af02c
|
|
/* 022AF02C */ cpu->r[3] = 0x00000258u;
|
|
/* 022AF030 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF034 */ cpu->r[28] = cpu->r[3];
|
|
/* 022AF034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AF038 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF038 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022AF038 */ if (_t5) goto L_022AF6B0; else goto L_022AF03C;
|
|
L_022AF03C: ; // 0x22af03c
|
|
/* 022AF03C */ cpu->r[3] = cpu->r[28];
|
|
/* 022AF040 */ Gambit_fn_0226EA1C(cpu);
|
|
/* 022AF044 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AF048 */ cpu->r[31] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF04C */ cpu->r[6] = cpu->r[6] + 0x000033A4u;
|
|
/* 022AF050 */ cpu->r[27] = 0x00000000u;
|
|
/* 022AF054 */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 022AF054 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 022AF058 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF058 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022AF058 */ if (_t8) goto L_022AF05C; else goto L_022AF06C;
|
|
L_022AF05C: ; // 0x22af05c
|
|
/* 022AF05C */ cpu->r[3] = 0x00000038u;
|
|
/* 022AF060 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF064 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF068 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF068 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AF068 */ if (_t10) goto L_022AF09C; else goto L_022AF06C;
|
|
L_022AF06C: ; // 0x22af06c
|
|
/* 022AF06C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF070 */ Gambit_fn_027FC29C(cpu);
|
|
/* 022AF074 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AF078 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 022AF078 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 022AF07C */ cpu->r[0] = cpu->r[0] + 0x00003374u;
|
|
/* 022AF080 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 022AF080 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 022AF084 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 022AF084 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022AF088 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 022AF088 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 022AF08C */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 022AF08C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 022AF090 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 022AF090 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 022AF094 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 022AF094 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 022AF098 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 022AF098 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
L_022AF09C: ; // 0x22af09c
|
|
/* 022AF09C */ cpu->r[4] = 0x00000054u;
|
|
/* 022AF0A0 */ cpu->r[3] = cpu->r[28] + 0x000001BCu;
|
|
/* 022AF0A4 */ Gambit_fn_02C89380(cpu);
|
|
/* 022AF0A8 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022AF0AC */ cpu->r[3] = cpu->r[28] + 0x000001BCu;
|
|
/* 022AF0B0 */ cpu->r[4] = 0x00000007u;
|
|
/* 022AF0B4 */ cpu->r[6] = cpu->r[6] + 0x000019ECu;
|
|
/* 022AF0B8 */ cpu->r[5] = 0x0000000Cu;
|
|
/* 022AF0BC */ Gambit_fn_02C82E00(cpu);
|
|
/* 022AF0C0 */ cpu->r[3] = cpu->r[28] + 0x00000210u;
|
|
/* 022AF0C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF0C4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF0C4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AF0C4 */ if (_t20) goto L_022AF0C8; else goto L_022AF0D8;
|
|
L_022AF0C8: ; // 0x22af0c8
|
|
/* 022AF0C8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AF0CC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF0D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF0D4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF0D4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AF0D4 */ if (_t22) goto L_022AF0FC; else goto L_022AF0D8;
|
|
L_022AF0D8: ; // 0x22af0d8
|
|
/* 022AF0D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF0DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF0DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 022AF0DC */ if (_t24) goto L_022AF0E0; else goto L_022AF0F0;
|
|
L_022AF0E0: ; // 0x22af0e0
|
|
/* 022AF0E0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AF0E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF0E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF0EC */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF0EC */ _t26 = _t25 & 0x00000001u;
|
|
/* 022AF0EC */ if (_t26) goto L_022AF0FC; else goto L_022AF0F0;
|
|
L_022AF0F0: ; // 0x22af0f0
|
|
/* 022AF0F0 */ _t27 = cpu->r[3] + 0x00000004u;
|
|
/* 022AF0F0 */ rbrew_write32(cpu->mem, _t27, cpu->r[27]);
|
|
/* 022AF0F4 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 022AF0F4 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 022AF0F8 */ _t29 = cpu->r[3] + 0x00000008u;
|
|
/* 022AF0F8 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
L_022AF0FC: ; // 0x22af0fc
|
|
/* 022AF0FC */ cpu->r[9] = cpu->r[28] + 0x0000021Cu;
|
|
/* 022AF0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AF100 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF100 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AF100 */ if (_t31) goto L_022AF104; else goto L_022AF10C;
|
|
L_022AF104: ; // 0x22af104
|
|
/* 022AF104 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 022AF108 */ Gambit_fn_02801A78(cpu);
|
|
L_022AF10C: ; // 0x22af10c
|
|
/* 022AF10C */ _t32 = cpu->r[28] + 0x00000234u;
|
|
/* 022AF10C */ rbrew_write32(cpu->mem, _t32, cpu->r[27]);
|
|
/* 022AF110 */ cpu->r[3] = cpu->r[28] + 0x00000238u;
|
|
/* 022AF110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF114 */ _t33 = cpu->r[28] + 0x0000022Cu;
|
|
/* 022AF114 */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
/* 022AF118 */ _t34 = cpu->r[28] + 0x00000230u;
|
|
/* 022AF118 */ rbrew_write32(cpu->mem, _t34, cpu->r[27]);
|
|
/* 022AF11C */ _t35 = cpu->r[28] + 0x00000228u;
|
|
/* 022AF11C */ rbrew_write32(cpu->mem, _t35, cpu->r[27]);
|
|
/* 022AF120 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF120 */ _t37 = _t36 & 0x00000001u;
|
|
/* 022AF120 */ if (_t37) goto L_022AF124; else goto L_022AF134;
|
|
L_022AF124: ; // 0x22af124
|
|
/* 022AF124 */ cpu->r[3] = 0x00000001u;
|
|
/* 022AF128 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF130 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF130 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022AF130 */ if (_t39) goto L_022AF138; else goto L_022AF134;
|
|
L_022AF134: ; // 0x22af134
|
|
/* 022AF134 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 022AF134 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[27]);
|
|
L_022AF138: ; // 0x22af138
|
|
/* 022AF138 */ _t41 = cpu->r[28] + 0x00000254u;
|
|
/* 022AF138 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[27]);
|
|
/* 022AF13C */ cpu->r[6] = 0x10060000u;
|
|
/* 022AF140 */ _t42 = cpu->r[28] + 0x00000255u;
|
|
/* 022AF140 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[27]);
|
|
/* 022AF144 */ cpu->r[4] = cpu->r[28];
|
|
/* 022AF148 */ _t43 = cpu->r[6] + 0x000030BCu;
|
|
/* 022AF148 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 022AF14C */ _t44 = cpu->r[28] + 0x00000256u;
|
|
/* 022AF14C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[27]);
|
|
/* 022AF150 */ cpu->r[6] = 0x00000001u;
|
|
/* 022AF154 */ _t45 = cpu->r[28] + 0x0000024Cu;
|
|
/* 022AF154 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 022AF158 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF15C */ _t46 = cpu->r[28] + 0x0000023Cu;
|
|
/* 022AF15C */ rbrew_write32(cpu->mem, _t46, cpu->r[27]);
|
|
/* 022AF160 */ _t47 = cpu->r[28] + 0x00000240u;
|
|
/* 022AF160 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 022AF164 */ _t48 = cpu->r[28] + 0x00000250u;
|
|
/* 022AF164 */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 022AF168 */ cpu->r[11] = 0x0000003Cu;
|
|
/* 022AF16C */ _t49 = cpu->r[28] + 0x00000257u;
|
|
/* 022AF16C */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[27]);
|
|
/* 022AF170 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF174 */ _t50 = cpu->r[28] + 0x00000244u;
|
|
/* 022AF174 */ rbrew_write32(cpu->mem, _t50, cpu->r[27]);
|
|
/* 022AF178 */ cpu->r[8] = 0x00000006u;
|
|
/* 022AF17C */ _t51 = cpu->r[28] + 0x00000248u;
|
|
/* 022AF17C */ rbrew_write32(cpu->mem, _t51, cpu->r[11]);
|
|
/* 022AF180 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF180 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[8]);
|
|
/* 022AF184 */ Gambit_fn_022B1FDC(cpu);
|
|
/* 022AF188 */ cpu->r[3] = cpu->r[28];
|
|
/* 022AF18C */ cpu->r[4] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF190 */ Gambit_fn_02000834(cpu);
|
|
/* 022AF194 */ cpu->r[26] = 0x10060000u;
|
|
/* 022AF198 */ cpu->r[25] = 0x022B0000u;
|
|
/* 022AF19C */ cpu->r[26] = cpu->r[26] + 0x00002F04u;
|
|
/* 022AF1A0 */ cpu->r[7] = 0x10060000u;
|
|
/* 022AF1A4 */ cpu->r[25] = cpu->r[25] + 0x000019B8u;
|
|
/* 022AF1A8 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF1A8 */ rbrew_write32(cpu->mem, _t53, cpu->r[26]);
|
|
/* 022AF1AC */ cpu->r[7] = cpu->r[7] + 0x000030ECu;
|
|
/* 022AF1B0 */ cpu->ctr = cpu->r[25];
|
|
/* 022AF1B4 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF1B4 */ rbrew_write32(cpu->mem, _t54, cpu->r[7]);
|
|
/* 022AF1B8 */ _t55 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022AF1B8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022AF1BC */ _t56 = cpu->r[24] + 0x00000000u;
|
|
/* 022AF1BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AF1C0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF1C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF1C8 */ cpu->r[31] = 0x10110000u;
|
|
/* 022AF1CC */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF1CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 022AF1D0 */ _t58 = cpu->r[31] + 0x00007399u;
|
|
/* 022AF1D0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t58);
|
|
/* 022AF1D4 */ _t59 = cpu->r[12] + 0x00000000u;
|
|
/* 022AF1D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t59);
|
|
/* 022AF1D8 */ cpu->r[30] = 0x00000000u;
|
|
/* 022AF1DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 022AF1E0 */ cpu->r[6] = 0x00080000u;
|
|
/* 022AF1E4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF1E4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022AF1E4 */ if (_t61) goto L_022AF20C; else goto L_022AF1E8;
|
|
L_022AF1E8: ; // 0x22af1e8
|
|
/* 022AF1E8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022AF1EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 022AF1F0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022AF1F4 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF1F4 */ _t63 = _t62 & 0x00000001u;
|
|
/* 022AF1F4 */ if (_t63) goto L_022AF208; else goto L_022AF1F8;
|
|
L_022AF1F8: ; // 0x22af1f8
|
|
/* 022AF1F8 */ _t64 = cpu->r[12] + 0x00000000u;
|
|
/* 022AF1F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t64);
|
|
/* 022AF1FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 022AF200 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF200 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022AF200 */ if (_t66) goto L_022AF204; else goto L_022AF1E8;
|
|
L_022AF204: ; // 0x22af204
|
|
/* 022AF204 */ goto L_022AF20C;
|
|
L_022AF208: ; // 0x22af208
|
|
/* 022AF208 */ cpu->r[30] = 0x00000000u;
|
|
L_022AF20C: ; // 0x22af20c
|
|
/* 022AF20C */ _t67 = cpu->r[24] + 0x00000008u;
|
|
/* 022AF20C */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022AF210 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF210 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022AF214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 022AF218 */ _t69 = cpu->r[12] + 0x00000014u;
|
|
/* 022AF218 */ cpu->r[5] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AF21C */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF21C */ _t71 = _t70 & 0x00000001u;
|
|
/* 022AF21C */ if (_t71) goto L_022AF224; else goto L_022AF220;
|
|
L_022AF220: ; // 0x22af220
|
|
/* 022AF220 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_022AF224: ; // 0x22af224
|
|
/* 022AF224 */ cpu->ctr = cpu->r[5];
|
|
/* 022AF228 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF22C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF230 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF230 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022AF234 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AF238 */ cpu->r[5] = cpu->r[30];
|
|
/* 022AF23C */ cpu->r[6] = 0x00000000u;
|
|
/* 022AF240 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AF244 */ _t73 = cpu->r[29] + cpu->r[30];
|
|
/* 022AF244 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[31]);
|
|
/* 022AF248 */ cpu->r[8] = 0x00000000u;
|
|
/* 022AF24C */ _t74 = cpu->r[1] + 0x00000026u;
|
|
/* 022AF24C */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[27]);
|
|
/* 022AF250 */ cpu->r[9] = 0x022B0000u;
|
|
/* 022AF254 */ _t75 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF254 */ rbrew_write32(cpu->mem, _t75, cpu->r[27]);
|
|
/* 022AF258 */ cpu->r[9] = cpu->r[9] + 0x00001838u;
|
|
/* 022AF25C */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF25C */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[8]);
|
|
/* 022AF260 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022AF264 */ cpu->r[7] = 0x022B0000u;
|
|
/* 022AF268 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF268 */ rbrew_write32(cpu->mem, _t77, cpu->r[9]);
|
|
/* 022AF26C */ cpu->r[7] = cpu->r[7] + 0x00001814u;
|
|
/* 022AF270 */ _t78 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AF270 */ rbrew_write16(cpu->mem, _t78, (uint16_t)cpu->r[10]);
|
|
/* 022AF274 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF274 */ rbrew_write32(cpu->mem, _t79, cpu->r[7]);
|
|
/* 022AF278 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF27C */ _t80 = cpu->r[1] + 0x00000016u;
|
|
/* 022AF27C */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[10]);
|
|
/* 022AF280 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF284 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF284 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[27]);
|
|
/* 022AF288 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 022AF28C */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AF290 */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF290 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[27]);
|
|
/* 022AF294 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF298 */ _t83 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF298 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[27]);
|
|
/* 022AF29C */ Gambit_fn_022B228C(cpu);
|
|
/* 022AF2A0 */ cpu->r[10] = 0x10060000u;
|
|
/* 022AF2A4 */ _t84 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF2A4 */ rbrew_write32(cpu->mem, _t84, cpu->r[26]);
|
|
/* 022AF2A8 */ cpu->r[10] = cpu->r[10] + 0x000030FCu;
|
|
/* 022AF2AC */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF2AC */ rbrew_write32(cpu->mem, _t85, cpu->r[10]);
|
|
/* 022AF2B0 */ _t86 = cpu->r[28] + 0x00000198u;
|
|
/* 022AF2B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86);
|
|
/* 022AF2B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 022AF2B8 */ _t87 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022AF2B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 022AF2BC */ _t88 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF2BC */ _t89 = _t88 & 0x00000001u;
|
|
/* 022AF2BC */ if (_t89) goto L_022AF2C0; else goto L_022AF2C4;
|
|
L_022AF2C0: ; // 0x22af2c0
|
|
/* 022AF2C0 */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_022AF2C4: ; // 0x22af2c4
|
|
/* 022AF2C4 */ cpu->ctr = cpu->r[25];
|
|
/* 022AF2C8 */ _t90 = cpu->r[29] + 0x00000000u;
|
|
/* 022AF2C8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022AF2CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF2D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF2D4 */ _t91 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF2D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 022AF2D8 */ _t92 = cpu->r[8] + 0x00000000u;
|
|
/* 022AF2D8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t92);
|
|
/* 022AF2DC */ cpu->r[30] = 0x00000000u;
|
|
/* 022AF2E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 022AF2E4 */ cpu->r[10] = 0x00080000u;
|
|
/* 022AF2E8 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF2E8 */ _t94 = _t93 & 0x00000001u;
|
|
/* 022AF2E8 */ if (_t94) goto L_022AF310; else goto L_022AF2EC;
|
|
L_022AF2EC: ; // 0x22af2ec
|
|
/* 022AF2EC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022AF2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 022AF2F4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 022AF2F8 */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF2F8 */ _t96 = _t95 & 0x00000001u;
|
|
/* 022AF2F8 */ if (_t96) goto L_022AF30C; else goto L_022AF2FC;
|
|
L_022AF2FC: ; // 0x22af2fc
|
|
/* 022AF2FC */ _t97 = cpu->r[8] + 0x00000000u;
|
|
/* 022AF2FC */ cpu->r[6] = rbrew_read8(cpu->mem, _t97);
|
|
/* 022AF300 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 022AF304 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF304 */ _t99 = _t98 & 0x00000001u;
|
|
/* 022AF304 */ if (_t99) goto L_022AF308; else goto L_022AF2EC;
|
|
L_022AF308: ; // 0x22af308
|
|
/* 022AF308 */ goto L_022AF310;
|
|
L_022AF30C: ; // 0x22af30c
|
|
/* 022AF30C */ cpu->r[30] = 0x00000000u;
|
|
L_022AF310: ; // 0x22af310
|
|
/* 022AF310 */ _t100 = cpu->r[29] + 0x00000008u;
|
|
/* 022AF310 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 022AF314 */ _t101 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF314 */ cpu->r[8] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022AF318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 022AF31C */ _t102 = cpu->r[8] + 0x00000014u;
|
|
/* 022AF31C */ cpu->r[10] = rbrew_read32(cpu->mem, _t102);
|
|
/* 022AF320 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF320 */ _t104 = _t103 & 0x00000001u;
|
|
/* 022AF320 */ if (_t104) goto L_022AF328; else goto L_022AF324;
|
|
L_022AF324: ; // 0x22af324
|
|
/* 022AF324 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_022AF328: ; // 0x22af328
|
|
/* 022AF328 */ cpu->ctr = cpu->r[10];
|
|
/* 022AF32C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF334 */ _t105 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF334 */ cpu->r[4] = rbrew_read32(cpu->mem, _t105);
|
|
/* 022AF338 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AF33C */ cpu->r[5] = cpu->r[30];
|
|
/* 022AF340 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AF344 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AF348 */ _t106 = cpu->r[24] + cpu->r[30];
|
|
/* 022AF348 */ rbrew_write8(cpu->mem, _t106, (uint8_t)cpu->r[31]);
|
|
/* 022AF34C */ cpu->r[0] = 0x00000001u;
|
|
/* 022AF350 */ _t107 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF350 */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[27]);
|
|
/* 022AF354 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022AF358 */ _t108 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF358 */ rbrew_write8(cpu->mem, _t108, (uint8_t)cpu->r[0]);
|
|
/* 022AF35C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 022AF360 */ _t109 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF360 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[27]);
|
|
/* 022AF364 */ cpu->r[6] = cpu->r[6] + 0x00001860u;
|
|
/* 022AF368 */ _t110 = cpu->r[1] + 0x00000016u;
|
|
/* 022AF368 */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[0]);
|
|
/* 022AF36C */ _t111 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF36C */ rbrew_write16(cpu->mem, _t111, (uint16_t)cpu->r[27]);
|
|
/* 022AF370 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AF374 */ _t112 = cpu->r[1] + 0x00000026u;
|
|
/* 022AF374 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[27]);
|
|
/* 022AF378 */ cpu->r[12] = cpu->r[12] + 0x0000183Cu;
|
|
/* 022AF37C */ _t113 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF37C */ rbrew_write32(cpu->mem, _t113, cpu->r[6]);
|
|
/* 022AF380 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AF384 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AF388 */ _t114 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AF388 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[0]);
|
|
/* 022AF38C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF390 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF394 */ _t115 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF394 */ rbrew_write32(cpu->mem, _t115, cpu->r[12]);
|
|
/* 022AF398 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF39C */ _t116 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF39C */ rbrew_write32(cpu->mem, _t116, cpu->r[27]);
|
|
/* 022AF3A0 */ Gambit_fn_022B228C(cpu);
|
|
/* 022AF3A4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AF3A8 */ _t117 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF3A8 */ rbrew_write32(cpu->mem, _t117, cpu->r[26]);
|
|
/* 022AF3AC */ cpu->r[9] = cpu->r[9] + 0x000030DCu;
|
|
/* 022AF3B0 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF3B0 */ rbrew_write32(cpu->mem, _t118, cpu->r[9]);
|
|
/* 022AF3B4 */ _t119 = cpu->r[28] + 0x00000198u;
|
|
/* 022AF3B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 022AF3B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000002u);
|
|
/* 022AF3BC */ _t120 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022AF3BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t120);
|
|
/* 022AF3C0 */ _t121 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF3C0 */ _t122 = _t121 & 0x00000001u;
|
|
/* 022AF3C0 */ if (_t122) goto L_022AF3C4; else goto L_022AF3C8;
|
|
L_022AF3C4: ; // 0x22af3c4
|
|
/* 022AF3C4 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_022AF3C8: ; // 0x22af3c8
|
|
/* 022AF3C8 */ cpu->ctr = cpu->r[25];
|
|
/* 022AF3CC */ _t123 = cpu->r[29] + 0x00000000u;
|
|
/* 022AF3CC */ cpu->r[24] = rbrew_read32(cpu->mem, _t123);
|
|
/* 022AF3D0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF3D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF3D8 */ _t124 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF3D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t124);
|
|
/* 022AF3DC */ _t125 = cpu->r[11] + 0x00000000u;
|
|
/* 022AF3DC */ cpu->r[5] = rbrew_read8(cpu->mem, _t125);
|
|
/* 022AF3E0 */ cpu->r[30] = 0x00000000u;
|
|
/* 022AF3E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 022AF3E8 */ cpu->r[0] = 0x00080000u;
|
|
/* 022AF3EC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF3EC */ _t127 = _t126 & 0x00000001u;
|
|
/* 022AF3EC */ if (_t127) goto L_022AF414; else goto L_022AF3F0;
|
|
L_022AF3F0: ; // 0x22af3f0
|
|
/* 022AF3F0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022AF3F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 022AF3F8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 022AF3FC */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF3FC */ _t129 = _t128 & 0x00000001u;
|
|
/* 022AF3FC */ if (_t129) goto L_022AF410; else goto L_022AF400;
|
|
L_022AF400: ; // 0x22af400
|
|
/* 022AF400 */ _t130 = cpu->r[11] + 0x00000000u;
|
|
/* 022AF400 */ cpu->r[7] = rbrew_read8(cpu->mem, _t130);
|
|
/* 022AF404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 022AF408 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF408 */ _t132 = _t131 & 0x00000001u;
|
|
/* 022AF408 */ if (_t132) goto L_022AF40C; else goto L_022AF3F0;
|
|
L_022AF40C: ; // 0x22af40c
|
|
/* 022AF40C */ goto L_022AF414;
|
|
L_022AF410: ; // 0x22af410
|
|
/* 022AF410 */ cpu->r[30] = 0x00000000u;
|
|
L_022AF414: ; // 0x22af414
|
|
/* 022AF414 */ _t133 = cpu->r[29] + 0x00000008u;
|
|
/* 022AF414 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 022AF418 */ _t134 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF418 */ cpu->r[8] = rbrew_read32(cpu->mem, _t134);
|
|
/* 022AF41C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 022AF420 */ _t135 = cpu->r[8] + 0x00000014u;
|
|
/* 022AF420 */ cpu->r[9] = rbrew_read32(cpu->mem, _t135);
|
|
/* 022AF424 */ _t136 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF424 */ _t137 = _t136 & 0x00000001u;
|
|
/* 022AF424 */ if (_t137) goto L_022AF42C; else goto L_022AF428;
|
|
L_022AF428: ; // 0x22af428
|
|
/* 022AF428 */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_022AF42C: ; // 0x22af42c
|
|
/* 022AF42C */ cpu->ctr = cpu->r[9];
|
|
/* 022AF430 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF434 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF438 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF438 */ cpu->r[4] = rbrew_read32(cpu->mem, _t138);
|
|
/* 022AF43C */ cpu->r[6] = 0x00000000u;
|
|
/* 022AF440 */ cpu->r[5] = cpu->r[30];
|
|
/* 022AF444 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AF448 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AF44C */ _t139 = cpu->r[24] + cpu->r[30];
|
|
/* 022AF44C */ rbrew_write8(cpu->mem, _t139, (uint8_t)cpu->r[31]);
|
|
/* 022AF450 */ cpu->r[6] = 0x022B0000u;
|
|
/* 022AF454 */ _t140 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF454 */ rbrew_write16(cpu->mem, _t140, (uint16_t)cpu->r[27]);
|
|
/* 022AF458 */ cpu->r[6] = cpu->r[6] + 0x00001908u;
|
|
/* 022AF45C */ cpu->r[11] = 0x022B0000u;
|
|
/* 022AF460 */ _t141 = cpu->r[1] + 0x00000026u;
|
|
/* 022AF460 */ rbrew_write16(cpu->mem, _t141, (uint16_t)cpu->r[27]);
|
|
/* 022AF464 */ cpu->r[11] = cpu->r[11] + 0x000018E8u;
|
|
/* 022AF468 */ _t142 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF468 */ rbrew_write32(cpu->mem, _t142, cpu->r[6]);
|
|
/* 022AF46C */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 022AF470 */ _t143 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF470 */ rbrew_write32(cpu->mem, _t143, cpu->r[27]);
|
|
/* 022AF474 */ cpu->r[10] = 0x00000002u;
|
|
/* 022AF478 */ _t144 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF478 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[27]);
|
|
/* 022AF47C */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF480 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF480 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[10]);
|
|
/* 022AF484 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AF488 */ _t146 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF488 */ rbrew_write16(cpu->mem, _t146, (uint16_t)cpu->r[27]);
|
|
/* 022AF48C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AF490 */ _t147 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AF490 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[12]);
|
|
/* 022AF494 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF498 */ _t148 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF498 */ rbrew_write32(cpu->mem, _t148, cpu->r[11]);
|
|
/* 022AF49C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF4A0 */ _t149 = cpu->r[1] + 0x00000016u;
|
|
/* 022AF4A0 */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[12]);
|
|
/* 022AF4A4 */ Gambit_fn_022B228C(cpu);
|
|
/* 022AF4A8 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AF4AC */ _t150 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF4AC */ rbrew_write32(cpu->mem, _t150, cpu->r[26]);
|
|
/* 022AF4B0 */ cpu->r[9] = cpu->r[9] + 0x000030C0u;
|
|
/* 022AF4B4 */ _t151 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF4B4 */ rbrew_write32(cpu->mem, _t151, cpu->r[9]);
|
|
/* 022AF4B8 */ _t152 = cpu->r[28] + 0x00000198u;
|
|
/* 022AF4B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t152);
|
|
/* 022AF4BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000003u);
|
|
/* 022AF4C0 */ _t153 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022AF4C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t153);
|
|
/* 022AF4C4 */ _t154 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF4C4 */ _t155 = _t154 & 0x00000001u;
|
|
/* 022AF4C4 */ if (_t155) goto L_022AF4C8; else goto L_022AF4CC;
|
|
L_022AF4C8: ; // 0x22af4c8
|
|
/* 022AF4C8 */ cpu->r[29] = cpu->r[29] + 0x0000006Cu;
|
|
L_022AF4CC: ; // 0x22af4cc
|
|
/* 022AF4CC */ cpu->ctr = cpu->r[25];
|
|
/* 022AF4D0 */ _t156 = cpu->r[29] + 0x00000000u;
|
|
/* 022AF4D0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t156);
|
|
/* 022AF4D4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF4D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF4DC */ _t157 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF4DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t157);
|
|
/* 022AF4E0 */ _t158 = cpu->r[7] + 0x00000000u;
|
|
/* 022AF4E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t158);
|
|
/* 022AF4E4 */ cpu->r[30] = 0x00000000u;
|
|
/* 022AF4E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 022AF4EC */ cpu->r[9] = 0x00080000u;
|
|
/* 022AF4F0 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF4F0 */ _t160 = _t159 & 0x00000001u;
|
|
/* 022AF4F0 */ if (_t160) goto L_022AF518; else goto L_022AF4F4;
|
|
L_022AF4F4: ; // 0x22af4f4
|
|
/* 022AF4F4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022AF4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 022AF4FC */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 022AF500 */ _t161 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF500 */ _t162 = _t161 & 0x00000001u;
|
|
/* 022AF500 */ if (_t162) goto L_022AF514; else goto L_022AF504;
|
|
L_022AF504: ; // 0x22af504
|
|
/* 022AF504 */ _t163 = cpu->r[7] + 0x00000000u;
|
|
/* 022AF504 */ cpu->r[6] = rbrew_read8(cpu->mem, _t163);
|
|
/* 022AF508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 022AF50C */ _t164 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF50C */ _t165 = _t164 & 0x00000001u;
|
|
/* 022AF50C */ if (_t165) goto L_022AF510; else goto L_022AF4F4;
|
|
L_022AF510: ; // 0x22af510
|
|
/* 022AF510 */ goto L_022AF518;
|
|
L_022AF514: ; // 0x22af514
|
|
/* 022AF514 */ cpu->r[30] = 0x00000000u;
|
|
L_022AF518: ; // 0x22af518
|
|
/* 022AF518 */ _t166 = cpu->r[29] + 0x00000008u;
|
|
/* 022AF518 */ cpu->r[7] = rbrew_read32(cpu->mem, _t166);
|
|
/* 022AF51C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 022AF520 */ _t167 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF520 */ _t168 = _t167 & 0x00000001u;
|
|
/* 022AF520 */ if (_t168) goto L_022AF528; else goto L_022AF524;
|
|
L_022AF524: ; // 0x22af524
|
|
/* 022AF524 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_022AF528: ; // 0x22af528
|
|
/* 022AF528 */ _t169 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF528 */ cpu->r[7] = rbrew_read32(cpu->mem, _t169);
|
|
/* 022AF52C */ _t170 = cpu->r[7] + 0x00000014u;
|
|
/* 022AF52C */ cpu->r[8] = rbrew_read32(cpu->mem, _t170);
|
|
/* 022AF530 */ cpu->ctr = cpu->r[8];
|
|
/* 022AF534 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF538 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF53C */ _t171 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF53C */ cpu->r[4] = rbrew_read32(cpu->mem, _t171);
|
|
/* 022AF540 */ cpu->r[6] = 0x00000000u;
|
|
/* 022AF544 */ cpu->r[5] = cpu->r[30];
|
|
/* 022AF548 */ cpu->r[3] = cpu->r[24];
|
|
/* 022AF54C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AF550 */ _t172 = cpu->r[24] + cpu->r[30];
|
|
/* 022AF550 */ rbrew_write8(cpu->mem, _t172, (uint8_t)cpu->r[31]);
|
|
/* 022AF554 */ cpu->r[0] = 0x00000003u;
|
|
/* 022AF558 */ _t173 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF558 */ rbrew_write16(cpu->mem, _t173, (uint16_t)cpu->r[27]);
|
|
/* 022AF55C */ cpu->r[11] = 0x022B0000u;
|
|
/* 022AF560 */ _t174 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF560 */ rbrew_write16(cpu->mem, _t174, (uint16_t)cpu->r[27]);
|
|
/* 022AF564 */ cpu->r[11] = cpu->r[11] + 0x00001E94u;
|
|
/* 022AF568 */ _t175 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF568 */ rbrew_write8(cpu->mem, _t175, (uint8_t)cpu->r[0]);
|
|
/* 022AF56C */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 022AF570 */ _t176 = cpu->r[1] + 0x00000026u;
|
|
/* 022AF570 */ rbrew_write16(cpu->mem, _t176, (uint16_t)cpu->r[27]);
|
|
/* 022AF574 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF578 */ _t177 = cpu->r[1] + 0x00000016u;
|
|
/* 022AF578 */ rbrew_write16(cpu->mem, _t177, (uint16_t)cpu->r[10]);
|
|
/* 022AF57C */ cpu->r[9] = 0x022B0000u;
|
|
/* 022AF580 */ _t178 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF580 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[27]);
|
|
/* 022AF584 */ cpu->r[9] = cpu->r[9] + 0x00001E90u;
|
|
/* 022AF588 */ _t179 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AF588 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[10]);
|
|
/* 022AF58C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF590 */ _t180 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF590 */ rbrew_write32(cpu->mem, _t180, cpu->r[11]);
|
|
/* 022AF594 */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF598 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AF59C */ _t181 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF59C */ rbrew_write32(cpu->mem, _t181, cpu->r[9]);
|
|
/* 022AF5A0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AF5A4 */ _t182 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF5A4 */ rbrew_write32(cpu->mem, _t182, cpu->r[27]);
|
|
/* 022AF5A8 */ Gambit_fn_022B228C(cpu);
|
|
/* 022AF5AC */ cpu->r[6] = 0x10060000u;
|
|
/* 022AF5B0 */ _t183 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF5B0 */ rbrew_write32(cpu->mem, _t183, cpu->r[26]);
|
|
/* 022AF5B4 */ cpu->r[6] = cpu->r[6] + 0x000030D0u;
|
|
/* 022AF5B8 */ _t184 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF5B8 */ rbrew_write32(cpu->mem, _t184, cpu->r[6]);
|
|
/* 022AF5BC */ _t185 = cpu->r[28] + 0x00000198u;
|
|
/* 022AF5BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t185);
|
|
/* 022AF5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000005u);
|
|
/* 022AF5C4 */ _t186 = cpu->r[28] + 0x0000019Cu;
|
|
/* 022AF5C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t186);
|
|
/* 022AF5C8 */ _t187 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF5C8 */ _t188 = _t187 & 0x00000001u;
|
|
/* 022AF5C8 */ if (_t188) goto L_022AF5CC; else goto L_022AF5D0;
|
|
L_022AF5CC: ; // 0x22af5cc
|
|
/* 022AF5CC */ cpu->r[29] = cpu->r[29] + 0x000000B4u;
|
|
L_022AF5D0: ; // 0x22af5d0
|
|
/* 022AF5D0 */ cpu->ctr = cpu->r[25];
|
|
/* 022AF5D4 */ _t189 = cpu->r[29] + 0x00000000u;
|
|
/* 022AF5D4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t189);
|
|
/* 022AF5D8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF5DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF5E0 */ _t190 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF5E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t190);
|
|
/* 022AF5E4 */ _t191 = cpu->r[12] + 0x00000000u;
|
|
/* 022AF5E4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t191);
|
|
/* 022AF5E8 */ cpu->r[30] = 0x00000000u;
|
|
/* 022AF5EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 022AF5F0 */ cpu->r[0] = 0x00080000u;
|
|
/* 022AF5F4 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF5F4 */ _t193 = _t192 & 0x00000001u;
|
|
/* 022AF5F4 */ if (_t193) goto L_022AF61C; else goto L_022AF5F8;
|
|
L_022AF5F8: ; // 0x22af5f8
|
|
/* 022AF5F8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 022AF5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 022AF600 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022AF604 */ _t194 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AF604 */ _t195 = _t194 & 0x00000001u;
|
|
/* 022AF604 */ if (_t195) goto L_022AF618; else goto L_022AF608;
|
|
L_022AF608: ; // 0x22af608
|
|
/* 022AF608 */ _t196 = cpu->r[12] + 0x00000000u;
|
|
/* 022AF608 */ cpu->r[9] = rbrew_read8(cpu->mem, _t196);
|
|
/* 022AF60C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 022AF610 */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF610 */ _t198 = _t197 & 0x00000001u;
|
|
/* 022AF610 */ if (_t198) goto L_022AF614; else goto L_022AF5F8;
|
|
L_022AF614: ; // 0x22af614
|
|
/* 022AF614 */ goto L_022AF61C;
|
|
L_022AF618: ; // 0x22af618
|
|
/* 022AF618 */ cpu->r[30] = 0x00000000u;
|
|
L_022AF61C: ; // 0x22af61c
|
|
/* 022AF61C */ _t199 = cpu->r[29] + 0x00000008u;
|
|
/* 022AF61C */ cpu->r[8] = rbrew_read32(cpu->mem, _t199);
|
|
/* 022AF620 */ _t200 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF620 */ cpu->r[10] = rbrew_read32(cpu->mem, _t200);
|
|
/* 022AF624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 022AF628 */ _t201 = cpu->r[10] + 0x00000014u;
|
|
/* 022AF628 */ cpu->r[11] = rbrew_read32(cpu->mem, _t201);
|
|
/* 022AF62C */ _t202 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF62C */ _t203 = _t202 & 0x00000001u;
|
|
/* 022AF62C */ if (_t203) goto L_022AF634; else goto L_022AF630;
|
|
L_022AF630: ; // 0x22af630
|
|
/* 022AF630 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_022AF634: ; // 0x22af634
|
|
/* 022AF634 */ cpu->ctr = cpu->r[11];
|
|
/* 022AF638 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF63C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF640 */ _t204 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF640 */ cpu->r[4] = rbrew_read32(cpu->mem, _t204);
|
|
/* 022AF644 */ cpu->r[3] = cpu->r[26];
|
|
/* 022AF648 */ cpu->r[5] = cpu->r[30];
|
|
/* 022AF64C */ cpu->r[6] = 0x00000000u;
|
|
/* 022AF650 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 022AF654 */ _t205 = cpu->r[26] + cpu->r[30];
|
|
/* 022AF654 */ rbrew_write8(cpu->mem, _t205, (uint8_t)cpu->r[31]);
|
|
/* 022AF658 */ cpu->r[7] = 0x00000005u;
|
|
/* 022AF65C */ _t206 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF65C */ rbrew_write32(cpu->mem, _t206, cpu->r[27]);
|
|
/* 022AF660 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 022AF664 */ _t207 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF664 */ rbrew_write8(cpu->mem, _t207, (uint8_t)cpu->r[7]);
|
|
/* 022AF668 */ cpu->r[12] = 0x022B0000u;
|
|
/* 022AF66C */ _t208 = cpu->r[1] + 0x00000026u;
|
|
/* 022AF66C */ rbrew_write16(cpu->mem, _t208, (uint16_t)cpu->r[27]);
|
|
/* 022AF670 */ cpu->r[12] = cpu->r[12] + 0x0000190Cu;
|
|
/* 022AF674 */ _t209 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF674 */ rbrew_write16(cpu->mem, _t209, (uint16_t)cpu->r[27]);
|
|
/* 022AF678 */ cpu->r[0] = 0x022B0000u;
|
|
/* 022AF67C */ _t210 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF67C */ rbrew_write32(cpu->mem, _t210, cpu->r[12]);
|
|
/* 022AF680 */ cpu->r[0] = cpu->r[0] + 0x00001E98u;
|
|
/* 022AF684 */ _t211 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF684 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[27]);
|
|
/* 022AF688 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF68C */ _t212 = cpu->r[1] + 0x00000016u;
|
|
/* 022AF68C */ rbrew_write16(cpu->mem, _t212, (uint16_t)cpu->r[8]);
|
|
/* 022AF690 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 022AF694 */ _t213 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF694 */ rbrew_write32(cpu->mem, _t213, cpu->r[0]);
|
|
/* 022AF698 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 022AF69C */ cpu->r[3] = cpu->r[28] + 0x00000184u;
|
|
/* 022AF6A0 */ _t214 = cpu->r[1] + 0x0000001Eu;
|
|
/* 022AF6A0 */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[8]);
|
|
/* 022AF6A4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022AF6A8 */ _t215 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF6A8 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[27]);
|
|
/* 022AF6AC */ Gambit_fn_022B228C(cpu);
|
|
L_022AF6B0: ; // 0x22af6b0
|
|
/* 022AF6B0 */ cpu->r[3] = cpu->r[28];
|
|
/* 022AF6B4 */ /* nop */
|
|
/* 022AF6B8 */ _t216 = cpu->r[1] + 0x00000054u;
|
|
/* 022AF6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t216);
|
|
/* 022AF6BC */ cpu->lr = cpu->r[0];
|
|
/* 022AF6C0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022AF6C4 */ return;
|
|
}
|
|
|
|
// fn_022AF6C8 @ 0x22af6c8
|
|
void Gambit_fn_022AF6C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49;
|
|
|
|
L_022AF6C8: ; // 0x22af6c8
|
|
/* 022AF6C8 */ cpu->r[0] = cpu->lr;
|
|
/* 022AF6CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AF6CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AF6CC */ cpu->r[1] = _t0;
|
|
/* 022AF6D0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF6D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022AF6D4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF6D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AF6D8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF6D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022AF6DC */ cpu->r[30] = cpu->r[3];
|
|
/* 022AF6E0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF6E0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AF6E4 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF6E8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AF6EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF6F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF6F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AF6F4 */ if (_t7) goto L_022AF6FC; else goto L_022AF6F8;
|
|
L_022AF6F8: ; // 0x22af6f8
|
|
/* 022AF6F8 */ Gambit_fn_023C28A8(cpu);
|
|
L_022AF6FC: ; // 0x22af6fc
|
|
/* 022AF6FC */ cpu->r[29] = 0x00000000u;
|
|
/* 022AF700 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AF704 */ _t8 = cpu->r[30] + 0x00000228u;
|
|
/* 022AF704 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 022AF708 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF70C */ _t9 = cpu->r[30] + 0x00000228u;
|
|
/* 022AF70C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AF710 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF714 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF718 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF71C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF720 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF720 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AF720 */ if (_t11) goto L_022AF728; else goto L_022AF724;
|
|
L_022AF724: ; // 0x22af724
|
|
/* 022AF724 */ Gambit_fn_023C28A8(cpu);
|
|
L_022AF728: ; // 0x22af728
|
|
/* 022AF728 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AF72C */ _t12 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022AF72C */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 022AF730 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF734 */ _t13 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022AF734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AF738 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF73C */ cpu->r[6] = 0x00000004u;
|
|
/* 022AF740 */ cpu->r[5] = 0x00000000u;
|
|
/* 022AF744 */ cpu->r[4] = 0x00000007u;
|
|
/* 022AF748 */ cpu->r[3] = cpu->r[30] + 0x00000210u;
|
|
/* 022AF74C */ Gambit_fn_028023CC(cpu);
|
|
/* 022AF750 */ cpu->r[28] = 0x00000007u;
|
|
L_022AF754: ; // 0x22af754
|
|
/* 022AF754 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF758 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF75C */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF760 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF760 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022AF760 */ if (_t15) goto L_022AF770; else goto L_022AF764;
|
|
L_022AF764: ; // 0x22af764
|
|
/* 022AF764 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF768 */ Gambit_fn_023C28A8(cpu);
|
|
/* 022AF76C */ cpu->r[31] = cpu->r[3];
|
|
L_022AF770: ; // 0x22af770
|
|
/* 022AF770 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF774 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AF778 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF77C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF780 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF784 */ _t16 = cpu->r[30] + 0x00000214u;
|
|
/* 022AF784 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AF788 */ _t17 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AF78C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]);
|
|
/* 022AF790 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF790 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022AF790 */ if (_t19) goto L_022AF794; else goto L_022AF7AC;
|
|
L_022AF794: ; // 0x22af794
|
|
/* 022AF794 */ _t20 = cpu->r[30] + 0x00000218u;
|
|
/* 022AF794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AF798 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AF79C */ _t21 = cpu->r[9] + cpu->r[10];
|
|
/* 022AF79C */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 022AF7A0 */ _t22 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AF7A4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022AF7A8 */ _t23 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF7A8 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_022AF7AC: ; // 0x22af7ac
|
|
/* 022AF7AC */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 022AF7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AF7B0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7B0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AF7B0 */ if (_t25) goto L_022AF7B4; else goto L_022AF754;
|
|
L_022AF7B4: ; // 0x22af7b4
|
|
/* 022AF7B4 */ cpu->r[3] = 0x00000010u;
|
|
/* 022AF7B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF7BC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF7C0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7C0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AF7C0 */ if (_t27) goto L_022AF820; else goto L_022AF7C4;
|
|
L_022AF7C4: ; // 0x22af7c4
|
|
/* 022AF7C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF7C8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7C8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AF7C8 */ if (_t29) goto L_022AF7CC; else goto L_022AF7DC;
|
|
L_022AF7CC: ; // 0x22af7cc
|
|
/* 022AF7CC */ cpu->r[3] = 0x00000008u;
|
|
/* 022AF7D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF7D8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7D8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AF7D8 */ if (_t31) goto L_022AF7EC; else goto L_022AF7DC;
|
|
L_022AF7DC: ; // 0x22af7dc
|
|
/* 022AF7DC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AF7E0 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 022AF7E0 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 022AF7E4 */ cpu->r[0] = cpu->r[0] + 0x00002F34u;
|
|
/* 022AF7E8 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 022AF7E8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
L_022AF7EC: ; // 0x22af7ec
|
|
/* 022AF7EC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AF7F0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AF7F4 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 022AF7F4 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 022AF7F8 */ cpu->r[0] = cpu->r[0] + 0x00002F94u;
|
|
/* 022AF7FC */ _t35 = cpu->r[12] + 0x000030BCu;
|
|
/* 022AF7FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022AF800 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 022AF800 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022AF804 */ _t37 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AF804 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 022AF808 */ cpu->r[3] = 0x00000030u;
|
|
/* 022AF80C */ _t38 = cpu->r[30] + 0x00000230u;
|
|
/* 022AF80C */ rbrew_write32(cpu->mem, _t38, cpu->r[31]);
|
|
/* 022AF810 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF818 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF818 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AF818 */ if (_t40) goto L_022AF83C; else goto L_022AF81C;
|
|
L_022AF81C: ; // 0x22af81c
|
|
/* 022AF81C */ goto L_022AF838;
|
|
L_022AF820: ; // 0x22af820
|
|
/* 022AF820 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AF824 */ cpu->r[3] = 0x00000030u;
|
|
/* 022AF828 */ _t41 = cpu->r[30] + 0x00000230u;
|
|
/* 022AF828 */ rbrew_write32(cpu->mem, _t41, cpu->r[31]);
|
|
/* 022AF82C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF834 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF834 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AF834 */ if (_t43) goto L_022AF83C; else goto L_022AF838;
|
|
L_022AF838: ; // 0x22af838
|
|
/* 022AF838 */ Gambit_fn_02246868(cpu);
|
|
L_022AF83C: ; // 0x22af83c
|
|
/* 022AF83C */ _t44 = cpu->r[30] + 0x00000234u;
|
|
/* 022AF83C */ rbrew_write32(cpu->mem, _t44, cpu->r[3]);
|
|
/* 022AF840 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF840 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022AF844 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF844 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022AF848 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AF84C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF84C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AF850 */ cpu->lr = cpu->r[0];
|
|
/* 022AF854 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF854 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AF858 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AF85C */ return;
|
|
}
|
|
|
|
// fn_022AF6CC @ 0x22af6cc
|
|
void Gambit_fn_022AF6CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49;
|
|
|
|
L_022AF6CC: ; // 0x22af6cc
|
|
/* 022AF6CC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022AF6CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AF6CC */ cpu->r[1] = _t0;
|
|
/* 022AF6D0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF6D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 022AF6D4 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF6D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AF6D8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF6D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022AF6DC */ cpu->r[30] = cpu->r[3];
|
|
/* 022AF6E0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF6E0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 022AF6E4 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF6E8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF6E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 022AF6EC */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF6F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF6F4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF6F4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022AF6F4 */ if (_t7) goto L_022AF6FC; else goto L_022AF6F8;
|
|
L_022AF6F8: ; // 0x22af6f8
|
|
/* 022AF6F8 */ Gambit_fn_023C28A8(cpu);
|
|
L_022AF6FC: ; // 0x22af6fc
|
|
/* 022AF6FC */ cpu->r[29] = 0x00000000u;
|
|
/* 022AF700 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AF704 */ _t8 = cpu->r[30] + 0x00000228u;
|
|
/* 022AF704 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 022AF708 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF70C */ _t9 = cpu->r[30] + 0x00000228u;
|
|
/* 022AF70C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AF710 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF714 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF718 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF71C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF720 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF720 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022AF720 */ if (_t11) goto L_022AF728; else goto L_022AF724;
|
|
L_022AF724: ; // 0x22af724
|
|
/* 022AF724 */ Gambit_fn_023C28A8(cpu);
|
|
L_022AF728: ; // 0x22af728
|
|
/* 022AF728 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AF72C */ _t12 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022AF72C */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 022AF730 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF734 */ _t13 = cpu->r[30] + 0x0000022Cu;
|
|
/* 022AF734 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022AF738 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF73C */ cpu->r[6] = 0x00000004u;
|
|
/* 022AF740 */ cpu->r[5] = 0x00000000u;
|
|
/* 022AF744 */ cpu->r[4] = 0x00000007u;
|
|
/* 022AF748 */ cpu->r[3] = cpu->r[30] + 0x00000210u;
|
|
/* 022AF74C */ Gambit_fn_028023CC(cpu);
|
|
/* 022AF750 */ cpu->r[28] = 0x00000007u;
|
|
L_022AF754: ; // 0x22af754
|
|
/* 022AF754 */ cpu->r[3] = 0x00000084u;
|
|
/* 022AF758 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF75C */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF760 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF760 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022AF760 */ if (_t15) goto L_022AF770; else goto L_022AF764;
|
|
L_022AF764: ; // 0x22af764
|
|
/* 022AF764 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF768 */ Gambit_fn_023C28A8(cpu);
|
|
/* 022AF76C */ cpu->r[31] = cpu->r[3];
|
|
L_022AF770: ; // 0x22af770
|
|
/* 022AF770 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF774 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AF778 */ Gambit_fn_023C26D8(cpu);
|
|
/* 022AF77C */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF780 */ Gambit_fn_023E4504(cpu);
|
|
/* 022AF784 */ _t16 = cpu->r[30] + 0x00000214u;
|
|
/* 022AF784 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AF788 */ _t17 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AF78C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]);
|
|
/* 022AF790 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AF790 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022AF790 */ if (_t19) goto L_022AF794; else goto L_022AF7AC;
|
|
L_022AF794: ; // 0x22af794
|
|
/* 022AF794 */ _t20 = cpu->r[30] + 0x00000218u;
|
|
/* 022AF794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AF798 */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 022AF79C */ _t21 = cpu->r[9] + cpu->r[10];
|
|
/* 022AF79C */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 022AF7A0 */ _t22 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AF7A4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022AF7A8 */ _t23 = cpu->r[30] + 0x00000210u;
|
|
/* 022AF7A8 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_022AF7AC: ; // 0x22af7ac
|
|
/* 022AF7AC */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 022AF7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 022AF7B0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7B0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022AF7B0 */ if (_t25) goto L_022AF7B4; else goto L_022AF754;
|
|
L_022AF7B4: ; // 0x22af7b4
|
|
/* 022AF7B4 */ cpu->r[3] = 0x00000010u;
|
|
/* 022AF7B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF7BC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF7C0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7C0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022AF7C0 */ if (_t27) goto L_022AF820; else goto L_022AF7C4;
|
|
L_022AF7C4: ; // 0x22af7c4
|
|
/* 022AF7C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF7C8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7C8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022AF7C8 */ if (_t29) goto L_022AF7CC; else goto L_022AF7DC;
|
|
L_022AF7CC: ; // 0x22af7cc
|
|
/* 022AF7CC */ cpu->r[3] = 0x00000008u;
|
|
/* 022AF7D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF7D8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF7D8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 022AF7D8 */ if (_t31) goto L_022AF7EC; else goto L_022AF7DC;
|
|
L_022AF7DC: ; // 0x22af7dc
|
|
/* 022AF7DC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AF7E0 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 022AF7E0 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 022AF7E4 */ cpu->r[0] = cpu->r[0] + 0x00002F34u;
|
|
/* 022AF7E8 */ _t33 = cpu->r[3] + 0x00000004u;
|
|
/* 022AF7E8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
L_022AF7EC: ; // 0x22af7ec
|
|
/* 022AF7EC */ cpu->r[0] = 0x10060000u;
|
|
/* 022AF7F0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AF7F4 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 022AF7F4 */ rbrew_write32(cpu->mem, _t34, cpu->r[29]);
|
|
/* 022AF7F8 */ cpu->r[0] = cpu->r[0] + 0x00002F94u;
|
|
/* 022AF7FC */ _t35 = cpu->r[12] + 0x000030BCu;
|
|
/* 022AF7FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022AF800 */ _t36 = cpu->r[31] + 0x00000004u;
|
|
/* 022AF800 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 022AF804 */ _t37 = cpu->r[31] + 0x0000000Cu;
|
|
/* 022AF804 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 022AF808 */ cpu->r[3] = 0x00000030u;
|
|
/* 022AF80C */ _t38 = cpu->r[30] + 0x00000230u;
|
|
/* 022AF80C */ rbrew_write32(cpu->mem, _t38, cpu->r[31]);
|
|
/* 022AF810 */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF818 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF818 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022AF818 */ if (_t40) goto L_022AF83C; else goto L_022AF81C;
|
|
L_022AF81C: ; // 0x22af81c
|
|
/* 022AF81C */ goto L_022AF838;
|
|
L_022AF820: ; // 0x22af820
|
|
/* 022AF820 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AF824 */ cpu->r[3] = 0x00000030u;
|
|
/* 022AF828 */ _t41 = cpu->r[30] + 0x00000230u;
|
|
/* 022AF828 */ rbrew_write32(cpu->mem, _t41, cpu->r[31]);
|
|
/* 022AF82C */ Gambit_fn_02801A78(cpu);
|
|
/* 022AF830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF834 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF834 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022AF834 */ if (_t43) goto L_022AF83C; else goto L_022AF838;
|
|
L_022AF838: ; // 0x22af838
|
|
/* 022AF838 */ Gambit_fn_02246868(cpu);
|
|
L_022AF83C: ; // 0x22af83c
|
|
/* 022AF83C */ _t44 = cpu->r[30] + 0x00000234u;
|
|
/* 022AF83C */ rbrew_write32(cpu->mem, _t44, cpu->r[3]);
|
|
/* 022AF840 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF840 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022AF844 */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF844 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022AF848 */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AF84C */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF84C */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 022AF850 */ cpu->lr = cpu->r[0];
|
|
/* 022AF854 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF854 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AF858 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022AF85C */ return;
|
|
}
|
|
|
|
// fn_022AF860 @ 0x22af860
|
|
void Gambit_fn_022AF860(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60;
|
|
|
|
L_022AF860: ; // 0x22af860
|
|
/* 022AF860 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 022AF860 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AF860 */ cpu->r[1] = _t0;
|
|
/* 022AF864 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 022AF864 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AF868 */ /* nop */
|
|
/* 022AF86C */ cpu->r[22] = 0x00000000u;
|
|
/* 022AF870 */ cpu->r[0] = cpu->lr;
|
|
/* 022AF874 */ /* nop */
|
|
/* 022AF878 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022AF87C */ cpu->r[24] = cpu->r[22];
|
|
/* 022AF880 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022AF884 */ cpu->r[23] = 0x00000006u;
|
|
/* 022AF888 */ cpu->r[27] = 0x101F0000u;
|
|
/* 022AF88C */ cpu->r[10] = 0x10060000u;
|
|
/* 022AF890 */ _t2 = cpu->r[1] + 0x00000090u;
|
|
/* 022AF890 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022AF894 */ cpu->r[28] = 0x00000001u;
|
|
/* 022AF898 */ _t3 = cpu->r[10] + 0x0000310Cu;
|
|
/* 022AF898 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 022AF89C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AF8A0 */ _t4 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022AF8A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AF8A4 */ cpu->r[29] = cpu->r[30] + 0x000001BCu;
|
|
L_022AF8A8: ; // 0x22af8a8
|
|
/* 022AF8A8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AF8AC */ cpu->r[8] = 0x43300000u;
|
|
/* 022AF8B0 */ _t5 = cpu->r[6] + 0x00003110u;
|
|
/* 022AF8B0 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t5);
|
|
/* 022AF8B4 */ cpu->r[0] = cpu->r[22] ^ 0x80000000u;
|
|
/* 022AF8B8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF8B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 022AF8BC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AF8BC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022AF8C0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 022AF8C0 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t8);
|
|
/* 022AF8C4 */ cpu->f[13] = cpu->f[11] - cpu->f[8];
|
|
/* 022AF8C8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AF8CC */ cpu->f[6] = (double)(float)cpu->f[13];
|
|
/* 022AF8D0 */ _t9 = cpu->r[12] + 0x00003118u;
|
|
/* 022AF8D0 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022AF8D4 */ cpu->r[9] = 0x10060000u;
|
|
/* 022AF8D8 */ cpu->f[0] = cpu->f[6] * cpu->f[7];
|
|
/* 022AF8DC */ _t10 = cpu->r[9] + 0x0000311Cu;
|
|
/* 022AF8DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022AF8E0 */ cpu->f[1] = cpu->f[0] / cpu->f[13];
|
|
/* 022AF8E4 */ cpu->r[4] = cpu->r[27] + 0x0000635Cu;
|
|
/* 022AF8E8 */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AF8EC */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022AF8F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AF8F4 */ cpu->r[21] = cpu->r[29] + cpu->r[24];
|
|
/* 022AF8F8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AF8FC */ _t11 = cpu->r[26] + 0x00000194u;
|
|
/* 022AF8FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AF900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022AF904 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AF908 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF908 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AF908 */ if (_t13) goto L_022AF90C; else goto L_022AF91C;
|
|
L_022AF90C: ; // 0x22af90c
|
|
/* 022AF90C */ cpu->r[8] = 0x10060000u;
|
|
/* 022AF910 */ _t14 = cpu->r[26] + 0x00000194u;
|
|
/* 022AF910 */ rbrew_write32(cpu->mem, _t14, cpu->r[28]);
|
|
/* 022AF914 */ cpu->r[8] = cpu->r[8] + 0x00002FC4u;
|
|
/* 022AF918 */ _t15 = cpu->r[25] + 0x00000190u;
|
|
/* 022AF918 */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
L_022AF91C: ; // 0x22af91c
|
|
/* 022AF91C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AF920 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF920 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022AF920 */ if (_t17) goto L_022AF944; else goto L_022AF924;
|
|
L_022AF924: ; // 0x22af924
|
|
/* 022AF924 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 022AF924 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AF928 */ _t19 = cpu->r[11] + 0x0000006Cu;
|
|
/* 022AF928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AF92C */ cpu->ctr = cpu->r[0];
|
|
/* 022AF930 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AF934 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022AF938 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AF93C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AF940 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF940 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022AF940 */ if (_t21) goto L_022AF944; else goto L_022AF948;
|
|
L_022AF944: ; // 0x22af944
|
|
/* 022AF944 */ cpu->r[31] = 0x00000000u;
|
|
L_022AF948: ; // 0x22af948
|
|
/* 022AF948 */ _t22 = cpu->r[1] + 0x00000054u;
|
|
/* 022AF948 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 022AF94C */ _t23 = cpu->r[31] + 0x00000D44u;
|
|
/* 022AF94C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 022AF950 */ /* nop */
|
|
/* 022AF954 */ cpu->f[12] = cpu->f[13] * cpu->f[0];
|
|
/* 022AF958 */ /* nop */
|
|
/* 022AF95C */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF95C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]);
|
|
/* 022AF960 */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 022AF960 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AF964 */ /* nop */
|
|
/* 022AF968 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 022AF968 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AF96C */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 022AF96C */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AF970 */ _t28 = cpu->r[1] + 0x00000040u;
|
|
/* 022AF970 */ rbrew_write32(cpu->mem, _t28, cpu->r[6]);
|
|
/* 022AF974 */ _t29 = cpu->r[1] + 0x00000044u;
|
|
/* 022AF974 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 022AF978 */ _t30 = cpu->r[1] + 0x00000048u;
|
|
/* 022AF978 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]);
|
|
/* 022AF97C */ _t31 = cpu->r[1] + 0x00000048u;
|
|
/* 022AF97C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AF980 */ /* nop */
|
|
/* 022AF984 */ cpu->f[10] = cpu->f[12] + cpu->f[12];
|
|
/* 022AF988 */ _t32 = cpu->r[30] + 0x00000118u;
|
|
/* 022AF988 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022AF98C */ /* nop */
|
|
/* 022AF990 */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF990 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[10]);
|
|
/* 022AF994 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 022AF994 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AF998 */ /* nop */
|
|
/* 022AF99C */ _t35 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AF99C */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022AF9A0 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 022AF9A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022AF9A4 */ _t37 = cpu->r[1] + 0x00000034u;
|
|
/* 022AF9A4 */ rbrew_write32(cpu->mem, _t37, cpu->r[4]);
|
|
/* 022AF9A8 */ _t38 = cpu->r[1] + 0x00000038u;
|
|
/* 022AF9A8 */ rbrew_write32(cpu->mem, _t38, cpu->r[5]);
|
|
/* 022AF9AC */ _t39 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AF9AC */ rbrew_write32(cpu->mem, _t39, cpu->r[6]);
|
|
/* 022AF9B0 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AF9B0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022AF9B4 */ /* nop */
|
|
/* 022AF9B8 */ cpu->f[10] = cpu->f[11] + cpu->f[6];
|
|
/* 022AF9BC */ /* nop */
|
|
/* 022AF9C0 */ /* nop */
|
|
/* 022AF9C4 */ /* nop */
|
|
/* 022AF9C8 */ _t41 = cpu->r[1] + 0x00000028u;
|
|
/* 022AF9C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AF9CC */ _t42 = cpu->r[1] + 0x00000030u;
|
|
/* 022AF9CC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[10]);
|
|
/* 022AF9D0 */ _t43 = cpu->r[21] + 0x00000000u;
|
|
/* 022AF9D0 */ rbrew_write32(cpu->mem, _t43, cpu->r[5]);
|
|
/* 022AF9D4 */ _t44 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AF9D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022AF9D8 */ _t45 = cpu->r[21] + 0x00000004u;
|
|
/* 022AF9D8 */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
/* 022AF9DC */ _t46 = cpu->r[1] + 0x00000030u;
|
|
/* 022AF9DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022AF9E0 */ _t47 = cpu->r[21] + 0x00000008u;
|
|
/* 022AF9E0 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 022AF9E4 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 022AF9E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022AF9E8 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 022AF9EC */ cpu->r[24] = cpu->r[24] + 0x0000000Cu;
|
|
/* 022AF9F0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AF9F0 */ _t49 = _t48 & 0x00000001u;
|
|
/* 022AF9F0 */ if (_t49) goto L_022AF9F4; else goto L_022AF8A8;
|
|
L_022AF9F4: ; // 0x22af9f4
|
|
/* 022AF9F4 */ _t50 = cpu->r[30] + 0x00000110u;
|
|
/* 022AF9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022AF9F8 */ _t51 = cpu->r[29] + 0x00000048u;
|
|
/* 022AF9F8 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 022AF9FC */ _t52 = cpu->r[30] + 0x00000114u;
|
|
/* 022AF9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022AFA00 */ _t53 = cpu->r[29] + 0x0000004Cu;
|
|
/* 022AFA00 */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
/* 022AFA04 */ _t54 = cpu->r[30] + 0x00000118u;
|
|
/* 022AFA04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t54);
|
|
/* 022AFA08 */ _t55 = cpu->r[29] + 0x00000050u;
|
|
/* 022AFA08 */ rbrew_write32(cpu->mem, _t55, cpu->r[5]);
|
|
/* 022AFA0C */ /* nop */
|
|
/* 022AFA10 */ _t56 = cpu->r[1] + 0x00000090u;
|
|
/* 022AFA10 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 022AFA14 */ _t57 = cpu->r[1] + 0x00000088u;
|
|
/* 022AFA14 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 022AFA18 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFA18 */ _t59 = _t58 & 0x00000001u;
|
|
/* 022AFA18 */ if (_t59) goto L_022AFA1C; // else: addr-0 trap, fall-through
|
|
L_022AFA1C: ; // 0x22afa1c
|
|
/* 022AFA1C */ _t60 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022AFA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AFA20 */ cpu->lr = cpu->r[0];
|
|
/* 022AFA24 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 022AFA28 */ return;
|
|
}
|
|
|
|
// fn_022AFA2C @ 0x22afa2c
|
|
void Gambit_fn_022AFA2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_022AFA2C: ; // 0x22afa2c
|
|
/* 022AFA2C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022AFA2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFA2C */ cpu->r[1] = _t0;
|
|
/* 022AFA30 */ /* nop */
|
|
/* 022AFA34 */ cpu->r[21] = 0x00000000u;
|
|
/* 022AFA38 */ cpu->r[0] = cpu->lr;
|
|
/* 022AFA3C */ cpu->r[24] = cpu->r[21];
|
|
/* 022AFA40 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AFA44 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022AFA48 */ cpu->r[27] = cpu->r[24];
|
|
/* 022AFA4C */ cpu->r[28] = 0x00000001u;
|
|
/* 022AFA50 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022AFA54 */ cpu->r[23] = 0x00000007u;
|
|
/* 022AFA58 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AFA58 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022AFA5C */ cpu->r[29] = cpu->r[30] + 0x000001BCu;
|
|
L_022AFA60: ; // 0x22afa60
|
|
/* 022AFA60 */ _t2 = cpu->r[30] + 0x00000210u;
|
|
/* 022AFA60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022AFA64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[7]);
|
|
/* 022AFA68 */ cpu->r[22] = 0x00000000u;
|
|
/* 022AFA6C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFA6C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022AFA6C */ if (_t4) goto L_022AFA70; else goto L_022AFA78;
|
|
L_022AFA70: ; // 0x22afa70
|
|
/* 022AFA70 */ _t5 = cpu->r[30] + 0x00000218u;
|
|
/* 022AFA70 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AFA74 */ _t6 = cpu->r[10] + cpu->r[27];
|
|
/* 022AFA74 */ cpu->r[22] = rbrew_read32(cpu->mem, _t6);
|
|
L_022AFA78: ; // 0x22afa78
|
|
/* 022AFA78 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AFA7C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFA80 */ _t7 = cpu->r[26] + 0x00000194u;
|
|
/* 022AFA80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022AFA84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AFA88 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFA8C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFA8C */ _t9 = _t8 & 0x00000001u;
|
|
/* 022AFA8C */ if (_t9) goto L_022AFA90; else goto L_022AFAA0;
|
|
L_022AFA90: ; // 0x22afa90
|
|
/* 022AFA90 */ cpu->r[0] = 0x10060000u;
|
|
/* 022AFA94 */ _t10 = cpu->r[26] + 0x00000194u;
|
|
/* 022AFA94 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 022AFA98 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022AFA9C */ _t11 = cpu->r[25] + 0x00000190u;
|
|
/* 022AFA9C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022AFAA0: ; // 0x22afaa0
|
|
/* 022AFAA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFAA4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFAA4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022AFAA4 */ if (_t13) goto L_022AFAC8; else goto L_022AFAA8;
|
|
L_022AFAA8: ; // 0x22afaa8
|
|
/* 022AFAA8 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFAA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022AFAAC */ _t15 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022AFAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022AFAB0 */ cpu->ctr = cpu->r[0];
|
|
/* 022AFAB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFAB8 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022AFABC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFAC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFAC4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFAC4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022AFAC4 */ if (_t17) goto L_022AFAC8; else goto L_022AFACC;
|
|
L_022AFAC8: ; // 0x22afac8
|
|
/* 022AFAC8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AFACC: ; // 0x22afacc
|
|
/* 022AFACC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], 0x00000007u);
|
|
/* 022AFAD0 */ _t18 = cpu->r[31] + 0x00000D44u;
|
|
/* 022AFAD0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022AFAD4 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFAD4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AFAD4 */ if (_t20) goto L_022AFAD8; else goto L_022AFAFC;
|
|
L_022AFAD8: ; // 0x22afad8
|
|
/* 022AFAD8 */ cpu->r[3] = cpu->r[22];
|
|
/* 022AFADC */ cpu->r[4] = cpu->r[29] + cpu->r[24];
|
|
/* 022AFAE0 */ Gambit_fn_022483BC(cpu);
|
|
/* 022AFAE4 */ cpu->r[24] = cpu->r[24] + 0x0000000Cu;
|
|
/* 022AFAE8 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 022AFAE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022AFAEC */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 022AFAF0 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 022AFAF4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFAF4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AFAF4 */ if (_t22) goto L_022AFAF8; else goto L_022AFA60;
|
|
L_022AFAF8: ; // 0x22afaf8
|
|
/* 022AFAF8 */ goto L_022AFB1C;
|
|
L_022AFAFC: ; // 0x22afafc
|
|
/* 022AFAFC */ cpu->r[3] = cpu->r[22];
|
|
/* 022AFB00 */ cpu->r[4] = cpu->r[29];
|
|
/* 022AFB04 */ Gambit_fn_022483BC(cpu);
|
|
/* 022AFB08 */ cpu->r[24] = cpu->r[24] + 0x0000000Cu;
|
|
/* 022AFB0C */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 022AFB0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022AFB10 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 022AFB14 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 022AFB18 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFB18 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022AFB18 */ if (_t24) goto L_022AFB1C; else goto L_022AFA60;
|
|
L_022AFB1C: ; // 0x22afb1c
|
|
/* 022AFB1C */ /* nop */
|
|
/* 022AFB20 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AFB20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AFB24 */ cpu->lr = cpu->r[0];
|
|
/* 022AFB28 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022AFB2C */ return;
|
|
}
|
|
|
|
// fn_022AFB30 @ 0x22afb30
|
|
void Gambit_fn_022AFB30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_022AFB30: ; // 0x22afb30
|
|
/* 022AFB30 */ cpu->r[0] = cpu->lr;
|
|
/* 022AFB34 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022AFB34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFB34 */ cpu->r[1] = _t0;
|
|
/* 022AFB38 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 022AFB38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AFB3C */ /* nop */
|
|
/* 022AFB40 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 022AFB40 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022AFB44 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022AFB44 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AFB48 */ _t4 = cpu->r[1] + 0x00000070u;
|
|
/* 022AFB48 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AFB4C */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AFB4C */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022AFB50 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AFB50 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AFB54 */ _t7 = cpu->r[1] + 0x00000074u;
|
|
/* 022AFB54 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 022AFB58 */ _t8 = cpu->r[3] + 0x00000070u;
|
|
/* 022AFB58 */ cpu->r[28] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AFB5C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AFB60 */ _t9 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022AFB60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AFB64 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFB68 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AFB6C */ _t10 = cpu->r[12] + 0x00000194u;
|
|
/* 022AFB6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AFB6C */ cpu->r[12] = _t10;
|
|
/* 022AFB70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFB74 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AFB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AFB7C */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022AFB80 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFB80 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AFB80 */ if (_t12) goto L_022AFB84; else goto L_022AFB98;
|
|
L_022AFB84: ; // 0x22afb84
|
|
/* 022AFB84 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AFB88 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AFB8C */ cpu->r[6] = cpu->r[6] + 0x00002FC4u;
|
|
/* 022AFB90 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022AFB90 */ rbrew_write32(cpu->mem, _t13, cpu->r[5]);
|
|
/* 022AFB94 */ _t14 = cpu->r[4] + 0x00000000u;
|
|
/* 022AFB94 */ rbrew_write32(cpu->mem, _t14, cpu->r[6]);
|
|
L_022AFB98: ; // 0x22afb98
|
|
/* 022AFB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFB9C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFB9C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AFB9C */ if (_t16) goto L_022AFBBC; else goto L_022AFBA0;
|
|
L_022AFBA0: ; // 0x22afba0
|
|
/* 022AFBA0 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFBA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AFBA4 */ _t18 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022AFBA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AFBA8 */ cpu->ctr = cpu->r[8];
|
|
/* 022AFBAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFBB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFBB8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFBB8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AFBB8 */ if (_t20) goto L_022AFBBC; else goto L_022AFBC0;
|
|
L_022AFBBC: ; // 0x22afbbc
|
|
/* 022AFBBC */ cpu->r[31] = 0x00000000u;
|
|
L_022AFBC0: ; // 0x22afbc0
|
|
/* 022AFBC0 */ _t21 = cpu->r[30] + 0x00000140u;
|
|
/* 022AFBC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AFBC4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AFBC8 */ _t22 = cpu->r[30] + 0x00000148u;
|
|
/* 022AFBC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AFBCC */ cpu->r[9] = 0x00000001u;
|
|
/* 022AFBD0 */ _t23 = cpu->r[3] + 0x00006000u;
|
|
/* 022AFBD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AFBD4 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFBD4 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022AFBD8 */ _t25 = cpu->r[28] + 0x00000044u;
|
|
/* 022AFBD8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AFBDC */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 022AFBDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AFBE0 */ _t27 = cpu->r[30] + 0x00000144u;
|
|
/* 022AFBE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AFBE4 */ _t28 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AFBE4 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 022AFBE8 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 022AFBE8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022AFBEC */ cpu->r[6] = 0x101F0000u;
|
|
/* 022AFBF0 */ _t30 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFBF0 */ rbrew_write32(cpu->mem, _t30, cpu->r[5]);
|
|
/* 022AFBF4 */ _t31 = cpu->r[31] + 0x00000E64u;
|
|
/* 022AFBF4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AFBF8 */ _t32 = cpu->r[6] + 0x00006328u;
|
|
/* 022AFBF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AFBF8 */ cpu->r[6] = _t32;
|
|
/* 022AFBFC */ _t33 = cpu->r[6] + 0x00000004u;
|
|
/* 022AFBFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AFC00 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFC00 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 022AFC04 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFC04 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 022AFC08 */ _t36 = cpu->r[10] + 0x00000134u;
|
|
/* 022AFC08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022AFC0C */ cpu->ctr = cpu->r[0];
|
|
/* 022AFC10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFC14 */ _t37 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFC14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AFC18 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022AFC1C */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFC1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AFC20 */ _t39 = cpu->r[11] + 0x00006350u;
|
|
/* 022AFC20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AFC20 */ cpu->r[11] = _t39;
|
|
/* 022AFC24 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFC24 */ rbrew_write32(cpu->mem, _t40, cpu->r[28]);
|
|
/* 022AFC28 */ _t41 = cpu->r[1] + 0x00000050u;
|
|
/* 022AFC28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AFC2C */ _t42 = cpu->r[11] + 0x00000004u;
|
|
/* 022AFC2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AFC30 */ _t43 = cpu->r[11] + 0x00000008u;
|
|
/* 022AFC30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AFC34 */ _t44 = cpu->r[1] + 0x00000038u;
|
|
/* 022AFC34 */ rbrew_write32(cpu->mem, _t44, cpu->r[6]);
|
|
/* 022AFC38 */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 022AFC38 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 022AFC3C */ _t46 = cpu->r[1] + 0x00000058u;
|
|
/* 022AFC3C */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022AFC40 */ _t47 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AFC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AFC44 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AFC44 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022AFC48 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 022AFC48 */ rbrew_write32(cpu->mem, _t49, cpu->r[5]);
|
|
/* 022AFC4C */ cpu->r[0] = cpu->r[11];
|
|
/* 022AFC50 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 022AFC50 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 022AFC54 */ cpu->r[5] = 0x00000018u;
|
|
/* 022AFC58 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFC58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022AFC5C */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 022AFC5C */ rbrew_write32(cpu->mem, _t52, cpu->r[5]);
|
|
/* 022AFC60 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 022AFC60 */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 022AFC64 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 022AFC64 */ rbrew_write32(cpu->mem, _t54, cpu->r[4]);
|
|
/* 022AFC68 */ _t55 = cpu->r[1] + 0x00000048u;
|
|
/* 022AFC68 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022AFC6C */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AFC6C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 022AFC70 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 022AFC70 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 022AFC74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022AFC78 */ _t58 = cpu->r[1] + 0x00000040u;
|
|
/* 022AFC78 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 022AFC7C */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022AFC7C */ rbrew_write32(cpu->mem, _t59, cpu->r[10]);
|
|
/* 022AFC80 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFC80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AFC84 */ _t61 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AFC84 */ rbrew_write32(cpu->mem, _t61, cpu->r[10]);
|
|
/* 022AFC88 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AFC88 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]);
|
|
/* 022AFC8C */ Gambit_fn_023945F8(cpu);
|
|
/* 022AFC90 */ _t63 = cpu->r[1] + 0x00000068u;
|
|
/* 022AFC90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022AFC94 */ _t64 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AFC94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022AFC98 */ _t65 = cpu->r[1] + 0x00000080u;
|
|
/* 022AFC98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022AFC9C */ _t66 = cpu->r[1] + 0x00000070u;
|
|
/* 022AFC9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AFCA0 */ _t67 = cpu->r[1] + 0x00000078u;
|
|
/* 022AFCA0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 022AFCA4 */ _t68 = cpu->r[1] + 0x00000074u;
|
|
/* 022AFCA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022AFCA8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFCA8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022AFCA8 */ if (_t70) goto L_022AFCAC; // else: addr-0 trap, fall-through
|
|
L_022AFCAC: ; // 0x22afcac
|
|
/* 022AFCAC */ _t71 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AFCAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022AFCB0 */ cpu->lr = cpu->r[0];
|
|
/* 022AFCB4 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022AFCB8 */ return;
|
|
}
|
|
|
|
// fn_022AFB34 @ 0x22afb34
|
|
void Gambit_fn_022AFB34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_022AFB34: ; // 0x22afb34
|
|
/* 022AFB34 */ _t0 = cpu->r[1] + 0xFFFFFF78u;
|
|
/* 022AFB34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFB34 */ cpu->r[1] = _t0;
|
|
/* 022AFB38 */ _t1 = cpu->r[1] + 0x00000078u;
|
|
/* 022AFB38 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AFB3C */ /* nop */
|
|
/* 022AFB40 */ _t2 = cpu->r[1] + 0x00000068u;
|
|
/* 022AFB40 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 022AFB44 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 022AFB44 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AFB48 */ _t4 = cpu->r[1] + 0x00000070u;
|
|
/* 022AFB48 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 022AFB4C */ _t5 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AFB4C */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 022AFB50 */ _t6 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AFB50 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022AFB54 */ _t7 = cpu->r[1] + 0x00000074u;
|
|
/* 022AFB54 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 022AFB58 */ _t8 = cpu->r[3] + 0x00000070u;
|
|
/* 022AFB58 */ cpu->r[28] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022AFB5C */ cpu->r[30] = cpu->r[3];
|
|
/* 022AFB60 */ _t9 = cpu->r[3] + 0x0000002Cu;
|
|
/* 022AFB60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022AFB64 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFB68 */ cpu->r[12] = 0x101D0000u;
|
|
/* 022AFB6C */ _t10 = cpu->r[12] + 0x00000194u;
|
|
/* 022AFB6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022AFB6C */ cpu->r[12] = _t10;
|
|
/* 022AFB70 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFB74 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022AFB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022AFB7C */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022AFB80 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFB80 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022AFB80 */ if (_t12) goto L_022AFB84; else goto L_022AFB98;
|
|
L_022AFB84: ; // 0x22afb84
|
|
/* 022AFB84 */ cpu->r[6] = 0x10060000u;
|
|
/* 022AFB88 */ cpu->r[5] = 0x00000001u;
|
|
/* 022AFB8C */ cpu->r[6] = cpu->r[6] + 0x00002FC4u;
|
|
/* 022AFB90 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 022AFB90 */ rbrew_write32(cpu->mem, _t13, cpu->r[5]);
|
|
/* 022AFB94 */ _t14 = cpu->r[4] + 0x00000000u;
|
|
/* 022AFB94 */ rbrew_write32(cpu->mem, _t14, cpu->r[6]);
|
|
L_022AFB98: ; // 0x22afb98
|
|
/* 022AFB98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFB9C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFB9C */ _t16 = _t15 & 0x00000001u;
|
|
/* 022AFB9C */ if (_t16) goto L_022AFBBC; else goto L_022AFBA0;
|
|
L_022AFBA0: ; // 0x22afba0
|
|
/* 022AFBA0 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFBA0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AFBA4 */ _t18 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022AFBA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AFBA8 */ cpu->ctr = cpu->r[8];
|
|
/* 022AFBAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFBB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFBB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFBB8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFBB8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022AFBB8 */ if (_t20) goto L_022AFBBC; else goto L_022AFBC0;
|
|
L_022AFBBC: ; // 0x22afbbc
|
|
/* 022AFBBC */ cpu->r[31] = 0x00000000u;
|
|
L_022AFBC0: ; // 0x22afbc0
|
|
/* 022AFBC0 */ _t21 = cpu->r[30] + 0x00000140u;
|
|
/* 022AFBC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022AFBC4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022AFBC8 */ _t22 = cpu->r[30] + 0x00000148u;
|
|
/* 022AFBC8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AFBCC */ cpu->r[9] = 0x00000001u;
|
|
/* 022AFBD0 */ _t23 = cpu->r[3] + 0x00006000u;
|
|
/* 022AFBD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022AFBD4 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFBD4 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 022AFBD8 */ _t25 = cpu->r[28] + 0x00000044u;
|
|
/* 022AFBD8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022AFBDC */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 022AFBDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AFBE0 */ _t27 = cpu->r[30] + 0x00000144u;
|
|
/* 022AFBE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AFBE4 */ _t28 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AFBE4 */ rbrew_write32(cpu->mem, _t28, cpu->r[12]);
|
|
/* 022AFBE8 */ _t29 = cpu->r[1] + 0x00000050u;
|
|
/* 022AFBE8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 022AFBEC */ cpu->r[6] = 0x101F0000u;
|
|
/* 022AFBF0 */ _t30 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFBF0 */ rbrew_write32(cpu->mem, _t30, cpu->r[5]);
|
|
/* 022AFBF4 */ _t31 = cpu->r[31] + 0x00000E64u;
|
|
/* 022AFBF4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AFBF8 */ _t32 = cpu->r[6] + 0x00006328u;
|
|
/* 022AFBF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AFBF8 */ cpu->r[6] = _t32;
|
|
/* 022AFBFC */ _t33 = cpu->r[6] + 0x00000004u;
|
|
/* 022AFBFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AFC00 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFC00 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
/* 022AFC04 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFC04 */ rbrew_write32(cpu->mem, _t35, cpu->r[9]);
|
|
/* 022AFC08 */ _t36 = cpu->r[10] + 0x00000134u;
|
|
/* 022AFC08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022AFC0C */ cpu->ctr = cpu->r[0];
|
|
/* 022AFC10 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFC14 */ _t37 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFC14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022AFC18 */ cpu->r[11] = 0x101F0000u;
|
|
/* 022AFC1C */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFC1C */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 022AFC20 */ _t39 = cpu->r[11] + 0x00006350u;
|
|
/* 022AFC20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39);
|
|
/* 022AFC20 */ cpu->r[11] = _t39;
|
|
/* 022AFC24 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFC24 */ rbrew_write32(cpu->mem, _t40, cpu->r[28]);
|
|
/* 022AFC28 */ _t41 = cpu->r[1] + 0x00000050u;
|
|
/* 022AFC28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022AFC2C */ _t42 = cpu->r[11] + 0x00000004u;
|
|
/* 022AFC2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AFC30 */ _t43 = cpu->r[11] + 0x00000008u;
|
|
/* 022AFC30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022AFC34 */ _t44 = cpu->r[1] + 0x00000038u;
|
|
/* 022AFC34 */ rbrew_write32(cpu->mem, _t44, cpu->r[6]);
|
|
/* 022AFC38 */ _t45 = cpu->r[1] + 0x00000060u;
|
|
/* 022AFC38 */ rbrew_write32(cpu->mem, _t45, cpu->r[11]);
|
|
/* 022AFC3C */ _t46 = cpu->r[1] + 0x00000058u;
|
|
/* 022AFC3C */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 022AFC40 */ _t47 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AFC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022AFC44 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AFC44 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 022AFC48 */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 022AFC48 */ rbrew_write32(cpu->mem, _t49, cpu->r[5]);
|
|
/* 022AFC4C */ cpu->r[0] = cpu->r[11];
|
|
/* 022AFC50 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 022AFC50 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]);
|
|
/* 022AFC54 */ cpu->r[5] = 0x00000018u;
|
|
/* 022AFC58 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFC58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022AFC5C */ _t52 = cpu->r[1] + 0x00000034u;
|
|
/* 022AFC5C */ rbrew_write32(cpu->mem, _t52, cpu->r[5]);
|
|
/* 022AFC60 */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 022AFC60 */ rbrew_write32(cpu->mem, _t53, cpu->r[11]);
|
|
/* 022AFC64 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 022AFC64 */ rbrew_write32(cpu->mem, _t54, cpu->r[4]);
|
|
/* 022AFC68 */ _t55 = cpu->r[1] + 0x00000048u;
|
|
/* 022AFC68 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 022AFC6C */ _t56 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022AFC6C */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 022AFC70 */ _t57 = cpu->r[1] + 0x00000030u;
|
|
/* 022AFC70 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[31]);
|
|
/* 022AFC74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 022AFC78 */ _t58 = cpu->r[1] + 0x00000040u;
|
|
/* 022AFC78 */ rbrew_write32(cpu->mem, _t58, cpu->r[9]);
|
|
/* 022AFC7C */ _t59 = cpu->r[1] + 0x00000044u;
|
|
/* 022AFC7C */ rbrew_write32(cpu->mem, _t59, cpu->r[10]);
|
|
/* 022AFC80 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFC80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022AFC84 */ _t61 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022AFC84 */ rbrew_write32(cpu->mem, _t61, cpu->r[10]);
|
|
/* 022AFC88 */ _t62 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AFC88 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]);
|
|
/* 022AFC8C */ Gambit_fn_023945F8(cpu);
|
|
/* 022AFC90 */ _t63 = cpu->r[1] + 0x00000068u;
|
|
/* 022AFC90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022AFC94 */ _t64 = cpu->r[1] + 0x0000006Cu;
|
|
/* 022AFC94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t64);
|
|
/* 022AFC98 */ _t65 = cpu->r[1] + 0x00000080u;
|
|
/* 022AFC98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022AFC9C */ _t66 = cpu->r[1] + 0x00000070u;
|
|
/* 022AFC9C */ cpu->r[30] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022AFCA0 */ _t67 = cpu->r[1] + 0x00000078u;
|
|
/* 022AFCA0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 022AFCA4 */ _t68 = cpu->r[1] + 0x00000074u;
|
|
/* 022AFCA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022AFCA8 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFCA8 */ _t70 = _t69 & 0x00000001u;
|
|
/* 022AFCA8 */ if (_t70) goto L_022AFCAC; // else: addr-0 trap, fall-through
|
|
L_022AFCAC: ; // 0x22afcac
|
|
/* 022AFCAC */ _t71 = cpu->r[1] + 0x0000008Cu;
|
|
/* 022AFCAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t71);
|
|
/* 022AFCB0 */ cpu->lr = cpu->r[0];
|
|
/* 022AFCB4 */ cpu->r[1] = cpu->r[1] + 0x00000088u;
|
|
/* 022AFCB8 */ return;
|
|
}
|
|
|
|
// fn_022AFCBC @ 0x22afcbc
|
|
void Gambit_fn_022AFCBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_022AFCBC: ; // 0x22afcbc
|
|
/* 022AFCBC */ cpu->r[0] = cpu->lr;
|
|
/* 022AFCC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AFCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFCC0 */ cpu->r[1] = _t0;
|
|
/* 022AFCC4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AFCC8 */ _t1 = cpu->r[12] + 0x000030BCu;
|
|
/* 022AFCC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AFCCC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFCCC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AFCD0 */ cpu->r[12] = 0x0000003Cu;
|
|
/* 022AFCD4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFCD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022AFCD8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFCD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AFCDC */ _t5 = cpu->r[3] + 0x00000070u;
|
|
/* 022AFCDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AFCE0 */ cpu->r[0] = 0x00000006u;
|
|
/* 022AFCE4 */ _t6 = cpu->r[3] + 0x00000248u;
|
|
/* 022AFCE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022AFCE8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AFCEC */ _t7 = cpu->r[3] + 0x0000023Cu;
|
|
/* 022AFCEC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022AFCF0 */ _t8 = cpu->r[3] + 0x00000257u;
|
|
/* 022AFCF0 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 022AFCF4 */ _t9 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AFCF4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AFCF8 */ _t10 = cpu->r[3] + 0x00000250u;
|
|
/* 022AFCF8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022AFCFC */ _t11 = cpu->r[3] + 0x00000244u;
|
|
/* 022AFCFC */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 022AFD00 */ _t12 = cpu->r[3] + 0x00000254u;
|
|
/* 022AFD00 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]);
|
|
/* 022AFD04 */ _t13 = cpu->r[3] + 0x00000240u;
|
|
/* 022AFD04 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 022AFD08 */ _t14 = cpu->r[3] + 0x00000256u;
|
|
/* 022AFD08 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]);
|
|
/* 022AFD0C */ _t15 = cpu->r[3] + 0x00000255u;
|
|
/* 022AFD0C */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]);
|
|
/* 022AFD10 */ _t16 = cpu->r[11] + 0x00000010u;
|
|
/* 022AFD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AFD14 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 022AFD18 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AFD1C */ _t17 = cpu->r[11] + 0x00000010u;
|
|
/* 022AFD1C */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022AFD20 */ Gambit_fn_022AF860(cpu);
|
|
/* 022AFD24 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AFD28 */ _t18 = cpu->r[30] + 0x00000238u;
|
|
/* 022AFD28 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[31]);
|
|
/* 022AFD2C */ Gambit_fn_022AFA2C(cpu);
|
|
/* 022AFD30 */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022AFD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AFD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000007u);
|
|
/* 022AFD38 */ cpu->r[12] = cpu->r[30] + 0x000001BCu;
|
|
/* 022AFD3C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFD3C */ _t21 = _t20 & 0x00000001u;
|
|
/* 022AFD3C */ if (_t21) goto L_022AFD40; else goto L_022AFD48;
|
|
L_022AFD40: ; // 0x22afd40
|
|
/* 022AFD40 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 022AFD44 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_022AFD48: ; // 0x22afd48
|
|
/* 022AFD48 */ _t22 = cpu->r[12] + 0x00000000u;
|
|
/* 022AFD48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AFD4C */ _t23 = cpu->r[30] + 0x00000140u;
|
|
/* 022AFD4C */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022AFD50 */ _t24 = cpu->r[12] + 0x00000004u;
|
|
/* 022AFD50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AFD54 */ _t25 = cpu->r[30] + 0x00000144u;
|
|
/* 022AFD54 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 022AFD58 */ _t26 = cpu->r[12] + 0x00000008u;
|
|
/* 022AFD58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AFD5C */ _t27 = cpu->r[30] + 0x0000021Cu;
|
|
/* 022AFD5C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 022AFD60 */ _t28 = cpu->r[30] + 0x00000224u;
|
|
/* 022AFD60 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022AFD64 */ _t29 = cpu->r[30] + 0x00000220u;
|
|
/* 022AFD64 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]);
|
|
/* 022AFD68 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AFD6C */ _t30 = cpu->r[30] + 0x00000148u;
|
|
/* 022AFD6C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022AFD70 */ Gambit_fn_022AFB30(cpu);
|
|
/* 022AFD74 */ _t31 = cpu->r[30] + 0x00000234u;
|
|
/* 022AFD74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AFD78 */ Gambit_fn_02246950(cpu);
|
|
/* 022AFD7C */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFD7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AFD80 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFD80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AFD84 */ cpu->lr = cpu->r[0];
|
|
/* 022AFD88 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFD88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AFD8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AFD90 */ return;
|
|
}
|
|
|
|
// fn_022AFCC0 @ 0x22afcc0
|
|
void Gambit_fn_022AFCC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_022AFCC0: ; // 0x22afcc0
|
|
/* 022AFCC0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022AFCC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFCC0 */ cpu->r[1] = _t0;
|
|
/* 022AFCC4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AFCC8 */ _t1 = cpu->r[12] + 0x000030BCu;
|
|
/* 022AFCC8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022AFCCC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFCCC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022AFCD0 */ cpu->r[12] = 0x0000003Cu;
|
|
/* 022AFCD4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFCD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022AFCD8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFCD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022AFCDC */ _t5 = cpu->r[3] + 0x00000070u;
|
|
/* 022AFCDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022AFCE0 */ cpu->r[0] = 0x00000006u;
|
|
/* 022AFCE4 */ _t6 = cpu->r[3] + 0x00000248u;
|
|
/* 022AFCE4 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 022AFCE8 */ cpu->r[31] = 0x00000000u;
|
|
/* 022AFCEC */ _t7 = cpu->r[3] + 0x0000023Cu;
|
|
/* 022AFCEC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 022AFCF0 */ _t8 = cpu->r[3] + 0x00000257u;
|
|
/* 022AFCF0 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 022AFCF4 */ _t9 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022AFCF4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022AFCF8 */ _t10 = cpu->r[3] + 0x00000250u;
|
|
/* 022AFCF8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 022AFCFC */ _t11 = cpu->r[3] + 0x00000244u;
|
|
/* 022AFCFC */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 022AFD00 */ _t12 = cpu->r[3] + 0x00000254u;
|
|
/* 022AFD00 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]);
|
|
/* 022AFD04 */ _t13 = cpu->r[3] + 0x00000240u;
|
|
/* 022AFD04 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 022AFD08 */ _t14 = cpu->r[3] + 0x00000256u;
|
|
/* 022AFD08 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]);
|
|
/* 022AFD0C */ _t15 = cpu->r[3] + 0x00000255u;
|
|
/* 022AFD0C */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]);
|
|
/* 022AFD10 */ _t16 = cpu->r[11] + 0x00000010u;
|
|
/* 022AFD10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AFD14 */ cpu->r[10] = cpu->r[10] | 0x00000001u;
|
|
/* 022AFD18 */ cpu->r[30] = cpu->r[3];
|
|
/* 022AFD1C */ _t17 = cpu->r[11] + 0x00000010u;
|
|
/* 022AFD1C */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 022AFD20 */ Gambit_fn_022AF860(cpu);
|
|
/* 022AFD24 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AFD28 */ _t18 = cpu->r[30] + 0x00000238u;
|
|
/* 022AFD28 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[31]);
|
|
/* 022AFD2C */ Gambit_fn_022AFA2C(cpu);
|
|
/* 022AFD30 */ _t19 = cpu->r[30] + 0x0000023Cu;
|
|
/* 022AFD30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AFD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000007u);
|
|
/* 022AFD38 */ cpu->r[12] = cpu->r[30] + 0x000001BCu;
|
|
/* 022AFD3C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFD3C */ _t21 = _t20 & 0x00000001u;
|
|
/* 022AFD3C */ if (_t21) goto L_022AFD40; else goto L_022AFD48;
|
|
L_022AFD40: ; // 0x22afd40
|
|
/* 022AFD40 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 022AFD44 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
L_022AFD48: ; // 0x22afd48
|
|
/* 022AFD48 */ _t22 = cpu->r[12] + 0x00000000u;
|
|
/* 022AFD48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022AFD4C */ _t23 = cpu->r[30] + 0x00000140u;
|
|
/* 022AFD4C */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022AFD50 */ _t24 = cpu->r[12] + 0x00000004u;
|
|
/* 022AFD50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022AFD54 */ _t25 = cpu->r[30] + 0x00000144u;
|
|
/* 022AFD54 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]);
|
|
/* 022AFD58 */ _t26 = cpu->r[12] + 0x00000008u;
|
|
/* 022AFD58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 022AFD5C */ _t27 = cpu->r[30] + 0x0000021Cu;
|
|
/* 022AFD5C */ rbrew_write32(cpu->mem, _t27, cpu->r[7]);
|
|
/* 022AFD60 */ _t28 = cpu->r[30] + 0x00000224u;
|
|
/* 022AFD60 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022AFD64 */ _t29 = cpu->r[30] + 0x00000220u;
|
|
/* 022AFD64 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]);
|
|
/* 022AFD68 */ cpu->r[3] = cpu->r[30];
|
|
/* 022AFD6C */ _t30 = cpu->r[30] + 0x00000148u;
|
|
/* 022AFD6C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 022AFD70 */ Gambit_fn_022AFB30(cpu);
|
|
/* 022AFD74 */ _t31 = cpu->r[30] + 0x00000234u;
|
|
/* 022AFD74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 022AFD78 */ Gambit_fn_02246950(cpu);
|
|
/* 022AFD7C */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFD7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022AFD80 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 022AFD80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022AFD84 */ cpu->lr = cpu->r[0];
|
|
/* 022AFD88 */ _t34 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFD88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022AFD8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022AFD90 */ return;
|
|
}
|
|
|
|
// fn_022AFD94 @ 0x22afd94
|
|
void Gambit_fn_022AFD94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_022AFD94: ; // 0x22afd94
|
|
/* 022AFD94 */ _t0 = cpu->r[3] + 0x0000023Cu;
|
|
/* 022AFD94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 022AFD98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000007u);
|
|
/* 022AFD9C */ cpu->r[3] = cpu->r[3] + 0x000001BCu;
|
|
/* 022AFDA0 */ _t1 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022AFDA0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 022AFDA0 */ if (_t2) goto L_022AFDA4; else goto L_022AFDAC;
|
|
L_022AFDA4: ; // 0x22afda4
|
|
/* 022AFDA4 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Cu);
|
|
/* 022AFDA8 */ cpu->r[3] = cpu->r[3] + cpu->r[12];
|
|
L_022AFDAC: ; // 0x22afdac
|
|
/* 022AFDAC */ return;
|
|
}
|
|
|
|
// fn_022AFDB0 @ 0x22afdb0
|
|
void Gambit_fn_022AFDB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140;
|
|
|
|
L_022AFDB0: ; // 0x22afdb0
|
|
/* 022AFDB0 */ _t0 = cpu->r[1] + 0xFFFFFF68u;
|
|
/* 022AFDB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022AFDB0 */ cpu->r[1] = _t0;
|
|
/* 022AFDB4 */ /* nop */
|
|
/* 022AFDB8 */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 022AFDB8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022AFDBC */ /* nop */
|
|
/* 022AFDC0 */ cpu->r[0] = cpu->lr;
|
|
/* 022AFDC4 */ _t2 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022AFDC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022AFDC8 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 022AFDC8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 022AFDCC */ cpu->r[29] = cpu->r[3];
|
|
/* 022AFDD0 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFDD4 */ cpu->r[27] = 0x101D0000u;
|
|
/* 022AFDD8 */ _t4 = cpu->r[27] + 0x00000194u;
|
|
/* 022AFDD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022AFDD8 */ cpu->r[27] = _t4;
|
|
/* 022AFDDC */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFDE0 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022AFDE4 */ cpu->r[28] = 0x10060000u;
|
|
/* 022AFDE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022AFDEC */ cpu->r[28] = cpu->r[28] + 0x00002FC4u;
|
|
/* 022AFDF0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFDF0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022AFDF0 */ if (_t6) goto L_022AFDF4; else goto L_022AFE00;
|
|
L_022AFDF4: ; // 0x22afdf4
|
|
/* 022AFDF4 */ _t7 = cpu->r[30] + 0x00000190u;
|
|
/* 022AFDF4 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022AFDF8 */ cpu->r[6] = 0x00000001u;
|
|
/* 022AFDFC */ _t8 = cpu->r[27] + 0x00000000u;
|
|
/* 022AFDFC */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
L_022AFE00: ; // 0x22afe00
|
|
/* 022AFE00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFE04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFE04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022AFE04 */ if (_t10) goto L_022AFE28; else goto L_022AFE08;
|
|
L_022AFE08: ; // 0x22afe08
|
|
/* 022AFE08 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFE08 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022AFE0C */ _t12 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022AFE0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022AFE10 */ cpu->ctr = cpu->r[9];
|
|
/* 022AFE14 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFE18 */ cpu->r[4] = cpu->r[30] + 0x00000190u;
|
|
/* 022AFE1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFE20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFE24 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFE24 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022AFE24 */ if (_t14) goto L_022AFE28; else goto L_022AFE2C;
|
|
L_022AFE28: ; // 0x22afe28
|
|
/* 022AFE28 */ cpu->r[31] = 0x00000000u;
|
|
L_022AFE2C: ; // 0x22afe2c
|
|
/* 022AFE2C */ _t15 = cpu->r[31] + 0x00000E04u;
|
|
/* 022AFE2C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 022AFE30 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022AFE34 */ _t16 = cpu->r[29] + 0x00000228u;
|
|
/* 022AFE34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022AFE38 */ Gambit_fn_022483BC(cpu);
|
|
/* 022AFE3C */ _t17 = cpu->r[29] + 0x0000022Cu;
|
|
/* 022AFE3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022AFE40 */ cpu->r[4] = 0x00000000u;
|
|
/* 022AFE44 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022AFE48 */ Gambit_fn_023C2744(cpu);
|
|
/* 022AFE4C */ _t18 = cpu->r[29] + 0x0000022Cu;
|
|
/* 022AFE4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022AFE50 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 022AFE50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022AFE54 */ Gambit_fn_023C2480(cpu);
|
|
/* 022AFE58 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AFE5C */ cpu->f[31] = cpu->f[1];
|
|
/* 022AFE60 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFE64 */ _t20 = cpu->r[27] + 0x00000000u;
|
|
/* 022AFE64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022AFE68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022AFE6C */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFE70 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFE70 */ _t22 = _t21 & 0x00000001u;
|
|
/* 022AFE70 */ if (_t22) goto L_022AFE74; else goto L_022AFE80;
|
|
L_022AFE74: ; // 0x22afe74
|
|
/* 022AFE74 */ _t23 = cpu->r[30] + 0x00000190u;
|
|
/* 022AFE74 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
/* 022AFE78 */ cpu->r[10] = 0x00000001u;
|
|
/* 022AFE7C */ _t24 = cpu->r[27] + 0x00000000u;
|
|
/* 022AFE7C */ rbrew_write32(cpu->mem, _t24, cpu->r[10]);
|
|
L_022AFE80: ; // 0x22afe80
|
|
/* 022AFE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFE84 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFE84 */ _t26 = _t25 & 0x00000001u;
|
|
/* 022AFE84 */ if (_t26) goto L_022AFEA8; else goto L_022AFE88;
|
|
L_022AFE88: ; // 0x22afe88
|
|
/* 022AFE88 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFE88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022AFE8C */ _t28 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022AFE8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022AFE90 */ cpu->ctr = cpu->r[12];
|
|
/* 022AFE94 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFE98 */ cpu->r[4] = cpu->r[30] + 0x00000190u;
|
|
/* 022AFE9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFEA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFEA4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFEA4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 022AFEA4 */ if (_t30) goto L_022AFEA8; else goto L_022AFEAC;
|
|
L_022AFEA8: ; // 0x22afea8
|
|
/* 022AFEA8 */ cpu->r[31] = 0x00000000u;
|
|
L_022AFEAC: ; // 0x22afeac
|
|
/* 022AFEAC */ _t31 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022AFEAC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 022AFEB0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[10]);
|
|
/* 022AFEB4 */ /* nop */
|
|
/* 022AFEB8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022AFEB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022AFEBC */ _t32 = cpu->r[29] + 0x00000257u;
|
|
/* 022AFEBC */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[8]);
|
|
/* 022AFEC0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFEC0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 022AFEC0 */ if (_t34) goto L_022AFEC4; else goto L_022B0030;
|
|
L_022AFEC4: ; // 0x22afec4
|
|
/* 022AFEC4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022AFEC8 */ _t35 = cpu->r[29] + 0x00000250u;
|
|
/* 022AFEC8 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 022AFECC */ _t36 = cpu->r[11] + 0x00003120u;
|
|
/* 022AFECC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 022AFED0 */ cpu->r[8] = 0x10060000u;
|
|
/* 022AFED4 */ cpu->f[10] = cpu->f[12] + cpu->f[13];
|
|
/* 022AFED8 */ _t37 = cpu->r[8] + 0x00003124u;
|
|
/* 022AFED8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 022AFEDC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[11]);
|
|
/* 022AFEE0 */ cpu->f[0] = cpu->f[10];
|
|
/* 022AFEE4 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022AFEE4 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022AFEE4 */ if (_t39) goto L_022AFEE8; else goto L_022AFEF0;
|
|
L_022AFEE8: ; // 0x22afee8
|
|
/* 022AFEE8 */ cpu->f[10] = cpu->f[10] - cpu->f[11];
|
|
/* 022AFEEC */ cpu->f[0] = cpu->f[10];
|
|
L_022AFEF0: ; // 0x22afef0
|
|
/* 022AFEF0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022AFEF4 */ _t40 = cpu->r[5] + 0x00003128u;
|
|
/* 022AFEF4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 022AFEF8 */ cpu->r[4] = 0x101F0000u;
|
|
/* 022AFEFC */ cpu->f[1] = cpu->f[10] * cpu->f[12];
|
|
/* 022AFF00 */ _t41 = cpu->r[29] + 0x00000250u;
|
|
/* 022AFF00 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 022AFF04 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 022AFF08 */ cpu->r[4] = cpu->r[4] + 0x0000635Cu;
|
|
/* 022AFF0C */ Gambit_fn_0204EFD8(cpu);
|
|
/* 022AFF10 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AFF14 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022AFF18 */ _t42 = cpu->r[27] + 0x00000000u;
|
|
/* 022AFF18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022AFF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022AFF20 */ cpu->r[31] = cpu->r[3];
|
|
/* 022AFF24 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFF24 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022AFF24 */ if (_t44) goto L_022AFF28; else goto L_022AFF34;
|
|
L_022AFF28: ; // 0x22aff28
|
|
/* 022AFF28 */ _t45 = cpu->r[30] + 0x00000190u;
|
|
/* 022AFF28 */ rbrew_write32(cpu->mem, _t45, cpu->r[28]);
|
|
/* 022AFF2C */ cpu->r[8] = 0x00000001u;
|
|
/* 022AFF30 */ _t46 = cpu->r[27] + 0x00000000u;
|
|
/* 022AFF30 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
L_022AFF34: ; // 0x22aff34
|
|
/* 022AFF34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022AFF38 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFF38 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022AFF38 */ if (_t48) goto L_022AFF5C; else goto L_022AFF3C;
|
|
L_022AFF3C: ; // 0x22aff3c
|
|
/* 022AFF3C */ _t49 = cpu->r[31] + 0x00000000u;
|
|
/* 022AFF3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022AFF40 */ _t50 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022AFF40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022AFF44 */ cpu->ctr = cpu->r[0];
|
|
/* 022AFF48 */ cpu->r[3] = cpu->r[31];
|
|
/* 022AFF4C */ cpu->r[4] = cpu->r[30] + 0x00000190u;
|
|
/* 022AFF50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022AFF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022AFF58 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022AFF58 */ _t52 = _t51 & 0x00000001u;
|
|
/* 022AFF58 */ if (_t52) goto L_022AFF5C; else goto L_022AFF60;
|
|
L_022AFF5C: ; // 0x22aff5c
|
|
/* 022AFF5C */ cpu->r[31] = 0x00000000u;
|
|
L_022AFF60: ; // 0x22aff60
|
|
/* 022AFF60 */ _t53 = cpu->r[31] + 0x00000D44u;
|
|
/* 022AFF60 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 022AFF64 */ cpu->r[12] = 0x10060000u;
|
|
/* 022AFF68 */ /* nop */
|
|
/* 022AFF6C */ _t54 = cpu->r[12] + 0x0000312Cu;
|
|
/* 022AFF6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 022AFF70 */ /* nop */
|
|
/* 022AFF74 */ _t55 = cpu->r[1] + 0x00000060u;
|
|
/* 022AFF74 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t55);
|
|
/* 022AFF78 */ /* nop */
|
|
/* 022AFF7C */ _t56 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022AFF7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 022AFF80 */ cpu->f[12] = cpu->f[13] * cpu->f[12];
|
|
/* 022AFF84 */ _t57 = cpu->r[1] + 0x00000040u;
|
|
/* 022AFF84 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
/* 022AFF88 */ _t58 = cpu->r[1] + 0x00000040u;
|
|
/* 022AFF88 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 022AFF8C */ _t59 = cpu->r[1] + 0x00000020u;
|
|
/* 022AFF8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 022AFF90 */ cpu->f[13] = cpu->f[10] * cpu->f[0];
|
|
/* 022AFF94 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 022AFF94 */ rbrew_write_f32(cpu->mem, _t60, cpu->f[12]);
|
|
/* 022AFF98 */ _t61 = cpu->r[1] + 0x00000024u;
|
|
/* 022AFF98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022AFF9C */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 022AFF9C */ rbrew_write32(cpu->mem, _t62, cpu->r[6]);
|
|
/* 022AFFA0 */ _t63 = cpu->r[1] + 0x00000044u;
|
|
/* 022AFFA0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 022AFFA4 */ _t64 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFFA4 */ rbrew_write_f32(cpu->mem, _t64, cpu->f[13]);
|
|
/* 022AFFA8 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022AFFA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 022AFFAC */ cpu->f[10] = cpu->f[11] * cpu->f[0];
|
|
/* 022AFFB0 */ _t66 = cpu->r[1] + 0x00000048u;
|
|
/* 022AFFB0 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]);
|
|
/* 022AFFB4 */ _t67 = cpu->r[1] + 0x00000048u;
|
|
/* 022AFFB4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 022AFFB8 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFFB8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[10]);
|
|
/* 022AFFBC */ cpu->f[13] = cpu->f[11] * cpu->f[0];
|
|
/* 022AFFC0 */ _t69 = cpu->r[1] + 0x00000010u;
|
|
/* 022AFFC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t69);
|
|
/* 022AFFC4 */ _t70 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022AFFC4 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 022AFFC8 */ _t71 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFFC8 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[13]);
|
|
/* 022AFFCC */ _t72 = cpu->r[1] + 0x00000014u;
|
|
/* 022AFFCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022AFFD0 */ _t73 = cpu->r[1] + 0x00000050u;
|
|
/* 022AFFD0 */ rbrew_write32(cpu->mem, _t73, cpu->r[12]);
|
|
/* 022AFFD4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022AFFD8 */ _t74 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFFD8 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 022AFFDC */ Gambit_fn_022AFD94(cpu);
|
|
/* 022AFFE0 */ /* nop */
|
|
/* 022AFFE4 */ /* nop */
|
|
/* 022AFFE8 */ /* nop */
|
|
/* 022AFFEC */ /* nop */
|
|
/* 022AFFF0 */ _t75 = cpu->r[3] + 0x00000008u;
|
|
/* 022AFFF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 022AFFF4 */ _t76 = cpu->r[1] + 0x00000054u;
|
|
/* 022AFFF4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022AFFF8 */ _t77 = cpu->r[1] + 0x00000028u;
|
|
/* 022AFFF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022AFFFC */ _t78 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022AFFFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B0000 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 022B0004 */ _t79 = cpu->r[1] + 0x00000034u;
|
|
/* 022B0004 */ rbrew_write32(cpu->mem, _t79, cpu->r[11]);
|
|
/* 022B0008 */ _t80 = cpu->r[1] + 0x00000034u;
|
|
/* 022B0008 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 022B000C */ _t81 = cpu->r[1] + 0x00000038u;
|
|
/* 022B000C */ rbrew_write32(cpu->mem, _t81, cpu->r[12]);
|
|
/* 022B0010 */ _t82 = cpu->r[1] + 0x00000038u;
|
|
/* 022B0010 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t82);
|
|
/* 022B0014 */ _t83 = cpu->r[1] + 0x00000030u;
|
|
/* 022B0014 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[12]);
|
|
/* 022B0018 */ _t84 = cpu->r[1] + 0x00000030u;
|
|
/* 022B0018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B001C */ _t85 = cpu->r[29] + 0x0000021Cu;
|
|
/* 022B001C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[10]);
|
|
/* 022B0020 */ _t86 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B0020 */ rbrew_write32(cpu->mem, _t86, cpu->r[0]);
|
|
/* 022B0024 */ _t87 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B0024 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022B0028 */ _t88 = cpu->r[29] + 0x00000220u;
|
|
/* 022B0028 */ rbrew_write_f32(cpu->mem, _t88, cpu->f[11]);
|
|
/* 022B002C */ _t89 = cpu->r[29] + 0x00000224u;
|
|
/* 022B002C */ rbrew_write_f32(cpu->mem, _t89, cpu->f[12]);
|
|
L_022B0030: ; // 0x22b0030
|
|
/* 022B0030 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B0034 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0038 */ _t90 = cpu->r[27] + 0x00000000u;
|
|
/* 022B0038 */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 022B003C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 022B0040 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0044 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0044 */ _t92 = _t91 & 0x00000001u;
|
|
/* 022B0044 */ if (_t92) goto L_022B0048; else goto L_022B0054;
|
|
L_022B0048: ; // 0x22b0048
|
|
/* 022B0048 */ _t93 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0048 */ rbrew_write32(cpu->mem, _t93, cpu->r[28]);
|
|
/* 022B004C */ cpu->r[6] = 0x00000001u;
|
|
/* 022B0050 */ _t94 = cpu->r[27] + 0x00000000u;
|
|
/* 022B0050 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
L_022B0054: ; // 0x22b0054
|
|
/* 022B0054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0058 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0058 */ _t96 = _t95 & 0x00000001u;
|
|
/* 022B0058 */ if (_t96) goto L_022B007C; else goto L_022B005C;
|
|
L_022B005C: ; // 0x22b005c
|
|
/* 022B005C */ _t97 = cpu->r[31] + 0x00000000u;
|
|
/* 022B005C */ cpu->r[7] = rbrew_read32(cpu->mem, _t97);
|
|
/* 022B0060 */ _t98 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022B0060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 022B0064 */ cpu->ctr = cpu->r[8];
|
|
/* 022B0068 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B006C */ cpu->r[4] = cpu->r[30] + 0x00000190u;
|
|
/* 022B0070 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0078 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0078 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022B0078 */ if (_t100) goto L_022B007C; else goto L_022B0080;
|
|
L_022B007C: ; // 0x22b007c
|
|
/* 022B007C */ cpu->r[31] = 0x00000000u;
|
|
L_022B0080: ; // 0x22b0080
|
|
/* 022B0080 */ _t101 = cpu->r[29] + 0x0000022Cu;
|
|
/* 022B0080 */ cpu->r[3] = rbrew_read32(cpu->mem, _t101);
|
|
/* 022B0084 */ cpu->r[4] = cpu->r[29] + 0x0000021Cu;
|
|
/* 022B0088 */ _t102 = cpu->r[31] + 0x00000E04u;
|
|
/* 022B0088 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 022B008C */ Gambit_fn_022483BC(cpu);
|
|
/* 022B0090 */ cpu->r[26] = 0x00000000u;
|
|
/* 022B0094 */ cpu->r[23] = 0x00000007u;
|
|
/* 022B0098 */ cpu->r[25] = 0x00000001u;
|
|
/* 022B009C */ cpu->r[24] = cpu->r[26];
|
|
L_022B00A0: ; // 0x22b00a0
|
|
/* 022B00A0 */ _t103 = cpu->r[29] + 0x00000210u;
|
|
/* 022B00A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 022B00A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 022B00A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B00AC */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B00AC */ _t105 = _t104 & 0x00000001u;
|
|
/* 022B00AC */ if (_t105) goto L_022B00B0; else goto L_022B00B8;
|
|
L_022B00B0: ; // 0x22b00b0
|
|
/* 022B00B0 */ _t106 = cpu->r[29] + 0x00000218u;
|
|
/* 022B00B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t106);
|
|
/* 022B00B4 */ _t107 = cpu->r[11] + cpu->r[24];
|
|
/* 022B00B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t107);
|
|
L_022B00B8: ; // 0x22b00b8
|
|
/* 022B00B8 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B00BC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B00C0 */ Gambit_fn_023C2744(cpu);
|
|
/* 022B00C4 */ _t108 = cpu->r[29] + 0x00000210u;
|
|
/* 022B00C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108);
|
|
/* 022B00C8 */ cpu->r[3] = 0x00000000u;
|
|
/* 022B00CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]);
|
|
/* 022B00D0 */ _t109 = cpu->r[1] + 0x00000008u;
|
|
/* 022B00D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t109);
|
|
/* 022B00D4 */ _t110 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B00D4 */ _t111 = _t110 & 0x00000001u;
|
|
/* 022B00D4 */ if (_t111) goto L_022B00D8; else goto L_022B00E0;
|
|
L_022B00D8: ; // 0x22b00d8
|
|
/* 022B00D8 */ _t112 = cpu->r[29] + 0x00000218u;
|
|
/* 022B00D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t112);
|
|
/* 022B00DC */ _t113 = cpu->r[6] + cpu->r[24];
|
|
/* 022B00DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t113);
|
|
L_022B00E0: ; // 0x22b00e0
|
|
/* 022B00E0 */ Gambit_fn_023C2480(cpu);
|
|
/* 022B00E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B00E8 */ cpu->f[31] = cpu->f[1];
|
|
/* 022B00EC */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B00F0 */ _t114 = cpu->r[27] + 0x00000000u;
|
|
/* 022B00F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t114);
|
|
/* 022B00F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B00F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B00FC */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B00FC */ _t116 = _t115 & 0x00000001u;
|
|
/* 022B00FC */ if (_t116) goto L_022B0100; else goto L_022B0108;
|
|
L_022B0100: ; // 0x22b0100
|
|
/* 022B0100 */ _t117 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0100 */ rbrew_write32(cpu->mem, _t117, cpu->r[28]);
|
|
/* 022B0104 */ _t118 = cpu->r[27] + 0x00000000u;
|
|
/* 022B0104 */ rbrew_write32(cpu->mem, _t118, cpu->r[25]);
|
|
L_022B0108: ; // 0x22b0108
|
|
/* 022B0108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B010C */ _t119 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B010C */ _t120 = _t119 & 0x00000001u;
|
|
/* 022B010C */ if (_t120) goto L_022B0130; else goto L_022B0110;
|
|
L_022B0110: ; // 0x22b0110
|
|
/* 022B0110 */ _t121 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t121);
|
|
/* 022B0114 */ _t122 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022B0114 */ cpu->r[12] = rbrew_read32(cpu->mem, _t122);
|
|
/* 022B0118 */ cpu->ctr = cpu->r[12];
|
|
/* 022B011C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0120 */ cpu->r[4] = cpu->r[30] + 0x00000190u;
|
|
/* 022B0124 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B012C */ _t123 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B012C */ _t124 = _t123 & 0x00000001u;
|
|
/* 022B012C */ if (_t124) goto L_022B0130; else goto L_022B0134;
|
|
L_022B0130: ; // 0x22b0130
|
|
/* 022B0130 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0134: ; // 0x22b0134
|
|
/* 022B0134 */ _t125 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022B0134 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t125);
|
|
/* 022B0138 */ _t126 = cpu->r[29] + 0x00000238u;
|
|
/* 022B0138 */ cpu->r[6] = rbrew_read8(cpu->mem, _t126);
|
|
/* 022B013C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 022B0140 */ /* nop */
|
|
/* 022B0144 */ _t127 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B0144 */ _t128 = _t127 & 0x00000001u;
|
|
/* 022B0144 */ if (_t128) goto L_022B0148; else goto L_022B0164;
|
|
L_022B0148: ; // 0x22b0148
|
|
/* 022B0148 */ cpu->r[5] = cpu->r[6] | cpu->r[0];
|
|
/* 022B014C */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 022B014C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022B0150 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 022B0154 */ _t129 = cpu->r[29] + 0x00000238u;
|
|
/* 022B0154 */ rbrew_write8(cpu->mem, _t129, (uint8_t)cpu->r[5]);
|
|
/* 022B0158 */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 022B015C */ _t130 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B015C */ _t131 = _t130 & 0x00000001u;
|
|
/* 022B015C */ if (_t131) goto L_022B0160; else goto L_022B00A0;
|
|
L_022B0160: ; // 0x22b0160
|
|
/* 022B0160 */ goto L_022B017C;
|
|
L_022B0164: ; // 0x22b0164
|
|
/* 022B0164 */ _t132 = ~cpu->r[0];
|
|
/* 022B0164 */ cpu->r[5] = cpu->r[6] & _t132;
|
|
/* 022B0168 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu;
|
|
/* 022B0168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 022B016C */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 022B0170 */ _t133 = cpu->r[29] + 0x00000238u;
|
|
/* 022B0170 */ rbrew_write8(cpu->mem, _t133, (uint8_t)cpu->r[5]);
|
|
/* 022B0174 */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 022B0178 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0178 */ _t135 = _t134 & 0x00000001u;
|
|
/* 022B0178 */ if (_t135) goto L_022B017C; else goto L_022B00A0;
|
|
L_022B017C: ; // 0x22b017c
|
|
/* 022B017C */ /* nop */
|
|
/* 022B0180 */ _t136 = cpu->r[1] + 0x00000090u;
|
|
/* 022B0180 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t136);
|
|
/* 022B0184 */ _t137 = cpu->r[1] + 0x00000088u;
|
|
/* 022B0184 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t137);
|
|
/* 022B0188 */ _t138 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0188 */ _t139 = _t138 & 0x00000001u;
|
|
/* 022B0188 */ if (_t139) goto L_022B018C; // else: addr-0 trap, fall-through
|
|
L_022B018C: ; // 0x22b018c
|
|
/* 022B018C */ _t140 = cpu->r[1] + 0x0000009Cu;
|
|
/* 022B018C */ cpu->r[0] = rbrew_read32(cpu->mem, _t140);
|
|
/* 022B0190 */ cpu->lr = cpu->r[0];
|
|
/* 022B0194 */ cpu->r[1] = cpu->r[1] + 0x00000098u;
|
|
/* 022B0198 */ return;
|
|
}
|
|
|
|
// fn_022B019C @ 0x22b019c
|
|
void Gambit_fn_022B019C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022B019C: ; // 0x22b019c
|
|
/* 022B019C */ cpu->r[0] = cpu->lr;
|
|
/* 022B01A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B01A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B01A0 */ cpu->r[1] = _t0;
|
|
/* 022B01A4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B01A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B01A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B01AC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B01AC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B01B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B01B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B01B4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B01B8 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022B01BC */ _t4 = cpu->r[6] + 0x00000194u;
|
|
/* 022B01BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B01BC */ cpu->r[6] = _t4;
|
|
/* 022B01C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B01C4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B01C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B01CC */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B01D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B01D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B01D0 */ if (_t6) goto L_022B01D4; else goto L_022B01E8;
|
|
L_022B01D4: ; // 0x22b01d4
|
|
/* 022B01D4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B01D8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022B01DC */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B01E0 */ _t7 = cpu->r[6] + 0x00000000u;
|
|
/* 022B01E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022B01E4 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022B01E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B01E8: ; // 0x22b01e8
|
|
/* 022B01E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B01EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B01EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B01EC */ if (_t10) goto L_022B020C; else goto L_022B01F0;
|
|
L_022B01F0: ; // 0x22b01f0
|
|
/* 022B01F0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B01F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B01F4 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B01F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B01F8 */ cpu->ctr = cpu->r[5];
|
|
/* 022B01FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0208 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0208 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B0208 */ if (_t14) goto L_022B020C; else goto L_022B0210;
|
|
L_022B020C: ; // 0x22b020c
|
|
/* 022B020C */ cpu->r[31] = 0x00000000u;
|
|
L_022B0210: ; // 0x22b0210
|
|
/* 022B0210 */ _t15 = cpu->r[30] + 0x00000238u;
|
|
/* 022B0210 */ cpu->r[3] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022B0214 */ Gambit_fn_0282A11C(cpu);
|
|
/* 022B0218 */ _t16 = cpu->r[31] + 0x00001104u;
|
|
/* 022B0218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B021C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[0]);
|
|
/* 022B0220 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B0224 */ /* nop */
|
|
/* 022B0228 */ cpu->lr = cpu->r[0];
|
|
/* 022B022C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B022C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B0230 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B0234 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B0238 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 022B023C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0240 */ return;
|
|
}
|
|
|
|
// fn_022B01A0 @ 0x22b01a0
|
|
void Gambit_fn_022B01A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022B01A0: ; // 0x22b01a0
|
|
/* 022B01A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B01A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B01A0 */ cpu->r[1] = _t0;
|
|
/* 022B01A4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B01A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B01A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B01AC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B01AC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B01B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B01B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B01B4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B01B8 */ cpu->r[6] = 0x101D0000u;
|
|
/* 022B01BC */ _t4 = cpu->r[6] + 0x00000194u;
|
|
/* 022B01BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B01BC */ cpu->r[6] = _t4;
|
|
/* 022B01C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B01C4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B01C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B01CC */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B01D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B01D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B01D0 */ if (_t6) goto L_022B01D4; else goto L_022B01E8;
|
|
L_022B01D4: ; // 0x22b01d4
|
|
/* 022B01D4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B01D8 */ cpu->r[10] = 0x00000001u;
|
|
/* 022B01DC */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B01E0 */ _t7 = cpu->r[6] + 0x00000000u;
|
|
/* 022B01E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[10]);
|
|
/* 022B01E4 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 022B01E4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B01E8: ; // 0x22b01e8
|
|
/* 022B01E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B01EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B01EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B01EC */ if (_t10) goto L_022B020C; else goto L_022B01F0;
|
|
L_022B01F0: ; // 0x22b01f0
|
|
/* 022B01F0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B01F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B01F4 */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B01F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B01F8 */ cpu->ctr = cpu->r[5];
|
|
/* 022B01FC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0208 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0208 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B0208 */ if (_t14) goto L_022B020C; else goto L_022B0210;
|
|
L_022B020C: ; // 0x22b020c
|
|
/* 022B020C */ cpu->r[31] = 0x00000000u;
|
|
L_022B0210: ; // 0x22b0210
|
|
/* 022B0210 */ _t15 = cpu->r[30] + 0x00000238u;
|
|
/* 022B0210 */ cpu->r[3] = rbrew_read8(cpu->mem, _t15);
|
|
/* 022B0214 */ Gambit_fn_0282A11C(cpu);
|
|
/* 022B0218 */ _t16 = cpu->r[31] + 0x00001104u;
|
|
/* 022B0218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B021C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[0]);
|
|
/* 022B0220 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B0224 */ /* nop */
|
|
/* 022B0228 */ cpu->lr = cpu->r[0];
|
|
/* 022B022C */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 022B022C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B0230 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B0234 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B0238 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 022B023C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0240 */ return;
|
|
}
|
|
|
|
// fn_022B0244 @ 0x22b0244
|
|
void Gambit_fn_022B0244(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022B0244: ; // 0x22b0244
|
|
/* 022B0244 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0248 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0248 */ cpu->r[1] = _t0;
|
|
/* 022B024C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B024C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0250 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0254 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B0258 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0258 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B025C */ _t3 = cpu->r[31] + 0x00000228u;
|
|
/* 022B025C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B0260 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B0264 */ Gambit_fn_023C2744(cpu);
|
|
/* 022B0268 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0268 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B026C */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 022B026C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B0270 */ Gambit_fn_023C2480(cpu);
|
|
/* 022B0274 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0274 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B0278 */ cpu->lr = cpu->r[0];
|
|
/* 022B027C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B027C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B0280 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0284 */ return;
|
|
}
|
|
|
|
// fn_022B0248 @ 0x22b0248
|
|
void Gambit_fn_022B0248(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022B0248: ; // 0x22b0248
|
|
/* 022B0248 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0248 */ cpu->r[1] = _t0;
|
|
/* 022B024C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B024C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0250 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0254 */ cpu->r[4] = 0x00000000u;
|
|
/* 022B0258 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0258 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B025C */ _t3 = cpu->r[31] + 0x00000228u;
|
|
/* 022B025C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B0260 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 022B0264 */ Gambit_fn_023C2744(cpu);
|
|
/* 022B0268 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0268 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B026C */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 022B026C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B0270 */ Gambit_fn_023C2480(cpu);
|
|
/* 022B0274 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0274 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B0278 */ cpu->lr = cpu->r[0];
|
|
/* 022B027C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B027C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B0280 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0284 */ return;
|
|
}
|
|
|
|
// fn_022B0288 @ 0x22b0288
|
|
void Gambit_fn_022B0288(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022B0288: ; // 0x22b0288
|
|
/* 022B0288 */ cpu->r[0] = cpu->lr;
|
|
/* 022B028C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B028C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B028C */ cpu->r[1] = _t0;
|
|
/* 022B0290 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0290 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B0294 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0294 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B0298 */ cpu->r[30] = 0x00000000u;
|
|
/* 022B029C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B029C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B02A0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B02A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B02A4 */ cpu->r[29] = cpu->r[3];
|
|
/* 022B02A8 */ Gambit_fn_022B019C(cpu);
|
|
/* 022B02AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B02B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B02B0 */ if (_t6) goto L_022B032C; else goto L_022B02B4;
|
|
L_022B02B4: ; // 0x22b02b4
|
|
/* 022B02B4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B02B8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B02BC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B02C0 */ _t7 = cpu->r[12] + 0x00000194u;
|
|
/* 022B02C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B02C0 */ cpu->r[12] = _t7;
|
|
/* 022B02C4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B02C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B02CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B02D0 */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B02D4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02D4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B02D4 */ if (_t9) goto L_022B02D8; else goto L_022B02EC;
|
|
L_022B02D8: ; // 0x22b02d8
|
|
/* 022B02D8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B02DC */ cpu->r[8] = 0x00000001u;
|
|
/* 022B02E0 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B02E4 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 022B02E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 022B02E8 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 022B02E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022B02EC: ; // 0x22b02ec
|
|
/* 022B02EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B02F0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02F0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B02F0 */ if (_t13) goto L_022B0310; else goto L_022B02F4;
|
|
L_022B02F4: ; // 0x22b02f4
|
|
/* 022B02F4 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022B02F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B02F8 */ _t15 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022B02F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B02FC */ cpu->ctr = cpu->r[11];
|
|
/* 022B0300 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0304 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B030C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B030C */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B030C */ if (_t17) goto L_022B0310; else goto L_022B0314;
|
|
L_022B0310: ; // 0x22b0310
|
|
/* 022B0310 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0314: ; // 0x22b0314
|
|
/* 022B0314 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B0318 */ Gambit_fn_022B0244(cpu);
|
|
/* 022B031C */ _t18 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022B031C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B0320 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B0324 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0324 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B0324 */ if (_t20) goto L_022B032C; else goto L_022B0328;
|
|
L_022B0328: ; // 0x22b0328
|
|
/* 022B0328 */ cpu->r[30] = 0x00000001u;
|
|
L_022B032C: ; // 0x22b032c
|
|
/* 022B032C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B032C */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B0330 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B0334 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B0338 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0338 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B033C */ cpu->lr = cpu->r[0];
|
|
/* 022B0340 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B0344 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0348 */ return;
|
|
}
|
|
|
|
// fn_022B028C @ 0x22b028c
|
|
void Gambit_fn_022B028C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022B028C: ; // 0x22b028c
|
|
/* 022B028C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B028C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B028C */ cpu->r[1] = _t0;
|
|
/* 022B0290 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0290 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B0294 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0294 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 022B0298 */ cpu->r[30] = 0x00000000u;
|
|
/* 022B029C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B029C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B02A0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B02A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B02A4 */ cpu->r[29] = cpu->r[3];
|
|
/* 022B02A8 */ Gambit_fn_022B019C(cpu);
|
|
/* 022B02AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B02B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B02B0 */ if (_t6) goto L_022B032C; else goto L_022B02B4;
|
|
L_022B02B4: ; // 0x22b02b4
|
|
/* 022B02B4 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B02B8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B02BC */ cpu->r[12] = 0x101D0000u;
|
|
/* 022B02C0 */ _t7 = cpu->r[12] + 0x00000194u;
|
|
/* 022B02C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B02C0 */ cpu->r[12] = _t7;
|
|
/* 022B02C4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B02C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B02CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B02D0 */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B02D4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02D4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B02D4 */ if (_t9) goto L_022B02D8; else goto L_022B02EC;
|
|
L_022B02D8: ; // 0x22b02d8
|
|
/* 022B02D8 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B02DC */ cpu->r[8] = 0x00000001u;
|
|
/* 022B02E0 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B02E4 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 022B02E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 022B02E8 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 022B02E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022B02EC: ; // 0x22b02ec
|
|
/* 022B02EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B02F0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B02F0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B02F0 */ if (_t13) goto L_022B0310; else goto L_022B02F4;
|
|
L_022B02F4: ; // 0x22b02f4
|
|
/* 022B02F4 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022B02F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B02F8 */ _t15 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022B02F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B02FC */ cpu->ctr = cpu->r[11];
|
|
/* 022B0300 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0304 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B030C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B030C */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B030C */ if (_t17) goto L_022B0310; else goto L_022B0314;
|
|
L_022B0310: ; // 0x22b0310
|
|
/* 022B0310 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0314: ; // 0x22b0314
|
|
/* 022B0314 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B0318 */ Gambit_fn_022B0244(cpu);
|
|
/* 022B031C */ _t18 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022B031C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B0320 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B0324 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0324 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B0324 */ if (_t20) goto L_022B032C; else goto L_022B0328;
|
|
L_022B0328: ; // 0x22b0328
|
|
/* 022B0328 */ cpu->r[30] = 0x00000001u;
|
|
L_022B032C: ; // 0x22b032c
|
|
/* 022B032C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B032C */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B0330 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B0334 */ cpu->r[3] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B0338 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0338 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B033C */ cpu->lr = cpu->r[0];
|
|
/* 022B0340 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B0344 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0348 */ return;
|
|
}
|
|
|
|
// fn_022B034C @ 0x22b034c
|
|
void Gambit_fn_022B034C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51;
|
|
|
|
L_022B034C: ; // 0x22b034c
|
|
/* 022B034C */ cpu->r[0] = cpu->lr;
|
|
/* 022B0350 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0350 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0350 */ cpu->r[1] = _t0;
|
|
/* 022B0354 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0354 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B0358 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0358 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B035C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0360 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0360 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B0364 */ _t4 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0364 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B0368 */ /* nop */
|
|
/* 022B036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 022B0370 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0370 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B0370 */ if (_t6) goto L_022B03E0; else goto L_022B0374;
|
|
L_022B0374: ; // 0x22b0374
|
|
/* 022B0374 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B0378 */ _t7 = cpu->r[30] + 0x000000E0u;
|
|
/* 022B0378 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B037C */ _t8 = cpu->r[10] + 0x000030BCu;
|
|
/* 022B037C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B0380 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B0384 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B0384 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B0384 */ if (_t10) goto L_022B03A0; else goto L_022B0388;
|
|
L_022B0388: ; // 0x22b0388
|
|
/* 022B0388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000005u);
|
|
/* 022B038C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B038C */ _t12 = _t11 & 0x00000001u;
|
|
/* 022B038C */ if (_t12) goto L_022B03A8; else goto L_022B0390;
|
|
L_022B0390: ; // 0x22b0390
|
|
/* 022B0390 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B0394 */ cpu->r[4] = 0x00000003u;
|
|
/* 022B0398 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B039C */ goto L_022B04B4;
|
|
L_022B03A0: ; // 0x22b03a0
|
|
/* 022B03A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B03A4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03A4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B03A4 */ if (_t14) goto L_022B03E0; else goto L_022B03A8;
|
|
L_022B03A8: ; // 0x22b03a8
|
|
/* 022B03A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B03AC */ Gambit_fn_022B0288(cpu);
|
|
/* 022B03B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B03B4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03B4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B03B4 */ if (_t16) goto L_022B03B8; else goto L_022B03D0;
|
|
L_022B03B8: ; // 0x22b03b8
|
|
/* 022B03B8 */ _t17 = cpu->r[30] + 0x00000190u;
|
|
/* 022B03B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 022B03BC */ /* nop */
|
|
/* 022B03C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022B03C4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B03C4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B03C4 */ if (_t19) goto L_022B040C; else goto L_022B03C8;
|
|
L_022B03C8: ; // 0x22b03c8
|
|
/* 022B03C8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03C8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B03C8 */ if (_t21) goto L_022B0428; else goto L_022B03CC;
|
|
L_022B03CC: ; // 0x22b03cc
|
|
/* 022B03CC */ goto L_022B03EC;
|
|
L_022B03D0: ; // 0x22b03d0
|
|
/* 022B03D0 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B03D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 022B03D8 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B03DC */ goto L_022B04B4;
|
|
L_022B03E0: ; // 0x22b03e0
|
|
/* 022B03E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022B03E4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B03E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B03E4 */ if (_t23) goto L_022B040C; else goto L_022B03E8;
|
|
L_022B03E8: ; // 0x22b03e8
|
|
/* 022B03E8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B03E8 */ if (_t25) goto L_022B0428; else goto L_022B03EC;
|
|
L_022B03EC: ; // 0x22b03ec
|
|
/* 022B03EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022B03F0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03F0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B03F0 */ if (_t27) goto L_022B04A8; else goto L_022B03F4;
|
|
L_022B03F4: ; // 0x22b03f4
|
|
/* 022B03F4 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022B03F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B03F8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022B03F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B03FC */ cpu->lr = cpu->r[0];
|
|
/* 022B0400 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0400 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B0404 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0408 */ return;
|
|
L_022B040C: ; // 0x22b040c
|
|
/* 022B040C */ _t31 = cpu->r[30] + 0x00000254u;
|
|
/* 022B040C */ cpu->r[9] = rbrew_read8(cpu->mem, _t31);
|
|
/* 022B0410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B0414 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0414 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B0414 */ if (_t33) goto L_022B04B4; else goto L_022B0418;
|
|
L_022B0418: ; // 0x22b0418
|
|
/* 022B0418 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B041C */ cpu->r[4] = 0x00000001u;
|
|
/* 022B0420 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B0424 */ goto L_022B04B4;
|
|
L_022B0428: ; // 0x22b0428
|
|
/* 022B0428 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B042C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0430 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B0434 */ _t34 = cpu->r[9] + 0x00000194u;
|
|
/* 022B0434 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B0434 */ cpu->r[9] = _t34;
|
|
/* 022B0438 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B043C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B0444 */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B0448 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0448 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B0448 */ if (_t36) goto L_022B044C; else goto L_022B0460;
|
|
L_022B044C: ; // 0x22b044c
|
|
/* 022B044C */ cpu->r[0] = 0x10060000u;
|
|
/* 022B0450 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B0454 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B0458 */ _t37 = cpu->r[9] + 0x00000000u;
|
|
/* 022B0458 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 022B045C */ _t38 = cpu->r[4] + 0x00000000u;
|
|
/* 022B045C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
L_022B0460: ; // 0x22b0460
|
|
/* 022B0460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0464 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0464 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B0464 */ if (_t40) goto L_022B0484; else goto L_022B0468;
|
|
L_022B0468: ; // 0x22b0468
|
|
/* 022B0468 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0468 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B046C */ _t42 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022B046C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B0470 */ cpu->ctr = cpu->r[10];
|
|
/* 022B0474 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B047C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0480 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0480 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B0480 */ if (_t44) goto L_022B0484; else goto L_022B0488;
|
|
L_022B0484: ; // 0x22b0484
|
|
/* 022B0484 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0488: ; // 0x22b0488
|
|
/* 022B0488 */ _t45 = cpu->r[30] + 0x00000240u;
|
|
/* 022B0488 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B048C */ _t46 = cpu->r[31] + 0x00001044u;
|
|
/* 022B048C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B0490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 022B0494 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0494 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022B0494 */ if (_t48) goto L_022B04B4; else goto L_022B0498;
|
|
L_022B0498: ; // 0x22b0498
|
|
/* 022B0498 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B049C */ cpu->r[4] = 0x00000000u;
|
|
/* 022B04A0 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B04A4 */ goto L_022B04B4;
|
|
L_022B04A8: ; // 0x22b04a8
|
|
/* 022B04A8 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B04AC */ cpu->r[4] = 0x00000005u;
|
|
/* 022B04B0 */ Gambit_fn_022B247C(cpu);
|
|
L_022B04B4: ; // 0x22b04b4
|
|
/* 022B04B4 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 022B04B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B04B8 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B04B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B04BC */ cpu->lr = cpu->r[0];
|
|
/* 022B04C0 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B04C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B04C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B04C8 */ return;
|
|
}
|
|
|
|
// fn_022B0350 @ 0x22b0350
|
|
void Gambit_fn_022B0350(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51;
|
|
|
|
L_022B0350: ; // 0x22b0350
|
|
/* 022B0350 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0350 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0350 */ cpu->r[1] = _t0;
|
|
/* 022B0354 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0354 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B0358 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0358 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B035C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0360 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0360 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B0364 */ _t4 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0364 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 022B0368 */ /* nop */
|
|
/* 022B036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 022B0370 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0370 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B0370 */ if (_t6) goto L_022B03E0; else goto L_022B0374;
|
|
L_022B0374: ; // 0x22b0374
|
|
/* 022B0374 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B0378 */ _t7 = cpu->r[30] + 0x000000E0u;
|
|
/* 022B0378 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 022B037C */ _t8 = cpu->r[10] + 0x000030BCu;
|
|
/* 022B037C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B0380 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 022B0384 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B0384 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B0384 */ if (_t10) goto L_022B03A0; else goto L_022B0388;
|
|
L_022B0388: ; // 0x22b0388
|
|
/* 022B0388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000005u);
|
|
/* 022B038C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B038C */ _t12 = _t11 & 0x00000001u;
|
|
/* 022B038C */ if (_t12) goto L_022B03A8; else goto L_022B0390;
|
|
L_022B0390: ; // 0x22b0390
|
|
/* 022B0390 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B0394 */ cpu->r[4] = 0x00000003u;
|
|
/* 022B0398 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B039C */ goto L_022B04B4;
|
|
L_022B03A0: ; // 0x22b03a0
|
|
/* 022B03A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B03A4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03A4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B03A4 */ if (_t14) goto L_022B03E0; else goto L_022B03A8;
|
|
L_022B03A8: ; // 0x22b03a8
|
|
/* 022B03A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B03AC */ Gambit_fn_022B0288(cpu);
|
|
/* 022B03B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B03B4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03B4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B03B4 */ if (_t16) goto L_022B03B8; else goto L_022B03D0;
|
|
L_022B03B8: ; // 0x22b03b8
|
|
/* 022B03B8 */ _t17 = cpu->r[30] + 0x00000190u;
|
|
/* 022B03B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17);
|
|
/* 022B03BC */ /* nop */
|
|
/* 022B03C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022B03C4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B03C4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B03C4 */ if (_t19) goto L_022B040C; else goto L_022B03C8;
|
|
L_022B03C8: ; // 0x22b03c8
|
|
/* 022B03C8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03C8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B03C8 */ if (_t21) goto L_022B0428; else goto L_022B03CC;
|
|
L_022B03CC: ; // 0x22b03cc
|
|
/* 022B03CC */ goto L_022B03EC;
|
|
L_022B03D0: ; // 0x22b03d0
|
|
/* 022B03D0 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B03D4 */ cpu->r[4] = 0x00000002u;
|
|
/* 022B03D8 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B03DC */ goto L_022B04B4;
|
|
L_022B03E0: ; // 0x22b03e0
|
|
/* 022B03E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 022B03E4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B03E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B03E4 */ if (_t23) goto L_022B040C; else goto L_022B03E8;
|
|
L_022B03E8: ; // 0x22b03e8
|
|
/* 022B03E8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03E8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B03E8 */ if (_t25) goto L_022B0428; else goto L_022B03EC;
|
|
L_022B03EC: ; // 0x22b03ec
|
|
/* 022B03EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 022B03F0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B03F0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B03F0 */ if (_t27) goto L_022B04A8; else goto L_022B03F4;
|
|
L_022B03F4: ; // 0x22b03f4
|
|
/* 022B03F4 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 022B03F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B03F8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 022B03F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B03FC */ cpu->lr = cpu->r[0];
|
|
/* 022B0400 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0400 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B0404 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B0408 */ return;
|
|
L_022B040C: ; // 0x22b040c
|
|
/* 022B040C */ _t31 = cpu->r[30] + 0x00000254u;
|
|
/* 022B040C */ cpu->r[9] = rbrew_read8(cpu->mem, _t31);
|
|
/* 022B0410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B0414 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0414 */ _t33 = _t32 & 0x00000001u;
|
|
/* 022B0414 */ if (_t33) goto L_022B04B4; else goto L_022B0418;
|
|
L_022B0418: ; // 0x22b0418
|
|
/* 022B0418 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B041C */ cpu->r[4] = 0x00000001u;
|
|
/* 022B0420 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B0424 */ goto L_022B04B4;
|
|
L_022B0428: ; // 0x22b0428
|
|
/* 022B0428 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B042C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0430 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B0434 */ _t34 = cpu->r[9] + 0x00000194u;
|
|
/* 022B0434 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B0434 */ cpu->r[9] = _t34;
|
|
/* 022B0438 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B043C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B0444 */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B0448 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0448 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B0448 */ if (_t36) goto L_022B044C; else goto L_022B0460;
|
|
L_022B044C: ; // 0x22b044c
|
|
/* 022B044C */ cpu->r[0] = 0x10060000u;
|
|
/* 022B0450 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B0454 */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B0458 */ _t37 = cpu->r[9] + 0x00000000u;
|
|
/* 022B0458 */ rbrew_write32(cpu->mem, _t37, cpu->r[12]);
|
|
/* 022B045C */ _t38 = cpu->r[4] + 0x00000000u;
|
|
/* 022B045C */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
L_022B0460: ; // 0x22b0460
|
|
/* 022B0460 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0464 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0464 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B0464 */ if (_t40) goto L_022B0484; else goto L_022B0468;
|
|
L_022B0468: ; // 0x22b0468
|
|
/* 022B0468 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0468 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B046C */ _t42 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022B046C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B0470 */ cpu->ctr = cpu->r[10];
|
|
/* 022B0474 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0478 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B047C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0480 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0480 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B0480 */ if (_t44) goto L_022B0484; else goto L_022B0488;
|
|
L_022B0484: ; // 0x22b0484
|
|
/* 022B0484 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0488: ; // 0x22b0488
|
|
/* 022B0488 */ _t45 = cpu->r[30] + 0x00000240u;
|
|
/* 022B0488 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B048C */ _t46 = cpu->r[31] + 0x00001044u;
|
|
/* 022B048C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B0490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 022B0494 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0494 */ _t48 = _t47 & 0x00000001u;
|
|
/* 022B0494 */ if (_t48) goto L_022B04B4; else goto L_022B0498;
|
|
L_022B0498: ; // 0x22b0498
|
|
/* 022B0498 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B049C */ cpu->r[4] = 0x00000000u;
|
|
/* 022B04A0 */ Gambit_fn_022B247C(cpu);
|
|
/* 022B04A4 */ goto L_022B04B4;
|
|
L_022B04A8: ; // 0x22b04a8
|
|
/* 022B04A8 */ cpu->r[3] = cpu->r[30] + 0x00000184u;
|
|
/* 022B04AC */ cpu->r[4] = 0x00000005u;
|
|
/* 022B04B0 */ Gambit_fn_022B247C(cpu);
|
|
L_022B04B4: ; // 0x22b04b4
|
|
/* 022B04B4 */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 022B04B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 022B04B8 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 022B04B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B04BC */ cpu->lr = cpu->r[0];
|
|
/* 022B04C0 */ _t51 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B04C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B04C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B04C8 */ return;
|
|
}
|
|
|
|
// fn_022B04CC @ 0x22b04cc
|
|
void Gambit_fn_022B04CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_022B04CC: ; // 0x22b04cc
|
|
/* 022B04CC */ _t0 = cpu->r[3] + 0x00000190u;
|
|
/* 022B04CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 022B04D0 */ /* nop */
|
|
/* 022B04D4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B04D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B04DC */ _t1 = cpu->r[12] + 0x00003130u;
|
|
/* 022B04DC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 022B04E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B04E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B04E0 */ if (_t3) goto L_022B04EC; else goto L_022B04E4;
|
|
L_022B04E4: ; // 0x22b04e4
|
|
/* 022B04E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 022B04E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B04E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B04E8 */ if (_t5) goto L_022B04EC; else goto L_022B04FC;
|
|
L_022B04EC: ; // 0x22b04ec
|
|
/* 022B04EC */ _t6 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B04EC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 022B04F0 */ cpu->f[12] = -fma(cpu->f[13], cpu->f[0], -(cpu->f[13]));
|
|
/* 022B04F4 */ _t7 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B04F4 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[12]);
|
|
/* 022B04F8 */ return;
|
|
L_022B04FC: ; // 0x22b04fc
|
|
/* 022B04FC */ cpu->r[12] = 0x10060000u;
|
|
/* 022B0500 */ _t8 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B0500 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B0504 */ _t9 = cpu->r[12] + 0x00003134u;
|
|
/* 022B0504 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 022B0508 */ cpu->f[13] = cpu->f[13] - cpu->f[12];
|
|
/* 022B050C */ cpu->f[12] = fma(cpu->f[13], cpu->f[0], cpu->f[12]);
|
|
/* 022B0510 */ _t10 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B0510 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]);
|
|
/* 022B0514 */ return;
|
|
}
|
|
|
|
// fn_022B0518 @ 0x22b0518
|
|
void Gambit_fn_022B0518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_022B0518: ; // 0x22b0518
|
|
/* 022B0518 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B0518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0518 */ cpu->r[1] = _t0;
|
|
/* 022B051C */ /* nop */
|
|
/* 022B0520 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0524 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B0524 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B0528 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B052C */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 022B052C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B0530 */ _t3 = cpu->r[12] + 0x00000268u;
|
|
/* 022B0530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B0534 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0538 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B053C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B0540 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B0544 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0548 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B054C */ cpu->r[26] = cpu->r[3];
|
|
/* 022B0550 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0554 */ cpu->r[28] = cpu->r[30] + 0x00000204u;
|
|
/* 022B0558 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B055C */ cpu->r[27] = 0x101D0000u;
|
|
/* 022B0560 */ _t4 = cpu->r[27] + 0x00000194u;
|
|
/* 022B0560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B0560 */ cpu->r[27] = _t4;
|
|
/* 022B0564 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022B0568 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B056C */ cpu->r[29] = 0x10060000u;
|
|
/* 022B0570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B0574 */ cpu->r[29] = cpu->r[29] + 0x00002FC4u;
|
|
/* 022B0578 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0578 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B0578 */ if (_t6) goto L_022B057C; else goto L_022B0588;
|
|
L_022B057C: ; // 0x22b057c
|
|
/* 022B057C */ _t7 = cpu->r[25] + 0x00000190u;
|
|
/* 022B057C */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 022B0580 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B0584 */ _t8 = cpu->r[27] + 0x00000000u;
|
|
/* 022B0584 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B0588: ; // 0x22b0588
|
|
/* 022B0588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B058C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B058C */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B058C */ if (_t10) goto L_022B05B0; else goto L_022B0590;
|
|
L_022B0590: ; // 0x22b0590
|
|
/* 022B0590 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0590 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B0594 */ _t12 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022B0594 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B0598 */ cpu->ctr = cpu->r[6];
|
|
/* 022B059C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B05A0 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B05A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B05A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B05AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B05AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B05AC */ if (_t14) goto L_022B05B0; else goto L_022B05B4;
|
|
L_022B05B0: ; // 0x22b05b0
|
|
/* 022B05B0 */ cpu->r[31] = 0x00000000u;
|
|
L_022B05B4: ; // 0x22b05b4
|
|
/* 022B05B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B05B8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B05BC */ _t15 = cpu->r[27] + 0x00000000u;
|
|
/* 022B05BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B05C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B05C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B05C8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B05C8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B05C8 */ if (_t17) goto L_022B05CC; else goto L_022B05D8;
|
|
L_022B05CC: ; // 0x22b05cc
|
|
/* 022B05CC */ _t18 = cpu->r[25] + 0x00000190u;
|
|
/* 022B05CC */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 022B05D0 */ cpu->r[9] = 0x00000001u;
|
|
/* 022B05D4 */ _t19 = cpu->r[27] + 0x00000000u;
|
|
/* 022B05D4 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
L_022B05D8: ; // 0x22b05d8
|
|
/* 022B05D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B05DC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B05DC */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B05DC */ if (_t21) goto L_022B0600; else goto L_022B05E0;
|
|
L_022B05E0: ; // 0x22b05e0
|
|
/* 022B05E0 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 022B05E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B05E4 */ _t23 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022B05E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B05E8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B05EC */ cpu->r[3] = cpu->r[30];
|
|
/* 022B05F0 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B05F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B05F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B05FC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B05FC */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B05FC */ if (_t25) goto L_022B0600; else goto L_022B0604;
|
|
L_022B0600: ; // 0x22b0600
|
|
/* 022B0600 */ cpu->r[30] = 0x00000000u;
|
|
L_022B0604: ; // 0x22b0604
|
|
/* 022B0604 */ cpu->r[4] = cpu->r[28];
|
|
/* 022B0608 */ cpu->r[3] = cpu->r[26] + 0x00000244u;
|
|
/* 022B060C */ Gambit_fn_02C69328(cpu);
|
|
/* 022B0610 */ _t26 = cpu->r[30] + 0x00000E64u;
|
|
/* 022B0610 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B0614 */ _t27 = cpu->r[31] + 0x00000E64u;
|
|
/* 022B0614 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B0618 */ /* nop */
|
|
/* 022B061C */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 022B0620 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B0624 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B0624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B0628 */ cpu->lr = cpu->r[0];
|
|
/* 022B062C */ /* nop */
|
|
/* 022B0630 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B0634 */ cpu->r[3] = rbrew_rlwinm(cpu->r[7], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B0638 */ return;
|
|
}
|
|
|
|
// fn_022B063C @ 0x22b063c
|
|
void Gambit_fn_022B063C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_022B063C: ; // 0x22b063c
|
|
/* 022B063C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B063C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B063C */ cpu->r[1] = _t0;
|
|
/* 022B0640 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0644 */ /* nop */
|
|
/* 022B0648 */ cpu->r[27] = cpu->r[3];
|
|
/* 022B064C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 022B064C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B0650 */ Gambit_fn_022B0518(cpu);
|
|
/* 022B0654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0658 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0658 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B0658 */ if (_t3) goto L_022B072C; else goto L_022B065C;
|
|
L_022B065C: ; // 0x22b065c
|
|
/* 022B065C */ cpu->r[3] = cpu->r[27];
|
|
/* 022B0660 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0664 */ cpu->r[29] = 0x101D0000u;
|
|
/* 022B0668 */ _t4 = cpu->r[29] + 0x00000194u;
|
|
/* 022B0668 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B0668 */ cpu->r[29] = _t4;
|
|
/* 022B066C */ cpu->r[26] = 0x10060000u;
|
|
/* 022B0670 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0674 */ cpu->r[28] = 0x101D0000u;
|
|
/* 022B0678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 022B067C */ cpu->r[26] = cpu->r[26] + 0x00002FC4u;
|
|
/* 022B0680 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0680 */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B0680 */ if (_t6) goto L_022B0684; else goto L_022B0690;
|
|
L_022B0684: ; // 0x22b0684
|
|
/* 022B0684 */ _t7 = cpu->r[28] + 0x00000190u;
|
|
/* 022B0684 */ rbrew_write32(cpu->mem, _t7, cpu->r[26]);
|
|
/* 022B0688 */ cpu->r[8] = 0x00000001u;
|
|
/* 022B068C */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 022B068C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
L_022B0690: ; // 0x22b0690
|
|
/* 022B0690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0694 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0694 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B0694 */ if (_t10) goto L_022B06B8; else goto L_022B0698;
|
|
L_022B0698: ; // 0x22b0698
|
|
/* 022B0698 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0698 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B069C */ _t12 = cpu->r[9] + 0x0000006Cu;
|
|
/* 022B069C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B06A0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B06A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B06A8 */ cpu->r[4] = cpu->r[28] + 0x00000190u;
|
|
/* 022B06AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B06B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B06B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B06B4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B06B4 */ if (_t14) goto L_022B06B8; else goto L_022B06BC;
|
|
L_022B06B8: ; // 0x22b06b8
|
|
/* 022B06B8 */ cpu->r[30] = 0x00000000u;
|
|
L_022B06BC: ; // 0x22b06bc
|
|
/* 022B06BC */ cpu->r[3] = cpu->r[27];
|
|
/* 022B06C0 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B06C4 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 022B06C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B06C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B06CC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B06D0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B06D0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B06D0 */ if (_t17) goto L_022B06D4; else goto L_022B06E0;
|
|
L_022B06D4: ; // 0x22b06d4
|
|
/* 022B06D4 */ _t18 = cpu->r[28] + 0x00000190u;
|
|
/* 022B06D4 */ rbrew_write32(cpu->mem, _t18, cpu->r[26]);
|
|
/* 022B06D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B06DC */ _t19 = cpu->r[29] + 0x00000000u;
|
|
/* 022B06DC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_022B06E0: ; // 0x22b06e0
|
|
/* 022B06E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B06E4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B06E4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B06E4 */ if (_t21) goto L_022B0708; else goto L_022B06E8;
|
|
L_022B06E8: ; // 0x22b06e8
|
|
/* 022B06E8 */ _t22 = cpu->r[31] + 0x00000000u;
|
|
/* 022B06E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B06EC */ _t23 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B06EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B06F0 */ cpu->ctr = cpu->r[0];
|
|
/* 022B06F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B06F8 */ cpu->r[4] = cpu->r[28] + 0x00000190u;
|
|
/* 022B06FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0704 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0704 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B0704 */ if (_t25) goto L_022B0708; else goto L_022B070C;
|
|
L_022B0708: ; // 0x22b0708
|
|
/* 022B0708 */ cpu->r[31] = 0x00000000u;
|
|
L_022B070C: ; // 0x22b070c
|
|
/* 022B070C */ _t26 = cpu->r[31] + 0x00000F84u;
|
|
/* 022B070C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B0710 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B0714 */ _t27 = cpu->r[30] + 0x00000E64u;
|
|
/* 022B0714 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B0718 */ _t28 = cpu->r[11] + 0x000030BCu;
|
|
/* 022B0718 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B071C */ cpu->r[3] = cpu->r[27] + 0x00000140u;
|
|
/* 022B0720 */ Gambit_fn_022B9134(cpu);
|
|
/* 022B0724 */ cpu->r[10] = 0x00000001u;
|
|
/* 022B0728 */ _t29 = cpu->r[27] + 0x00000255u;
|
|
/* 022B0728 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[10]);
|
|
L_022B072C: ; // 0x22b072c
|
|
/* 022B072C */ /* nop */
|
|
/* 022B0730 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 022B0730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 022B0734 */ cpu->lr = cpu->r[0];
|
|
/* 022B0738 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B073C */ return;
|
|
}
|
|
|
|
// fn_022B0740 @ 0x22b0740
|
|
void Gambit_fn_022B0740(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45;
|
|
|
|
L_022B0740: ; // 0x22b0740
|
|
/* 022B0740 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0744 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B0744 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0744 */ cpu->r[1] = _t0;
|
|
/* 022B0748 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0748 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B074C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B074C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B0750 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0750 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B0754 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0758 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0758 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B075C */ _t5 = cpu->r[30] + 0x00000190u;
|
|
/* 022B075C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B0760 */ /* nop */
|
|
/* 022B0764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B0768 */ cpu->r[29] = 0x00000000u;
|
|
/* 022B076C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B076C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B076C */ if (_t7) goto L_022B084C; else goto L_022B0770;
|
|
L_022B0770: ; // 0x22b0770
|
|
/* 022B0770 */ _t8 = cpu->r[30] + 0x00000248u;
|
|
/* 022B0770 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B0774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x0000003Cu);
|
|
/* 022B0778 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0778 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B0778 */ if (_t10) goto L_022B084C; else goto L_022B077C;
|
|
L_022B077C: ; // 0x22b077c
|
|
/* 022B077C */ _t11 = cpu->r[30] + 0x00000256u;
|
|
/* 022B077C */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 022B0780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B0784 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0784 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B0784 */ if (_t13) goto L_022B07A8; else goto L_022B0788;
|
|
L_022B0788: ; // 0x22b0788
|
|
/* 022B0788 */ _t14 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0788 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 022B078C */ _t15 = cpu->r[30] + 0x00000244u;
|
|
/* 022B078C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B0790 */ /* nop */
|
|
/* 022B0794 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B0798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B079C */ _t16 = cpu->r[30] + 0x00000244u;
|
|
/* 022B079C */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 022B07A0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07A0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B07A0 */ if (_t18) goto L_022B0850; else goto L_022B07A4;
|
|
L_022B07A4: ; // 0x22b07a4
|
|
/* 022B07A4 */ goto L_022B07D0;
|
|
L_022B07A8: ; // 0x22b07a8
|
|
/* 022B07A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B07AC */ Gambit_fn_022B0518(cpu);
|
|
/* 022B07B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B07B4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07B4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B07B4 */ if (_t20) goto L_022B07C0; else goto L_022B07B8;
|
|
L_022B07B8: ; // 0x22b07b8
|
|
/* 022B07B8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B07BC */ _t21 = cpu->r[30] + 0x00000256u;
|
|
/* 022B07BC */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
L_022B07C0: ; // 0x22b07c0
|
|
/* 022B07C0 */ _t22 = cpu->r[30] + 0x00000190u;
|
|
/* 022B07C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 022B07C4 */ /* nop */
|
|
/* 022B07C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B07CC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07CC */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B07CC */ if (_t24) goto L_022B0850; else goto L_022B07D0;
|
|
L_022B07D0: ; // 0x22b07d0
|
|
/* 022B07D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B07D4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B07D8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022B07DC */ _t25 = cpu->r[10] + 0x00000194u;
|
|
/* 022B07DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B07DC */ cpu->r[10] = _t25;
|
|
/* 022B07E0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B07E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B07E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B07EC */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B07F0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07F0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B07F0 */ if (_t27) goto L_022B07F4; else goto L_022B0808;
|
|
L_022B07F4: ; // 0x22b07f4
|
|
/* 022B07F4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B07F8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022B07FC */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B0800 */ _t28 = cpu->r[10] + 0x00000000u;
|
|
/* 022B0800 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 022B0804 */ _t29 = cpu->r[4] + 0x00000000u;
|
|
/* 022B0804 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_022B0808: ; // 0x22b0808
|
|
/* 022B0808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B080C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B080C */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B080C */ if (_t31) goto L_022B082C; else goto L_022B0810;
|
|
L_022B0810: ; // 0x22b0810
|
|
/* 022B0810 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0810 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B0814 */ _t33 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B0814 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B0818 */ cpu->ctr = cpu->r[8];
|
|
/* 022B081C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0820 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0828 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0828 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B0828 */ if (_t35) goto L_022B082C; else goto L_022B0830;
|
|
L_022B082C: ; // 0x22b082c
|
|
/* 022B082C */ cpu->r[31] = 0x00000000u;
|
|
L_022B0830: ; // 0x22b0830
|
|
/* 022B0830 */ _t36 = cpu->r[30] + 0x00000244u;
|
|
/* 022B0830 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B0834 */ _t37 = cpu->r[31] + 0x00001224u;
|
|
/* 022B0834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B0838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 022B083C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B083C */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B083C */ if (_t39) goto L_022B0850; else goto L_022B0840;
|
|
L_022B0840: ; // 0x22b0840
|
|
/* 022B0840 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0844 */ Gambit_fn_022B063C(cpu);
|
|
/* 022B0848 */ _t40 = cpu->r[30] + 0x00000244u;
|
|
/* 022B0848 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
L_022B084C: ; // 0x22b084c
|
|
/* 022B084C */ _t41 = cpu->r[30] + 0x00000256u;
|
|
/* 022B084C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[29]);
|
|
L_022B0850: ; // 0x22b0850
|
|
/* 022B0850 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0850 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B0854 */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0854 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B0858 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0858 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B085C */ cpu->lr = cpu->r[0];
|
|
/* 022B0860 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0860 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B0864 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0868 */ return;
|
|
}
|
|
|
|
// fn_022B0744 @ 0x22b0744
|
|
void Gambit_fn_022B0744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45;
|
|
|
|
L_022B0744: ; // 0x22b0744
|
|
/* 022B0744 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B0744 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0744 */ cpu->r[1] = _t0;
|
|
/* 022B0748 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0748 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B074C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 022B074C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B0750 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0750 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B0754 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0758 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0758 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B075C */ _t5 = cpu->r[30] + 0x00000190u;
|
|
/* 022B075C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B0760 */ /* nop */
|
|
/* 022B0764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B0768 */ cpu->r[29] = 0x00000000u;
|
|
/* 022B076C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B076C */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B076C */ if (_t7) goto L_022B084C; else goto L_022B0770;
|
|
L_022B0770: ; // 0x22b0770
|
|
/* 022B0770 */ _t8 = cpu->r[30] + 0x00000248u;
|
|
/* 022B0770 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B0774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x0000003Cu);
|
|
/* 022B0778 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0778 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B0778 */ if (_t10) goto L_022B084C; else goto L_022B077C;
|
|
L_022B077C: ; // 0x22b077c
|
|
/* 022B077C */ _t11 = cpu->r[30] + 0x00000256u;
|
|
/* 022B077C */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 022B0780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B0784 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0784 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B0784 */ if (_t13) goto L_022B07A8; else goto L_022B0788;
|
|
L_022B0788: ; // 0x22b0788
|
|
/* 022B0788 */ _t14 = cpu->r[30] + 0x00000190u;
|
|
/* 022B0788 */ cpu->r[0] = rbrew_read8(cpu->mem, _t14);
|
|
/* 022B078C */ _t15 = cpu->r[30] + 0x00000244u;
|
|
/* 022B078C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B0790 */ /* nop */
|
|
/* 022B0794 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B0798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B079C */ _t16 = cpu->r[30] + 0x00000244u;
|
|
/* 022B079C */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 022B07A0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07A0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B07A0 */ if (_t18) goto L_022B0850; else goto L_022B07A4;
|
|
L_022B07A4: ; // 0x22b07a4
|
|
/* 022B07A4 */ goto L_022B07D0;
|
|
L_022B07A8: ; // 0x22b07a8
|
|
/* 022B07A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B07AC */ Gambit_fn_022B0518(cpu);
|
|
/* 022B07B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B07B4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07B4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 022B07B4 */ if (_t20) goto L_022B07C0; else goto L_022B07B8;
|
|
L_022B07B8: ; // 0x22b07b8
|
|
/* 022B07B8 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B07BC */ _t21 = cpu->r[30] + 0x00000256u;
|
|
/* 022B07BC */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[12]);
|
|
L_022B07C0: ; // 0x22b07c0
|
|
/* 022B07C0 */ _t22 = cpu->r[30] + 0x00000190u;
|
|
/* 022B07C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 022B07C4 */ /* nop */
|
|
/* 022B07C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 022B07CC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07CC */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B07CC */ if (_t24) goto L_022B0850; else goto L_022B07D0;
|
|
L_022B07D0: ; // 0x22b07d0
|
|
/* 022B07D0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B07D4 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B07D8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 022B07DC */ _t25 = cpu->r[10] + 0x00000194u;
|
|
/* 022B07DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B07DC */ cpu->r[10] = _t25;
|
|
/* 022B07E0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B07E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B07E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B07EC */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B07F0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B07F0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B07F0 */ if (_t27) goto L_022B07F4; else goto L_022B0808;
|
|
L_022B07F4: ; // 0x22b07f4
|
|
/* 022B07F4 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B07F8 */ cpu->r[9] = 0x00000001u;
|
|
/* 022B07FC */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B0800 */ _t28 = cpu->r[10] + 0x00000000u;
|
|
/* 022B0800 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 022B0804 */ _t29 = cpu->r[4] + 0x00000000u;
|
|
/* 022B0804 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
L_022B0808: ; // 0x22b0808
|
|
/* 022B0808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B080C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B080C */ _t31 = _t30 & 0x00000001u;
|
|
/* 022B080C */ if (_t31) goto L_022B082C; else goto L_022B0810;
|
|
L_022B0810: ; // 0x22b0810
|
|
/* 022B0810 */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0810 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 022B0814 */ _t33 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B0814 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B0818 */ cpu->ctr = cpu->r[8];
|
|
/* 022B081C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0820 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0828 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0828 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B0828 */ if (_t35) goto L_022B082C; else goto L_022B0830;
|
|
L_022B082C: ; // 0x22b082c
|
|
/* 022B082C */ cpu->r[31] = 0x00000000u;
|
|
L_022B0830: ; // 0x22b0830
|
|
/* 022B0830 */ _t36 = cpu->r[30] + 0x00000244u;
|
|
/* 022B0830 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B0834 */ _t37 = cpu->r[31] + 0x00001224u;
|
|
/* 022B0834 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 022B0838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]);
|
|
/* 022B083C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B083C */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B083C */ if (_t39) goto L_022B0850; else goto L_022B0840;
|
|
L_022B0840: ; // 0x22b0840
|
|
/* 022B0840 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0844 */ Gambit_fn_022B063C(cpu);
|
|
/* 022B0848 */ _t40 = cpu->r[30] + 0x00000244u;
|
|
/* 022B0848 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
L_022B084C: ; // 0x22b084c
|
|
/* 022B084C */ _t41 = cpu->r[30] + 0x00000256u;
|
|
/* 022B084C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[29]);
|
|
L_022B0850: ; // 0x22b0850
|
|
/* 022B0850 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0850 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B0854 */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B0854 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 022B0858 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0858 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B085C */ cpu->lr = cpu->r[0];
|
|
/* 022B0860 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0860 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 022B0864 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0868 */ return;
|
|
}
|
|
|
|
// fn_022B086C @ 0x22b086c
|
|
void Gambit_fn_022B086C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022B086C: ; // 0x22b086c
|
|
/* 022B086C */ cpu->r[0] = cpu->lr;
|
|
/* 022B0870 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0870 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0870 */ cpu->r[1] = _t0;
|
|
/* 022B0874 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0874 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0878 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B087C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B087C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B0880 */ Gambit_fn_022AFDB0(cpu);
|
|
/* 022B0884 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0888 */ Gambit_fn_022B034C(cpu);
|
|
/* 022B088C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0890 */ Gambit_fn_022B04CC(cpu);
|
|
/* 022B0894 */ Gambit_fn_022B0740(cpu);
|
|
/* 022B0898 */ _t3 = cpu->r[31] + 0x00000248u;
|
|
/* 022B0898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B089C */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 022B08A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 022B08A4 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B08A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B08A4 */ if (_t5) goto L_022B08A8; else goto L_022B08AC;
|
|
L_022B08A8: ; // 0x22b08a8
|
|
/* 022B08A8 */ cpu->r[0] = 0x0000003Cu;
|
|
L_022B08AC: ; // 0x22b08ac
|
|
/* 022B08AC */ _t6 = cpu->r[31] + 0x00000248u;
|
|
/* 022B08AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B08B0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B08B4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B08B8 */ cpu->lr = cpu->r[0];
|
|
/* 022B08BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B08C0 */ return;
|
|
}
|
|
|
|
// fn_022B0870 @ 0x22b0870
|
|
void Gambit_fn_022B0870(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_022B0870: ; // 0x22b0870
|
|
/* 022B0870 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0870 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0870 */ cpu->r[1] = _t0;
|
|
/* 022B0874 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0874 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0878 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B087C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B087C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B0880 */ Gambit_fn_022AFDB0(cpu);
|
|
/* 022B0884 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0888 */ Gambit_fn_022B034C(cpu);
|
|
/* 022B088C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0890 */ Gambit_fn_022B04CC(cpu);
|
|
/* 022B0894 */ Gambit_fn_022B0740(cpu);
|
|
/* 022B0898 */ _t3 = cpu->r[31] + 0x00000248u;
|
|
/* 022B0898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B089C */ cpu->r[0] = cpu->r[12] + 0x00000001u;
|
|
/* 022B08A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000003Cu);
|
|
/* 022B08A4 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B08A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 022B08A4 */ if (_t5) goto L_022B08A8; else goto L_022B08AC;
|
|
L_022B08A8: ; // 0x22b08a8
|
|
/* 022B08A8 */ cpu->r[0] = 0x0000003Cu;
|
|
L_022B08AC: ; // 0x22b08ac
|
|
/* 022B08AC */ _t6 = cpu->r[31] + 0x00000248u;
|
|
/* 022B08AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B08B0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B08B4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B08B8 */ cpu->lr = cpu->r[0];
|
|
/* 022B08BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B08C0 */ return;
|
|
}
|
|
|
|
// fn_022B08C4 @ 0x22b08c4
|
|
void Gambit_fn_022B08C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022B08C4: ; // 0x22b08c4
|
|
/* 022B08C4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B08C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B08C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B08C8 */ cpu->r[1] = _t0;
|
|
/* 022B08CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08CC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B08D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B08D4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022B08D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B08D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B08DC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B08DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B08E0 */ _t5 = cpu->r[31] + 0x00000238u;
|
|
/* 022B08E0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B08E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x000000FFu);
|
|
/* 022B08E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B08E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B08E8 */ if (_t7) goto L_022B08EC; else goto L_022B090C;
|
|
L_022B08EC: ; // 0x22b08ec
|
|
/* 022B08EC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B08F0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B08F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B08F4 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022B08F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B08F8 */ cpu->lr = cpu->r[0];
|
|
/* 022B08FC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B0900 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0904 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 022B0908 */ return;
|
|
L_022B090C: ; // 0x22b090c
|
|
/* 022B090C */ cpu->r[30] = 0x101D0000u;
|
|
/* 022B0910 */ cpu->r[29] = 0x00000001u;
|
|
L_022B0914: ; // 0x22b0914
|
|
/* 022B0914 */ _t12 = cpu->r[30] + 0xFFFF9918u;
|
|
/* 022B0914 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B0918 */ Gambit_fn_02830138(cpu);
|
|
/* 022B091C */ cpu->r[11] = 0x00000006u;
|
|
/* 022B0920 */ /* nop */
|
|
/* 022B0924 */ /* nop */
|
|
/* 022B0928 */ _t13 = cpu->r[31] + 0x00000238u;
|
|
/* 022B0928 */ cpu->r[10] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022B092C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B0930 */ cpu->r[9] = cpu->r[10] & cpu->r[0];
|
|
/* 022B0930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B0934 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0934 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B0934 */ if (_t15) goto L_022B0938; else goto L_022B0914;
|
|
L_022B0938: ; // 0x22b0938
|
|
/* 022B0938 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B093C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B093C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B0940 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0940 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B0944 */ cpu->lr = cpu->r[0];
|
|
/* 022B0948 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0948 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B094C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0950 */ return;
|
|
}
|
|
|
|
// fn_022B08C8 @ 0x22b08c8
|
|
void Gambit_fn_022B08C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022B08C8: ; // 0x22b08c8
|
|
/* 022B08C8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 022B08C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B08C8 */ cpu->r[1] = _t0;
|
|
/* 022B08CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08CC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B08D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B08D4 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 022B08D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 022B08D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B08DC */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B08DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B08E0 */ _t5 = cpu->r[31] + 0x00000238u;
|
|
/* 022B08E0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 022B08E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x000000FFu);
|
|
/* 022B08E8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B08E8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B08E8 */ if (_t7) goto L_022B08EC; else goto L_022B090C;
|
|
L_022B08EC: ; // 0x22b08ec
|
|
/* 022B08EC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B08EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t8);
|
|
/* 022B08F0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B08F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B08F4 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 022B08F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B08F8 */ cpu->lr = cpu->r[0];
|
|
/* 022B08FC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 022B08FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B0900 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0904 */ cpu->r[3] = 0xFFFFFFFFu;
|
|
/* 022B0908 */ return;
|
|
L_022B090C: ; // 0x22b090c
|
|
/* 022B090C */ cpu->r[30] = 0x101D0000u;
|
|
/* 022B0910 */ cpu->r[29] = 0x00000001u;
|
|
L_022B0914: ; // 0x22b0914
|
|
/* 022B0914 */ _t12 = cpu->r[30] + 0xFFFF9918u;
|
|
/* 022B0914 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B0918 */ Gambit_fn_02830138(cpu);
|
|
/* 022B091C */ cpu->r[11] = 0x00000006u;
|
|
/* 022B0920 */ /* nop */
|
|
/* 022B0924 */ /* nop */
|
|
/* 022B0928 */ _t13 = cpu->r[31] + 0x00000238u;
|
|
/* 022B0928 */ cpu->r[10] = rbrew_read8(cpu->mem, _t13);
|
|
/* 022B092C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B0930 */ cpu->r[9] = cpu->r[10] & cpu->r[0];
|
|
/* 022B0930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B0934 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0934 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B0934 */ if (_t15) goto L_022B0938; else goto L_022B0914;
|
|
L_022B0938: ; // 0x22b0938
|
|
/* 022B0938 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0938 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B093C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B093C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 022B0940 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0940 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B0944 */ cpu->lr = cpu->r[0];
|
|
/* 022B0948 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0948 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 022B094C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0950 */ return;
|
|
}
|
|
|
|
// fn_022B0954 @ 0x22b0954
|
|
void Gambit_fn_022B0954(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022B0954: ; // 0x22b0954
|
|
/* 022B0954 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0958 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0958 */ cpu->r[1] = _t0;
|
|
/* 022B095C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B095C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0960 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0964 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0964 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B0968 */ Gambit_fn_022B019C(cpu);
|
|
/* 022B096C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0970 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0970 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B0970 */ if (_t4) goto L_022B0974; else goto L_022B09AC;
|
|
L_022B0974: ; // 0x22b0974
|
|
/* 022B0974 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0978 */ Gambit_fn_022B08C4(cpu);
|
|
/* 022B097C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000007u);
|
|
/* 022B0980 */ cpu->r[12] = cpu->r[31] + 0x000001BCu;
|
|
/* 022B0984 */ _t5 = cpu->r[31] + 0x0000023Cu;
|
|
/* 022B0984 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022B0988 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0988 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B0988 */ if (_t7) goto L_022B098C; else goto L_022B0994;
|
|
L_022B098C: ; // 0x22b098c
|
|
/* 022B098C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 022B0990 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B0994: ; // 0x22b0994
|
|
/* 022B0994 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 022B0994 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B0998 */ _t9 = cpu->r[31] + 0x00000140u;
|
|
/* 022B0998 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022B099C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 022B099C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B09A0 */ _t11 = cpu->r[31] + 0x00000144u;
|
|
/* 022B09A0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022B09A4 */ _t12 = cpu->r[12] + 0x00000008u;
|
|
/* 022B09A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B09A8 */ _t13 = cpu->r[31] + 0x00000148u;
|
|
/* 022B09A8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
L_022B09AC: ; // 0x22b09ac
|
|
/* 022B09AC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B09AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B09B0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B09B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B09B4 */ cpu->lr = cpu->r[0];
|
|
/* 022B09B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B09BC */ return;
|
|
}
|
|
|
|
// fn_022B0958 @ 0x22b0958
|
|
void Gambit_fn_022B0958(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022B0958: ; // 0x22b0958
|
|
/* 022B0958 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B0958 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0958 */ cpu->r[1] = _t0;
|
|
/* 022B095C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B095C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0960 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0964 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0964 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B0968 */ Gambit_fn_022B019C(cpu);
|
|
/* 022B096C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0970 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0970 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B0970 */ if (_t4) goto L_022B0974; else goto L_022B09AC;
|
|
L_022B0974: ; // 0x22b0974
|
|
/* 022B0974 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0978 */ Gambit_fn_022B08C4(cpu);
|
|
/* 022B097C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000007u);
|
|
/* 022B0980 */ cpu->r[12] = cpu->r[31] + 0x000001BCu;
|
|
/* 022B0984 */ _t5 = cpu->r[31] + 0x0000023Cu;
|
|
/* 022B0984 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 022B0988 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0988 */ _t7 = _t6 & 0x00000001u;
|
|
/* 022B0988 */ if (_t7) goto L_022B098C; else goto L_022B0994;
|
|
L_022B098C: ; // 0x22b098c
|
|
/* 022B098C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[3] * (int32_t)0x0000000Cu);
|
|
/* 022B0990 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_022B0994: ; // 0x22b0994
|
|
/* 022B0994 */ _t8 = cpu->r[12] + 0x00000000u;
|
|
/* 022B0994 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 022B0998 */ _t9 = cpu->r[31] + 0x00000140u;
|
|
/* 022B0998 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 022B099C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 022B099C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B09A0 */ _t11 = cpu->r[31] + 0x00000144u;
|
|
/* 022B09A0 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 022B09A4 */ _t12 = cpu->r[12] + 0x00000008u;
|
|
/* 022B09A4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B09A8 */ _t13 = cpu->r[31] + 0x00000148u;
|
|
/* 022B09A8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
L_022B09AC: ; // 0x22b09ac
|
|
/* 022B09AC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 022B09AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B09B0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B09B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B09B4 */ cpu->lr = cpu->r[0];
|
|
/* 022B09B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B09BC */ return;
|
|
}
|
|
|
|
// fn_022B09C0 @ 0x22b09c0
|
|
void Gambit_fn_022B09C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92;
|
|
double _ft30, _ft31;
|
|
|
|
L_022B09C0: ; // 0x22b09c0
|
|
/* 022B09C0 */ _t0 = cpu->r[1] + 0xFFFFFF58u;
|
|
/* 022B09C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B09C0 */ cpu->r[1] = _t0;
|
|
/* 022B09C4 */ /* nop */
|
|
/* 022B09C8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B09CC */ _t1 = cpu->r[1] + 0x00000098u;
|
|
/* 022B09CC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 022B09D0 */ /* nop */
|
|
/* 022B09D4 */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B09D4 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B09D8 */ _t3 = cpu->r[1] + 0x00000088u;
|
|
/* 022B09D8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022B09DC */ _t4 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B09DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B09E0 */ /* nop */
|
|
/* 022B09E4 */ _t5 = cpu->r[1] + 0x00000090u;
|
|
/* 022B09E4 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 022B09E8 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B09EC */ _t6 = cpu->r[28] + 0x00000255u;
|
|
/* 022B09EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022B09F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B09F4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B09F4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B09F4 */ if (_t8) goto L_022B0C70; else goto L_022B09F8;
|
|
L_022B09F8: ; // 0x22b09f8
|
|
/* 022B09F8 */ cpu->r[27] = 0x00000000u;
|
|
/* 022B09FC */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B0A00 */ _t9 = cpu->r[28] + 0x00000255u;
|
|
/* 022B0A00 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[27]);
|
|
/* 022B0A04 */ _t10 = cpu->r[12] + 0x00006000u;
|
|
/* 022B0A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B0A08 */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 022B0A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B0A0C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0A10 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B0A14 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B0A18 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0A1C */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B0A20 */ /* nop */
|
|
/* 022B0A24 */ /* nop */
|
|
/* 022B0A28 */ _t12 = cpu->r[28] + 0x00000118u;
|
|
/* 022B0A28 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B0A2C */ /* nop */
|
|
/* 022B0A30 */ /* nop */
|
|
/* 022B0A34 */ _t13 = cpu->r[3] + 0x0000024Cu;
|
|
/* 022B0A34 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 022B0A38 */ cpu->f[7] = cpu->f[9] - cpu->f[11];
|
|
/* 022B0A3C */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 022B0A3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B0A40 */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 022B0A40 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[7]);
|
|
/* 022B0A44 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 022B0A44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B0A48 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0A48 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 022B0A4C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0A4C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 022B0A50 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0A50 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]);
|
|
/* 022B0A54 */ cpu->f[8] = cpu->f[30] * cpu->f[30];
|
|
/* 022B0A58 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0A58 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 022B0A5C */ cpu->r[11] = 0x10060000u;
|
|
/* 022B0A60 */ cpu->f[9] = fma(cpu->f[9], cpu->f[9], cpu->f[8]);
|
|
/* 022B0A64 */ _t21 = cpu->r[11] + 0x000030BCu;
|
|
/* 022B0A64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B0A68 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[12]);
|
|
/* 022B0A6C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0A6C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 022B0A70 */ cpu->r[26] = cpu->r[3];
|
|
/* 022B0A74 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B0A74 */ _t24 = _t23 & 0x00000001u;
|
|
/* 022B0A74 */ if (_t24) goto L_022B0AAC; else goto L_022B0A78;
|
|
L_022B0A78: ; // 0x22b0a78
|
|
/* 022B0A78 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B0A7C */ /* nop */
|
|
/* 022B0A80 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0A84 */ cpu->r[30] = 0x101D0000u;
|
|
/* 022B0A88 */ cpu->r[29] = 0x101D0000u;
|
|
/* 022B0A8C */ _t25 = cpu->r[30] + 0x00000194u;
|
|
/* 022B0A8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B0A8C */ cpu->r[30] = _t25;
|
|
/* 022B0A90 */ cpu->r[29] = cpu->r[29] + 0x00000190u;
|
|
/* 022B0A94 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0A98 */ cpu->r[25] = 0x10060000u;
|
|
/* 022B0A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B0AA0 */ cpu->r[25] = cpu->r[25] + 0x00002FC4u;
|
|
/* 022B0AA4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0AA4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B0AA4 */ if (_t27) goto L_022B0AA8; else goto L_022B0B1C;
|
|
L_022B0AA8: ; // 0x22b0aa8
|
|
/* 022B0AA8 */ goto L_022B0B10;
|
|
L_022B0AAC: ; // 0x22b0aac
|
|
/* 022B0AAC */ cpu->r[8] = 0x10060000u;
|
|
/* 022B0AB0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0AB4 */ _t28 = cpu->r[8] + 0x00003138u;
|
|
/* 022B0AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 022B0AB8 */ _t29 = cpu->r[6] + 0x0000312Cu;
|
|
/* 022B0AB8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B0ABC */ _ft30 = sqrt(cpu->f[9]);
|
|
/* 022B0ABC */ _ft31 = (double)(int32_t)0x00000001u;
|
|
/* 022B0ABC */ cpu->f[12] = _ft31 / _ft30;
|
|
/* 022B0AC0 */ cpu->f[8] = cpu->f[12] * cpu->f[12];
|
|
/* 022B0AC4 */ cpu->f[10] = cpu->f[12] * cpu->f[13];
|
|
/* 022B0AC8 */ cpu->f[8] = -fma(cpu->f[8], cpu->f[9], -(cpu->f[0]));
|
|
/* 022B0ACC */ cpu->f[12] = cpu->f[8] * cpu->f[10];
|
|
/* 022B0AD0 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0AD0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 022B0AD4 */ /* nop */
|
|
/* 022B0AD8 */ cpu->f[30] = cpu->f[30] * cpu->f[12];
|
|
/* 022B0ADC */ cpu->r[3] = cpu->r[28];
|
|
/* 022B0AE0 */ /* nop */
|
|
/* 022B0AE4 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0AE4 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[30]);
|
|
/* 022B0AE8 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0AEC */ cpu->r[30] = 0x101D0000u;
|
|
/* 022B0AF0 */ cpu->r[29] = 0x101D0000u;
|
|
/* 022B0AF4 */ _t34 = cpu->r[30] + 0x00000194u;
|
|
/* 022B0AF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B0AF4 */ cpu->r[30] = _t34;
|
|
/* 022B0AF8 */ cpu->r[29] = cpu->r[29] + 0x00000190u;
|
|
/* 022B0AFC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0B00 */ cpu->r[25] = 0x10060000u;
|
|
/* 022B0B04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B0B08 */ cpu->r[25] = cpu->r[25] + 0x00002FC4u;
|
|
/* 022B0B0C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0B0C */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B0B0C */ if (_t36) goto L_022B0B10; else goto L_022B0B1C;
|
|
L_022B0B10: ; // 0x22b0b10
|
|
/* 022B0B10 */ _t37 = cpu->r[29] + 0x00000000u;
|
|
/* 022B0B10 */ rbrew_write32(cpu->mem, _t37, cpu->r[25]);
|
|
/* 022B0B14 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B0B18 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0B18 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
L_022B0B1C: ; // 0x22b0b1c
|
|
/* 022B0B1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0B20 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0B20 */ _t40 = _t39 & 0x00000001u;
|
|
/* 022B0B20 */ if (_t40) goto L_022B0B44; else goto L_022B0B24;
|
|
L_022B0B24: ; // 0x22b0b24
|
|
/* 022B0B24 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0B24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B0B28 */ _t42 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B0B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 022B0B2C */ cpu->ctr = cpu->r[0];
|
|
/* 022B0B30 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0B34 */ cpu->r[4] = cpu->r[29];
|
|
/* 022B0B38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0B40 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0B40 */ _t44 = _t43 & 0x00000001u;
|
|
/* 022B0B40 */ if (_t44) goto L_022B0B44; else goto L_022B0B48;
|
|
L_022B0B44: ; // 0x22b0b44
|
|
/* 022B0B44 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0B48: ; // 0x22b0b48
|
|
/* 022B0B48 */ _t45 = cpu->r[31] + 0x00000EC4u;
|
|
/* 022B0B48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 022B0B4C */ /* nop */
|
|
/* 022B0B50 */ /* nop */
|
|
/* 022B0B54 */ _t46 = cpu->r[1] + 0x00000024u;
|
|
/* 022B0B54 */ cpu->r[7] = rbrew_read32(cpu->mem, _t46);
|
|
/* 022B0B58 */ cpu->f[0] = cpu->f[30] * cpu->f[10];
|
|
/* 022B0B5C */ _t47 = cpu->r[1] + 0x00000028u;
|
|
/* 022B0B5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 022B0B60 */ _t48 = cpu->r[1] + 0x00000048u;
|
|
/* 022B0B60 */ rbrew_write32(cpu->mem, _t48, cpu->r[7]);
|
|
/* 022B0B64 */ _t49 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B0B64 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 022B0B68 */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B0B68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50);
|
|
/* 022B0B6C */ _t51 = cpu->r[1] + 0x0000004Cu;
|
|
/* 022B0B6C */ rbrew_write32(cpu->mem, _t51, cpu->r[8]);
|
|
/* 022B0B70 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B0B74 */ _t52 = cpu->r[1] + 0x00000050u;
|
|
/* 022B0B74 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 022B0B78 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B0B7C */ _t53 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0B7C */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 022B0B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B0B84 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0B88 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0B88 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B0B88 */ if (_t55) goto L_022B0B8C; else goto L_022B0B98;
|
|
L_022B0B8C: ; // 0x22b0b8c
|
|
/* 022B0B8C */ _t56 = cpu->r[29] + 0x00000000u;
|
|
/* 022B0B8C */ rbrew_write32(cpu->mem, _t56, cpu->r[25]);
|
|
/* 022B0B90 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B0B94 */ _t57 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0B94 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
L_022B0B98: ; // 0x22b0b98
|
|
/* 022B0B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0B9C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0B9C */ _t59 = _t58 & 0x00000001u;
|
|
/* 022B0B9C */ if (_t59) goto L_022B0BC0; else goto L_022B0BA0;
|
|
L_022B0BA0: ; // 0x22b0ba0
|
|
/* 022B0BA0 */ _t60 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0BA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 022B0BA4 */ _t61 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B0BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 022B0BA8 */ cpu->ctr = cpu->r[0];
|
|
/* 022B0BAC */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0BB0 */ cpu->r[4] = cpu->r[29];
|
|
/* 022B0BB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B0BBC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0BBC */ _t63 = _t62 & 0x00000001u;
|
|
/* 022B0BBC */ if (_t63) goto L_022B0BC0; else goto L_022B0BC4;
|
|
L_022B0BC0: ; // 0x22b0bc0
|
|
/* 022B0BC0 */ cpu->r[31] = 0x00000000u;
|
|
L_022B0BC4: ; // 0x22b0bc4
|
|
/* 022B0BC4 */ cpu->r[6] = 0x101F0000u;
|
|
/* 022B0BC8 */ _t64 = cpu->r[31] + 0x00000F24u;
|
|
/* 022B0BC8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 022B0BCC */ cpu->r[6] = cpu->r[6] + 0x00006350u;
|
|
/* 022B0BD0 */ _t65 = cpu->r[1] + 0x00000050u;
|
|
/* 022B0BD0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t65);
|
|
/* 022B0BD4 */ /* nop */
|
|
/* 022B0BD8 */ _t66 = cpu->r[6] + 0x00000008u;
|
|
/* 022B0BD8 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 022B0BDC */ /* nop */
|
|
/* 022B0BE0 */ /* nop */
|
|
/* 022B0BE4 */ /* nop */
|
|
/* 022B0BE8 */ _t67 = cpu->r[1] + 0x00000030u;
|
|
/* 022B0BE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 022B0BEC */ _t68 = cpu->r[1] + 0x00000034u;
|
|
/* 022B0BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 022B0BF0 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B0BF4 */ _t69 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0BF4 */ rbrew_write32(cpu->mem, _t69, cpu->r[9]);
|
|
/* 022B0BF8 */ cpu->f[0] = cpu->f[7] * cpu->f[11];
|
|
/* 022B0BFC */ _t70 = cpu->r[1] + 0x00000058u;
|
|
/* 022B0BFC */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
/* 022B0C00 */ /* nop */
|
|
/* 022B0C04 */ _t71 = cpu->r[11] + 0x0000313Cu;
|
|
/* 022B0C04 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 022B0C08 */ _t72 = cpu->r[1] + 0x00000038u;
|
|
/* 022B0C08 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 022B0C0C */ /* nop */
|
|
/* 022B0C10 */ _t73 = cpu->r[1] + 0x00000038u;
|
|
/* 022B0C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 022B0C14 */ /* nop */
|
|
/* 022B0C18 */ _t74 = cpu->r[1] + 0x00000040u;
|
|
/* 022B0C18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 022B0C1C */ cpu->r[10] = 0x00000002u;
|
|
/* 022B0C20 */ _t75 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0C20 */ rbrew_write32(cpu->mem, _t75, cpu->r[0]);
|
|
/* 022B0C24 */ _t76 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0C24 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 022B0C28 */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0C28 */ rbrew_write32(cpu->mem, _t77, cpu->r[10]);
|
|
/* 022B0C2C */ cpu->f[8] = cpu->f[9] + cpu->f[10];
|
|
/* 022B0C30 */ _t78 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B0C30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B0C34 */ _t79 = cpu->r[1] + 0x00000064u;
|
|
/* 022B0C34 */ rbrew_write32(cpu->mem, _t79, cpu->r[7]);
|
|
/* 022B0C38 */ cpu->f[2] = cpu->f[1];
|
|
/* 022B0C3C */ _t80 = cpu->r[1] + 0x00000044u;
|
|
/* 022B0C3C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[8]);
|
|
/* 022B0C40 */ _t81 = cpu->r[1] + 0x00000044u;
|
|
/* 022B0C40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B0C44 */ cpu->r[3] = cpu->r[26];
|
|
/* 022B0C48 */ cpu->r[4] = cpu->r[1] + 0x00000060u;
|
|
/* 022B0C4C */ _t82 = cpu->r[1] + 0x00000060u;
|
|
/* 022B0C4C */ rbrew_write32(cpu->mem, _t82, cpu->r[5]);
|
|
/* 022B0C50 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 022B0C54 */ _t83 = cpu->r[1] + 0x00000068u;
|
|
/* 022B0C54 */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 022B0C58 */ Gambit_fn_025BD378(cpu);
|
|
/* 022B0C5C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B0C60 */ Gambit_fn_022B0954(cpu);
|
|
/* 022B0C64 */ _t84 = cpu->r[28] + 0x00000248u;
|
|
/* 022B0C64 */ rbrew_write32(cpu->mem, _t84, cpu->r[27]);
|
|
/* 022B0C68 */ cpu->r[5] = 0x00000001u;
|
|
/* 022B0C6C */ _t85 = cpu->r[28] + 0x00000254u;
|
|
/* 022B0C6C */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[5]);
|
|
L_022B0C70: ; // 0x22b0c70
|
|
/* 022B0C70 */ /* nop */
|
|
/* 022B0C74 */ _t86 = cpu->r[1] + 0x00000090u;
|
|
/* 022B0C74 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t86);
|
|
/* 022B0C78 */ _t87 = cpu->r[1] + 0x000000A0u;
|
|
/* 022B0C78 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 022B0C7C */ _t88 = cpu->r[1] + 0x00000088u;
|
|
/* 022B0C7C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t88);
|
|
/* 022B0C80 */ _t89 = cpu->r[1] + 0x00000098u;
|
|
/* 022B0C80 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 022B0C84 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B0C84 */ _t91 = _t90 & 0x00000001u;
|
|
/* 022B0C84 */ if (_t91) goto L_022B0C88; // else: addr-0 trap, fall-through
|
|
L_022B0C88: ; // 0x22b0c88
|
|
/* 022B0C88 */ _t92 = cpu->r[1] + 0x000000ACu;
|
|
/* 022B0C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92);
|
|
/* 022B0C8C */ cpu->lr = cpu->r[0];
|
|
/* 022B0C90 */ cpu->r[1] = cpu->r[1] + 0x000000A8u;
|
|
/* 022B0C94 */ return;
|
|
}
|
|
|
|
// fn_022B0C98 @ 0x22b0c98
|
|
void Gambit_fn_022B0C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_022709EC: ; // 0x22709ec
|
|
/* 022709EC */ cpu->r[0] = cpu->lr;
|
|
/* 022709F0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 022709F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022709F0 */ cpu->r[1] = _t0;
|
|
/* 022709F4 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022709F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022709F8 */ cpu->r[12] = 0x10060000u;
|
|
/* 022709FC */ _t2 = cpu->r[12] + 0xFFFF8F14u;
|
|
/* 022709FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02270A00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02270A04 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270A04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02270A08 */ _t4 = cpu->r[31] + 0x0000012Cu;
|
|
/* 02270A08 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02270A0C */ _t5 = cpu->r[31] + 0x0000011Cu;
|
|
/* 02270A0C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02270A10 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 02270A10 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 02270A14 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02270A14 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[7]);
|
|
/* 02270A18 */ _t8 = cpu->r[31] + 0x00000140u;
|
|
/* 02270A18 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02270A1C */ _t9 = cpu->r[31] + 0x0000017Cu;
|
|
/* 02270A1C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 02270A20 */ _t10 = cpu->r[31] + 0x00000120u;
|
|
/* 02270A20 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 02270A24 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[7], cpu->f[0]);
|
|
/* 02270A28 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02270A28 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[10]);
|
|
/* 02270A2C */ _t12 = cpu->r[31] + 0x00000124u;
|
|
/* 02270A2C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02270A30 */ _t13 = cpu->r[31] + 0x00000138u;
|
|
/* 02270A30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 02270A34 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02270A34 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]);
|
|
/* 02270A38 */ _t15 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02270A38 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 02270A3C */ _t16 = cpu->r[31] + 0x00000130u;
|
|
/* 02270A3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02270A40 */ _t17 = cpu->r[31] + 0x00000128u;
|
|
/* 02270A40 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02270A44 */ _t18 = cpu->r[1] + 0x00000038u;
|
|
/* 02270A44 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 02270A48 */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02270A48 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[8]);
|
|
/* 02270A4C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 02270A4C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 02270A50 */ _t21 = cpu->r[31] + 0x00000134u;
|
|
/* 02270A50 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 02270A54 */ _t22 = cpu->r[31] + 0x00000148u;
|
|
/* 02270A54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02270A58 */ _t23 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02270A58 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[9]);
|
|
/* 02270A5C */ _t24 = cpu->r[1] + 0x00000040u;
|
|
/* 02270A5C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]);
|
|
/* 02270A60 */ _t25 = cpu->r[31] + 0x0000013Cu;
|
|
/* 02270A60 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 02270A64 */ _t26 = cpu->r[31] + 0x00000144u;
|
|
/* 02270A64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02270A68 */ _t27 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02270A68 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[6]);
|
|
/* 02270A6C */ _t28 = cpu->r[1] + 0x00000030u;
|
|
/* 02270A6C */ rbrew_write_f32(cpu->mem, _t28, cpu->f[11]);
|
|
/* 02270A70 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02270A70 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02270A70 */ if (_t30) goto L_02270A90; else goto L_02270A74;
|
|
L_02270A74: ; // 0x2270a74
|
|
/* 02270A74 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A78 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02270A78 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 02270A7C */ cpu->r[4] = cpu->r[3];
|
|
/* 02270A80 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02270A80 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[7]);
|
|
/* 02270A84 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02270A88 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 02270A88 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[7]);
|
|
/* 02270A8C */ Gambit_fn_02253CE4(cpu);
|
|
L_02270A90: ; // 0x2270a90
|
|
/* 02270A90 */ _t34 = cpu->r[31] + 0x00000008u;
|
|
/* 02270A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02270A94 */ _t35 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270A94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02270A98 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 02270A9C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02270AA0 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 02270AA4 */ _t36 = cpu->r[31] + 0x0000007Cu;
|
|
/* 02270AA4 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[0]);
|
|
/* 02270AA8 */ Gambit_fn_02C69510(cpu);
|
|
/* 02270AAC */ cpu->r[4] = 0x00000003u;
|
|
/* 02270AB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270AB4 */ Gambit_fn_02980304(cpu);
|
|
/* 02270AB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02270ABC */ Gambit_fn_02980318(cpu);
|
|
/* 02270AC0 */ _t37 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02270AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02270AC4 */ _t38 = cpu->r[1] + 0x00000044u;
|
|
/* 02270AC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02270AC8 */ cpu->lr = cpu->r[0];
|
|
/* 02270ACC */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02270AD0 */ return;
|
|
L_022B0C98: ; // 0x22b0c98
|
|
/* 022B0C98 */ goto L_022709EC;
|
|
}
|
|
|
|
// fn_022B0C9C @ 0x22b0c9c
|
|
void Gambit_fn_022B0C9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022B0C9C: ; // 0x22b0c9c
|
|
/* 022B0C9C */ cpu->r[0] = cpu->lr;
|
|
/* 022B0CA0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 022B0CA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0CA0 */ cpu->r[1] = _t0;
|
|
/* 022B0CA4 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0CA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0CA8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 022B0CA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B0CAC */ cpu->r[30] = cpu->r[4];
|
|
/* 022B0CB0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B0CB4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0CB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022B0CB8 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 022B0CB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B0CBC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B0CC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0CC4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0CC4 */ rbrew_write16(cpu->mem, _t5, (uint16_t)cpu->r[31]);
|
|
/* 022B0CC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0CCC */ _t6 = cpu->r[1] + 0x0000000Au;
|
|
/* 022B0CCC */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[4]);
|
|
/* 022B0CD0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022B0CD4 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022B0CD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B0CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B0CDC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0CDC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B0CDC */ if (_t9) goto L_022B0CE8; else goto L_022B0CE0;
|
|
L_022B0CE0: ; // 0x22b0ce0
|
|
/* 022B0CE0 */ _t10 = cpu->r[30] + 0x00000024u;
|
|
/* 022B0CE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B0CE4 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022B0CE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
L_022B0CE8: ; // 0x22b0ce8
|
|
/* 022B0CE8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0CE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B0CEC */ _t13 = cpu->r[3] + 0x00000088u;
|
|
/* 022B0CEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B0CF0 */ _t14 = cpu->r[12] + 0x00000064u;
|
|
/* 022B0CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B0CF4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B0CF8 */ _t15 = cpu->r[1] + 0x0000000Au;
|
|
/* 022B0CF8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B0CFC */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D00 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0D04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0D08 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B0D0C */ _t16 = cpu->r[29] + 0x0000024Cu;
|
|
/* 022B0D0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B0D10 */ _t17 = cpu->r[12] + 0x000030BCu;
|
|
/* 022B0D10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B0D14 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0D14 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022B0D18 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D1C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0D1C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B0D20 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0D24 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0D24 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022B0D28 */ Gambit_fn_021620C4(cpu);
|
|
/* 022B0D2C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0D30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B0D34 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D38 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0D3C */ Gambit_fn_02980840(cpu);
|
|
/* 022B0D40 */ _t21 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0D40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B0D44 */ _t22 = cpu->r[1] + 0x00000064u;
|
|
/* 022B0D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B0D48 */ _t23 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0D48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B0D4C */ cpu->lr = cpu->r[0];
|
|
/* 022B0D50 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 022B0D50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B0D54 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 022B0D58 */ return;
|
|
}
|
|
|
|
// fn_022B0CA0 @ 0x22b0ca0
|
|
void Gambit_fn_022B0CA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_022B0CA0: ; // 0x22b0ca0
|
|
/* 022B0CA0 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 022B0CA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0CA0 */ cpu->r[1] = _t0;
|
|
/* 022B0CA4 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0CA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B0CA8 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 022B0CA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B0CAC */ cpu->r[30] = cpu->r[4];
|
|
/* 022B0CB0 */ cpu->r[31] = 0x00000000u;
|
|
/* 022B0CB4 */ _t3 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0CB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 022B0CB8 */ _t4 = cpu->r[1] + 0x00000064u;
|
|
/* 022B0CB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B0CBC */ cpu->r[29] = cpu->r[3];
|
|
/* 022B0CC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0CC4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 022B0CC4 */ rbrew_write16(cpu->mem, _t5, (uint16_t)cpu->r[31]);
|
|
/* 022B0CC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0CCC */ _t6 = cpu->r[1] + 0x0000000Au;
|
|
/* 022B0CCC */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[4]);
|
|
/* 022B0CD0 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 022B0CD4 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 022B0CD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B0CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B0CDC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0CDC */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B0CDC */ if (_t9) goto L_022B0CE8; else goto L_022B0CE0;
|
|
L_022B0CE0: ; // 0x22b0ce0
|
|
/* 022B0CE0 */ _t10 = cpu->r[30] + 0x00000024u;
|
|
/* 022B0CE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B0CE4 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 022B0CE4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
L_022B0CE8: ; // 0x22b0ce8
|
|
/* 022B0CE8 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0CE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B0CEC */ _t13 = cpu->r[3] + 0x00000088u;
|
|
/* 022B0CEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B0CF0 */ _t14 = cpu->r[12] + 0x00000064u;
|
|
/* 022B0CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B0CF4 */ cpu->ctr = cpu->r[0];
|
|
/* 022B0CF8 */ _t15 = cpu->r[1] + 0x0000000Au;
|
|
/* 022B0CF8 */ cpu->r[6] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 022B0CFC */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D00 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0D04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B0D08 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B0D0C */ _t16 = cpu->r[29] + 0x0000024Cu;
|
|
/* 022B0D0C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 022B0D10 */ _t17 = cpu->r[12] + 0x000030BCu;
|
|
/* 022B0D10 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 022B0D14 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 022B0D14 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 022B0D18 */ cpu->r[3] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D1C */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0D1C */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 022B0D20 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B0D24 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 022B0D24 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 022B0D28 */ Gambit_fn_021620C4(cpu);
|
|
/* 022B0D2C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0D30 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B0D34 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 022B0D38 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 022B0D3C */ Gambit_fn_02980840(cpu);
|
|
/* 022B0D40 */ _t21 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0D40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B0D44 */ _t22 = cpu->r[1] + 0x00000064u;
|
|
/* 022B0D44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B0D48 */ _t23 = cpu->r[1] + 0x0000005Cu;
|
|
/* 022B0D48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B0D4C */ cpu->lr = cpu->r[0];
|
|
/* 022B0D50 */ _t24 = cpu->r[1] + 0x00000058u;
|
|
/* 022B0D50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 022B0D54 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 022B0D58 */ return;
|
|
}
|
|
|
|
// fn_022B0D5C @ 0x22b0d5c
|
|
void Gambit_fn_022B0D5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151;
|
|
|
|
L_022B0D5C: ; // 0x22b0d5c
|
|
/* 022B0D5C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 022B0D5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B0D5C */ cpu->r[1] = _t0;
|
|
/* 022B0D60 */ /* nop */
|
|
/* 022B0D64 */ cpu->r[0] = cpu->lr;
|
|
/* 022B0D68 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 022B0D68 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 022B0D6C */ _t2 = cpu->r[1] + 0x00000040u;
|
|
/* 022B0D6C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 022B0D70 */ /* nop */
|
|
/* 022B0D74 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 022B0D74 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 022B0D78 */ /* nop */
|
|
/* 022B0D7C */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 022B0D7C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 022B0D80 */ /* nop */
|
|
/* 022B0D84 */ _t5 = cpu->r[1] + 0x00000048u;
|
|
/* 022B0D84 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 022B0D88 */ _t6 = cpu->r[1] + 0x00000054u;
|
|
/* 022B0D88 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 022B0D8C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0D90 */ _t7 = cpu->r[1] + 0x00000038u;
|
|
/* 022B0D90 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 022B0D94 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0D94 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B0D94 */ if (_t9) goto L_022B0D98; else goto L_022B0DA8;
|
|
L_022B0D98: ; // 0x22b0d98
|
|
/* 022B0D98 */ cpu->r[3] = 0x00001230u;
|
|
/* 022B0D9C */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0DA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B0DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B0DA4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0DA4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 022B0DA4 */ if (_t11) goto L_022B12A0; else goto L_022B0DA8;
|
|
L_022B0DA8: ; // 0x22b0da8
|
|
/* 022B0DA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B0DAC */ Gambit_fn_02318964(cpu);
|
|
/* 022B0DB0 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B0DB4 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B0DB8 */ cpu->r[0] = cpu->r[0] + 0x0000301Cu;
|
|
/* 022B0DBC */ _t12 = cpu->r[12] + 0x000030BCu;
|
|
/* 022B0DBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 022B0DC0 */ cpu->r[27] = 0x10110000u;
|
|
/* 022B0DC4 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B0DC8 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 022B0DC8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 022B0DCC */ cpu->r[27] = cpu->r[27] + 0x00000A2Cu;
|
|
/* 022B0DD0 */ cpu->r[30] = cpu->r[31] + 0x00000CF0u;
|
|
/* 022B0DD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0DD4 */ _t14 = cpu->r[11] + 0x00003140u;
|
|
/* 022B0DD4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 022B0DD8 */ cpu->r[29] = 0x00000000u;
|
|
/* 022B0DDC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0DDC */ _t16 = _t15 & 0x00000001u;
|
|
/* 022B0DDC */ if (_t16) goto L_022B0DE0; else goto L_022B0DF0;
|
|
L_022B0DE0: ; // 0x22b0de0
|
|
/* 022B0DE0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0DE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0DE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0DEC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0DEC */ _t18 = _t17 & 0x00000001u;
|
|
/* 022B0DEC */ if (_t18) goto L_022B0E2C; else goto L_022B0DF0;
|
|
L_022B0DF0: ; // 0x22b0df0
|
|
/* 022B0DF0 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0DF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0DF8 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0DFC */ cpu->r[5] = cpu->r[5] + 0x000031DCu;
|
|
/* 022B0E00 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0E04 */ cpu->r[6] = cpu->r[6] + 0x0000317Cu;
|
|
/* 022B0E08 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0E0C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0E10 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0E14 */ _t19 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0E14 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[30]);
|
|
/* 022B0E18 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B0E1C */ _t20 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0E1C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[31]);
|
|
/* 022B0E20 */ _t21 = cpu->r[10] + 0x00003144u;
|
|
/* 022B0E20 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 022B0E24 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0E24 */ rbrew_write32(cpu->mem, _t22, cpu->r[27]);
|
|
/* 022B0E28 */ _t23 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0E28 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
L_022B0E2C: ; // 0x22b0e2c
|
|
/* 022B0E2C */ cpu->r[30] = cpu->r[31] + 0x00000D50u;
|
|
/* 022B0E2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0E30 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0E30 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B0E30 */ if (_t25) goto L_022B0E34; else goto L_022B0E44;
|
|
L_022B0E34: ; // 0x22b0e34
|
|
/* 022B0E34 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0E38 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0E3C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0E40 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0E40 */ _t27 = _t26 & 0x00000001u;
|
|
/* 022B0E40 */ if (_t27) goto L_022B0E88; else goto L_022B0E44;
|
|
L_022B0E44: ; // 0x22b0e44
|
|
/* 022B0E44 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0E48 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0E4C */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0E50 */ cpu->r[5] = cpu->r[5] + 0x00003254u;
|
|
/* 022B0E54 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0E58 */ cpu->r[6] = cpu->r[6] + 0x00003268u;
|
|
/* 022B0E5C */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0E60 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0E64 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0E68 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B0E6C */ _t28 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0E6C */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 022B0E70 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B0E74 */ _t29 = cpu->r[9] + 0x00003148u;
|
|
/* 022B0E74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 022B0E78 */ _t30 = cpu->r[8] + 0x0000313Cu;
|
|
/* 022B0E78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 022B0E7C */ _t31 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0E7C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 022B0E80 */ _t32 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0E80 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[12]);
|
|
/* 022B0E84 */ _t33 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0E84 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[31]);
|
|
L_022B0E88: ; // 0x22b0e88
|
|
/* 022B0E88 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B0E8C */ cpu->r[30] = cpu->r[31] + 0x00000DB0u;
|
|
/* 022B0E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0E90 */ _t34 = cpu->r[7] + 0x0000314Cu;
|
|
/* 022B0E90 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 022B0E94 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0E94 */ _t36 = _t35 & 0x00000001u;
|
|
/* 022B0E94 */ if (_t36) goto L_022B0E98; else goto L_022B0EA8;
|
|
L_022B0E98: ; // 0x22b0e98
|
|
/* 022B0E98 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0E9C */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0EA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0EA4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0EA4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 022B0EA4 */ if (_t38) goto L_022B0EE4; else goto L_022B0EA8;
|
|
L_022B0EA8: ; // 0x22b0ea8
|
|
/* 022B0EA8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0EAC */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0EB0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0EB4 */ cpu->r[5] = cpu->r[5] + 0x00003284u;
|
|
/* 022B0EB8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0EBC */ cpu->r[6] = cpu->r[6] + 0x000031B4u;
|
|
/* 022B0EC0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0EC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0EC8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0ECC */ _t39 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0ECC */ rbrew_write_f32(cpu->mem, _t39, cpu->f[31]);
|
|
/* 022B0ED0 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B0ED4 */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0ED4 */ rbrew_write32(cpu->mem, _t40, cpu->r[27]);
|
|
/* 022B0ED8 */ _t41 = cpu->r[12] + 0x00003150u;
|
|
/* 022B0ED8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 022B0EDC */ _t42 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0EDC */ rbrew_write_f32(cpu->mem, _t42, cpu->f[29]);
|
|
/* 022B0EE0 */ _t43 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0EE0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[13]);
|
|
L_022B0EE4: ; // 0x22b0ee4
|
|
/* 022B0EE4 */ cpu->r[30] = cpu->r[31] + 0x00000E10u;
|
|
/* 022B0EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0EE8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0EE8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 022B0EE8 */ if (_t45) goto L_022B0EEC; else goto L_022B0EFC;
|
|
L_022B0EEC: ; // 0x22b0eec
|
|
/* 022B0EEC */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0EF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0EF4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0EF8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0EF8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 022B0EF8 */ if (_t47) goto L_022B0F40; else goto L_022B0EFC;
|
|
L_022B0EFC: ; // 0x22b0efc
|
|
/* 022B0EFC */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0F00 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0F04 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0F08 */ cpu->r[5] = cpu->r[5] + 0x000031C8u;
|
|
/* 022B0F0C */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0F10 */ cpu->r[6] = cpu->r[6] + 0x00003298u;
|
|
/* 022B0F14 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0F18 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0F1C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0F20 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B0F24 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0F24 */ rbrew_write32(cpu->mem, _t48, cpu->r[27]);
|
|
/* 022B0F28 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B0F2C */ _t49 = cpu->r[11] + 0x00003154u;
|
|
/* 022B0F2C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t49);
|
|
/* 022B0F30 */ _t50 = cpu->r[10] + 0x00003158u;
|
|
/* 022B0F30 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 022B0F34 */ _t51 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0F34 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 022B0F38 */ _t52 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0F38 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[12]);
|
|
/* 022B0F3C */ _t53 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0F3C */ rbrew_write_f32(cpu->mem, _t53, cpu->f[31]);
|
|
L_022B0F40: ; // 0x22b0f40
|
|
/* 022B0F40 */ cpu->r[30] = cpu->r[31] + 0x00000E70u;
|
|
/* 022B0F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0F44 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0F44 */ _t55 = _t54 & 0x00000001u;
|
|
/* 022B0F44 */ if (_t55) goto L_022B0F48; else goto L_022B0F58;
|
|
L_022B0F48: ; // 0x22b0f48
|
|
/* 022B0F48 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0F4C */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0F50 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0F50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0F54 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0F54 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B0F54 */ if (_t57) goto L_022B0F94; else goto L_022B0F58;
|
|
L_022B0F58: ; // 0x22b0f58
|
|
/* 022B0F58 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0F5C */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0F60 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0F64 */ cpu->r[5] = cpu->r[5] + 0x00003194u;
|
|
/* 022B0F68 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0F6C */ cpu->r[6] = cpu->r[6] + 0x000031F4u;
|
|
/* 022B0F70 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0F74 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0F78 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0F7C */ _t58 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0F7C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[30]);
|
|
/* 022B0F80 */ cpu->r[9] = 0x10060000u;
|
|
/* 022B0F84 */ _t59 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0F84 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[31]);
|
|
/* 022B0F88 */ _t60 = cpu->r[9] + 0x0000315Cu;
|
|
/* 022B0F88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 022B0F8C */ _t61 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0F8C */ rbrew_write32(cpu->mem, _t61, cpu->r[27]);
|
|
/* 022B0F90 */ _t62 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0F90 */ rbrew_write_f32(cpu->mem, _t62, cpu->f[13]);
|
|
L_022B0F94: ; // 0x22b0f94
|
|
/* 022B0F94 */ cpu->r[30] = cpu->r[31] + 0x00000ED0u;
|
|
/* 022B0F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0F98 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0F98 */ _t64 = _t63 & 0x00000001u;
|
|
/* 022B0F98 */ if (_t64) goto L_022B0F9C; else goto L_022B0FAC;
|
|
L_022B0F9C: ; // 0x22b0f9c
|
|
/* 022B0F9C */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0FA0 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0FA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0FA8 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0FA8 */ _t66 = _t65 & 0x00000001u;
|
|
/* 022B0FA8 */ if (_t66) goto L_022B0FE8; else goto L_022B0FAC;
|
|
L_022B0FAC: ; // 0x22b0fac
|
|
/* 022B0FAC */ cpu->r[5] = 0x10060000u;
|
|
/* 022B0FB0 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B0FB4 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B0FB8 */ cpu->r[5] = cpu->r[5] + 0x000031A4u;
|
|
/* 022B0FBC */ cpu->r[8] = 0x00000000u;
|
|
/* 022B0FC0 */ cpu->r[6] = cpu->r[6] + 0x00003200u;
|
|
/* 022B0FC4 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B0FC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B0FCC */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B0FD0 */ _t67 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B0FD0 */ rbrew_write_f32(cpu->mem, _t67, cpu->f[30]);
|
|
/* 022B0FD4 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B0FD8 */ _t68 = cpu->r[30] + 0x00000058u;
|
|
/* 022B0FD8 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[31]);
|
|
/* 022B0FDC */ _t69 = cpu->r[8] + 0x00003160u;
|
|
/* 022B0FDC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B0FE0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 022B0FE0 */ rbrew_write32(cpu->mem, _t70, cpu->r[27]);
|
|
/* 022B0FE4 */ _t71 = cpu->r[30] + 0x00000054u;
|
|
/* 022B0FE4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[0]);
|
|
L_022B0FE8: ; // 0x22b0fe8
|
|
/* 022B0FE8 */ cpu->r[30] = cpu->r[31] + 0x00000F30u;
|
|
/* 022B0FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0FEC */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0FEC */ _t73 = _t72 & 0x00000001u;
|
|
/* 022B0FEC */ if (_t73) goto L_022B0FF0; else goto L_022B1000;
|
|
L_022B0FF0: ; // 0x22b0ff0
|
|
/* 022B0FF0 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B0FF4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B0FF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B0FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B0FFC */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B0FFC */ _t75 = _t74 & 0x00000001u;
|
|
/* 022B0FFC */ if (_t75) goto L_022B1044; else goto L_022B1000;
|
|
L_022B1000: ; // 0x22b1000
|
|
/* 022B1000 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B1004 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B1008 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B100C */ cpu->r[5] = cpu->r[5] + 0x00003174u;
|
|
/* 022B1010 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B1014 */ cpu->r[6] = cpu->r[6] + 0x000032A8u;
|
|
/* 022B1018 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B101C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1020 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B1024 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B1028 */ _t76 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1028 */ rbrew_write32(cpu->mem, _t76, cpu->r[27]);
|
|
/* 022B102C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1030 */ _t77 = cpu->r[7] + 0x00003148u;
|
|
/* 022B1030 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t77);
|
|
/* 022B1034 */ _t78 = cpu->r[12] + 0x0000313Cu;
|
|
/* 022B1034 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t78);
|
|
/* 022B1038 */ _t79 = cpu->r[30] + 0x00000054u;
|
|
/* 022B1038 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[12]);
|
|
/* 022B103C */ _t80 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B103C */ rbrew_write_f32(cpu->mem, _t80, cpu->f[13]);
|
|
/* 022B1040 */ _t81 = cpu->r[30] + 0x00000058u;
|
|
/* 022B1040 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[31]);
|
|
L_022B1044: ; // 0x22b1044
|
|
/* 022B1044 */ cpu->r[30] = cpu->r[31] + 0x00000F90u;
|
|
/* 022B1044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1048 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1048 */ _t83 = _t82 & 0x00000001u;
|
|
/* 022B1048 */ if (_t83) goto L_022B104C; else goto L_022B105C;
|
|
L_022B104C: ; // 0x22b104c
|
|
/* 022B104C */ cpu->r[3] = 0x00000060u;
|
|
/* 022B1050 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B1054 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1058 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1058 */ _t85 = _t84 & 0x00000001u;
|
|
/* 022B1058 */ if (_t85) goto L_022B1098; else goto L_022B105C;
|
|
L_022B105C: ; // 0x22b105c
|
|
/* 022B105C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B1060 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B1064 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B1068 */ cpu->r[5] = cpu->r[5] + 0x0000320Cu;
|
|
/* 022B106C */ cpu->r[8] = 0x00000000u;
|
|
/* 022B1070 */ cpu->r[6] = cpu->r[6] + 0x000032B4u;
|
|
/* 022B1074 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B1078 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B107C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B1080 */ _t86 = cpu->r[30] + 0x00000058u;
|
|
/* 022B1080 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[31]);
|
|
/* 022B1084 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B1088 */ _t87 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1088 */ rbrew_write32(cpu->mem, _t87, cpu->r[27]);
|
|
/* 022B108C */ _t88 = cpu->r[11] + 0x00003164u;
|
|
/* 022B108C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 022B1090 */ _t89 = cpu->r[30] + 0x00000054u;
|
|
/* 022B1090 */ rbrew_write_f32(cpu->mem, _t89, cpu->f[30]);
|
|
/* 022B1094 */ _t90 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B1094 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[12]);
|
|
L_022B1098: ; // 0x22b1098
|
|
/* 022B1098 */ cpu->r[28] = 0x10110000u;
|
|
/* 022B109C */ cpu->r[30] = cpu->r[31] + 0x00000FF0u;
|
|
/* 022B109C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B10A0 */ cpu->r[28] = cpu->r[28] + 0x0000095Cu;
|
|
/* 022B10A4 */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B10A4 */ _t92 = _t91 & 0x00000001u;
|
|
/* 022B10A4 */ if (_t92) goto L_022B10A8; else goto L_022B10B8;
|
|
L_022B10A8: ; // 0x22b10a8
|
|
/* 022B10A8 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B10AC */ Gambit_fn_02801A78(cpu);
|
|
/* 022B10B0 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B10B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B10B4 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B10B4 */ _t94 = _t93 & 0x00000001u;
|
|
/* 022B10B4 */ if (_t94) goto L_022B10F4; else goto L_022B10B8;
|
|
L_022B10B8: ; // 0x22b10b8
|
|
/* 022B10B8 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B10BC */ cpu->r[4] = cpu->r[31];
|
|
/* 022B10C0 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B10C4 */ cpu->r[5] = cpu->r[5] + 0x000032C0u;
|
|
/* 022B10C8 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B10CC */ cpu->r[6] = cpu->r[6] + 0x000032CCu;
|
|
/* 022B10D0 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B10D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B10D8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B10DC */ _t95 = cpu->r[30] + 0x00000000u;
|
|
/* 022B10DC */ rbrew_write32(cpu->mem, _t95, cpu->r[28]);
|
|
/* 022B10E0 */ cpu->r[8] = 0x00000028u;
|
|
/* 022B10E4 */ _t96 = cpu->r[30] + 0x00000058u;
|
|
/* 022B10E4 */ rbrew_write32(cpu->mem, _t96, cpu->r[29]);
|
|
/* 022B10E8 */ cpu->r[0] = 0x000000C8u;
|
|
/* 022B10EC */ _t97 = cpu->r[30] + 0x00000054u;
|
|
/* 022B10EC */ rbrew_write32(cpu->mem, _t97, cpu->r[8]);
|
|
/* 022B10F0 */ _t98 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B10F0 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
L_022B10F4: ; // 0x22b10f4
|
|
/* 022B10F4 */ cpu->r[30] = cpu->r[31] + 0x00001050u;
|
|
/* 022B10F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B10F8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B10F8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 022B10F8 */ if (_t100) goto L_022B10FC; else goto L_022B110C;
|
|
L_022B10FC: ; // 0x22b10fc
|
|
/* 022B10FC */ cpu->r[3] = 0x00000060u;
|
|
/* 022B1100 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B1104 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1108 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1108 */ _t102 = _t101 & 0x00000001u;
|
|
/* 022B1108 */ if (_t102) goto L_022B1150; else goto L_022B110C;
|
|
L_022B110C: ; // 0x22b110c
|
|
/* 022B110C */ cpu->r[5] = 0x10060000u;
|
|
/* 022B1110 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B1114 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B1118 */ cpu->r[5] = cpu->r[5] + 0x00003218u;
|
|
/* 022B111C */ cpu->r[8] = 0x00000000u;
|
|
/* 022B1120 */ cpu->r[6] = cpu->r[6] + 0x000032D8u;
|
|
/* 022B1124 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B1128 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B112C */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B1130 */ cpu->r[8] = 0x10060000u;
|
|
/* 022B1134 */ _t103 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1134 */ rbrew_write32(cpu->mem, _t103, cpu->r[27]);
|
|
/* 022B1138 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B113C */ _t104 = cpu->r[8] + 0x00003168u;
|
|
/* 022B113C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104);
|
|
/* 022B1140 */ _t105 = cpu->r[12] + 0x0000316Cu;
|
|
/* 022B1140 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105);
|
|
/* 022B1144 */ _t106 = cpu->r[30] + 0x00000054u;
|
|
/* 022B1144 */ rbrew_write_f32(cpu->mem, _t106, cpu->f[13]);
|
|
/* 022B1148 */ _t107 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B1148 */ rbrew_write_f32(cpu->mem, _t107, cpu->f[0]);
|
|
/* 022B114C */ _t108 = cpu->r[30] + 0x00000058u;
|
|
/* 022B114C */ rbrew_write_f32(cpu->mem, _t108, cpu->f[31]);
|
|
L_022B1150: ; // 0x22b1150
|
|
/* 022B1150 */ cpu->r[30] = cpu->r[31] + 0x000010B0u;
|
|
/* 022B1150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1154 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1154 */ _t110 = _t109 & 0x00000001u;
|
|
/* 022B1154 */ if (_t110) goto L_022B1158; else goto L_022B1168;
|
|
L_022B1158: ; // 0x22b1158
|
|
/* 022B1158 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B115C */ Gambit_fn_02801A78(cpu);
|
|
/* 022B1160 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1164 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1164 */ _t112 = _t111 & 0x00000001u;
|
|
/* 022B1164 */ if (_t112) goto L_022B11A4; else goto L_022B1168;
|
|
L_022B1168: ; // 0x22b1168
|
|
/* 022B1168 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B116C */ cpu->r[4] = cpu->r[31];
|
|
/* 022B1170 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B1174 */ cpu->r[5] = cpu->r[5] + 0x0000322Cu;
|
|
/* 022B1178 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B117C */ cpu->r[6] = cpu->r[6] + 0x000032E8u;
|
|
/* 022B1180 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B1184 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1188 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B118C */ _t113 = cpu->r[30] + 0x00000000u;
|
|
/* 022B118C */ rbrew_write32(cpu->mem, _t113, cpu->r[28]);
|
|
/* 022B1190 */ cpu->r[11] = 0x00000005u;
|
|
/* 022B1194 */ _t114 = cpu->r[30] + 0x00000058u;
|
|
/* 022B1194 */ rbrew_write32(cpu->mem, _t114, cpu->r[29]);
|
|
/* 022B1198 */ cpu->r[0] = 0x00000007u;
|
|
/* 022B119C */ _t115 = cpu->r[30] + 0x00000054u;
|
|
/* 022B119C */ rbrew_write32(cpu->mem, _t115, cpu->r[11]);
|
|
/* 022B11A0 */ _t116 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B11A0 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
L_022B11A4: ; // 0x22b11a4
|
|
/* 022B11A4 */ cpu->r[10] = 0x10060000u;
|
|
/* 022B11A8 */ cpu->r[30] = cpu->r[31] + 0x00001110u;
|
|
/* 022B11A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B11AC */ _t117 = cpu->r[10] + 0x0000310Cu;
|
|
/* 022B11AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t117);
|
|
/* 022B11B0 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B11B0 */ _t119 = _t118 & 0x00000001u;
|
|
/* 022B11B0 */ if (_t119) goto L_022B11B4; else goto L_022B11C4;
|
|
L_022B11B4: ; // 0x22b11b4
|
|
/* 022B11B4 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B11B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B11BC */ cpu->r[30] = cpu->r[3];
|
|
/* 022B11BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B11C0 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B11C0 */ _t121 = _t120 & 0x00000001u;
|
|
/* 022B11C0 */ if (_t121) goto L_022B11F8; else goto L_022B11C4;
|
|
L_022B11C4: ; // 0x22b11c4
|
|
/* 022B11C4 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B11C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B11CC */ cpu->r[6] = 0x10060000u;
|
|
/* 022B11D0 */ cpu->r[5] = cpu->r[5] + 0x000032F4u;
|
|
/* 022B11D4 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B11D8 */ cpu->r[6] = cpu->r[6] + 0x00003300u;
|
|
/* 022B11DC */ cpu->r[7] = cpu->r[5];
|
|
/* 022B11E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B11E4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B11E8 */ _t122 = cpu->r[30] + 0x00000058u;
|
|
/* 022B11E8 */ rbrew_write_f32(cpu->mem, _t122, cpu->f[31]);
|
|
/* 022B11EC */ _t123 = cpu->r[30] + 0x00000054u;
|
|
/* 022B11EC */ rbrew_write_f32(cpu->mem, _t123, cpu->f[30]);
|
|
/* 022B11F0 */ _t124 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B11F0 */ rbrew_write_f32(cpu->mem, _t124, cpu->f[29]);
|
|
/* 022B11F4 */ _t125 = cpu->r[30] + 0x00000000u;
|
|
/* 022B11F4 */ rbrew_write32(cpu->mem, _t125, cpu->r[27]);
|
|
L_022B11F8: ; // 0x22b11f8
|
|
/* 022B11F8 */ cpu->r[30] = cpu->r[31] + 0x00001170u;
|
|
/* 022B11F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B11FC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B11FC */ _t127 = _t126 & 0x00000001u;
|
|
/* 022B11FC */ if (_t127) goto L_022B1200; else goto L_022B1210;
|
|
L_022B1200: ; // 0x22b1200
|
|
/* 022B1200 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B1204 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B1208 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B120C */ _t128 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B120C */ _t129 = _t128 & 0x00000001u;
|
|
/* 022B120C */ if (_t129) goto L_022B124C; else goto L_022B1210;
|
|
L_022B1210: ; // 0x22b1210
|
|
/* 022B1210 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B1214 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B1218 */ cpu->r[6] = 0x10060000u;
|
|
/* 022B121C */ cpu->r[5] = cpu->r[5] + 0x00003318u;
|
|
/* 022B1220 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B1224 */ cpu->r[6] = cpu->r[6] + 0x00003324u;
|
|
/* 022B1228 */ cpu->r[7] = cpu->r[5];
|
|
/* 022B122C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1230 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B1234 */ _t130 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B1234 */ rbrew_write_f32(cpu->mem, _t130, cpu->f[30]);
|
|
/* 022B1238 */ cpu->r[7] = 0x10060000u;
|
|
/* 022B123C */ _t131 = cpu->r[30] + 0x00000058u;
|
|
/* 022B123C */ rbrew_write_f32(cpu->mem, _t131, cpu->f[31]);
|
|
/* 022B1240 */ _t132 = cpu->r[7] + 0x00003170u;
|
|
/* 022B1240 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 022B1244 */ _t133 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1244 */ rbrew_write32(cpu->mem, _t133, cpu->r[27]);
|
|
/* 022B1248 */ _t134 = cpu->r[30] + 0x00000054u;
|
|
/* 022B1248 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[0]);
|
|
L_022B124C: ; // 0x22b124c
|
|
/* 022B124C */ cpu->r[30] = cpu->r[31] + 0x000011D0u;
|
|
/* 022B124C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1250 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1250 */ _t136 = _t135 & 0x00000001u;
|
|
/* 022B1250 */ if (_t136) goto L_022B1254; else goto L_022B1264;
|
|
L_022B1254: ; // 0x22b1254
|
|
/* 022B1254 */ cpu->r[3] = 0x00000060u;
|
|
/* 022B1258 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B125C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B125C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1260 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1260 */ _t138 = _t137 & 0x00000001u;
|
|
/* 022B1260 */ if (_t138) goto L_022B12A0; else goto L_022B1264;
|
|
L_022B1264: ; // 0x22b1264
|
|
/* 022B1264 */ cpu->r[5] = 0x10060000u;
|
|
/* 022B1268 */ cpu->r[4] = cpu->r[31];
|
|
/* 022B126C */ cpu->r[6] = 0x10060000u;
|
|
/* 022B1270 */ cpu->r[5] = cpu->r[5] + 0x0000333Cu;
|
|
/* 022B1274 */ cpu->r[8] = 0x00000000u;
|
|
/* 022B1278 */ cpu->r[6] = cpu->r[6] + 0x0000323Cu;
|
|
/* 022B127C */ cpu->r[7] = cpu->r[5];
|
|
/* 022B1280 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1284 */ Gambit_fn_027F84F0(cpu);
|
|
/* 022B1288 */ _t139 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1288 */ rbrew_write32(cpu->mem, _t139, cpu->r[28]);
|
|
/* 022B128C */ cpu->r[9] = 0x00000258u;
|
|
/* 022B1290 */ _t140 = cpu->r[30] + 0x00000058u;
|
|
/* 022B1290 */ rbrew_write32(cpu->mem, _t140, cpu->r[29]);
|
|
/* 022B1294 */ cpu->r[0] = 0x00002710u;
|
|
/* 022B1298 */ _t141 = cpu->r[30] + 0x00000054u;
|
|
/* 022B1298 */ rbrew_write32(cpu->mem, _t141, cpu->r[9]);
|
|
/* 022B129C */ _t142 = cpu->r[30] + 0x0000005Cu;
|
|
/* 022B129C */ rbrew_write32(cpu->mem, _t142, cpu->r[0]);
|
|
L_022B12A0: ; // 0x22b12a0
|
|
/* 022B12A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B12A4 */ /* nop */
|
|
/* 022B12A8 */ _t143 = cpu->r[1] + 0x00000028u;
|
|
/* 022B12A8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t143);
|
|
/* 022B12AC */ _t144 = cpu->r[1] + 0x00000038u;
|
|
/* 022B12AC */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t144);
|
|
/* 022B12B0 */ _t145 = cpu->r[1] + 0x00000020u;
|
|
/* 022B12B0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t145);
|
|
/* 022B12B4 */ _t146 = cpu->r[1] + 0x00000048u;
|
|
/* 022B12B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t146);
|
|
/* 022B12B8 */ _t147 = cpu->r[1] + 0x00000030u;
|
|
/* 022B12B8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t147);
|
|
/* 022B12BC */ _t148 = cpu->r[1] + 0x00000040u;
|
|
/* 022B12BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t148);
|
|
/* 022B12C0 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B12C0 */ _t150 = _t149 & 0x00000001u;
|
|
/* 022B12C0 */ if (_t150) goto L_022B12C4; // else: addr-0 trap, fall-through
|
|
L_022B12C4: ; // 0x22b12c4
|
|
/* 022B12C4 */ _t151 = cpu->r[1] + 0x00000054u;
|
|
/* 022B12C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151);
|
|
/* 022B12C8 */ cpu->lr = cpu->r[0];
|
|
/* 022B12CC */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 022B12D0 */ return;
|
|
}
|
|
|
|
// fn_022B12D4 @ 0x22b12d4
|
|
void Gambit_fn_022B12D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B12D4: ; // 0x22b12d4
|
|
/* 022B12D4 */ cpu->r[0] = cpu->lr;
|
|
/* 022B12D8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B12D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B12DC */ cpu->r[3] = 0x00001230u;
|
|
/* 022B12E0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B12E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B12E0 */ cpu->r[1] = _t1;
|
|
/* 022B12E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B12E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B12EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B12EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B12EC */ rbrew_dispatch(cpu, (_t3) ? 0x022b12f0u : 0x022b0d5cu); return;
|
|
/* 022B12F0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B12F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B12F4 */ cpu->lr = cpu->r[0];
|
|
/* 022B12F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B12FC */ return;
|
|
}
|
|
|
|
// fn_022B12E0 @ 0x22b12e0
|
|
void Gambit_fn_022B12E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_022B12E0: ; // 0x22b12e0
|
|
/* 022B12E0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B12E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B12E0 */ cpu->r[1] = _t0;
|
|
/* 022B12E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 022B12E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B12EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B12EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 022B12EC */ rbrew_dispatch(cpu, (_t2) ? 0x022b12f0u : 0x022b0d5cu); return;
|
|
/* 022B12F0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B12F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B12F4 */ cpu->lr = cpu->r[0];
|
|
/* 022B12F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B12FC */ return;
|
|
}
|
|
|
|
// fn_022B1300 @ 0x22b1300
|
|
void Gambit_fn_022B1300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84;
|
|
|
|
L_022B1300: ; // 0x22b1300
|
|
/* 022B1300 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 022B1300 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1300 */ cpu->r[1] = _t0;
|
|
/* 022B1304 */ /* nop */
|
|
/* 022B1308 */ cpu->r[0] = cpu->lr;
|
|
/* 022B130C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 022B130C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B1310 */ cpu->r[28] = cpu->r[3];
|
|
/* 022B1314 */ _t2 = cpu->r[28] + 0x00000190u;
|
|
/* 022B1314 */ cpu->r[6] = rbrew_read8(cpu->mem, _t2);
|
|
/* 022B1318 */ /* nop */
|
|
/* 022B131C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000001u);
|
|
/* 022B1320 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1320 */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B1320 */ if (_t4) goto L_022B136C; else goto L_022B1324;
|
|
L_022B1324: ; // 0x22b1324
|
|
/* 022B1324 */ _t5 = cpu->r[28] + 0x0000023Cu;
|
|
/* 022B1324 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1328 */ cpu->r[8] = 0x00000001u;
|
|
/* 022B132C */ /* nop */
|
|
/* 022B1330 */ _t6 = cpu->r[28] + 0x00000238u;
|
|
/* 022B1330 */ cpu->r[7] = rbrew_read8(cpu->mem, _t6);
|
|
/* 022B1334 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 022B1338 */ cpu->r[0] = cpu->r[7] & cpu->r[0];
|
|
/* 022B1338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B133C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B133C */ _t8 = _t7 & 0x00000001u;
|
|
/* 022B133C */ if (_t8) goto L_022B1364; else goto L_022B1340;
|
|
L_022B1340: ; // 0x22b1340
|
|
/* 022B1340 */ cpu->r[3] = cpu->r[28];
|
|
/* 022B1344 */ Gambit_fn_022B0954(cpu);
|
|
/* 022B1348 */ cpu->r[8] = 0x00000001u;
|
|
/* 022B134C */ _t9 = cpu->r[28] + 0x00000254u;
|
|
/* 022B134C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[8]);
|
|
/* 022B1350 */ /* nop */
|
|
/* 022B1354 */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 022B1354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B1358 */ cpu->lr = cpu->r[0];
|
|
/* 022B135C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B1360 */ return;
|
|
L_022B1364: ; // 0x22b1364
|
|
/* 022B1364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 022B1368 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1368 */ _t12 = _t11 & 0x00000001u;
|
|
/* 022B1368 */ if (_t12) goto L_022B136C; else goto L_022B1558;
|
|
L_022B136C: ; // 0x22b136c
|
|
/* 022B136C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B1370 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1374 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022B1378 */ _t13 = cpu->r[26] + 0x00000194u;
|
|
/* 022B1378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B1378 */ cpu->r[26] = _t13;
|
|
/* 022B137C */ cpu->r[27] = 0x10060000u;
|
|
/* 022B1380 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1384 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022B1388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B138C */ cpu->r[27] = cpu->r[27] + 0x00002FC4u;
|
|
/* 022B1390 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1390 */ _t15 = _t14 & 0x00000001u;
|
|
/* 022B1390 */ if (_t15) goto L_022B1394; else goto L_022B13A0;
|
|
L_022B1394: ; // 0x22b1394
|
|
/* 022B1394 */ _t16 = cpu->r[25] + 0x00000190u;
|
|
/* 022B1394 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 022B1398 */ cpu->r[12] = 0x00000001u;
|
|
/* 022B139C */ _t17 = cpu->r[26] + 0x00000000u;
|
|
/* 022B139C */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
L_022B13A0: ; // 0x22b13a0
|
|
/* 022B13A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B13A4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B13A4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 022B13A4 */ if (_t19) goto L_022B13C8; else goto L_022B13A8;
|
|
L_022B13A8: ; // 0x22b13a8
|
|
/* 022B13A8 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 022B13A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 022B13AC */ _t21 = cpu->r[6] + 0x0000006Cu;
|
|
/* 022B13AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B13B0 */ cpu->ctr = cpu->r[7];
|
|
/* 022B13B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B13B8 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B13BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B13C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B13C4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B13C4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 022B13C4 */ if (_t23) goto L_022B13C8; else goto L_022B13CC;
|
|
L_022B13C8: ; // 0x22b13c8
|
|
/* 022B13C8 */ cpu->r[31] = 0x00000000u;
|
|
L_022B13CC: ; // 0x22b13cc
|
|
/* 022B13CC */ cpu->r[3] = cpu->r[28];
|
|
/* 022B13D0 */ Gambit_fn_022B0244(cpu);
|
|
/* 022B13D4 */ _t24 = cpu->r[31] + 0x00000DA4u;
|
|
/* 022B13D4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 022B13D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B13DC */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 022B13DC */ _t26 = _t25 & 0x00000001u;
|
|
/* 022B13DC */ if (_t26) goto L_022B13E0; else goto L_022B1558;
|
|
L_022B13E0: ; // 0x22b13e0
|
|
/* 022B13E0 */ _t27 = cpu->r[28] + 0x00000257u;
|
|
/* 022B13E0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t27);
|
|
/* 022B13E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 022B13E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B13E8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 022B13E8 */ if (_t29) goto L_022B1558; else goto L_022B13EC;
|
|
L_022B13EC: ; // 0x22b13ec
|
|
/* 022B13EC */ _t30 = cpu->r[28] + 0x00000190u;
|
|
/* 022B13EC */ cpu->r[12] = rbrew_read8(cpu->mem, _t30);
|
|
/* 022B13F0 */ /* nop */
|
|
/* 022B13F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 022B13F8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B13F8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 022B13F8 */ if (_t32) goto L_022B13FC; else goto L_022B1540;
|
|
L_022B13FC: ; // 0x22b13fc
|
|
/* 022B13FC */ cpu->r[3] = cpu->r[28];
|
|
/* 022B1400 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1404 */ _t33 = cpu->r[26] + 0x00000000u;
|
|
/* 022B1404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B1408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B140C */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1410 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1410 */ _t35 = _t34 & 0x00000001u;
|
|
/* 022B1410 */ if (_t35) goto L_022B1414; else goto L_022B1420;
|
|
L_022B1414: ; // 0x22b1414
|
|
/* 022B1414 */ _t36 = cpu->r[25] + 0x00000190u;
|
|
/* 022B1414 */ rbrew_write32(cpu->mem, _t36, cpu->r[27]);
|
|
/* 022B1418 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B141C */ _t37 = cpu->r[26] + 0x00000000u;
|
|
/* 022B141C */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
L_022B1420: ; // 0x22b1420
|
|
/* 022B1420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B1424 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1424 */ _t39 = _t38 & 0x00000001u;
|
|
/* 022B1424 */ if (_t39) goto L_022B1448; else goto L_022B1428;
|
|
L_022B1428: ; // 0x22b1428
|
|
/* 022B1428 */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 022B1428 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 022B142C */ _t41 = cpu->r[8] + 0x0000006Cu;
|
|
/* 022B142C */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 022B1430 */ cpu->ctr = cpu->r[0];
|
|
/* 022B1434 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1438 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B143C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1444 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1444 */ _t43 = _t42 & 0x00000001u;
|
|
/* 022B1444 */ if (_t43) goto L_022B1448; else goto L_022B144C;
|
|
L_022B1448: ; // 0x22b1448
|
|
/* 022B1448 */ cpu->r[30] = 0x00000000u;
|
|
L_022B144C: ; // 0x22b144c
|
|
/* 022B144C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B1450 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1454 */ _t44 = cpu->r[26] + 0x00000000u;
|
|
/* 022B1454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 022B1458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B145C */ cpu->r[29] = cpu->r[3];
|
|
/* 022B1460 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1460 */ _t46 = _t45 & 0x00000001u;
|
|
/* 022B1460 */ if (_t46) goto L_022B1464; else goto L_022B1470;
|
|
L_022B1464: ; // 0x22b1464
|
|
/* 022B1464 */ _t47 = cpu->r[25] + 0x00000190u;
|
|
/* 022B1464 */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 022B1468 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B146C */ _t48 = cpu->r[26] + 0x00000000u;
|
|
/* 022B146C */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
L_022B1470: ; // 0x22b1470
|
|
/* 022B1470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 022B1474 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1474 */ _t50 = _t49 & 0x00000001u;
|
|
/* 022B1474 */ if (_t50) goto L_022B1498; else goto L_022B1478;
|
|
L_022B1478: ; // 0x22b1478
|
|
/* 022B1478 */ _t51 = cpu->r[29] + 0x00000000u;
|
|
/* 022B1478 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 022B147C */ _t52 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B147C */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 022B1480 */ cpu->ctr = cpu->r[7];
|
|
/* 022B1484 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B1488 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B148C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B1490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1494 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1494 */ _t54 = _t53 & 0x00000001u;
|
|
/* 022B1494 */ if (_t54) goto L_022B1498; else goto L_022B149C;
|
|
L_022B1498: ; // 0x22b1498
|
|
/* 022B1498 */ cpu->r[29] = 0x00000000u;
|
|
L_022B149C: ; // 0x22b149c
|
|
/* 022B149C */ cpu->r[3] = cpu->r[28];
|
|
/* 022B14A0 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B14A4 */ _t55 = cpu->r[26] + 0x00000000u;
|
|
/* 022B14A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 022B14A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 022B14AC */ cpu->r[31] = cpu->r[3];
|
|
/* 022B14B0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B14B0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 022B14B0 */ if (_t57) goto L_022B14B4; else goto L_022B14C0;
|
|
L_022B14B4: ; // 0x22b14b4
|
|
/* 022B14B4 */ _t58 = cpu->r[25] + 0x00000190u;
|
|
/* 022B14B4 */ rbrew_write32(cpu->mem, _t58, cpu->r[27]);
|
|
/* 022B14B8 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B14BC */ _t59 = cpu->r[26] + 0x00000000u;
|
|
/* 022B14BC */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
L_022B14C0: ; // 0x22b14c0
|
|
/* 022B14C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B14C4 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B14C4 */ _t61 = _t60 & 0x00000001u;
|
|
/* 022B14C4 */ if (_t61) goto L_022B14E8; else goto L_022B14C8;
|
|
L_022B14C8: ; // 0x22b14c8
|
|
/* 022B14C8 */ _t62 = cpu->r[31] + 0x00000000u;
|
|
/* 022B14C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 022B14CC */ _t63 = cpu->r[12] + 0x0000006Cu;
|
|
/* 022B14CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t63);
|
|
/* 022B14D0 */ cpu->ctr = cpu->r[6];
|
|
/* 022B14D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B14D8 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B14DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B14E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B14E4 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B14E4 */ _t65 = _t64 & 0x00000001u;
|
|
/* 022B14E4 */ if (_t65) goto L_022B14E8; else goto L_022B14EC;
|
|
L_022B14E8: ; // 0x22b14e8
|
|
/* 022B14E8 */ cpu->r[31] = 0x00000000u;
|
|
L_022B14EC: ; // 0x22b14ec
|
|
/* 022B14EC */ _t66 = cpu->r[28] + 0x00000070u;
|
|
/* 022B14EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t66);
|
|
/* 022B14F0 */ Gambit_fn_0231DF98(cpu);
|
|
/* 022B14F4 */ _t67 = cpu->r[31] + 0x00000AA0u;
|
|
/* 022B14F4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 022B14F8 */ _t68 = cpu->r[30] + 0x00001164u;
|
|
/* 022B14F8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 022B14FC */ _t69 = cpu->r[29] + 0x000011C4u;
|
|
/* 022B14FC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 022B1500 */ _t70 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1500 */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 022B1504 */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 022B1504 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]);
|
|
/* 022B1508 */ _t72 = cpu->r[28] + 0x00000234u;
|
|
/* 022B1508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t72);
|
|
/* 022B150C */ cpu->r[11] = cpu->r[28] + 0x00000140u;
|
|
/* 022B1510 */ _t73 = cpu->r[1] + 0x00000008u;
|
|
/* 022B1510 */ rbrew_write32(cpu->mem, _t73, cpu->r[11]);
|
|
/* 022B1514 */ _t74 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1514 */ rbrew_write8(cpu->mem, _t74, (uint8_t)cpu->r[9]);
|
|
/* 022B1518 */ cpu->r[0] = cpu->r[28] + 0x0000021Cu;
|
|
/* 022B151C */ _t75 = cpu->r[1] + 0x00000018u;
|
|
/* 022B151C */ rbrew_write_f32(cpu->mem, _t75, cpu->f[13]);
|
|
/* 022B1520 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B1524 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1524 */ rbrew_write32(cpu->mem, _t76, cpu->r[0]);
|
|
/* 022B1528 */ Gambit_fn_022471AC(cpu);
|
|
/* 022B152C */ /* nop */
|
|
/* 022B1530 */ _t77 = cpu->r[1] + 0x00000044u;
|
|
/* 022B1530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 022B1534 */ cpu->lr = cpu->r[0];
|
|
/* 022B1538 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B153C */ return;
|
|
L_022B1540: ; // 0x22b1540
|
|
/* 022B1540 */ _t78 = cpu->r[28] + 0x00000224u;
|
|
/* 022B1540 */ cpu->r[10] = rbrew_read32(cpu->mem, _t78);
|
|
/* 022B1544 */ _t79 = cpu->r[28] + 0x00000220u;
|
|
/* 022B1544 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 022B1548 */ _t80 = cpu->r[28] + 0x00000148u;
|
|
/* 022B1548 */ rbrew_write32(cpu->mem, _t80, cpu->r[10]);
|
|
/* 022B154C */ _t81 = cpu->r[28] + 0x0000021Cu;
|
|
/* 022B154C */ cpu->r[8] = rbrew_read32(cpu->mem, _t81);
|
|
/* 022B1550 */ _t82 = cpu->r[28] + 0x00000144u;
|
|
/* 022B1550 */ rbrew_write32(cpu->mem, _t82, cpu->r[9]);
|
|
/* 022B1554 */ _t83 = cpu->r[28] + 0x00000140u;
|
|
/* 022B1554 */ rbrew_write32(cpu->mem, _t83, cpu->r[8]);
|
|
L_022B1558: ; // 0x22b1558
|
|
/* 022B1558 */ /* nop */
|
|
/* 022B155C */ _t84 = cpu->r[1] + 0x00000044u;
|
|
/* 022B155C */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 022B1560 */ cpu->lr = cpu->r[0];
|
|
/* 022B1564 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 022B1568 */ return;
|
|
}
|
|
|
|
// fn_022B156C @ 0x22b156c
|
|
void Gambit_fn_022B156C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022B156C: ; // 0x22b156c
|
|
/* 022B156C */ cpu->r[0] = cpu->lr;
|
|
/* 022B1570 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B1570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1570 */ cpu->r[1] = _t0;
|
|
/* 022B1574 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022B1574 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B1578 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1578 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B157C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B1580 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 022B1580 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B1584 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B1584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1588 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B1588 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B158C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1590 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1594 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B1598 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B159C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B15A0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B15A4 */ _t6 = cpu->r[31] + 0x00000070u;
|
|
/* 022B15A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B15A8 */ cpu->r[12] = cpu->r[3] + 0x00000244u;
|
|
/* 022B15AC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 022B15AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B15B0 */ cpu->r[9] = cpu->r[8] + 0x000000A0u;
|
|
/* 022B15B4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022B15B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B15B8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B15BC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B15BC */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B15C0 */ cpu->r[0] = cpu->r[31] + 0x00000140u;
|
|
/* 022B15C4 */ _t10 = cpu->r[11] + 0x0000334Cu;
|
|
/* 022B15C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B15C8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B15C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B15CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B15D0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B15D0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B15D4 */ Gambit_fn_02247510(cpu);
|
|
/* 022B15D8 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 022B15D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B15DC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B15DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B15E0 */ cpu->lr = cpu->r[0];
|
|
/* 022B15E4 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 022B15E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B15E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B15EC */ return;
|
|
}
|
|
|
|
// fn_022B1570 @ 0x22b1570
|
|
void Gambit_fn_022B1570(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_022B1570: ; // 0x22b1570
|
|
/* 022B1570 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 022B1570 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1570 */ cpu->r[1] = _t0;
|
|
/* 022B1574 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 022B1574 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 022B1578 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B1578 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 022B157C */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B1580 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 022B1580 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B1584 */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 022B1584 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1588 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 022B1588 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B158C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1590 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1594 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B1598 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B159C */ cpu->r[3] = cpu->r[30];
|
|
/* 022B15A0 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B15A4 */ _t6 = cpu->r[31] + 0x00000070u;
|
|
/* 022B15A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B15A8 */ cpu->r[12] = cpu->r[3] + 0x00000244u;
|
|
/* 022B15AC */ _t7 = cpu->r[31] + 0x00000230u;
|
|
/* 022B15AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B15B0 */ cpu->r[9] = cpu->r[8] + 0x000000A0u;
|
|
/* 022B15B4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 022B15B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B15B8 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B15BC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 022B15BC */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 022B15C0 */ cpu->r[0] = cpu->r[31] + 0x00000140u;
|
|
/* 022B15C4 */ _t10 = cpu->r[11] + 0x0000334Cu;
|
|
/* 022B15C4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 022B15C8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B15C8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 022B15CC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 022B15D0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 022B15D0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 022B15D4 */ Gambit_fn_02247510(cpu);
|
|
/* 022B15D8 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 022B15D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 022B15DC */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B15DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B15E0 */ cpu->lr = cpu->r[0];
|
|
/* 022B15E4 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 022B15E4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B15E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 022B15EC */ return;
|
|
}
|
|
|
|
// fn_022B15F0 @ 0x22b15f0
|
|
void Gambit_fn_022B15F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_022B15F0: ; // 0x22b15f0
|
|
/* 022B15F0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 022B15F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B15F0 */ cpu->r[1] = _t0;
|
|
/* 022B15F4 */ /* nop */
|
|
/* 022B15F8 */ cpu->r[0] = cpu->lr;
|
|
/* 022B15FC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B15FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 022B1600 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B1604 */ _t2 = cpu->r[12] + 0x00006000u;
|
|
/* 022B1604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 022B1608 */ cpu->r[29] = cpu->r[3];
|
|
/* 022B160C */ _t3 = cpu->r[12] + 0x00000268u;
|
|
/* 022B160C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1610 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1614 */ Gambit_fn_0261F774(cpu);
|
|
/* 022B1618 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B161C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1620 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B1624 */ cpu->r[27] = cpu->r[3];
|
|
/* 022B1628 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B162C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1630 */ cpu->r[26] = 0x101D0000u;
|
|
/* 022B1634 */ _t4 = cpu->r[26] + 0x00000194u;
|
|
/* 022B1634 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1634 */ cpu->r[26] = _t4;
|
|
/* 022B1638 */ cpu->r[25] = 0x101D0000u;
|
|
/* 022B163C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1640 */ cpu->r[28] = 0x10060000u;
|
|
/* 022B1644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B1648 */ cpu->r[28] = cpu->r[28] + 0x00002FC4u;
|
|
/* 022B164C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B164C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B164C */ if (_t6) goto L_022B1650; else goto L_022B165C;
|
|
L_022B1650: ; // 0x22b1650
|
|
/* 022B1650 */ _t7 = cpu->r[25] + 0x00000190u;
|
|
/* 022B1650 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 022B1654 */ cpu->r[0] = 0x00000001u;
|
|
/* 022B1658 */ _t8 = cpu->r[26] + 0x00000000u;
|
|
/* 022B1658 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_022B165C: ; // 0x22b165c
|
|
/* 022B165C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B1660 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1660 */ _t10 = _t9 & 0x00000001u;
|
|
/* 022B1660 */ if (_t10) goto L_022B1684; else goto L_022B1664;
|
|
L_022B1664: ; // 0x22b1664
|
|
/* 022B1664 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 022B1664 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B1668 */ _t12 = cpu->r[5] + 0x0000006Cu;
|
|
/* 022B1668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 022B166C */ cpu->ctr = cpu->r[0];
|
|
/* 022B1670 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1674 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B1678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B167C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B1680 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1680 */ _t14 = _t13 & 0x00000001u;
|
|
/* 022B1680 */ if (_t14) goto L_022B1684; else goto L_022B1688;
|
|
L_022B1684: ; // 0x22b1684
|
|
/* 022B1684 */ cpu->r[31] = 0x00000000u;
|
|
L_022B1688: ; // 0x22b1688
|
|
/* 022B1688 */ cpu->r[3] = cpu->r[29];
|
|
/* 022B168C */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1690 */ _t15 = cpu->r[26] + 0x00000000u;
|
|
/* 022B1690 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B1694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 022B1698 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B169C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B169C */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B169C */ if (_t17) goto L_022B16A0; else goto L_022B16AC;
|
|
L_022B16A0: ; // 0x22b16a0
|
|
/* 022B16A0 */ _t18 = cpu->r[25] + 0x00000190u;
|
|
/* 022B16A0 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 022B16A4 */ cpu->r[9] = 0x00000001u;
|
|
/* 022B16A8 */ _t19 = cpu->r[26] + 0x00000000u;
|
|
/* 022B16A8 */ rbrew_write32(cpu->mem, _t19, cpu->r[9]);
|
|
L_022B16AC: ; // 0x22b16ac
|
|
/* 022B16AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 022B16B0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B16B0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 022B16B0 */ if (_t21) goto L_022B16D4; else goto L_022B16B4;
|
|
L_022B16B4: ; // 0x22b16b4
|
|
/* 022B16B4 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 022B16B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B16B8 */ _t23 = cpu->r[10] + 0x0000006Cu;
|
|
/* 022B16B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 022B16BC */ cpu->ctr = cpu->r[0];
|
|
/* 022B16C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B16C4 */ cpu->r[4] = cpu->r[25] + 0x00000190u;
|
|
/* 022B16C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B16CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B16D0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B16D0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 022B16D0 */ if (_t25) goto L_022B16D4; else goto L_022B16D8;
|
|
L_022B16D4: ; // 0x22b16d4
|
|
/* 022B16D4 */ cpu->r[30] = 0x00000000u;
|
|
L_022B16D8: ; // 0x22b16d8
|
|
/* 022B16D8 */ cpu->r[4] = cpu->r[29] + 0x00000140u;
|
|
/* 022B16DC */ cpu->r[3] = cpu->r[27] + 0x00000244u;
|
|
/* 022B16E0 */ Gambit_fn_02C69328(cpu);
|
|
/* 022B16E4 */ _t26 = cpu->r[30] + 0x00000FE4u;
|
|
/* 022B16E4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 022B16E8 */ _t27 = cpu->r[31] + 0x00000FE4u;
|
|
/* 022B16E8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 022B16EC */ /* nop */
|
|
/* 022B16F0 */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 022B16F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 022B16F8 */ _t28 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B16F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 022B16FC */ cpu->lr = cpu->r[0];
|
|
/* 022B1700 */ /* nop */
|
|
/* 022B1704 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 022B1708 */ cpu->r[3] = rbrew_rlwinm(cpu->r[7], 0x00000001u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B170C */ return;
|
|
}
|
|
|
|
// fn_022B1710 @ 0x22b1710
|
|
void Gambit_fn_022B1710(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_022B1710: ; // 0x22b1710
|
|
/* 022B1710 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1714 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022B1714 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1714 */ cpu->r[1] = _t0;
|
|
/* 022B1718 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B1718 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B171C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022B171C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B1720 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022B1720 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B1724 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B1728 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B1728 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B172C */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 022B172C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1730 */ _t6 = cpu->r[12] + 0x00000268u;
|
|
/* 022B1730 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1734 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1738 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B173C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B1740 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B1744 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1748 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B174C */ cpu->r[29] = cpu->r[3];
|
|
/* 022B1750 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1754 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1758 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B175C */ _t7 = cpu->r[9] + 0x00000194u;
|
|
/* 022B175C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B175C */ cpu->r[9] = _t7;
|
|
/* 022B1760 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B1764 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B176C */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B1770 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1770 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B1770 */ if (_t9) goto L_022B1774; else goto L_022B1788;
|
|
L_022B1774: ; // 0x22b1774
|
|
/* 022B1774 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B1778 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B177C */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B1780 */ _t10 = cpu->r[9] + 0x00000000u;
|
|
/* 022B1780 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B1784 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 022B1784 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022B1788: ; // 0x22b1788
|
|
/* 022B1788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B178C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B178C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B178C */ if (_t13) goto L_022B17AC; else goto L_022B1790;
|
|
L_022B1790: ; // 0x22b1790
|
|
/* 022B1790 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022B1790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B1794 */ _t15 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022B1794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B1798 */ cpu->ctr = cpu->r[10];
|
|
/* 022B179C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B17A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B17A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B17A8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B17A8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B17A8 */ if (_t17) goto L_022B17AC; else goto L_022B17B0;
|
|
L_022B17AC: ; // 0x22b17ac
|
|
/* 022B17AC */ cpu->r[31] = 0x00000000u;
|
|
L_022B17B0: ; // 0x22b17b0
|
|
/* 022B17B0 */ _t18 = cpu->r[30] + 0x00000140u;
|
|
/* 022B17B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B17B4 */ _t19 = cpu->r[31] + 0x000010A4u;
|
|
/* 022B17B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B17B8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B17B8 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 022B17BC */ _t21 = cpu->r[30] + 0x00000144u;
|
|
/* 022B17BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B17C0 */ _t22 = cpu->r[30] + 0x00000148u;
|
|
/* 022B17C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B17C4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B17C4 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022B17C8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022B17C8 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 022B17CC */ _t25 = cpu->r[29] + 0x00000244u;
|
|
/* 022B17CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B17D0 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022B17D0 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022B17D4 */ _t27 = cpu->r[29] + 0x00000248u;
|
|
/* 022B17D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B17D8 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 022B17D8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022B17DC */ _t29 = cpu->r[29] + 0x0000024Cu;
|
|
/* 022B17DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B17E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B17E4 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022B17E4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022B17E8 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022B17E8 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 022B17EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B17F0 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B17F0 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 022B17F4 */ Gambit_fn_022B9278(cpu);
|
|
/* 022B17F8 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B17F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B17FC */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B17FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B1800 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 022B1800 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B1804 */ cpu->lr = cpu->r[0];
|
|
/* 022B1808 */ _t36 = cpu->r[1] + 0x00000034u;
|
|
/* 022B1808 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B180C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022B1810 */ return;
|
|
}
|
|
|
|
// fn_022B1714 @ 0x22b1714
|
|
void Gambit_fn_022B1714(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_022B1714: ; // 0x22b1714
|
|
/* 022B1714 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 022B1714 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1714 */ cpu->r[1] = _t0;
|
|
/* 022B1718 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B1718 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 022B171C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 022B171C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 022B1720 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 022B1720 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 022B1724 */ cpu->r[12] = 0x101C0000u;
|
|
/* 022B1728 */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B1728 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B172C */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 022B172C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 022B1730 */ _t6 = cpu->r[12] + 0x00000268u;
|
|
/* 022B1730 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1734 */ cpu->r[30] = cpu->r[3];
|
|
/* 022B1738 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B173C */ Gambit_fn_0261F774(cpu);
|
|
/* 022B1740 */ cpu->r[4] = cpu->r[3];
|
|
/* 022B1744 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1748 */ Gambit_fn_0261F55C(cpu);
|
|
/* 022B174C */ cpu->r[29] = cpu->r[3];
|
|
/* 022B1750 */ cpu->r[3] = cpu->r[30];
|
|
/* 022B1754 */ Gambit_fn_0226ED34(cpu);
|
|
/* 022B1758 */ cpu->r[9] = 0x101D0000u;
|
|
/* 022B175C */ _t7 = cpu->r[9] + 0x00000194u;
|
|
/* 022B175C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B175C */ cpu->r[9] = _t7;
|
|
/* 022B1760 */ cpu->r[4] = 0x101D0000u;
|
|
/* 022B1764 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 022B176C */ cpu->r[4] = cpu->r[4] + 0x00000190u;
|
|
/* 022B1770 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B1770 */ _t9 = _t8 & 0x00000001u;
|
|
/* 022B1770 */ if (_t9) goto L_022B1774; else goto L_022B1788;
|
|
L_022B1774: ; // 0x22b1774
|
|
/* 022B1774 */ cpu->r[0] = 0x10060000u;
|
|
/* 022B1778 */ cpu->r[11] = 0x00000001u;
|
|
/* 022B177C */ cpu->r[0] = cpu->r[0] + 0x00002FC4u;
|
|
/* 022B1780 */ _t10 = cpu->r[9] + 0x00000000u;
|
|
/* 022B1780 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 022B1784 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 022B1784 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_022B1788: ; // 0x22b1788
|
|
/* 022B1788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 022B178C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B178C */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B178C */ if (_t13) goto L_022B17AC; else goto L_022B1790;
|
|
L_022B1790: ; // 0x22b1790
|
|
/* 022B1790 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 022B1790 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 022B1794 */ _t15 = cpu->r[7] + 0x0000006Cu;
|
|
/* 022B1794 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B1798 */ cpu->ctr = cpu->r[10];
|
|
/* 022B179C */ cpu->r[3] = cpu->r[31];
|
|
/* 022B17A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 022B17A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B17A8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B17A8 */ _t17 = _t16 & 0x00000001u;
|
|
/* 022B17A8 */ if (_t17) goto L_022B17AC; else goto L_022B17B0;
|
|
L_022B17AC: ; // 0x22b17ac
|
|
/* 022B17AC */ cpu->r[31] = 0x00000000u;
|
|
L_022B17B0: ; // 0x22b17b0
|
|
/* 022B17B0 */ _t18 = cpu->r[30] + 0x00000140u;
|
|
/* 022B17B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18);
|
|
/* 022B17B4 */ _t19 = cpu->r[31] + 0x000010A4u;
|
|
/* 022B17B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 022B17B8 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 022B17B8 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 022B17BC */ _t21 = cpu->r[30] + 0x00000144u;
|
|
/* 022B17BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 022B17C0 */ _t22 = cpu->r[30] + 0x00000148u;
|
|
/* 022B17C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 022B17C4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B17C4 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 022B17C8 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 022B17C8 */ rbrew_write32(cpu->mem, _t24, cpu->r[8]);
|
|
/* 022B17CC */ _t25 = cpu->r[29] + 0x00000244u;
|
|
/* 022B17CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 022B17D0 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 022B17D0 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 022B17D4 */ _t27 = cpu->r[29] + 0x00000248u;
|
|
/* 022B17D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 022B17D8 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 022B17D8 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 022B17DC */ _t29 = cpu->r[29] + 0x0000024Cu;
|
|
/* 022B17DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 022B17E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 022B17E4 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 022B17E4 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 022B17E8 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 022B17E8 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[0]);
|
|
/* 022B17EC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 022B17F0 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 022B17F0 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]);
|
|
/* 022B17F4 */ Gambit_fn_022B9278(cpu);
|
|
/* 022B17F8 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 022B17F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t33);
|
|
/* 022B17FC */ _t34 = cpu->r[1] + 0x0000003Cu;
|
|
/* 022B17FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 022B1800 */ _t35 = cpu->r[1] + 0x00000030u;
|
|
/* 022B1800 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35);
|
|
/* 022B1804 */ cpu->lr = cpu->r[0];
|
|
/* 022B1808 */ _t36 = cpu->r[1] + 0x00000034u;
|
|
/* 022B1808 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36);
|
|
/* 022B180C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 022B1810 */ return;
|
|
}
|
|
|
|
// fn_022B1864 @ 0x22b1864
|
|
void Gambit_fn_022B1864(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_022B1864: ; // 0x22b1864
|
|
/* 022B1864 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1864 */ cpu->r[1] = _t0;
|
|
/* 022B1868 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B186C */ cpu->r[31] = cpu->r[3];
|
|
/* 022B1870 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B1870 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1874 */ Gambit_fn_022B156C(cpu);
|
|
/* 022B1878 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B187C */ Gambit_fn_022B1300(cpu);
|
|
/* 022B1880 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1884 */ Gambit_fn_022B1710(cpu);
|
|
/* 022B1888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B188C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B188C */ _t4 = _t3 & 0x00000001u;
|
|
/* 022B188C */ if (_t4) goto L_022B18C0; else goto L_022B1890;
|
|
L_022B1890: ; // 0x22b1890
|
|
/* 022B1890 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1894 */ Gambit_fn_022B15F0(cpu);
|
|
/* 022B1898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B189C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B189C */ _t6 = _t5 & 0x00000001u;
|
|
/* 022B189C */ if (_t6) goto L_022B18C0; else goto L_022B18A0;
|
|
L_022B18A0: ; // 0x22b18a0
|
|
/* 022B18A0 */ _t7 = cpu->r[31] + 0x00000240u;
|
|
/* 022B18A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B18A4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 022B18A8 */ _t8 = cpu->r[31] + 0x00000240u;
|
|
/* 022B18A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 022B18AC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 022B18AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 022B18B0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B18B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 022B18B4 */ cpu->lr = cpu->r[0];
|
|
/* 022B18B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B18BC */ return;
|
|
L_022B18C0: ; // 0x22b18c0
|
|
/* 022B18C0 */ _t11 = cpu->r[31] + 0x00000240u;
|
|
/* 022B18C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 022B18C4 */ cpu->r[12] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 022B18C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 022B18C8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 022B18C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 022B18C8 */ if (_t13) goto L_022B18CC; else goto L_022B18D0;
|
|
L_022B18CC: ; // 0x22b18cc
|
|
/* 022B18CC */ cpu->r[12] = 0x00000000u;
|
|
L_022B18D0: ; // 0x22b18d0
|
|
/* 022B18D0 */ _t14 = cpu->r[31] + 0x00000240u;
|
|
/* 022B18D0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 022B18D4 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 022B18D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 022B18D8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B18D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 022B18DC */ cpu->lr = cpu->r[0];
|
|
/* 022B18E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B18E4 */ return;
|
|
}
|
|
|
|
// fn_022B1910 @ 0x22b1910
|
|
void Gambit_fn_022B1910(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_022B1910: ; // 0x22b1910
|
|
/* 022B1910 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 022B1910 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1910 */ cpu->r[1] = _t0;
|
|
/* 022B1914 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1914 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 022B1918 */ cpu->r[31] = cpu->r[3];
|
|
/* 022B191C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 022B191C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 022B1920 */ Gambit_fn_02271A58(cpu);
|
|
/* 022B1924 */ cpu->r[3] = cpu->r[31];
|
|
/* 022B1928 */ Gambit_fn_02790488(cpu);
|
|
/* 022B192C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 022B192C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 022B1930 */ cpu->lr = cpu->r[0];
|
|
/* 022B1934 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 022B1938 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 022B193C */ return;
|
|
}
|
|
|
|
// fn_022B1940 @ 0x22b1940
|
|
void Gambit_fn_022B1940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_022B1940: ; // 0x22b1940
|
|
/* 022B1940 */ cpu->r[0] = cpu->lr;
|
|
/* 022B1944 */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1948 */ cpu->r[11] = 0x10060000u;
|
|
/* 022B194C */ cpu->r[12] = cpu->r[12] + 0x00003360u;
|
|
/* 022B1950 */ cpu->r[11] = cpu->r[11] + 0x00002F04u;
|
|
/* 022B1954 */ cpu->r[3] = 0x101E0000u;
|
|
/* 022B1958 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 022B1958 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 022B195C */ cpu->r[0] = 0x022B0000u;
|
|
/* 022B1960 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B1960 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 022B1960 */ cpu->r[1] = _t1;
|
|
/* 022B1964 */ cpu->r[0] = cpu->r[0] + 0x000025ECu;
|
|
/* 022B1968 */ _t2 = cpu->r[3] + 0x00003A18u;
|
|
/* 022B1968 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 022B1968 */ cpu->r[3] = _t2;
|
|
/* 022B196C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1970 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1970 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 022B1974 */ cpu->r[12] = cpu->r[12] + 0x00002FD4u;
|
|
/* 022B1978 */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 022B1978 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 022B197C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 022B197C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 022B1980 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B1980 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 022B1984 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022B1988 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B198C */ cpu->r[3] = cpu->r[3] + 0x000056CCu;
|
|
/* 022B1990 */ Gambit_fn_02C83090(cpu);
|
|
/* 022B1994 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 022B1998 */ cpu->lr = cpu->r[0];
|
|
/* 022B199C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B19A0 */ return;
|
|
}
|
|
|
|
// fn_022B1960 @ 0x22b1960
|
|
void Gambit_fn_022B1960(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_022B1960: ; // 0x22b1960
|
|
/* 022B1960 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 022B1960 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 022B1960 */ cpu->r[1] = _t0;
|
|
/* 022B1964 */ cpu->r[0] = cpu->r[0] + 0x000025ECu;
|
|
/* 022B1968 */ _t1 = cpu->r[3] + 0x00003A18u;
|
|
/* 022B1968 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 022B1968 */ cpu->r[3] = _t1;
|
|
/* 022B196C */ cpu->r[12] = 0x10060000u;
|
|
/* 022B1970 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 022B1970 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 022B1974 */ cpu->r[12] = cpu->r[12] + 0x00002FD4u;
|
|
/* 022B1978 */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 022B1978 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 022B197C */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 022B197C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 022B1980 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 022B1980 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 022B1984 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 022B1988 */ cpu->r[3] = 0x101C0000u;
|
|
/* 022B198C */ cpu->r[3] = cpu->r[3] + 0x000056CCu;
|
|
/* 022B1990 */ Gambit_fn_02C83090(cpu);
|
|
/* 022B1994 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 022B1994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 022B1998 */ cpu->lr = cpu->r[0];
|
|
/* 022B199C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 022B19A0 */ return;
|
|
}
|
|
|
|
// fn_022B19A4 @ 0x22b19a4
|
|
void Gambit_fn_022B19A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_022B19A4: ; // 0x22b19a4
|
|
/* 022B19A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 022B19A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B19A8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 022B19A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B19A8 */ goto L_022B19AC;
|
|
L_022B19AC: ; // 0x22b19ac
|
|
/* 022B19AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 022B19AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 022B19B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 022B19B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 022B19B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 022B19B0 */ goto L_022B19B4;
|
|
L_022B19B4: ; // 0x22b19b4
|
|
/* 022B19B4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_022B19B8 @ 0x22b19b8
|
|
void Gambit_fn_022B19B8(CPUState* cpu) {
|
|
L_022B19B8: ; // 0x22b19b8
|
|
/* 022B19B8 */ return;
|
|
}
|
|
|