mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
24890 lines
1.2 MiB
Plaintext
24890 lines
1.2 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_024C3820 @ 0x24c3820
|
|
void Gambit_fn_024C3820(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;
|
|
|
|
L_024C3820: ; // 0x24c3820
|
|
/* 024C3820 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3824 */ cpu->r[1] = _t0;
|
|
/* 024C3828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C382C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3830 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3830 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3834 */ _t3 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3834 */ cpu->r[10] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C3838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C383C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C383C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C383C */ if (_t5) goto L_024C3848; else goto L_024C3840;
|
|
L_024C3840: ; // 0x24c3840
|
|
/* 024C3840 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3844 */ Gambit_fn_024C34C4(cpu);
|
|
L_024C3848: ; // 0x24c3848
|
|
/* 024C3848 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C384C */ _t6 = cpu->r[12] + 0x00007BA0u;
|
|
/* 024C384C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C3854 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3854 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C3854 */ if (_t8) goto L_024C3884; else goto L_024C3858;
|
|
L_024C3858: ; // 0x24c3858
|
|
/* 024C3858 */ _t9 = cpu->r[12] + 0x00000B44u;
|
|
/* 024C3858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C385C */ _t10 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C385C */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C3860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 024C3864 */ _t11 = cpu->r[31] + 0x00000238u;
|
|
/* 024C3864 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C3868 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C3868 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C3868 */ if (_t13) goto L_024C386C; else goto L_024C3884;
|
|
L_024C386C: ; // 0x24c386c
|
|
/* 024C386C */ _t14 = cpu->r[12] + 0x00000B48u;
|
|
/* 024C386C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C3870 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C3874 */ _t15 = cpu->r[5] + cpu->r[0];
|
|
/* 024C3874 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 024C3878 */ _t16 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C3878 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C387C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024C3880 */ _t17 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C3880 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_024C3884: ; // 0x24c3884
|
|
/* 024C3884 */ cpu->r[3] = 0x00000008u;
|
|
/* 024C3888 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C388C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3890 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3890 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C3890 */ if (_t19) goto L_024C3898; else goto L_024C3894;
|
|
L_024C3894: ; // 0x24c3894
|
|
/* 024C3894 */ Gambit_fn_023939B0(cpu);
|
|
L_024C3898: ; // 0x24c3898
|
|
/* 024C3898 */ _t20 = cpu->r[31] + 0x00000230u;
|
|
/* 024C3898 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 024C389C */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 024C389C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C38A0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C38A4 */ cpu->lr = cpu->r[0];
|
|
/* 024C38A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C38AC */ return;
|
|
}
|
|
|
|
// fn_024C3824 @ 0x24c3824
|
|
void Gambit_fn_024C3824(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;
|
|
|
|
L_024C3824: ; // 0x24c3824
|
|
/* 024C3824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3824 */ cpu->r[1] = _t0;
|
|
/* 024C3828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C382C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3830 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3830 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3834 */ _t3 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3834 */ cpu->r[10] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C3838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C383C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C383C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C383C */ if (_t5) goto L_024C3848; else goto L_024C3840;
|
|
L_024C3840: ; // 0x24c3840
|
|
/* 024C3840 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3844 */ Gambit_fn_024C34C4(cpu);
|
|
L_024C3848: ; // 0x24c3848
|
|
/* 024C3848 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C384C */ _t6 = cpu->r[12] + 0x00007BA0u;
|
|
/* 024C384C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C3854 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3854 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C3854 */ if (_t8) goto L_024C3884; else goto L_024C3858;
|
|
L_024C3858: ; // 0x24c3858
|
|
/* 024C3858 */ _t9 = cpu->r[12] + 0x00000B44u;
|
|
/* 024C3858 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C385C */ _t10 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C385C */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C3860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]);
|
|
/* 024C3864 */ _t11 = cpu->r[31] + 0x00000238u;
|
|
/* 024C3864 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C3868 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C3868 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C3868 */ if (_t13) goto L_024C386C; else goto L_024C3884;
|
|
L_024C386C: ; // 0x24c386c
|
|
/* 024C386C */ _t14 = cpu->r[12] + 0x00000B48u;
|
|
/* 024C386C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C3870 */ cpu->r[5] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C3874 */ _t15 = cpu->r[5] + cpu->r[0];
|
|
/* 024C3874 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 024C3878 */ _t16 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C3878 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C387C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024C3880 */ _t17 = cpu->r[12] + 0x00000B40u;
|
|
/* 024C3880 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
L_024C3884: ; // 0x24c3884
|
|
/* 024C3884 */ cpu->r[3] = 0x00000008u;
|
|
/* 024C3888 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C388C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3890 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3890 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C3890 */ if (_t19) goto L_024C3898; else goto L_024C3894;
|
|
L_024C3894: ; // 0x24c3894
|
|
/* 024C3894 */ Gambit_fn_023939B0(cpu);
|
|
L_024C3898: ; // 0x24c3898
|
|
/* 024C3898 */ _t20 = cpu->r[31] + 0x00000230u;
|
|
/* 024C3898 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 024C389C */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 024C389C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C38A0 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C38A4 */ cpu->lr = cpu->r[0];
|
|
/* 024C38A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C38AC */ return;
|
|
}
|
|
|
|
// fn_024C38B0 @ 0x24c38b0
|
|
void Gambit_fn_024C38B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C38B0: ; // 0x24c38b0
|
|
/* 024C38B0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C38B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C38B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C38B4 */ cpu->r[1] = _t0;
|
|
/* 024C38B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C38BC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C38BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C38C0 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C38C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C38C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C38C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C38CC */ _t4 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C38CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C38D0 */ _t5 = cpu->r[31] + 0x000001F0u;
|
|
/* 024C38D0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[30]);
|
|
/* 024C38D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C38D8 */ _t6 = cpu->r[31] + 0x000001F4u;
|
|
/* 024C38D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024C38DC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C38DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C38DC */ if (_t8) goto L_024C38E4; else goto L_024C38E0;
|
|
L_024C38E0: ; // 0x24c38e0
|
|
/* 024C38E0 */ Gambit_fn_0224A688(cpu);
|
|
L_024C38E4: ; // 0x24c38e4
|
|
/* 024C38E4 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 024C38E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C38E8 */ Gambit_fn_023939F8(cpu);
|
|
/* 024C38EC */ _t10 = cpu->r[31] + 0x00000234u;
|
|
/* 024C38EC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 024C38F0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024C38F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C38F4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C38F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C38F8 */ cpu->lr = cpu->r[0];
|
|
/* 024C38FC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C3900 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3904 */ return;
|
|
}
|
|
|
|
// fn_024C38B4 @ 0x24c38b4
|
|
void Gambit_fn_024C38B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C38B4: ; // 0x24c38b4
|
|
/* 024C38B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C38B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C38B4 */ cpu->r[1] = _t0;
|
|
/* 024C38B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C38BC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C38BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C38C0 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C38C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C38C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C38C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C38CC */ _t4 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C38CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C38D0 */ _t5 = cpu->r[31] + 0x000001F0u;
|
|
/* 024C38D0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[30]);
|
|
/* 024C38D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C38D8 */ _t6 = cpu->r[31] + 0x000001F4u;
|
|
/* 024C38D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024C38DC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C38DC */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C38DC */ if (_t8) goto L_024C38E4; else goto L_024C38E0;
|
|
L_024C38E0: ; // 0x24c38e0
|
|
/* 024C38E0 */ Gambit_fn_0224A688(cpu);
|
|
L_024C38E4: ; // 0x24c38e4
|
|
/* 024C38E4 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 024C38E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C38E8 */ Gambit_fn_023939F8(cpu);
|
|
/* 024C38EC */ _t10 = cpu->r[31] + 0x00000234u;
|
|
/* 024C38EC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 024C38F0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024C38F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C38F4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C38F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C38F8 */ cpu->lr = cpu->r[0];
|
|
/* 024C38FC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C38FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C3900 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3904 */ return;
|
|
}
|
|
|
|
// fn_024C3908 @ 0x24c3908
|
|
void Gambit_fn_024C3908(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;
|
|
|
|
L_024C3908: ; // 0x24c3908
|
|
/* 024C3908 */ cpu->r[0] = cpu->lr;
|
|
/* 024C390C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C390C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C390C */ cpu->r[1] = _t0;
|
|
/* 024C3910 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3910 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3914 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3918 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3918 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C391C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3920 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3920 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3924 */ Gambit_fn_02019890(cpu);
|
|
/* 024C3928 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C392C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000005u);
|
|
/* 024C3930 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3930 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C3930 */ if (_t6) goto L_024C3A80; else goto L_024C3934;
|
|
L_024C3934: ; // 0x24c3934
|
|
/* 024C3934 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3938 */ _t7 = cpu->r[3] + 0x00006000u;
|
|
/* 024C3938 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C393C */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 024C393C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3940 */ _t9 = cpu->r[12] + 0x00000154u;
|
|
/* 024C3940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C3944 */ cpu->ctr = cpu->r[11];
|
|
/* 024C3948 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C394C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 024C3950 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3950 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C3950 */ if (_t11) goto L_024C3A74; else goto L_024C3954;
|
|
L_024C3954: ; // 0x24c3954
|
|
/* 024C3954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 024C3958 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3958 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C3958 */ if (_t13) goto L_024C3A74; else goto L_024C395C;
|
|
L_024C395C: ; // 0x24c395c
|
|
/* 024C395C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 024C3960 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3960 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C3960 */ if (_t15) goto L_024C3A74; else goto L_024C3964;
|
|
L_024C3964: ; // 0x24c3964
|
|
/* 024C3964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 024C3968 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3968 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C3968 */ if (_t17) goto L_024C3A74; else goto L_024C396C;
|
|
L_024C396C: ; // 0x24c396c
|
|
/* 024C396C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024C3970 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3970 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C3970 */ if (_t19) goto L_024C3A74; else goto L_024C3974;
|
|
L_024C3974: ; // 0x24c3974
|
|
/* 024C3974 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3978 */ Gambit_fn_02019890(cpu);
|
|
/* 024C397C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 024C397C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C3980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C3984 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3984 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C3984 */ if (_t22) goto L_024C3988; else goto L_024C39A0;
|
|
L_024C3988: ; // 0x24c3988
|
|
/* 024C3988 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C398C */ _t23 = cpu->r[12] + 0xFFFF85A8u;
|
|
/* 024C398C */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C3990 */ _t24 = cpu->r[12] + 0x000002E8u;
|
|
/* 024C3990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3994 */ Gambit_fn_02075A30(cpu);
|
|
/* 024C3998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C399C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C399C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C399C */ if (_t26) goto L_024C3A74; else goto L_024C39A0;
|
|
L_024C39A0: ; // 0x24c39a0
|
|
/* 024C39A0 */ _t27 = cpu->r[31] + 0x000001F0u;
|
|
/* 024C39A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t27);
|
|
/* 024C39A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C39A8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39A8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024C39A8 */ if (_t29) goto L_024C39AC; else goto L_024C3A74;
|
|
L_024C39AC: ; // 0x24c39ac
|
|
/* 024C39AC */ _t30 = cpu->r[31] + 0x00000228u;
|
|
/* 024C39AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 024C39B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C39B4 */ _t31 = cpu->r[31] + 0x00000214u;
|
|
/* 024C39B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C39B8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39B8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C39B8 */ if (_t33) goto L_024C3A6C; else goto L_024C39BC;
|
|
L_024C39BC: ; // 0x24c39bc
|
|
/* 024C39BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024C39C0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39C0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C39C0 */ if (_t35) goto L_024C3A80; else goto L_024C39C4;
|
|
L_024C39C4: ; // 0x24c39c4
|
|
/* 024C39C4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C39C8 */ Gambit_fn_02019890(cpu);
|
|
/* 024C39CC */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C39CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C39D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C39D4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39D4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C39D4 */ if (_t38) goto L_024C39D8; else goto L_024C3A04;
|
|
L_024C39D8: ; // 0x24c39d8
|
|
/* 024C39D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C39DC */ cpu->r[4] = 0x00000002u;
|
|
/* 024C39E0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C39E4 */ cpu->r[3] = cpu->r[31] + 0x00000214u;
|
|
/* 024C39E8 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 024C39E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 024C39EC */ Gambit_fn_023A4814(cpu);
|
|
/* 024C39F0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C39F4 */ _t40 = cpu->r[30] + 0x00005C0Cu;
|
|
/* 024C39F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C39F4 */ cpu->r[30] = _t40;
|
|
/* 024C39F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C39FC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39FC */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C39FC */ if (_t42) goto L_024C3A80; else goto L_024C3A00;
|
|
L_024C3A00: ; // 0x24c3a00
|
|
/* 024C3A00 */ goto L_024C3A28;
|
|
L_024C3A04: ; // 0x24c3a04
|
|
/* 024C3A04 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C3A08 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3A0C */ cpu->r[3] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A10 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3A10 */ rbrew_write32(cpu->mem, _t43, cpu->r[4]);
|
|
/* 024C3A14 */ Gambit_fn_023A4814(cpu);
|
|
/* 024C3A18 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C3A1C */ _t44 = cpu->r[30] + 0x00005C0Cu;
|
|
/* 024C3A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C3A1C */ cpu->r[30] = _t44;
|
|
/* 024C3A20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C3A24 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A24 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C3A24 */ if (_t46) goto L_024C3A80; else goto L_024C3A28;
|
|
L_024C3A28: ; // 0x24c3a28
|
|
/* 024C3A28 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C3A2C */ _t47 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A2C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 024C3A30 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 024C3A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C3A34 */ cpu->r[4] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A38 */ _t49 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C3A3C */ Gambit_fn_023A3FD4(cpu);
|
|
/* 024C3A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3A44 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A44 */ _t51 = _t50 & 0x00000001u;
|
|
/* 024C3A44 */ if (_t51) goto L_024C3A48; else goto L_024C3A80;
|
|
L_024C3A48: ; // 0x24c3a48
|
|
/* 024C3A48 */ _t52 = cpu->r[30] + 0x00000000u;
|
|
/* 024C3A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C3A4C */ cpu->r[4] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A50 */ Gambit_fn_023A464C(cpu);
|
|
/* 024C3A54 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C3A58 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3A58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C3A5C */ cpu->lr = cpu->r[0];
|
|
/* 024C3A60 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024C3A64 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C3A68 */ return;
|
|
L_024C3A6C: ; // 0x24c3a6c
|
|
/* 024C3A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 024C3A70 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A70 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C3A70 */ if (_t57) goto L_024C3A80; else goto L_024C3A74;
|
|
L_024C3A74: ; // 0x24c3a74
|
|
/* 024C3A74 */ cpu->r[12] = 0x00000002u;
|
|
/* 024C3A78 */ _t58 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A78 */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 024C3A7C */ _t59 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
L_024C3A80: ; // 0x24c3a80
|
|
/* 024C3A80 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C3A84 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3A84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 024C3A88 */ cpu->lr = cpu->r[0];
|
|
/* 024C3A8C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 024C3A90 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C3A94 */ return;
|
|
}
|
|
|
|
// fn_024C390C @ 0x24c390c
|
|
void Gambit_fn_024C390C(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;
|
|
|
|
L_024C390C: ; // 0x24c390c
|
|
/* 024C390C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C390C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C390C */ cpu->r[1] = _t0;
|
|
/* 024C3910 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3910 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3914 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3918 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3918 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C391C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3920 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3920 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3924 */ Gambit_fn_02019890(cpu);
|
|
/* 024C3928 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C392C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000005u);
|
|
/* 024C3930 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3930 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C3930 */ if (_t6) goto L_024C3A80; else goto L_024C3934;
|
|
L_024C3934: ; // 0x24c3934
|
|
/* 024C3934 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3938 */ _t7 = cpu->r[3] + 0x00006000u;
|
|
/* 024C3938 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C393C */ _t8 = cpu->r[3] + 0x00000004u;
|
|
/* 024C393C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3940 */ _t9 = cpu->r[12] + 0x00000154u;
|
|
/* 024C3940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C3944 */ cpu->ctr = cpu->r[11];
|
|
/* 024C3948 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C394C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 024C3950 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3950 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C3950 */ if (_t11) goto L_024C3A74; else goto L_024C3954;
|
|
L_024C3954: ; // 0x24c3954
|
|
/* 024C3954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 024C3958 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3958 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C3958 */ if (_t13) goto L_024C3A74; else goto L_024C395C;
|
|
L_024C395C: ; // 0x24c395c
|
|
/* 024C395C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 024C3960 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3960 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C3960 */ if (_t15) goto L_024C3A74; else goto L_024C3964;
|
|
L_024C3964: ; // 0x24c3964
|
|
/* 024C3964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 024C3968 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3968 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C3968 */ if (_t17) goto L_024C3A74; else goto L_024C396C;
|
|
L_024C396C: ; // 0x24c396c
|
|
/* 024C396C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024C3970 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3970 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C3970 */ if (_t19) goto L_024C3A74; else goto L_024C3974;
|
|
L_024C3974: ; // 0x24c3974
|
|
/* 024C3974 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3978 */ Gambit_fn_02019890(cpu);
|
|
/* 024C397C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 024C397C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C3980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C3984 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3984 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C3984 */ if (_t22) goto L_024C3988; else goto L_024C39A0;
|
|
L_024C3988: ; // 0x24c3988
|
|
/* 024C3988 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C398C */ _t23 = cpu->r[12] + 0xFFFF85A8u;
|
|
/* 024C398C */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C3990 */ _t24 = cpu->r[12] + 0x000002E8u;
|
|
/* 024C3990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3994 */ Gambit_fn_02075A30(cpu);
|
|
/* 024C3998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C399C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C399C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C399C */ if (_t26) goto L_024C3A74; else goto L_024C39A0;
|
|
L_024C39A0: ; // 0x24c39a0
|
|
/* 024C39A0 */ _t27 = cpu->r[31] + 0x000001F0u;
|
|
/* 024C39A0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t27);
|
|
/* 024C39A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C39A8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39A8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024C39A8 */ if (_t29) goto L_024C39AC; else goto L_024C3A74;
|
|
L_024C39AC: ; // 0x24c39ac
|
|
/* 024C39AC */ _t30 = cpu->r[31] + 0x00000228u;
|
|
/* 024C39AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t30);
|
|
/* 024C39B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C39B4 */ _t31 = cpu->r[31] + 0x00000214u;
|
|
/* 024C39B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C39B8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39B8 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C39B8 */ if (_t33) goto L_024C3A6C; else goto L_024C39BC;
|
|
L_024C39BC: ; // 0x24c39bc
|
|
/* 024C39BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024C39C0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39C0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C39C0 */ if (_t35) goto L_024C3A80; else goto L_024C39C4;
|
|
L_024C39C4: ; // 0x24c39c4
|
|
/* 024C39C4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C39C8 */ Gambit_fn_02019890(cpu);
|
|
/* 024C39CC */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C39CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C39D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C39D4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39D4 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C39D4 */ if (_t38) goto L_024C39D8; else goto L_024C3A04;
|
|
L_024C39D8: ; // 0x24c39d8
|
|
/* 024C39D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C39DC */ cpu->r[4] = 0x00000002u;
|
|
/* 024C39E0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C39E4 */ cpu->r[3] = cpu->r[31] + 0x00000214u;
|
|
/* 024C39E8 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 024C39E8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]);
|
|
/* 024C39EC */ Gambit_fn_023A4814(cpu);
|
|
/* 024C39F0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C39F4 */ _t40 = cpu->r[30] + 0x00005C0Cu;
|
|
/* 024C39F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C39F4 */ cpu->r[30] = _t40;
|
|
/* 024C39F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C39FC */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C39FC */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C39FC */ if (_t42) goto L_024C3A80; else goto L_024C3A00;
|
|
L_024C3A00: ; // 0x24c3a00
|
|
/* 024C3A00 */ goto L_024C3A28;
|
|
L_024C3A04: ; // 0x24c3a04
|
|
/* 024C3A04 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C3A08 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3A0C */ cpu->r[3] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A10 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3A10 */ rbrew_write32(cpu->mem, _t43, cpu->r[4]);
|
|
/* 024C3A14 */ Gambit_fn_023A4814(cpu);
|
|
/* 024C3A18 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C3A1C */ _t44 = cpu->r[30] + 0x00005C0Cu;
|
|
/* 024C3A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C3A1C */ cpu->r[30] = _t44;
|
|
/* 024C3A20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C3A24 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A24 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C3A24 */ if (_t46) goto L_024C3A80; else goto L_024C3A28;
|
|
L_024C3A28: ; // 0x24c3a28
|
|
/* 024C3A28 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C3A2C */ _t47 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A2C */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 024C3A30 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 024C3A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C3A34 */ cpu->r[4] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A38 */ _t49 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C3A3C */ Gambit_fn_023A3FD4(cpu);
|
|
/* 024C3A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3A44 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A44 */ _t51 = _t50 & 0x00000001u;
|
|
/* 024C3A44 */ if (_t51) goto L_024C3A48; else goto L_024C3A80;
|
|
L_024C3A48: ; // 0x24c3a48
|
|
/* 024C3A48 */ _t52 = cpu->r[30] + 0x00000000u;
|
|
/* 024C3A48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C3A4C */ cpu->r[4] = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A50 */ Gambit_fn_023A464C(cpu);
|
|
/* 024C3A54 */ _t53 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3A54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C3A58 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3A58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C3A5C */ cpu->lr = cpu->r[0];
|
|
/* 024C3A60 */ _t55 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3A60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024C3A64 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C3A68 */ return;
|
|
L_024C3A6C: ; // 0x24c3a6c
|
|
/* 024C3A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u);
|
|
/* 024C3A70 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3A70 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C3A70 */ if (_t57) goto L_024C3A80; else goto L_024C3A74;
|
|
L_024C3A74: ; // 0x24c3a74
|
|
/* 024C3A74 */ cpu->r[12] = 0x00000002u;
|
|
/* 024C3A78 */ _t58 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A78 */ rbrew_write32(cpu->mem, _t58, cpu->r[12]);
|
|
/* 024C3A7C */ _t59 = cpu->r[31] + 0x00000214u;
|
|
/* 024C3A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
L_024C3A80: ; // 0x24c3a80
|
|
/* 024C3A80 */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C3A84 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3A84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 024C3A88 */ cpu->lr = cpu->r[0];
|
|
/* 024C3A8C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 024C3A90 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C3A94 */ return;
|
|
}
|
|
|
|
// fn_024C3A98 @ 0x24c3a98
|
|
void Gambit_fn_024C3A98(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C3A98: ; // 0x24c3a98
|
|
/* 024C3A98 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C3A9C */ _t0 = cpu->r[3] + 0x00000228u;
|
|
/* 024C3A9C */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 024C3AA0 */ return;
|
|
}
|
|
|
|
// fn_024C3AA4 @ 0x24c3aa4
|
|
void Gambit_fn_024C3AA4(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;
|
|
|
|
L_024C3AA4: ; // 0x24c3aa4
|
|
/* 024C3AA4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3AA8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 024C3AA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3AA8 */ cpu->r[1] = _t0;
|
|
/* 024C3AAC */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 024C3AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3AB0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3AB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3AB4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C3AB8 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C3AB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3ABC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 024C3ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C3AC0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 024C3AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C3AC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3AC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C3ACC */ Gambit_fn_0261F774(cpu);
|
|
/* 024C3AD0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C3AD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C3AD8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C3ADC */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C3AE0 */ /* nop */
|
|
/* 024C3AE4 */ _t6 = cpu->r[12] + 0x00004588u;
|
|
/* 024C3AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C3AE8 */ /* nop */
|
|
/* 024C3AEC */ /* nop */
|
|
/* 024C3AF0 */ _t7 = cpu->r[3] + 0x00000234u;
|
|
/* 024C3AF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C3AF4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3AF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3AF8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3AF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C3AFC */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 024C3B00 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3B00 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024C3B04 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C3B04 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024C3B08 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3B08 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 024C3B0C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C3B10 */ /* nop */
|
|
/* 024C3B14 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3B14 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024C3B18 */ /* nop */
|
|
/* 024C3B1C */ /* nop */
|
|
/* 024C3B20 */ /* nop */
|
|
/* 024C3B24 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3B24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C3B28 */ _t16 = cpu->r[3] + 0x0000024Cu;
|
|
/* 024C3B28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C3B2C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3B2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C3B30 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 024C3B34 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3B34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C3B38 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 024C3B38 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 024C3B3C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3B3C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 024C3B40 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C3B44 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024C3B48 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 024C3B48 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 024C3B4C */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 024C3B50 */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3B50 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 024C3B54 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C3B58 */ _t24 = cpu->r[31] + 0x00000210u;
|
|
/* 024C3B58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3B5C */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
/* 024C3B60 */ _t25 = cpu->r[6] + 0x00000048u;
|
|
/* 024C3B60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 024C3B64 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3B64 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 024C3B68 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 024C3B6C */ _t27 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C3B6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C3B70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3B74 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3B74 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 024C3B78 */ Gambit_fn_0224A93C(cpu);
|
|
/* 024C3B7C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C3B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C3B80 */ _t30 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3B80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C3B84 */ cpu->lr = cpu->r[0];
|
|
/* 024C3B88 */ _t31 = cpu->r[1] + 0x00000040u;
|
|
/* 024C3B88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C3B8C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 024C3B90 */ return;
|
|
}
|
|
|
|
// fn_024C3AA8 @ 0x24c3aa8
|
|
void Gambit_fn_024C3AA8(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;
|
|
|
|
L_024C3AA8: ; // 0x24c3aa8
|
|
/* 024C3AA8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 024C3AA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3AA8 */ cpu->r[1] = _t0;
|
|
/* 024C3AAC */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 024C3AAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3AB0 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3AB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3AB4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C3AB8 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C3AB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3ABC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 024C3ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C3AC0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 024C3AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C3AC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3AC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C3ACC */ Gambit_fn_0261F774(cpu);
|
|
/* 024C3AD0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C3AD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C3AD8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C3ADC */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C3AE0 */ /* nop */
|
|
/* 024C3AE4 */ _t6 = cpu->r[12] + 0x00004588u;
|
|
/* 024C3AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C3AE8 */ /* nop */
|
|
/* 024C3AEC */ /* nop */
|
|
/* 024C3AF0 */ _t7 = cpu->r[3] + 0x00000234u;
|
|
/* 024C3AF0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C3AF4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3AF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3AF8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3AF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C3AFC */ cpu->f[0] = cpu->f[13] * cpu->f[0];
|
|
/* 024C3B00 */ _t10 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3B00 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024C3B04 */ _t11 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C3B04 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024C3B08 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3B08 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 024C3B0C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C3B10 */ /* nop */
|
|
/* 024C3B14 */ _t14 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3B14 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024C3B18 */ /* nop */
|
|
/* 024C3B1C */ /* nop */
|
|
/* 024C3B20 */ /* nop */
|
|
/* 024C3B24 */ _t15 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3B24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C3B28 */ _t16 = cpu->r[3] + 0x0000024Cu;
|
|
/* 024C3B28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C3B2C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3B2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C3B30 */ cpu->f[0] = cpu->f[13] + cpu->f[0];
|
|
/* 024C3B34 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3B34 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C3B38 */ _t19 = cpu->r[1] + 0x00000034u;
|
|
/* 024C3B38 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 024C3B3C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3B3C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 024C3B40 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C3B44 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024C3B48 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 024C3B48 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]);
|
|
/* 024C3B4C */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 024C3B50 */ _t23 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3B50 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 024C3B54 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C3B58 */ _t24 = cpu->r[31] + 0x00000210u;
|
|
/* 024C3B58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3B5C */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
/* 024C3B60 */ _t25 = cpu->r[6] + 0x00000048u;
|
|
/* 024C3B60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 024C3B64 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3B64 */ rbrew_write32(cpu->mem, _t26, cpu->r[12]);
|
|
/* 024C3B68 */ cpu->r[0] = cpu->r[0] ^ 0x00000001u;
|
|
/* 024C3B6C */ _t27 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C3B6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C3B70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3B74 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3B74 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 024C3B78 */ Gambit_fn_0224A93C(cpu);
|
|
/* 024C3B7C */ _t29 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C3B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C3B80 */ _t30 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3B80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C3B84 */ cpu->lr = cpu->r[0];
|
|
/* 024C3B88 */ _t31 = cpu->r[1] + 0x00000040u;
|
|
/* 024C3B88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C3B8C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 024C3B90 */ return;
|
|
}
|
|
|
|
// fn_024C3B94 @ 0x24c3b94
|
|
void Gambit_fn_024C3B94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C3B94: ; // 0x24c3b94
|
|
/* 024C3B94 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3B98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3B98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3B98 */ cpu->r[1] = _t0;
|
|
/* 024C3B9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3B9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3BA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3BA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3BA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3BA8 */ Gambit_fn_024C3908(cpu);
|
|
/* 024C3BAC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3BB0 */ Gambit_fn_024C3A98(cpu);
|
|
/* 024C3BB4 */ _t3 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C3BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3BBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3BBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3BBC */ if (_t5) goto L_024C3BC8; else goto L_024C3BC0;
|
|
L_024C3BC0: ; // 0x24c3bc0
|
|
/* 024C3BC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3BC4 */ Gambit_fn_024C3AA4(cpu);
|
|
L_024C3BC8: ; // 0x24c3bc8
|
|
/* 024C3BC8 */ _t6 = cpu->r[31] + 0x00000230u;
|
|
/* 024C3BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3BCC */ Gambit_fn_02393A10(cpu);
|
|
/* 024C3BD0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3BD4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3BD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3BD8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3BDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3BE0 */ return;
|
|
}
|
|
|
|
// fn_024C3B98 @ 0x24c3b98
|
|
void Gambit_fn_024C3B98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C3B98: ; // 0x24c3b98
|
|
/* 024C3B98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3B98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3B98 */ cpu->r[1] = _t0;
|
|
/* 024C3B9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3B9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3BA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3BA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3BA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3BA8 */ Gambit_fn_024C3908(cpu);
|
|
/* 024C3BAC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3BB0 */ Gambit_fn_024C3A98(cpu);
|
|
/* 024C3BB4 */ _t3 = cpu->r[31] + 0x0000022Cu;
|
|
/* 024C3BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3BBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3BBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3BBC */ if (_t5) goto L_024C3BC8; else goto L_024C3BC0;
|
|
L_024C3BC0: ; // 0x24c3bc0
|
|
/* 024C3BC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3BC4 */ Gambit_fn_024C3AA4(cpu);
|
|
L_024C3BC8: ; // 0x24c3bc8
|
|
/* 024C3BC8 */ _t6 = cpu->r[31] + 0x00000230u;
|
|
/* 024C3BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3BCC */ Gambit_fn_02393A10(cpu);
|
|
/* 024C3BD0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3BD4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3BD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3BD8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3BDC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3BE0 */ return;
|
|
}
|
|
|
|
// fn_024C3BE4 @ 0x24c3be4
|
|
void Gambit_fn_024C3BE4(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_024C3BE4: ; // 0x24c3be4
|
|
/* 024C3BE4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3BE8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C3BE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3BE8 */ cpu->r[1] = _t0;
|
|
/* 024C3BEC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3BEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3BF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3BF4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3BF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3BF8 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3BFC */ Gambit_fn_0239859C(cpu);
|
|
/* 024C3C00 */ _t4 = cpu->r[31] + 0x00000060u;
|
|
/* 024C3C00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024C3C04 */ _t5 = cpu->r[31] + 0x00000064u;
|
|
/* 024C3C04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 024C3C08 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3C08 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 024C3C0C */ _t7 = cpu->r[31] + 0x00000078u;
|
|
/* 024C3C0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C3C10 */ _t8 = cpu->r[31] + 0x00000054u;
|
|
/* 024C3C10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C3C14 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3C14 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[12]);
|
|
/* 024C3C18 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3C18 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 024C3C1C */ _t11 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024C3C1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C3C20 */ _t12 = cpu->r[31] + 0x00000070u;
|
|
/* 024C3C20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C3C24 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3C24 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 024C3C28 */ _t14 = cpu->r[31] + 0x00000058u;
|
|
/* 024C3C28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C3C2C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3C2C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C3C30 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3C30 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 024C3C34 */ _t17 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C3C38 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3C38 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 024C3C3C */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024C3C3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C3C40 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3C40 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 024C3C44 */ _t21 = cpu->r[31] + 0x00000068u;
|
|
/* 024C3C44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C3C48 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3C48 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 024C3C4C */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C3C4C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 024C3C50 */ _t24 = cpu->r[31] + 0x00000074u;
|
|
/* 024C3C50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024C3C54 */ _t25 = cpu->r[31] + 0x00000080u;
|
|
/* 024C3C54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C3C58 */ _t26 = cpu->r[31] + 0x000001FCu;
|
|
/* 024C3C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C3C5C */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3C5C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 024C3C60 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 024C3C60 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 024C3C64 */ _t29 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 024C3C68 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3C6C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024C3C70 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024C3C74 */ _t30 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C74 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 024C3C78 */ Gambit_fn_02C69510(cpu);
|
|
/* 024C3C7C */ cpu->r[4] = 0x00000003u;
|
|
/* 024C3C80 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3C84 */ Gambit_fn_02980304(cpu);
|
|
/* 024C3C88 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3C8C */ Gambit_fn_02980318(cpu);
|
|
/* 024C3C90 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C3C94 */ _t32 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3C94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C3C98 */ cpu->lr = cpu->r[0];
|
|
/* 024C3C9C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C3CA0 */ return;
|
|
}
|
|
|
|
// fn_024C3BE8 @ 0x24c3be8
|
|
void Gambit_fn_024C3BE8(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_024C3BE8: ; // 0x24c3be8
|
|
/* 024C3BE8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C3BE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3BE8 */ cpu->r[1] = _t0;
|
|
/* 024C3BEC */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3BEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3BF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3BF4 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3BF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3BF8 */ _t3 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3BF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3BFC */ Gambit_fn_0239859C(cpu);
|
|
/* 024C3C00 */ _t4 = cpu->r[31] + 0x00000060u;
|
|
/* 024C3C00 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024C3C04 */ _t5 = cpu->r[31] + 0x00000064u;
|
|
/* 024C3C04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 024C3C08 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3C08 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[12]);
|
|
/* 024C3C0C */ _t7 = cpu->r[31] + 0x00000078u;
|
|
/* 024C3C0C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C3C10 */ _t8 = cpu->r[31] + 0x00000054u;
|
|
/* 024C3C10 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C3C14 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3C14 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[12]);
|
|
/* 024C3C18 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3C18 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 024C3C1C */ _t11 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024C3C1C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C3C20 */ _t12 = cpu->r[31] + 0x00000070u;
|
|
/* 024C3C20 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C3C24 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3C24 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 024C3C28 */ _t14 = cpu->r[31] + 0x00000058u;
|
|
/* 024C3C28 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C3C2C */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C3C2C */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C3C30 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3C30 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[13]);
|
|
/* 024C3C34 */ _t17 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C3C38 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3C38 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]);
|
|
/* 024C3C3C */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024C3C3C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C3C40 */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 024C3C40 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 024C3C44 */ _t21 = cpu->r[31] + 0x00000068u;
|
|
/* 024C3C44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C3C48 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3C48 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]);
|
|
/* 024C3C4C */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C3C4C */ rbrew_write_f32(cpu->mem, _t23, cpu->f[13]);
|
|
/* 024C3C50 */ _t24 = cpu->r[31] + 0x00000074u;
|
|
/* 024C3C50 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024C3C54 */ _t25 = cpu->r[31] + 0x00000080u;
|
|
/* 024C3C54 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C3C58 */ _t26 = cpu->r[31] + 0x000001FCu;
|
|
/* 024C3C58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C3C5C */ _t27 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3C5C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[13]);
|
|
/* 024C3C60 */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 024C3C60 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[0]);
|
|
/* 024C3C64 */ _t29 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 024C3C68 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C3C6C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024C3C70 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024C3C74 */ _t30 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C3C74 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]);
|
|
/* 024C3C78 */ Gambit_fn_02C69510(cpu);
|
|
/* 024C3C7C */ cpu->r[4] = 0x00000003u;
|
|
/* 024C3C80 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3C84 */ Gambit_fn_02980304(cpu);
|
|
/* 024C3C88 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3C8C */ Gambit_fn_02980318(cpu);
|
|
/* 024C3C90 */ _t31 = cpu->r[1] + 0x00000044u;
|
|
/* 024C3C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C3C94 */ _t32 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3C94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C3C98 */ cpu->lr = cpu->r[0];
|
|
/* 024C3C9C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C3CA0 */ return;
|
|
}
|
|
|
|
// fn_024C3CA4 @ 0x24c3ca4
|
|
void Gambit_fn_024C3CA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C3CA4: ; // 0x24c3ca4
|
|
/* 024C3CA4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3CA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3CA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3CA8 */ cpu->r[1] = _t0;
|
|
/* 024C3CAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3CB4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3CB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3CB8 */ Gambit_fn_024F606C(cpu);
|
|
/* 024C3CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3CC0 */ Gambit_fn_024F607C(cpu);
|
|
/* 024C3CC4 */ _t3 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3CC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C3CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3CCC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3CCC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3CCC */ if (_t5) goto L_024C3CD8; else goto L_024C3CD0;
|
|
L_024C3CD0: ; // 0x24c3cd0
|
|
/* 024C3CD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3CD4 */ Gambit_fn_024C3BE4(cpu);
|
|
L_024C3CD8: ; // 0x24c3cd8
|
|
/* 024C3CD8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3CDC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3CE0 */ cpu->lr = cpu->r[0];
|
|
/* 024C3CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3CE8 */ return;
|
|
}
|
|
|
|
// fn_024C3CA8 @ 0x24c3ca8
|
|
void Gambit_fn_024C3CA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C3CA8: ; // 0x24c3ca8
|
|
/* 024C3CA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3CA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3CA8 */ cpu->r[1] = _t0;
|
|
/* 024C3CAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3CB4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3CB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3CB8 */ Gambit_fn_024F606C(cpu);
|
|
/* 024C3CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3CC0 */ Gambit_fn_024F607C(cpu);
|
|
/* 024C3CC4 */ _t3 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3CC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C3CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3CCC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3CCC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3CCC */ if (_t5) goto L_024C3CD8; else goto L_024C3CD0;
|
|
L_024C3CD0: ; // 0x24c3cd0
|
|
/* 024C3CD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3CD4 */ Gambit_fn_024C3BE4(cpu);
|
|
L_024C3CD8: ; // 0x24c3cd8
|
|
/* 024C3CD8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3CD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3CDC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3CE0 */ cpu->lr = cpu->r[0];
|
|
/* 024C3CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3CE8 */ return;
|
|
}
|
|
|
|
// fn_024C3CEC @ 0x24c3cec
|
|
void Gambit_fn_024C3CEC(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_024C3CEC: ; // 0x24c3cec
|
|
/* 024C3CEC */ cpu->r[0] = cpu->lr;
|
|
/* 024C3CF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3CF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3CF0 */ cpu->r[1] = _t0;
|
|
/* 024C3CF4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3CF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3CF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C3CFC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3D00 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3D00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3D04 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C3D08 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C3D0C */ _t4 = cpu->r[10] + 0x000004ACu;
|
|
/* 024C3D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C3D0C */ cpu->r[10] = _t4;
|
|
/* 024C3D10 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3D14 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C3D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3D1C */ cpu->r[4] = cpu->r[4] + 0x000007C8u;
|
|
/* 024C3D20 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D20 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C3D20 */ if (_t6) goto L_024C3D24; else goto L_024C3D38;
|
|
L_024C3D24: ; // 0x24c3d24
|
|
/* 024C3D24 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C3D28 */ cpu->r[8] = 0x00000001u;
|
|
/* 024C3D2C */ cpu->r[0] = cpu->r[0] + 0x00004248u;
|
|
/* 024C3D30 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 024C3D30 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024C3D34 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 024C3D34 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C3D38: ; // 0x24c3d38
|
|
/* 024C3D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C3D3C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D3C */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C3D3C */ if (_t10) goto L_024C3D5C; else goto L_024C3D40;
|
|
L_024C3D40: ; // 0x24c3d40
|
|
/* 024C3D40 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 024C3D40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C3D44 */ _t12 = cpu->r[11] + 0x0000006Cu;
|
|
/* 024C3D44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C3D48 */ cpu->ctr = cpu->r[12];
|
|
/* 024C3D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C3D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3D58 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D58 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C3D58 */ if (_t14) goto L_024C3D5C; else goto L_024C3D60;
|
|
L_024C3D5C: ; // 0x24c3d5c
|
|
/* 024C3D5C */ cpu->r[31] = 0x00000000u;
|
|
L_024C3D60: ; // 0x24c3d60
|
|
/* 024C3D60 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 024C3D60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C3D64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3D68 */ _t16 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C3D68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C3D6C */ _t17 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C3D6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C3D70 */ cpu->f[1] = cpu->f[0] - cpu->f[13];
|
|
/* 024C3D74 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 024C3D74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C3D78 */ cpu->f[2] = cpu->f[0] + cpu->f[13];
|
|
/* 024C3D7C */ _t19 = cpu->r[3] + 0x00005444u;
|
|
/* 024C3D7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C3D80 */ cpu->f[4] = cpu->f[12] + cpu->f[13];
|
|
/* 024C3D84 */ _t20 = cpu->r[30] + 0x000001ECu;
|
|
/* 024C3D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C3D88 */ cpu->r[4] = 0x101C0000u;
|
|
/* 024C3D8C */ cpu->f[3] = cpu->f[12] - cpu->f[13];
|
|
/* 024C3D90 */ _t21 = cpu->r[4] + 0x00006648u;
|
|
/* 024C3D90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C3D94 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C3D98 */ Gambit_fn_02031B20(cpu);
|
|
/* 024C3D9C */ _t22 = cpu->r[30] + 0x000001E8u;
|
|
/* 024C3D9C */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 024C3DA0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C3DA4 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3DA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3DA8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3DAC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C3DB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3DB4 */ return;
|
|
}
|
|
|
|
// fn_024C3CF0 @ 0x24c3cf0
|
|
void Gambit_fn_024C3CF0(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_024C3CF0: ; // 0x24c3cf0
|
|
/* 024C3CF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3CF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3CF0 */ cpu->r[1] = _t0;
|
|
/* 024C3CF4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3CF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3CF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C3CFC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3CFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3D00 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3D00 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3D04 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C3D08 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C3D0C */ _t4 = cpu->r[10] + 0x000004ACu;
|
|
/* 024C3D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C3D0C */ cpu->r[10] = _t4;
|
|
/* 024C3D10 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3D14 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C3D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3D1C */ cpu->r[4] = cpu->r[4] + 0x000007C8u;
|
|
/* 024C3D20 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D20 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C3D20 */ if (_t6) goto L_024C3D24; else goto L_024C3D38;
|
|
L_024C3D24: ; // 0x24c3d24
|
|
/* 024C3D24 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C3D28 */ cpu->r[8] = 0x00000001u;
|
|
/* 024C3D2C */ cpu->r[0] = cpu->r[0] + 0x00004248u;
|
|
/* 024C3D30 */ _t7 = cpu->r[10] + 0x00000000u;
|
|
/* 024C3D30 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024C3D34 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 024C3D34 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C3D38: ; // 0x24c3d38
|
|
/* 024C3D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C3D3C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D3C */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C3D3C */ if (_t10) goto L_024C3D5C; else goto L_024C3D40;
|
|
L_024C3D40: ; // 0x24c3d40
|
|
/* 024C3D40 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 024C3D40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C3D44 */ _t12 = cpu->r[11] + 0x0000006Cu;
|
|
/* 024C3D44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C3D48 */ cpu->ctr = cpu->r[12];
|
|
/* 024C3D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C3D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C3D54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3D58 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3D58 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C3D58 */ if (_t14) goto L_024C3D5C; else goto L_024C3D60;
|
|
L_024C3D5C: ; // 0x24c3d5c
|
|
/* 024C3D5C */ cpu->r[31] = 0x00000000u;
|
|
L_024C3D60: ; // 0x24c3d60
|
|
/* 024C3D60 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 024C3D60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C3D64 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3D68 */ _t16 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C3D68 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C3D6C */ _t17 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C3D6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C3D70 */ cpu->f[1] = cpu->f[0] - cpu->f[13];
|
|
/* 024C3D74 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 024C3D74 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C3D78 */ cpu->f[2] = cpu->f[0] + cpu->f[13];
|
|
/* 024C3D7C */ _t19 = cpu->r[3] + 0x00005444u;
|
|
/* 024C3D7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C3D80 */ cpu->f[4] = cpu->f[12] + cpu->f[13];
|
|
/* 024C3D84 */ _t20 = cpu->r[30] + 0x000001ECu;
|
|
/* 024C3D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C3D88 */ cpu->r[4] = 0x101C0000u;
|
|
/* 024C3D8C */ cpu->f[3] = cpu->f[12] - cpu->f[13];
|
|
/* 024C3D90 */ _t21 = cpu->r[4] + 0x00006648u;
|
|
/* 024C3D90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C3D94 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C3D98 */ Gambit_fn_02031B20(cpu);
|
|
/* 024C3D9C */ _t22 = cpu->r[30] + 0x000001E8u;
|
|
/* 024C3D9C */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 024C3DA0 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C3DA4 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3DA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3DA8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3DAC */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C3DB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3DB4 */ return;
|
|
}
|
|
|
|
// fn_024C3DB8 @ 0x24c3db8
|
|
void Gambit_fn_024C3DB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024C3DB8: ; // 0x24c3db8
|
|
/* 024C3DB8 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3DBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3DBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3DBC */ cpu->r[1] = _t0;
|
|
/* 024C3DC0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3DC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3DC8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3DCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3DD0 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C3DD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3DD4 */ cpu->r[4] = cpu->r[31] + 0x000001E8u;
|
|
/* 024C3DD8 */ Gambit_fn_02031BD0(cpu);
|
|
/* 024C3DDC */ cpu->r[0] = 0x00000000u;
|
|
/* 024C3DE0 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C3DE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C3DE4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C3DE8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3DEC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3DF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3DF4 */ return;
|
|
}
|
|
|
|
// fn_024C3DBC @ 0x24c3dbc
|
|
void Gambit_fn_024C3DBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024C3DBC: ; // 0x24c3dbc
|
|
/* 024C3DBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3DBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3DBC */ cpu->r[1] = _t0;
|
|
/* 024C3DC0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C3DC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3DC8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C3DCC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C3DD0 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C3DD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C3DD4 */ cpu->r[4] = cpu->r[31] + 0x000001E8u;
|
|
/* 024C3DD8 */ Gambit_fn_02031BD0(cpu);
|
|
/* 024C3DDC */ cpu->r[0] = 0x00000000u;
|
|
/* 024C3DE0 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C3DE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C3DE4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C3DE8 */ cpu->lr = cpu->r[0];
|
|
/* 024C3DEC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3DEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3DF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3DF4 */ return;
|
|
}
|
|
|
|
// fn_024C3DFC @ 0x24c3dfc
|
|
void Gambit_fn_024C3DFC(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_024C3DFC: ; // 0x24c3dfc
|
|
/* 024C3DFC */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024C3DFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3DFC */ cpu->r[1] = _t0;
|
|
/* 024C3E00 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3E00 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 024C3E04 */ /* nop */
|
|
/* 024C3E08 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3E08 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 024C3E0C */ /* nop */
|
|
/* 024C3E10 */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3E10 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 024C3E14 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3E14 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 024C3E18 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3E18 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C3E1C */ cpu->f[30] = cpu->f[2];
|
|
/* 024C3E20 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3E20 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024C3E24 */ cpu->f[31] = cpu->f[1];
|
|
/* 024C3E28 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3E28 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 024C3E2C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C3E30 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C3E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3E38 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3E38 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C3E38 */ if (_t9) goto L_024C3F64; else goto L_024C3E3C;
|
|
L_024C3E3C: ; // 0x24c3e3c
|
|
/* 024C3E3C */ _t10 = cpu->r[31] + 0x000001BCu;
|
|
/* 024C3E3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C3E40 */ /* nop */
|
|
/* 024C3E44 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C3E48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 024C3E4C */ _t11 = cpu->r[12] + 0x0000458Cu;
|
|
/* 024C3E4C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C3E50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3E50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C3E50 */ if (_t13) goto L_024C3E64; else goto L_024C3E54;
|
|
L_024C3E54: ; // 0x24c3e54
|
|
/* 024C3E54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000007u);
|
|
/* 024C3E58 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3E58 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C3E58 */ if (_t15) goto L_024C3ECC; else goto L_024C3E5C;
|
|
L_024C3E5C: ; // 0x24c3e5c
|
|
/* 024C3E5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x0000000Bu);
|
|
/* 024C3E60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3E60 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C3E60 */ if (_t17) goto L_024C3E64; else goto L_024C3F58;
|
|
L_024C3E64: ; // 0x24c3e64
|
|
/* 024C3E64 */ cpu->f[31] = cpu->f[13] * cpu->f[31];
|
|
/* 024C3E68 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C3E6C */ _t18 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3E6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C3E70 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C3E74 */ cpu->r[4] = cpu->r[30] + 0x00004598u;
|
|
/* 024C3E78 */ Gambit_fn_02398850(cpu);
|
|
/* 024C3E7C */ cpu->f[1] = cpu->f[31];
|
|
/* 024C3E80 */ _t19 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3E80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C3E84 */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C3E88 */ cpu->f[1] = cpu->f[30];
|
|
/* 024C3E8C */ _t20 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3E8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C3E90 */ Gambit_fn_023988E0(cpu);
|
|
/* 024C3E94 */ _t21 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3E94 */ cpu->r[0] = rbrew_read8(cpu->mem, _t21);
|
|
/* 024C3E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3E9C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3E9C */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C3E9C */ if (_t23) goto L_024C3F58; else goto L_024C3EA0;
|
|
L_024C3EA0: ; // 0x24c3ea0
|
|
/* 024C3EA0 */ _t24 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C3EA4 */ cpu->r[4] = cpu->r[30] + 0x00004598u;
|
|
/* 024C3EA8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C3EAC */ Gambit_fn_02398850(cpu);
|
|
/* 024C3EB0 */ cpu->f[1] = cpu->f[31];
|
|
/* 024C3EB4 */ _t25 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3EB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C3EB8 */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C3EBC */ cpu->f[1] = cpu->f[30];
|
|
/* 024C3EC0 */ _t26 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3EC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C3EC4 */ Gambit_fn_023988E0(cpu);
|
|
/* 024C3EC8 */ goto L_024C3F58;
|
|
L_024C3ECC: ; // 0x24c3ecc
|
|
/* 024C3ECC */ _t27 = cpu->r[31] + 0x00000234u;
|
|
/* 024C3ECC */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C3ED0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C3ED4 */ _t28 = cpu->r[12] + 0x00004590u;
|
|
/* 024C3ED4 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t28);
|
|
/* 024C3ED8 */ cpu->r[7] = 0x43300000u;
|
|
/* 024C3EDC */ cpu->r[8] = cpu->r[6] ^ 0x80000000u;
|
|
/* 024C3EE0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3EE0 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 024C3EE4 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3EE4 */ rbrew_write32(cpu->mem, _t30, cpu->r[8]);
|
|
/* 024C3EE8 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3EE8 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 024C3EEC */ cpu->f[11] = cpu->f[10] - cpu->f[0];
|
|
/* 024C3EF0 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C3EF4 */ cpu->f[12] = (double)(float)cpu->f[11];
|
|
/* 024C3EF8 */ _t32 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3EF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C3EFC */ cpu->r[5] = 0x00000001u;
|
|
/* 024C3F00 */ cpu->r[4] = cpu->r[30] + 0x000045A8u;
|
|
/* 024C3F04 */ cpu->f[31] = cpu->f[13] * cpu->f[12];
|
|
/* 024C3F08 */ Gambit_fn_02398850(cpu);
|
|
/* 024C3F0C */ cpu->f[1] = cpu->f[31];
|
|
/* 024C3F10 */ _t33 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3F10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C3F14 */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C3F18 */ cpu->f[1] = cpu->f[30];
|
|
/* 024C3F1C */ _t34 = cpu->r[31] + 0x00000130u;
|
|
/* 024C3F1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C3F20 */ Gambit_fn_023988E0(cpu);
|
|
/* 024C3F24 */ _t35 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C3F24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t35);
|
|
/* 024C3F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C3F2C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3F2C */ _t37 = _t36 & 0x00000001u;
|
|
/* 024C3F2C */ if (_t37) goto L_024C3F58; else goto L_024C3F30;
|
|
L_024C3F30: ; // 0x24c3f30
|
|
/* 024C3F30 */ _t38 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3F30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C3F34 */ cpu->r[4] = cpu->r[30] + 0x000045A8u;
|
|
/* 024C3F38 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C3F3C */ Gambit_fn_02398850(cpu);
|
|
/* 024C3F40 */ cpu->f[1] = cpu->f[31];
|
|
/* 024C3F44 */ _t39 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3F44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024C3F48 */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C3F4C */ cpu->f[1] = cpu->f[30];
|
|
/* 024C3F50 */ _t40 = cpu->r[31] + 0x00000204u;
|
|
/* 024C3F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C3F54 */ Gambit_fn_023988E0(cpu);
|
|
L_024C3F58: ; // 0x24c3f58
|
|
/* 024C3F58 */ _t41 = cpu->r[31] + 0x00000234u;
|
|
/* 024C3F58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C3F5C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C3F60 */ _t42 = cpu->r[31] + 0x00000234u;
|
|
/* 024C3F60 */ rbrew_write32(cpu->mem, _t42, cpu->r[11]);
|
|
L_024C3F64: ; // 0x24c3f64
|
|
/* 024C3F64 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3F64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C3F68 */ _t44 = cpu->r[1] + 0x00000030u;
|
|
/* 024C3F68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 024C3F6C */ _t45 = cpu->r[1] + 0x00000020u;
|
|
/* 024C3F6C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 024C3F70 */ _t46 = cpu->r[1] + 0x00000028u;
|
|
/* 024C3F70 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t46);
|
|
/* 024C3F74 */ _t47 = cpu->r[1] + 0x00000018u;
|
|
/* 024C3F74 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t47);
|
|
/* 024C3F78 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 024C3F78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C3F7C */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C3F7C */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C3F7C */ if (_t50) goto L_024C3F80; // else: addr-0 trap, fall-through
|
|
L_024C3F80: ; // 0x24c3f80
|
|
/* 024C3F80 */ _t51 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C3F80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C3F84 */ cpu->lr = cpu->r[0];
|
|
/* 024C3F88 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024C3F8C */ return;
|
|
}
|
|
|
|
// fn_024C3F90 @ 0x24c3f90
|
|
void Gambit_fn_024C3F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C3F90: ; // 0x24c3f90
|
|
/* 024C3F90 */ cpu->r[0] = cpu->lr;
|
|
/* 024C3F94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3F94 */ cpu->r[1] = _t0;
|
|
/* 024C3F98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3F9C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3F9C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3FA0 */ cpu->r[31] = 0x0000000Au;
|
|
/* 024C3FA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C3FA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3FAC */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C3FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3FB4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3FB4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3FB4 */ if (_t5) goto L_024C3FBC; else goto L_024C3FB8;
|
|
L_024C3FB8: ; // 0x24c3fb8
|
|
/* 024C3FB8 */ cpu->r[31] = 0x00000009u;
|
|
L_024C3FBC: ; // 0x24c3fbc
|
|
/* 024C3FBC */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 024C3FC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C3FC4 */ Gambit_fn_023A2FEC(cpu);
|
|
/* 024C3FC8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3FCC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3FCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3FD0 */ cpu->lr = cpu->r[0];
|
|
/* 024C3FD4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3FD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3FD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3FDC */ return;
|
|
}
|
|
|
|
// fn_024C3F94 @ 0x24c3f94
|
|
void Gambit_fn_024C3F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C3F94: ; // 0x24c3f94
|
|
/* 024C3F94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C3F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3F94 */ cpu->r[1] = _t0;
|
|
/* 024C3F98 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3F98 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C3F9C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3F9C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C3FA0 */ cpu->r[31] = 0x0000000Au;
|
|
/* 024C3FA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C3FA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C3FAC */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C3FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C3FB4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C3FB4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C3FB4 */ if (_t5) goto L_024C3FBC; else goto L_024C3FB8;
|
|
L_024C3FB8: ; // 0x24c3fb8
|
|
/* 024C3FB8 */ cpu->r[31] = 0x00000009u;
|
|
L_024C3FBC: ; // 0x24c3fbc
|
|
/* 024C3FBC */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 024C3FC0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C3FC4 */ Gambit_fn_023A2FEC(cpu);
|
|
/* 024C3FC8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C3FCC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3FCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C3FD0 */ cpu->lr = cpu->r[0];
|
|
/* 024C3FD4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3FD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C3FD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C3FDC */ return;
|
|
}
|
|
|
|
// fn_024C3FE0 @ 0x24c3fe0
|
|
void Gambit_fn_024C3FE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_023A2FEC: ; // 0x23a2fec
|
|
/* 023A2FEC */ cpu->r[0] = cpu->lr;
|
|
/* 023A2FF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A2FF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A2FF0 */ cpu->r[1] = _t0;
|
|
/* 023A2FF4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023A2FF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A2FF8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A2FF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A2FFC */ cpu->r[30] = cpu->r[3];
|
|
/* 023A3000 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3000 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A3004 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023A3004 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 023A3008 */ /* nop */
|
|
/* 023A300C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 023A3010 */ cpu->r[31] = cpu->r[4];
|
|
/* 023A3014 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3014 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3014 */ if (_t6) goto L_023A3018; else goto L_023A302C;
|
|
L_023A3018: ; // 0x23a3018
|
|
/* 023A3018 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 023A3018 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023A301C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 023A301C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023A3020 */ cpu->ctr = cpu->r[0];
|
|
/* 023A3024 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A302C: ; // 0x23a302c
|
|
/* 023A302C */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3030 */ cpu->r[4] = cpu->r[31];
|
|
/* 023A3034 */ Gambit_fn_023A2F64(cpu);
|
|
/* 023A3038 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A303C */ /* nop */
|
|
/* 023A3040 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023A3044 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3048 */ Gambit_fn_023A2DE4(cpu);
|
|
/* 023A304C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023A304C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A3050 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023A3050 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A3054 */ cpu->lr = cpu->r[0];
|
|
/* 023A3058 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A3058 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A305C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A3060 */ return;
|
|
L_024C3FE0: ; // 0x24c3fe0
|
|
/* 024C3FE0 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 024C3FE4 */ cpu->r[4] = 0x0000000Du;
|
|
/* 024C3FE8 */ goto L_023A2FEC;
|
|
}
|
|
|
|
// fn_024C3FEC @ 0x24c3fec
|
|
void Gambit_fn_024C3FEC(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;
|
|
|
|
L_024C3FEC: ; // 0x24c3fec
|
|
/* 024C3FEC */ cpu->r[0] = cpu->lr;
|
|
/* 024C3FF0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C3FF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3FF0 */ cpu->r[1] = _t0;
|
|
/* 024C3FF4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3FF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C3FF8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3FF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C3FFC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C4000 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4000 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4004 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C4008 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4008 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C400C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C400C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C400C */ if (_t7) goto L_024C4010; else goto L_024C4020;
|
|
L_024C4010: ; // 0x24c4010
|
|
/* 024C4010 */ cpu->r[3] = 0x00000424u;
|
|
/* 024C4014 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4018 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C401C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C401C */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C401C */ if (_t9) goto L_024C42B0; else goto L_024C4020;
|
|
L_024C4020: ; // 0x24c4020
|
|
/* 024C4020 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4024 */ Gambit_fn_025015D0(cpu);
|
|
/* 024C4028 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C402C */ cpu->r[29] = 0x00000000u;
|
|
/* 024C4030 */ cpu->r[0] = cpu->r[0] + 0x000042E0u;
|
|
/* 024C4034 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 024C4034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4038 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C4038 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C403C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C403C */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C403C */ if (_t12) goto L_024C4040; else goto L_024C4050;
|
|
L_024C4040: ; // 0x24c4040
|
|
/* 024C4040 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4044 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4048 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C404C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C404C */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C404C */ if (_t14) goto L_024C40A4; else goto L_024C4050;
|
|
L_024C4050: ; // 0x24c4050
|
|
/* 024C4050 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4054 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4058 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C405C */ cpu->r[5] = cpu->r[5] + 0x0000463Cu;
|
|
/* 024C4060 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4064 */ cpu->r[6] = cpu->r[6] + 0x000045C0u;
|
|
/* 024C4068 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C406C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4070 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4074 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C4078 */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C407C */ _t15 = cpu->r[9] + 0x00004588u;
|
|
/* 024C407C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C4080 */ cpu->r[0] = 0x10110000u;
|
|
/* 024C4084 */ _t16 = cpu->r[8] + 0x00004530u;
|
|
/* 024C4084 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C4088 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 024C408C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4090 */ _t17 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4090 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 024C4094 */ _t18 = cpu->r[10] + 0x000045B4u;
|
|
/* 024C4094 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C4098 */ _t19 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4098 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024C409C */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 024C409C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 024C40A0 */ _t21 = cpu->r[30] + 0x00000054u;
|
|
/* 024C40A0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
L_024C40A4: ; // 0x24c40a4
|
|
/* 024C40A4 */ cpu->r[28] = 0x10110000u;
|
|
/* 024C40A8 */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 024C40A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C40AC */ cpu->r[28] = cpu->r[28] + 0x0000095Cu;
|
|
/* 024C40B0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C40B0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C40B0 */ if (_t23) goto L_024C40B4; else goto L_024C40C4;
|
|
L_024C40B4: ; // 0x24c40b4
|
|
/* 024C40B4 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C40B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C40BC */ cpu->r[30] = cpu->r[3];
|
|
/* 024C40BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C40C0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C40C0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C40C0 */ if (_t25) goto L_024C4104; else goto L_024C40C4;
|
|
L_024C40C4: ; // 0x24c40c4
|
|
/* 024C40C4 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C40C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C40CC */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C40D0 */ cpu->r[5] = cpu->r[5] + 0x00004608u;
|
|
/* 024C40D4 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C40D8 */ cpu->r[6] = cpu->r[6] + 0x0000464Cu;
|
|
/* 024C40DC */ cpu->r[7] = cpu->r[5];
|
|
/* 024C40E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C40E4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C40E8 */ cpu->r[12] = 0x00000384u;
|
|
/* 024C40EC */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 024C40EC */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 024C40F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C40F4 */ _t27 = cpu->r[30] + 0x00000054u;
|
|
/* 024C40F4 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 024C40F8 */ cpu->r[6] = 0x00000708u;
|
|
/* 024C40FC */ _t28 = cpu->r[30] + 0x00000058u;
|
|
/* 024C40FC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024C4100 */ _t29 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4100 */ rbrew_write32(cpu->mem, _t29, cpu->r[6]);
|
|
L_024C4104: ; // 0x24c4104
|
|
/* 024C4104 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 024C4104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4108 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4108 */ _t31 = _t30 & 0x00000001u;
|
|
/* 024C4108 */ if (_t31) goto L_024C410C; else goto L_024C411C;
|
|
L_024C410C: ; // 0x24c410c
|
|
/* 024C410C */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4110 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4114 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4118 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4118 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C4118 */ if (_t33) goto L_024C4154; else goto L_024C411C;
|
|
L_024C411C: ; // 0x24c411c
|
|
/* 024C411C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4120 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4124 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4128 */ cpu->r[5] = cpu->r[5] + 0x000045C8u;
|
|
/* 024C412C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4130 */ cpu->r[6] = cpu->r[6] + 0x00004674u;
|
|
/* 024C4134 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4138 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C413C */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4140 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 024C4140 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 024C4144 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C4148 */ _t35 = cpu->r[30] + 0x00000054u;
|
|
/* 024C4148 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 024C414C */ _t36 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C414C */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 024C4150 */ _t37 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4150 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
L_024C4154: ; // 0x24c4154
|
|
/* 024C4154 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 024C4154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4158 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4158 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C4158 */ if (_t39) goto L_024C415C; else goto L_024C416C;
|
|
L_024C415C: ; // 0x24c415c
|
|
/* 024C415C */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4160 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4164 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4168 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4168 */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C4168 */ if (_t41) goto L_024C41A8; else goto L_024C416C;
|
|
L_024C416C: ; // 0x24c416c
|
|
/* 024C416C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4170 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4174 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4178 */ cpu->r[5] = cpu->r[5] + 0x000045E0u;
|
|
/* 024C417C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4180 */ cpu->r[6] = cpu->r[6] + 0x0000469Cu;
|
|
/* 024C4184 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4188 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C418C */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4190 */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 024C4190 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 024C4194 */ cpu->r[9] = 0x0000001Eu;
|
|
/* 024C4198 */ _t43 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4198 */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 024C419C */ cpu->r[10] = 0x0000012Cu;
|
|
/* 024C41A0 */ _t44 = cpu->r[30] + 0x00000054u;
|
|
/* 024C41A0 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024C41A4 */ _t45 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C41A4 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
L_024C41A8: ; // 0x24c41a8
|
|
/* 024C41A8 */ cpu->r[30] = cpu->r[31] + 0x00000308u;
|
|
/* 024C41A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C41AC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C41AC */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C41AC */ if (_t47) goto L_024C41B0; else goto L_024C41C0;
|
|
L_024C41B0: ; // 0x24c41b0
|
|
/* 024C41B0 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C41B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C41B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C41B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C41BC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C41BC */ _t49 = _t48 & 0x00000001u;
|
|
/* 024C41BC */ if (_t49) goto L_024C4200; else goto L_024C41C0;
|
|
L_024C41C0: ; // 0x24c41c0
|
|
/* 024C41C0 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C41C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C41C8 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C41CC */ cpu->r[5] = cpu->r[5] + 0x000046C0u;
|
|
/* 024C41D0 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C41D4 */ cpu->r[6] = cpu->r[6] + 0x000046ECu;
|
|
/* 024C41D8 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C41DC */ cpu->r[3] = cpu->r[30];
|
|
/* 024C41E0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C41E4 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 024C41E4 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 024C41E8 */ cpu->r[0] = 0x00000384u;
|
|
/* 024C41EC */ cpu->r[12] = 0x00000001u;
|
|
/* 024C41F0 */ _t51 = cpu->r[30] + 0x00000054u;
|
|
/* 024C41F0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 024C41F4 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C41F8 */ _t52 = cpu->r[30] + 0x00000058u;
|
|
/* 024C41F8 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 024C41FC */ _t53 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C41FC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
L_024C4200: ; // 0x24c4200
|
|
/* 024C4200 */ cpu->r[30] = cpu->r[31] + 0x00000368u;
|
|
/* 024C4200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4204 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4204 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024C4204 */ if (_t55) goto L_024C4208; else goto L_024C4218;
|
|
L_024C4208: ; // 0x24c4208
|
|
/* 024C4208 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C420C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4210 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4214 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4214 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C4214 */ if (_t57) goto L_024C4250; else goto L_024C4218;
|
|
L_024C4218: ; // 0x24c4218
|
|
/* 024C4218 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C421C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4220 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4224 */ cpu->r[5] = cpu->r[5] + 0x00004720u;
|
|
/* 024C4228 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C422C */ cpu->r[6] = cpu->r[6] + 0x00004748u;
|
|
/* 024C4230 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4234 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4238 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C423C */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 024C423C */ rbrew_write32(cpu->mem, _t58, cpu->r[28]);
|
|
/* 024C4240 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C4244 */ _t59 = cpu->r[30] + 0x00000054u;
|
|
/* 024C4244 */ rbrew_write32(cpu->mem, _t59, cpu->r[29]);
|
|
/* 024C4248 */ _t60 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4248 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 024C424C */ _t61 = cpu->r[30] + 0x00000058u;
|
|
/* 024C424C */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
L_024C4250: ; // 0x24c4250
|
|
/* 024C4250 */ cpu->r[30] = cpu->r[31] + 0x000003C8u;
|
|
/* 024C4250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4254 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4254 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024C4254 */ if (_t63) goto L_024C4258; else goto L_024C4268;
|
|
L_024C4258: ; // 0x24c4258
|
|
/* 024C4258 */ cpu->r[3] = 0x0000005Cu;
|
|
/* 024C425C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4260 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4264 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4264 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C4264 */ if (_t65) goto L_024C42B0; else goto L_024C4268;
|
|
L_024C4268: ; // 0x24c4268
|
|
/* 024C4268 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C426C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4270 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4274 */ cpu->r[5] = cpu->r[5] + 0x00004624u;
|
|
/* 024C4278 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C427C */ cpu->r[6] = cpu->r[6] + 0x0000477Cu;
|
|
/* 024C4280 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4284 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4288 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C428C */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C4290 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4294 */ _t66 = cpu->r[8] + 0x000045B8u;
|
|
/* 024C4294 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 024C4298 */ _t67 = cpu->r[12] + 0x000045BCu;
|
|
/* 024C4298 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 024C429C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C42A0 */ _t68 = cpu->r[30] + 0x00000054u;
|
|
/* 024C42A0 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 024C42A4 */ cpu->r[0] = cpu->r[0] + 0x00004380u;
|
|
/* 024C42A8 */ _t69 = cpu->r[30] + 0x00000058u;
|
|
/* 024C42A8 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 024C42AC */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024C42AC */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
L_024C42B0: ; // 0x24c42b0
|
|
/* 024C42B0 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 024C42B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C42B4 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C42B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t72);
|
|
/* 024C42B8 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C42B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024C42BC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C42C0 */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 024C42C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C42C4 */ cpu->lr = cpu->r[0];
|
|
/* 024C42C8 */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 024C42C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024C42CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C42D0 */ return;
|
|
}
|
|
|
|
// fn_024C3FF0 @ 0x24c3ff0
|
|
void Gambit_fn_024C3FF0(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;
|
|
|
|
L_024C3FF0: ; // 0x24c3ff0
|
|
/* 024C3FF0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C3FF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C3FF0 */ cpu->r[1] = _t0;
|
|
/* 024C3FF4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C3FF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C3FF8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C3FF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C3FFC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C3FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C4000 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4000 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4004 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C4008 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4008 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C400C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C400C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C400C */ if (_t7) goto L_024C4010; else goto L_024C4020;
|
|
L_024C4010: ; // 0x24c4010
|
|
/* 024C4010 */ cpu->r[3] = 0x00000424u;
|
|
/* 024C4014 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4018 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C401C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C401C */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C401C */ if (_t9) goto L_024C42B0; else goto L_024C4020;
|
|
L_024C4020: ; // 0x24c4020
|
|
/* 024C4020 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4024 */ Gambit_fn_025015D0(cpu);
|
|
/* 024C4028 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C402C */ cpu->r[29] = 0x00000000u;
|
|
/* 024C4030 */ cpu->r[0] = cpu->r[0] + 0x000042E0u;
|
|
/* 024C4034 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 024C4034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4038 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C4038 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C403C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C403C */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C403C */ if (_t12) goto L_024C4040; else goto L_024C4050;
|
|
L_024C4040: ; // 0x24c4040
|
|
/* 024C4040 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4044 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4048 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C404C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C404C */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C404C */ if (_t14) goto L_024C40A4; else goto L_024C4050;
|
|
L_024C4050: ; // 0x24c4050
|
|
/* 024C4050 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4054 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4058 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C405C */ cpu->r[5] = cpu->r[5] + 0x0000463Cu;
|
|
/* 024C4060 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4064 */ cpu->r[6] = cpu->r[6] + 0x000045C0u;
|
|
/* 024C4068 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C406C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4070 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4074 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C4078 */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C407C */ _t15 = cpu->r[9] + 0x00004588u;
|
|
/* 024C407C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C4080 */ cpu->r[0] = 0x10110000u;
|
|
/* 024C4084 */ _t16 = cpu->r[8] + 0x00004530u;
|
|
/* 024C4084 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C4088 */ cpu->r[0] = cpu->r[0] + 0x00000A2Cu;
|
|
/* 024C408C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4090 */ _t17 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4090 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[12]);
|
|
/* 024C4094 */ _t18 = cpu->r[10] + 0x000045B4u;
|
|
/* 024C4094 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C4098 */ _t19 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4098 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024C409C */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 024C409C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 024C40A0 */ _t21 = cpu->r[30] + 0x00000054u;
|
|
/* 024C40A0 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
L_024C40A4: ; // 0x24c40a4
|
|
/* 024C40A4 */ cpu->r[28] = 0x10110000u;
|
|
/* 024C40A8 */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 024C40A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C40AC */ cpu->r[28] = cpu->r[28] + 0x0000095Cu;
|
|
/* 024C40B0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C40B0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C40B0 */ if (_t23) goto L_024C40B4; else goto L_024C40C4;
|
|
L_024C40B4: ; // 0x24c40b4
|
|
/* 024C40B4 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C40B8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C40BC */ cpu->r[30] = cpu->r[3];
|
|
/* 024C40BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C40C0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C40C0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C40C0 */ if (_t25) goto L_024C4104; else goto L_024C40C4;
|
|
L_024C40C4: ; // 0x24c40c4
|
|
/* 024C40C4 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C40C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C40CC */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C40D0 */ cpu->r[5] = cpu->r[5] + 0x00004608u;
|
|
/* 024C40D4 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C40D8 */ cpu->r[6] = cpu->r[6] + 0x0000464Cu;
|
|
/* 024C40DC */ cpu->r[7] = cpu->r[5];
|
|
/* 024C40E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C40E4 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C40E8 */ cpu->r[12] = 0x00000384u;
|
|
/* 024C40EC */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 024C40EC */ rbrew_write32(cpu->mem, _t26, cpu->r[28]);
|
|
/* 024C40F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C40F4 */ _t27 = cpu->r[30] + 0x00000054u;
|
|
/* 024C40F4 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 024C40F8 */ cpu->r[6] = 0x00000708u;
|
|
/* 024C40FC */ _t28 = cpu->r[30] + 0x00000058u;
|
|
/* 024C40FC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024C4100 */ _t29 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4100 */ rbrew_write32(cpu->mem, _t29, cpu->r[6]);
|
|
L_024C4104: ; // 0x24c4104
|
|
/* 024C4104 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 024C4104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4108 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4108 */ _t31 = _t30 & 0x00000001u;
|
|
/* 024C4108 */ if (_t31) goto L_024C410C; else goto L_024C411C;
|
|
L_024C410C: ; // 0x24c410c
|
|
/* 024C410C */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4110 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4114 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4118 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4118 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C4118 */ if (_t33) goto L_024C4154; else goto L_024C411C;
|
|
L_024C411C: ; // 0x24c411c
|
|
/* 024C411C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4120 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4124 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4128 */ cpu->r[5] = cpu->r[5] + 0x000045C8u;
|
|
/* 024C412C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4130 */ cpu->r[6] = cpu->r[6] + 0x00004674u;
|
|
/* 024C4134 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4138 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C413C */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4140 */ _t34 = cpu->r[30] + 0x00000000u;
|
|
/* 024C4140 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 024C4144 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C4148 */ _t35 = cpu->r[30] + 0x00000054u;
|
|
/* 024C4148 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 024C414C */ _t36 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C414C */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 024C4150 */ _t37 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4150 */ rbrew_write32(cpu->mem, _t37, cpu->r[29]);
|
|
L_024C4154: ; // 0x24c4154
|
|
/* 024C4154 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 024C4154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4158 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4158 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C4158 */ if (_t39) goto L_024C415C; else goto L_024C416C;
|
|
L_024C415C: ; // 0x24c415c
|
|
/* 024C415C */ cpu->r[3] = 0x00000060u;
|
|
/* 024C4160 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4164 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4168 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4168 */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C4168 */ if (_t41) goto L_024C41A8; else goto L_024C416C;
|
|
L_024C416C: ; // 0x24c416c
|
|
/* 024C416C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4170 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4174 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4178 */ cpu->r[5] = cpu->r[5] + 0x000045E0u;
|
|
/* 024C417C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C4180 */ cpu->r[6] = cpu->r[6] + 0x0000469Cu;
|
|
/* 024C4184 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4188 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C418C */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C4190 */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 024C4190 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 024C4194 */ cpu->r[9] = 0x0000001Eu;
|
|
/* 024C4198 */ _t43 = cpu->r[30] + 0x00000058u;
|
|
/* 024C4198 */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 024C419C */ cpu->r[10] = 0x0000012Cu;
|
|
/* 024C41A0 */ _t44 = cpu->r[30] + 0x00000054u;
|
|
/* 024C41A0 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024C41A4 */ _t45 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C41A4 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
L_024C41A8: ; // 0x24c41a8
|
|
/* 024C41A8 */ cpu->r[30] = cpu->r[31] + 0x00000308u;
|
|
/* 024C41A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C41AC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C41AC */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C41AC */ if (_t47) goto L_024C41B0; else goto L_024C41C0;
|
|
L_024C41B0: ; // 0x24c41b0
|
|
/* 024C41B0 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C41B4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C41B8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C41B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C41BC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C41BC */ _t49 = _t48 & 0x00000001u;
|
|
/* 024C41BC */ if (_t49) goto L_024C4200; else goto L_024C41C0;
|
|
L_024C41C0: ; // 0x24c41c0
|
|
/* 024C41C0 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C41C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C41C8 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C41CC */ cpu->r[5] = cpu->r[5] + 0x000046C0u;
|
|
/* 024C41D0 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C41D4 */ cpu->r[6] = cpu->r[6] + 0x000046ECu;
|
|
/* 024C41D8 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C41DC */ cpu->r[3] = cpu->r[30];
|
|
/* 024C41E0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C41E4 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 024C41E4 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 024C41E8 */ cpu->r[0] = 0x00000384u;
|
|
/* 024C41EC */ cpu->r[12] = 0x00000001u;
|
|
/* 024C41F0 */ _t51 = cpu->r[30] + 0x00000054u;
|
|
/* 024C41F0 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 024C41F4 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C41F8 */ _t52 = cpu->r[30] + 0x00000058u;
|
|
/* 024C41F8 */ rbrew_write32(cpu->mem, _t52, cpu->r[12]);
|
|
/* 024C41FC */ _t53 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C41FC */ rbrew_write32(cpu->mem, _t53, cpu->r[0]);
|
|
L_024C4200: ; // 0x24c4200
|
|
/* 024C4200 */ cpu->r[30] = cpu->r[31] + 0x00000368u;
|
|
/* 024C4200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4204 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4204 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024C4204 */ if (_t55) goto L_024C4208; else goto L_024C4218;
|
|
L_024C4208: ; // 0x24c4208
|
|
/* 024C4208 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C420C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4210 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4214 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4214 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C4214 */ if (_t57) goto L_024C4250; else goto L_024C4218;
|
|
L_024C4218: ; // 0x24c4218
|
|
/* 024C4218 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C421C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4220 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4224 */ cpu->r[5] = cpu->r[5] + 0x00004720u;
|
|
/* 024C4228 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C422C */ cpu->r[6] = cpu->r[6] + 0x00004748u;
|
|
/* 024C4230 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4234 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4238 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C423C */ _t58 = cpu->r[30] + 0x00000000u;
|
|
/* 024C423C */ rbrew_write32(cpu->mem, _t58, cpu->r[28]);
|
|
/* 024C4240 */ cpu->r[0] = 0x00000708u;
|
|
/* 024C4244 */ _t59 = cpu->r[30] + 0x00000054u;
|
|
/* 024C4244 */ rbrew_write32(cpu->mem, _t59, cpu->r[29]);
|
|
/* 024C4248 */ _t60 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C4248 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]);
|
|
/* 024C424C */ _t61 = cpu->r[30] + 0x00000058u;
|
|
/* 024C424C */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
L_024C4250: ; // 0x24c4250
|
|
/* 024C4250 */ cpu->r[30] = cpu->r[31] + 0x000003C8u;
|
|
/* 024C4250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4254 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4254 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024C4254 */ if (_t63) goto L_024C4258; else goto L_024C4268;
|
|
L_024C4258: ; // 0x24c4258
|
|
/* 024C4258 */ cpu->r[3] = 0x0000005Cu;
|
|
/* 024C425C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C4260 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C4264 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4264 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C4264 */ if (_t65) goto L_024C42B0; else goto L_024C4268;
|
|
L_024C4268: ; // 0x24c4268
|
|
/* 024C4268 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C426C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4270 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4274 */ cpu->r[5] = cpu->r[5] + 0x00004624u;
|
|
/* 024C4278 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C427C */ cpu->r[6] = cpu->r[6] + 0x0000477Cu;
|
|
/* 024C4280 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C4284 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4288 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C428C */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C4290 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4294 */ _t66 = cpu->r[8] + 0x000045B8u;
|
|
/* 024C4294 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 024C4298 */ _t67 = cpu->r[12] + 0x000045BCu;
|
|
/* 024C4298 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 024C429C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C42A0 */ _t68 = cpu->r[30] + 0x00000054u;
|
|
/* 024C42A0 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[12]);
|
|
/* 024C42A4 */ cpu->r[0] = cpu->r[0] + 0x00004380u;
|
|
/* 024C42A8 */ _t69 = cpu->r[30] + 0x00000058u;
|
|
/* 024C42A8 */ rbrew_write_f32(cpu->mem, _t69, cpu->f[13]);
|
|
/* 024C42AC */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024C42AC */ rbrew_write32(cpu->mem, _t70, cpu->r[0]);
|
|
L_024C42B0: ; // 0x24c42b0
|
|
/* 024C42B0 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 024C42B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C42B4 */ _t72 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C42B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t72);
|
|
/* 024C42B8 */ _t73 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C42B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024C42BC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C42C0 */ _t74 = cpu->r[1] + 0x00000010u;
|
|
/* 024C42C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C42C4 */ cpu->lr = cpu->r[0];
|
|
/* 024C42C8 */ _t75 = cpu->r[1] + 0x00000014u;
|
|
/* 024C42C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024C42CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C42D0 */ return;
|
|
}
|
|
|
|
// fn_024C42D4 @ 0x24c42d4
|
|
void Gambit_fn_024C42D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C42D4: ; // 0x24c42d4
|
|
/* 024C42D4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C42D8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C42D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C42DC */ cpu->r[3] = 0x00000424u;
|
|
/* 024C42E0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C42E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C42E0 */ cpu->r[1] = _t1;
|
|
/* 024C42E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C42E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C42EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C42EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C42EC */ rbrew_dispatch(cpu, (_t3) ? 0x024c42f0u : 0x024c3fecu); return;
|
|
/* 024C42F0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C42F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C42F4 */ cpu->lr = cpu->r[0];
|
|
/* 024C42F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C42FC */ return;
|
|
}
|
|
|
|
// fn_024C42E0 @ 0x24c42e0
|
|
void Gambit_fn_024C42E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024C42E0: ; // 0x24c42e0
|
|
/* 024C42E0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C42E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C42E0 */ cpu->r[1] = _t0;
|
|
/* 024C42E4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C42E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C42EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C42EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C42EC */ rbrew_dispatch(cpu, (_t2) ? 0x024c42f0u : 0x024c3fecu); return;
|
|
/* 024C42F0 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C42F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C42F4 */ cpu->lr = cpu->r[0];
|
|
/* 024C42F8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C42FC */ return;
|
|
}
|
|
|
|
// fn_024C4300 @ 0x24c4300
|
|
void Gambit_fn_024C4300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024C4300: ; // 0x24c4300
|
|
/* 024C4300 */ _t0 = cpu->r[4] + 0x00000000u;
|
|
/* 024C4300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C4304 */ _t1 = cpu->r[4] + 0x00000004u;
|
|
/* 024C4304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C4308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 024C430C */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 024C430C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C4310 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4310 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C4310 */ if (_t4) goto L_024C4314; else goto L_024C4330;
|
|
L_024C4314: ; // 0x24c4314
|
|
/* 024C4314 */ _t5 = cpu->r[4] + 0x00000008u;
|
|
/* 024C4314 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C4318 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C431C */ _t6 = cpu->r[12] + cpu->r[8];
|
|
/* 024C431C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C4320 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C4320 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4324 */ _t8 = cpu->r[4] + 0x00000004u;
|
|
/* 024C4324 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4328 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C432C */ _t9 = cpu->r[4] + 0x00000000u;
|
|
/* 024C432C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
L_024C4330: ; // 0x24c4330
|
|
/* 024C4330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]);
|
|
/* 024C4334 */ _t10 = cpu->r[3] + 0x000001FCu;
|
|
/* 024C4334 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C4338 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4338 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C4338 */ _t13 = _t12 ^ 0x00000001u;
|
|
/* 024C4338 */ if (_t13) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C4338 */ goto L_024C433C;
|
|
L_024C433C: ; // 0x24c433c
|
|
/* 024C433C */ _t14 = cpu->r[4] + 0x00000008u;
|
|
/* 024C433C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C4340 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C4344 */ _t15 = cpu->r[9] + cpu->r[0];
|
|
/* 024C4344 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 024C4348 */ _t16 = cpu->r[4] + 0x00000000u;
|
|
/* 024C4348 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C434C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C4350 */ _t17 = cpu->r[4] + 0x00000000u;
|
|
/* 024C4350 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 024C4354 */ return;
|
|
}
|
|
|
|
// fn_024C4358 @ 0x24c4358
|
|
void Gambit_fn_024C4358(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;
|
|
|
|
L_024C4358: ; // 0x24c4358
|
|
/* 024C4358 */ cpu->r[0] = cpu->lr;
|
|
/* 024C435C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024C435C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C435C */ cpu->r[1] = _t0;
|
|
/* 024C4360 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024C4360 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024C4364 */ /* nop */
|
|
/* 024C4368 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4368 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C436C */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 024C436C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024C4370 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4370 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4374 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024C4374 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 024C4378 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C4378 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C437C */ cpu->r[30] = cpu->r[4];
|
|
/* 024C4380 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4380 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 024C4384 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C4388 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C438C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C4390 */ _t8 = cpu->r[12] + 0x000004ACu;
|
|
/* 024C4390 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4390 */ cpu->r[12] = _t8;
|
|
/* 024C4394 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4398 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C439C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C43A0 */ cpu->r[4] = cpu->r[4] + 0x000007C8u;
|
|
/* 024C43A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C43A4 */ if (_t10) goto L_024C43A8; else goto L_024C43BC;
|
|
L_024C43A8: ; // 0x24c43a8
|
|
/* 024C43A8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C43AC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C43B0 */ cpu->r[0] = cpu->r[0] + 0x00004248u;
|
|
/* 024C43B4 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 024C43B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 024C43B8 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 024C43B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_024C43BC: ; // 0x24c43bc
|
|
/* 024C43BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C43C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C43C0 */ if (_t14) goto L_024C43E0; else goto L_024C43C4;
|
|
L_024C43C4: ; // 0x24c43c4
|
|
/* 024C43C4 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 024C43C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C43C8 */ _t16 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C43C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C43CC */ cpu->ctr = cpu->r[0];
|
|
/* 024C43D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C43D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C43D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C43DC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43DC */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C43DC */ if (_t18) goto L_024C43E0; else goto L_024C43E4;
|
|
L_024C43E0: ; // 0x24c43e0
|
|
/* 024C43E0 */ cpu->r[31] = 0x00000000u;
|
|
L_024C43E4: ; // 0x24c43e4
|
|
/* 024C43E4 */ _t19 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C43E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C43E8 */ cpu->r[3] = cpu->r[29] + 0x00000078u;
|
|
/* 024C43EC */ cpu->r[4] = cpu->r[30] + 0x00000244u;
|
|
/* 024C43F0 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C43F4 */ cpu->f[0] = cpu->f[31] * cpu->f[31];
|
|
/* 024C43F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 024C43FC */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C43FC */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C43FC */ if (_t21) goto L_024C4400; else goto L_024C4418;
|
|
L_024C4400: ; // 0x24c4400
|
|
/* 024C4400 */ _t22 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4400 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 024C4404 */ cpu->r[7] = 0x00000001u;
|
|
/* 024C4408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C440C */ _t23 = cpu->r[29] + 0x00000228u;
|
|
/* 024C440C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[7]);
|
|
/* 024C4410 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4410 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C4410 */ if (_t25) goto L_024C4430; else goto L_024C4414;
|
|
L_024C4414: ; // 0x24c4414
|
|
/* 024C4414 */ goto L_024C4528;
|
|
L_024C4418: ; // 0x24c4418
|
|
/* 024C4418 */ _t26 = cpu->r[29] + 0x00000228u;
|
|
/* 024C4418 */ cpu->r[8] = rbrew_read8(cpu->mem, _t26);
|
|
/* 024C441C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C4420 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4420 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C4420 */ if (_t28) goto L_024C44A4; else goto L_024C4424;
|
|
L_024C4424: ; // 0x24c4424
|
|
/* 024C4424 */ _t29 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4424 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 024C4428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C442C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C442C */ _t31 = _t30 & 0x00000001u;
|
|
/* 024C442C */ if (_t31) goto L_024C4430; else goto L_024C4528;
|
|
L_024C4430: ; // 0x24c4430
|
|
/* 024C4430 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4434 */ Gambit_fn_025AD3E8(cpu);
|
|
/* 024C4438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C443C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C443C */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C443C */ if (_t33) goto L_024C4440; else goto L_024C44A4;
|
|
L_024C4440: ; // 0x24c4440
|
|
/* 024C4440 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4444 */ Gambit_fn_025C7118(cpu);
|
|
/* 024C4448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C444C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C444C */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C444C */ if (_t35) goto L_024C44A4; else goto L_024C4450;
|
|
L_024C4450: ; // 0x24c4450
|
|
/* 024C4450 */ cpu->r[28] = 0x101C0000u;
|
|
/* 024C4454 */ _t36 = cpu->r[28] + 0x00007BA0u;
|
|
/* 024C4454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C4454 */ cpu->r[28] = _t36;
|
|
/* 024C4458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C445C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C445C */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C445C */ if (_t38) goto L_024C44D8; else goto L_024C4460;
|
|
L_024C4460: ; // 0x24c4460
|
|
/* 024C4460 */ Gambit_fn_0263C3CC(cpu);
|
|
/* 024C4464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4468 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4468 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C4468 */ if (_t40) goto L_024C446C; else goto L_024C44A4;
|
|
L_024C446C: ; // 0x24c446c
|
|
/* 024C446C */ Gambit_fn_027FAE14(cpu);
|
|
/* 024C4470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4474 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4474 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C4474 */ if (_t42) goto L_024C4478; else goto L_024C44A4;
|
|
L_024C4478: ; // 0x24c4478
|
|
/* 024C4478 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C447C */ _t43 = cpu->r[12] + 0x00006000u;
|
|
/* 024C447C */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C4480 */ _t44 = cpu->r[12] + 0x00000268u;
|
|
/* 024C4480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C4484 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4488 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C448C */ cpu->r[4] = cpu->r[3];
|
|
/* 024C4490 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4494 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C4498 */ _t45 = cpu->r[3] + 0x000006D8u;
|
|
/* 024C4498 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 024C449C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C44A0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C44A0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C44A0 */ if (_t47) goto L_024C44D8; else goto L_024C44A4;
|
|
L_024C44A4: ; // 0x24c44a4
|
|
/* 024C44A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C44A8 */ _t48 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44A8 */ rbrew_write32(cpu->mem, _t48, cpu->r[6]);
|
|
/* 024C44AC */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 024C44AC */ cpu->r[28] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C44B0 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C44B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024C44B4 */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 024C44B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 024C44B8 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 024C44B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C44BC */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 024C44BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 024C44C0 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 024C44C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C44C4 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C44C4 */ _t56 = _t55 & 0x00000001u;
|
|
/* 024C44C4 */ if (_t56) goto L_024C44C8; // else: addr-0 trap, fall-through
|
|
L_024C44C8: ; // 0x24c44c8
|
|
/* 024C44C8 */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C44C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024C44CC */ cpu->lr = cpu->r[0];
|
|
/* 024C44D0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024C44D4 */ return;
|
|
L_024C44D8: ; // 0x24c44d8
|
|
/* 024C44D8 */ _t58 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C44DC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C44E0 */ _t59 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 024C44E4 */ _t60 = cpu->r[28] + 0x00000000u;
|
|
/* 024C44E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C44E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C44EC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C44F0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C44F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C44F0 */ if (_t62) goto L_024C4500; else goto L_024C44F4;
|
|
L_024C44F4: ; // 0x24c44f4
|
|
/* 024C44F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000005u);
|
|
/* 024C44F8 */ /* nop */
|
|
/* 024C44FC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
L_024C4500: ; // 0x24c4500
|
|
/* 024C4500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C4504 */ _t63 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4504 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[9]);
|
|
/* 024C4508 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4508 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C4508 */ if (_t65) goto L_024C4528; else goto L_024C450C;
|
|
L_024C450C: ; // 0x24c450c
|
|
/* 024C450C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C4510 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C4514 */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C4518 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C451C */ cpu->r[5] = cpu->r[29] + 0x0000006Cu;
|
|
/* 024C4520 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4524 */ Gambit_fn_025C71C8(cpu);
|
|
L_024C4528: ; // 0x24c4528
|
|
/* 024C4528 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4528 */ cpu->r[28] = rbrew_read32(cpu->mem, _t66);
|
|
/* 024C452C */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C452C */ cpu->r[29] = rbrew_read32(cpu->mem, _t67);
|
|
/* 024C4530 */ _t68 = cpu->r[1] + 0x00000030u;
|
|
/* 024C4530 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 024C4534 */ _t69 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4534 */ cpu->r[30] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024C4538 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 024C4538 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 024C453C */ _t71 = cpu->r[1] + 0x00000024u;
|
|
/* 024C453C */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C4540 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4540 */ _t73 = _t72 & 0x00000001u;
|
|
/* 024C4540 */ if (_t73) goto L_024C4544; // else: addr-0 trap, fall-through
|
|
L_024C4544: ; // 0x24c4544
|
|
/* 024C4544 */ _t74 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C4544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C4548 */ cpu->lr = cpu->r[0];
|
|
/* 024C454C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024C4550 */ return;
|
|
}
|
|
|
|
// fn_024C435C @ 0x24c435c
|
|
void Gambit_fn_024C435C(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;
|
|
|
|
L_024C435C: ; // 0x24c435c
|
|
/* 024C435C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024C435C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C435C */ cpu->r[1] = _t0;
|
|
/* 024C4360 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024C4360 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024C4364 */ /* nop */
|
|
/* 024C4368 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4368 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C436C */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 024C436C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024C4370 */ _t4 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4370 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4374 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024C4374 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 024C4378 */ _t6 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C4378 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C437C */ cpu->r[30] = cpu->r[4];
|
|
/* 024C4380 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4380 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 024C4384 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C4388 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C438C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C4390 */ _t8 = cpu->r[12] + 0x000004ACu;
|
|
/* 024C4390 */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4390 */ cpu->r[12] = _t8;
|
|
/* 024C4394 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4398 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C439C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C43A0 */ cpu->r[4] = cpu->r[4] + 0x000007C8u;
|
|
/* 024C43A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C43A4 */ if (_t10) goto L_024C43A8; else goto L_024C43BC;
|
|
L_024C43A8: ; // 0x24c43a8
|
|
/* 024C43A8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C43AC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C43B0 */ cpu->r[0] = cpu->r[0] + 0x00004248u;
|
|
/* 024C43B4 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 024C43B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 024C43B8 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 024C43B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_024C43BC: ; // 0x24c43bc
|
|
/* 024C43BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C43C0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43C0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C43C0 */ if (_t14) goto L_024C43E0; else goto L_024C43C4;
|
|
L_024C43C4: ; // 0x24c43c4
|
|
/* 024C43C4 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 024C43C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C43C8 */ _t16 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C43C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C43CC */ cpu->ctr = cpu->r[0];
|
|
/* 024C43D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C43D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C43D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C43DC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C43DC */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C43DC */ if (_t18) goto L_024C43E0; else goto L_024C43E4;
|
|
L_024C43E0: ; // 0x24c43e0
|
|
/* 024C43E0 */ cpu->r[31] = 0x00000000u;
|
|
L_024C43E4: ; // 0x24c43e4
|
|
/* 024C43E4 */ _t19 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C43E4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C43E8 */ cpu->r[3] = cpu->r[29] + 0x00000078u;
|
|
/* 024C43EC */ cpu->r[4] = cpu->r[30] + 0x00000244u;
|
|
/* 024C43F0 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C43F4 */ cpu->f[0] = cpu->f[31] * cpu->f[31];
|
|
/* 024C43F8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 024C43FC */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C43FC */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C43FC */ if (_t21) goto L_024C4400; else goto L_024C4418;
|
|
L_024C4400: ; // 0x24c4400
|
|
/* 024C4400 */ _t22 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4400 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 024C4404 */ cpu->r[7] = 0x00000001u;
|
|
/* 024C4408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C440C */ _t23 = cpu->r[29] + 0x00000228u;
|
|
/* 024C440C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[7]);
|
|
/* 024C4410 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4410 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C4410 */ if (_t25) goto L_024C4430; else goto L_024C4414;
|
|
L_024C4414: ; // 0x24c4414
|
|
/* 024C4414 */ goto L_024C4528;
|
|
L_024C4418: ; // 0x24c4418
|
|
/* 024C4418 */ _t26 = cpu->r[29] + 0x00000228u;
|
|
/* 024C4418 */ cpu->r[8] = rbrew_read8(cpu->mem, _t26);
|
|
/* 024C441C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C4420 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4420 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C4420 */ if (_t28) goto L_024C44A4; else goto L_024C4424;
|
|
L_024C4424: ; // 0x24c4424
|
|
/* 024C4424 */ _t29 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4424 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 024C4428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C442C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C442C */ _t31 = _t30 & 0x00000001u;
|
|
/* 024C442C */ if (_t31) goto L_024C4430; else goto L_024C4528;
|
|
L_024C4430: ; // 0x24c4430
|
|
/* 024C4430 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4434 */ Gambit_fn_025AD3E8(cpu);
|
|
/* 024C4438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C443C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C443C */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C443C */ if (_t33) goto L_024C4440; else goto L_024C44A4;
|
|
L_024C4440: ; // 0x24c4440
|
|
/* 024C4440 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4444 */ Gambit_fn_025C7118(cpu);
|
|
/* 024C4448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C444C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C444C */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C444C */ if (_t35) goto L_024C44A4; else goto L_024C4450;
|
|
L_024C4450: ; // 0x24c4450
|
|
/* 024C4450 */ cpu->r[28] = 0x101C0000u;
|
|
/* 024C4454 */ _t36 = cpu->r[28] + 0x00007BA0u;
|
|
/* 024C4454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C4454 */ cpu->r[28] = _t36;
|
|
/* 024C4458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C445C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C445C */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C445C */ if (_t38) goto L_024C44D8; else goto L_024C4460;
|
|
L_024C4460: ; // 0x24c4460
|
|
/* 024C4460 */ Gambit_fn_0263C3CC(cpu);
|
|
/* 024C4464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4468 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4468 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C4468 */ if (_t40) goto L_024C446C; else goto L_024C44A4;
|
|
L_024C446C: ; // 0x24c446c
|
|
/* 024C446C */ Gambit_fn_027FAE14(cpu);
|
|
/* 024C4470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4474 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4474 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C4474 */ if (_t42) goto L_024C4478; else goto L_024C44A4;
|
|
L_024C4478: ; // 0x24c4478
|
|
/* 024C4478 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C447C */ _t43 = cpu->r[12] + 0x00006000u;
|
|
/* 024C447C */ cpu->r[12] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C4480 */ _t44 = cpu->r[12] + 0x00000268u;
|
|
/* 024C4480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C4484 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4488 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C448C */ cpu->r[4] = cpu->r[3];
|
|
/* 024C4490 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4494 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C4498 */ _t45 = cpu->r[3] + 0x000006D8u;
|
|
/* 024C4498 */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 024C449C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C44A0 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C44A0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C44A0 */ if (_t47) goto L_024C44D8; else goto L_024C44A4;
|
|
L_024C44A4: ; // 0x24c44a4
|
|
/* 024C44A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C44A8 */ _t48 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44A8 */ rbrew_write32(cpu->mem, _t48, cpu->r[6]);
|
|
/* 024C44AC */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 024C44AC */ cpu->r[28] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C44B0 */ _t50 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C44B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024C44B4 */ _t51 = cpu->r[1] + 0x00000030u;
|
|
/* 024C44B4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 024C44B8 */ _t52 = cpu->r[1] + 0x00000020u;
|
|
/* 024C44B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C44BC */ _t53 = cpu->r[1] + 0x00000028u;
|
|
/* 024C44BC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t53);
|
|
/* 024C44C0 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 024C44C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C44C4 */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C44C4 */ _t56 = _t55 & 0x00000001u;
|
|
/* 024C44C4 */ if (_t56) goto L_024C44C8; // else: addr-0 trap, fall-through
|
|
L_024C44C8: ; // 0x24c44c8
|
|
/* 024C44C8 */ _t57 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C44C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024C44CC */ cpu->lr = cpu->r[0];
|
|
/* 024C44D0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024C44D4 */ return;
|
|
L_024C44D8: ; // 0x24c44d8
|
|
/* 024C44D8 */ _t58 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C44DC */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C44E0 */ _t59 = cpu->r[29] + 0x000001F4u;
|
|
/* 024C44E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 024C44E4 */ _t60 = cpu->r[28] + 0x00000000u;
|
|
/* 024C44E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C44E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C44EC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C44F0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C44F0 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C44F0 */ if (_t62) goto L_024C4500; else goto L_024C44F4;
|
|
L_024C44F4: ; // 0x24c44f4
|
|
/* 024C44F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000005u);
|
|
/* 024C44F8 */ /* nop */
|
|
/* 024C44FC */ cpu->r[9] = rbrew_rlwinm(cpu->r[10], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
L_024C4500: ; // 0x24c4500
|
|
/* 024C4500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C4504 */ _t63 = cpu->r[29] + 0x000001F0u;
|
|
/* 024C4504 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[9]);
|
|
/* 024C4508 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4508 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C4508 */ if (_t65) goto L_024C4528; else goto L_024C450C;
|
|
L_024C450C: ; // 0x24c450c
|
|
/* 024C450C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C4510 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C4514 */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C4518 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C451C */ cpu->r[5] = cpu->r[29] + 0x0000006Cu;
|
|
/* 024C4520 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4524 */ Gambit_fn_025C71C8(cpu);
|
|
L_024C4528: ; // 0x24c4528
|
|
/* 024C4528 */ _t66 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4528 */ cpu->r[28] = rbrew_read32(cpu->mem, _t66);
|
|
/* 024C452C */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C452C */ cpu->r[29] = rbrew_read32(cpu->mem, _t67);
|
|
/* 024C4530 */ _t68 = cpu->r[1] + 0x00000030u;
|
|
/* 024C4530 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 024C4534 */ _t69 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4534 */ cpu->r[30] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024C4538 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 024C4538 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 024C453C */ _t71 = cpu->r[1] + 0x00000024u;
|
|
/* 024C453C */ cpu->r[31] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C4540 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4540 */ _t73 = _t72 & 0x00000001u;
|
|
/* 024C4540 */ if (_t73) goto L_024C4544; // else: addr-0 trap, fall-through
|
|
L_024C4544: ; // 0x24c4544
|
|
/* 024C4544 */ _t74 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C4544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C4548 */ cpu->lr = cpu->r[0];
|
|
/* 024C454C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024C4550 */ return;
|
|
}
|
|
|
|
// fn_024C4554 @ 0x24c4554
|
|
void Gambit_fn_024C4554(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C4554: ; // 0x24c4554
|
|
/* 024C4554 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C4558 */ _t0 = cpu->r[3] + 0x00000214u;
|
|
/* 024C4558 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C455C */ _t1 = cpu->r[3] + 0x00000214u;
|
|
/* 024C455C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C4560 */ return;
|
|
}
|
|
|
|
// fn_024C4568 @ 0x24c4568
|
|
void Gambit_fn_024C4568(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C4568: ; // 0x24c4568
|
|
/* 024C4568 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4568 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4568 */ cpu->r[1] = _t0;
|
|
/* 024C456C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C456C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4570 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4570 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4574 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4578 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C457C */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4580 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4580 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4584 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4584 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4588 */ cpu->r[4] = cpu->r[30] + 0x00004794u;
|
|
/* 024C458C */ Gambit_fn_02398850(cpu);
|
|
/* 024C4590 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C4590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C4594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C4598 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4598 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C4598 */ if (_t7) goto L_024C45AC; else goto L_024C459C;
|
|
L_024C459C: ; // 0x24c459c
|
|
/* 024C459C */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C459C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C45A0 */ cpu->r[4] = cpu->r[30] + 0x00004794u;
|
|
/* 024C45A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C45A8 */ Gambit_fn_02398850(cpu);
|
|
L_024C45AC: ; // 0x24c45ac
|
|
/* 024C45AC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C45AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C45B0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C45B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C45B4 */ cpu->lr = cpu->r[0];
|
|
/* 024C45B8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C45B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C45BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C45C0 */ return;
|
|
}
|
|
|
|
// fn_024C45C8 @ 0x24c45c8
|
|
void Gambit_fn_024C45C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C45C8: ; // 0x24c45c8
|
|
/* 024C45C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C45C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C45C8 */ cpu->r[1] = _t0;
|
|
/* 024C45CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C45CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C45D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C45D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C45D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C45D8 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C45D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C45DC */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C45E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C45E4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C45E4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C45E4 */ if (_t5) goto L_024C45F4; else goto L_024C45E8;
|
|
L_024C45E8: ; // 0x24c45e8
|
|
/* 024C45E8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C45EC */ cpu->r[4] = 0x00000001u;
|
|
/* 024C45F0 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C45F4: ; // 0x24c45f4
|
|
/* 024C45F4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C45F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C45F8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C45F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C45FC */ cpu->lr = cpu->r[0];
|
|
/* 024C4600 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4604 */ return;
|
|
}
|
|
|
|
// fn_024C460C @ 0x24c460c
|
|
void Gambit_fn_024C460C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C460C: ; // 0x24c460c
|
|
/* 024C460C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C460C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C460C */ cpu->r[1] = _t0;
|
|
/* 024C4610 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4610 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4614 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4614 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4618 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C461C */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C4620 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4624 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4624 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4628 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4628 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C462C */ cpu->r[4] = cpu->r[30] + 0x0000479Cu;
|
|
/* 024C4630 */ Gambit_fn_02398850(cpu);
|
|
/* 024C4634 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C4634 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C4638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C463C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C463C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C463C */ if (_t7) goto L_024C4650; else goto L_024C4640;
|
|
L_024C4640: ; // 0x24c4640
|
|
/* 024C4640 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C4640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4644 */ cpu->r[4] = cpu->r[30] + 0x0000479Cu;
|
|
/* 024C4648 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C464C */ Gambit_fn_02398850(cpu);
|
|
L_024C4650: ; // 0x24c4650
|
|
/* 024C4650 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C4654 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4654 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C4658 */ cpu->lr = cpu->r[0];
|
|
/* 024C465C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C465C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C4660 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4664 */ return;
|
|
}
|
|
|
|
// fn_024C4668 @ 0x24c4668
|
|
void Gambit_fn_024C4668(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, _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;
|
|
double _ft23, _ft24;
|
|
|
|
L_024C4668: ; // 0x24c4668
|
|
/* 024C4668 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C4668 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4668 */ cpu->r[1] = _t0;
|
|
/* 024C466C */ /* nop */
|
|
/* 024C4670 */ cpu->r[0] = cpu->lr;
|
|
/* 024C4674 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4674 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 024C4678 */ /* nop */
|
|
/* 024C467C */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 024C467C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 024C4680 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 024C4680 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4684 */ /* nop */
|
|
/* 024C4688 */ _t4 = cpu->r[1] + 0x00000038u;
|
|
/* 024C4688 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 024C468C */ _t5 = cpu->r[1] + 0x00000028u;
|
|
/* 024C468C */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 024C4690 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C4694 */ _t6 = cpu->r[29] + 0x000001F8u;
|
|
/* 024C4694 */ cpu->r[9] = rbrew_read8(cpu->mem, _t6);
|
|
/* 024C4698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C469C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C469C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C469C */ if (_t8) goto L_024C486C; else goto L_024C46A0;
|
|
L_024C46A0: ; // 0x24c46a0
|
|
/* 024C46A0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C46A4 */ _t9 = cpu->r[12] + 0x00006000u;
|
|
/* 024C46A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C46A8 */ _t10 = cpu->r[12] + 0x00000268u;
|
|
/* 024C46A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C46AC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C46B0 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C46B4 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C46B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C46BC */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C46C0 */ _t11 = cpu->r[3] + 0x000006D8u;
|
|
/* 024C46C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024C46C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C46C8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C46C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C46C8 */ if (_t13) goto L_024C46CC; else goto L_024C486C;
|
|
L_024C46CC: ; // 0x24c46cc
|
|
/* 024C46CC */ _t14 = cpu->r[29] + 0x00000080u;
|
|
/* 024C46CC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C46D0 */ _t15 = cpu->r[3] + 0x0000024Cu;
|
|
/* 024C46D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C46D4 */ _t16 = cpu->r[29] + 0x00000078u;
|
|
/* 024C46D4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C46D8 */ cpu->f[12] = cpu->f[13] - cpu->f[0];
|
|
/* 024C46DC */ _t17 = cpu->r[3] + 0x00000244u;
|
|
/* 024C46DC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C46E0 */ cpu->f[11] = cpu->f[10] - cpu->f[11];
|
|
/* 024C46E4 */ cpu->f[9] = cpu->f[12] * cpu->f[12];
|
|
/* 024C46E8 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C46EC */ cpu->f[10] = fma(cpu->f[11], cpu->f[11], cpu->f[9]);
|
|
/* 024C46F0 */ _t18 = cpu->r[9] + 0x000047A8u;
|
|
/* 024C46F0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C46F4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 024C46F8 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C46F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C46F8 */ if (_t20) goto L_024C46FC; else goto L_024C4720;
|
|
L_024C46FC: ; // 0x24c46fc
|
|
/* 024C46FC */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C4700 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C4704 */ _t21 = cpu->r[6] + 0x000047B0u;
|
|
/* 024C4704 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C4708 */ _t22 = cpu->r[5] + 0x000047ACu;
|
|
/* 024C4708 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024C470C */ _ft23 = sqrt(cpu->f[10]);
|
|
/* 024C470C */ _ft24 = (double)(int32_t)0x00000001u;
|
|
/* 024C470C */ cpu->f[0] = _ft24 / _ft23;
|
|
/* 024C4710 */ cpu->f[13] = cpu->f[0] * cpu->f[0];
|
|
/* 024C4714 */ cpu->f[9] = cpu->f[0] * cpu->f[11];
|
|
/* 024C4718 */ cpu->f[13] = -fma(cpu->f[13], cpu->f[10], -(cpu->f[12]));
|
|
/* 024C471C */ cpu->f[0] = cpu->f[13] * cpu->f[9];
|
|
L_024C4720: ; // 0x24c4720
|
|
/* 024C4720 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C4724 */ cpu->f[30] = cpu->f[0] * cpu->f[10];
|
|
/* 024C4728 */ _t25 = cpu->r[11] + 0x000047B4u;
|
|
/* 024C4728 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C472C */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C4730 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[13]);
|
|
/* 024C4734 */ _t26 = cpu->r[7] + 0x00004538u;
|
|
/* 024C4734 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C4738 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4738 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C4738 */ if (_t28) goto L_024C4764; else goto L_024C473C;
|
|
L_024C473C: ; // 0x24c473c
|
|
/* 024C473C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 024C4740 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4740 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C4740 */ if (_t30) goto L_024C4764; else goto L_024C4744;
|
|
L_024C4744: ; // 0x24c4744
|
|
/* 024C4744 */ cpu->r[31] = 0x00000003u;
|
|
/* 024C4748 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C474C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4750 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4750 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024C4750 */ if (_t32) goto L_024C4860; else goto L_024C4754;
|
|
L_024C4754: ; // 0x24c4754
|
|
/* 024C4754 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 024C4758 */ cpu->r[4] = 0x00000002u;
|
|
/* 024C475C */ Gambit_fn_023A2FEC(cpu);
|
|
/* 024C4760 */ goto L_024C486C;
|
|
L_024C4764: ; // 0x24c4764
|
|
/* 024C4764 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C4768 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C476C */ cpu->r[27] = 0x101D0000u;
|
|
/* 024C4770 */ cpu->r[26] = 0x101D0000u;
|
|
/* 024C4774 */ _t33 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C4774 */ cpu->r[10] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C4774 */ cpu->r[27] = _t33;
|
|
/* 024C4778 */ cpu->r[26] = cpu->r[26] + 0x000007C8u;
|
|
/* 024C477C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4780 */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C4784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C4788 */ cpu->r[28] = cpu->r[28] + 0x00004248u;
|
|
/* 024C478C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C478C */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C478C */ if (_t35) goto L_024C4790; else goto L_024C479C;
|
|
L_024C4790: ; // 0x24c4790
|
|
/* 024C4790 */ _t36 = cpu->r[26] + 0x00000000u;
|
|
/* 024C4790 */ rbrew_write32(cpu->mem, _t36, cpu->r[28]);
|
|
/* 024C4794 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C4798 */ _t37 = cpu->r[27] + 0x00000000u;
|
|
/* 024C4798 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
L_024C479C: ; // 0x24c479c
|
|
/* 024C479C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C47A0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C47A0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C47A0 */ if (_t39) goto L_024C47C4; else goto L_024C47A4;
|
|
L_024C47A4: ; // 0x24c47a4
|
|
/* 024C47A4 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 024C47A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C47A8 */ _t41 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C47A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C47AC */ cpu->ctr = cpu->r[0];
|
|
/* 024C47B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C47B4 */ cpu->r[4] = cpu->r[26];
|
|
/* 024C47B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C47BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C47C0 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C47C0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C47C0 */ if (_t43) goto L_024C47C4; else goto L_024C47C8;
|
|
L_024C47C4: ; // 0x24c47c4
|
|
/* 024C47C4 */ cpu->r[31] = 0x00000000u;
|
|
L_024C47C8: ; // 0x24c47c8
|
|
/* 024C47C8 */ _t44 = cpu->r[29] + 0x000001B8u;
|
|
/* 024C47C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C47CC */ _t45 = cpu->r[31] + 0x0000029Cu;
|
|
/* 024C47CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024C47D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[7]);
|
|
/* 024C47D4 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C47D4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C47D4 */ if (_t47) goto L_024C486C; else goto L_024C47D8;
|
|
L_024C47D8: ; // 0x24c47d8
|
|
/* 024C47D8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 024C47DC */ _t48 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C47DC */ _t49 = _t48 & 0x00000001u;
|
|
/* 024C47DC */ if (_t49) goto L_024C47E0; else goto L_024C486C;
|
|
L_024C47E0: ; // 0x24c47e0
|
|
/* 024C47E0 */ cpu->r[30] = 0x101D0000u;
|
|
/* 024C47E4 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C47E8 */ _t50 = cpu->r[30] + 0xFFFF9918u;
|
|
/* 024C47E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024C47EC */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C47F0 */ _t51 = cpu->r[27] + 0x00000000u;
|
|
/* 024C47F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C47F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C47F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C47FC */ _t52 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C47FC */ _t53 = _t52 & 0x00000001u;
|
|
/* 024C47FC */ if (_t53) goto L_024C4800; else goto L_024C480C;
|
|
L_024C4800: ; // 0x24c4800
|
|
/* 024C4800 */ _t54 = cpu->r[26] + 0x00000000u;
|
|
/* 024C4800 */ rbrew_write32(cpu->mem, _t54, cpu->r[28]);
|
|
/* 024C4804 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C4808 */ _t55 = cpu->r[27] + 0x00000000u;
|
|
/* 024C4808 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
L_024C480C: ; // 0x24c480c
|
|
/* 024C480C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C4810 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4810 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C4810 */ if (_t57) goto L_024C4834; else goto L_024C4814;
|
|
L_024C4814: ; // 0x24c4814
|
|
/* 024C4814 */ _t58 = cpu->r[31] + 0x00000000u;
|
|
/* 024C4814 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C4818 */ _t59 = cpu->r[11] + 0x0000006Cu;
|
|
/* 024C4818 */ cpu->r[12] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C481C */ cpu->ctr = cpu->r[12];
|
|
/* 024C4820 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4824 */ cpu->r[4] = cpu->r[26];
|
|
/* 024C4828 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C482C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4830 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4830 */ _t61 = _t60 & 0x00000001u;
|
|
/* 024C4830 */ if (_t61) goto L_024C4834; else goto L_024C4838;
|
|
L_024C4834: ; // 0x24c4834
|
|
/* 024C4834 */ cpu->r[31] = 0x00000000u;
|
|
L_024C4838: ; // 0x24c4838
|
|
/* 024C4838 */ _t62 = cpu->r[31] + 0x0000023Cu;
|
|
/* 024C4838 */ cpu->r[28] = rbrew_read32(cpu->mem, _t62);
|
|
/* 024C483C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4840 */ Gambit_fn_02830138(cpu);
|
|
/* 024C4844 */ /* nop */
|
|
/* 024C4848 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4848 */ _t64 = _t63 & 0x00000001u;
|
|
/* 024C4848 */ if (_t64) goto L_024C484C; else goto L_024C486C;
|
|
L_024C484C: ; // 0x24c484c
|
|
/* 024C484C */ cpu->r[31] = 0x00000006u;
|
|
/* 024C4850 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C4854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4858 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4858 */ _t66 = _t65 & 0x00000001u;
|
|
/* 024C4858 */ if (_t66) goto L_024C4860; else goto L_024C485C;
|
|
L_024C485C: ; // 0x24c485c
|
|
/* 024C485C */ cpu->r[31] = 0x00000005u;
|
|
L_024C4860: ; // 0x24c4860
|
|
/* 024C4860 */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 024C4864 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4868 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C486C: ; // 0x24c486c
|
|
/* 024C486C */ /* nop */
|
|
/* 024C4870 */ _t67 = cpu->r[1] + 0x00000028u;
|
|
/* 024C4870 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 024C4874 */ _t68 = cpu->r[1] + 0x00000038u;
|
|
/* 024C4874 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 024C4878 */ _t69 = cpu->r[1] + 0x00000020u;
|
|
/* 024C4878 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t69);
|
|
/* 024C487C */ _t70 = cpu->r[1] + 0x00000030u;
|
|
/* 024C487C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t70);
|
|
/* 024C4880 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4880 */ _t72 = _t71 & 0x00000001u;
|
|
/* 024C4880 */ if (_t72) goto L_024C4884; // else: addr-0 trap, fall-through
|
|
L_024C4884: ; // 0x24c4884
|
|
/* 024C4884 */ _t73 = cpu->r[1] + 0x00000044u;
|
|
/* 024C4884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024C4888 */ cpu->lr = cpu->r[0];
|
|
/* 024C488C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C4890 */ return;
|
|
}
|
|
|
|
// fn_024C4898 @ 0x24c4898
|
|
void Gambit_fn_024C4898(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;
|
|
|
|
L_024C4898: ; // 0x24c4898
|
|
/* 024C4898 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C4898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4898 */ cpu->r[1] = _t0;
|
|
/* 024C489C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C489C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C48A0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C48A4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C48A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C48A8 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 024C48A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C48AC */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 024C48AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C48B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C48B4 */ _t5 = cpu->r[11] + 0x00000254u;
|
|
/* 024C48B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C48B8 */ _t6 = cpu->r[3] + 0x000000E0u;
|
|
/* 024C48B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C48BC */ _t7 = cpu->r[11] + 0x0000018Cu;
|
|
/* 024C48BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C48C0 */ cpu->ctr = cpu->r[12];
|
|
/* 024C48C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C48C8 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C48CC */ _t8 = cpu->r[10] + 0x000047B8u;
|
|
/* 024C48CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C48D0 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 024C48D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C48D4 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 024C48D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C48D8 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 024C48DC */ cpu->f[8] = cpu->f[12] / cpu->f[1];
|
|
/* 024C48E0 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C48E4 */ cpu->f[10] = (uint32_t)(int32_t)cpu->f[8];
|
|
/* 024C48E8 */ _t11 = cpu->r[10] + 0x00004590u;
|
|
/* 024C48E8 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 024C48EC */ cpu->r[12] = 0x43300000u;
|
|
/* 024C48F0 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 024C48F4 */ /* nop */
|
|
/* 024C48F8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C48F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C48FC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024C48FC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024C4900 */ cpu->r[0] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C4904 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4904 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024C4908 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4908 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 024C490C */ cpu->f[10] = cpu->f[9] - cpu->f[11];
|
|
/* 024C4910 */ cpu->f[0] = (double)(float)cpu->f[10];
|
|
/* 024C4914 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[8]);
|
|
/* 024C4918 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4918 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C4918 */ if (_t17) goto L_024C4930; else goto L_024C491C;
|
|
L_024C491C: ; // 0x24c491c
|
|
/* 024C491C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4920 */ _t18 = cpu->r[10] + 0x000047A8u;
|
|
/* 024C4920 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C4924 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 024C4928 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4928 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C4928 */ if (_t20) goto L_024C492C; else goto L_024C4930;
|
|
L_024C492C: ; // 0x24c492c
|
|
/* 024C492C */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C4930: ; // 0x24c4930
|
|
/* 024C4930 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4934 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C4938 */ _t21 = cpu->r[10] + 0x000047BCu;
|
|
/* 024C4938 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C493C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C493C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 024C4940 */ cpu->f[13] = cpu->f[10] / cpu->f[1];
|
|
/* 024C4944 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4948 */ _t23 = cpu->r[12] + 0x00004590u;
|
|
/* 024C4948 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 024C494C */ cpu->r[0] = 0x43300000u;
|
|
/* 024C4950 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4950 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 024C4954 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4954 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 024C4958 */ cpu->f[9] = cpu->f[0] - cpu->f[12];
|
|
/* 024C495C */ cpu->f[11] = (double)(float)cpu->f[9];
|
|
/* 024C4960 */ cpu->f[12] = cpu->f[8] - cpu->f[11];
|
|
/* 024C4964 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024C4968 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4968 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C4968 */ if (_t27) goto L_024C4978; else goto L_024C496C;
|
|
L_024C496C: ; // 0x24c496c
|
|
/* 024C496C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4970 */ cpu->r[4] = 0x00000003u;
|
|
/* 024C4974 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4978: ; // 0x24c4978
|
|
/* 024C4978 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4978 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C497C */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 024C497C */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C4980 */ cpu->lr = cpu->r[0];
|
|
/* 024C4984 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C4988 */ return;
|
|
}
|
|
|
|
// fn_024C4990 @ 0x24c4990
|
|
void Gambit_fn_024C4990(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C4990: ; // 0x24c4990
|
|
/* 024C4990 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4990 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4990 */ cpu->r[1] = _t0;
|
|
/* 024C4994 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4994 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4998 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4998 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C499C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C49A0 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C49A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C49A8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C49A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C49AC */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C49AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C49B0 */ cpu->r[4] = cpu->r[30] + 0x000047C0u;
|
|
/* 024C49B4 */ Gambit_fn_02398850(cpu);
|
|
/* 024C49B8 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C49B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C49BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C49C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C49C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C49C0 */ if (_t7) goto L_024C49D4; else goto L_024C49C4;
|
|
L_024C49C4: ; // 0x24c49c4
|
|
/* 024C49C4 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C49C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C49C8 */ cpu->r[4] = cpu->r[30] + 0x000047C0u;
|
|
/* 024C49CC */ cpu->r[5] = 0x00000001u;
|
|
/* 024C49D0 */ Gambit_fn_02398850(cpu);
|
|
L_024C49D4: ; // 0x24c49d4
|
|
/* 024C49D4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C49D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C49D8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C49D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C49DC */ cpu->lr = cpu->r[0];
|
|
/* 024C49E0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C49E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C49E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C49E8 */ return;
|
|
}
|
|
|
|
// fn_024C49F0 @ 0x24c49f0
|
|
void Gambit_fn_024C49F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C49F0: ; // 0x24c49f0
|
|
/* 024C49F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C49F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C49F0 */ cpu->r[1] = _t0;
|
|
/* 024C49F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C49F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C49F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C49FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C49FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C4A00 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4A00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C4A04 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C4A08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4A0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4A0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C4A0C */ if (_t5) goto L_024C4A1C; else goto L_024C4A10;
|
|
L_024C4A10: ; // 0x24c4a10
|
|
/* 024C4A10 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4A14 */ cpu->r[4] = 0x00000004u;
|
|
/* 024C4A18 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4A1C: ; // 0x24c4a1c
|
|
/* 024C4A1C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4A1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4A20 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4A20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4A24 */ cpu->lr = cpu->r[0];
|
|
/* 024C4A28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4A2C */ return;
|
|
}
|
|
|
|
// fn_024C4A34 @ 0x24c4a34
|
|
void Gambit_fn_024C4A34(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_024C4A34: ; // 0x24c4a34
|
|
/* 024C4A34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C4A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4A34 */ cpu->r[1] = _t0;
|
|
/* 024C4A38 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C4A3C */ cpu->r[31] = 0x100B0000u;
|
|
/* 024C4A40 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4A40 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C4A44 */ cpu->r[31] = cpu->r[31] + 0x000047D8u;
|
|
/* 024C4A48 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4A48 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024C4A4C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4A4C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4A50 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4A50 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C4A54 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C4A58 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C4A5C */ cpu->r[30] = cpu->r[31];
|
|
/* 024C4A60 */ _t6 = cpu->r[29] + 0x00000234u;
|
|
/* 024C4A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C4A64 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C4A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4A6C */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C4A70 */ _t7 = cpu->r[29] + 0x00000130u;
|
|
/* 024C4A70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4A74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4A74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C4A74 */ if (_t9) goto L_024C4A7C; else goto L_024C4A78;
|
|
L_024C4A78: ; // 0x24c4a78
|
|
/* 024C4A78 */ cpu->r[30] = cpu->r[28] + 0x000047C8u;
|
|
L_024C4A7C: ; // 0x24c4a7c
|
|
/* 024C4A7C */ cpu->r[4] = cpu->r[30];
|
|
/* 024C4A80 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4A84 */ Gambit_fn_02398850(cpu);
|
|
/* 024C4A88 */ _t10 = cpu->r[29] + 0x000001F8u;
|
|
/* 024C4A88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C4A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C4A90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4A90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C4A90 */ if (_t12) goto L_024C4AB4; else goto L_024C4A94;
|
|
L_024C4A94: ; // 0x24c4a94
|
|
/* 024C4A94 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C4A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4A9C */ _t13 = cpu->r[29] + 0x00000204u;
|
|
/* 024C4A9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C4AA0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4AA0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C4AA0 */ if (_t15) goto L_024C4AA8; else goto L_024C4AA4;
|
|
L_024C4AA4: ; // 0x24c4aa4
|
|
/* 024C4AA4 */ cpu->r[31] = cpu->r[28] + 0x000047C8u;
|
|
L_024C4AA8: ; // 0x24c4aa8
|
|
/* 024C4AA8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C4AAC */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4AB0 */ Gambit_fn_02398850(cpu);
|
|
L_024C4AB4: ; // 0x24c4ab4
|
|
/* 024C4AB4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4AB4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C4AB8 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4AB8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C4ABC */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C4AC0 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C4AC4 */ cpu->lr = cpu->r[0];
|
|
/* 024C4AC8 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C4ACC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C4AD0 */ return;
|
|
}
|
|
|
|
// fn_024C4AD8 @ 0x24c4ad8
|
|
void Gambit_fn_024C4AD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
double _ft15, _ft16;
|
|
|
|
L_024C4AD8: ; // 0x24c4ad8
|
|
/* 024C4AD8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4AD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4AD8 */ cpu->r[1] = _t0;
|
|
/* 024C4ADC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4ADC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4AE0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4AE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4AE4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C4AE8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4AE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4AEC */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 024C4AEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4AF0 */ _t5 = cpu->r[12] + 0x00000268u;
|
|
/* 024C4AF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C4AF4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4AF8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4AFC */ Gambit_fn_0261F774(cpu);
|
|
/* 024C4B00 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C4B04 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C4B08 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C4B0C */ _t6 = cpu->r[31] + 0x00000080u;
|
|
/* 024C4B0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C4B10 */ _t7 = cpu->r[3] + 0x0000024Cu;
|
|
/* 024C4B10 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C4B14 */ _t8 = cpu->r[3] + 0x00000244u;
|
|
/* 024C4B14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C4B18 */ cpu->f[13] = cpu->f[0] - cpu->f[9];
|
|
/* 024C4B1C */ _t9 = cpu->r[31] + 0x00000078u;
|
|
/* 024C4B1C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C4B20 */ cpu->f[12] = cpu->f[11] - cpu->f[12];
|
|
/* 024C4B24 */ cpu->f[11] = cpu->f[13] * cpu->f[13];
|
|
/* 024C4B28 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C4B2C */ cpu->f[12] = fma(cpu->f[12], cpu->f[12], cpu->f[11]);
|
|
/* 024C4B30 */ _t10 = cpu->r[11] + 0x000047A8u;
|
|
/* 024C4B30 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C4B34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024C4B38 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4B38 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C4B38 */ if (_t12) goto L_024C4B3C; else goto L_024C4B60;
|
|
L_024C4B3C: ; // 0x24c4b3c
|
|
/* 024C4B3C */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C4B40 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4B44 */ _t13 = cpu->r[11] + 0x000047B0u;
|
|
/* 024C4B44 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C4B48 */ _t14 = cpu->r[12] + 0x000047ACu;
|
|
/* 024C4B48 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C4B4C */ _ft15 = sqrt(cpu->f[12]);
|
|
/* 024C4B4C */ _ft16 = (double)(int32_t)0x00000001u;
|
|
/* 024C4B4C */ cpu->f[13] = _ft16 / _ft15;
|
|
/* 024C4B50 */ cpu->f[0] = cpu->f[13] * cpu->f[13];
|
|
/* 024C4B54 */ cpu->f[9] = cpu->f[13] * cpu->f[10];
|
|
/* 024C4B58 */ cpu->f[0] = -fma(cpu->f[0], cpu->f[12], -(cpu->f[11]));
|
|
/* 024C4B5C */ cpu->f[13] = cpu->f[0] * cpu->f[9];
|
|
L_024C4B60: ; // 0x24c4b60
|
|
/* 024C4B60 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C4B64 */ cpu->f[10] = cpu->f[13] * cpu->f[12];
|
|
/* 024C4B68 */ _t17 = cpu->r[11] + 0x000047E4u;
|
|
/* 024C4B68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C4B6C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[12]);
|
|
/* 024C4B70 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4B70 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C4B70 */ if (_t19) goto L_024C4B74; else goto L_024C4B84;
|
|
L_024C4B74: ; // 0x24c4b74
|
|
/* 024C4B74 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4B78 */ _t20 = cpu->r[12] + 0x000047E8u;
|
|
/* 024C4B78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C4B7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[0]);
|
|
/* 024C4B80 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4B80 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C4B80 */ if (_t22) goto L_024C4B90; else goto L_024C4B84;
|
|
L_024C4B84: ; // 0x24c4b84
|
|
/* 024C4B84 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4B88 */ cpu->r[4] = 0x00000000u;
|
|
/* 024C4B8C */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4B90: ; // 0x24c4b90
|
|
/* 024C4B90 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4B90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C4B94 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4B94 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C4B98 */ cpu->lr = cpu->r[0];
|
|
/* 024C4B9C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4B9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C4BA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4BA4 */ return;
|
|
}
|
|
|
|
// fn_024C4BAC @ 0x24c4bac
|
|
void Gambit_fn_024C4BAC(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;
|
|
|
|
L_024C4BAC: ; // 0x24c4bac
|
|
/* 024C4BAC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C4BAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4BAC */ cpu->r[1] = _t0;
|
|
/* 024C4BB0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4BB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C4BB4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C4BB8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4BB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C4BBC */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 024C4BBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C4BC0 */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 024C4BC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4BC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4BC8 */ _t5 = cpu->r[11] + 0x00000254u;
|
|
/* 024C4BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C4BCC */ _t6 = cpu->r[3] + 0x000000E0u;
|
|
/* 024C4BCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4BD0 */ _t7 = cpu->r[11] + 0x0000018Cu;
|
|
/* 024C4BD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4BD4 */ cpu->ctr = cpu->r[12];
|
|
/* 024C4BD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C4BDC */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4BE0 */ _t8 = cpu->r[10] + 0x000047B8u;
|
|
/* 024C4BE0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C4BE4 */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 024C4BE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C4BE8 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 024C4BE8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C4BEC */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 024C4BF0 */ cpu->f[8] = cpu->f[12] / cpu->f[1];
|
|
/* 024C4BF4 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4BF8 */ cpu->f[10] = (uint32_t)(int32_t)cpu->f[8];
|
|
/* 024C4BFC */ _t11 = cpu->r[10] + 0x00004590u;
|
|
/* 024C4BFC */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 024C4C00 */ cpu->r[12] = 0x43300000u;
|
|
/* 024C4C04 */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C08 */ /* nop */
|
|
/* 024C4C0C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C4C10 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C10 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024C4C14 */ cpu->r[0] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C4C18 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4C18 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024C4C1C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C1C */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 024C4C20 */ cpu->f[10] = cpu->f[9] - cpu->f[11];
|
|
/* 024C4C24 */ cpu->f[0] = (double)(float)cpu->f[10];
|
|
/* 024C4C28 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[8]);
|
|
/* 024C4C2C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4C2C */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C4C2C */ if (_t17) goto L_024C4C44; else goto L_024C4C30;
|
|
L_024C4C30: ; // 0x24c4c30
|
|
/* 024C4C30 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4C34 */ _t18 = cpu->r[10] + 0x000047A8u;
|
|
/* 024C4C34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C4C38 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 024C4C3C */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4C3C */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C4C3C */ if (_t20) goto L_024C4C40; else goto L_024C4C44;
|
|
L_024C4C40: ; // 0x24c4c40
|
|
/* 024C4C40 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C4C44: ; // 0x24c4c44
|
|
/* 024C4C44 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4C48 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C4C4C */ _t21 = cpu->r[10] + 0x000047BCu;
|
|
/* 024C4C4C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C4C50 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4C50 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 024C4C54 */ cpu->f[13] = cpu->f[10] / cpu->f[1];
|
|
/* 024C4C58 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4C5C */ _t23 = cpu->r[12] + 0x00004590u;
|
|
/* 024C4C5C */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 024C4C60 */ cpu->r[0] = 0x43300000u;
|
|
/* 024C4C64 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C64 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 024C4C68 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4C68 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 024C4C6C */ cpu->f[9] = cpu->f[0] - cpu->f[12];
|
|
/* 024C4C70 */ cpu->f[11] = (double)(float)cpu->f[9];
|
|
/* 024C4C74 */ cpu->f[12] = cpu->f[8] - cpu->f[11];
|
|
/* 024C4C78 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024C4C7C */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4C7C */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C4C7C */ if (_t27) goto L_024C4C8C; else goto L_024C4C80;
|
|
L_024C4C80: ; // 0x24c4c80
|
|
/* 024C4C80 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4C84 */ cpu->r[4] = 0x00000006u;
|
|
/* 024C4C88 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4C8C: ; // 0x24c4c8c
|
|
/* 024C4C8C */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4C8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C4C90 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4C90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C4C94 */ cpu->lr = cpu->r[0];
|
|
/* 024C4C98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C4C9C */ return;
|
|
}
|
|
|
|
// fn_024C4CA4 @ 0x24c4ca4
|
|
void Gambit_fn_024C4CA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C4CA4: ; // 0x24c4ca4
|
|
/* 024C4CA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4CA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4CA4 */ cpu->r[1] = _t0;
|
|
/* 024C4CA8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4CA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4CAC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4CAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4CB4 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C4CB8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4CBC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4CBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4CC0 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4CC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4CC4 */ cpu->r[4] = cpu->r[30] + 0x000047ECu;
|
|
/* 024C4CC8 */ Gambit_fn_02398850(cpu);
|
|
/* 024C4CCC */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C4CCC */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C4CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C4CD4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4CD4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C4CD4 */ if (_t7) goto L_024C4CE8; else goto L_024C4CD8;
|
|
L_024C4CD8: ; // 0x24c4cd8
|
|
/* 024C4CD8 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C4CD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4CDC */ cpu->r[4] = cpu->r[30] + 0x000047ECu;
|
|
/* 024C4CE0 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4CE4 */ Gambit_fn_02398850(cpu);
|
|
L_024C4CE8: ; // 0x24c4ce8
|
|
/* 024C4CE8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C4CEC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4CEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C4CF0 */ cpu->lr = cpu->r[0];
|
|
/* 024C4CF4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4CF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C4CF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4CFC */ return;
|
|
}
|
|
|
|
// fn_024C4D04 @ 0x24c4d04
|
|
void Gambit_fn_024C4D04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C4D04: ; // 0x24c4d04
|
|
/* 024C4D04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4D04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4D04 */ cpu->r[1] = _t0;
|
|
/* 024C4D08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4D08 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C4D0C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4D10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4D10 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C4D14 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4D14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C4D18 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C4D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4D20 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4D20 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C4D20 */ if (_t5) goto L_024C4D30; else goto L_024C4D24;
|
|
L_024C4D24: ; // 0x24c4d24
|
|
/* 024C4D24 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4D28 */ cpu->r[4] = 0x00000007u;
|
|
/* 024C4D2C */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4D30: ; // 0x24c4d30
|
|
/* 024C4D30 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4D34 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4D34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4D38 */ cpu->lr = cpu->r[0];
|
|
/* 024C4D3C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4D40 */ return;
|
|
}
|
|
|
|
// fn_024C4D48 @ 0x24c4d48
|
|
void Gambit_fn_024C4D48(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_024C4D48: ; // 0x24c4d48
|
|
/* 024C4D48 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C4D48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4D48 */ cpu->r[1] = _t0;
|
|
/* 024C4D4C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4D4C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4D50 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4D50 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024C4D54 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4D54 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024C4D58 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4D58 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024C4D5C */ cpu->r[28] = cpu->r[3];
|
|
/* 024C4D60 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4D60 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C4D64 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C4D68 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C4D6C */ _t6 = cpu->r[28] + 0x00000234u;
|
|
/* 024C4D6C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C4D70 */ cpu->r[29] = cpu->r[30] + 0x000047F8u;
|
|
/* 024C4D74 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C4D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4D7C */ cpu->r[31] = 0x100B0000u;
|
|
/* 024C4D80 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4D80 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C4D80 */ if (_t8) goto L_024C4D88; else goto L_024C4D84;
|
|
L_024C4D84: ; // 0x24c4d84
|
|
/* 024C4D84 */ cpu->r[29] = cpu->r[31] + 0x00004800u;
|
|
L_024C4D88: ; // 0x24c4d88
|
|
/* 024C4D88 */ _t9 = cpu->r[28] + 0x00000130u;
|
|
/* 024C4D88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C4D8C */ cpu->r[4] = cpu->r[29];
|
|
/* 024C4D90 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4D94 */ Gambit_fn_02398850(cpu);
|
|
/* 024C4D98 */ _t10 = cpu->r[28] + 0x000001F8u;
|
|
/* 024C4D98 */ cpu->r[11] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C4D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C4DA0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4DA0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C4DA0 */ if (_t12) goto L_024C4DF0; else goto L_024C4DA4;
|
|
L_024C4DA4: ; // 0x24c4da4
|
|
/* 024C4DA4 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C4DA8 */ cpu->r[12] = cpu->r[3];
|
|
/* 024C4DA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C4DAC */ _t13 = cpu->r[28] + 0x00000204u;
|
|
/* 024C4DAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C4DB0 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4DB4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4DB4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C4DB4 */ if (_t15) goto L_024C4DE8; else goto L_024C4DB8;
|
|
L_024C4DB8: ; // 0x24c4db8
|
|
/* 024C4DB8 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C4DBC */ _t16 = cpu->r[10] + 0x000047F4u;
|
|
/* 024C4DBC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C4DC0 */ cpu->r[4] = cpu->r[31] + 0x00004800u;
|
|
/* 024C4DC4 */ Gambit_fn_02398664(cpu);
|
|
/* 024C4DC8 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4DC8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C4DCC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4DCC */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C4DD0 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C4DD4 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4DD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C4DD8 */ cpu->lr = cpu->r[0];
|
|
/* 024C4DDC */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4DDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C4DE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C4DE4 */ return;
|
|
L_024C4DE8: ; // 0x24c4de8
|
|
/* 024C4DE8 */ cpu->r[4] = cpu->r[30] + 0x000047F8u;
|
|
/* 024C4DEC */ Gambit_fn_02398850(cpu);
|
|
L_024C4DF0: ; // 0x24c4df0
|
|
/* 024C4DF0 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4DF0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C4DF4 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4DF4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C4DF8 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4DF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C4DFC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4DFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C4E00 */ cpu->lr = cpu->r[0];
|
|
/* 024C4E04 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4E04 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C4E08 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C4E0C */ return;
|
|
}
|
|
|
|
// fn_024C4E14 @ 0x24c4e14
|
|
void Gambit_fn_024C4E14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
double _ft17, _ft18;
|
|
|
|
L_024C4E14: ; // 0x24c4e14
|
|
/* 024C4E14 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C4E14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4E14 */ cpu->r[1] = _t0;
|
|
/* 024C4E18 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4E18 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024C4E1C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4E1C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4E20 */ /* nop */
|
|
/* 024C4E24 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4E24 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024C4E28 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4E28 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C4E2C */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C4E30 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024C4E30 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C4E34 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 024C4E34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4E38 */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 024C4E38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4E3C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C4E40 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4E44 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C4E48 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C4E4C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C4E50 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C4E54 */ _t8 = cpu->r[30] + 0x00000080u;
|
|
/* 024C4E54 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C4E58 */ _t9 = cpu->r[3] + 0x0000024Cu;
|
|
/* 024C4E58 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C4E5C */ _t10 = cpu->r[30] + 0x00000078u;
|
|
/* 024C4E5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C4E60 */ cpu->f[9] = cpu->f[11] - cpu->f[12];
|
|
/* 024C4E64 */ _t11 = cpu->r[3] + 0x00000244u;
|
|
/* 024C4E64 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C4E68 */ cpu->f[0] = cpu->f[0] - cpu->f[10];
|
|
/* 024C4E6C */ cpu->f[13] = cpu->f[9] * cpu->f[9];
|
|
/* 024C4E70 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4E74 */ cpu->f[9] = fma(cpu->f[0], cpu->f[0], cpu->f[13]);
|
|
/* 024C4E78 */ _t12 = cpu->r[12] + 0x000047A8u;
|
|
/* 024C4E78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C4E7C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]);
|
|
/* 024C4E80 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4E80 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C4E80 */ if (_t14) goto L_024C4E84; else goto L_024C4EA8;
|
|
L_024C4E84: ; // 0x24c4e84
|
|
/* 024C4E84 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4E88 */ _t15 = cpu->r[12] + 0x000047B0u;
|
|
/* 024C4E88 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C4E8C */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4E90 */ _t16 = cpu->r[12] + 0x000047ACu;
|
|
/* 024C4E90 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C4E94 */ _ft17 = sqrt(cpu->f[9]);
|
|
/* 024C4E94 */ _ft18 = (double)(int32_t)0x00000001u;
|
|
/* 024C4E94 */ cpu->f[0] = _ft18 / _ft17;
|
|
/* 024C4E98 */ cpu->f[10] = cpu->f[0] * cpu->f[0];
|
|
/* 024C4E9C */ cpu->f[11] = cpu->f[0] * cpu->f[12];
|
|
/* 024C4EA0 */ cpu->f[10] = -fma(cpu->f[10], cpu->f[9], -(cpu->f[13]));
|
|
/* 024C4EA4 */ cpu->f[0] = cpu->f[10] * cpu->f[11];
|
|
L_024C4EA8: ; // 0x24c4ea8
|
|
/* 024C4EA8 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4EAC */ cpu->f[31] = cpu->f[0] * cpu->f[9];
|
|
/* 024C4EB0 */ _t19 = cpu->r[12] + 0x000047E4u;
|
|
/* 024C4EB0 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C4EB4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[11]);
|
|
/* 024C4EB8 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4EB8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C4EB8 */ if (_t21) goto L_024C4EBC; else goto L_024C4EFC;
|
|
L_024C4EBC: ; // 0x24c4ebc
|
|
/* 024C4EBC */ _t22 = cpu->r[30] + 0x00000130u;
|
|
/* 024C4EBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C4EC0 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C4EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4EC8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4EC8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024C4EC8 */ if (_t24) goto L_024C4F08; else goto L_024C4ECC;
|
|
L_024C4ECC: ; // 0x24c4ecc
|
|
/* 024C4ECC */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4ED0 */ _t25 = cpu->r[12] + 0x000047B4u;
|
|
/* 024C4ED0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C4ED4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[10]);
|
|
/* 024C4ED8 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4ED8 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C4ED8 */ if (_t27) goto L_024C4EFC; else goto L_024C4EDC;
|
|
L_024C4EDC: ; // 0x24c4edc
|
|
/* 024C4EDC */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C4EE0 */ _t28 = cpu->r[12] + 0x00004538u;
|
|
/* 024C4EE0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C4EE4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[9]);
|
|
/* 024C4EE8 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C4EE8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C4EE8 */ if (_t30) goto L_024C4EFC; else goto L_024C4EEC;
|
|
L_024C4EEC: ; // 0x24c4eec
|
|
/* 024C4EEC */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 024C4EF0 */ cpu->r[4] = 0x00000004u;
|
|
/* 024C4EF4 */ Gambit_fn_023A2FEC(cpu);
|
|
/* 024C4EF8 */ goto L_024C4F08;
|
|
L_024C4EFC: ; // 0x24c4efc
|
|
/* 024C4EFC */ cpu->r[3] = cpu->r[30] + 0x000001B0u;
|
|
/* 024C4F00 */ cpu->r[4] = 0x00000008u;
|
|
/* 024C4F04 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4F08: ; // 0x24c4f08
|
|
/* 024C4F08 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 024C4F08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 024C4F0C */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4F0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C4F10 */ _t33 = cpu->r[1] + 0x00000010u;
|
|
/* 024C4F10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 024C4F14 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4F14 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C4F18 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C4F18 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024C4F18 */ if (_t36) goto L_024C4F1C; // else: addr-0 trap, fall-through
|
|
L_024C4F1C: ; // 0x24c4f1c
|
|
/* 024C4F1C */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 024C4F1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C4F20 */ cpu->lr = cpu->r[0];
|
|
/* 024C4F24 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C4F28 */ return;
|
|
}
|
|
|
|
// fn_024C4F30 @ 0x24c4f30
|
|
void Gambit_fn_024C4F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C4F30: ; // 0x24c4f30
|
|
/* 024C4F30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4F30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4F30 */ cpu->r[1] = _t0;
|
|
/* 024C4F34 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4F34 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C4F38 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4F38 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C4F3C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4F40 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C4F44 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4F48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4F48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C4F4C */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4F4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4F50 */ cpu->r[4] = cpu->r[30] + 0x0000480Cu;
|
|
/* 024C4F54 */ Gambit_fn_02398850(cpu);
|
|
/* 024C4F58 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C4F58 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C4F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C4F60 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4F60 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C4F60 */ if (_t7) goto L_024C4F74; else goto L_024C4F64;
|
|
L_024C4F64: ; // 0x24c4f64
|
|
/* 024C4F64 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C4F64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C4F68 */ cpu->r[4] = cpu->r[30] + 0x0000480Cu;
|
|
/* 024C4F6C */ cpu->r[5] = 0x00000001u;
|
|
/* 024C4F70 */ Gambit_fn_02398850(cpu);
|
|
L_024C4F74: ; // 0x24c4f74
|
|
/* 024C4F74 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C4F78 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C4F78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C4F7C */ cpu->lr = cpu->r[0];
|
|
/* 024C4F80 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4F80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C4F84 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4F88 */ return;
|
|
}
|
|
|
|
// fn_024C4F90 @ 0x24c4f90
|
|
void Gambit_fn_024C4F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C4F90: ; // 0x24c4f90
|
|
/* 024C4F90 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C4F90 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4F90 */ cpu->r[1] = _t0;
|
|
/* 024C4F94 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4F94 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C4F98 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4F9C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4F9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C4FA0 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C4FA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C4FA4 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C4FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C4FAC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C4FAC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C4FAC */ if (_t5) goto L_024C4FBC; else goto L_024C4FB0;
|
|
L_024C4FB0: ; // 0x24c4fb0
|
|
/* 024C4FB0 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C4FB4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C4FB8 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C4FBC: ; // 0x24c4fbc
|
|
/* 024C4FBC */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4FBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4FC0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C4FC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4FC4 */ cpu->lr = cpu->r[0];
|
|
/* 024C4FC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C4FCC */ return;
|
|
}
|
|
|
|
// fn_024C4FD4 @ 0x24c4fd4
|
|
void Gambit_fn_024C4FD4(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;
|
|
|
|
L_024C4FD4: ; // 0x24c4fd4
|
|
/* 024C4FD4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C4FD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C4FD4 */ cpu->r[1] = _t0;
|
|
/* 024C4FD8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C4FD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C4FDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C4FE0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C4FE0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C4FE4 */ _t3 = cpu->r[12] + 0x00006000u;
|
|
/* 024C4FE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C4FE8 */ _t4 = cpu->r[12] + 0x00000250u;
|
|
/* 024C4FE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C4FEC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C4FF0 */ _t5 = cpu->r[11] + 0x00000254u;
|
|
/* 024C4FF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C4FF4 */ _t6 = cpu->r[3] + 0x000000E0u;
|
|
/* 024C4FF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C4FF8 */ _t7 = cpu->r[11] + 0x0000018Cu;
|
|
/* 024C4FF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C4FFC */ cpu->ctr = cpu->r[12];
|
|
/* 024C5000 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5004 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C5008 */ _t8 = cpu->r[10] + 0x000047B8u;
|
|
/* 024C5008 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C500C */ _t9 = cpu->r[31] + 0x00000230u;
|
|
/* 024C500C */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5010 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 024C5010 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C5014 */ cpu->f[12] = cpu->f[13] + cpu->f[0];
|
|
/* 024C5018 */ cpu->f[8] = cpu->f[12] / cpu->f[1];
|
|
/* 024C501C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C5020 */ cpu->f[10] = (uint32_t)(int32_t)cpu->f[8];
|
|
/* 024C5024 */ _t11 = cpu->r[10] + 0x00004590u;
|
|
/* 024C5024 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t11);
|
|
/* 024C5028 */ cpu->r[12] = 0x43300000u;
|
|
/* 024C502C */ cpu->r[0] = cpu->r[1] + 0x00000008u;
|
|
/* 024C5030 */ /* nop */
|
|
/* 024C5034 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5034 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C5038 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5038 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024C503C */ cpu->r[0] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C5040 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5040 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024C5044 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5044 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t15);
|
|
/* 024C5048 */ cpu->f[10] = cpu->f[9] - cpu->f[11];
|
|
/* 024C504C */ cpu->f[0] = (double)(float)cpu->f[10];
|
|
/* 024C5050 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[8]);
|
|
/* 024C5054 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5054 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C5054 */ if (_t17) goto L_024C506C; else goto L_024C5058;
|
|
L_024C5058: ; // 0x24c5058
|
|
/* 024C5058 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C505C */ _t18 = cpu->r[10] + 0x000047A8u;
|
|
/* 024C505C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C5060 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[13]);
|
|
/* 024C5064 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C5064 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C5064 */ if (_t20) goto L_024C5068; else goto L_024C506C;
|
|
L_024C5068: ; // 0x24c5068
|
|
/* 024C5068 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C506C: ; // 0x24c506c
|
|
/* 024C506C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C5070 */ cpu->r[12] = cpu->r[11] ^ 0x80000000u;
|
|
/* 024C5074 */ _t21 = cpu->r[10] + 0x000047BCu;
|
|
/* 024C5074 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C5078 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5078 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 024C507C */ cpu->f[13] = cpu->f[10] / cpu->f[1];
|
|
/* 024C5080 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C5084 */ _t23 = cpu->r[12] + 0x00004590u;
|
|
/* 024C5084 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t23);
|
|
/* 024C5088 */ cpu->r[0] = 0x43300000u;
|
|
/* 024C508C */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 024C508C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 024C5090 */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5090 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t25);
|
|
/* 024C5094 */ cpu->f[9] = cpu->f[0] - cpu->f[12];
|
|
/* 024C5098 */ cpu->f[11] = (double)(float)cpu->f[9];
|
|
/* 024C509C */ cpu->f[12] = cpu->f[8] - cpu->f[11];
|
|
/* 024C50A0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 024C50A4 */ _t26 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C50A4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C50A4 */ if (_t27) goto L_024C50B4; else goto L_024C50A8;
|
|
L_024C50A8: ; // 0x24c50a8
|
|
/* 024C50A8 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C50AC */ cpu->r[4] = 0x0000000Au;
|
|
/* 024C50B0 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C50B4: ; // 0x24c50b4
|
|
/* 024C50B4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C50B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C50B8 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 024C50B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C50BC */ cpu->lr = cpu->r[0];
|
|
/* 024C50C0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C50C4 */ return;
|
|
}
|
|
|
|
// fn_024C50CC @ 0x24c50cc
|
|
void Gambit_fn_024C50CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C50CC: ; // 0x24c50cc
|
|
/* 024C50CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C50CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C50CC */ cpu->r[1] = _t0;
|
|
/* 024C50D0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C50D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C50D4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C50D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C50D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C50DC */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C50E0 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C50E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C50E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C50E8 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C50E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C50EC */ cpu->r[4] = cpu->r[30] + 0x00004814u;
|
|
/* 024C50F0 */ Gambit_fn_02398850(cpu);
|
|
/* 024C50F4 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C50F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C50F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C50FC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C50FC */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C50FC */ if (_t7) goto L_024C5110; else goto L_024C5100;
|
|
L_024C5100: ; // 0x24c5100
|
|
/* 024C5100 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C5100 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C5104 */ cpu->r[4] = cpu->r[30] + 0x00004814u;
|
|
/* 024C5108 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C510C */ Gambit_fn_02398850(cpu);
|
|
L_024C5110: ; // 0x24c5110
|
|
/* 024C5110 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5114 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5114 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C5118 */ cpu->lr = cpu->r[0];
|
|
/* 024C511C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C511C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C5120 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5124 */ return;
|
|
}
|
|
|
|
// fn_024C512C @ 0x24c512c
|
|
void Gambit_fn_024C512C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C512C: ; // 0x24c512c
|
|
/* 024C512C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C512C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C512C */ cpu->r[1] = _t0;
|
|
/* 024C5130 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5130 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5134 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5138 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5138 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C513C */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C513C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C5140 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C5144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5148 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5148 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C5148 */ if (_t5) goto L_024C5158; else goto L_024C514C;
|
|
L_024C514C: ; // 0x24c514c
|
|
/* 024C514C */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5150 */ cpu->r[4] = 0x0000000Bu;
|
|
/* 024C5154 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C5158: ; // 0x24c5158
|
|
/* 024C5158 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C515C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C515C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5160 */ cpu->lr = cpu->r[0];
|
|
/* 024C5164 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5168 */ return;
|
|
}
|
|
|
|
// fn_024C5170 @ 0x24c5170
|
|
void Gambit_fn_024C5170(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_024C5170: ; // 0x24c5170
|
|
/* 024C5170 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C5170 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5170 */ cpu->r[1] = _t0;
|
|
/* 024C5174 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5174 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5178 */ cpu->r[31] = 0x100B0000u;
|
|
/* 024C517C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C517C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C5180 */ cpu->r[31] = cpu->r[31] + 0x0000482Cu;
|
|
/* 024C5184 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5184 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024C5188 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C5188 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C518C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C518C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C5190 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C5194 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C5198 */ cpu->r[30] = cpu->r[31];
|
|
/* 024C519C */ _t6 = cpu->r[29] + 0x00000234u;
|
|
/* 024C519C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C51A0 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C51A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C51A8 */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C51AC */ _t7 = cpu->r[29] + 0x00000130u;
|
|
/* 024C51AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C51B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C51B0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C51B0 */ if (_t9) goto L_024C51B8; else goto L_024C51B4;
|
|
L_024C51B4: ; // 0x24c51b4
|
|
/* 024C51B4 */ cpu->r[30] = cpu->r[28] + 0x0000481Cu;
|
|
L_024C51B8: ; // 0x24c51b8
|
|
/* 024C51B8 */ cpu->r[4] = cpu->r[30];
|
|
/* 024C51BC */ cpu->r[5] = 0x00000001u;
|
|
/* 024C51C0 */ Gambit_fn_02398850(cpu);
|
|
/* 024C51C4 */ _t10 = cpu->r[29] + 0x000001F8u;
|
|
/* 024C51C4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C51C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C51CC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C51CC */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C51CC */ if (_t12) goto L_024C51F0; else goto L_024C51D0;
|
|
L_024C51D0: ; // 0x24c51d0
|
|
/* 024C51D0 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C51D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C51D8 */ _t13 = cpu->r[29] + 0x00000204u;
|
|
/* 024C51D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C51DC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C51DC */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C51DC */ if (_t15) goto L_024C51E4; else goto L_024C51E0;
|
|
L_024C51E0: ; // 0x24c51e0
|
|
/* 024C51E0 */ cpu->r[31] = cpu->r[28] + 0x0000481Cu;
|
|
L_024C51E4: ; // 0x24c51e4
|
|
/* 024C51E4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C51E8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C51EC */ Gambit_fn_02398850(cpu);
|
|
L_024C51F0: ; // 0x24c51f0
|
|
/* 024C51F0 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024C51F0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C51F4 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C51F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C51F8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C51F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C51FC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 024C51FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C5200 */ cpu->lr = cpu->r[0];
|
|
/* 024C5204 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C5208 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C520C */ return;
|
|
}
|
|
|
|
// fn_024C5210 @ 0x24c5210
|
|
void Gambit_fn_024C5210(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;
|
|
|
|
L_024C5210: ; // 0x24c5210
|
|
/* 024C5210 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C5210 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5210 */ cpu->r[1] = _t0;
|
|
/* 024C5214 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5218 */ /* nop */
|
|
/* 024C521C */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024C521C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C5220 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C5224 */ Gambit_fn_027F69F8(cpu);
|
|
/* 024C5228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C522C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C522C */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C522C */ if (_t3) goto L_024C5230; else goto L_024C53A8;
|
|
L_024C5230: ; // 0x24c5230
|
|
/* 024C5230 */ _t4 = cpu->r[29] + 0x000001BDu;
|
|
/* 024C5230 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C5234 */ cpu->r[27] = 0x101D0000u;
|
|
/* 024C5238 */ cpu->r[26] = 0x101D0000u;
|
|
/* 024C523C */ /* nop */
|
|
/* 024C5240 */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C5244 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Au);
|
|
/* 024C5248 */ cpu->r[28] = cpu->r[28] + 0x00004248u;
|
|
/* 024C524C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C524C */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C524C */ if (_t6) goto L_024C526C; else goto L_024C5250;
|
|
L_024C5250: ; // 0x24c5250
|
|
/* 024C5250 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu);
|
|
/* 024C5254 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5254 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C5254 */ if (_t8) goto L_024C52D0; else goto L_024C5258;
|
|
L_024C5258: ; // 0x24c5258
|
|
/* 024C5258 */ /* nop */
|
|
/* 024C525C */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 024C525C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5260 */ cpu->lr = cpu->r[0];
|
|
/* 024C5264 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C5268 */ return;
|
|
L_024C526C: ; // 0x24c526c
|
|
/* 024C526C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C5270 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C5274 */ _t10 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C5274 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C5278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C527C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5280 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5280 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C5280 */ if (_t12) goto L_024C5284; else goto L_024C5290;
|
|
L_024C5284: ; // 0x24c5284
|
|
/* 024C5284 */ _t13 = cpu->r[26] + 0x000007C8u;
|
|
/* 024C5284 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 024C5288 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C528C */ _t14 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C528C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_024C5290: ; // 0x24c5290
|
|
/* 024C5290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C5294 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5294 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C5294 */ if (_t16) goto L_024C52B8; else goto L_024C5298;
|
|
L_024C5298: ; // 0x24c5298
|
|
/* 024C5298 */ _t17 = cpu->r[31] + 0x00000000u;
|
|
/* 024C5298 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C529C */ _t18 = cpu->r[9] + 0x0000006Cu;
|
|
/* 024C529C */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C52A0 */ cpu->ctr = cpu->r[10];
|
|
/* 024C52A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C52A8 */ cpu->r[4] = cpu->r[26] + 0x000007C8u;
|
|
/* 024C52AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C52B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C52B4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C52B4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C52B4 */ if (_t20) goto L_024C52B8; else goto L_024C52BC;
|
|
L_024C52B8: ; // 0x24c52b8
|
|
/* 024C52B8 */ cpu->r[31] = 0x00000000u;
|
|
L_024C52BC: ; // 0x24c52bc
|
|
/* 024C52BC */ _t21 = cpu->r[29] + 0x000001B8u;
|
|
/* 024C52BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C52C0 */ _t22 = cpu->r[31] + 0x000002FCu;
|
|
/* 024C52C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C52C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[12]);
|
|
/* 024C52C8 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C52C8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024C52C8 */ if (_t24) goto L_024C53A8; else goto L_024C52CC;
|
|
L_024C52CC: ; // 0x24c52cc
|
|
/* 024C52CC */ goto L_024C539C;
|
|
L_024C52D0: ; // 0x24c52d0
|
|
/* 024C52D0 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C52D4 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C52D8 */ _t25 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C52D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C52DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C52E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C52E4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C52E4 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C52E4 */ if (_t27) goto L_024C52E8; else goto L_024C52F4;
|
|
L_024C52E8: ; // 0x24c52e8
|
|
/* 024C52E8 */ _t28 = cpu->r[26] + 0x000007C8u;
|
|
/* 024C52E8 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 024C52EC */ cpu->r[10] = 0x00000001u;
|
|
/* 024C52F0 */ _t29 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C52F0 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]);
|
|
L_024C52F4: ; // 0x24c52f4
|
|
/* 024C52F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C52F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C52F8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 024C52F8 */ if (_t31) goto L_024C531C; else goto L_024C52FC;
|
|
L_024C52FC: ; // 0x24c52fc
|
|
/* 024C52FC */ _t32 = cpu->r[31] + 0x00000000u;
|
|
/* 024C52FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C5300 */ _t33 = cpu->r[11] + 0x0000006Cu;
|
|
/* 024C5300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C5304 */ cpu->ctr = cpu->r[12];
|
|
/* 024C5308 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C530C */ cpu->r[4] = cpu->r[26] + 0x000007C8u;
|
|
/* 024C5310 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5318 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5318 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C5318 */ if (_t35) goto L_024C531C; else goto L_024C5320;
|
|
L_024C531C: ; // 0x24c531c
|
|
/* 024C531C */ cpu->r[31] = 0x00000000u;
|
|
L_024C5320: ; // 0x24c5320
|
|
/* 024C5320 */ _t36 = cpu->r[29] + 0x000001B8u;
|
|
/* 024C5320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C5324 */ _t37 = cpu->r[31] + 0x000003BCu;
|
|
/* 024C5324 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C5328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[7]);
|
|
/* 024C532C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C532C */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C532C */ if (_t39) goto L_024C53A8; else goto L_024C5330;
|
|
L_024C5330: ; // 0x24c5330
|
|
/* 024C5330 */ cpu->r[30] = 0x101D0000u;
|
|
/* 024C5334 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C5338 */ _t40 = cpu->r[30] + 0xFFFF9918u;
|
|
/* 024C5338 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C533C */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C5340 */ _t41 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C5340 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C5344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C5348 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C534C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C534C */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C534C */ if (_t43) goto L_024C5350; else goto L_024C535C;
|
|
L_024C5350: ; // 0x24c5350
|
|
/* 024C5350 */ _t44 = cpu->r[26] + 0x000007C8u;
|
|
/* 024C5350 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 024C5354 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C5358 */ _t45 = cpu->r[27] + 0x000004ACu;
|
|
/* 024C5358 */ rbrew_write32(cpu->mem, _t45, cpu->r[9]);
|
|
L_024C535C: ; // 0x24c535c
|
|
/* 024C535C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C5360 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5360 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C5360 */ if (_t47) goto L_024C5384; else goto L_024C5364;
|
|
L_024C5364: ; // 0x24c5364
|
|
/* 024C5364 */ _t48 = cpu->r[31] + 0x00000000u;
|
|
/* 024C5364 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C5368 */ _t49 = cpu->r[10] + 0x0000006Cu;
|
|
/* 024C5368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C536C */ cpu->ctr = cpu->r[0];
|
|
/* 024C5370 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C5374 */ cpu->r[4] = cpu->r[26] + 0x000007C8u;
|
|
/* 024C5378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C537C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5380 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5380 */ _t51 = _t50 & 0x00000001u;
|
|
/* 024C5380 */ if (_t51) goto L_024C5384; else goto L_024C5388;
|
|
L_024C5384: ; // 0x24c5384
|
|
/* 024C5384 */ cpu->r[31] = 0x00000000u;
|
|
L_024C5388: ; // 0x24c5388
|
|
/* 024C5388 */ _t52 = cpu->r[31] + 0x0000035Cu;
|
|
/* 024C5388 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C538C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C5390 */ Gambit_fn_02830138(cpu);
|
|
/* 024C5394 */ /* nop */
|
|
/* 024C5398 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5398 */ _t54 = _t53 & 0x00000001u;
|
|
/* 024C5398 */ if (_t54) goto L_024C539C; else goto L_024C53A8;
|
|
L_024C539C: ; // 0x24c539c
|
|
/* 024C539C */ cpu->r[3] = cpu->r[29] + 0x000001B0u;
|
|
/* 024C53A0 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 024C53A4 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C53A8: ; // 0x24c53a8
|
|
/* 024C53A8 */ /* nop */
|
|
/* 024C53AC */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 024C53AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024C53B0 */ cpu->lr = cpu->r[0];
|
|
/* 024C53B4 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C53B8 */ return;
|
|
}
|
|
|
|
// fn_024C53C0 @ 0x24c53c0
|
|
void Gambit_fn_024C53C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C53C0: ; // 0x24c53c0
|
|
/* 024C53C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C53C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C53C0 */ cpu->r[1] = _t0;
|
|
/* 024C53C4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C53C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C53C8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C53C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C53CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C53D0 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C53D4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C53D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C53D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C53DC */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C53DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C53E0 */ cpu->r[4] = cpu->r[30] + 0x00004838u;
|
|
/* 024C53E4 */ Gambit_fn_02398850(cpu);
|
|
/* 024C53E8 */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C53E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C53EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C53F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C53F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C53F0 */ if (_t7) goto L_024C5404; else goto L_024C53F4;
|
|
L_024C53F4: ; // 0x24c53f4
|
|
/* 024C53F4 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C53F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C53F8 */ cpu->r[4] = cpu->r[30] + 0x00004838u;
|
|
/* 024C53FC */ cpu->r[5] = 0x00000001u;
|
|
/* 024C5400 */ Gambit_fn_02398850(cpu);
|
|
L_024C5404: ; // 0x24c5404
|
|
/* 024C5404 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5408 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C540C */ cpu->lr = cpu->r[0];
|
|
/* 024C5410 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C5414 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5418 */ return;
|
|
}
|
|
|
|
// fn_024C5420 @ 0x24c5420
|
|
void Gambit_fn_024C5420(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C5420: ; // 0x24c5420
|
|
/* 024C5420 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5420 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5420 */ cpu->r[1] = _t0;
|
|
/* 024C5424 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5424 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5428 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C542C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C542C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C5430 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C5430 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C5434 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C5438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C543C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C543C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C543C */ if (_t5) goto L_024C544C; else goto L_024C5440;
|
|
L_024C5440: ; // 0x24c5440
|
|
/* 024C5440 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5444 */ cpu->r[4] = 0x0000000Bu;
|
|
/* 024C5448 */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C544C: ; // 0x24c544c
|
|
/* 024C544C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C544C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C5450 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5450 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5454 */ cpu->lr = cpu->r[0];
|
|
/* 024C5458 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C545C */ return;
|
|
}
|
|
|
|
// fn_024C5464 @ 0x24c5464
|
|
void Gambit_fn_024C5464(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C5464: ; // 0x24c5464
|
|
/* 024C5464 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5464 */ cpu->r[1] = _t0;
|
|
/* 024C5468 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5468 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C546C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C546C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C5470 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5474 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C5478 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C547C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C547C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C5480 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024C5480 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5484 */ cpu->r[4] = cpu->r[30] + 0x00004840u;
|
|
/* 024C5488 */ Gambit_fn_02398850(cpu);
|
|
/* 024C548C */ _t5 = cpu->r[31] + 0x000001F8u;
|
|
/* 024C548C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C5490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C5494 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5494 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C5494 */ if (_t7) goto L_024C54A8; else goto L_024C5498;
|
|
L_024C5498: ; // 0x24c5498
|
|
/* 024C5498 */ _t8 = cpu->r[31] + 0x00000204u;
|
|
/* 024C5498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C549C */ cpu->r[4] = cpu->r[30] + 0x00004840u;
|
|
/* 024C54A0 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C54A4 */ Gambit_fn_02398850(cpu);
|
|
L_024C54A8: ; // 0x24c54a8
|
|
/* 024C54A8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C54A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C54AC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C54AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C54B0 */ cpu->lr = cpu->r[0];
|
|
/* 024C54B4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C54B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C54B8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C54BC */ return;
|
|
}
|
|
|
|
// fn_024C54C4 @ 0x24c54c4
|
|
void Gambit_fn_024C54C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024C54C4: ; // 0x24c54c4
|
|
/* 024C54C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C54C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C54C4 */ cpu->r[1] = _t0;
|
|
/* 024C54C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C54C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C54CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C54D0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C54D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C54D4 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C54D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C54D8 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C54DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C54E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C54E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C54E0 */ if (_t5) goto L_024C54F0; else goto L_024C54E4;
|
|
L_024C54E4: ; // 0x24c54e4
|
|
/* 024C54E4 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C54E8 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C54EC */ Gambit_fn_023A2FEC(cpu);
|
|
L_024C54F0: ; // 0x24c54f0
|
|
/* 024C54F0 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024C54F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C54F4 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C54F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C54F8 */ cpu->lr = cpu->r[0];
|
|
/* 024C54FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5500 */ return;
|
|
}
|
|
|
|
// fn_024C5504 @ 0x24c5504
|
|
void Gambit_fn_024C5504(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024C5504: ; // 0x24c5504
|
|
/* 024C5504 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5508 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5508 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5508 */ cpu->r[1] = _t0;
|
|
/* 024C550C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C550C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C5510 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C5514 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5514 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C5518 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5518 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C551C */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 024C551C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5520 */ _t5 = cpu->r[12] + 0x000001BCu;
|
|
/* 024C5520 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C5524 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C5528 */ /* nop */
|
|
/* 024C552C */ cpu->r[4] = 0x00000001u;
|
|
/* 024C5530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 024C5534 */ _t6 = cpu->r[12] + 0x00000210u;
|
|
/* 024C5534 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C5538 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5538 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C5538 */ if (_t8) goto L_024C5540; else goto L_024C553C;
|
|
L_024C553C: ; // 0x24c553c
|
|
/* 024C553C */ cpu->r[4] = 0x00000000u;
|
|
L_024C5540: ; // 0x24c5540
|
|
/* 024C5540 */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5544 */ Gambit_fn_023932C0(cpu);
|
|
/* 024C5548 */ _t9 = cpu->r[30] + 0x00000004u;
|
|
/* 024C5548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C554C */ _t10 = cpu->r[12] + 0x0000022Cu;
|
|
/* 024C554C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C5550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5554 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5554 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C5554 */ if (_t12) goto L_024C5564; else goto L_024C5558;
|
|
L_024C5558: ; // 0x24c5558
|
|
/* 024C5558 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C555C */ Gambit_fn_0224AD1C(cpu);
|
|
/* 024C5560 */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 024C5560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
L_024C5564: ; // 0x24c5564
|
|
/* 024C5564 */ _t14 = cpu->r[12] + 0x0000020Cu;
|
|
/* 024C5564 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5568 */ Gambit_fn_027C7B9C(cpu);
|
|
/* 024C556C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 024C556C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C5570 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5570 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C5574 */ cpu->lr = cpu->r[0];
|
|
/* 024C5578 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C557C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5580 */ return;
|
|
}
|
|
|
|
// fn_024C5508 @ 0x24c5508
|
|
void Gambit_fn_024C5508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024C5508: ; // 0x24c5508
|
|
/* 024C5508 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5508 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5508 */ cpu->r[1] = _t0;
|
|
/* 024C550C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C550C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C5510 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C5514 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5514 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C5518 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5518 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C551C */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 024C551C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5520 */ _t5 = cpu->r[12] + 0x000001BCu;
|
|
/* 024C5520 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C5524 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C5528 */ /* nop */
|
|
/* 024C552C */ cpu->r[4] = 0x00000001u;
|
|
/* 024C5530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u);
|
|
/* 024C5534 */ _t6 = cpu->r[12] + 0x00000210u;
|
|
/* 024C5534 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C5538 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5538 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C5538 */ if (_t8) goto L_024C5540; else goto L_024C553C;
|
|
L_024C553C: ; // 0x24c553c
|
|
/* 024C553C */ cpu->r[4] = 0x00000000u;
|
|
L_024C5540: ; // 0x24c5540
|
|
/* 024C5540 */ cpu->r[4] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5544 */ Gambit_fn_023932C0(cpu);
|
|
/* 024C5548 */ _t9 = cpu->r[30] + 0x00000004u;
|
|
/* 024C5548 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C554C */ _t10 = cpu->r[12] + 0x0000022Cu;
|
|
/* 024C554C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C5550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5554 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5554 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C5554 */ if (_t12) goto L_024C5564; else goto L_024C5558;
|
|
L_024C5558: ; // 0x24c5558
|
|
/* 024C5558 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C555C */ Gambit_fn_0224AD1C(cpu);
|
|
/* 024C5560 */ _t13 = cpu->r[30] + 0x00000004u;
|
|
/* 024C5560 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
L_024C5564: ; // 0x24c5564
|
|
/* 024C5564 */ _t14 = cpu->r[12] + 0x0000020Cu;
|
|
/* 024C5564 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5568 */ Gambit_fn_027C7B9C(cpu);
|
|
/* 024C556C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 024C556C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C5570 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5570 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C5574 */ cpu->lr = cpu->r[0];
|
|
/* 024C5578 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5578 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C557C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5580 */ return;
|
|
}
|
|
|
|
// fn_024C5584 @ 0x24c5584
|
|
void Gambit_fn_024C5584(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_024C5584: ; // 0x24c5584
|
|
/* 024C5584 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5588 */ cpu->r[3] = 0x101F0000u;
|
|
/* 024C558C */ cpu->r[3] = cpu->r[3] + 0xFFFF8B10u;
|
|
/* 024C5590 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C5594 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C5598 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024C559C */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C55A0 */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C55A4 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024C55A8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C55A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C55AC */ cpu->r[9] = cpu->r[9] + 0x000042C8u;
|
|
/* 024C55B0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C55B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C55B0 */ cpu->r[1] = _t1;
|
|
/* 024C55B4 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 024C55B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 024C55B8 */ cpu->r[12] = cpu->r[12] + 0xFFFF8AFCu;
|
|
/* 024C55BC */ _t3 = cpu->r[8] + 0xFFFF8AE4u;
|
|
/* 024C55BC */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 024C55BC */ cpu->r[8] = _t3;
|
|
/* 024C55C0 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C55C4 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 024C55C4 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024C55C8 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C55CC */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C55D0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024C55D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024C55D4 */ cpu->r[7] = cpu->r[7] + 0x00004848u;
|
|
/* 024C55D8 */ _t6 = cpu->r[11] + 0xFFFF8AF4u;
|
|
/* 024C55D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 024C55D8 */ cpu->r[11] = _t6;
|
|
/* 024C55DC */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024C55E0 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 024C55E0 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 024C55E4 */ cpu->r[8] = 0x00000002u;
|
|
/* 024C55E8 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024C55E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 024C55EC */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 024C55EC */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 024C55F0 */ cpu->r[10] = cpu->r[10] + 0x000041A8u;
|
|
/* 024C55F4 */ _t10 = cpu->r[6] + 0xFFFF8AECu;
|
|
/* 024C55F4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C55F4 */ cpu->r[6] = _t10;
|
|
/* 024C55F8 */ cpu->r[11] = 0x024C0000u;
|
|
/* 024C55FC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024C55FC */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024C5600 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C5604 */ cpu->r[11] = cpu->r[11] + 0x00005FECu;
|
|
/* 024C5608 */ _t13 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5608 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 024C560C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 024C560C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024C5610 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5610 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 024C5614 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C5618 */ _t16 = cpu->r[6] + 0xFFFF8B04u;
|
|
/* 024C5618 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 024C5618 */ cpu->r[6] = _t16;
|
|
/* 024C561C */ cpu->r[0] = 0x00000004u;
|
|
/* 024C5620 */ _t17 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5620 */ rbrew_write32(cpu->mem, _t17, cpu->r[4]);
|
|
/* 024C5624 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C5628 */ _t18 = cpu->r[3] + 0x00000010u;
|
|
/* 024C5628 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 024C562C */ _t19 = cpu->r[12] + 0xFFFF8B0Cu;
|
|
/* 024C562C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024C5630 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024C5634 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C5638 */ cpu->r[3] = cpu->r[3] + 0x00006470u;
|
|
/* 024C563C */ Gambit_fn_02C83090(cpu);
|
|
/* 024C5640 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C5644 */ cpu->lr = cpu->r[0];
|
|
/* 024C5648 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C564C */ return;
|
|
}
|
|
|
|
// fn_024C55B0 @ 0x24c55b0
|
|
void Gambit_fn_024C55B0(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_024C55B0: ; // 0x24c55b0
|
|
/* 024C55B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C55B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C55B0 */ cpu->r[1] = _t0;
|
|
/* 024C55B4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024C55B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024C55B8 */ cpu->r[12] = cpu->r[12] + 0xFFFF8AFCu;
|
|
/* 024C55BC */ _t2 = cpu->r[8] + 0xFFFF8AE4u;
|
|
/* 024C55BC */ rbrew_write32(cpu->mem, _t2, cpu->r[5]);
|
|
/* 024C55BC */ cpu->r[8] = _t2;
|
|
/* 024C55C0 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C55C4 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024C55C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024C55C8 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C55CC */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C55D0 */ _t4 = cpu->r[8] + 0x00000004u;
|
|
/* 024C55D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024C55D4 */ cpu->r[7] = cpu->r[7] + 0x00004848u;
|
|
/* 024C55D8 */ _t5 = cpu->r[11] + 0xFFFF8AF4u;
|
|
/* 024C55D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024C55D8 */ cpu->r[11] = _t5;
|
|
/* 024C55DC */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024C55E0 */ _t6 = cpu->r[12] + 0x00000000u;
|
|
/* 024C55E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 024C55E4 */ cpu->r[8] = 0x00000002u;
|
|
/* 024C55E8 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 024C55E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 024C55EC */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024C55EC */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 024C55F0 */ cpu->r[10] = cpu->r[10] + 0x000041A8u;
|
|
/* 024C55F4 */ _t9 = cpu->r[6] + 0xFFFF8AECu;
|
|
/* 024C55F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C55F4 */ cpu->r[6] = _t9;
|
|
/* 024C55F8 */ cpu->r[11] = 0x024C0000u;
|
|
/* 024C55FC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C55FC */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 024C5600 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C5604 */ cpu->r[11] = cpu->r[11] + 0x00005FECu;
|
|
/* 024C5608 */ _t12 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5608 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 024C560C */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 024C560C */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 024C5610 */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5610 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024C5614 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C5618 */ _t15 = cpu->r[6] + 0xFFFF8B04u;
|
|
/* 024C5618 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 024C5618 */ cpu->r[6] = _t15;
|
|
/* 024C561C */ cpu->r[0] = 0x00000004u;
|
|
/* 024C5620 */ _t16 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5620 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 024C5624 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C5628 */ _t17 = cpu->r[3] + 0x00000010u;
|
|
/* 024C5628 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 024C562C */ _t18 = cpu->r[12] + 0xFFFF8B0Cu;
|
|
/* 024C562C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024C5630 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024C5634 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C5638 */ cpu->r[3] = cpu->r[3] + 0x00006470u;
|
|
/* 024C563C */ Gambit_fn_02C83090(cpu);
|
|
/* 024C5640 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C5644 */ cpu->lr = cpu->r[0];
|
|
/* 024C5648 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C564C */ return;
|
|
}
|
|
|
|
// fn_024C5650 @ 0x24c5650
|
|
void Gambit_fn_024C5650(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_024C5650: ; // 0x24c5650
|
|
/* 024C5650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5654 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5654 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C5654 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C5654 */ goto L_024C5658;
|
|
L_024C5658: ; // 0x24c5658
|
|
/* 024C5658 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C5658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C565C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C565C */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C565C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C565C */ goto L_024C5660;
|
|
L_024C5660: ; // 0x24c5660
|
|
/* 024C5660 */ 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_024C5664 @ 0x24c5664
|
|
void Gambit_fn_024C5664(CPUState* cpu) {
|
|
L_024C5664: ; // 0x24c5664
|
|
/* 024C5664 */ return;
|
|
}
|
|
|
|
// fn_024C5668 @ 0x24c5668
|
|
void Gambit_fn_024C5668(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_024C5668: ; // 0x24c5668
|
|
/* 024C5668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C566C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C566C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C566C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C566C */ goto L_024C5670;
|
|
L_024C5670: ; // 0x24c5670
|
|
/* 024C5670 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C5670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C5674 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5674 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C5674 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C5674 */ goto L_024C5678;
|
|
L_024C5678: ; // 0x24c5678
|
|
/* 024C5678 */ 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_024C567C @ 0x24c567c
|
|
void Gambit_fn_024C567C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024C567C: ; // 0x24c567c
|
|
/* 024C567C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024C567C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5680 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024C5680 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5684 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 024C5688 */ cpu->r[11] = 0x10110000u;
|
|
/* 024C568C */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 024C568C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C5690 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024C5690 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 024C5694 */ return;
|
|
}
|
|
|
|
// fn_024C5698 @ 0x24c5698
|
|
void Gambit_fn_024C5698(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_024C5698: ; // 0x24c5698
|
|
/* 024C5698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C569C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C569C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C569C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C569C */ goto L_024C56A0;
|
|
L_024C56A0: ; // 0x24c56a0
|
|
/* 024C56A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C56A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56A4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56A4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C56A4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C56A4 */ goto L_024C56A8;
|
|
L_024C56A8: ; // 0x24c56a8
|
|
/* 024C56A8 */ 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_024C56AC @ 0x24c56ac
|
|
void Gambit_fn_024C56AC(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_024C56AC: ; // 0x24c56ac
|
|
/* 024C56AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C56B0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56B0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C56B0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C56B0 */ goto L_024C56B4;
|
|
L_024C56B4: ; // 0x24c56b4
|
|
/* 024C56B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C56B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56B8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56B8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C56B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C56B8 */ goto L_024C56BC;
|
|
L_024C56BC: ; // 0x24c56bc
|
|
/* 024C56BC */ 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_024C56C0 @ 0x24c56c0
|
|
void Gambit_fn_024C56C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C56C0: ; // 0x24c56c0
|
|
/* 024C56C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C56C4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C56C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C56C8 */ cpu->r[12] = cpu->r[3];
|
|
/* 024C56CC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C56CC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C56CC */ cpu->r[1] = _t1;
|
|
/* 024C56D0 */ _t2 = cpu->r[12] + 0x00000004u;
|
|
/* 024C56D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C56D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C56D8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56D8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C56D8 */ if (_t4) goto L_024C5730; else goto L_024C56DC;
|
|
L_024C56DC: ; // 0x24c56dc
|
|
/* 024C56DC */ _t5 = cpu->r[12] + 0x0000000Au;
|
|
/* 024C56DC */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 024C56E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56E4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56E4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C56E4 */ if (_t7) goto L_024C5730; else goto L_024C56E8;
|
|
L_024C56E8: ; // 0x24c56e8
|
|
/* 024C56E8 */ _t8 = cpu->r[12] + 0x00000008u;
|
|
/* 024C56E8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 024C56EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56F0 */ cpu->r[3] = cpu->r[11] + cpu->r[10];
|
|
/* 024C56F4 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C56F4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C56F4 */ if (_t10) goto L_024C56F8; else goto L_024C570C;
|
|
L_024C56F8: ; // 0x24c56f8
|
|
/* 024C56F8 */ _t11 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C56F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C56FC */ cpu->ctr = cpu->r[11];
|
|
/* 024C5700 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5704 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5708 */ goto L_024C5734;
|
|
L_024C570C: ; // 0x24c570c
|
|
/* 024C570C */ _t12 = cpu->r[12] + 0x0000000Eu;
|
|
/* 024C570C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 024C5710 */ _t13 = cpu->r[3] + cpu->r[12];
|
|
/* 024C5710 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C5714 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5718 */ cpu->r[9] = cpu->r[10] + cpu->r[0];
|
|
/* 024C571C */ _t14 = cpu->r[9] + 0x00000004u;
|
|
/* 024C571C */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5720 */ cpu->ctr = cpu->r[11];
|
|
/* 024C5724 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5728 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C572C */ goto L_024C5734;
|
|
L_024C5730: ; // 0x24c5730
|
|
/* 024C5730 */ cpu->r[3] = 0x00000000u;
|
|
L_024C5734: ; // 0x24c5734
|
|
/* 024C5734 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C5738 */ cpu->lr = cpu->r[0];
|
|
/* 024C573C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C5740 */ return;
|
|
}
|
|
|
|
// fn_024C56CC @ 0x24c56cc
|
|
void Gambit_fn_024C56CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024C56CC: ; // 0x24c56cc
|
|
/* 024C56CC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C56CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C56CC */ cpu->r[1] = _t0;
|
|
/* 024C56D0 */ _t1 = cpu->r[12] + 0x00000004u;
|
|
/* 024C56D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C56D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C56D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C56D8 */ if (_t3) goto L_024C5730; else goto L_024C56DC;
|
|
L_024C56DC: ; // 0x24c56dc
|
|
/* 024C56DC */ _t4 = cpu->r[12] + 0x0000000Au;
|
|
/* 024C56DC */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t4);
|
|
/* 024C56E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56E4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C56E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C56E4 */ if (_t6) goto L_024C5730; else goto L_024C56E8;
|
|
L_024C56E8: ; // 0x24c56e8
|
|
/* 024C56E8 */ _t7 = cpu->r[12] + 0x00000008u;
|
|
/* 024C56E8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t7);
|
|
/* 024C56EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C56F0 */ cpu->r[3] = cpu->r[11] + cpu->r[10];
|
|
/* 024C56F4 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C56F4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C56F4 */ if (_t9) goto L_024C56F8; else goto L_024C570C;
|
|
L_024C56F8: ; // 0x24c56f8
|
|
/* 024C56F8 */ _t10 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C56F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C56FC */ cpu->ctr = cpu->r[11];
|
|
/* 024C5700 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5704 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5708 */ goto L_024C5734;
|
|
L_024C570C: ; // 0x24c570c
|
|
/* 024C570C */ _t11 = cpu->r[12] + 0x0000000Eu;
|
|
/* 024C570C */ cpu->r[12] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t11);
|
|
/* 024C5710 */ _t12 = cpu->r[3] + cpu->r[12];
|
|
/* 024C5710 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C5714 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5718 */ cpu->r[9] = cpu->r[10] + cpu->r[0];
|
|
/* 024C571C */ _t13 = cpu->r[9] + 0x00000004u;
|
|
/* 024C571C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C5720 */ cpu->ctr = cpu->r[11];
|
|
/* 024C5724 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5728 */ cpu->r[3] = rbrew_rlwinm(cpu->r[3], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C572C */ goto L_024C5734;
|
|
L_024C5730: ; // 0x24c5730
|
|
/* 024C5730 */ cpu->r[3] = 0x00000000u;
|
|
L_024C5734: ; // 0x24c5734
|
|
/* 024C5734 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5738 */ cpu->lr = cpu->r[0];
|
|
/* 024C573C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C5740 */ return;
|
|
}
|
|
|
|
// fn_024C5744 @ 0x24c5744
|
|
void Gambit_fn_024C5744(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024C5744: ; // 0x24c5744
|
|
/* 024C5744 */ cpu->r[12] = cpu->r[3];
|
|
/* 024C5748 */ _t0 = cpu->r[12] + 0x00000004u;
|
|
/* 024C5748 */ cpu->r[9] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C574C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C5750 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5750 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C5750 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C5750 */ goto L_024C5754;
|
|
L_024C5754: ; // 0x24c5754
|
|
/* 024C5754 */ _t3 = cpu->r[12] + 0x0000000Au;
|
|
/* 024C5754 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t3);
|
|
/* 024C5758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C575C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C575C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C575C */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C575C */ goto L_024C5760;
|
|
L_024C5760: ; // 0x24c5760
|
|
/* 024C5760 */ _t6 = cpu->r[12] + 0x00000008u;
|
|
/* 024C5760 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t6);
|
|
/* 024C5764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C5768 */ cpu->r[3] = cpu->r[9] + cpu->r[11];
|
|
/* 024C576C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C576C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C576C */ if (_t8) goto L_024C5770; else goto L_024C577C;
|
|
L_024C5770: ; // 0x24c5770
|
|
/* 024C5770 */ _t9 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C5770 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5774 */ cpu->ctr = cpu->r[10];
|
|
/* 024C5778 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_024C577C: ; // 0x24c577c
|
|
/* 024C577C */ _t10 = cpu->r[12] + 0x0000000Eu;
|
|
/* 024C577C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t10);
|
|
/* 024C5780 */ _t11 = cpu->r[3] + cpu->r[8];
|
|
/* 024C5780 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C5784 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5788 */ cpu->r[9] = cpu->r[11] + cpu->r[0];
|
|
/* 024C578C */ _t12 = cpu->r[9] + 0x00000004u;
|
|
/* 024C578C */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C5790 */ cpu->ctr = cpu->r[10];
|
|
/* 024C5794 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5798 @ 0x24c5798
|
|
void Gambit_fn_024C5798(CPUState* cpu) {
|
|
L_024C5798: ; // 0x24c5798
|
|
/* 024C5798 */ return;
|
|
}
|
|
|
|
// fn_024C579C @ 0x24c579c
|
|
void Gambit_fn_024C579C(CPUState* cpu) {
|
|
L_024C579C: ; // 0x24c579c
|
|
/* 024C579C */ return;
|
|
}
|
|
|
|
// fn_024C57A0 @ 0x24c57a0
|
|
void Gambit_fn_024C57A0(CPUState* cpu) {
|
|
L_024C57A0: ; // 0x24c57a0
|
|
/* 024C57A0 */ return;
|
|
}
|
|
|
|
// fn_024C57A4 @ 0x24c57a4
|
|
void Gambit_fn_024C57A4(CPUState* cpu) {
|
|
L_024C57A4: ; // 0x24c57a4
|
|
/* 024C57A4 */ return;
|
|
}
|
|
|
|
// fn_024C57A8 @ 0x24c57a8
|
|
void Gambit_fn_024C57A8(CPUState* cpu) {
|
|
L_024C57A8: ; // 0x24c57a8
|
|
/* 024C57A8 */ return;
|
|
}
|
|
|
|
// fn_024C57AC @ 0x24c57ac
|
|
void Gambit_fn_024C57AC(CPUState* cpu) {
|
|
L_024C57AC: ; // 0x24c57ac
|
|
/* 024C57AC */ return;
|
|
}
|
|
|
|
// fn_024C57B0 @ 0x24c57b0
|
|
void Gambit_fn_024C57B0(CPUState* cpu) {
|
|
L_024C57B0: ; // 0x24c57b0
|
|
/* 024C57B0 */ return;
|
|
}
|
|
|
|
// fn_024C57B4 @ 0x24c57b4
|
|
void Gambit_fn_024C57B4(CPUState* cpu) {
|
|
L_024C57B4: ; // 0x24c57b4
|
|
/* 024C57B4 */ return;
|
|
}
|
|
|
|
// fn_024C57B8 @ 0x24c57b8
|
|
void Gambit_fn_024C57B8(CPUState* cpu) {
|
|
L_024C57B8: ; // 0x24c57b8
|
|
/* 024C57B8 */ return;
|
|
}
|
|
|
|
// fn_024C57BC @ 0x24c57bc
|
|
void Gambit_fn_024C57BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C57BC: ; // 0x24c57bc
|
|
/* 024C57BC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C57BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C57C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C57C4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C57C4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C57C4 */ if (_t2) goto L_024C57D0; else goto L_024C57C8;
|
|
L_024C57C8: ; // 0x24c57c8
|
|
/* 024C57C8 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 024C57CC */ return;
|
|
L_024C57D0: ; // 0x24c57d0
|
|
/* 024C57D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C57D4 */ return;
|
|
}
|
|
|
|
// fn_024C57D8 @ 0x24c57d8
|
|
void Gambit_fn_024C57D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C57D8: ; // 0x24c57d8
|
|
/* 024C57D8 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C57D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C57DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C57E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C57E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C57E0 */ if (_t2) goto L_024C57EC; else goto L_024C57E4;
|
|
L_024C57E4: ; // 0x24c57e4
|
|
/* 024C57E4 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 024C57E8 */ return;
|
|
L_024C57EC: ; // 0x24c57ec
|
|
/* 024C57EC */ cpu->r[3] = 0x00000000u;
|
|
/* 024C57F0 */ return;
|
|
}
|
|
|
|
// fn_024C57F4 @ 0x24c57f4
|
|
void Gambit_fn_024C57F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C57F4: ; // 0x24c57f4
|
|
/* 024C57F4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C57F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C57F8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C57F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C57FC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C57FC */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C57FC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C57FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C57FC */ goto L_024C5800;
|
|
L_024C5800: ; // 0x24c5800
|
|
/* 024C5800 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5800 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5804 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 024C5804 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5808 */ cpu->ctr = cpu->r[0];
|
|
/* 024C580C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5810 @ 0x24c5810
|
|
void Gambit_fn_024C5810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C5810: ; // 0x24c5810
|
|
/* 024C5810 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5814 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C5814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C5818 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5818 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C5818 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C5818 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C5818 */ goto L_024C581C;
|
|
L_024C581C: ; // 0x24c581c
|
|
/* 024C581C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C581C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5820 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 024C5820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5824 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5828 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C582C @ 0x24c582c
|
|
void Gambit_fn_024C582C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C582C: ; // 0x24c582c
|
|
/* 024C582C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C582C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5830 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C5830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C5834 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5834 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C5834 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C5834 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C5834 */ goto L_024C5838;
|
|
L_024C5838: ; // 0x24c5838
|
|
/* 024C5838 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5838 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C583C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 024C583C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5840 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5844 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5848 @ 0x24c5848
|
|
void Gambit_fn_024C5848(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C5848: ; // 0x24c5848
|
|
/* 024C5848 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5848 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C584C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 024C584C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5850 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5854 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5858 @ 0x24c5858
|
|
void Gambit_fn_024C5858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C5858: ; // 0x24c5858
|
|
/* 024C5858 */ cpu->r[0] = cpu->lr;
|
|
/* 024C585C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C585C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C585C */ cpu->r[1] = _t0;
|
|
/* 024C5860 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5860 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5864 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5868 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5868 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C586C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C586C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C5870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C5874 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5874 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C5874 */ if (_t5) goto L_024C5878; else goto L_024C5894;
|
|
L_024C5878: ; // 0x24c5878
|
|
/* 024C5878 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C5878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C587C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C587C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5880 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5884 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C5888 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C588C */ cpu->r[0] = 0x00000002u;
|
|
/* 024C5890 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C5890 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C5894: ; // 0x24c5894
|
|
/* 024C5894 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5898 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C589C */ cpu->lr = cpu->r[0];
|
|
/* 024C58A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C58A4 */ return;
|
|
}
|
|
|
|
// fn_024C585C @ 0x24c585c
|
|
void Gambit_fn_024C585C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C585C: ; // 0x24c585c
|
|
/* 024C585C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C585C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C585C */ cpu->r[1] = _t0;
|
|
/* 024C5860 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5860 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5864 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5868 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5868 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C586C */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C586C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C5870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C5874 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5874 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C5874 */ if (_t5) goto L_024C5878; else goto L_024C5894;
|
|
L_024C5878: ; // 0x24c5878
|
|
/* 024C5878 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C5878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C587C */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C587C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5880 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5884 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C5888 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C588C */ cpu->r[0] = 0x00000002u;
|
|
/* 024C5890 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C5890 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C5894: ; // 0x24c5894
|
|
/* 024C5894 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5898 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C589C */ cpu->lr = cpu->r[0];
|
|
/* 024C58A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C58A4 */ return;
|
|
}
|
|
|
|
// fn_024C58B0 @ 0x24c58b0
|
|
void Gambit_fn_024C58B0(CPUState* cpu) {
|
|
L_024C58B0: ; // 0x24c58b0
|
|
/* 024C58B0 */ return;
|
|
}
|
|
|
|
// fn_024C58B4 @ 0x24c58b4
|
|
void Gambit_fn_024C58B4(CPUState* cpu) {
|
|
L_024C58B4: ; // 0x24c58b4
|
|
/* 024C58B4 */ return;
|
|
}
|
|
|
|
// fn_024C58B8 @ 0x24c58b8
|
|
void Gambit_fn_024C58B8(CPUState* cpu) {
|
|
L_024C58B8: ; // 0x24c58b8
|
|
/* 024C58B8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C58BC */ return;
|
|
}
|
|
|
|
// fn_024C58C0 @ 0x24c58c0
|
|
void Gambit_fn_024C58C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02319BA8: ; // 0x2319ba8
|
|
/* 02319BA8 */ cpu->r[0] = cpu->lr;
|
|
/* 02319BAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02319BAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02319BAC */ cpu->r[1] = _t0;
|
|
/* 02319BB0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02319BB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02319BB4 */ cpu->r[30] = cpu->r[4];
|
|
/* 02319BB8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319BB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02319BBC */ cpu->r[31] = cpu->r[3];
|
|
/* 02319BC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02319BC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02319BC8 */ Gambit_fn_02834430(cpu);
|
|
/* 02319BCC */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BD0 */ Gambit_fn_02834450(cpu);
|
|
/* 02319BD4 */ _t4 = cpu->r[31] + 0x00000054u;
|
|
/* 02319BD4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[1]);
|
|
/* 02319BD8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02319BDC */ Gambit_fn_02834450(cpu);
|
|
/* 02319BE0 */ _t5 = cpu->r[31] + 0x00000058u;
|
|
/* 02319BE0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[1]);
|
|
/* 02319BE4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02319BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02319BE8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02319BE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02319BEC */ cpu->lr = cpu->r[0];
|
|
/* 02319BF0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02319BF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02319BF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02319BF8 */ return;
|
|
L_024C58C0: ; // 0x24c58c0
|
|
/* 024C58C0 */ goto L_02319BA8;
|
|
}
|
|
|
|
// fn_024C58C4 @ 0x24c58c4
|
|
void Gambit_fn_024C58C4(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_024C58C4: ; // 0x24c58c4
|
|
/* 024C58C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C58C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C58C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C58C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C58C8 */ goto L_024C58CC;
|
|
L_024C58CC: ; // 0x24c58cc
|
|
/* 024C58CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C58CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C58D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C58D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C58D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C58D0 */ goto L_024C58D4;
|
|
L_024C58D4: ; // 0x24c58d4
|
|
/* 024C58D4 */ 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_024C58D8 @ 0x24c58d8
|
|
void Gambit_fn_024C58D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C58D8: ; // 0x24c58d8
|
|
/* 024C58D8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 024C58DC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 024C58DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C58DC */ cpu->r[10] = _t0;
|
|
/* 024C58E0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C58E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024C58E4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024C58E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C58E8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C58E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024C58EC */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 024C58EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C58F0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C58F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C58F4 */ return;
|
|
}
|
|
|
|
// fn_024C58F8 @ 0x24c58f8
|
|
void Gambit_fn_024C58F8(CPUState* cpu) {
|
|
L_024C58F8: ; // 0x24c58f8
|
|
/* 024C58F8 */ return;
|
|
}
|
|
|
|
// fn_024C58FC @ 0x24c58fc
|
|
void Gambit_fn_024C58FC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C58FC: ; // 0x24c58fc
|
|
/* 024C58FC */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 024C58FC */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C5900 */ return;
|
|
}
|
|
|
|
// fn_024C5904 @ 0x24c5904
|
|
void Gambit_fn_024C5904(CPUState* cpu) {
|
|
L_024C5904: ; // 0x24c5904
|
|
/* 024C5904 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C5908 */ return;
|
|
}
|
|
|
|
// fn_024C590C @ 0x24c590c
|
|
void Gambit_fn_024C590C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C590C: ; // 0x24c590c
|
|
/* 024C590C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C590C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5910 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 024C5910 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5914 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5918 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C591C @ 0x24c591c
|
|
void Gambit_fn_024C591C(CPUState* cpu) {
|
|
L_024C591C: ; // 0x24c591c
|
|
/* 024C591C */ return;
|
|
}
|
|
|
|
// fn_024C5920 @ 0x24c5920
|
|
void Gambit_fn_024C5920(CPUState* cpu) {
|
|
L_024C5920: ; // 0x24c5920
|
|
/* 024C5920 */ return;
|
|
}
|
|
|
|
// fn_024C5924 @ 0x24c5924
|
|
void Gambit_fn_024C5924(CPUState* cpu) {
|
|
L_024C5924: ; // 0x24c5924
|
|
/* 024C5924 */ return;
|
|
}
|
|
|
|
// fn_024C5928 @ 0x24c5928
|
|
void Gambit_fn_024C5928(CPUState* cpu) {
|
|
L_024C5928: ; // 0x24c5928
|
|
/* 024C5928 */ return;
|
|
}
|
|
|
|
// fn_024C592C @ 0x24c592c
|
|
void Gambit_fn_024C592C(CPUState* cpu) {
|
|
L_024C592C: ; // 0x24c592c
|
|
/* 024C592C */ return;
|
|
}
|
|
|
|
// fn_024C5930 @ 0x24c5930
|
|
void Gambit_fn_024C5930(CPUState* cpu) {
|
|
L_024C5930: ; // 0x24c5930
|
|
/* 024C5930 */ return;
|
|
}
|
|
|
|
// fn_024C5934 @ 0x24c5934
|
|
void Gambit_fn_024C5934(CPUState* cpu) {
|
|
L_024C5934: ; // 0x24c5934
|
|
/* 024C5934 */ return;
|
|
}
|
|
|
|
// fn_024C5938 @ 0x24c5938
|
|
void Gambit_fn_024C5938(CPUState* cpu) {
|
|
L_024C5938: ; // 0x24c5938
|
|
/* 024C5938 */ return;
|
|
}
|
|
|
|
// fn_024C593C @ 0x24c593c
|
|
void Gambit_fn_024C593C(CPUState* cpu) {
|
|
L_024C593C: ; // 0x24c593c
|
|
/* 024C593C */ return;
|
|
}
|
|
|
|
// fn_024C5940 @ 0x24c5940
|
|
void Gambit_fn_024C5940(CPUState* cpu) {
|
|
L_024C5940: ; // 0x24c5940
|
|
/* 024C5940 */ return;
|
|
}
|
|
|
|
// fn_024C5944 @ 0x24c5944
|
|
void Gambit_fn_024C5944(CPUState* cpu) {
|
|
L_024C5944: ; // 0x24c5944
|
|
/* 024C5944 */ return;
|
|
}
|
|
|
|
// fn_024C5948 @ 0x24c5948
|
|
void Gambit_fn_024C5948(CPUState* cpu) {
|
|
L_024C5948: ; // 0x24c5948
|
|
/* 024C5948 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C594C */ return;
|
|
}
|
|
|
|
// fn_024C5950 @ 0x24c5950
|
|
void Gambit_fn_024C5950(CPUState* cpu) {
|
|
L_024C5950: ; // 0x24c5950
|
|
/* 024C5950 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C5954 */ return;
|
|
}
|
|
|
|
// fn_024C5958 @ 0x24c5958
|
|
void Gambit_fn_024C5958(CPUState* cpu) {
|
|
L_024C5958: ; // 0x24c5958
|
|
/* 024C5958 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C595C */ return;
|
|
}
|
|
|
|
// fn_024C5960 @ 0x24c5960
|
|
void Gambit_fn_024C5960(CPUState* cpu) {
|
|
L_024C5960: ; // 0x24c5960
|
|
/* 024C5960 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C5964 */ return;
|
|
}
|
|
|
|
// fn_024C5968 @ 0x24c5968
|
|
void Gambit_fn_024C5968(CPUState* cpu) {
|
|
L_024C5968: ; // 0x24c5968
|
|
/* 024C5968 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C596C */ return;
|
|
}
|
|
|
|
// fn_024C5970 @ 0x24c5970
|
|
void Gambit_fn_024C5970(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C5970: ; // 0x24c5970
|
|
/* 024C5970 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 024C5970 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 024C5974 */ return;
|
|
}
|
|
|
|
// fn_024C5978 @ 0x24c5978
|
|
void Gambit_fn_024C5978(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C5978: ; // 0x24c5978
|
|
/* 024C5978 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 024C5978 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C597C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C597C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024C5980 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 024C5980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C5984 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5984 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C5988 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 024C5988 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C598C */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C598C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024C5990 */ return;
|
|
}
|
|
|
|
// fn_024C5994 @ 0x24c5994
|
|
void Gambit_fn_024C5994(CPUState* cpu) {
|
|
L_024C5994: ; // 0x24c5994
|
|
/* 024C5994 */ cpu->r[3] = 0x100B0000u;
|
|
/* 024C5998 */ cpu->r[3] = cpu->r[3] + 0x000042D4u;
|
|
/* 024C599C */ return;
|
|
}
|
|
|
|
// fn_024C59A0 @ 0x24c59a0
|
|
void Gambit_fn_024C59A0(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_024C59A0: ; // 0x24c59a0
|
|
/* 024C59A0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C59A4 */ _t0 = cpu->r[10] + 0x000004A8u;
|
|
/* 024C59A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C59A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C59AC */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C59B0 */ cpu->r[10] = cpu->r[10] + 0x000007C4u;
|
|
/* 024C59B4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C59B4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C59B4 */ if (_t2) goto L_024C59B8; else goto L_024C59D0;
|
|
L_024C59B8: ; // 0x24c59b8
|
|
/* 024C59B8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C59BC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C59C0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C59C4 */ cpu->r[0] = cpu->r[0] + 0x00004258u;
|
|
/* 024C59C8 */ _t3 = cpu->r[11] + 0x000004A8u;
|
|
/* 024C59C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 024C59CC */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 024C59CC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_024C59D0: ; // 0x24c59d0
|
|
/* 024C59D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C59D4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C59D4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C59D4 */ if (_t6) goto L_024C59D8; else goto L_024C59E0;
|
|
L_024C59D8: ; // 0x24c59d8
|
|
/* 024C59D8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C59DC */ return;
|
|
L_024C59E0: ; // 0x24c59e0
|
|
/* 024C59E0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C59E4 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 024C59E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C59E8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C59EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C59F0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 024C59F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C59F4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C59F4 */ if (_t9) goto L_024C59F8; else goto L_024C5A10;
|
|
L_024C59F8: ; // 0x24c59f8
|
|
/* 024C59F8 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C59FC */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5A00 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C5A04 */ cpu->r[9] = cpu->r[9] + 0x00004238u;
|
|
/* 024C5A08 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 024C5A08 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C5A0C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5A0C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_024C5A10: ; // 0x24c5a10
|
|
/* 024C5A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 024C5A14 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5A14 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C5A14 */ if (_t13) goto L_024C5A18; else goto L_024C5A20;
|
|
L_024C5A18: ; // 0x24c5a18
|
|
/* 024C5A18 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5A1C */ goto L_024C5AD8;
|
|
L_024C5A20: ; // 0x24c5a20
|
|
/* 024C5A20 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C5A24 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 024C5A24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5A28 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C5A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C5A30 */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 024C5A34 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5A34 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C5A34 */ if (_t16) goto L_024C5A38; else goto L_024C5A50;
|
|
L_024C5A38: ; // 0x24c5a38
|
|
/* 024C5A38 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C5A3C */ cpu->r[10] = 0x00000001u;
|
|
/* 024C5A40 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C5A44 */ cpu->r[11] = cpu->r[11] + 0x00004228u;
|
|
/* 024C5A48 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 024C5A48 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 024C5A4C */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 024C5A4C */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_024C5A50: ; // 0x24c5a50
|
|
/* 024C5A50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 024C5A54 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5A54 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C5A54 */ if (_t20) goto L_024C5A58; else goto L_024C5A60;
|
|
L_024C5A58: ; // 0x24c5a58
|
|
/* 024C5A58 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5A5C */ goto L_024C5AD4;
|
|
L_024C5A60: ; // 0x24c5a60
|
|
/* 024C5A60 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C5A64 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 024C5A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C5A64 */ cpu->r[9] = _t21;
|
|
/* 024C5A68 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C5A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C5A70 */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 024C5A74 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5A74 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C5A74 */ if (_t23) goto L_024C5A78; else goto L_024C5A8C;
|
|
L_024C5A78: ; // 0x24c5a78
|
|
/* 024C5A78 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C5A7C */ cpu->r[11] = 0x00000001u;
|
|
/* 024C5A80 */ cpu->r[0] = cpu->r[0] + 0x00004218u;
|
|
/* 024C5A84 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 024C5A84 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 024C5A88 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 024C5A88 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_024C5A8C: ; // 0x24c5a8c
|
|
/* 024C5A8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C5A90 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5A90 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C5A90 */ if (_t27) goto L_024C5A94; else goto L_024C5A9C;
|
|
L_024C5A94: ; // 0x24c5a94
|
|
/* 024C5A94 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5A98 */ goto L_024C5AD4;
|
|
L_024C5A9C: ; // 0x24c5a9c
|
|
/* 024C5A9C */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C5AA0 */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 024C5AA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C5AA0 */ cpu->r[10] = _t28;
|
|
/* 024C5AA4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C5AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C5AAC */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 024C5AB0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5AB0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C5AB0 */ if (_t30) goto L_024C5AB4; else goto L_024C5AC8;
|
|
L_024C5AB4: ; // 0x24c5ab4
|
|
/* 024C5AB4 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C5AB8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5ABC */ cpu->r[9] = cpu->r[9] + 0x00004198u;
|
|
/* 024C5AC0 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 024C5AC0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 024C5AC4 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5AC4 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_024C5AC8: ; // 0x24c5ac8
|
|
/* 024C5AC8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024C5ACC */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024C5AD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024C5AD4: ; // 0x24c5ad4
|
|
/* 024C5AD4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_024C5AD8: ; // 0x24c5ad8
|
|
/* 024C5AD8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5ADC */ return;
|
|
}
|
|
|
|
// fn_024C5AE0 @ 0x24c5ae0
|
|
void Gambit_fn_024C5AE0(CPUState* cpu) {
|
|
L_024C5AE0: ; // 0x24c5ae0
|
|
/* 024C5AE0 */ return;
|
|
}
|
|
|
|
// fn_024C5AF8 @ 0x24c5af8
|
|
void Gambit_fn_024C5AF8(CPUState* cpu) {
|
|
L_024C5AF8: ; // 0x24c5af8
|
|
/* 024C5AF8 */ cpu->r[3] = 0x00000002u;
|
|
/* 024C5AFC */ return;
|
|
}
|
|
|
|
// fn_024C5B00 @ 0x24c5b00
|
|
void Gambit_fn_024C5B00(CPUState* cpu) {
|
|
L_024C5B00: ; // 0x24c5b00
|
|
/* 024C5B00 */ return;
|
|
}
|
|
|
|
// fn_024C5B04 @ 0x24c5b04
|
|
void Gambit_fn_024C5B04(CPUState* cpu) {
|
|
L_024C5B04: ; // 0x24c5b04
|
|
/* 024C5B04 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C5B08 */ return;
|
|
}
|
|
|
|
// fn_024C5B18 @ 0x24c5b18
|
|
void Gambit_fn_024C5B18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023A2EF4: ; // 0x23a2ef4
|
|
/* 023A2EF4 */ cpu->r[0] = cpu->lr;
|
|
/* 023A2EF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A2EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A2EF8 */ cpu->r[1] = _t0;
|
|
/* 023A2EFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A2EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A2F00 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A2F04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023A2F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023A2F08 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 023A2F08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 023A2F0C */ cpu->r[12] = 0x00000000u;
|
|
/* 023A2F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A2F14 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 023A2F14 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 023A2F18 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A2F18 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A2F18 */ if (_t6) goto L_023A2F40; else goto L_023A2F1C;
|
|
L_023A2F1C: ; // 0x23a2f1c
|
|
/* 023A2F1C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A2F1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A2F20 */ /* nop */
|
|
/* 023A2F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023A2F28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A2F28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A2F28 */ if (_t9) goto L_023A2F2C; else goto L_023A2F40;
|
|
L_023A2F2C: ; // 0x23a2f2c
|
|
/* 023A2F2C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 023A2F2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A2F30 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 023A2F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A2F34 */ cpu->ctr = cpu->r[0];
|
|
/* 023A2F38 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A2F3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A2F40: ; // 0x23a2f40
|
|
/* 023A2F40 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A2F44 */ Gambit_fn_023A2E6C(cpu);
|
|
/* 023A2F48 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A2F4C */ Gambit_fn_027FC37C(cpu);
|
|
/* 023A2F50 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A2F50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A2F54 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A2F54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A2F58 */ cpu->lr = cpu->r[0];
|
|
/* 023A2F5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A2F60 */ return;
|
|
L_024C5B18: ; // 0x24c5b18
|
|
/* 024C5B18 */ cpu->r[3] = cpu->r[3] + 0x000001B0u;
|
|
/* 024C5B1C */ goto L_023A2EF4;
|
|
}
|
|
|
|
// fn_024C5B20 @ 0x24c5b20
|
|
void Gambit_fn_024C5B20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C5B20: ; // 0x24c5b20
|
|
/* 024C5B20 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5B24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5B24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5B24 */ cpu->r[1] = _t0;
|
|
/* 024C5B28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5B28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5B2C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5B30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5B30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C5B34 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 024C5B34 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C5B38 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5B3C */ /* nop */
|
|
/* 024C5B40 */ Gambit_fn_027FC35C(cpu);
|
|
/* 024C5B44 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5B48 */ Gambit_fn_023A2DE4(cpu);
|
|
/* 024C5B4C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5B4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5B50 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5B50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5B54 */ cpu->lr = cpu->r[0];
|
|
/* 024C5B58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5B5C */ return;
|
|
}
|
|
|
|
// fn_024C5B24 @ 0x24c5b24
|
|
void Gambit_fn_024C5B24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C5B24: ; // 0x24c5b24
|
|
/* 024C5B24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5B24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5B24 */ cpu->r[1] = _t0;
|
|
/* 024C5B28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5B28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C5B2C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C5B30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5B30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C5B34 */ _t3 = cpu->r[31] + 0x000001BEu;
|
|
/* 024C5B34 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C5B38 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5B3C */ /* nop */
|
|
/* 024C5B40 */ Gambit_fn_027FC35C(cpu);
|
|
/* 024C5B44 */ cpu->r[3] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C5B48 */ Gambit_fn_023A2DE4(cpu);
|
|
/* 024C5B4C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5B4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5B50 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5B50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5B54 */ cpu->lr = cpu->r[0];
|
|
/* 024C5B58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5B5C */ return;
|
|
}
|
|
|
|
// fn_024C5B60 @ 0x24c5b60
|
|
void Gambit_fn_024C5B60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024C5B60: ; // 0x24c5b60
|
|
/* 024C5B60 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C5B64 */ _t0 = cpu->r[12] + 0x000004ACu;
|
|
/* 024C5B64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C5B6C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C5B70 */ cpu->r[12] = cpu->r[12] + 0x000007C8u;
|
|
/* 024C5B74 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5B74 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C5B74 */ if (_t2) goto L_024C5B78; else goto L_024C5B90;
|
|
L_024C5B78: ; // 0x24c5b78
|
|
/* 024C5B78 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C5B7C */ cpu->r[9] = 0x00000001u;
|
|
/* 024C5B80 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C5B84 */ cpu->r[0] = cpu->r[0] + 0x00004248u;
|
|
/* 024C5B88 */ _t3 = cpu->r[8] + 0x000004ACu;
|
|
/* 024C5B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 024C5B8C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 024C5B8C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_024C5B90: ; // 0x24c5b90
|
|
/* 024C5B90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024C5B94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5B94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C5B94 */ if (_t6) goto L_024C5B98; else goto L_024C5BA0;
|
|
L_024C5B98: ; // 0x24c5b98
|
|
/* 024C5B98 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C5B9C */ return;
|
|
L_024C5BA0: ; // 0x24c5ba0
|
|
/* 024C5BA0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C5BA4 */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 024C5BA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5BA4 */ cpu->r[11] = _t7;
|
|
/* 024C5BA8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C5BAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C5BB0 */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 024C5BB4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5BB4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C5BB4 */ if (_t9) goto L_024C5BB8; else goto L_024C5BCC;
|
|
L_024C5BB8: ; // 0x24c5bb8
|
|
/* 024C5BB8 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C5BBC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C5BC0 */ cpu->r[12] = cpu->r[12] + 0x000041D8u;
|
|
/* 024C5BC4 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5BC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024C5BC8 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 024C5BC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_024C5BCC: ; // 0x24c5bcc
|
|
/* 024C5BCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C5BD0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5BD0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C5BD0 */ if (_t13) goto L_024C5BD4; else goto L_024C5BDC;
|
|
L_024C5BD4: ; // 0x24c5bd4
|
|
/* 024C5BD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C5BD8 */ goto L_024C5C14;
|
|
L_024C5BDC: ; // 0x24c5bdc
|
|
/* 024C5BDC */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C5BE0 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 024C5BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5BE0 */ cpu->r[8] = _t14;
|
|
/* 024C5BE4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C5BE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C5BEC */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 024C5BF0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5BF0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C5BF0 */ if (_t16) goto L_024C5BF4; else goto L_024C5C08;
|
|
L_024C5BF4: ; // 0x24c5bf4
|
|
/* 024C5BF4 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C5BF8 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C5BFC */ cpu->r[10] = cpu->r[10] + 0x00004198u;
|
|
/* 024C5C00 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 024C5C00 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 024C5C04 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5C04 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_024C5C08: ; // 0x24c5c08
|
|
/* 024C5C08 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024C5C0C */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 024C5C10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024C5C14: ; // 0x24c5c14
|
|
/* 024C5C14 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C5C18 */ return;
|
|
}
|
|
|
|
// fn_024C5C1C @ 0x24c5c1c
|
|
void Gambit_fn_024C5C1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C5C1C: ; // 0x24c5c1c
|
|
/* 024C5C1C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5C1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5C20 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 024C5C20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5C24 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5C28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5C2C @ 0x24c5c2c
|
|
void Gambit_fn_024C5C2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C5C2C: ; // 0x24c5c2c
|
|
/* 024C5C2C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5C2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5C30 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C5C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5C34 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5C38 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5C3C @ 0x24c5c3c
|
|
void Gambit_fn_024C5C3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C5C3C: ; // 0x24c5c3c
|
|
/* 024C5C3C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C5C3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C5C40 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C5C40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5C44 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5C48 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C5C4C @ 0x24c5c4c
|
|
void Gambit_fn_024C5C4C(CPUState* cpu) {
|
|
L_024C5C4C: ; // 0x24c5c4c
|
|
/* 024C5C4C */ return;
|
|
}
|
|
|
|
// fn_024C5C50 @ 0x24c5c50
|
|
void Gambit_fn_024C5C50(CPUState* cpu) {
|
|
L_024C5C50: ; // 0x24c5c50
|
|
/* 024C5C50 */ return;
|
|
}
|
|
|
|
// fn_024C5C54 @ 0x24c5c54
|
|
void Gambit_fn_024C5C54(CPUState* cpu) {
|
|
L_024C5C54: ; // 0x24c5c54
|
|
/* 024C5C54 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C5C58 */ return;
|
|
}
|
|
|
|
// fn_024C5C5C @ 0x24c5c5c
|
|
void Gambit_fn_024C5C5C(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_024C5C5C: ; // 0x24c5c5c
|
|
/* 024C5C5C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024C5C5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5C5C */ cpu->r[1] = _t0;
|
|
/* 024C5C60 */ /* nop */
|
|
/* 024C5C64 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5C68 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 024C5C68 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C5C6C */ cpu->r[29] = cpu->r[6];
|
|
/* 024C5C70 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C5C74 */ cpu->r[30] = cpu->r[5];
|
|
/* 024C5C78 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 024C5C78 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C5C7C */ cpu->r[31] = 0x101D0000u;
|
|
/* 024C5C80 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 024C5C80 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024C5C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5C88 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C5C88 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 024C5C8C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5C8C */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C5C8C */ if (_t6) goto L_024C5CD0; else goto L_024C5C90;
|
|
L_024C5C90: ; // 0x24c5c90
|
|
/* 024C5C90 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C5C90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5C94 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C5C98 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5C98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C5C9C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 024C5C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C5CA0 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5CA4 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C5CA8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5CAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5CB4 */ cpu->r[0] = cpu->r[27];
|
|
/* 024C5CB8 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5CB8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C5CB8 */ if (_t11) goto L_024C5CC0; else goto L_024C5CBC;
|
|
L_024C5CBC: ; // 0x24c5cbc
|
|
/* 024C5CBC */ cpu->r[0] = 0x00000001u;
|
|
L_024C5CC0: ; // 0x24c5cc0
|
|
/* 024C5CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5CC4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5CC4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C5CC4 */ if (_t13) goto L_024C5CD0; else goto L_024C5CC8;
|
|
L_024C5CC8: ; // 0x24c5cc8
|
|
/* 024C5CC8 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 024C5CC8 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 024C5CCC */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 024C5CCC */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_024C5CD0: ; // 0x24c5cd0
|
|
/* 024C5CD0 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 024C5CD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C5CD4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C5CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C5CDC */ cpu->r[12] = cpu->r[0];
|
|
/* 024C5CE0 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5CE0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C5CE0 */ if (_t18) goto L_024C5CE4; else goto L_024C5D08;
|
|
L_024C5CE4: ; // 0x24c5ce4
|
|
/* 024C5CE4 */ cpu->ctr = cpu->r[7];
|
|
/* 024C5CE8 */ cpu->r[10] = 0x00000000u;
|
|
L_024C5CEC: ; // 0x24c5cec
|
|
/* 024C5CEC */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 024C5CEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C5CF0 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 024C5CF0 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 024C5CF4 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 024C5CF8 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 024C5CF8 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 024C5CFC */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 024C5D00 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 024C5D00 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 024C5D04 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C5D04 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C5D04 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 024C5D04 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C5D04 */ if (_t25) goto L_024C5CEC; else goto L_024C5D08;
|
|
L_024C5D08: ; // 0x24c5d08
|
|
/* 024C5D08 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C5D08 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 024C5D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5D10 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5D10 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C5D10 */ if (_t28) goto L_024C5D54; else goto L_024C5D14;
|
|
L_024C5D14: ; // 0x24c5d14
|
|
/* 024C5D14 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C5D14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C5D18 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C5D1C */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5D1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C5D20 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 024C5D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C5D24 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5D28 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C5D2C */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5D38 */ cpu->r[11] = cpu->r[27];
|
|
/* 024C5D3C */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5D3C */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C5D3C */ if (_t33) goto L_024C5D44; else goto L_024C5D40;
|
|
L_024C5D40: ; // 0x24c5d40
|
|
/* 024C5D40 */ cpu->r[11] = 0x00000001u;
|
|
L_024C5D44: ; // 0x24c5d44
|
|
/* 024C5D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5D48 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5D48 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C5D48 */ if (_t35) goto L_024C5D54; else goto L_024C5D4C;
|
|
L_024C5D4C: ; // 0x24c5d4c
|
|
/* 024C5D4C */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C5D4C */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 024C5D50 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 024C5D50 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_024C5D54: ; // 0x24c5d54
|
|
/* 024C5D54 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 024C5D54 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C5D58 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C5D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024C5D60 */ cpu->r[12] = cpu->r[0];
|
|
/* 024C5D64 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5D64 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C5D64 */ if (_t40) goto L_024C5D68; else goto L_024C5D8C;
|
|
L_024C5D68: ; // 0x24c5d68
|
|
/* 024C5D68 */ cpu->ctr = cpu->r[6];
|
|
/* 024C5D6C */ cpu->r[9] = 0x00000000u;
|
|
L_024C5D70: ; // 0x24c5d70
|
|
/* 024C5D70 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C5D70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C5D74 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 024C5D74 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 024C5D78 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 024C5D7C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 024C5D7C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 024C5D80 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 024C5D84 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 024C5D84 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 024C5D88 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C5D88 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C5D88 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 024C5D88 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C5D88 */ if (_t47) goto L_024C5D70; else goto L_024C5D8C;
|
|
L_024C5D8C: ; // 0x24c5d8c
|
|
/* 024C5D8C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C5D8C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024C5D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5D94 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5D94 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C5D94 */ if (_t50) goto L_024C5DD8; else goto L_024C5D98;
|
|
L_024C5D98: ; // 0x24c5d98
|
|
/* 024C5D98 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C5D98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C5D9C */ Gambit_fn_02826F20(cpu);
|
|
/* 024C5DA0 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5DA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C5DA4 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 024C5DA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C5DA8 */ cpu->ctr = cpu->r[0];
|
|
/* 024C5DAC */ cpu->r[5] = 0x00000004u;
|
|
/* 024C5DB0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5DB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5DBC */ cpu->r[10] = cpu->r[27];
|
|
/* 024C5DC0 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5DC0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024C5DC0 */ if (_t55) goto L_024C5DC8; else goto L_024C5DC4;
|
|
L_024C5DC4: ; // 0x24c5dc4
|
|
/* 024C5DC4 */ cpu->r[10] = 0x00000001u;
|
|
L_024C5DC8: ; // 0x24c5dc8
|
|
/* 024C5DC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C5DCC */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5DCC */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C5DCC */ if (_t57) goto L_024C5DD8; else goto L_024C5DD0;
|
|
L_024C5DD0: ; // 0x24c5dd0
|
|
/* 024C5DD0 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 024C5DD0 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 024C5DD4 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 024C5DD4 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_024C5DD8: ; // 0x24c5dd8
|
|
/* 024C5DD8 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 024C5DD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C5DDC */ cpu->r[0] = 0x00000000u;
|
|
/* 024C5DE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C5DE4 */ cpu->r[5] = cpu->r[0];
|
|
/* 024C5DE8 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5DE8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C5DE8 */ if (_t62) goto L_024C5DEC; else goto L_024C5E10;
|
|
L_024C5DEC: ; // 0x24c5dec
|
|
/* 024C5DEC */ cpu->ctr = cpu->r[12];
|
|
/* 024C5DF0 */ cpu->r[8] = 0x00000000u;
|
|
L_024C5DF4: ; // 0x24c5df4
|
|
/* 024C5DF4 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 024C5DF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024C5DF8 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 024C5DF8 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 024C5DFC */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 024C5E00 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5E00 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 024C5E04 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 024C5E08 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 024C5E08 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 024C5E0C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C5E0C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C5E0C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 024C5E0C */ _t69 = _t68 & 0x00000001u;
|
|
/* 024C5E0C */ if (_t69) goto L_024C5DF4; else goto L_024C5E10;
|
|
L_024C5E10: ; // 0x24c5e10
|
|
/* 024C5E10 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024C5E10 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 024C5E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024C5E18 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E18 */ _t72 = _t71 & 0x00000001u;
|
|
/* 024C5E18 */ if (_t72) goto L_024C5EF4; else goto L_024C5E1C;
|
|
L_024C5E1C: ; // 0x24c5e1c
|
|
/* 024C5E1C */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C5E1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024C5E20 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C5E24 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C5E24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C5E28 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 024C5E28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024C5E2C */ cpu->ctr = cpu->r[12];
|
|
/* 024C5E30 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C5E34 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 024C5E38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C5E3C */ cpu->r[24] = cpu->r[3];
|
|
/* 024C5E40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024C5E44 */ cpu->r[30] = cpu->r[25];
|
|
/* 024C5E48 */ cpu->r[7] = 0x00000000u;
|
|
/* 024C5E4C */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C5E4C */ _t77 = _t76 & 0x00000001u;
|
|
/* 024C5E4C */ if (_t77) goto L_024C5E54; else goto L_024C5E50;
|
|
L_024C5E50: ; // 0x24c5e50
|
|
/* 024C5E50 */ cpu->r[30] = 0x00000001u;
|
|
L_024C5E54: ; // 0x24c5e54
|
|
/* 024C5E54 */ cpu->r[31] = 0x10110000u;
|
|
/* 024C5E58 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 024C5E5C */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 024C5E5C */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 024C5E60 */ cpu->r[23] = 0x00000018u;
|
|
L_024C5E64: ; // 0x24c5e64
|
|
/* 024C5E64 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 024C5E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C5E68 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E68 */ _t80 = _t79 & 0x00000001u;
|
|
/* 024C5E68 */ if (_t80) goto L_024C5ED8; else goto L_024C5E6C;
|
|
L_024C5E6C: ; // 0x24c5e6c
|
|
/* 024C5E6C */ cpu->r[26] = cpu->r[27];
|
|
/* 024C5E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C5E70 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E70 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024C5E70 */ if (_t82) goto L_024C5E74; else goto L_024C5E84;
|
|
L_024C5E74: ; // 0x24c5e74
|
|
/* 024C5E74 */ cpu->r[3] = 0x00000024u;
|
|
/* 024C5E78 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C5E7C */ cpu->r[26] = cpu->r[3];
|
|
/* 024C5E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C5E80 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E80 */ _t84 = _t83 & 0x00000001u;
|
|
/* 024C5E80 */ if (_t84) goto L_024C5ECC; else goto L_024C5E84;
|
|
L_024C5E84: ; // 0x24c5e84
|
|
/* 024C5E84 */ cpu->r[11] = cpu->r[26];
|
|
/* 024C5E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C5E88 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E88 */ _t86 = _t85 & 0x00000001u;
|
|
/* 024C5E88 */ if (_t86) goto L_024C5E8C; else goto L_024C5E9C;
|
|
L_024C5E8C: ; // 0x24c5e8c
|
|
/* 024C5E8C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C5E90 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C5E94 */ cpu->r[11] = cpu->r[3];
|
|
/* 024C5E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C5E98 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5E98 */ _t88 = _t87 & 0x00000001u;
|
|
/* 024C5E98 */ if (_t88) goto L_024C5EB8; else goto L_024C5E9C;
|
|
L_024C5E9C: ; // 0x24c5e9c
|
|
/* 024C5E9C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C5EA0 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 024C5EA0 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 024C5EA4 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 024C5EA8 */ cpu->r[5] = cpu->r[5] + 0x000041C0u;
|
|
/* 024C5EAC */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5EAC */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 024C5EB0 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 024C5EB0 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 024C5EB4 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 024C5EB4 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_024C5EB8: ; // 0x24c5eb8
|
|
/* 024C5EB8 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C5EBC */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 024C5EBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024C5EC0 */ cpu->r[6] = cpu->r[6] + 0x000041E8u;
|
|
/* 024C5EC4 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 024C5EC4 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 024C5EC8 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 024C5EC8 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_024C5ECC: ; // 0x24c5ecc
|
|
/* 024C5ECC */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C5ED0 */ cpu->r[0] = cpu->r[0] + 0x00004200u;
|
|
/* 024C5ED4 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 024C5ED4 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_024C5ED8: ; // 0x24c5ed8
|
|
/* 024C5ED8 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 024C5ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C5EDC */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 024C5EE0 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5EE0 */ _t98 = _t97 & 0x00000001u;
|
|
/* 024C5EE0 */ if (_t98) goto L_024C5EE4; else goto L_024C5E64;
|
|
L_024C5EE4: ; // 0x24c5ee4
|
|
/* 024C5EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 024C5EE8 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C5EE8 */ _t100 = _t99 & 0x00000001u;
|
|
/* 024C5EE8 */ if (_t100) goto L_024C5EF4; else goto L_024C5EEC;
|
|
L_024C5EEC: ; // 0x24c5eec
|
|
/* 024C5EEC */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 024C5EEC */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 024C5EF0 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 024C5EF0 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_024C5EF4: ; // 0x24c5ef4
|
|
/* 024C5EF4 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 024C5EF4 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 024C5EF8 */ /* nop */
|
|
/* 024C5EFC */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 024C5EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 024C5F00 */ cpu->lr = cpu->r[0];
|
|
/* 024C5F04 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024C5F08 */ return;
|
|
}
|
|
|
|
// fn_024C5F0C @ 0x24c5f0c
|
|
void Gambit_fn_024C5F0C(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_024C5F0C: ; // 0x24c5f0c
|
|
/* 024C5F0C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 024C5F0C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C5F10 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 024C5F10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5F14 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 024C5F14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C5F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 024C5F1C */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 024C5F1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C5F20 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C5F20 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C5F20 */ if (_t5) goto L_024C5F24; else goto L_024C5F2C;
|
|
L_024C5F24: ; // 0x24c5f24
|
|
/* 024C5F24 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5F28 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024C5F2C: ; // 0x24c5f2c
|
|
/* 024C5F2C */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C5F2C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C5F30 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 024C5F30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C5F34 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024C5F34 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024C5F38 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 024C5F38 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024C5F3C */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 024C5F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C5F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 024C5F44 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024C5F44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C5F48 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C5F48 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C5F48 */ if (_t13) goto L_024C5F4C; else goto L_024C5F54;
|
|
L_024C5F4C: ; // 0x24c5f4c
|
|
/* 024C5F4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5F50 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024C5F54: ; // 0x24c5f54
|
|
/* 024C5F54 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 024C5F54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C5F58 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024C5F58 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024C5F5C */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 024C5F5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C5F60 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 024C5F60 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 024C5F64 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 024C5F64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C5F68 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 024C5F68 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024C5F6C */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 024C5F6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C5F70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 024C5F74 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 024C5F74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C5F78 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C5F78 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C5F78 */ if (_t23) goto L_024C5F7C; else goto L_024C5F84;
|
|
L_024C5F7C: ; // 0x24c5f7c
|
|
/* 024C5F7C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C5F80 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_024C5F84: ; // 0x24c5f84
|
|
/* 024C5F84 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 024C5F84 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 024C5F88 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 024C5F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C5F8C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 024C5F8C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 024C5F90 */ return;
|
|
}
|
|
|
|
// fn_024C5F94 @ 0x24c5f94
|
|
void Gambit_fn_024C5F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C5F94: ; // 0x24c5f94
|
|
/* 024C5F94 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5F98 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C5F9C */ cpu->r[7] = 0x024C0000u;
|
|
/* 024C5FA0 */ cpu->r[6] = 0x024C0000u;
|
|
/* 024C5FA4 */ cpu->r[10] = 0x101C0000u;
|
|
/* 024C5FA8 */ cpu->r[7] = cpu->r[7] + 0x000058A8u;
|
|
/* 024C5FAC */ cpu->r[6] = cpu->r[6] + 0x000058A8u;
|
|
/* 024C5FB0 */ cpu->r[10] = cpu->r[10] + 0x00006480u;
|
|
/* 024C5FB4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C5FB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C5FB8 */ cpu->r[0] = 0x101C0000u;
|
|
/* 024C5FBC */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5FBC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C5FBC */ cpu->r[1] = _t1;
|
|
/* 024C5FC0 */ cpu->r[0] = cpu->r[0] + 0x0000647Cu;
|
|
/* 024C5FC4 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024C5FC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C5FC8 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C5FCC */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5FCC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C5FD0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5FD4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5FD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024C5FD8 */ Gambit_fn_02791B10(cpu);
|
|
/* 024C5FDC */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5FDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C5FE0 */ cpu->lr = cpu->r[0];
|
|
/* 024C5FE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5FE8 */ return;
|
|
}
|
|
|
|
// fn_024C5FBC @ 0x24c5fbc
|
|
void Gambit_fn_024C5FBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C5FBC: ; // 0x24c5fbc
|
|
/* 024C5FBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C5FBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5FBC */ cpu->r[1] = _t0;
|
|
/* 024C5FC0 */ cpu->r[0] = cpu->r[0] + 0x0000647Cu;
|
|
/* 024C5FC4 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024C5FC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C5FC8 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C5FCC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C5FCC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C5FD0 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5FD4 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C5FD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024C5FD8 */ Gambit_fn_02791B10(cpu);
|
|
/* 024C5FDC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C5FDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C5FE0 */ cpu->lr = cpu->r[0];
|
|
/* 024C5FE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C5FE8 */ return;
|
|
}
|
|
|
|
// fn_024C5FEC @ 0x24c5fec
|
|
void Gambit_fn_024C5FEC(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_024C5FEC: ; // 0x24c5fec
|
|
/* 024C5FEC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024C5FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C5FEC */ cpu->r[1] = _t0;
|
|
/* 024C5FF0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C5FF4 */ /* nop */
|
|
/* 024C5FF8 */ cpu->r[30] = cpu->r[5];
|
|
/* 024C5FFC */ cpu->r[26] = cpu->r[3];
|
|
/* 024C6000 */ cpu->r[27] = cpu->r[7];
|
|
/* 024C6004 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6008 */ cpu->r[31] = cpu->r[6];
|
|
/* 024C600C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C600C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C6010 */ cpu->r[29] = cpu->r[4];
|
|
/* 024C6014 */ cpu->r[4] = cpu->r[27];
|
|
/* 024C6018 */ Gambit_fn_027DB318(cpu);
|
|
/* 024C601C */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 024C601C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024C6020 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6020 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C6020 */ if (_t3) goto L_024C60B4; else goto L_024C6024;
|
|
L_024C6024: ; // 0x24c6024
|
|
/* 024C6024 */ cpu->r[5] = cpu->r[28];
|
|
/* 024C6028 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C602C */ cpu->r[3] = cpu->r[26];
|
|
/* 024C6030 */ Gambit_fn_024C5F94(cpu);
|
|
/* 024C6034 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024C6034 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6038 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C603C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 024C6040 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024C6044 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024C6048 */ cpu->r[25] = 0x00000000u;
|
|
/* 024C604C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C604C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C604C */ if (_t7) goto L_024C60B4; else goto L_024C6050;
|
|
L_024C6050: ; // 0x24c6050
|
|
/* 024C6050 */ cpu->r[24] = 0x101C0000u;
|
|
L_024C6054: ; // 0x24c6054
|
|
/* 024C6054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C6058 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6058 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C6058 */ if (_t9) goto L_024C6070; else goto L_024C605C;
|
|
L_024C605C: ; // 0x24c605c
|
|
/* 024C605C */ cpu->ctr = cpu->r[27];
|
|
/* 024C6060 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6064 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C606C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C606C */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C606C */ if (_t11) goto L_024C60A0; else goto L_024C6070;
|
|
L_024C6070: ; // 0x24c6070
|
|
/* 024C6070 */ _t12 = cpu->r[24] + 0x0000647Cu;
|
|
/* 024C6070 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C6074 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 024C6078 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 024C6078 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024C607C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 024C607C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6080 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C6084 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 024C6084 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6088 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C608C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 024C608C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C6090 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C6094 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 024C6094 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C6098 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024C609C */ Gambit_fn_024C3454(cpu);
|
|
L_024C60A0: ; // 0x24c60a0
|
|
/* 024C60A0 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 024C60A4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 024C60A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C60A8 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024C60AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024C60B0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C60B0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C60B0 */ if (_t20) goto L_024C60B4; else goto L_024C6054;
|
|
L_024C60B4: ; // 0x24c60b4
|
|
/* 024C60B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C60B8 */ /* nop */
|
|
/* 024C60BC */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C60BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C60C0 */ cpu->lr = cpu->r[0];
|
|
/* 024C60C4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024C60C8 */ return;
|
|
}
|
|
|
|
// fn_024C60CC @ 0x24c60cc
|
|
void Gambit_fn_024C60CC(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;
|
|
|
|
L_024C60CC: ; // 0x24c60cc
|
|
/* 024C60CC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024C60CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C60CC */ cpu->r[1] = _t0;
|
|
/* 024C60D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C60D4 */ /* nop */
|
|
/* 024C60D8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C60D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C60DC */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 024C60DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C60E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C60E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C60E0 */ if (_t3) goto L_024C60E4; else goto L_024C60F4;
|
|
L_024C60E4: ; // 0x24c60e4
|
|
/* 024C60E4 */ cpu->r[3] = 0x00000504u;
|
|
/* 024C60E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C60EC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C60EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C60F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C60F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C60F0 */ if (_t5) goto L_024C6290; else goto L_024C60F4;
|
|
L_024C60F4: ; // 0x24c60f4
|
|
/* 024C60F4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C60F8 */ Gambit_fn_024F6F3C(cpu);
|
|
/* 024C60FC */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C6100 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C6104 */ cpu->r[25] = 0x100B0000u;
|
|
/* 024C6108 */ cpu->r[0] = cpu->r[0] + 0x00004CACu;
|
|
/* 024C610C */ cpu->r[24] = 0x100B0000u;
|
|
/* 024C6110 */ cpu->r[26] = cpu->r[31] + 0x000001B8u;
|
|
/* 024C6110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C6114 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C6114 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C6118 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C611C */ cpu->r[25] = cpu->r[25] + 0x00004C08u;
|
|
/* 024C6120 */ _t7 = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6120 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 024C6124 */ _t8 = cpu->r[12] + 0x00007230u;
|
|
/* 024C6124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6128 */ cpu->r[11] = 0x00000001u;
|
|
/* 024C612C */ cpu->r[24] = cpu->r[24] + 0x00004BF0u;
|
|
/* 024C6130 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C6134 */ /* nop */
|
|
/* 024C6138 */ cpu->r[28] = 0x10110000u;
|
|
/* 024C613C */ cpu->r[30] = cpu->r[30] + 0x00004C20u;
|
|
/* 024C6140 */ _t9 = cpu->r[31] + 0x000001B4u;
|
|
/* 024C6140 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C6144 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6144 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C6144 */ if (_t11) goto L_024C6148; else goto L_024C6158;
|
|
L_024C6148: ; // 0x24c6148
|
|
/* 024C6148 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 024C614C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C6150 */ cpu->r[26] = cpu->r[3];
|
|
/* 024C6150 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C6154 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6154 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C6154 */ if (_t13) goto L_024C61C8; else goto L_024C6158;
|
|
L_024C6158: ; // 0x24c6158
|
|
/* 024C6158 */ cpu->r[27] = cpu->r[26];
|
|
/* 024C6158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C615C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C615C */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C615C */ if (_t15) goto L_024C6160; else goto L_024C6170;
|
|
L_024C6160: ; // 0x24c6160
|
|
/* 024C6160 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 024C6164 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C6168 */ cpu->r[27] = cpu->r[3];
|
|
/* 024C6168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C616C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C616C */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C616C */ if (_t17) goto L_024C61C4; else goto L_024C6170;
|
|
L_024C6170: ; // 0x24c6170
|
|
/* 024C6170 */ cpu->r[3] = cpu->r[27];
|
|
/* 024C6170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6174 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6174 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C6174 */ if (_t19) goto L_024C6178; else goto L_024C619C;
|
|
L_024C6178: ; // 0x24c6178
|
|
/* 024C6178 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C617C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C6180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6184 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6184 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C6184 */ if (_t21) goto L_024C6188; else goto L_024C619C;
|
|
L_024C6188: ; // 0x24c6188
|
|
/* 024C6188 */ _t22 = cpu->r[27] + 0x00000000u;
|
|
/* 024C6188 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C618C */ _t23 = cpu->r[28] + 0x00007399u;
|
|
/* 024C618C */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 024C6190 */ _t24 = cpu->r[27] + 0x00000004u;
|
|
/* 024C6190 */ rbrew_write32(cpu->mem, _t24, cpu->r[25]);
|
|
/* 024C6194 */ _t25 = cpu->r[5] + 0x00000000u;
|
|
/* 024C6194 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[0]);
|
|
/* 024C6198 */ goto L_024C61C4;
|
|
L_024C619C: ; // 0x24c619c
|
|
/* 024C619C */ cpu->r[12] = cpu->r[27] + 0x0000000Cu;
|
|
/* 024C61A0 */ _t26 = cpu->r[3] + 0x00000004u;
|
|
/* 024C61A0 */ rbrew_write32(cpu->mem, _t26, cpu->r[24]);
|
|
/* 024C61A4 */ cpu->r[0] = 0x00000100u;
|
|
/* 024C61A8 */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 024C61A8 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 024C61AC */ _t28 = cpu->r[3] + 0x00000008u;
|
|
/* 024C61AC */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024C61B0 */ _t29 = cpu->r[28] + 0x00007399u;
|
|
/* 024C61B0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t29);
|
|
/* 024C61B4 */ _t30 = cpu->r[27] + 0x00000004u;
|
|
/* 024C61B4 */ rbrew_write32(cpu->mem, _t30, cpu->r[25]);
|
|
/* 024C61B8 */ _t31 = cpu->r[27] + 0x00000000u;
|
|
/* 024C61B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C61BC */ _t32 = cpu->r[27] + 0x0000010Bu;
|
|
/* 024C61BC */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[0]);
|
|
/* 024C61C0 */ _t33 = cpu->r[5] + 0x00000000u;
|
|
/* 024C61C0 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[0]);
|
|
L_024C61C4: ; // 0x24c61c4
|
|
/* 024C61C4 */ _t34 = cpu->r[26] + 0x00000004u;
|
|
/* 024C61C4 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
L_024C61C8: ; // 0x24c61c8
|
|
/* 024C61C8 */ cpu->r[26] = cpu->r[31] + 0x000002C4u;
|
|
/* 024C61C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C61CC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C61CC */ _t36 = _t35 & 0x00000001u;
|
|
/* 024C61CC */ if (_t36) goto L_024C61D0; else goto L_024C61E0;
|
|
L_024C61D0: ; // 0x24c61d0
|
|
/* 024C61D0 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 024C61D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C61D8 */ cpu->r[26] = cpu->r[3];
|
|
/* 024C61D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C61DC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C61DC */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C61DC */ if (_t38) goto L_024C6250; else goto L_024C61E0;
|
|
L_024C61E0: ; // 0x24c61e0
|
|
/* 024C61E0 */ cpu->r[27] = cpu->r[26];
|
|
/* 024C61E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C61E4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C61E4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C61E4 */ if (_t40) goto L_024C61E8; else goto L_024C61F8;
|
|
L_024C61E8: ; // 0x24c61e8
|
|
/* 024C61E8 */ cpu->r[3] = 0x0000010Cu;
|
|
/* 024C61EC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C61F0 */ cpu->r[27] = cpu->r[3];
|
|
/* 024C61F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C61F4 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C61F4 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C61F4 */ if (_t42) goto L_024C624C; else goto L_024C61F8;
|
|
L_024C61F8: ; // 0x24c61f8
|
|
/* 024C61F8 */ cpu->r[3] = cpu->r[27];
|
|
/* 024C61F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C61FC */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C61FC */ _t44 = _t43 & 0x00000001u;
|
|
/* 024C61FC */ if (_t44) goto L_024C6200; else goto L_024C6224;
|
|
L_024C6200: ; // 0x24c6200
|
|
/* 024C6200 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C6204 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C6208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C620C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C620C */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C620C */ if (_t46) goto L_024C6210; else goto L_024C6224;
|
|
L_024C6210: ; // 0x24c6210
|
|
/* 024C6210 */ _t47 = cpu->r[27] + 0x00000000u;
|
|
/* 024C6210 */ cpu->r[8] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C6214 */ _t48 = cpu->r[28] + 0x00007399u;
|
|
/* 024C6214 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024C6218 */ _t49 = cpu->r[27] + 0x00000004u;
|
|
/* 024C6218 */ rbrew_write32(cpu->mem, _t49, cpu->r[25]);
|
|
/* 024C621C */ _t50 = cpu->r[8] + 0x00000000u;
|
|
/* 024C621C */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[0]);
|
|
/* 024C6220 */ goto L_024C624C;
|
|
L_024C6224: ; // 0x24c6224
|
|
/* 024C6224 */ cpu->r[0] = cpu->r[27] + 0x0000000Cu;
|
|
/* 024C6228 */ _t51 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6228 */ rbrew_write32(cpu->mem, _t51, cpu->r[24]);
|
|
/* 024C622C */ cpu->r[7] = 0x00000100u;
|
|
/* 024C6230 */ _t52 = cpu->r[3] + 0x00000000u;
|
|
/* 024C6230 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 024C6234 */ _t53 = cpu->r[3] + 0x00000008u;
|
|
/* 024C6234 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 024C6238 */ _t54 = cpu->r[28] + 0x00007399u;
|
|
/* 024C6238 */ cpu->r[0] = rbrew_read8(cpu->mem, _t54);
|
|
/* 024C623C */ _t55 = cpu->r[27] + 0x00000004u;
|
|
/* 024C623C */ rbrew_write32(cpu->mem, _t55, cpu->r[25]);
|
|
/* 024C6240 */ _t56 = cpu->r[27] + 0x00000000u;
|
|
/* 024C6240 */ cpu->r[8] = rbrew_read32(cpu->mem, _t56);
|
|
/* 024C6244 */ _t57 = cpu->r[27] + 0x0000010Bu;
|
|
/* 024C6244 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[0]);
|
|
/* 024C6248 */ _t58 = cpu->r[8] + 0x00000000u;
|
|
/* 024C6248 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[0]);
|
|
L_024C624C: ; // 0x24c624c
|
|
/* 024C624C */ _t59 = cpu->r[26] + 0x00000004u;
|
|
/* 024C624C */ rbrew_write32(cpu->mem, _t59, cpu->r[30]);
|
|
L_024C6250: ; // 0x24c6250
|
|
/* 024C6250 */ _t60 = cpu->r[31] + 0x000003D0u;
|
|
/* 024C6250 */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[29]);
|
|
/* 024C6254 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 024C6258 */ _t61 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C6258 */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
/* 024C625C */ cpu->r[4] = 0x101F0000u;
|
|
/* 024C6260 */ _t62 = cpu->r[31] + 0x000003D1u;
|
|
/* 024C6260 */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[29]);
|
|
/* 024C6264 */ cpu->r[4] = cpu->r[4] + 0x000066E8u;
|
|
/* 024C6268 */ _t63 = cpu->r[31] + 0x000003DCu;
|
|
/* 024C6268 */ rbrew_write32(cpu->mem, _t63, cpu->r[9]);
|
|
/* 024C626C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024C6270 */ _t64 = cpu->r[31] + 0x000003D8u;
|
|
/* 024C6270 */ rbrew_write32(cpu->mem, _t64, cpu->r[29]);
|
|
/* 024C6274 */ cpu->r[3] = cpu->r[31] + 0x000003E4u;
|
|
/* 024C6278 */ cpu->r[10] = 0x00000001u;
|
|
/* 024C627C */ _t65 = cpu->r[31] + 0x000003E0u;
|
|
/* 024C627C */ rbrew_write32(cpu->mem, _t65, cpu->r[29]);
|
|
/* 024C6280 */ _t66 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6280 */ rbrew_write32(cpu->mem, _t66, cpu->r[10]);
|
|
/* 024C6284 */ Gambit_fn_023A4950(cpu);
|
|
/* 024C6288 */ _t67 = cpu->r[31] + 0x00000501u;
|
|
/* 024C6288 */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[29]);
|
|
/* 024C628C */ _t68 = cpu->r[31] + 0x00000500u;
|
|
/* 024C628C */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[29]);
|
|
L_024C6290: ; // 0x24c6290
|
|
/* 024C6290 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6294 */ /* nop */
|
|
/* 024C6298 */ _t69 = cpu->r[1] + 0x00000034u;
|
|
/* 024C6298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024C629C */ cpu->lr = cpu->r[0];
|
|
/* 024C62A0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024C62A4 */ return;
|
|
}
|
|
|
|
// fn_024C62A8 @ 0x24c62a8
|
|
void Gambit_fn_024C62A8(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;
|
|
|
|
L_024C62A8: ; // 0x24c62a8
|
|
/* 024C62A8 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 024C62A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C62A8 */ cpu->r[1] = _t0;
|
|
/* 024C62AC */ /* nop */
|
|
/* 024C62B0 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C62B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C62B8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C62BC */ cpu->r[31] = cpu->r[4];
|
|
/* 024C62C0 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C62C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C62C4 */ Gambit_fn_024F6710(cpu);
|
|
/* 024C62C8 */ cpu->r[5] = cpu->r[3];
|
|
/* 024C62CC */ cpu->r[3] = cpu->r[28];
|
|
/* 024C62D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C62D4 */ Gambit_fn_024F4798(cpu);
|
|
/* 024C62D8 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C62DC */ cpu->r[5] = cpu->r[5] + 0x00004C94u;
|
|
/* 024C62E0 */ _t2 = cpu->r[31] + 0x00000000u;
|
|
/* 024C62E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C62E4 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 024C62E8 */ Gambit_fn_027DBA48(cpu);
|
|
/* 024C62EC */ cpu->r[27] = 0x100B0000u;
|
|
/* 024C62F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C62F4 */ cpu->r[31] = 0x10110000u;
|
|
/* 024C62F8 */ cpu->r[27] = cpu->r[27] + 0x00004BD8u;
|
|
/* 024C62FC */ cpu->r[26] = 0x101C0000u;
|
|
/* 024C6300 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6300 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C6300 */ if (_t4) goto L_024C63C4; else goto L_024C6304;
|
|
L_024C6304: ; // 0x24c6304
|
|
/* 024C6304 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C6308 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C630C */ _t5 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C630C */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6310 */ cpu->ctr = cpu->r[25];
|
|
/* 024C6314 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 024C6314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6318 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6318 */ rbrew_write32(cpu->mem, _t7, cpu->r[27]);
|
|
/* 024C631C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C631C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024C6320 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6324 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6328 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C632C */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 024C632C */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C6330 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6330 */ cpu->r[8] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024C6334 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 024C633C */ cpu->r[6] = 0x00080000u;
|
|
/* 024C6340 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6340 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C6340 */ if (_t13) goto L_024C6368; else goto L_024C6344;
|
|
L_024C6344: ; // 0x24c6344
|
|
/* 024C6344 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 024C634C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C6350 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6350 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C6350 */ if (_t15) goto L_024C6364; else goto L_024C6354;
|
|
L_024C6354: ; // 0x24c6354
|
|
/* 024C6354 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6354 */ cpu->r[9] = rbrew_read8(cpu->mem, _t16);
|
|
/* 024C6358 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 024C635C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C635C */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C635C */ if (_t18) goto L_024C6360; else goto L_024C6344;
|
|
L_024C6360: ; // 0x24c6360
|
|
/* 024C6360 */ goto L_024C6368;
|
|
L_024C6364: ; // 0x24c6364
|
|
/* 024C6364 */ cpu->r[30] = 0x00000000u;
|
|
L_024C6368: ; // 0x24c6368
|
|
/* 024C6368 */ _t19 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C6368 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 024C6370 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6370 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C6370 */ if (_t21) goto L_024C6378; else goto L_024C6374;
|
|
L_024C6374: ; // 0x24c6374
|
|
/* 024C6374 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C6378: ; // 0x24c6378
|
|
/* 024C6378 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C637C */ _t23 = cpu->r[10] + 0x00000014u;
|
|
/* 024C637C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C6380 */ cpu->ctr = cpu->r[11];
|
|
/* 024C6384 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6388 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C638C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C638C */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C6390 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6394 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6398 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C639C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C63A0 */ _t25 = cpu->r[29] + cpu->r[30];
|
|
/* 024C63A0 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[31]);
|
|
/* 024C63A4 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C63A8 */ _t26 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C63A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C63AC */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C63B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C63B4 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C63B8 */ cpu->r[10] = cpu->r[3];
|
|
/* 024C63B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C63BC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C63BC */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C63BC */ if (_t28) goto L_024C6644; else goto L_024C63C0;
|
|
L_024C63C0: ; // 0x24c63c0
|
|
/* 024C63C0 */ goto L_024C6550;
|
|
L_024C63C4: ; // 0x24c63c4
|
|
/* 024C63C4 */ _t29 = cpu->r[26] + 0x00001358u;
|
|
/* 024C63C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C63C8 */ _t30 = cpu->r[30] + 0x00000128u;
|
|
/* 024C63C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C63CC */ _t31 = cpu->r[31] + 0x00007399u;
|
|
/* 024C63CC */ cpu->r[31] = rbrew_read8(cpu->mem, _t31);
|
|
/* 024C63D0 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 024C63D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32);
|
|
/* 024C63D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C63D8 */ cpu->r[25] = cpu->r[30] + 0x00000128u;
|
|
/* 024C63DC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C63DC */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C63DC */ if (_t34) goto L_024C6498; else goto L_024C63E0;
|
|
L_024C63E0: ; // 0x24c63e0
|
|
/* 024C63E0 */ _t35 = cpu->r[25] + 0x00000004u;
|
|
/* 024C63E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C63E4 */ _t36 = cpu->r[5] + 0x00000014u;
|
|
/* 024C63E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C63E8 */ cpu->ctr = cpu->r[6];
|
|
/* 024C63EC */ _t37 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C63EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C63F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 024C63F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C63F8 */ _t38 = cpu->r[25] + 0x00000000u;
|
|
/* 024C63F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C63FC */ _t39 = cpu->r[5] + 0x00000000u;
|
|
/* 024C63FC */ cpu->r[7] = rbrew_read8(cpu->mem, _t39);
|
|
/* 024C6400 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 024C6408 */ cpu->r[0] = 0x00080000u;
|
|
/* 024C640C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C640C */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C640C */ if (_t41) goto L_024C6434; else goto L_024C6410;
|
|
L_024C6410: ; // 0x24c6410
|
|
/* 024C6410 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 024C6418 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 024C641C */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C641C */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C641C */ if (_t43) goto L_024C6430; else goto L_024C6420;
|
|
L_024C6420: ; // 0x24c6420
|
|
/* 024C6420 */ _t44 = cpu->r[5] + 0x00000000u;
|
|
/* 024C6420 */ cpu->r[8] = rbrew_read8(cpu->mem, _t44);
|
|
/* 024C6424 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 024C6428 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6428 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C6428 */ if (_t46) goto L_024C642C; else goto L_024C6410;
|
|
L_024C642C: ; // 0x24c642c
|
|
/* 024C642C */ goto L_024C6434;
|
|
L_024C6430: ; // 0x24c6430
|
|
/* 024C6430 */ cpu->r[30] = 0x00000000u;
|
|
L_024C6434: ; // 0x24c6434
|
|
/* 024C6434 */ _t47 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C6434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C6438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 024C643C */ _t48 = cpu->r[25] + 0x00000004u;
|
|
/* 024C643C */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C6440 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6440 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C6440 */ if (_t50) goto L_024C6448; else goto L_024C6444;
|
|
L_024C6444: ; // 0x24c6444
|
|
/* 024C6444 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C6448: ; // 0x24c6448
|
|
/* 024C6448 */ _t51 = cpu->r[9] + 0x00000014u;
|
|
/* 024C6448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C644C */ cpu->ctr = cpu->r[10];
|
|
/* 024C6450 */ cpu->r[3] = cpu->r[25];
|
|
/* 024C6454 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6458 */ _t52 = cpu->r[25] + 0x00000000u;
|
|
/* 024C6458 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C645C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6460 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6464 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6468 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C646C */ _t53 = cpu->r[29] + cpu->r[30];
|
|
/* 024C646C */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[31]);
|
|
/* 024C6470 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6474 */ _t54 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C6474 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C6478 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C647C */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6480 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6484 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C6488 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C648C */ cpu->r[10] = cpu->r[3];
|
|
/* 024C648C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C6490 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6490 */ _t56 = _t55 & 0x00000001u;
|
|
/* 024C6490 */ if (_t56) goto L_024C6644; else goto L_024C6494;
|
|
L_024C6494: ; // 0x24c6494
|
|
/* 024C6494 */ goto L_024C6550;
|
|
L_024C6498: ; // 0x24c6498
|
|
/* 024C6498 */ _t57 = cpu->r[30] + 0x00000020u;
|
|
/* 024C6498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024C649C */ _t58 = cpu->r[11] + 0x00000014u;
|
|
/* 024C649C */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C64A0 */ cpu->r[25] = cpu->r[30] + 0x0000001Cu;
|
|
/* 024C64A4 */ cpu->ctr = cpu->r[12];
|
|
/* 024C64A8 */ _t59 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C64A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C64AC */ cpu->r[3] = cpu->r[25];
|
|
/* 024C64B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C64B4 */ _t60 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024C64B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C64B8 */ _t61 = cpu->r[9] + 0x00000000u;
|
|
/* 024C64B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 024C64BC */ cpu->r[30] = 0x00000000u;
|
|
/* 024C64C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C64C4 */ cpu->r[11] = 0x00080000u;
|
|
/* 024C64C8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C64C8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024C64C8 */ if (_t63) goto L_024C64F0; else goto L_024C64CC;
|
|
L_024C64CC: ; // 0x24c64cc
|
|
/* 024C64CC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C64D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C64D4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024C64D8 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C64D8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C64D8 */ if (_t65) goto L_024C64EC; else goto L_024C64DC;
|
|
L_024C64DC: ; // 0x24c64dc
|
|
/* 024C64DC */ _t66 = cpu->r[9] + 0x00000000u;
|
|
/* 024C64DC */ cpu->r[5] = rbrew_read8(cpu->mem, _t66);
|
|
/* 024C64E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 024C64E4 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C64E4 */ _t68 = _t67 & 0x00000001u;
|
|
/* 024C64E4 */ if (_t68) goto L_024C64E8; else goto L_024C64CC;
|
|
L_024C64E8: ; // 0x24c64e8
|
|
/* 024C64E8 */ goto L_024C64F0;
|
|
L_024C64EC: ; // 0x24c64ec
|
|
/* 024C64EC */ cpu->r[30] = 0x00000000u;
|
|
L_024C64F0: ; // 0x24c64f0
|
|
/* 024C64F0 */ _t69 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C64F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024C64F4 */ _t70 = cpu->r[25] + 0x00000004u;
|
|
/* 024C64F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024C64F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C64FC */ _t71 = cpu->r[7] + 0x00000014u;
|
|
/* 024C64FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C6500 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6500 */ _t73 = _t72 & 0x00000001u;
|
|
/* 024C6500 */ if (_t73) goto L_024C6508; else goto L_024C6504;
|
|
L_024C6504: ; // 0x24c6504
|
|
/* 024C6504 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C6508: ; // 0x24c6508
|
|
/* 024C6508 */ cpu->ctr = cpu->r[8];
|
|
/* 024C650C */ cpu->r[3] = cpu->r[25];
|
|
/* 024C6510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6514 */ _t74 = cpu->r[25] + 0x00000000u;
|
|
/* 024C6514 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C6518 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C651C */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6520 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6524 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C6528 */ _t75 = cpu->r[29] + cpu->r[30];
|
|
/* 024C6528 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[31]);
|
|
/* 024C652C */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6530 */ _t76 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C6530 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 024C6534 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C6538 */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C653C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6540 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C6544 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C6548 */ cpu->r[10] = cpu->r[3];
|
|
/* 024C6548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C654C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C654C */ _t78 = _t77 & 0x00000001u;
|
|
/* 024C654C */ if (_t78) goto L_024C6644; else goto L_024C6550;
|
|
L_024C6550: ; // 0x24c6550
|
|
/* 024C6550 */ cpu->ctr = cpu->r[25];
|
|
/* 024C6554 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 024C6554 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
/* 024C6558 */ _t80 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C6558 */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024C655C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 024C6560 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6560 */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 024C6564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6568 */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t82);
|
|
/* 024C656C */ _t83 = cpu->r[9] + 0x00000000u;
|
|
/* 024C656C */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 024C6570 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6574 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6578 */ cpu->r[11] = 0x00080000u;
|
|
/* 024C657C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C657C */ _t85 = _t84 & 0x00000001u;
|
|
/* 024C657C */ if (_t85) goto L_024C65A4; else goto L_024C6580;
|
|
L_024C6580: ; // 0x24c6580
|
|
/* 024C6580 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C6588 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024C658C */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C658C */ _t87 = _t86 & 0x00000001u;
|
|
/* 024C658C */ if (_t87) goto L_024C65A0; else goto L_024C6590;
|
|
L_024C6590: ; // 0x24c6590
|
|
/* 024C6590 */ _t88 = cpu->r[9] + 0x00000000u;
|
|
/* 024C6590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t88);
|
|
/* 024C6594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6598 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6598 */ _t90 = _t89 & 0x00000001u;
|
|
/* 024C6598 */ if (_t90) goto L_024C659C; else goto L_024C6580;
|
|
L_024C659C: ; // 0x24c659c
|
|
/* 024C659C */ goto L_024C65A4;
|
|
L_024C65A0: ; // 0x24c65a0
|
|
/* 024C65A0 */ cpu->r[30] = 0x00000000u;
|
|
L_024C65A4: ; // 0x24c65a4
|
|
/* 024C65A4 */ _t91 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C65A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 024C65A8 */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 024C65A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 024C65AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C65B0 */ _t93 = cpu->r[7] + 0x00000014u;
|
|
/* 024C65B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024C65B4 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C65B4 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024C65B4 */ if (_t95) goto L_024C65BC; else goto L_024C65B8;
|
|
L_024C65B8: ; // 0x24c65b8
|
|
/* 024C65B8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C65BC: ; // 0x24c65bc
|
|
/* 024C65BC */ cpu->ctr = cpu->r[0];
|
|
/* 024C65C0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 024C65C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C65C8 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 024C65C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024C65CC */ cpu->r[6] = 0x00000000u;
|
|
/* 024C65D0 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C65D4 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C65D8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C65DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C65E0 */ _t97 = cpu->r[29] + cpu->r[30];
|
|
/* 024C65E0 */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[31]);
|
|
/* 024C65E4 */ _t98 = cpu->r[12] + 0x00001344u;
|
|
/* 024C65E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 024C65E8 */ _t99 = cpu->r[12] + 0x00000010u;
|
|
/* 024C65E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t99);
|
|
/* 024C65EC */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C65F0 */ Gambit_fn_0201A440(cpu);
|
|
/* 024C65F4 */ _t100 = cpu->r[28] + 0x000003D8u;
|
|
/* 024C65F4 */ rbrew_write32(cpu->mem, _t100, cpu->r[3]);
|
|
/* 024C65F8 */ _t101 = cpu->r[3] + 0x00000010u;
|
|
/* 024C65F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 024C65FC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6600 */ _t102 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6600 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 024C6604 */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C6608 */ _t103 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6608 */ cpu->r[5] = rbrew_read32(cpu->mem, _t103);
|
|
/* 024C660C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024C6610 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6614 */ Gambit_fn_02173E28(cpu);
|
|
/* 024C6618 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 024C6618 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 024C661C */ cpu->r[4] = 0x00000002u;
|
|
/* 024C6620 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6624 */ _t105 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C6624 */ rbrew_write32(cpu->mem, _t105, cpu->r[5]);
|
|
/* 024C6628 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C662C */ _t106 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C662C */ cpu->r[6] = rbrew_read32(cpu->mem, _t106);
|
|
/* 024C6630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000000u);
|
|
/* 024C6634 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6634 */ _t108 = _t107 & 0x00000001u;
|
|
/* 024C6634 */ if (_t108) goto L_024C6638; else goto L_024C67D0;
|
|
L_024C6638: ; // 0x24c6638
|
|
/* 024C6638 */ cpu->r[6] = 0x00000001u;
|
|
/* 024C663C */ _t109 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C663C */ rbrew_write32(cpu->mem, _t109, cpu->r[6]);
|
|
/* 024C6640 */ goto L_024C67FC;
|
|
L_024C6644: ; // 0x24c6644
|
|
/* 024C6644 */ _t110 = cpu->r[26] + 0x00001358u;
|
|
/* 024C6644 */ cpu->r[29] = rbrew_read32(cpu->mem, _t110);
|
|
/* 024C6648 */ _t111 = cpu->r[29] + 0x00000020u;
|
|
/* 024C6648 */ cpu->r[11] = rbrew_read32(cpu->mem, _t111);
|
|
/* 024C664C */ _t112 = cpu->r[11] + 0x00000014u;
|
|
/* 024C664C */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 024C6650 */ cpu->r[26] = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C6654 */ cpu->ctr = cpu->r[5];
|
|
/* 024C6658 */ _t113 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6658 */ cpu->r[24] = rbrew_read32(cpu->mem, _t113);
|
|
/* 024C665C */ cpu->r[3] = cpu->r[26];
|
|
/* 024C6660 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6664 */ _t114 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C6664 */ cpu->r[8] = rbrew_read32(cpu->mem, _t114);
|
|
/* 024C6668 */ _t115 = cpu->r[8] + 0x00000000u;
|
|
/* 024C6668 */ cpu->r[7] = rbrew_read8(cpu->mem, _t115);
|
|
/* 024C666C */ cpu->r[10] = 0x00080000u;
|
|
/* 024C6670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 024C6674 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C6678 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6678 */ _t117 = _t116 & 0x00000001u;
|
|
/* 024C6678 */ if (_t117) goto L_024C66A0; else goto L_024C667C;
|
|
L_024C667C: ; // 0x24c667c
|
|
/* 024C667C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 024C6680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 024C6684 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024C6688 */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6688 */ _t119 = _t118 & 0x00000001u;
|
|
/* 024C6688 */ if (_t119) goto L_024C669C; else goto L_024C668C;
|
|
L_024C668C: ; // 0x24c668c
|
|
/* 024C668C */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 024C668C */ cpu->r[0] = rbrew_read8(cpu->mem, _t120);
|
|
/* 024C6690 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6694 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6694 */ _t122 = _t121 & 0x00000001u;
|
|
/* 024C6694 */ if (_t122) goto L_024C6698; else goto L_024C667C;
|
|
L_024C6698: ; // 0x24c6698
|
|
/* 024C6698 */ goto L_024C66A0;
|
|
L_024C669C: ; // 0x24c669c
|
|
/* 024C669C */ cpu->r[29] = 0x00000000u;
|
|
L_024C66A0: ; // 0x24c66a0
|
|
/* 024C66A0 */ _t123 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C66A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024C66A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 024C66A8 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C66A8 */ _t125 = _t124 & 0x00000001u;
|
|
/* 024C66A8 */ if (_t125) goto L_024C66B0; else goto L_024C66AC;
|
|
L_024C66AC: ; // 0x24c66ac
|
|
/* 024C66AC */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C66B0: ; // 0x24c66b0
|
|
/* 024C66B0 */ _t126 = cpu->r[26] + 0x00000004u;
|
|
/* 024C66B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t126);
|
|
/* 024C66B4 */ _t127 = cpu->r[10] + 0x00000014u;
|
|
/* 024C66B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t127);
|
|
/* 024C66B8 */ cpu->ctr = cpu->r[12];
|
|
/* 024C66BC */ cpu->r[3] = cpu->r[26];
|
|
/* 024C66C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C66C4 */ _t128 = cpu->r[26] + 0x00000000u;
|
|
/* 024C66C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 024C66C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C66CC */ cpu->r[5] = cpu->r[29];
|
|
/* 024C66D0 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C66D4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C66D8 */ cpu->r[4] = cpu->r[26];
|
|
/* 024C66DC */ cpu->r[3] = cpu->r[30];
|
|
/* 024C66E0 */ _t129 = cpu->r[24] + cpu->r[29];
|
|
/* 024C66E0 */ rbrew_write8(cpu->mem, _t129, (uint8_t)cpu->r[31]);
|
|
/* 024C66E4 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C66E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024C66EC */ _t130 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C66EC */ rbrew_write32(cpu->mem, _t130, cpu->r[3]);
|
|
/* 024C66F0 */ _t131 = cpu->r[1] + 0x00000020u;
|
|
/* 024C66F0 */ rbrew_write32(cpu->mem, _t131, cpu->r[27]);
|
|
/* 024C66F4 */ _t132 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C66F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t132);
|
|
/* 024C66F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C66FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6700 */ _t133 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t133);
|
|
/* 024C6704 */ _t134 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6704 */ cpu->r[0] = rbrew_read8(cpu->mem, _t134);
|
|
/* 024C6708 */ cpu->r[5] = 0x00080000u;
|
|
/* 024C670C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6710 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6714 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6714 */ _t136 = _t135 & 0x00000001u;
|
|
/* 024C6714 */ if (_t136) goto L_024C673C; else goto L_024C6718;
|
|
L_024C6718: ; // 0x24c6718
|
|
/* 024C6718 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C671C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 024C6720 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C6724 */ _t137 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6724 */ _t138 = _t137 & 0x00000001u;
|
|
/* 024C6724 */ if (_t138) goto L_024C6738; else goto L_024C6728;
|
|
L_024C6728: ; // 0x24c6728
|
|
/* 024C6728 */ _t139 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6728 */ cpu->r[6] = rbrew_read8(cpu->mem, _t139);
|
|
/* 024C672C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 024C6730 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6730 */ _t141 = _t140 & 0x00000001u;
|
|
/* 024C6730 */ if (_t141) goto L_024C6734; else goto L_024C6718;
|
|
L_024C6734: ; // 0x24c6734
|
|
/* 024C6734 */ goto L_024C673C;
|
|
L_024C6738: ; // 0x24c6738
|
|
/* 024C6738 */ cpu->r[30] = 0x00000000u;
|
|
L_024C673C: ; // 0x24c673c
|
|
/* 024C673C */ _t142 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C673C */ cpu->r[11] = rbrew_read32(cpu->mem, _t142);
|
|
/* 024C6740 */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 024C6740 */ cpu->r[8] = rbrew_read32(cpu->mem, _t143);
|
|
/* 024C6744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C6748 */ _t144 = cpu->r[8] + 0x00000014u;
|
|
/* 024C6748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 024C674C */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C674C */ _t146 = _t145 & 0x00000001u;
|
|
/* 024C674C */ if (_t146) goto L_024C6754; else goto L_024C6750;
|
|
L_024C6750: ; // 0x24c6750
|
|
/* 024C6750 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C6754: ; // 0x24c6754
|
|
/* 024C6754 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6758 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C675C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6760 */ _t147 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147);
|
|
/* 024C6764 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6768 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C676C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6770 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C6774 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C6778 */ _t148 = cpu->r[29] + cpu->r[30];
|
|
/* 024C6778 */ rbrew_write8(cpu->mem, _t148, (uint8_t)cpu->r[31]);
|
|
/* 024C677C */ _t149 = cpu->r[12] + 0x00001344u;
|
|
/* 024C677C */ cpu->r[12] = rbrew_read32(cpu->mem, _t149);
|
|
/* 024C6780 */ _t150 = cpu->r[12] + 0x00000010u;
|
|
/* 024C6780 */ cpu->r[3] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024C6784 */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6788 */ Gambit_fn_0201A440(cpu);
|
|
/* 024C678C */ _t151 = cpu->r[28] + 0x000003D8u;
|
|
/* 024C678C */ rbrew_write32(cpu->mem, _t151, cpu->r[3]);
|
|
/* 024C6790 */ _t152 = cpu->r[3] + 0x00000010u;
|
|
/* 024C6790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t152);
|
|
/* 024C6794 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6798 */ _t153 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6798 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 024C679C */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C67A0 */ _t154 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C67A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 024C67A4 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024C67A8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C67AC */ Gambit_fn_02173E28(cpu);
|
|
/* 024C67B0 */ _t155 = cpu->r[1] + 0x00000028u;
|
|
/* 024C67B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155);
|
|
/* 024C67B4 */ cpu->r[4] = 0x00000002u;
|
|
/* 024C67B8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C67BC */ _t156 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C67BC */ rbrew_write32(cpu->mem, _t156, cpu->r[5]);
|
|
/* 024C67C0 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C67C4 */ _t157 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C67C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t157);
|
|
/* 024C67C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000000u);
|
|
/* 024C67CC */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67CC */ _t159 = _t158 & 0x00000001u;
|
|
/* 024C67CC */ if (_t159) goto L_024C6638; else goto L_024C67D0;
|
|
L_024C67D0: ; // 0x24c67d0
|
|
/* 024C67D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000002u);
|
|
/* 024C67D4 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67D4 */ _t161 = _t160 & 0x00000001u;
|
|
/* 024C67D4 */ if (_t161) goto L_024C6638; else goto L_024C67D8;
|
|
L_024C67D8: ; // 0x24c67d8
|
|
/* 024C67D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 024C67DC */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67DC */ _t163 = _t162 & 0x00000001u;
|
|
/* 024C67DC */ if (_t163) goto L_024C67F4; else goto L_024C67E0;
|
|
L_024C67E0: ; // 0x24c67e0
|
|
/* 024C67E0 */ /* nop */
|
|
/* 024C67E4 */ _t164 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C67E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 024C67E8 */ cpu->lr = cpu->r[0];
|
|
/* 024C67EC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 024C67F0 */ return;
|
|
L_024C67F4: ; // 0x24c67f4
|
|
/* 024C67F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C67F8 */ _t165 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C67F8 */ rbrew_write32(cpu->mem, _t165, cpu->r[6]);
|
|
L_024C67FC: ; // 0x24c67fc
|
|
/* 024C67FC */ /* nop */
|
|
/* 024C6800 */ _t166 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C6800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t166);
|
|
/* 024C6804 */ cpu->lr = cpu->r[0];
|
|
/* 024C6808 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 024C680C */ return;
|
|
}
|
|
|
|
// fn_024C6810 @ 0x24c6810
|
|
void Gambit_fn_024C6810(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;
|
|
|
|
L_024C6810: ; // 0x24c6810
|
|
/* 024C6810 */ cpu->r[11] = cpu->r[3];
|
|
/* 024C6814 */ _t0 = cpu->r[11] + 0x000003E0u;
|
|
/* 024C6814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6818 */ cpu->r[9] = 0x00000000u;
|
|
/* 024C681C */ _t1 = cpu->r[11] + 0x00000030u;
|
|
/* 024C681C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C6820 */ cpu->r[10] = cpu->r[0] ^ 0x00000003u;
|
|
/* 024C6824 */ _t2 = cpu->r[11] + 0x000003D4u;
|
|
/* 024C6824 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 024C6828 */ cpu->r[12] = rbrew_clz32(cpu->r[10]);
|
|
/* 024C682C */ _t3 = cpu->r[11] + 0x000003D1u;
|
|
/* 024C682C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[9]);
|
|
/* 024C6830 */ cpu->r[4] = 0x00000003u;
|
|
/* 024C6834 */ cpu->r[5] = rbrew_rlwinm(cpu->r[12], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024C6838 */ _t4 = cpu->r[11] + 0x00000501u;
|
|
/* 024C6838 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[9]);
|
|
/* 024C683C */ goto L_027B8224;
|
|
L_027B8224: ; // 0x27b8224
|
|
/* 027B8224 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 027B8224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 027B8228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027B822C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027B822C */ _t7 = _t6 & 0x00000001u;
|
|
/* 027B822C */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 027B822C */ goto L_027B8230;
|
|
L_027B8230: ; // 0x27b8230
|
|
/* 027B8230 */ goto L_027DA698;
|
|
L_027DA698: ; // 0x27da698
|
|
/* 027DA698 */ cpu->r[0] = cpu->lr;
|
|
/* 027DA69C */ _t8 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 027DA69C */ rbrew_write32(cpu->mem, _t8, cpu->r[1]);
|
|
/* 027DA69C */ cpu->r[1] = _t8;
|
|
/* 027DA6A0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 027DA6A4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6A4 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 027DA6A8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 027DA6AC */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6AC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 027DA6B0 */ cpu->r[29] = cpu->r[3];
|
|
/* 027DA6B4 */ _t13 = cpu->r[29] + 0x00000014u;
|
|
/* 027DA6B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027DA6B8 */ cpu->r[31] = cpu->r[5];
|
|
/* 027DA6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6C0 */ cpu->r[30] = cpu->r[4];
|
|
/* 027DA6C4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6C4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 027DA6C4 */ if (_t15) goto L_027DA6D4; else goto L_027DA6C8;
|
|
L_027DA6C8: ; // 0x27da6c8
|
|
/* 027DA6C8 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6CC */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6D0 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6D4: ; // 0x27da6d4
|
|
/* 027DA6D4 */ _t16 = cpu->r[29] + 0x00000018u;
|
|
/* 027DA6D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 027DA6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 027DA6DC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 027DA6DC */ _t18 = _t17 & 0x00000001u;
|
|
/* 027DA6DC */ if (_t18) goto L_027DA6EC; else goto L_027DA6E0;
|
|
L_027DA6E0: ; // 0x27da6e0
|
|
/* 027DA6E0 */ cpu->r[5] = cpu->r[31];
|
|
/* 027DA6E4 */ cpu->r[4] = cpu->r[30];
|
|
/* 027DA6E8 */ Gambit_fn_028AC3E4(cpu);
|
|
L_027DA6EC: ; // 0x27da6ec
|
|
/* 027DA6EC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027DA6EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 027DA6F0 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027DA6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 027DA6F4 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 027DA6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 027DA6F8 */ cpu->lr = cpu->r[0];
|
|
/* 027DA6FC */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 027DA6FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 027DA700 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 027DA704 */ return;
|
|
}
|
|
|
|
// fn_024C6840 @ 0x24c6840
|
|
void Gambit_fn_024C6840(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;
|
|
|
|
L_024C6840: ; // 0x24c6840
|
|
/* 024C6840 */ cpu->r[0] = cpu->lr;
|
|
/* 024C6844 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C6844 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6844 */ cpu->r[1] = _t0;
|
|
/* 024C6848 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6848 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C684C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C684C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C6850 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6850 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C6854 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6854 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C6858 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C685C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C685C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C6860 */ _t6 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C6860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6864 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024C6864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6868 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C686C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C686C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C686C */ if (_t8) goto L_024C68A8; else goto L_024C6870;
|
|
L_024C6870: ; // 0x24c6870
|
|
/* 024C6870 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6874 */ _t9 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C6874 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C6878 */ _t10 = cpu->r[30] + 0x00006000u;
|
|
/* 024C6878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6878 */ cpu->r[30] = _t10;
|
|
/* 024C687C */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 024C687C */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6880 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C6884 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C6888 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C688C */ cpu->r[3] = cpu->r[28];
|
|
/* 024C6890 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C6894 */ _t12 = cpu->r[3] + 0x0000065Cu;
|
|
/* 024C6894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C6898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C689C */ _t13 = cpu->r[31] + 0x00000501u;
|
|
/* 024C689C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024C68A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C68A0 */ if (_t15) goto L_024C68A4; else goto L_024C68E0;
|
|
L_024C68A4: ; // 0x24c68a4
|
|
/* 024C68A4 */ goto L_024C68DC;
|
|
L_024C68A8: ; // 0x24c68a8
|
|
/* 024C68A8 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C68AC */ _t16 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C68AC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 024C68B0 */ _t17 = cpu->r[30] + 0x00006000u;
|
|
/* 024C68B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C68B0 */ cpu->r[30] = _t17;
|
|
/* 024C68B4 */ _t18 = cpu->r[12] + 0x00000268u;
|
|
/* 024C68B4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C68B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C68BC */ Gambit_fn_0261F774(cpu);
|
|
/* 024C68C0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C68C4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C68C8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C68CC */ _t19 = cpu->r[3] + 0x0000065Cu;
|
|
/* 024C68CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C68D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C68D4 */ _t20 = cpu->r[31] + 0x00000501u;
|
|
/* 024C68D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024C68D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C68D8 */ if (_t22) goto L_024C68DC; else goto L_024C68E0;
|
|
L_024C68DC: ; // 0x24c68dc
|
|
/* 024C68DC */ _t23 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C68DC */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
L_024C68E0: ; // 0x24c68e0
|
|
/* 024C68E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C68E4 */ _t24 = cpu->r[31] + 0x00000500u;
|
|
/* 024C68E4 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 024C68E8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C68E8 */ if (_t26) goto L_024C68EC; else goto L_024C692C;
|
|
L_024C68EC: ; // 0x24c68ec
|
|
/* 024C68EC */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 024C68EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C68F0 */ _t28 = cpu->r[12] + 0x00000268u;
|
|
/* 024C68F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C68F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C68F8 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C68FC */ cpu->r[4] = cpu->r[3];
|
|
/* 024C6900 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6904 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C6908 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024C690C */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 024C6910 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C6914 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C6918 */ _t29 = cpu->r[11] + 0x00004CA4u;
|
|
/* 024C6918 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024C691C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 024C6920 */ /* nop */
|
|
/* 024C6924 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6928 */ _t30 = cpu->r[31] + 0x00000501u;
|
|
/* 024C6928 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[11]);
|
|
L_024C692C: ; // 0x24c692c
|
|
/* 024C692C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 024C692C */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C6930 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6930 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C6934 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C6938 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C693C */ cpu->lr = cpu->r[0];
|
|
/* 024C6940 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C6944 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C6948 */ return;
|
|
}
|
|
|
|
// fn_024C6844 @ 0x24c6844
|
|
void Gambit_fn_024C6844(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;
|
|
|
|
L_024C6844: ; // 0x24c6844
|
|
/* 024C6844 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C6844 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6844 */ cpu->r[1] = _t0;
|
|
/* 024C6848 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6848 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C684C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C684C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024C6850 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6850 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C6854 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6854 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024C6858 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C685C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C685C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C6860 */ _t6 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C6860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6864 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024C6864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6868 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C686C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C686C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C686C */ if (_t8) goto L_024C68A8; else goto L_024C6870;
|
|
L_024C6870: ; // 0x24c6870
|
|
/* 024C6870 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6874 */ _t9 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C6874 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C6878 */ _t10 = cpu->r[30] + 0x00006000u;
|
|
/* 024C6878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6878 */ cpu->r[30] = _t10;
|
|
/* 024C687C */ _t11 = cpu->r[12] + 0x00000268u;
|
|
/* 024C687C */ cpu->r[28] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6880 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C6884 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C6888 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C688C */ cpu->r[3] = cpu->r[28];
|
|
/* 024C6890 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C6894 */ _t12 = cpu->r[3] + 0x0000065Cu;
|
|
/* 024C6894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C6898 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C689C */ _t13 = cpu->r[31] + 0x00000501u;
|
|
/* 024C689C */ cpu->r[0] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024C68A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C68A0 */ if (_t15) goto L_024C68A4; else goto L_024C68E0;
|
|
L_024C68A4: ; // 0x24c68a4
|
|
/* 024C68A4 */ goto L_024C68DC;
|
|
L_024C68A8: ; // 0x24c68a8
|
|
/* 024C68A8 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C68AC */ _t16 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C68AC */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 024C68B0 */ _t17 = cpu->r[30] + 0x00006000u;
|
|
/* 024C68B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C68B0 */ cpu->r[30] = _t17;
|
|
/* 024C68B4 */ _t18 = cpu->r[12] + 0x00000268u;
|
|
/* 024C68B4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C68B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C68BC */ Gambit_fn_0261F774(cpu);
|
|
/* 024C68C0 */ cpu->r[4] = cpu->r[3];
|
|
/* 024C68C4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C68C8 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C68CC */ _t19 = cpu->r[3] + 0x0000065Cu;
|
|
/* 024C68CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C68D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C68D4 */ _t20 = cpu->r[31] + 0x00000501u;
|
|
/* 024C68D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024C68D8 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68D8 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C68D8 */ if (_t22) goto L_024C68DC; else goto L_024C68E0;
|
|
L_024C68DC: ; // 0x24c68dc
|
|
/* 024C68DC */ _t23 = cpu->r[31] + 0x000003D4u;
|
|
/* 024C68DC */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
L_024C68E0: ; // 0x24c68e0
|
|
/* 024C68E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C68E4 */ _t24 = cpu->r[31] + 0x00000500u;
|
|
/* 024C68E4 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 024C68E8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C68E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C68E8 */ if (_t26) goto L_024C68EC; else goto L_024C692C;
|
|
L_024C68EC: ; // 0x24c68ec
|
|
/* 024C68EC */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 024C68EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C68F0 */ _t28 = cpu->r[12] + 0x00000268u;
|
|
/* 024C68F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C68F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C68F8 */ Gambit_fn_0261F774(cpu);
|
|
/* 024C68FC */ cpu->r[4] = cpu->r[3];
|
|
/* 024C6900 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6904 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024C6908 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024C690C */ cpu->r[3] = cpu->r[31] + 0x00000078u;
|
|
/* 024C6910 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C6914 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C6918 */ _t29 = cpu->r[11] + 0x00004CA4u;
|
|
/* 024C6918 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024C691C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 024C6920 */ /* nop */
|
|
/* 024C6924 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6928 */ _t30 = cpu->r[31] + 0x00000501u;
|
|
/* 024C6928 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[11]);
|
|
L_024C692C: ; // 0x24c692c
|
|
/* 024C692C */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 024C692C */ cpu->r[28] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C6930 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6930 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C6934 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C6938 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6938 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C693C */ cpu->lr = cpu->r[0];
|
|
/* 024C6940 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6940 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C6944 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C6948 */ return;
|
|
}
|
|
|
|
// fn_024C694C @ 0x24c694c
|
|
void Gambit_fn_024C694C(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_024C694C: ; // 0x24c694c
|
|
/* 024C694C */ cpu->r[0] = cpu->lr;
|
|
/* 024C6950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6950 */ cpu->r[1] = _t0;
|
|
/* 024C6954 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6954 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6958 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6958 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C695C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6960 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6960 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6964 */ _t4 = cpu->r[30] + 0x000000A8u;
|
|
/* 024C6964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024C6968 */ _t5 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 024C696C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 024C6970 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6970 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C6970 */ if (_t7) goto L_024C6974; else goto L_024C6994;
|
|
L_024C6974: ; // 0x24c6974
|
|
/* 024C6974 */ _t8 = cpu->r[30] + 0x0000007Cu;
|
|
/* 024C6974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6978 */ _t9 = cpu->r[30] + 0x000000ACu;
|
|
/* 024C6978 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C697C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 024C6980 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6980 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C6980 */ if (_t11) goto L_024C6984; else goto L_024C6994;
|
|
L_024C6984: ; // 0x24c6984
|
|
/* 024C6984 */ _t12 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6984 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C6988 */ _t13 = cpu->r[30] + 0x000000B0u;
|
|
/* 024C6988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C698C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 024C6990 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6990 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C6990 */ if (_t15) goto L_024C69D4; else goto L_024C6994;
|
|
L_024C6994: ; // 0x24c6994
|
|
/* 024C6994 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C6998 */ _t17 = cpu->r[12] + 0x0000035Cu;
|
|
/* 024C6998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C699C */ cpu->ctr = cpu->r[0];
|
|
/* 024C69A0 */ _t18 = cpu->r[30] + 0x000001B0u;
|
|
/* 024C69A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C69A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C69A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C69AC */ _t19 = cpu->r[30] + 0x00000078u;
|
|
/* 024C69AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C69B0 */ _t20 = cpu->r[30] + 0x00000080u;
|
|
/* 024C69B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C69B4 */ cpu->f[2] = cpu->f[13] + cpu->f[1];
|
|
/* 024C69B8 */ cpu->f[3] = cpu->f[0] - cpu->f[1];
|
|
/* 024C69BC */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C69C0 */ cpu->f[4] = cpu->f[0] + cpu->f[1];
|
|
/* 024C69C4 */ _t21 = cpu->r[11] + 0x00004CA8u;
|
|
/* 024C69C4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C69C8 */ cpu->f[1] = cpu->f[13] - cpu->f[1];
|
|
/* 024C69CC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C69D0 */ Gambit_fn_02031EFC(cpu);
|
|
L_024C69D4: ; // 0x24c69d4
|
|
/* 024C69D4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024C69D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C69D8 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 024C69D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C69DC */ cpu->lr = cpu->r[0];
|
|
/* 024C69E0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C69E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C69E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C69E8 */ return;
|
|
}
|
|
|
|
// fn_024C6950 @ 0x24c6950
|
|
void Gambit_fn_024C6950(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_024C6950: ; // 0x24c6950
|
|
/* 024C6950 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6950 */ cpu->r[1] = _t0;
|
|
/* 024C6954 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6954 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6958 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6958 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C695C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6960 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6960 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6964 */ _t4 = cpu->r[30] + 0x000000A8u;
|
|
/* 024C6964 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024C6968 */ _t5 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6968 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 024C696C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[13]);
|
|
/* 024C6970 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6970 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C6970 */ if (_t7) goto L_024C6974; else goto L_024C6994;
|
|
L_024C6974: ; // 0x24c6974
|
|
/* 024C6974 */ _t8 = cpu->r[30] + 0x0000007Cu;
|
|
/* 024C6974 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6978 */ _t9 = cpu->r[30] + 0x000000ACu;
|
|
/* 024C6978 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C697C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[12]);
|
|
/* 024C6980 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6980 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C6980 */ if (_t11) goto L_024C6984; else goto L_024C6994;
|
|
L_024C6984: ; // 0x24c6984
|
|
/* 024C6984 */ _t12 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6984 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C6988 */ _t13 = cpu->r[30] + 0x000000B0u;
|
|
/* 024C6988 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C698C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 024C6990 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6990 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C6990 */ if (_t15) goto L_024C69D4; else goto L_024C6994;
|
|
L_024C6994: ; // 0x24c6994
|
|
/* 024C6994 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6994 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C6998 */ _t17 = cpu->r[12] + 0x0000035Cu;
|
|
/* 024C6998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C699C */ cpu->ctr = cpu->r[0];
|
|
/* 024C69A0 */ _t18 = cpu->r[30] + 0x000001B0u;
|
|
/* 024C69A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C69A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C69A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C69AC */ _t19 = cpu->r[30] + 0x00000078u;
|
|
/* 024C69AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C69B0 */ _t20 = cpu->r[30] + 0x00000080u;
|
|
/* 024C69B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C69B4 */ cpu->f[2] = cpu->f[13] + cpu->f[1];
|
|
/* 024C69B8 */ cpu->f[3] = cpu->f[0] - cpu->f[1];
|
|
/* 024C69BC */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C69C0 */ cpu->f[4] = cpu->f[0] + cpu->f[1];
|
|
/* 024C69C4 */ _t21 = cpu->r[11] + 0x00004CA8u;
|
|
/* 024C69C4 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C69C8 */ cpu->f[1] = cpu->f[13] - cpu->f[1];
|
|
/* 024C69CC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C69D0 */ Gambit_fn_02031EFC(cpu);
|
|
L_024C69D4: ; // 0x24c69d4
|
|
/* 024C69D4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024C69D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C69D8 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 024C69D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C69DC */ cpu->lr = cpu->r[0];
|
|
/* 024C69E0 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C69E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C69E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C69E8 */ return;
|
|
}
|
|
|
|
// fn_024C69EC @ 0x24c69ec
|
|
void Gambit_fn_024C69EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C69EC: ; // 0x24c69ec
|
|
/* 024C69EC */ cpu->r[0] = cpu->lr;
|
|
/* 024C69F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C69F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C69F0 */ cpu->r[1] = _t0;
|
|
/* 024C69F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C69F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C69F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C69FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C69FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6A00 */ Gambit_fn_024C6840(cpu);
|
|
/* 024C6A04 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A08 */ Gambit_fn_024F7158(cpu);
|
|
/* 024C6A0C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A10 */ Gambit_fn_024C694C(cpu);
|
|
/* 024C6A14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6A18 */ cpu->lr = cpu->r[0];
|
|
/* 024C6A1C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6A24 */ return;
|
|
}
|
|
|
|
// fn_024C69F0 @ 0x24c69f0
|
|
void Gambit_fn_024C69F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C69F0: ; // 0x24c69f0
|
|
/* 024C69F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C69F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C69F0 */ cpu->r[1] = _t0;
|
|
/* 024C69F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C69F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C69F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C69FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C69FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6A00 */ Gambit_fn_024C6840(cpu);
|
|
/* 024C6A04 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A08 */ Gambit_fn_024F7158(cpu);
|
|
/* 024C6A0C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A10 */ Gambit_fn_024C694C(cpu);
|
|
/* 024C6A14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6A18 */ cpu->lr = cpu->r[0];
|
|
/* 024C6A1C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6A24 */ return;
|
|
}
|
|
|
|
// fn_024C6A28 @ 0x24c6a28
|
|
void Gambit_fn_024C6A28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C6A28: ; // 0x24c6a28
|
|
/* 024C6A28 */ cpu->r[0] = cpu->lr;
|
|
/* 024C6A2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A2C */ cpu->r[1] = _t0;
|
|
/* 024C6A30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6A34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6A38 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6A3C */ _t4 = cpu->r[12] + 0x00000384u;
|
|
/* 024C6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A40 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A44 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6A50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6A50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C6A50 */ if (_t6) goto L_024C6A5C; else goto L_024C6A54;
|
|
L_024C6A54: ; // 0x24c6a54
|
|
/* 024C6A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A58 */ Gambit_fn_024F606C(cpu);
|
|
L_024C6A5C: ; // 0x24c6a5c
|
|
/* 024C6A5C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A60 */ Gambit_fn_024F607C(cpu);
|
|
/* 024C6A64 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C6A68 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6A6C */ cpu->lr = cpu->r[0];
|
|
/* 024C6A70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6A74 */ return;
|
|
}
|
|
|
|
// fn_024C6A2C @ 0x24c6a2c
|
|
void Gambit_fn_024C6A2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C6A2C: ; // 0x24c6a2c
|
|
/* 024C6A2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A2C */ cpu->r[1] = _t0;
|
|
/* 024C6A30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6A34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6A38 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6A3C */ _t4 = cpu->r[12] + 0x00000384u;
|
|
/* 024C6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A40 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A44 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6A50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6A50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C6A50 */ if (_t6) goto L_024C6A5C; else goto L_024C6A54;
|
|
L_024C6A54: ; // 0x24c6a54
|
|
/* 024C6A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A58 */ Gambit_fn_024F606C(cpu);
|
|
L_024C6A5C: ; // 0x24c6a5c
|
|
/* 024C6A5C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A60 */ Gambit_fn_024F607C(cpu);
|
|
/* 024C6A64 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C6A68 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6A6C */ cpu->lr = cpu->r[0];
|
|
/* 024C6A70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6A74 */ return;
|
|
}
|
|
|
|
// fn_024C6A78 @ 0x24c6a78
|
|
void Gambit_fn_024C6A78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024C6A28: ; // 0x24c6a28
|
|
/* 024C6A28 */ cpu->r[0] = cpu->lr;
|
|
/* 024C6A2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A2C */ cpu->r[1] = _t0;
|
|
/* 024C6A30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6A34 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A34 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6A38 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6A3C */ _t4 = cpu->r[12] + 0x00000384u;
|
|
/* 024C6A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A40 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A44 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6A50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6A50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C6A50 */ if (_t6) goto L_024C6A5C; else goto L_024C6A54;
|
|
L_024C6A54: ; // 0x24c6a54
|
|
/* 024C6A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A58 */ Gambit_fn_024F606C(cpu);
|
|
L_024C6A5C: ; // 0x24c6a5c
|
|
/* 024C6A5C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6A60 */ Gambit_fn_024F607C(cpu);
|
|
/* 024C6A64 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C6A68 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6A6C */ cpu->lr = cpu->r[0];
|
|
/* 024C6A70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6A74 */ return;
|
|
L_024C6A78: ; // 0x24c6a78
|
|
/* 024C6A78 */ goto L_024C6A28;
|
|
}
|
|
|
|
// fn_024C6A7C @ 0x24c6a7c
|
|
void Gambit_fn_024C6A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C6A7C: ; // 0x24c6a7c
|
|
/* 024C6A7C */ cpu->r[0] = cpu->lr;
|
|
/* 024C6A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A80 */ cpu->r[1] = _t0;
|
|
/* 024C6A84 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6A88 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A88 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C6A8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6A90 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A94 */ _t5 = cpu->r[12] + 0x0000035Cu;
|
|
/* 024C6A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6A98 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A9C */ _t6 = cpu->r[3] + 0x000001B4u;
|
|
/* 024C6A9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6AA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6AA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6AA8 */ _t7 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6AA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6AAC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6AB0 */ _t8 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6AB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6AB4 */ cpu->f[2] = cpu->f[0] + cpu->f[1];
|
|
/* 024C6AB8 */ _t9 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6ABC */ cpu->f[3] = cpu->f[13] - cpu->f[1];
|
|
/* 024C6AC0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 024C6AC4 */ cpu->f[4] = cpu->f[13] + cpu->f[1];
|
|
/* 024C6AC8 */ _t10 = cpu->r[3] + 0x00005444u;
|
|
/* 024C6AC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6ACC */ cpu->f[1] = cpu->f[0] - cpu->f[1];
|
|
/* 024C6AD0 */ _t11 = cpu->r[4] + 0x00006648u;
|
|
/* 024C6AD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6AD4 */ cpu->r[6] = cpu->r[31];
|
|
/* 024C6AD8 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6ADC */ Gambit_fn_02031B20(cpu);
|
|
/* 024C6AE0 */ _t12 = cpu->r[30] + 0x000001B0u;
|
|
/* 024C6AE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 024C6AE4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6AE8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6AE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6AEC */ cpu->lr = cpu->r[0];
|
|
/* 024C6AF0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6AF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6AF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6AF8 */ return;
|
|
}
|
|
|
|
// fn_024C6A80 @ 0x24c6a80
|
|
void Gambit_fn_024C6A80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C6A80: ; // 0x24c6a80
|
|
/* 024C6A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A80 */ cpu->r[1] = _t0;
|
|
/* 024C6A84 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6A88 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A88 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C6A8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6A90 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A94 */ _t5 = cpu->r[12] + 0x0000035Cu;
|
|
/* 024C6A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6A98 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A9C */ _t6 = cpu->r[3] + 0x000001B4u;
|
|
/* 024C6A9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6AA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6AA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6AA8 */ _t7 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6AA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6AAC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6AB0 */ _t8 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6AB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6AB4 */ cpu->f[2] = cpu->f[0] + cpu->f[1];
|
|
/* 024C6AB8 */ _t9 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6ABC */ cpu->f[3] = cpu->f[13] - cpu->f[1];
|
|
/* 024C6AC0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 024C6AC4 */ cpu->f[4] = cpu->f[13] + cpu->f[1];
|
|
/* 024C6AC8 */ _t10 = cpu->r[3] + 0x00005444u;
|
|
/* 024C6AC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6ACC */ cpu->f[1] = cpu->f[0] - cpu->f[1];
|
|
/* 024C6AD0 */ _t11 = cpu->r[4] + 0x00006648u;
|
|
/* 024C6AD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6AD4 */ cpu->r[6] = cpu->r[31];
|
|
/* 024C6AD8 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6ADC */ Gambit_fn_02031B20(cpu);
|
|
/* 024C6AE0 */ _t12 = cpu->r[30] + 0x000001B0u;
|
|
/* 024C6AE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 024C6AE4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6AE8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6AE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6AEC */ cpu->lr = cpu->r[0];
|
|
/* 024C6AF0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6AF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6AF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6AF8 */ return;
|
|
}
|
|
|
|
// fn_024C6AFC @ 0x24c6afc
|
|
void Gambit_fn_024C6AFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024C6AFC: ; // 0x24c6afc
|
|
/* 024C6AFC */ cpu->r[0] = cpu->lr;
|
|
/* 024C6B00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6B00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6B00 */ cpu->r[1] = _t0;
|
|
/* 024C6B04 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6B08 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6B0C */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6B10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B10 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6B14 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6B14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6B18 */ cpu->r[4] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B1C */ Gambit_fn_02031BD0(cpu);
|
|
/* 024C6B20 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C6B24 */ _t4 = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C6B28 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6B2C */ cpu->lr = cpu->r[0];
|
|
/* 024C6B30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6B38 */ return;
|
|
}
|
|
|
|
// fn_024C6B00 @ 0x24c6b00
|
|
void Gambit_fn_024C6B00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024C6B00: ; // 0x24c6b00
|
|
/* 024C6B00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6B00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6B00 */ cpu->r[1] = _t0;
|
|
/* 024C6B04 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6B08 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6B0C */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6B10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B10 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6B14 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6B14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6B18 */ cpu->r[4] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B1C */ Gambit_fn_02031BD0(cpu);
|
|
/* 024C6B20 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C6B24 */ _t4 = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C6B28 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6B2C */ cpu->lr = cpu->r[0];
|
|
/* 024C6B30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6B38 */ return;
|
|
}
|
|
|
|
// fn_024C6B3C @ 0x24c6b3c
|
|
void Gambit_fn_024C6B3C(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_024C6B3C: ; // 0x24c6b3c
|
|
/* 024C6B3C */ cpu->r[0] = cpu->lr;
|
|
/* 024C6B40 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C6B40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6B40 */ cpu->r[1] = _t0;
|
|
/* 024C6B44 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C6B44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6B48 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6B48 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C6B4C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6B50 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 024C6B54 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C6B58 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6B58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6B5C */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C6B60 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 024C6B60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6B64 */ _t5 = cpu->r[12] + 0x00000364u;
|
|
/* 024C6B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6B68 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6B6C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6B70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6B74 */ /* nop */
|
|
/* 024C6B78 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 024C6B78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C6B7C */ _t7 = cpu->r[31] + 0x00000068u;
|
|
/* 024C6B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6B80 */ /* nop */
|
|
/* 024C6B84 */ /* nop */
|
|
/* 024C6B88 */ /* nop */
|
|
/* 024C6B8C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6B8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6B90 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6B94 */ cpu->f[11] = cpu->f[12] * cpu->f[1];
|
|
/* 024C6B98 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024C6B9C */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 024C6B9C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 024C6BA0 */ /* nop */
|
|
/* 024C6BA4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6BA4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 024C6BA8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6BA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6BAC */ /* nop */
|
|
/* 024C6BB0 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 024C6BB0 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 024C6BB4 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 024C6BB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C6BB8 */ /* nop */
|
|
/* 024C6BBC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C6BC0 */ cpu->f[13] = cpu->f[0] + cpu->f[13];
|
|
/* 024C6BC4 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 024C6BC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C6BC8 */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 024C6BC8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024C6BCC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6BCC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 024C6BD0 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C6BD4 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6BD4 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 024C6BD8 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 024C6BD8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 024C6BDC */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6BDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C6BE0 */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6BE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C6BE4 */ cpu->lr = cpu->r[0];
|
|
/* 024C6BE8 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C6BE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C6BEC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C6BF0 */ return;
|
|
}
|
|
|
|
// fn_024C6B40 @ 0x24c6b40
|
|
void Gambit_fn_024C6B40(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_024C6B40: ; // 0x24c6b40
|
|
/* 024C6B40 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C6B40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6B40 */ cpu->r[1] = _t0;
|
|
/* 024C6B44 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C6B44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6B48 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6B48 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C6B4C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6B50 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 024C6B54 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C6B58 */ _t3 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6B58 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6B5C */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C6B60 */ _t4 = cpu->r[31] + 0x00000004u;
|
|
/* 024C6B60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6B64 */ _t5 = cpu->r[12] + 0x00000364u;
|
|
/* 024C6B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6B68 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6B6C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6B70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6B74 */ /* nop */
|
|
/* 024C6B78 */ _t6 = cpu->r[1] + 0x00000028u;
|
|
/* 024C6B78 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C6B7C */ _t7 = cpu->r[31] + 0x00000068u;
|
|
/* 024C6B7C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6B80 */ /* nop */
|
|
/* 024C6B84 */ /* nop */
|
|
/* 024C6B88 */ /* nop */
|
|
/* 024C6B8C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6B8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C6B90 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6B94 */ cpu->f[11] = cpu->f[12] * cpu->f[1];
|
|
/* 024C6B98 */ _t10 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024C6B9C */ _t11 = cpu->r[1] + 0x00000030u;
|
|
/* 024C6B9C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 024C6BA0 */ /* nop */
|
|
/* 024C6BA4 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6BA4 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[11]);
|
|
/* 024C6BA8 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6BA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6BAC */ /* nop */
|
|
/* 024C6BB0 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 024C6BB0 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]);
|
|
/* 024C6BB4 */ _t15 = cpu->r[1] + 0x00000034u;
|
|
/* 024C6BB4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C6BB8 */ /* nop */
|
|
/* 024C6BBC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6BBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C6BC0 */ cpu->f[13] = cpu->f[0] + cpu->f[13];
|
|
/* 024C6BC4 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 024C6BC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C6BC8 */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 024C6BC8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024C6BCC */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6BCC */ rbrew_write_f32(cpu->mem, _t19, cpu->f[13]);
|
|
/* 024C6BD0 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C6BD4 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6BD4 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]);
|
|
/* 024C6BD8 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 024C6BD8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 024C6BDC */ _t23 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6BDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C6BE0 */ _t24 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6BE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C6BE4 */ cpu->lr = cpu->r[0];
|
|
/* 024C6BE8 */ _t25 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C6BE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C6BEC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C6BF0 */ return;
|
|
}
|
|
|
|
// fn_024C6BF4 @ 0x24c6bf4
|
|
void Gambit_fn_024C6BF4(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;
|
|
|
|
L_024C6BF4: ; // 0x24c6bf4
|
|
/* 024C6BF4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 024C6BF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6BF4 */ cpu->r[1] = _t0;
|
|
/* 024C6BF8 */ /* nop */
|
|
/* 024C6BFC */ cpu->r[0] = cpu->lr;
|
|
/* 024C6C00 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 024C6C00 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024C6C04 */ /* nop */
|
|
/* 024C6C08 */ _t2 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6C08 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6C0C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6C10 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6C10 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024C6C14 */ cpu->r[29] = cpu->r[4];
|
|
/* 024C6C18 */ cpu->r[4] = cpu->r[30];
|
|
/* 024C6C1C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C6C20 */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C6C24 */ _t4 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6C24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6C28 */ _t5 = cpu->r[10] + 0x0000035Cu;
|
|
/* 024C6C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6C2C */ cpu->ctr = cpu->r[0];
|
|
/* 024C6C30 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6C34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6C38 */ cpu->f[31] = cpu->f[1];
|
|
/* 024C6C3C */ cpu->r[4] = cpu->r[29] + 0x00000244u;
|
|
/* 024C6C40 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C6C44 */ Gambit_fn_02C69328(cpu);
|
|
/* 024C6C48 */ cpu->f[0] = cpu->f[31] * cpu->f[31];
|
|
/* 024C6C4C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 024C6C50 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6C50 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C6C50 */ if (_t7) goto L_024C6C54; else goto L_024C6C5C;
|
|
L_024C6C54: ; // 0x24c6c54
|
|
/* 024C6C54 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C6C58 */ _t8 = cpu->r[30] + 0x00000500u;
|
|
/* 024C6C58 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[9]);
|
|
L_024C6C5C: ; // 0x24c6c5c
|
|
/* 024C6C5C */ cpu->r[26] = 0x101D0000u;
|
|
/* 024C6C60 */ cpu->r[28] = 0x101D0000u;
|
|
/* 024C6C64 */ _t9 = cpu->r[26] + 0x000006C0u;
|
|
/* 024C6C64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6C64 */ cpu->r[26] = _t9;
|
|
/* 024C6C68 */ cpu->r[27] = 0x100B0000u;
|
|
/* 024C6C6C */ _t10 = cpu->r[28] + 0xFFFF85A8u;
|
|
/* 024C6C6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6C6C */ cpu->r[28] = _t10;
|
|
/* 024C6C70 */ cpu->r[25] = 0x101D0000u;
|
|
/* 024C6C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C6C78 */ cpu->r[27] = cpu->r[27] + 0x00004C78u;
|
|
/* 024C6C7C */ _t11 = cpu->r[6] + 0x000002A4u;
|
|
/* 024C6C7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6C80 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6C80 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C6C80 */ if (_t13) goto L_024C6C84; else goto L_024C6C90;
|
|
L_024C6C84: ; // 0x24c6c84
|
|
/* 024C6C84 */ _t14 = cpu->r[25] + 0x000006BCu;
|
|
/* 024C6C84 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 024C6C88 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C6C8C */ _t15 = cpu->r[26] + 0x00000000u;
|
|
/* 024C6C8C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
L_024C6C90: ; // 0x24c6c90
|
|
/* 024C6C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C6C94 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6C94 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C6C94 */ if (_t17) goto L_024C6CB8; else goto L_024C6C98;
|
|
L_024C6C98: ; // 0x24c6c98
|
|
/* 024C6C98 */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 024C6C98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C6C9C */ _t19 = cpu->r[12] + 0x00000014u;
|
|
/* 024C6C9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C6CA0 */ cpu->ctr = cpu->r[9];
|
|
/* 024C6CA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6CA8 */ cpu->r[4] = cpu->r[25] + 0x000006BCu;
|
|
/* 024C6CAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6CB4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6CB4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C6CB4 */ if (_t21) goto L_024C6CB8; else goto L_024C6CBC;
|
|
L_024C6CB8: ; // 0x24c6cb8
|
|
/* 024C6CB8 */ cpu->r[31] = 0x00000000u;
|
|
L_024C6CBC: ; // 0x24c6cbc
|
|
/* 024C6CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6CC0 */ Gambit_fn_026CC7D8(cpu);
|
|
/* 024C6CC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6CC8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6CC8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C6CC8 */ if (_t23) goto L_024C6CCC; else goto L_024C6DA4;
|
|
L_024C6CCC: ; // 0x24c6ccc
|
|
/* 024C6CCC */ _t24 = cpu->r[26] + 0x00000000u;
|
|
/* 024C6CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C6CD0 */ _t25 = cpu->r[28] + 0x00000000u;
|
|
/* 024C6CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C6CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6CD8 */ _t26 = cpu->r[11] + 0x000002A4u;
|
|
/* 024C6CD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C6CDC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6CDC */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C6CDC */ if (_t28) goto L_024C6CE0; else goto L_024C6CEC;
|
|
L_024C6CE0: ; // 0x24c6ce0
|
|
/* 024C6CE0 */ _t29 = cpu->r[25] + 0x000006BCu;
|
|
/* 024C6CE0 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]);
|
|
/* 024C6CE4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C6CE8 */ _t30 = cpu->r[26] + 0x00000000u;
|
|
/* 024C6CE8 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_024C6CEC: ; // 0x24c6cec
|
|
/* 024C6CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C6CF0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6CF0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024C6CF0 */ if (_t32) goto L_024C6D14; else goto L_024C6CF4;
|
|
L_024C6CF4: ; // 0x24c6cf4
|
|
/* 024C6CF4 */ _t33 = cpu->r[31] + 0x00000004u;
|
|
/* 024C6CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C6CF8 */ _t34 = cpu->r[12] + 0x00000014u;
|
|
/* 024C6CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C6CFC */ cpu->ctr = cpu->r[0];
|
|
/* 024C6D00 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6D04 */ cpu->r[4] = cpu->r[25] + 0x000006BCu;
|
|
/* 024C6D08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6D10 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D10 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024C6D10 */ if (_t36) goto L_024C6D14; else goto L_024C6D18;
|
|
L_024C6D14: ; // 0x24c6d14
|
|
/* 024C6D14 */ cpu->r[31] = 0x00000000u;
|
|
L_024C6D18: ; // 0x24c6d18
|
|
/* 024C6D18 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C6D1C */ Gambit_fn_026CC84C(cpu);
|
|
/* 024C6D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6D24 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D24 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024C6D24 */ if (_t38) goto L_024C6D28; else goto L_024C6DA4;
|
|
L_024C6D28: ; // 0x24c6d28
|
|
/* 024C6D28 */ _t39 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6D28 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024C6D2C */ _t40 = cpu->r[7] + 0x00000354u;
|
|
/* 024C6D2C */ cpu->r[8] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C6D30 */ cpu->ctr = cpu->r[8];
|
|
/* 024C6D34 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6D40 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D40 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024C6D40 */ if (_t42) goto L_024C6DA4; else goto L_024C6D44;
|
|
L_024C6D44: ; // 0x24c6d44
|
|
/* 024C6D44 */ _t43 = cpu->r[30] + 0x000003D1u;
|
|
/* 024C6D44 */ cpu->r[9] = rbrew_read8(cpu->mem, _t43);
|
|
/* 024C6D48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C6D4C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D4C */ _t45 = _t44 & 0x00000001u;
|
|
/* 024C6D4C */ if (_t45) goto L_024C6D50; else goto L_024C6DA4;
|
|
L_024C6D50: ; // 0x24c6d50
|
|
/* 024C6D50 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6D54 */ Gambit_fn_025C7118(cpu);
|
|
/* 024C6D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6D5C */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D5C */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C6D5C */ if (_t47) goto L_024C6DA4; else goto L_024C6D60;
|
|
L_024C6D60: ; // 0x24c6d60
|
|
/* 024C6D60 */ _t48 = cpu->r[30] + 0x00000500u;
|
|
/* 024C6D60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024C6D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6D68 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6D68 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C6D68 */ if (_t50) goto L_024C6DA4; else goto L_024C6D6C;
|
|
L_024C6D6C: ; // 0x24c6d6c
|
|
/* 024C6D6C */ cpu->r[6] = 0x00000001u;
|
|
/* 024C6D70 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C6D74 */ cpu->r[4] = cpu->r[30];
|
|
/* 024C6D78 */ _t51 = cpu->r[30] + 0x000003D1u;
|
|
/* 024C6D78 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[6]);
|
|
/* 024C6D7C */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C6D80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C6D84 */ cpu->r[5] = cpu->r[30] + 0x0000006Cu;
|
|
/* 024C6D88 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6D8C */ Gambit_fn_025C71C8(cpu);
|
|
/* 024C6D90 */ _t52 = cpu->r[30] + 0x00000004u;
|
|
/* 024C6D90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C6D94 */ _t53 = cpu->r[7] + 0x0000037Cu;
|
|
/* 024C6D94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C6D98 */ cpu->ctr = cpu->r[8];
|
|
/* 024C6D9C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6DA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024C6DA4: ; // 0x24c6da4
|
|
/* 024C6DA4 */ /* nop */
|
|
/* 024C6DA8 */ _t54 = cpu->r[1] + 0x00000038u;
|
|
/* 024C6DA8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 024C6DAC */ _t55 = cpu->r[1] + 0x00000030u;
|
|
/* 024C6DAC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 024C6DB0 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6DB0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C6DB0 */ if (_t57) goto L_024C6DB4; // else: addr-0 trap, fall-through
|
|
L_024C6DB4: ; // 0x24c6db4
|
|
/* 024C6DB4 */ _t58 = cpu->r[1] + 0x00000044u;
|
|
/* 024C6DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C6DB8 */ cpu->lr = cpu->r[0];
|
|
/* 024C6DBC */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 024C6DC0 */ return;
|
|
}
|
|
|
|
// fn_024C6DC4 @ 0x24c6dc4
|
|
void Gambit_fn_024C6DC4(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_02059050: ; // 0x2059050
|
|
/* 02059050 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02059050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02059050 */ cpu->r[1] = _t0;
|
|
/* 02059054 */ /* nop */
|
|
/* 02059058 */ cpu->r[0] = cpu->lr;
|
|
/* 0205905C */ cpu->r[23] = cpu->r[3];
|
|
/* 02059060 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02059060 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02059064 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02059068 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0205906C */ _t2 = cpu->r[7] + 0xFFFFAE14u;
|
|
/* 0205906C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0205906C */ cpu->r[7] = _t2;
|
|
/* 02059070 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02059074 */ cpu->r[22] = cpu->r[3];
|
|
/* 02059078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205907C */ cpu->r[31] = cpu->r[31] + 0xFFFFADA4u;
|
|
/* 02059080 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02059080 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02059080 */ if (_t4) goto L_02059084; else goto L_020590CC;
|
|
L_02059084: ; // 0x2059084
|
|
/* 02059084 */ cpu->r[12] = 0x00000001u;
|
|
/* 02059088 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0205908C */ cpu->r[4] = 0x10000000u;
|
|
/* 02059090 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02059090 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02059094 */ cpu->r[3] = cpu->r[31];
|
|
/* 02059098 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205909C */ cpu->r[4] = cpu->r[4] + 0x00006444u;
|
|
/* 020590A0 */ cpu->r[7] = 0x00000000u;
|
|
/* 020590A4 */ Gambit_fn_028A6750(cpu);
|
|
/* 020590A8 */ cpu->r[6] = 0x02060000u;
|
|
/* 020590AC */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 020590B0 */ cpu->r[4] = 0x00000002u;
|
|
/* 020590B4 */ cpu->r[6] = cpu->r[6] + 0xFFFF925Cu;
|
|
/* 020590B8 */ cpu->r[5] = 0x00000008u;
|
|
/* 020590BC */ Gambit_fn_02C82E00(cpu);
|
|
/* 020590C0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020590C4 */ cpu->r[3] = cpu->r[3] + 0x000026C0u;
|
|
/* 020590C8 */ Gambit_fn_02C83090(cpu);
|
|
L_020590CC: ; // 0x20590cc
|
|
/* 020590CC */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 020590CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020590D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020590D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020590D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 020590D4 */ if (_t8) goto L_020590D8; else goto L_020591CC;
|
|
L_020590D8: ; // 0x20590d8
|
|
/* 020590D8 */ cpu->r[26] = 0x101D0000u;
|
|
/* 020590DC */ cpu->r[30] = 0x00000000u;
|
|
/* 020590E0 */ cpu->r[19] = 0x101D0000u;
|
|
/* 020590E4 */ cpu->r[20] = 0x101D0000u;
|
|
/* 020590E8 */ cpu->r[21] = 0x00000001u;
|
|
/* 020590EC */ cpu->r[27] = cpu->r[30];
|
|
/* 020590F0 */ cpu->r[25] = 0x101D0000u;
|
|
/* 020590F4 */ cpu->r[26] = cpu->r[26] + 0xFFFFE6C0u;
|
|
/* 020590F8 */ cpu->r[24] = 0x101D0000u;
|
|
L_020590FC: ; // 0x20590fc
|
|
/* 020590FC */ _t9 = cpu->r[24] + 0xFFFFE6D0u;
|
|
/* 020590FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02059100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02059104 */ cpu->r[29] = cpu->r[30];
|
|
/* 02059108 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02059108 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02059108 */ if (_t11) goto L_0205910C; else goto L_02059124;
|
|
L_0205910C: ; // 0x205910c
|
|
/* 0205910C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02059110 */ cpu->r[3] = cpu->r[25] + 0x00003435u;
|
|
/* 02059114 */ cpu->r[5] = 0x00000016u;
|
|
/* 02059118 */ cpu->r[4] = cpu->r[4] + 0x000026A8u;
|
|
/* 0205911C */ _t12 = cpu->r[24] + 0xFFFFE6D0u;
|
|
/* 0205911C */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02059120 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02059124: ; // 0x2059124
|
|
/* 02059124 */ _t13 = cpu->r[20] + 0xFFFFE6CCu;
|
|
/* 02059124 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02059128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0205912C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205912C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0205912C */ if (_t15) goto L_02059130; else goto L_02059138;
|
|
L_02059130: ; // 0x2059130
|
|
/* 02059130 */ _t16 = cpu->r[19] + 0xFFFFE6C8u;
|
|
/* 02059130 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02059134 */ _t17 = cpu->r[20] + 0xFFFFE6CCu;
|
|
/* 02059134 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02059138: ; // 0x2059138
|
|
/* 02059138 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 0205913C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205913C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0205913C */ if (_t19) goto L_02059164; else goto L_02059140;
|
|
L_02059140: ; // 0x2059140
|
|
/* 02059140 */ cpu->r[4] = cpu->r[30];
|
|
/* 02059144 */ cpu->r[3] = cpu->r[31];
|
|
/* 02059148 */ cpu->r[5] = 0x00000000u;
|
|
/* 0205914C */ Gambit_fn_028A6634(cpu);
|
|
/* 02059150 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02059154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02059158 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02059158 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02059158 */ if (_t21) goto L_020591CC; else goto L_0205915C;
|
|
L_0205915C: ; // 0x205915c
|
|
/* 0205915C */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0205915C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0205915C */ if (_t23) goto L_020590FC; else goto L_02059160;
|
|
L_02059160: ; // 0x2059160
|
|
/* 02059160 */ goto L_020591CC;
|
|
L_02059164: ; // 0x2059164
|
|
/* 02059164 */ _t24 = cpu->r[19] + 0xFFFFE6C8u;
|
|
/* 02059164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02059168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0205916C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0205916C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0205916C */ if (_t26) goto L_02059170; else goto L_020591A8;
|
|
L_02059170: ; // 0x2059170
|
|
/* 02059170 */ Gambit_fn_0282A450(cpu);
|
|
/* 02059174 */ cpu->r[28] = cpu->r[3];
|
|
/* 02059178 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0205917C */ _t27 = cpu->r[19] + 0xFFFFE6C8u;
|
|
/* 0205917C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02059180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02059184 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02059184 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02059184 */ if (_t29) goto L_02059188; else goto L_0205919C;
|
|
L_02059188: ; // 0x2059188
|
|
/* 02059188 */ cpu->r[5] = 0x00000002u;
|
|
/* 0205918C */ cpu->r[4] = cpu->r[25] + 0x00003435u;
|
|
/* 02059190 */ cpu->r[3] = cpu->r[26];
|
|
/* 02059194 */ Gambit_fn_0282A374(cpu);
|
|
/* 02059198 */ _t30 = cpu->r[19] + 0xFFFFE6C8u;
|
|
/* 02059198 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_0205919C: ; // 0x205919c
|
|
/* 0205919C */ cpu->r[3] = cpu->r[28];
|
|
/* 020591A0 */ Gambit_fn_02837030(cpu);
|
|
/* 020591A4 */ _t31 = cpu->r[19] + 0xFFFFE6C8u;
|
|
/* 020591A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_020591A8: ; // 0x20591a8
|
|
/* 020591A8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 020591AC */ cpu->r[3] = cpu->r[31];
|
|
/* 020591B0 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 020591B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 020591B4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020591B8 */ Gambit_fn_028A6634(cpu);
|
|
/* 020591BC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020591C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 020591C4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020591C4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 020591C4 */ if (_t34) goto L_020591CC; else goto L_020591C8;
|
|
L_020591C8: ; // 0x20591c8
|
|
/* 020591C8 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020591C8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 020591C8 */ if (_t36) goto L_020590FC; else goto L_020591CC;
|
|
L_020591CC: ; // 0x20591cc
|
|
/* 020591CC */ cpu->r[3] = cpu->r[23];
|
|
/* 020591D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 020591D4 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020591D8 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 020591DC */ /* nop */
|
|
/* 020591E0 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 020591E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020591E4 */ cpu->lr = cpu->r[0];
|
|
/* 020591E8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 020591EC */ return;
|
|
L_024C6DC4: ; // 0x24c6dc4
|
|
/* 024C6DC4 */ _t38 = cpu->r[3] + 0x00000030u;
|
|
/* 024C6DC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C6DC8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024C6DCC */ goto L_02059050;
|
|
}
|
|
|
|
// fn_024C6DD0 @ 0x24c6dd0
|
|
void Gambit_fn_024C6DD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C6DD0: ; // 0x24c6dd0
|
|
/* 024C6DD0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C6DD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6DD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6DD4 */ cpu->r[1] = _t0;
|
|
/* 024C6DD8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6DD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6DDC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6DDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C6DE0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6DE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6DE4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6DE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6DE8 */ _t5 = cpu->r[12] + 0x0000036Cu;
|
|
/* 024C6DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6DEC */ cpu->ctr = cpu->r[0];
|
|
/* 024C6DF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6DF4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C6DF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6DFC */ _t6 = cpu->r[31] + 0x0000024Cu;
|
|
/* 024C6DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C6E00 */ cpu->f[8] = cpu->f[1] * cpu->f[1];
|
|
/* 024C6E04 */ _t7 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6E04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6E08 */ _t8 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6E08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6E0C */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 024C6E10 */ _t9 = cpu->r[31] + 0x00000244u;
|
|
/* 024C6E10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C6E14 */ cpu->f[9] = cpu->f[11] - cpu->f[12];
|
|
/* 024C6E18 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 024C6E1C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 024C6E20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[8]);
|
|
/* 024C6E24 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6E24 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C6E24 */ if (_t11) goto L_024C6E30; else goto L_024C6E28;
|
|
L_024C6E28: ; // 0x24c6e28
|
|
/* 024C6E28 */ cpu->r[0] = 0x00000012u;
|
|
/* 024C6E2C */ _t12 = cpu->r[30] + 0x000003D4u;
|
|
/* 024C6E2C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_024C6E30: ; // 0x24c6e30
|
|
/* 024C6E30 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6E30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6E34 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6E34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6E38 */ cpu->lr = cpu->r[0];
|
|
/* 024C6E3C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6E3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6E40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6E44 */ return;
|
|
}
|
|
|
|
// fn_024C6DD4 @ 0x24c6dd4
|
|
void Gambit_fn_024C6DD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C6DD4: ; // 0x24c6dd4
|
|
/* 024C6DD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6DD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6DD4 */ cpu->r[1] = _t0;
|
|
/* 024C6DD8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6DD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6DDC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6DDC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C6DE0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6DE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6DE4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6DE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6DE8 */ _t5 = cpu->r[12] + 0x0000036Cu;
|
|
/* 024C6DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6DEC */ cpu->ctr = cpu->r[0];
|
|
/* 024C6DF0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6DF4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024C6DF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6DFC */ _t6 = cpu->r[31] + 0x0000024Cu;
|
|
/* 024C6DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C6E00 */ cpu->f[8] = cpu->f[1] * cpu->f[1];
|
|
/* 024C6E04 */ _t7 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6E04 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6E08 */ _t8 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6E08 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6E0C */ cpu->f[10] = cpu->f[13] - cpu->f[0];
|
|
/* 024C6E10 */ _t9 = cpu->r[31] + 0x00000244u;
|
|
/* 024C6E10 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C6E14 */ cpu->f[9] = cpu->f[11] - cpu->f[12];
|
|
/* 024C6E18 */ cpu->f[13] = cpu->f[10] * cpu->f[10];
|
|
/* 024C6E1C */ cpu->f[0] = fma(cpu->f[9], cpu->f[9], cpu->f[13]);
|
|
/* 024C6E20 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[8]);
|
|
/* 024C6E24 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6E24 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C6E24 */ if (_t11) goto L_024C6E30; else goto L_024C6E28;
|
|
L_024C6E28: ; // 0x24c6e28
|
|
/* 024C6E28 */ cpu->r[0] = 0x00000012u;
|
|
/* 024C6E2C */ _t12 = cpu->r[30] + 0x000003D4u;
|
|
/* 024C6E2C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_024C6E30: ; // 0x24c6e30
|
|
/* 024C6E30 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6E30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6E34 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6E34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6E38 */ cpu->lr = cpu->r[0];
|
|
/* 024C6E3C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6E3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6E40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6E44 */ return;
|
|
}
|
|
|
|
// fn_024C6E48 @ 0x24c6e48
|
|
void Gambit_fn_024C6E48(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C6E48: ; // 0x24c6e48
|
|
/* 024C6E48 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C6E4C */ _t0 = cpu->r[3] + 0x000003D4u;
|
|
/* 024C6E4C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C6E50 */ return;
|
|
}
|
|
|
|
// fn_024C6E54 @ 0x24c6e54
|
|
void Gambit_fn_024C6E54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C6E54: ; // 0x24c6e54
|
|
/* 024C6E54 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024C6E58 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C6E58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6E58 */ cpu->r[1] = _t0;
|
|
/* 024C6E5C */ cpu->r[10] = 0x101F0000u;
|
|
/* 024C6E60 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024C6E64 */ _t1 = cpu->r[10] + 0xFFFF8B24u;
|
|
/* 024C6E64 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024C6E64 */ cpu->r[10] = _t1;
|
|
/* 024C6E68 */ cpu->r[7] = 0x101F0000u;
|
|
/* 024C6E6C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024C6E6C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024C6E70 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024C6E74 */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C6E78 */ _t3 = cpu->r[7] + 0xFFFF8B34u;
|
|
/* 024C6E78 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024C6E78 */ cpu->r[7] = _t3;
|
|
/* 024C6E7C */ _t4 = cpu->r[8] + 0xFFFF8B2Cu;
|
|
/* 024C6E7C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024C6E7C */ cpu->r[8] = _t4;
|
|
/* 024C6E80 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C6E84 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024C6E84 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024C6E88 */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C6E8C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6E8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C6E90 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C6E94 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024C6E94 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024C6E98 */ _t8 = cpu->r[8] + 0xFFFF8B44u;
|
|
/* 024C6E98 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 024C6E98 */ cpu->r[8] = _t8;
|
|
/* 024C6E9C */ _t9 = cpu->r[12] + 0xFFFF8B3Cu;
|
|
/* 024C6E9C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 024C6E9C */ cpu->r[12] = _t9;
|
|
/* 024C6EA0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 024C6EA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024C6EA4 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C6EA8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 024C6EA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 024C6EAC */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C6EB0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6EB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C6EB4 */ _t13 = cpu->r[11] + 0xFFFF8B4Cu;
|
|
/* 024C6EB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024C6EB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C6EBC */ return;
|
|
}
|
|
|
|
// fn_024C6E58 @ 0x24c6e58
|
|
void Gambit_fn_024C6E58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C6E58: ; // 0x24c6e58
|
|
/* 024C6E58 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C6E58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6E58 */ cpu->r[1] = _t0;
|
|
/* 024C6E5C */ cpu->r[10] = 0x101F0000u;
|
|
/* 024C6E60 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024C6E64 */ _t1 = cpu->r[10] + 0xFFFF8B24u;
|
|
/* 024C6E64 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024C6E64 */ cpu->r[10] = _t1;
|
|
/* 024C6E68 */ cpu->r[7] = 0x101F0000u;
|
|
/* 024C6E6C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024C6E6C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024C6E70 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024C6E74 */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C6E78 */ _t3 = cpu->r[7] + 0xFFFF8B34u;
|
|
/* 024C6E78 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024C6E78 */ cpu->r[7] = _t3;
|
|
/* 024C6E7C */ _t4 = cpu->r[8] + 0xFFFF8B2Cu;
|
|
/* 024C6E7C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024C6E7C */ cpu->r[8] = _t4;
|
|
/* 024C6E80 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C6E84 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024C6E84 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024C6E88 */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C6E8C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6E8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C6E90 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C6E94 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024C6E94 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024C6E98 */ _t8 = cpu->r[8] + 0xFFFF8B44u;
|
|
/* 024C6E98 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 024C6E98 */ cpu->r[8] = _t8;
|
|
/* 024C6E9C */ _t9 = cpu->r[12] + 0xFFFF8B3Cu;
|
|
/* 024C6E9C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 024C6E9C */ cpu->r[12] = _t9;
|
|
/* 024C6EA0 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 024C6EA0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024C6EA4 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C6EA8 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 024C6EA8 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 024C6EAC */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C6EB0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6EB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C6EB4 */ _t13 = cpu->r[11] + 0xFFFF8B4Cu;
|
|
/* 024C6EB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024C6EB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C6EBC */ return;
|
|
}
|
|
|
|
// fn_024C6EC0 @ 0x24c6ec0
|
|
void Gambit_fn_024C6EC0(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_024C6EC0: ; // 0x24c6ec0
|
|
/* 024C6EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6EC4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6EC4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C6EC4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6EC4 */ goto L_024C6EC8;
|
|
L_024C6EC8: ; // 0x24c6ec8
|
|
/* 024C6EC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6ECC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6ECC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C6ECC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6ECC */ goto L_024C6ED0;
|
|
L_024C6ED0: ; // 0x24c6ed0
|
|
/* 024C6ED0 */ 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_024C6ED4 @ 0x24c6ed4
|
|
void Gambit_fn_024C6ED4(CPUState* cpu) {
|
|
L_024C6ED4: ; // 0x24c6ed4
|
|
/* 024C6ED4 */ return;
|
|
}
|
|
|
|
// fn_024C6ED8 @ 0x24c6ed8
|
|
void Gambit_fn_024C6ED8(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_024C6ED8: ; // 0x24c6ed8
|
|
/* 024C6ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6EDC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6EDC */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C6EDC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6EDC */ goto L_024C6EE0;
|
|
L_024C6EE0: ; // 0x24c6ee0
|
|
/* 024C6EE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6EE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6EE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C6EE4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6EE4 */ goto L_024C6EE8;
|
|
L_024C6EE8: ; // 0x24c6ee8
|
|
/* 024C6EE8 */ 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_024C6EEC @ 0x24c6eec
|
|
void Gambit_fn_024C6EEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024C6EEC: ; // 0x24c6eec
|
|
/* 024C6EEC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024C6EEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6EF0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024C6EF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C6EF4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 024C6EF8 */ cpu->r[11] = 0x10110000u;
|
|
/* 024C6EFC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 024C6EFC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C6F00 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024C6F00 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 024C6F04 */ return;
|
|
}
|
|
|
|
// fn_024C6F08 @ 0x24c6f08
|
|
void Gambit_fn_024C6F08(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_024C6F08: ; // 0x24c6f08
|
|
/* 024C6F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6F0C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F0C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C6F0C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6F0C */ goto L_024C6F10;
|
|
L_024C6F10: ; // 0x24c6f10
|
|
/* 024C6F10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6F14 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F14 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C6F14 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6F14 */ goto L_024C6F18;
|
|
L_024C6F18: ; // 0x24c6f18
|
|
/* 024C6F18 */ 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_024C6F1C @ 0x24c6f1c
|
|
void Gambit_fn_024C6F1C(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_024C6F1C: ; // 0x24c6f1c
|
|
/* 024C6F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C6F20 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F20 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C6F20 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6F20 */ goto L_024C6F24;
|
|
L_024C6F24: ; // 0x24c6f24
|
|
/* 024C6F24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C6F28 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F28 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C6F28 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6F28 */ goto L_024C6F2C;
|
|
L_024C6F2C: ; // 0x24c6f2c
|
|
/* 024C6F2C */ 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_024C6F30 @ 0x24c6f30
|
|
void Gambit_fn_024C6F30(CPUState* cpu) {
|
|
L_024C6F30: ; // 0x24c6f30
|
|
/* 024C6F30 */ return;
|
|
}
|
|
|
|
// fn_024C6F34 @ 0x24c6f34
|
|
void Gambit_fn_024C6F34(CPUState* cpu) {
|
|
L_024C6F34: ; // 0x24c6f34
|
|
/* 024C6F34 */ return;
|
|
}
|
|
|
|
// fn_024C6F38 @ 0x24c6f38
|
|
void Gambit_fn_024C6F38(CPUState* cpu) {
|
|
L_024C6F38: ; // 0x24c6f38
|
|
/* 024C6F38 */ return;
|
|
}
|
|
|
|
// fn_024C6F3C @ 0x24c6f3c
|
|
void Gambit_fn_024C6F3C(CPUState* cpu) {
|
|
L_024C6F3C: ; // 0x24c6f3c
|
|
/* 024C6F3C */ return;
|
|
}
|
|
|
|
// fn_024C6F40 @ 0x24c6f40
|
|
void Gambit_fn_024C6F40(CPUState* cpu) {
|
|
L_024C6F40: ; // 0x24c6f40
|
|
/* 024C6F40 */ return;
|
|
}
|
|
|
|
// fn_024C6F44 @ 0x24c6f44
|
|
void Gambit_fn_024C6F44(CPUState* cpu) {
|
|
L_024C6F44: ; // 0x24c6f44
|
|
/* 024C6F44 */ return;
|
|
}
|
|
|
|
// fn_024C6F48 @ 0x24c6f48
|
|
void Gambit_fn_024C6F48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C6F48: ; // 0x24c6f48
|
|
/* 024C6F48 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C6F48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C6F50 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F50 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C6F50 */ if (_t2) goto L_024C6F5C; else goto L_024C6F54;
|
|
L_024C6F54: ; // 0x24c6f54
|
|
/* 024C6F54 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 024C6F58 */ return;
|
|
L_024C6F5C: ; // 0x24c6f5c
|
|
/* 024C6F5C */ cpu->r[3] = 0x00000000u;
|
|
/* 024C6F60 */ return;
|
|
}
|
|
|
|
// fn_024C6F64 @ 0x24c6f64
|
|
void Gambit_fn_024C6F64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C6F64: ; // 0x24c6f64
|
|
/* 024C6F64 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C6F64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C6F6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C6F6C */ if (_t2) goto L_024C6F78; else goto L_024C6F70;
|
|
L_024C6F70: ; // 0x24c6f70
|
|
/* 024C6F70 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 024C6F74 */ return;
|
|
L_024C6F78: ; // 0x24c6f78
|
|
/* 024C6F78 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C6F7C */ return;
|
|
}
|
|
|
|
// fn_024C6F80 @ 0x24c6f80
|
|
void Gambit_fn_024C6F80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C6F80: ; // 0x24c6f80
|
|
/* 024C6F80 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C6F80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6F84 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C6F88 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6F88 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C6F88 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C6F88 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6F88 */ goto L_024C6F8C;
|
|
L_024C6F8C: ; // 0x24c6f8c
|
|
/* 024C6F8C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6F8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6F90 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 024C6F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6F94 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6F98 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C6F9C @ 0x24c6f9c
|
|
void Gambit_fn_024C6F9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C6F9C: ; // 0x24c6f9c
|
|
/* 024C6F9C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C6F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6FA0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C6FA4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6FA4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C6FA4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C6FA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6FA4 */ goto L_024C6FA8;
|
|
L_024C6FA8: ; // 0x24c6fa8
|
|
/* 024C6FA8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6FAC */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 024C6FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6FB0 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6FB4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C6FB8 @ 0x24c6fb8
|
|
void Gambit_fn_024C6FB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C6FB8: ; // 0x24c6fb8
|
|
/* 024C6FB8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C6FB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6FBC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C6FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C6FC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6FC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C6FC0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C6FC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C6FC0 */ goto L_024C6FC4;
|
|
L_024C6FC4: ; // 0x24c6fc4
|
|
/* 024C6FC4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6FC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6FC8 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 024C6FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6FCC */ cpu->ctr = cpu->r[0];
|
|
/* 024C6FD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C6FD4 @ 0x24c6fd4
|
|
void Gambit_fn_024C6FD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C6FD4: ; // 0x24c6fd4
|
|
/* 024C6FD4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6FD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C6FD8 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 024C6FD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C6FDC */ cpu->ctr = cpu->r[0];
|
|
/* 024C6FE0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C6FE4 @ 0x24c6fe4
|
|
void Gambit_fn_024C6FE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C6FE4: ; // 0x24c6fe4
|
|
/* 024C6FE4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C6FE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6FE8 */ cpu->r[1] = _t0;
|
|
/* 024C6FEC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6FF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6FF8 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C6FF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C7000 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7000 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C7000 */ if (_t5) goto L_024C7004; else goto L_024C7020;
|
|
L_024C7004: ; // 0x24c7004
|
|
/* 024C7004 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C7004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7008 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C7008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C700C */ cpu->ctr = cpu->r[0];
|
|
/* 024C7010 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7018 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C701C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C701C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C7020: ; // 0x24c7020
|
|
/* 024C7020 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C7024 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7024 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7028 */ cpu->lr = cpu->r[0];
|
|
/* 024C702C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7030 */ return;
|
|
}
|
|
|
|
// fn_024C6FE8 @ 0x24c6fe8
|
|
void Gambit_fn_024C6FE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C6FE8: ; // 0x24c6fe8
|
|
/* 024C6FE8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6FE8 */ cpu->r[1] = _t0;
|
|
/* 024C6FEC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6FF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6FF8 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C6FF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C7000 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7000 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C7000 */ if (_t5) goto L_024C7004; else goto L_024C7020;
|
|
L_024C7004: ; // 0x24c7004
|
|
/* 024C7004 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C7004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7008 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C7008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C700C */ cpu->ctr = cpu->r[0];
|
|
/* 024C7010 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7014 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7018 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C701C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C701C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C7020: ; // 0x24c7020
|
|
/* 024C7020 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C7024 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7024 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7028 */ cpu->lr = cpu->r[0];
|
|
/* 024C702C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7030 */ return;
|
|
}
|
|
|
|
// fn_024C7034 @ 0x24c7034
|
|
void Gambit_fn_024C7034(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C7034: ; // 0x24c7034
|
|
/* 024C7034 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7034 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7038 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 024C7038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C703C */ cpu->ctr = cpu->r[0];
|
|
/* 024C7040 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C7044 @ 0x24c7044
|
|
void Gambit_fn_024C7044(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C7044: ; // 0x24c7044
|
|
/* 024C7044 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7048 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C7048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C704C */ cpu->ctr = cpu->r[0];
|
|
/* 024C7050 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C7054 @ 0x24c7054
|
|
void Gambit_fn_024C7054(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C7054: ; // 0x24c7054
|
|
/* 024C7054 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7054 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7058 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C7058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C705C */ cpu->ctr = cpu->r[0];
|
|
/* 024C7060 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C7064 @ 0x24c7064
|
|
void Gambit_fn_024C7064(CPUState* cpu) {
|
|
L_024C7064: ; // 0x24c7064
|
|
/* 024C7064 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C7068 */ return;
|
|
}
|
|
|
|
// fn_024C706C @ 0x24c706c
|
|
void Gambit_fn_024C706C(CPUState* cpu) {
|
|
L_024C706C: ; // 0x24c706c
|
|
/* 024C706C */ return;
|
|
}
|
|
|
|
// fn_024C7070 @ 0x24c7070
|
|
void Gambit_fn_024C7070(CPUState* cpu) {
|
|
L_024C7070: ; // 0x24c7070
|
|
/* 024C7070 */ return;
|
|
}
|
|
|
|
// fn_024C7074 @ 0x24c7074
|
|
void Gambit_fn_024C7074(CPUState* cpu) {
|
|
L_024C7074: ; // 0x24c7074
|
|
/* 024C7074 */ return;
|
|
}
|
|
|
|
// fn_024C7078 @ 0x24c7078
|
|
void Gambit_fn_024C7078(CPUState* cpu) {
|
|
L_024C7078: ; // 0x24c7078
|
|
/* 024C7078 */ return;
|
|
}
|
|
|
|
// fn_024C707C @ 0x24c707c
|
|
void Gambit_fn_024C707C(CPUState* cpu) {
|
|
L_024C707C: ; // 0x24c707c
|
|
/* 024C707C */ return;
|
|
}
|
|
|
|
// fn_024C7080 @ 0x24c7080
|
|
void Gambit_fn_024C7080(CPUState* cpu) {
|
|
L_024C7080: ; // 0x24c7080
|
|
/* 024C7080 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C7084 */ return;
|
|
}
|
|
|
|
// fn_024C7088 @ 0x24c7088
|
|
void Gambit_fn_024C7088(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C7088: ; // 0x24c7088
|
|
/* 024C7088 */ cpu->r[10] = 0x101F0000u;
|
|
/* 024C708C */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 024C708C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C708C */ cpu->r[10] = _t0;
|
|
/* 024C7090 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C7090 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024C7094 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024C7094 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C7098 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7098 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024C709C */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 024C709C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C70A0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C70A0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C70A4 */ return;
|
|
}
|
|
|
|
// fn_024C70A8 @ 0x24c70a8
|
|
void Gambit_fn_024C70A8(CPUState* cpu) {
|
|
L_024C70A8: ; // 0x24c70a8
|
|
/* 024C70A8 */ return;
|
|
}
|
|
|
|
// fn_024C70AC @ 0x24c70ac
|
|
void Gambit_fn_024C70AC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C70AC: ; // 0x24c70ac
|
|
/* 024C70AC */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 024C70AC */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C70B0 */ return;
|
|
}
|
|
|
|
// fn_024C70B4 @ 0x24c70b4
|
|
void Gambit_fn_024C70B4(CPUState* cpu) {
|
|
L_024C70B4: ; // 0x24c70b4
|
|
/* 024C70B4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C70B8 */ return;
|
|
}
|
|
|
|
// fn_024C70BC @ 0x24c70bc
|
|
void Gambit_fn_024C70BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C70BC: ; // 0x24c70bc
|
|
/* 024C70BC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C70BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C70C0 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 024C70C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C70C4 */ cpu->ctr = cpu->r[0];
|
|
/* 024C70C8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C70CC @ 0x24c70cc
|
|
void Gambit_fn_024C70CC(CPUState* cpu) {
|
|
L_024C70CC: ; // 0x24c70cc
|
|
/* 024C70CC */ return;
|
|
}
|
|
|
|
// fn_024C70D0 @ 0x24c70d0
|
|
void Gambit_fn_024C70D0(CPUState* cpu) {
|
|
L_024C70D0: ; // 0x24c70d0
|
|
/* 024C70D0 */ return;
|
|
}
|
|
|
|
// fn_024C70D4 @ 0x24c70d4
|
|
void Gambit_fn_024C70D4(CPUState* cpu) {
|
|
L_024C70D4: ; // 0x24c70d4
|
|
/* 024C70D4 */ return;
|
|
}
|
|
|
|
// fn_024C70D8 @ 0x24c70d8
|
|
void Gambit_fn_024C70D8(CPUState* cpu) {
|
|
L_024C70D8: ; // 0x24c70d8
|
|
/* 024C70D8 */ return;
|
|
}
|
|
|
|
// fn_024C70DC @ 0x24c70dc
|
|
void Gambit_fn_024C70DC(CPUState* cpu) {
|
|
L_024C70DC: ; // 0x24c70dc
|
|
/* 024C70DC */ return;
|
|
}
|
|
|
|
// fn_024C70E0 @ 0x24c70e0
|
|
void Gambit_fn_024C70E0(CPUState* cpu) {
|
|
L_024C70E0: ; // 0x24c70e0
|
|
/* 024C70E0 */ return;
|
|
}
|
|
|
|
// fn_024C70E4 @ 0x24c70e4
|
|
void Gambit_fn_024C70E4(CPUState* cpu) {
|
|
L_024C70E4: ; // 0x24c70e4
|
|
/* 024C70E4 */ return;
|
|
}
|
|
|
|
// fn_024C70E8 @ 0x24c70e8
|
|
void Gambit_fn_024C70E8(CPUState* cpu) {
|
|
L_024C70E8: ; // 0x24c70e8
|
|
/* 024C70E8 */ return;
|
|
}
|
|
|
|
// fn_024C70EC @ 0x24c70ec
|
|
void Gambit_fn_024C70EC(CPUState* cpu) {
|
|
L_024C70EC: ; // 0x24c70ec
|
|
/* 024C70EC */ return;
|
|
}
|
|
|
|
// fn_024C70F0 @ 0x24c70f0
|
|
void Gambit_fn_024C70F0(CPUState* cpu) {
|
|
L_024C70F0: ; // 0x24c70f0
|
|
/* 024C70F0 */ return;
|
|
}
|
|
|
|
// fn_024C70F4 @ 0x24c70f4
|
|
void Gambit_fn_024C70F4(CPUState* cpu) {
|
|
L_024C70F4: ; // 0x24c70f4
|
|
/* 024C70F4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C70F8 */ return;
|
|
}
|
|
|
|
// fn_024C70FC @ 0x24c70fc
|
|
void Gambit_fn_024C70FC(CPUState* cpu) {
|
|
L_024C70FC: ; // 0x24c70fc
|
|
/* 024C70FC */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7100 */ return;
|
|
}
|
|
|
|
// fn_024C7104 @ 0x24c7104
|
|
void Gambit_fn_024C7104(CPUState* cpu) {
|
|
L_024C7104: ; // 0x24c7104
|
|
/* 024C7104 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7108 */ return;
|
|
}
|
|
|
|
// fn_024C710C @ 0x24c710c
|
|
void Gambit_fn_024C710C(CPUState* cpu) {
|
|
L_024C710C: ; // 0x24c710c
|
|
/* 024C710C */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7110 */ return;
|
|
}
|
|
|
|
// fn_024C7114 @ 0x24c7114
|
|
void Gambit_fn_024C7114(CPUState* cpu) {
|
|
L_024C7114: ; // 0x24c7114
|
|
/* 024C7114 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7118 */ return;
|
|
}
|
|
|
|
// fn_024C711C @ 0x24c711c
|
|
void Gambit_fn_024C711C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C711C: ; // 0x24c711c
|
|
/* 024C711C */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 024C711C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 024C7120 */ return;
|
|
}
|
|
|
|
// fn_024C7124 @ 0x24c7124
|
|
void Gambit_fn_024C7124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C7124: ; // 0x24c7124
|
|
/* 024C7124 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 024C7124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7128 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C7128 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024C712C */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 024C712C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C7130 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7130 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C7134 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 024C7134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C7138 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C7138 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024C713C */ return;
|
|
}
|
|
|
|
// fn_024C7140 @ 0x24c7140
|
|
void Gambit_fn_024C7140(CPUState* cpu) {
|
|
L_024C7140: ; // 0x24c7140
|
|
/* 024C7140 */ cpu->r[3] = 0x100B0000u;
|
|
/* 024C7144 */ cpu->r[3] = cpu->r[3] + 0x00004C88u;
|
|
/* 024C7148 */ return;
|
|
}
|
|
|
|
// fn_024C714C @ 0x24c714c
|
|
void Gambit_fn_024C714C(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_024C714C: ; // 0x24c714c
|
|
/* 024C714C */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C7150 */ _t0 = cpu->r[10] + 0xFFFFE6DCu;
|
|
/* 024C7150 */ cpu->r[10] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C7158 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C715C */ cpu->r[10] = cpu->r[10] + 0x000007CCu;
|
|
/* 024C7160 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7160 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C7160 */ if (_t2) goto L_024C7164; else goto L_024C717C;
|
|
L_024C7164: ; // 0x24c7164
|
|
/* 024C7164 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C7168 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C716C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C7170 */ cpu->r[0] = cpu->r[0] + 0x00004C68u;
|
|
/* 024C7174 */ _t3 = cpu->r[11] + 0xFFFFE6DCu;
|
|
/* 024C7174 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 024C7178 */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 024C7178 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_024C717C: ; // 0x24c717c
|
|
/* 024C717C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C7180 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7180 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C7180 */ if (_t6) goto L_024C7184; else goto L_024C718C;
|
|
L_024C7184: ; // 0x24c7184
|
|
/* 024C7184 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C7188 */ return;
|
|
L_024C718C: ; // 0x24c718c
|
|
/* 024C718C */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C7190 */ _t7 = cpu->r[9] + 0xFFFFDDF0u;
|
|
/* 024C7190 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7194 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C7198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C719C */ cpu->r[11] = cpu->r[11] + 0xFFFFFF40u;
|
|
/* 024C71A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C71A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C71A0 */ if (_t9) goto L_024C71A4; else goto L_024C71BC;
|
|
L_024C71A4: ; // 0x24c71a4
|
|
/* 024C71A4 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C71A8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C71AC */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C71B0 */ cpu->r[9] = cpu->r[9] + 0x00004C58u;
|
|
/* 024C71B4 */ _t10 = cpu->r[10] + 0xFFFFDDF0u;
|
|
/* 024C71B4 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C71B8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024C71B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
L_024C71BC: ; // 0x24c71bc
|
|
/* 024C71BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[11]);
|
|
/* 024C71C0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C71C0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C71C0 */ if (_t13) goto L_024C71C4; else goto L_024C71CC;
|
|
L_024C71C4: ; // 0x24c71c4
|
|
/* 024C71C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C71C8 */ goto L_024C7284;
|
|
L_024C71CC: ; // 0x24c71cc
|
|
/* 024C71CC */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C71D0 */ _t14 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 024C71D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C71D4 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C71D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C71DC */ cpu->r[9] = cpu->r[9] + 0xFFFFFBBCu;
|
|
/* 024C71E0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C71E0 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C71E0 */ if (_t16) goto L_024C71E4; else goto L_024C71FC;
|
|
L_024C71E4: ; // 0x24c71e4
|
|
/* 024C71E4 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C71E8 */ cpu->r[10] = 0x00000001u;
|
|
/* 024C71EC */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C71F0 */ cpu->r[11] = cpu->r[11] + 0x00004C48u;
|
|
/* 024C71F4 */ _t17 = cpu->r[12] + 0xFFFFDA10u;
|
|
/* 024C71F4 */ rbrew_write32(cpu->mem, _t17, cpu->r[10]);
|
|
/* 024C71F8 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 024C71F8 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_024C71FC: ; // 0x24c71fc
|
|
/* 024C71FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[9]);
|
|
/* 024C7200 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7200 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C7200 */ if (_t20) goto L_024C7204; else goto L_024C720C;
|
|
L_024C7204: ; // 0x24c7204
|
|
/* 024C7204 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7208 */ goto L_024C7280;
|
|
L_024C720C: ; // 0x24c720c
|
|
/* 024C720C */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C7210 */ _t21 = cpu->r[9] + 0xFFFFD4E8u;
|
|
/* 024C7210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C7210 */ cpu->r[9] = _t21;
|
|
/* 024C7214 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C7218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C721C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 024C7220 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7220 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C7220 */ if (_t23) goto L_024C7224; else goto L_024C7238;
|
|
L_024C7224: ; // 0x24c7224
|
|
/* 024C7224 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C7228 */ cpu->r[11] = 0x00000001u;
|
|
/* 024C722C */ cpu->r[0] = cpu->r[0] + 0x00004C38u;
|
|
/* 024C7230 */ _t24 = cpu->r[9] + 0x00000000u;
|
|
/* 024C7230 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]);
|
|
/* 024C7234 */ _t25 = cpu->r[10] + 0x00000000u;
|
|
/* 024C7234 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
L_024C7238: ; // 0x24c7238
|
|
/* 024C7238 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C723C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C723C */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C723C */ if (_t27) goto L_024C7240; else goto L_024C7248;
|
|
L_024C7240: ; // 0x24c7240
|
|
/* 024C7240 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7244 */ goto L_024C7280;
|
|
L_024C7248: ; // 0x24c7248
|
|
/* 024C7248 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C724C */ _t28 = cpu->r[10] + 0xFFFFD4E0u;
|
|
/* 024C724C */ cpu->r[9] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C724C */ cpu->r[10] = _t28;
|
|
/* 024C7250 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C7254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024C7258 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 024C725C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C725C */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C725C */ if (_t30) goto L_024C7260; else goto L_024C7274;
|
|
L_024C7260: ; // 0x24c7260
|
|
/* 024C7260 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C7264 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7268 */ cpu->r[9] = cpu->r[9] + 0x00004BC8u;
|
|
/* 024C726C */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 024C726C */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 024C7270 */ _t32 = cpu->r[11] + 0x00000000u;
|
|
/* 024C7270 */ rbrew_write32(cpu->mem, _t32, cpu->r[9]);
|
|
L_024C7274: ; // 0x24c7274
|
|
/* 024C7274 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024C7278 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024C727C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024C7280: ; // 0x24c7280
|
|
/* 024C7280 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_024C7284: ; // 0x24c7284
|
|
/* 024C7284 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C7288 */ return;
|
|
}
|
|
|
|
// fn_024C728C @ 0x24c728c
|
|
void Gambit_fn_024C728C(CPUState* cpu) {
|
|
L_024C728C: ; // 0x24c728c
|
|
/* 024C728C */ return;
|
|
}
|
|
|
|
// fn_024C7290 @ 0x24c7290
|
|
void Gambit_fn_024C7290(CPUState* cpu) {
|
|
L_024C7290: ; // 0x24c7290
|
|
/* 024C7290 */ return;
|
|
}
|
|
|
|
// fn_024C7294 @ 0x24c7294
|
|
void Gambit_fn_024C7294(CPUState* cpu) {
|
|
L_024C7294: ; // 0x24c7294
|
|
/* 024C7294 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C7298 */ return;
|
|
}
|
|
|
|
// fn_024C729C @ 0x24c729c
|
|
void Gambit_fn_024C729C(CPUState* cpu) {
|
|
L_024C729C: ; // 0x24c729c
|
|
/* 024C729C */ return;
|
|
}
|
|
|
|
// fn_024C72A0 @ 0x24c72a0
|
|
void Gambit_fn_024C72A0(CPUState* cpu) {
|
|
L_024C72A0: ; // 0x24c72a0
|
|
/* 024C72A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C72A4 */ return;
|
|
}
|
|
|
|
// fn_024C72AC @ 0x24c72ac
|
|
void Gambit_fn_024C72AC(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;
|
|
|
|
L_024C72AC: ; // 0x24c72ac
|
|
/* 024C72AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C72AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C72AC */ cpu->r[1] = _t0;
|
|
/* 024C72B0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C72B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C72B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C72B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C72B8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 024C72B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024C72BC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C72BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C72C0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C72C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C72C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C72C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C72C4 */ if (_t6) goto L_024C72C8; else goto L_024C72D8;
|
|
L_024C72C8: ; // 0x24c72c8
|
|
/* 024C72C8 */ cpu->r[3] = 0x0000058Cu;
|
|
/* 024C72CC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C72D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C72D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C72D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C72D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C72D4 */ if (_t8) goto L_024C739C; else goto L_024C72D8;
|
|
L_024C72D8: ; // 0x24c72d8
|
|
/* 024C72D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C72DC */ Gambit_fn_024C60CC(cpu);
|
|
/* 024C72E0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C72E4 */ cpu->r[29] = cpu->r[31] + 0x00000504u;
|
|
/* 024C72E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C72E8 */ cpu->r[0] = cpu->r[0] + 0x00005358u;
|
|
/* 024C72EC */ cpu->r[30] = 0x00000000u;
|
|
/* 024C72F0 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 024C72F0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C72F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C72F4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C72F4 */ if (_t11) goto L_024C72F8; else goto L_024C7308;
|
|
L_024C72F8: ; // 0x24c72f8
|
|
/* 024C72F8 */ cpu->r[3] = 0x00000038u;
|
|
/* 024C72FC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C7300 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C7300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C7304 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7304 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C7304 */ if (_t13) goto L_024C7338; else goto L_024C7308;
|
|
L_024C7308: ; // 0x24c7308
|
|
/* 024C7308 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C730C */ Gambit_fn_027FC29C(cpu);
|
|
/* 024C7310 */ cpu->r[5] = 0x10080000u;
|
|
/* 024C7314 */ _t14 = cpu->r[29] + 0x00000030u;
|
|
/* 024C7314 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 024C7318 */ cpu->r[5] = cpu->r[5] + 0x00007294u;
|
|
/* 024C731C */ _t15 = cpu->r[29] + 0x00000034u;
|
|
/* 024C731C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 024C7320 */ _t16 = cpu->r[29] + 0x00000004u;
|
|
/* 024C7320 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 024C7324 */ _t17 = cpu->r[29] + 0x00000024u;
|
|
/* 024C7324 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 024C7328 */ _t18 = cpu->r[29] + 0x00000028u;
|
|
/* 024C7328 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 024C732C */ _t19 = cpu->r[29] + 0x0000002Cu;
|
|
/* 024C732C */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 024C7330 */ _t20 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C7330 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C7334 */ _t21 = cpu->r[29] + 0x00000020u;
|
|
/* 024C7334 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
L_024C7338: ; // 0x24c7338
|
|
/* 024C7338 */ _t22 = cpu->r[31] + 0x00000548u;
|
|
/* 024C7338 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 024C733C */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 024C7340 */ _t23 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7340 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 024C7344 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024C7348 */ _t24 = cpu->r[31] + 0x00000550u;
|
|
/* 024C7348 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 024C734C */ cpu->r[8] = cpu->r[31] + 0x00000554u;
|
|
/* 024C7350 */ _t25 = cpu->r[31] + 0x00000540u;
|
|
/* 024C7350 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 024C7354 */ cpu->r[9] = 0x00000003u;
|
|
/* 024C7358 */ _t26 = cpu->r[31] + 0x00000545u;
|
|
/* 024C7358 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[30]);
|
|
/* 024C735C */ cpu->r[7] = cpu->r[7] + 0xFFFF96F8u;
|
|
/* 024C7360 */ _t27 = cpu->r[31] + 0x0000054Du;
|
|
/* 024C7360 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[30]);
|
|
/* 024C7364 */ _t28 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C7364 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 024C7368 */ _t29 = cpu->r[31] + 0x0000054Cu;
|
|
/* 024C7368 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[30]);
|
|
/* 024C736C */ cpu->ctr = cpu->r[9];
|
|
/* 024C7370 */ _t30 = cpu->r[31] + 0x00000544u;
|
|
/* 024C7370 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]);
|
|
L_024C7374: ; // 0x24c7374
|
|
/* 024C7374 */ _t31 = cpu->r[7] + 0x00000004u;
|
|
/* 024C7374 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C7378 */ _t32 = cpu->r[8] + 0x00000004u;
|
|
/* 024C7378 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 024C737C */ _t33 = cpu->r[7] + 0x00000008u;
|
|
/* 024C737C */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024C7380 */ _t34 = cpu->r[8] + 0x00000008u;
|
|
/* 024C7380 */ rbrew_write32(cpu->mem, _t34, cpu->r[11]);
|
|
/* 024C7384 */ _t35 = cpu->r[7] + 0x0000000Cu;
|
|
/* 024C7384 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C7388 */ _t36 = cpu->r[8] + 0x0000000Cu;
|
|
/* 024C7388 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]);
|
|
/* 024C738C */ _t37 = cpu->r[7] + 0x00000010u;
|
|
/* 024C738C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C738C */ cpu->r[7] = _t37;
|
|
/* 024C7390 */ _t38 = cpu->r[8] + 0x00000010u;
|
|
/* 024C7390 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]);
|
|
/* 024C7390 */ cpu->r[8] = _t38;
|
|
/* 024C7394 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C7394 */ _t39 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C7394 */ _t40 = _t39 >> (0x00000002u & 31u);
|
|
/* 024C7394 */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C7394 */ if (_t41) goto L_024C7374; else goto L_024C7398;
|
|
L_024C7398: ; // 0x24c7398
|
|
/* 024C7398 */ _t42 = cpu->r[31] + 0x00000588u;
|
|
/* 024C7398 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
L_024C739C: ; // 0x24c739c
|
|
/* 024C739C */ _t43 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C739C */ cpu->r[29] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C73A0 */ _t44 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C73A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C73A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C73A8 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 024C73A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024C73AC */ cpu->lr = cpu->r[0];
|
|
/* 024C73B0 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 024C73B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024C73B4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C73B8 */ return;
|
|
}
|
|
|
|
// fn_024C73BC @ 0x24c73bc
|
|
void Gambit_fn_024C73BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C73BC: ; // 0x24c73bc
|
|
/* 024C73BC */ cpu->r[0] = cpu->lr;
|
|
/* 024C73C0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C73C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C73C0 */ cpu->r[1] = _t0;
|
|
/* 024C73C4 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C73C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C73C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C73CC */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024C73CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C73D0 */ Gambit_fn_024C62A8(cpu);
|
|
/* 024C73D4 */ _t3 = cpu->r[31] + 0x00000050u;
|
|
/* 024C73D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C73D8 */ _t4 = cpu->r[12] + 0x000046E0u;
|
|
/* 024C73D8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C73DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C73E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C73E0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C73E0 */ if (_t6) goto L_024C73EC; else goto L_024C73E4;
|
|
L_024C73E4: ; // 0x24c73e4
|
|
/* 024C73E4 */ _t7 = cpu->r[12] + 0x000046C0u;
|
|
/* 024C73E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C73E8 */ _t8 = cpu->r[31] + 0x00000540u;
|
|
/* 024C73E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C73EC: ; // 0x24c73ec
|
|
/* 024C73EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C73F0 */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C73F4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C73F8 */ _t9 = cpu->r[31] + 0x00000540u;
|
|
/* 024C73F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C73FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7400 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C7404 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7404 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C7408 */ Gambit_fn_0217408C(cpu);
|
|
/* 024C740C */ cpu->r[4] = 0x00000002u;
|
|
/* 024C7410 */ _t11 = cpu->r[31] + 0x00000544u;
|
|
/* 024C7410 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[3]);
|
|
/* 024C7414 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7418 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C741C */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 024C741C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C7420 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7420 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C7424 */ cpu->lr = cpu->r[0];
|
|
/* 024C7428 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C742C */ return;
|
|
}
|
|
|
|
// fn_024C73C0 @ 0x24c73c0
|
|
void Gambit_fn_024C73C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024C73C0: ; // 0x24c73c0
|
|
/* 024C73C0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C73C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C73C0 */ cpu->r[1] = _t0;
|
|
/* 024C73C4 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C73C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C73C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C73CC */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024C73CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C73D0 */ Gambit_fn_024C62A8(cpu);
|
|
/* 024C73D4 */ _t3 = cpu->r[31] + 0x00000050u;
|
|
/* 024C73D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C73D8 */ _t4 = cpu->r[12] + 0x000046E0u;
|
|
/* 024C73D8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C73DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C73E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C73E0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C73E0 */ if (_t6) goto L_024C73EC; else goto L_024C73E4;
|
|
L_024C73E4: ; // 0x24c73e4
|
|
/* 024C73E4 */ _t7 = cpu->r[12] + 0x000046C0u;
|
|
/* 024C73E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C73E8 */ _t8 = cpu->r[31] + 0x00000540u;
|
|
/* 024C73E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C73EC: ; // 0x24c73ec
|
|
/* 024C73EC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C73F0 */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C73F4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C73F8 */ _t9 = cpu->r[31] + 0x00000540u;
|
|
/* 024C73F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C73FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7400 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024C7404 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7404 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C7408 */ Gambit_fn_0217408C(cpu);
|
|
/* 024C740C */ cpu->r[4] = 0x00000002u;
|
|
/* 024C7410 */ _t11 = cpu->r[31] + 0x00000544u;
|
|
/* 024C7410 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[3]);
|
|
/* 024C7414 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7418 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C741C */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 024C741C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C7420 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7420 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C7424 */ cpu->lr = cpu->r[0];
|
|
/* 024C7428 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C742C */ return;
|
|
}
|
|
|
|
// fn_024C7430 @ 0x24c7430
|
|
void Gambit_fn_024C7430(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;
|
|
|
|
L_024C7430: ; // 0x24c7430
|
|
/* 024C7430 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 024C7430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7430 */ cpu->r[1] = _t0;
|
|
/* 024C7434 */ /* nop */
|
|
/* 024C7438 */ cpu->r[0] = cpu->lr;
|
|
/* 024C743C */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C743C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C7440 */ cpu->r[27] = cpu->r[3];
|
|
/* 024C7444 */ _t2 = cpu->r[27] + 0x00000544u;
|
|
/* 024C7444 */ cpu->r[7] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C7448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C744C */ cpu->r[28] = 0x00000000u;
|
|
/* 024C7450 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7450 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C7450 */ if (_t4) goto L_024C74D4; else goto L_024C7454;
|
|
L_024C7454: ; // 0x24c7454
|
|
/* 024C7454 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C7458 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 024C745C */ cpu->r[6] = 0x00000002u;
|
|
/* 024C7460 */ cpu->r[4] = cpu->r[27];
|
|
/* 024C7464 */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C7468 */ _t5 = cpu->r[1] + 0x00000009u;
|
|
/* 024C7468 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 024C746C */ Gambit_fn_024C9490(cpu);
|
|
/* 024C7470 */ cpu->r[4] = cpu->r[27] + 0x00000504u;
|
|
/* 024C7474 */ cpu->r[3] = cpu->r[27];
|
|
/* 024C7478 */ Gambit_fn_02000834(cpu);
|
|
/* 024C747C */ cpu->r[25] = 0x024D0000u;
|
|
/* 024C7480 */ cpu->r[26] = 0x100B0000u;
|
|
/* 024C7484 */ cpu->r[25] = cpu->r[25] + 0xFFFF8EF0u;
|
|
/* 024C7488 */ cpu->r[26] = cpu->r[26] + 0x00005044u;
|
|
/* 024C748C */ _t6 = cpu->r[27] + 0x0000051Cu;
|
|
/* 024C748C */ cpu->r[24] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7490 */ cpu->ctr = cpu->r[25];
|
|
/* 024C7494 */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C7498 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7498 */ rbrew_write32(cpu->mem, _t7, cpu->r[26]);
|
|
/* 024C749C */ cpu->r[8] = cpu->r[8] + 0x000051DCu;
|
|
/* 024C74A0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C74A4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C74A4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024C74A8 */ _t9 = cpu->r[24] + 0x00000000u;
|
|
/* 024C74A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C74AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C74B0 */ cpu->r[30] = 0x10110000u;
|
|
/* 024C74B4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C74B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C74B8 */ _t11 = cpu->r[30] + 0x00007399u;
|
|
/* 024C74B8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024C74BC */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 024C74BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 024C74C0 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C74C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C74C8 */ cpu->r[6] = 0x00080000u;
|
|
/* 024C74CC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C74CC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C74CC */ if (_t14) goto L_024C74D0; else goto L_024C7550;
|
|
L_024C74D0: ; // 0x24c74d0
|
|
/* 024C74D0 */ goto L_024C7574;
|
|
L_024C74D4: ; // 0x24c74d4
|
|
/* 024C74D4 */ cpu->r[7] = 0x00000004u;
|
|
/* 024C74D8 */ cpu->r[5] = cpu->r[1] + 0x0000000Au;
|
|
/* 024C74DC */ cpu->r[6] = 0x00000000u;
|
|
/* 024C74E0 */ cpu->r[4] = cpu->r[27];
|
|
/* 024C74E4 */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C74E8 */ _t15 = cpu->r[1] + 0x0000000Au;
|
|
/* 024C74E8 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[7]);
|
|
/* 024C74EC */ Gambit_fn_024C9490(cpu);
|
|
/* 024C74F0 */ cpu->r[4] = cpu->r[27] + 0x00000504u;
|
|
/* 024C74F4 */ cpu->r[3] = cpu->r[27];
|
|
/* 024C74F8 */ Gambit_fn_02000834(cpu);
|
|
/* 024C74FC */ cpu->r[25] = 0x024D0000u;
|
|
/* 024C7500 */ cpu->r[26] = 0x100B0000u;
|
|
/* 024C7504 */ cpu->r[25] = cpu->r[25] + 0xFFFF8EF0u;
|
|
/* 024C7508 */ cpu->r[26] = cpu->r[26] + 0x00005044u;
|
|
/* 024C750C */ _t16 = cpu->r[27] + 0x0000051Cu;
|
|
/* 024C750C */ cpu->r[24] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C7510 */ cpu->ctr = cpu->r[25];
|
|
/* 024C7514 */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C7518 */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7518 */ rbrew_write32(cpu->mem, _t17, cpu->r[26]);
|
|
/* 024C751C */ cpu->r[8] = cpu->r[8] + 0x000051DCu;
|
|
/* 024C7520 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7524 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7524 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 024C7528 */ _t19 = cpu->r[24] + 0x00000000u;
|
|
/* 024C7528 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C752C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7530 */ cpu->r[30] = 0x10110000u;
|
|
/* 024C7534 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7534 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C7538 */ _t21 = cpu->r[30] + 0x00007399u;
|
|
/* 024C7538 */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
/* 024C753C */ _t22 = cpu->r[11] + 0x00000000u;
|
|
/* 024C753C */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 024C7540 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C7544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C7548 */ cpu->r[6] = 0x00080000u;
|
|
/* 024C754C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C754C */ _t24 = _t23 & 0x00000001u;
|
|
/* 024C754C */ if (_t24) goto L_024C74D0; else goto L_024C7550;
|
|
L_024C7550: ; // 0x24c7550
|
|
/* 024C7550 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C7554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 024C7558 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C755C */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C755C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C755C */ if (_t26) goto L_024C7570; else goto L_024C7560;
|
|
L_024C7560: ; // 0x24c7560
|
|
/* 024C7560 */ _t27 = cpu->r[11] + 0x00000000u;
|
|
/* 024C7560 */ cpu->r[5] = rbrew_read8(cpu->mem, _t27);
|
|
/* 024C7564 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 024C7568 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7568 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024C7568 */ if (_t29) goto L_024C756C; else goto L_024C7550;
|
|
L_024C756C: ; // 0x24c756c
|
|
/* 024C756C */ goto L_024C7574;
|
|
L_024C7570: ; // 0x24c7570
|
|
/* 024C7570 */ cpu->r[31] = 0x00000000u;
|
|
L_024C7574: ; // 0x24c7574
|
|
/* 024C7574 */ _t30 = cpu->r[24] + 0x00000008u;
|
|
/* 024C7574 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C7578 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7578 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C757C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 024C7580 */ _t32 = cpu->r[7] + 0x00000014u;
|
|
/* 024C7580 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C7584 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C7584 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C7584 */ if (_t34) goto L_024C758C; else goto L_024C7588;
|
|
L_024C7588: ; // 0x24c7588
|
|
/* 024C7588 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C758C: ; // 0x24c758c
|
|
/* 024C758C */ cpu->ctr = cpu->r[8];
|
|
/* 024C7590 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7594 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7598 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7598 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C759C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C75A0 */ cpu->r[5] = cpu->r[31];
|
|
/* 024C75A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C75A8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C75AC */ _t36 = cpu->r[29] + cpu->r[31];
|
|
/* 024C75AC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
/* 024C75B0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 024C75B4 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C75B4 */ rbrew_write16(cpu->mem, _t37, (uint16_t)cpu->r[28]);
|
|
/* 024C75B8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024C75BC */ _t38 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C75BC */ rbrew_write16(cpu->mem, _t38, (uint16_t)cpu->r[5]);
|
|
/* 024C75C0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C75C4 */ cpu->r[9] = 0x024D0000u;
|
|
/* 024C75C8 */ _t39 = cpu->r[1] + 0x00000016u;
|
|
/* 024C75C8 */ rbrew_write16(cpu->mem, _t39, (uint16_t)cpu->r[11]);
|
|
/* 024C75CC */ cpu->r[12] = 0x024D0000u;
|
|
/* 024C75D0 */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 024C75D0 */ rbrew_write16(cpu->mem, _t40, (uint16_t)cpu->r[28]);
|
|
/* 024C75D4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024C75D8 */ _t41 = cpu->r[1] + 0x00000026u;
|
|
/* 024C75D8 */ rbrew_write16(cpu->mem, _t41, (uint16_t)cpu->r[28]);
|
|
/* 024C75DC */ cpu->r[12] = cpu->r[12] + 0xFFFF8CA0u;
|
|
/* 024C75E0 */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 024C75E0 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]);
|
|
/* 024C75E4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C75E8 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 024C75E8 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[6]);
|
|
/* 024C75EC */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C75F0 */ _t44 = cpu->r[1] + 0x00000024u;
|
|
/* 024C75F0 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[28]);
|
|
/* 024C75F4 */ cpu->r[9] = cpu->r[9] + 0xFFFF932Cu;
|
|
/* 024C75F8 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 024C75F8 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]);
|
|
/* 024C75FC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C7600 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C7604 */ _t46 = cpu->r[1] + 0x00000020u;
|
|
/* 024C7604 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 024C7608 */ Gambit_fn_024C9740(cpu);
|
|
/* 024C760C */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C7610 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7610 */ rbrew_write32(cpu->mem, _t47, cpu->r[26]);
|
|
/* 024C7614 */ cpu->r[7] = cpu->r[7] + 0x0000520Cu;
|
|
/* 024C7618 */ _t48 = cpu->r[27] + 0x00000518u;
|
|
/* 024C7618 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C761C */ _t49 = cpu->r[27] + 0x0000051Cu;
|
|
/* 024C761C */ cpu->r[29] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024C7620 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000001u);
|
|
/* 024C7624 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7624 */ rbrew_write32(cpu->mem, _t50, cpu->r[7]);
|
|
/* 024C7628 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C7628 */ _t52 = _t51 & 0x00000001u;
|
|
/* 024C7628 */ if (_t52) goto L_024C762C; else goto L_024C7630;
|
|
L_024C762C: ; // 0x24c762c
|
|
/* 024C762C */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_024C7630: ; // 0x24c7630
|
|
/* 024C7630 */ cpu->ctr = cpu->r[25];
|
|
/* 024C7634 */ _t53 = cpu->r[29] + 0x00000000u;
|
|
/* 024C7634 */ cpu->r[24] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C7638 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C763C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7640 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7640 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C7644 */ _t55 = cpu->r[7] + 0x00000000u;
|
|
/* 024C7644 */ cpu->r[0] = rbrew_read8(cpu->mem, _t55);
|
|
/* 024C7648 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C764C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C7650 */ cpu->r[9] = 0x00080000u;
|
|
/* 024C7654 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7654 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C7654 */ if (_t57) goto L_024C767C; else goto L_024C7658;
|
|
L_024C7658: ; // 0x24c7658
|
|
/* 024C7658 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C765C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 024C7660 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 024C7664 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C7664 */ _t59 = _t58 & 0x00000001u;
|
|
/* 024C7664 */ if (_t59) goto L_024C7678; else goto L_024C7668;
|
|
L_024C7668: ; // 0x24c7668
|
|
/* 024C7668 */ _t60 = cpu->r[7] + 0x00000000u;
|
|
/* 024C7668 */ cpu->r[6] = rbrew_read8(cpu->mem, _t60);
|
|
/* 024C766C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 024C7670 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7670 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C7670 */ if (_t62) goto L_024C7674; else goto L_024C7658;
|
|
L_024C7674: ; // 0x24c7674
|
|
/* 024C7674 */ goto L_024C767C;
|
|
L_024C7678: ; // 0x24c7678
|
|
/* 024C7678 */ cpu->r[31] = 0x00000000u;
|
|
L_024C767C: ; // 0x24c767c
|
|
/* 024C767C */ _t63 = cpu->r[29] + 0x00000008u;
|
|
/* 024C767C */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024C7680 */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7680 */ cpu->r[9] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024C7684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 024C7688 */ _t65 = cpu->r[9] + 0x00000014u;
|
|
/* 024C7688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 024C768C */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C768C */ _t67 = _t66 & 0x00000001u;
|
|
/* 024C768C */ if (_t67) goto L_024C7694; else goto L_024C7690;
|
|
L_024C7690: ; // 0x24c7690
|
|
/* 024C7690 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_024C7694: ; // 0x24c7694
|
|
/* 024C7694 */ cpu->ctr = cpu->r[0];
|
|
/* 024C7698 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C769C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C76A0 */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C76A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 024C76A4 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C76A8 */ cpu->r[5] = cpu->r[31];
|
|
/* 024C76AC */ cpu->r[6] = 0x00000000u;
|
|
/* 024C76B0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C76B4 */ _t69 = cpu->r[24] + cpu->r[31];
|
|
/* 024C76B4 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[30]);
|
|
/* 024C76B8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C76BC */ _t70 = cpu->r[1] + 0x00000024u;
|
|
/* 024C76BC */ rbrew_write16(cpu->mem, _t70, (uint16_t)cpu->r[28]);
|
|
/* 024C76C0 */ cpu->r[6] = 0x024D0000u;
|
|
/* 024C76C4 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 024C76C4 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[0]);
|
|
/* 024C76C8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024C76CC */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C76CC */ rbrew_write16(cpu->mem, _t72, (uint16_t)cpu->r[28]);
|
|
/* 024C76D0 */ cpu->r[6] = cpu->r[6] + 0xFFFF8D08u;
|
|
/* 024C76D4 */ _t73 = cpu->r[1] + 0x00000016u;
|
|
/* 024C76D4 */ rbrew_write16(cpu->mem, _t73, (uint16_t)cpu->r[0]);
|
|
/* 024C76D8 */ _t74 = cpu->r[1] + 0x00000014u;
|
|
/* 024C76D8 */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[28]);
|
|
/* 024C76DC */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C76E0 */ _t75 = cpu->r[1] + 0x00000026u;
|
|
/* 024C76E0 */ rbrew_write16(cpu->mem, _t75, (uint16_t)cpu->r[28]);
|
|
/* 024C76E4 */ cpu->r[11] = cpu->r[11] + 0xFFFF8CF4u;
|
|
/* 024C76E8 */ _t76 = cpu->r[1] + 0x00000018u;
|
|
/* 024C76E8 */ rbrew_write32(cpu->mem, _t76, cpu->r[6]);
|
|
/* 024C76EC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C76F0 */ _t77 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C76F0 */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[0]);
|
|
/* 024C76F4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C76F8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C76FC */ _t78 = cpu->r[1] + 0x00000020u;
|
|
/* 024C76FC */ rbrew_write32(cpu->mem, _t78, cpu->r[11]);
|
|
/* 024C7700 */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C7704 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7708 */ _t79 = cpu->r[1] + 0x00000028u;
|
|
/* 024C7708 */ rbrew_write32(cpu->mem, _t79, cpu->r[28]);
|
|
/* 024C770C */ Gambit_fn_024C9740(cpu);
|
|
/* 024C7710 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C7714 */ _t80 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7714 */ rbrew_write32(cpu->mem, _t80, cpu->r[26]);
|
|
/* 024C7718 */ cpu->r[10] = cpu->r[10] + 0x0000521Cu;
|
|
/* 024C771C */ _t81 = cpu->r[27] + 0x00000518u;
|
|
/* 024C771C */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 024C7720 */ _t82 = cpu->r[27] + 0x0000051Cu;
|
|
/* 024C7720 */ cpu->r[29] = rbrew_read32(cpu->mem, _t82);
|
|
/* 024C7724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000002u);
|
|
/* 024C7728 */ _t83 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7728 */ rbrew_write32(cpu->mem, _t83, cpu->r[10]);
|
|
/* 024C772C */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C772C */ _t85 = _t84 & 0x00000001u;
|
|
/* 024C772C */ if (_t85) goto L_024C7730; else goto L_024C7734;
|
|
L_024C7730: ; // 0x24c7730
|
|
/* 024C7730 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_024C7734: ; // 0x24c7734
|
|
/* 024C7734 */ cpu->ctr = cpu->r[25];
|
|
/* 024C7738 */ _t86 = cpu->r[29] + 0x00000000u;
|
|
/* 024C7738 */ cpu->r[24] = rbrew_read32(cpu->mem, _t86);
|
|
/* 024C773C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7744 */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024C7748 */ _t88 = cpu->r[12] + 0x00000000u;
|
|
/* 024C7748 */ cpu->r[5] = rbrew_read8(cpu->mem, _t88);
|
|
/* 024C774C */ cpu->r[31] = 0x00000000u;
|
|
/* 024C7750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 024C7754 */ cpu->r[0] = 0x00080000u;
|
|
/* 024C7758 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7758 */ _t90 = _t89 & 0x00000001u;
|
|
/* 024C7758 */ if (_t90) goto L_024C7780; else goto L_024C775C;
|
|
L_024C775C: ; // 0x24c775c
|
|
/* 024C775C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C7760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 024C7764 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C7768 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C7768 */ _t92 = _t91 & 0x00000001u;
|
|
/* 024C7768 */ if (_t92) goto L_024C777C; else goto L_024C776C;
|
|
L_024C776C: ; // 0x24c776c
|
|
/* 024C776C */ _t93 = cpu->r[12] + 0x00000000u;
|
|
/* 024C776C */ cpu->r[6] = rbrew_read8(cpu->mem, _t93);
|
|
/* 024C7770 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 024C7774 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7774 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024C7774 */ if (_t95) goto L_024C7778; else goto L_024C775C;
|
|
L_024C7778: ; // 0x24c7778
|
|
/* 024C7778 */ goto L_024C7780;
|
|
L_024C777C: ; // 0x24c777c
|
|
/* 024C777C */ cpu->r[31] = 0x00000000u;
|
|
L_024C7780: ; // 0x24c7780
|
|
/* 024C7780 */ _t96 = cpu->r[29] + 0x00000008u;
|
|
/* 024C7780 */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024C7784 */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7784 */ cpu->r[8] = rbrew_read32(cpu->mem, _t97);
|
|
/* 024C7788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 024C778C */ _t98 = cpu->r[8] + 0x00000014u;
|
|
/* 024C778C */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 024C7790 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C7790 */ _t100 = _t99 & 0x00000001u;
|
|
/* 024C7790 */ if (_t100) goto L_024C7798; else goto L_024C7794;
|
|
L_024C7794: ; // 0x24c7794
|
|
/* 024C7794 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_024C7798: ; // 0x24c7798
|
|
/* 024C7798 */ cpu->ctr = cpu->r[0];
|
|
/* 024C779C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C77A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C77A4 */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C77A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t101);
|
|
/* 024C77A8 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C77AC */ cpu->r[5] = cpu->r[31];
|
|
/* 024C77B0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C77B4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C77B8 */ _t102 = cpu->r[24] + cpu->r[31];
|
|
/* 024C77B8 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[30]);
|
|
/* 024C77BC */ cpu->r[10] = 0x00000002u;
|
|
/* 024C77C0 */ _t103 = cpu->r[1] + 0x00000028u;
|
|
/* 024C77C0 */ rbrew_write32(cpu->mem, _t103, cpu->r[28]);
|
|
/* 024C77C4 */ cpu->r[12] = 0x024D0000u;
|
|
/* 024C77C8 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 024C77C8 */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[10]);
|
|
/* 024C77CC */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 024C77D0 */ _t105 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C77D0 */ rbrew_write16(cpu->mem, _t105, (uint16_t)cpu->r[28]);
|
|
/* 024C77D4 */ cpu->r[8] = 0x024D0000u;
|
|
/* 024C77D8 */ _t106 = cpu->r[1] + 0x00000024u;
|
|
/* 024C77D8 */ rbrew_write16(cpu->mem, _t106, (uint16_t)cpu->r[28]);
|
|
/* 024C77DC */ _t107 = cpu->r[1] + 0x00000026u;
|
|
/* 024C77DC */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[28]);
|
|
/* 024C77E0 */ cpu->r[12] = cpu->r[12] + 0xFFFF8D68u;
|
|
/* 024C77E4 */ _t108 = cpu->r[1] + 0x00000016u;
|
|
/* 024C77E4 */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[10]);
|
|
/* 024C77E8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C77EC */ _t109 = cpu->r[1] + 0x00000020u;
|
|
/* 024C77EC */ rbrew_write32(cpu->mem, _t109, cpu->r[12]);
|
|
/* 024C77F0 */ cpu->r[8] = cpu->r[8] + 0xFFFF8DBCu;
|
|
/* 024C77F4 */ _t110 = cpu->r[1] + 0x00000014u;
|
|
/* 024C77F4 */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[28]);
|
|
/* 024C77F8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C77FC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C7800 */ _t111 = cpu->r[1] + 0x00000018u;
|
|
/* 024C7800 */ rbrew_write32(cpu->mem, _t111, cpu->r[8]);
|
|
/* 024C7804 */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C7808 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C780C */ _t112 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C780C */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[10]);
|
|
/* 024C7810 */ Gambit_fn_024C9740(cpu);
|
|
/* 024C7814 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C7818 */ _t113 = cpu->r[27] + 0x00000518u;
|
|
/* 024C7818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 024C781C */ cpu->r[9] = cpu->r[9] + 0x00005230u;
|
|
/* 024C7820 */ _t114 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7820 */ rbrew_write32(cpu->mem, _t114, cpu->r[26]);
|
|
/* 024C7824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024C7828 */ _t115 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7828 */ rbrew_write32(cpu->mem, _t115, cpu->r[9]);
|
|
/* 024C782C */ _t116 = cpu->r[27] + 0x0000051Cu;
|
|
/* 024C782C */ cpu->r[31] = rbrew_read32(cpu->mem, _t116);
|
|
/* 024C7830 */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C7830 */ _t118 = _t117 & 0x00000001u;
|
|
/* 024C7830 */ if (_t118) goto L_024C7834; else goto L_024C7838;
|
|
L_024C7834: ; // 0x24c7834
|
|
/* 024C7834 */ cpu->r[31] = cpu->r[31] + 0x0000006Cu;
|
|
L_024C7838: ; // 0x24c7838
|
|
/* 024C7838 */ cpu->ctr = cpu->r[25];
|
|
/* 024C783C */ _t119 = cpu->r[31] + 0x00000000u;
|
|
/* 024C783C */ cpu->r[24] = rbrew_read32(cpu->mem, _t119);
|
|
/* 024C7840 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7844 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7848 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7848 */ cpu->r[8] = rbrew_read32(cpu->mem, _t120);
|
|
/* 024C784C */ _t121 = cpu->r[8] + 0x00000000u;
|
|
/* 024C784C */ cpu->r[5] = rbrew_read8(cpu->mem, _t121);
|
|
/* 024C7850 */ cpu->r[9] = 0x00080000u;
|
|
/* 024C7854 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 024C7858 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C785C */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C785C */ _t123 = _t122 & 0x00000001u;
|
|
/* 024C785C */ if (_t123) goto L_024C7884; else goto L_024C7860;
|
|
L_024C7860: ; // 0x24c7860
|
|
/* 024C7860 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 024C7864 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 024C7868 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024C786C */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C786C */ _t125 = _t124 & 0x00000001u;
|
|
/* 024C786C */ if (_t125) goto L_024C7880; else goto L_024C7870;
|
|
L_024C7870: ; // 0x24c7870
|
|
/* 024C7870 */ _t126 = cpu->r[8] + 0x00000000u;
|
|
/* 024C7870 */ cpu->r[7] = rbrew_read8(cpu->mem, _t126);
|
|
/* 024C7874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 024C7878 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7878 */ _t128 = _t127 & 0x00000001u;
|
|
/* 024C7878 */ if (_t128) goto L_024C787C; else goto L_024C7860;
|
|
L_024C787C: ; // 0x24c787c
|
|
/* 024C787C */ goto L_024C7884;
|
|
L_024C7880: ; // 0x24c7880
|
|
/* 024C7880 */ cpu->r[29] = 0x00000000u;
|
|
L_024C7884: ; // 0x24c7884
|
|
/* 024C7884 */ _t129 = cpu->r[31] + 0x00000008u;
|
|
/* 024C7884 */ cpu->r[8] = rbrew_read32(cpu->mem, _t129);
|
|
/* 024C7888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]);
|
|
/* 024C788C */ _t130 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C788C */ _t131 = _t130 & 0x00000001u;
|
|
/* 024C788C */ if (_t131) goto L_024C7894; else goto L_024C7890;
|
|
L_024C7890: ; // 0x24c7890
|
|
/* 024C7890 */ cpu->r[29] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_024C7894: ; // 0x24c7894
|
|
/* 024C7894 */ _t132 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7894 */ cpu->r[9] = rbrew_read32(cpu->mem, _t132);
|
|
/* 024C7898 */ _t133 = cpu->r[9] + 0x00000014u;
|
|
/* 024C7898 */ cpu->r[10] = rbrew_read32(cpu->mem, _t133);
|
|
/* 024C789C */ cpu->ctr = cpu->r[10];
|
|
/* 024C78A0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C78A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C78A8 */ _t134 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C78A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t134);
|
|
/* 024C78AC */ cpu->r[3] = cpu->r[24];
|
|
/* 024C78B0 */ cpu->r[5] = cpu->r[29];
|
|
/* 024C78B4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C78B8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C78BC */ _t135 = cpu->r[24] + cpu->r[29];
|
|
/* 024C78BC */ rbrew_write8(cpu->mem, _t135, (uint8_t)cpu->r[30]);
|
|
/* 024C78C0 */ cpu->r[31] = 0x00000003u;
|
|
/* 024C78C4 */ _t136 = cpu->r[1] + 0x00000028u;
|
|
/* 024C78C4 */ rbrew_write32(cpu->mem, _t136, cpu->r[28]);
|
|
/* 024C78C8 */ cpu->r[0] = 0x024D0000u;
|
|
/* 024C78CC */ _t137 = cpu->r[1] + 0x00000014u;
|
|
/* 024C78CC */ rbrew_write16(cpu->mem, _t137, (uint16_t)cpu->r[28]);
|
|
/* 024C78D0 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 024C78D4 */ _t138 = cpu->r[1] + 0x00000026u;
|
|
/* 024C78D4 */ rbrew_write16(cpu->mem, _t138, (uint16_t)cpu->r[28]);
|
|
/* 024C78D8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9330u;
|
|
/* 024C78DC */ _t139 = cpu->r[1] + 0x00000024u;
|
|
/* 024C78DC */ rbrew_write16(cpu->mem, _t139, (uint16_t)cpu->r[28]);
|
|
/* 024C78E0 */ cpu->r[3] = cpu->r[27] + 0x00000504u;
|
|
/* 024C78E4 */ _t140 = cpu->r[1] + 0x00000016u;
|
|
/* 024C78E4 */ rbrew_write16(cpu->mem, _t140, (uint16_t)cpu->r[5]);
|
|
/* 024C78E8 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C78EC */ _t141 = cpu->r[1] + 0x00000018u;
|
|
/* 024C78EC */ rbrew_write32(cpu->mem, _t141, cpu->r[0]);
|
|
/* 024C78F0 */ cpu->r[11] = cpu->r[11] + 0xFFFF8DFCu;
|
|
/* 024C78F4 */ _t142 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C78F4 */ rbrew_write16(cpu->mem, _t142, (uint16_t)cpu->r[5]);
|
|
/* 024C78F8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C78FC */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 024C78FC */ rbrew_write32(cpu->mem, _t143, cpu->r[11]);
|
|
/* 024C7900 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7904 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C7908 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7908 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[28]);
|
|
/* 024C790C */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C7910 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7910 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[31]);
|
|
/* 024C7914 */ Gambit_fn_024C9740(cpu);
|
|
/* 024C7918 */ cpu->r[3] = cpu->r[27];
|
|
/* 024C791C */ Gambit_fn_024C728C(cpu);
|
|
/* 024C7920 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7924 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C7928 */ cpu->r[5] = cpu->r[3];
|
|
/* 024C792C */ Gambit_fn_02398200(cpu);
|
|
/* 024C7930 */ _t146 = cpu->r[27] + 0x00000008u;
|
|
/* 024C7930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 024C7934 */ _t147 = cpu->r[27] + 0x0000053Cu;
|
|
/* 024C7934 */ rbrew_write32(cpu->mem, _t147, cpu->r[3]);
|
|
/* 024C7938 */ _t148 = cpu->r[3] + 0x00000014u;
|
|
/* 024C7938 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]);
|
|
/* 024C793C */ _t149 = cpu->r[27] + 0x0000053Cu;
|
|
/* 024C793C */ cpu->r[3] = rbrew_read32(cpu->mem, _t149);
|
|
/* 024C7940 */ cpu->r[4] = 0x00000002u;
|
|
/* 024C7944 */ Gambit_fn_023982F0(cpu);
|
|
/* 024C7948 */ _t150 = cpu->r[27] + 0x0000053Cu;
|
|
/* 024C7948 */ cpu->r[3] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024C794C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C7950 */ Gambit_fn_02398484(cpu);
|
|
/* 024C7954 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C7958 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C795C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C795C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C7960 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7960 */ _t152 = _t151 & 0x00000001u;
|
|
/* 024C7960 */ if (_t152) goto L_024C7990; else goto L_024C7964;
|
|
L_024C7964: ; // 0x24c7964
|
|
/* 024C7964 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7968 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 024C796C */ Gambit_fn_02C89380(cpu);
|
|
/* 024C7970 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7974 */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7974 */ _t154 = _t153 & 0x00000001u;
|
|
/* 024C7974 */ if (_t154) goto L_024C7978; else goto L_024C7988;
|
|
L_024C7978: ; // 0x24c7978
|
|
/* 024C7978 */ cpu->r[3] = 0x00000008u;
|
|
/* 024C797C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C7980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7984 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7984 */ _t156 = _t155 & 0x00000001u;
|
|
/* 024C7984 */ if (_t156) goto L_024C7990; else goto L_024C7988;
|
|
L_024C7988: ; // 0x24c7988
|
|
/* 024C7988 */ _t157 = cpu->r[3] + 0x00000004u;
|
|
/* 024C7988 */ rbrew_write32(cpu->mem, _t157, cpu->r[28]);
|
|
/* 024C798C */ _t158 = cpu->r[3] + 0x00000000u;
|
|
/* 024C798C */ rbrew_write32(cpu->mem, _t158, cpu->r[28]);
|
|
L_024C7990: ; // 0x24c7990
|
|
/* 024C7990 */ _t159 = cpu->r[27] + 0x00000050u;
|
|
/* 024C7990 */ cpu->r[4] = rbrew_read32(cpu->mem, _t159);
|
|
/* 024C7994 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7998 */ _t160 = cpu->r[27] + 0x00000548u;
|
|
/* 024C7998 */ rbrew_write32(cpu->mem, _t160, cpu->r[31]);
|
|
/* 024C799C */ Gambit_fn_024F212C(cpu);
|
|
/* 024C79A0 */ _t161 = cpu->r[27] + 0x00000004u;
|
|
/* 024C79A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t161);
|
|
/* 024C79A4 */ _t162 = cpu->r[8] + 0x00000234u;
|
|
/* 024C79A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 024C79A8 */ cpu->ctr = cpu->r[10];
|
|
/* 024C79AC */ cpu->r[3] = cpu->r[27];
|
|
/* 024C79B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C79B4 */ cpu->r[5] = 0x00000000u;
|
|
/* 024C79B8 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C79BC */ _t163 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C79BC */ rbrew_write32(cpu->mem, _t163, cpu->r[3]);
|
|
/* 024C79C0 */ cpu->r[6] = cpu->r[5];
|
|
/* 024C79C4 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C79C8 */ _t164 = cpu->r[1] + 0x00000030u;
|
|
/* 024C79C8 */ rbrew_write32(cpu->mem, _t164, cpu->r[26]);
|
|
/* 024C79CC */ Gambit_fn_027C6980(cpu);
|
|
/* 024C79D0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C79D4 */ _t165 = cpu->r[1] + 0x00000038u;
|
|
/* 024C79D4 */ rbrew_write32(cpu->mem, _t165, cpu->r[26]);
|
|
/* 024C79D8 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024C79DC */ cpu->r[0] = cpu->r[0] + 0x000051F0u;
|
|
/* 024C79E0 */ cpu->r[5] = 0x00000000u;
|
|
/* 024C79E4 */ cpu->r[3] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C79E8 */ _t166 = cpu->r[1] + 0x00000034u;
|
|
/* 024C79E8 */ rbrew_write32(cpu->mem, _t166, cpu->r[0]);
|
|
/* 024C79EC */ Gambit_fn_027C6C00(cpu);
|
|
/* 024C79F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C79F4 */ cpu->r[4] = cpu->r[27];
|
|
/* 024C79F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C79FC */ Gambit_fn_024F7A74(cpu);
|
|
/* 024C7A00 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C7A04 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C7A08 */ cpu->r[5] = cpu->r[5] + 0x00005200u;
|
|
/* 024C7A0C */ _t167 = cpu->r[27] + 0x00000554u;
|
|
/* 024C7A0C */ rbrew_write32(cpu->mem, _t167, cpu->r[3]);
|
|
/* 024C7A10 */ Gambit_fn_0204049C(cpu);
|
|
/* 024C7A14 */ /* nop */
|
|
/* 024C7A18 */ _t168 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C7A18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t168);
|
|
/* 024C7A1C */ cpu->lr = cpu->r[0];
|
|
/* 024C7A20 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024C7A24 */ return;
|
|
}
|
|
|
|
// fn_024C7A28 @ 0x24c7a28
|
|
void Gambit_fn_024C7A28(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;
|
|
|
|
L_024C7A28: ; // 0x24c7a28
|
|
/* 024C7A28 */ cpu->r[0] = cpu->lr;
|
|
/* 024C7A2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C7A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7A2C */ cpu->r[1] = _t0;
|
|
/* 024C7A30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C7A34 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C7A38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7A38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C7A3C */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C7A40 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 024C7A40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C7A44 */ _t5 = cpu->r[9] + 0x0000002Cu;
|
|
/* 024C7A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C7A48 */ cpu->ctr = cpu->r[0];
|
|
/* 024C7A4C */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 024C7A50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7A54 */ _t6 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7A58 */ _t7 = cpu->r[3] + 0x000001CCu;
|
|
/* 024C7A58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7A5C */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 024C7A5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C7A60 */ cpu->ctr = cpu->r[8];
|
|
/* 024C7A64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7A68 */ _t9 = cpu->r[31] + 0x00000054u;
|
|
/* 024C7A68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C7A6C */ _t10 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7A70 */ _t11 = cpu->r[11] + 0x000001ECu;
|
|
/* 024C7A70 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 024C7A74 */ _t12 = cpu->r[31] + 0x00000058u;
|
|
/* 024C7A74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C7A78 */ _t13 = cpu->r[11] + 0x000001F0u;
|
|
/* 024C7A78 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 024C7A7C */ _t14 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024C7A7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C7A80 */ _t15 = cpu->r[11] + 0x000001F4u;
|
|
/* 024C7A80 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C7A84 */ _t16 = cpu->r[31] + 0x00000060u;
|
|
/* 024C7A84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C7A88 */ _t17 = cpu->r[11] + 0x000001F8u;
|
|
/* 024C7A88 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024C7A8C */ _t18 = cpu->r[31] + 0x00000064u;
|
|
/* 024C7A8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C7A90 */ _t19 = cpu->r[11] + 0x000001FCu;
|
|
/* 024C7A90 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024C7A94 */ _t20 = cpu->r[31] + 0x00000068u;
|
|
/* 024C7A94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C7A98 */ _t21 = cpu->r[11] + 0x00000200u;
|
|
/* 024C7A98 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 024C7A9C */ _t22 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024C7A9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024C7AA0 */ _t23 = cpu->r[11] + 0x00000204u;
|
|
/* 024C7AA0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 024C7AA4 */ _t24 = cpu->r[31] + 0x00000070u;
|
|
/* 024C7AA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024C7AA8 */ _t25 = cpu->r[11] + 0x00000208u;
|
|
/* 024C7AA8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024C7AAC */ _t26 = cpu->r[31] + 0x00000074u;
|
|
/* 024C7AAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C7AB0 */ _t27 = cpu->r[11] + 0x0000020Cu;
|
|
/* 024C7AB0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 024C7AB4 */ _t28 = cpu->r[31] + 0x00000078u;
|
|
/* 024C7AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C7AB8 */ _t29 = cpu->r[11] + 0x00000210u;
|
|
/* 024C7AB8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 024C7ABC */ _t30 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C7ABC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 024C7AC0 */ _t31 = cpu->r[11] + 0x00000214u;
|
|
/* 024C7AC0 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 024C7AC4 */ _t32 = cpu->r[31] + 0x00000080u;
|
|
/* 024C7AC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024C7AC8 */ _t33 = cpu->r[11] + 0x00000218u;
|
|
/* 024C7AC8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 024C7ACC */ _t34 = cpu->r[31] + 0x00000084u;
|
|
/* 024C7ACC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 024C7AD0 */ _t35 = cpu->r[11] + 0x0000021Cu;
|
|
/* 024C7AD0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 024C7AD4 */ _t36 = cpu->r[31] + 0x00000088u;
|
|
/* 024C7AD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024C7AD8 */ _t37 = cpu->r[11] + 0x00000220u;
|
|
/* 024C7AD8 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 024C7ADC */ _t38 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024C7ADC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 024C7AE0 */ _t39 = cpu->r[11] + 0x00000224u;
|
|
/* 024C7AE0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 024C7AE4 */ _t40 = cpu->r[31] + 0x00000090u;
|
|
/* 024C7AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 024C7AE8 */ _t41 = cpu->r[11] + 0x00000228u;
|
|
/* 024C7AE8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 024C7AEC */ _t42 = cpu->r[31] + 0x00000094u;
|
|
/* 024C7AEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 024C7AF0 */ _t43 = cpu->r[11] + 0x0000022Cu;
|
|
/* 024C7AF0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 024C7AF4 */ _t44 = cpu->r[31] + 0x00000098u;
|
|
/* 024C7AF4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 024C7AF8 */ _t45 = cpu->r[11] + 0x00000230u;
|
|
/* 024C7AF8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 024C7AFC */ _t46 = cpu->r[31] + 0x0000009Cu;
|
|
/* 024C7AFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 024C7B00 */ _t47 = cpu->r[11] + 0x00000234u;
|
|
/* 024C7B00 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 024C7B04 */ _t48 = cpu->r[31] + 0x000000A0u;
|
|
/* 024C7B04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 024C7B08 */ _t49 = cpu->r[11] + 0x00000238u;
|
|
/* 024C7B08 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 024C7B0C */ _t50 = cpu->r[31] + 0x000000A4u;
|
|
/* 024C7B0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 024C7B10 */ _t51 = cpu->r[11] + 0x0000023Cu;
|
|
/* 024C7B10 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 024C7B14 */ _t52 = cpu->r[31] + 0x000000A8u;
|
|
/* 024C7B14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024C7B18 */ _t53 = cpu->r[11] + 0x00000240u;
|
|
/* 024C7B18 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 024C7B1C */ _t54 = cpu->r[31] + 0x000000ACu;
|
|
/* 024C7B1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 024C7B20 */ _t55 = cpu->r[11] + 0x00000244u;
|
|
/* 024C7B20 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 024C7B24 */ _t56 = cpu->r[31] + 0x000000B0u;
|
|
/* 024C7B24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024C7B28 */ _t57 = cpu->r[11] + 0x00000248u;
|
|
/* 024C7B28 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 024C7B2C */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C7B30 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C7B34 */ cpu->lr = cpu->r[0];
|
|
/* 024C7B38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7B3C */ return;
|
|
}
|
|
|
|
// fn_024C7A2C @ 0x24c7a2c
|
|
void Gambit_fn_024C7A2C(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;
|
|
|
|
L_024C7A2C: ; // 0x24c7a2c
|
|
/* 024C7A2C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C7A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7A2C */ cpu->r[1] = _t0;
|
|
/* 024C7A30 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7A30 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C7A34 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C7A38 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7A38 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C7A3C */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C7A40 */ _t4 = cpu->r[3] + 0x000001CCu;
|
|
/* 024C7A40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C7A44 */ _t5 = cpu->r[9] + 0x0000002Cu;
|
|
/* 024C7A44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C7A48 */ cpu->ctr = cpu->r[0];
|
|
/* 024C7A4C */ cpu->r[4] = cpu->r[31] + 0x00000054u;
|
|
/* 024C7A50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7A54 */ _t6 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7A58 */ _t7 = cpu->r[3] + 0x000001CCu;
|
|
/* 024C7A58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7A5C */ _t8 = cpu->r[12] + 0x00000024u;
|
|
/* 024C7A5C */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C7A60 */ cpu->ctr = cpu->r[8];
|
|
/* 024C7A64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7A68 */ _t9 = cpu->r[31] + 0x00000054u;
|
|
/* 024C7A68 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C7A6C */ _t10 = cpu->r[31] + 0x00000554u;
|
|
/* 024C7A6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7A70 */ _t11 = cpu->r[11] + 0x000001ECu;
|
|
/* 024C7A70 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[0]);
|
|
/* 024C7A74 */ _t12 = cpu->r[31] + 0x00000058u;
|
|
/* 024C7A74 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C7A78 */ _t13 = cpu->r[11] + 0x000001F0u;
|
|
/* 024C7A78 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 024C7A7C */ _t14 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024C7A7C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C7A80 */ _t15 = cpu->r[11] + 0x000001F4u;
|
|
/* 024C7A80 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C7A84 */ _t16 = cpu->r[31] + 0x00000060u;
|
|
/* 024C7A84 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C7A88 */ _t17 = cpu->r[11] + 0x000001F8u;
|
|
/* 024C7A88 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024C7A8C */ _t18 = cpu->r[31] + 0x00000064u;
|
|
/* 024C7A8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C7A90 */ _t19 = cpu->r[11] + 0x000001FCu;
|
|
/* 024C7A90 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024C7A94 */ _t20 = cpu->r[31] + 0x00000068u;
|
|
/* 024C7A94 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C7A98 */ _t21 = cpu->r[11] + 0x00000200u;
|
|
/* 024C7A98 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[0]);
|
|
/* 024C7A9C */ _t22 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024C7A9C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024C7AA0 */ _t23 = cpu->r[11] + 0x00000204u;
|
|
/* 024C7AA0 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[0]);
|
|
/* 024C7AA4 */ _t24 = cpu->r[31] + 0x00000070u;
|
|
/* 024C7AA4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024C7AA8 */ _t25 = cpu->r[11] + 0x00000208u;
|
|
/* 024C7AA8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024C7AAC */ _t26 = cpu->r[31] + 0x00000074u;
|
|
/* 024C7AAC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C7AB0 */ _t27 = cpu->r[11] + 0x0000020Cu;
|
|
/* 024C7AB0 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]);
|
|
/* 024C7AB4 */ _t28 = cpu->r[31] + 0x00000078u;
|
|
/* 024C7AB4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C7AB8 */ _t29 = cpu->r[11] + 0x00000210u;
|
|
/* 024C7AB8 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[0]);
|
|
/* 024C7ABC */ _t30 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C7ABC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 024C7AC0 */ _t31 = cpu->r[11] + 0x00000214u;
|
|
/* 024C7AC0 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[0]);
|
|
/* 024C7AC4 */ _t32 = cpu->r[31] + 0x00000080u;
|
|
/* 024C7AC4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024C7AC8 */ _t33 = cpu->r[11] + 0x00000218u;
|
|
/* 024C7AC8 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[0]);
|
|
/* 024C7ACC */ _t34 = cpu->r[31] + 0x00000084u;
|
|
/* 024C7ACC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 024C7AD0 */ _t35 = cpu->r[11] + 0x0000021Cu;
|
|
/* 024C7AD0 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 024C7AD4 */ _t36 = cpu->r[31] + 0x00000088u;
|
|
/* 024C7AD4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024C7AD8 */ _t37 = cpu->r[11] + 0x00000220u;
|
|
/* 024C7AD8 */ rbrew_write_f32(cpu->mem, _t37, cpu->f[0]);
|
|
/* 024C7ADC */ _t38 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024C7ADC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 024C7AE0 */ _t39 = cpu->r[11] + 0x00000224u;
|
|
/* 024C7AE0 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 024C7AE4 */ _t40 = cpu->r[31] + 0x00000090u;
|
|
/* 024C7AE4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 024C7AE8 */ _t41 = cpu->r[11] + 0x00000228u;
|
|
/* 024C7AE8 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[0]);
|
|
/* 024C7AEC */ _t42 = cpu->r[31] + 0x00000094u;
|
|
/* 024C7AEC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 024C7AF0 */ _t43 = cpu->r[11] + 0x0000022Cu;
|
|
/* 024C7AF0 */ rbrew_write_f32(cpu->mem, _t43, cpu->f[0]);
|
|
/* 024C7AF4 */ _t44 = cpu->r[31] + 0x00000098u;
|
|
/* 024C7AF4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 024C7AF8 */ _t45 = cpu->r[11] + 0x00000230u;
|
|
/* 024C7AF8 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 024C7AFC */ _t46 = cpu->r[31] + 0x0000009Cu;
|
|
/* 024C7AFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t46);
|
|
/* 024C7B00 */ _t47 = cpu->r[11] + 0x00000234u;
|
|
/* 024C7B00 */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
/* 024C7B04 */ _t48 = cpu->r[31] + 0x000000A0u;
|
|
/* 024C7B04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t48);
|
|
/* 024C7B08 */ _t49 = cpu->r[11] + 0x00000238u;
|
|
/* 024C7B08 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[0]);
|
|
/* 024C7B0C */ _t50 = cpu->r[31] + 0x000000A4u;
|
|
/* 024C7B0C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 024C7B10 */ _t51 = cpu->r[11] + 0x0000023Cu;
|
|
/* 024C7B10 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[0]);
|
|
/* 024C7B14 */ _t52 = cpu->r[31] + 0x000000A8u;
|
|
/* 024C7B14 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024C7B18 */ _t53 = cpu->r[11] + 0x00000240u;
|
|
/* 024C7B18 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[0]);
|
|
/* 024C7B1C */ _t54 = cpu->r[31] + 0x000000ACu;
|
|
/* 024C7B1C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 024C7B20 */ _t55 = cpu->r[11] + 0x00000244u;
|
|
/* 024C7B20 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 024C7B24 */ _t56 = cpu->r[31] + 0x000000B0u;
|
|
/* 024C7B24 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024C7B28 */ _t57 = cpu->r[11] + 0x00000248u;
|
|
/* 024C7B28 */ rbrew_write_f32(cpu->mem, _t57, cpu->f[0]);
|
|
/* 024C7B2C */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C7B30 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C7B34 */ cpu->lr = cpu->r[0];
|
|
/* 024C7B38 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7B3C */ return;
|
|
}
|
|
|
|
// fn_024C7B40 @ 0x24c7b40
|
|
void Gambit_fn_024C7B40(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C7B40: ; // 0x24c7b40
|
|
/* 024C7B40 */ _t0 = cpu->r[3] + 0x00000540u;
|
|
/* 024C7B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C7B44 */ cpu->r[0] = cpu->r[0] ^ 0x00000005u;
|
|
/* 024C7B48 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024C7B4C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024C7B50 */ return;
|
|
}
|
|
|
|
// fn_024C7B54 @ 0x24c7b54
|
|
void Gambit_fn_024C7B54(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;
|
|
|
|
L_024C7B54: ; // 0x24c7b54
|
|
/* 024C7B54 */ cpu->r[0] = cpu->lr;
|
|
/* 024C7B58 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 024C7B58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7B58 */ cpu->r[1] = _t0;
|
|
/* 024C7B5C */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 024C7B5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C7B60 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C7B64 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 024C7B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024C7B68 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 024C7B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024C7B6C */ _t4 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024C7B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024C7B70 */ _t5 = cpu->r[1] + 0x00000094u;
|
|
/* 024C7B70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C7B74 */ Gambit_fn_024ECD84(cpu);
|
|
/* 024C7B78 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C7B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C7B7C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7B7C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C7B7C */ if (_t7) goto L_024C7DE0; else goto L_024C7B80;
|
|
L_024C7B80: ; // 0x24c7b80
|
|
/* 024C7B80 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C7B84 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C7B88 */ cpu->r[12] = cpu->r[12] + 0x00005044u;
|
|
/* 024C7B8C */ cpu->r[0] = cpu->r[0] + 0x0000523Cu;
|
|
/* 024C7B90 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C7B90 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 024C7B94 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 024C7B94 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C7B98 */ _t10 = cpu->r[29] + 0x00000008u;
|
|
/* 024C7B98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7B9C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 024C7BA0 */ Gambit_fn_029807A8(cpu);
|
|
/* 024C7BA4 */ /* nop */
|
|
/* 024C7BA8 */ /* nop */
|
|
/* 024C7BAC */ /* nop */
|
|
/* 024C7BB0 */ /* nop */
|
|
/* 024C7BB4 */ /* nop */
|
|
/* 024C7BB8 */ /* nop */
|
|
/* 024C7BBC */ /* nop */
|
|
/* 024C7BC0 */ cpu->f[4] = cpu->f[0];
|
|
/* 024C7BC4 */ /* nop */
|
|
/* 024C7BC8 */ cpu->f[5] = cpu->f[12];
|
|
/* 024C7BCC */ /* nop */
|
|
/* 024C7BD0 */ /* nop */
|
|
/* 024C7BD4 */ /* nop */
|
|
/* 024C7BD8 */ cpu->f[0] = cpu->f[12];
|
|
/* 024C7BDC */ _t11 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7BDC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C7BE0 */ /* nop */
|
|
/* 024C7BE4 */ _t12 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C7BE4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C7BE8 */ /* nop */
|
|
/* 024C7BEC */ _t13 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7BEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C7BF0 */ cpu->f[4] = fma(cpu->f[8], cpu->f[7], cpu->f[4]);
|
|
/* 024C7BF4 */ _t14 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7BF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C7BF8 */ cpu->f[11] = fma(cpu->f[8], cpu->f[11], cpu->f[5]);
|
|
/* 024C7BFC */ cpu->f[0] = fma(cpu->f[8], cpu->f[7], cpu->f[0]);
|
|
/* 024C7C00 */ /* nop */
|
|
/* 024C7C04 */ /* nop */
|
|
/* 024C7C08 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7C08 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C7C0C */ /* nop */
|
|
/* 024C7C10 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7C10 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 024C7C14 */ cpu->f[2] = cpu->f[12];
|
|
/* 024C7C18 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7C18 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[4]);
|
|
/* 024C7C1C */ /* nop */
|
|
/* 024C7C20 */ _t18 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7C20 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C7C24 */ /* nop */
|
|
/* 024C7C28 */ /* nop */
|
|
/* 024C7C2C */ cpu->f[4] = cpu->f[12];
|
|
/* 024C7C30 */ /* nop */
|
|
/* 024C7C34 */ _t19 = cpu->r[30] + 0x00000068u;
|
|
/* 024C7C34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C7C38 */ cpu->f[12] = cpu->f[11];
|
|
/* 024C7C3C */ _t20 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7C3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C7C40 */ cpu->f[3] = fma(cpu->f[0], cpu->f[3], cpu->f[2]);
|
|
/* 024C7C44 */ cpu->f[4] = fma(cpu->f[0], cpu->f[9], cpu->f[4]);
|
|
/* 024C7C48 */ _t21 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7C48 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C7C4C */ /* nop */
|
|
/* 024C7C50 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 024C7C50 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[4]);
|
|
/* 024C7C54 */ cpu->f[0] = fma(cpu->f[0], cpu->f[8], cpu->f[12]);
|
|
/* 024C7C58 */ _t23 = cpu->r[30] + 0x00000074u;
|
|
/* 024C7C58 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024C7C5C */ /* nop */
|
|
/* 024C7C60 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7C60 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[3]);
|
|
/* 024C7C64 */ /* nop */
|
|
/* 024C7C68 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7C68 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024C7C6C */ cpu->f[0] = cpu->f[12];
|
|
/* 024C7C70 */ _t26 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7C70 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C7C74 */ /* nop */
|
|
/* 024C7C78 */ _t27 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7C78 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024C7C7C */ cpu->f[4] = fma(cpu->f[11], cpu->f[9], cpu->f[0]);
|
|
/* 024C7C80 */ _t28 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7C80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C7C84 */ cpu->f[9] = cpu->f[8];
|
|
/* 024C7C88 */ cpu->f[0] = fma(cpu->f[11], cpu->f[0], cpu->f[5]);
|
|
/* 024C7C8C */ /* nop */
|
|
/* 024C7C90 */ cpu->f[7] = fma(cpu->f[11], cpu->f[7], cpu->f[9]);
|
|
/* 024C7C94 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 024C7C94 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[4]);
|
|
/* 024C7C98 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 024C7C98 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 024C7C9C */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 024C7C9C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 024C7CA0 */ /* nop */
|
|
/* 024C7CA4 */ /* nop */
|
|
/* 024C7CA8 */ _t32 = cpu->r[30] + 0x00000080u;
|
|
/* 024C7CA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024C7CAC */ /* nop */
|
|
/* 024C7CB0 */ _t33 = cpu->r[29] + 0x00000080u;
|
|
/* 024C7CB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 024C7CB4 */ /* nop */
|
|
/* 024C7CB8 */ cpu->f[5] = cpu->f[8] - cpu->f[10];
|
|
/* 024C7CBC */ /* nop */
|
|
/* 024C7CC0 */ /* nop */
|
|
/* 024C7CC4 */ /* nop */
|
|
/* 024C7CC8 */ cpu->r[7] = 0x00000003u;
|
|
/* 024C7CCC */ /* nop */
|
|
/* 024C7CD0 */ _t34 = cpu->r[1] + 0x00000078u;
|
|
/* 024C7CD0 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[5]);
|
|
/* 024C7CD4 */ cpu->f[0] = cpu->f[13];
|
|
/* 024C7CD8 */ _t35 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7CD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 024C7CDC */ cpu->f[8] = cpu->f[7];
|
|
/* 024C7CE0 */ _t36 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7CE0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024C7CE4 */ cpu->f[7] = fma(cpu->f[5], cpu->f[13], cpu->f[11]);
|
|
/* 024C7CE8 */ cpu->f[0] = fma(cpu->f[5], cpu->f[9], cpu->f[0]);
|
|
/* 024C7CEC */ _t37 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7CEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024C7CF0 */ cpu->r[12] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C7CF4 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 024C7CF8 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 024C7CF8 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[7]);
|
|
/* 024C7CFC */ cpu->f[10] = fma(cpu->f[5], cpu->f[9], cpu->f[8]);
|
|
/* 024C7D00 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C7D00 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 024C7D04 */ cpu->ctr = cpu->r[7];
|
|
/* 024C7D08 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C7D0C */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 024C7D0C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
L_024C7D10: ; // 0x24c7d10
|
|
/* 024C7D10 */ _t41 = cpu->r[11] + 0x00000004u;
|
|
/* 024C7D10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C7D14 */ _t42 = cpu->r[12] + 0x00000004u;
|
|
/* 024C7D14 */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 024C7D18 */ _t43 = cpu->r[11] + 0x00000008u;
|
|
/* 024C7D18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C7D1C */ _t44 = cpu->r[12] + 0x00000008u;
|
|
/* 024C7D1C */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024C7D20 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024C7D20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024C7D24 */ _t46 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C7D24 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 024C7D28 */ _t47 = cpu->r[11] + 0x00000010u;
|
|
/* 024C7D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C7D28 */ cpu->r[11] = _t47;
|
|
/* 024C7D2C */ _t48 = cpu->r[12] + 0x00000010u;
|
|
/* 024C7D2C */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 024C7D2C */ cpu->r[12] = _t48;
|
|
/* 024C7D30 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C7D30 */ _t49 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C7D30 */ _t50 = _t49 >> (0x00000002u & 31u);
|
|
/* 024C7D30 */ _t51 = _t50 & 0x00000001u;
|
|
/* 024C7D30 */ if (_t51) goto L_024C7D10; else goto L_024C7D34;
|
|
L_024C7D34: ; // 0x24c7d34
|
|
/* 024C7D34 */ _t52 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C7D34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024C7D38 */ _t53 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C7D38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 024C7D3C */ _t54 = cpu->r[30] + 0x00000564u;
|
|
/* 024C7D3C */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 024C7D40 */ _t55 = cpu->r[30] + 0x00000584u;
|
|
/* 024C7D40 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 024C7D44 */ _t56 = cpu->r[1] + 0x00000040u;
|
|
/* 024C7D44 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024C7D48 */ _t57 = cpu->r[1] + 0x00000054u;
|
|
/* 024C7D48 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 024C7D4C */ _t58 = cpu->r[30] + 0x00000558u;
|
|
/* 024C7D4C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[10]);
|
|
/* 024C7D50 */ _t59 = cpu->r[30] + 0x0000056Cu;
|
|
/* 024C7D50 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 024C7D54 */ _t60 = cpu->r[1] + 0x00000050u;
|
|
/* 024C7D54 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 024C7D58 */ _t61 = cpu->r[1] + 0x00000068u;
|
|
/* 024C7D58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 024C7D5C */ _t62 = cpu->r[1] + 0x00000058u;
|
|
/* 024C7D5C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 024C7D60 */ _t63 = cpu->r[30] + 0x00000580u;
|
|
/* 024C7D60 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 024C7D64 */ _t64 = cpu->r[1] + 0x00000044u;
|
|
/* 024C7D64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 024C7D68 */ _t65 = cpu->r[30] + 0x00000568u;
|
|
/* 024C7D68 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[7]);
|
|
/* 024C7D6C */ _t66 = cpu->r[30] + 0x0000055Cu;
|
|
/* 024C7D6C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[11]);
|
|
/* 024C7D70 */ _t67 = cpu->r[1] + 0x00000060u;
|
|
/* 024C7D70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 024C7D74 */ _t68 = cpu->r[30] + 0x00000570u;
|
|
/* 024C7D74 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 024C7D78 */ _t69 = cpu->r[1] + 0x00000048u;
|
|
/* 024C7D78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 024C7D7C */ _t70 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C7D7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 024C7D80 */ _t71 = cpu->r[30] + 0x00000578u;
|
|
/* 024C7D80 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[11]);
|
|
/* 024C7D84 */ _t72 = cpu->r[30] + 0x00000560u;
|
|
/* 024C7D84 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[12]);
|
|
/* 024C7D88 */ _t73 = cpu->r[1] + 0x00000064u;
|
|
/* 024C7D88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 024C7D8C */ _t74 = cpu->r[30] + 0x00000574u;
|
|
/* 024C7D8C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 024C7D90 */ /* nop */
|
|
/* 024C7D94 */ _t75 = cpu->r[30] + 0x0000057Cu;
|
|
/* 024C7D94 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 024C7D98 */ _t76 = cpu->r[29] + 0x00000008u;
|
|
/* 024C7D98 */ cpu->r[29] = rbrew_read32(cpu->mem, _t76);
|
|
/* 024C7D9C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C7DA0 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C7DA4 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 024C7DA8 */ _t77 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C7DA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 024C7DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 024C7DB0 */ cpu->r[11] = 0x00000000u;
|
|
/* 024C7DB4 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C7DB4 */ _t79 = _t78 & 0x00000001u;
|
|
/* 024C7DB4 */ if (_t79) goto L_024C7DB8; else goto L_024C7DC4;
|
|
L_024C7DB8: ; // 0x24c7db8
|
|
/* 024C7DB8 */ _t80 = cpu->r[29] + 0x00000024u;
|
|
/* 024C7DB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024C7DBC */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C7DC0 */ _t81 = cpu->r[12] + cpu->r[7];
|
|
/* 024C7DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
L_024C7DC4: ; // 0x24c7dc4
|
|
/* 024C7DC4 */ _t82 = cpu->r[11] + 0x00000000u;
|
|
/* 024C7DC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t82);
|
|
/* 024C7DC8 */ _t83 = cpu->r[3] + 0x00000088u;
|
|
/* 024C7DC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 024C7DCC */ _t84 = cpu->r[8] + 0x0000007Cu;
|
|
/* 024C7DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 024C7DD0 */ cpu->ctr = cpu->r[0];
|
|
/* 024C7DD4 */ /* nop */
|
|
/* 024C7DD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7DDC */ _t85 = cpu->r[30] + 0x00000588u;
|
|
/* 024C7DDC */ rbrew_write32(cpu->mem, _t85, cpu->r[3]);
|
|
L_024C7DE0: ; // 0x24c7de0
|
|
/* 024C7DE0 */ _t86 = cpu->r[1] + 0x00000080u;
|
|
/* 024C7DE0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t86);
|
|
/* 024C7DE4 */ _t87 = cpu->r[1] + 0x00000084u;
|
|
/* 024C7DE4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024C7DE8 */ _t88 = cpu->r[1] + 0x00000094u;
|
|
/* 024C7DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 024C7DEC */ _t89 = cpu->r[1] + 0x00000088u;
|
|
/* 024C7DEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t89);
|
|
/* 024C7DF0 */ cpu->lr = cpu->r[0];
|
|
/* 024C7DF4 */ _t90 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024C7DF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 024C7DF8 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 024C7DFC */ return;
|
|
}
|
|
|
|
// fn_024C7B58 @ 0x24c7b58
|
|
void Gambit_fn_024C7B58(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;
|
|
|
|
L_024C7B58: ; // 0x24c7b58
|
|
/* 024C7B58 */ _t0 = cpu->r[1] + 0xFFFFFF70u;
|
|
/* 024C7B58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7B58 */ cpu->r[1] = _t0;
|
|
/* 024C7B5C */ _t1 = cpu->r[1] + 0x00000088u;
|
|
/* 024C7B5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C7B60 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C7B64 */ _t2 = cpu->r[1] + 0x00000084u;
|
|
/* 024C7B64 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024C7B68 */ _t3 = cpu->r[1] + 0x00000080u;
|
|
/* 024C7B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024C7B6C */ _t4 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024C7B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024C7B70 */ _t5 = cpu->r[1] + 0x00000094u;
|
|
/* 024C7B70 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C7B74 */ Gambit_fn_024ECD84(cpu);
|
|
/* 024C7B78 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C7B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C7B7C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7B7C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C7B7C */ if (_t7) goto L_024C7DE0; else goto L_024C7B80;
|
|
L_024C7B80: ; // 0x24c7b80
|
|
/* 024C7B80 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C7B84 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C7B88 */ cpu->r[12] = cpu->r[12] + 0x00005044u;
|
|
/* 024C7B8C */ cpu->r[0] = cpu->r[0] + 0x0000523Cu;
|
|
/* 024C7B90 */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C7B90 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 024C7B94 */ _t9 = cpu->r[1] + 0x00000038u;
|
|
/* 024C7B94 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C7B98 */ _t10 = cpu->r[29] + 0x00000008u;
|
|
/* 024C7B98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C7B9C */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 024C7BA0 */ Gambit_fn_029807A8(cpu);
|
|
/* 024C7BA4 */ /* nop */
|
|
/* 024C7BA8 */ /* nop */
|
|
/* 024C7BAC */ /* nop */
|
|
/* 024C7BB0 */ /* nop */
|
|
/* 024C7BB4 */ /* nop */
|
|
/* 024C7BB8 */ /* nop */
|
|
/* 024C7BBC */ /* nop */
|
|
/* 024C7BC0 */ cpu->f[4] = cpu->f[0];
|
|
/* 024C7BC4 */ /* nop */
|
|
/* 024C7BC8 */ cpu->f[5] = cpu->f[12];
|
|
/* 024C7BCC */ /* nop */
|
|
/* 024C7BD0 */ /* nop */
|
|
/* 024C7BD4 */ /* nop */
|
|
/* 024C7BD8 */ cpu->f[0] = cpu->f[12];
|
|
/* 024C7BDC */ _t11 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7BDC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C7BE0 */ /* nop */
|
|
/* 024C7BE4 */ _t12 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C7BE4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C7BE8 */ /* nop */
|
|
/* 024C7BEC */ _t13 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7BEC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C7BF0 */ cpu->f[4] = fma(cpu->f[8], cpu->f[7], cpu->f[4]);
|
|
/* 024C7BF4 */ _t14 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7BF4 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C7BF8 */ cpu->f[11] = fma(cpu->f[8], cpu->f[11], cpu->f[5]);
|
|
/* 024C7BFC */ cpu->f[0] = fma(cpu->f[8], cpu->f[7], cpu->f[0]);
|
|
/* 024C7C00 */ /* nop */
|
|
/* 024C7C04 */ /* nop */
|
|
/* 024C7C08 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 024C7C08 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[0]);
|
|
/* 024C7C0C */ /* nop */
|
|
/* 024C7C10 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7C10 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[11]);
|
|
/* 024C7C14 */ cpu->f[2] = cpu->f[12];
|
|
/* 024C7C18 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7C18 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[4]);
|
|
/* 024C7C1C */ /* nop */
|
|
/* 024C7C20 */ _t18 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7C20 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C7C24 */ /* nop */
|
|
/* 024C7C28 */ /* nop */
|
|
/* 024C7C2C */ cpu->f[4] = cpu->f[12];
|
|
/* 024C7C30 */ /* nop */
|
|
/* 024C7C34 */ _t19 = cpu->r[30] + 0x00000068u;
|
|
/* 024C7C34 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C7C38 */ cpu->f[12] = cpu->f[11];
|
|
/* 024C7C3C */ _t20 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7C3C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024C7C40 */ cpu->f[3] = fma(cpu->f[0], cpu->f[3], cpu->f[2]);
|
|
/* 024C7C44 */ cpu->f[4] = fma(cpu->f[0], cpu->f[9], cpu->f[4]);
|
|
/* 024C7C48 */ _t21 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7C48 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024C7C4C */ /* nop */
|
|
/* 024C7C50 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 024C7C50 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[4]);
|
|
/* 024C7C54 */ cpu->f[0] = fma(cpu->f[0], cpu->f[8], cpu->f[12]);
|
|
/* 024C7C58 */ _t23 = cpu->r[30] + 0x00000074u;
|
|
/* 024C7C58 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024C7C5C */ /* nop */
|
|
/* 024C7C60 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7C60 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[3]);
|
|
/* 024C7C64 */ /* nop */
|
|
/* 024C7C68 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7C68 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024C7C6C */ cpu->f[0] = cpu->f[12];
|
|
/* 024C7C70 */ _t26 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7C70 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C7C74 */ /* nop */
|
|
/* 024C7C78 */ _t27 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7C78 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024C7C7C */ cpu->f[4] = fma(cpu->f[11], cpu->f[9], cpu->f[0]);
|
|
/* 024C7C80 */ _t28 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7C80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C7C84 */ cpu->f[9] = cpu->f[8];
|
|
/* 024C7C88 */ cpu->f[0] = fma(cpu->f[11], cpu->f[0], cpu->f[5]);
|
|
/* 024C7C8C */ /* nop */
|
|
/* 024C7C90 */ cpu->f[7] = fma(cpu->f[11], cpu->f[7], cpu->f[9]);
|
|
/* 024C7C94 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 024C7C94 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[4]);
|
|
/* 024C7C98 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 024C7C98 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 024C7C9C */ _t31 = cpu->r[1] + 0x00000028u;
|
|
/* 024C7C9C */ rbrew_write_f32(cpu->mem, _t31, cpu->f[7]);
|
|
/* 024C7CA0 */ /* nop */
|
|
/* 024C7CA4 */ /* nop */
|
|
/* 024C7CA8 */ _t32 = cpu->r[30] + 0x00000080u;
|
|
/* 024C7CA8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024C7CAC */ /* nop */
|
|
/* 024C7CB0 */ _t33 = cpu->r[29] + 0x00000080u;
|
|
/* 024C7CB0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 024C7CB4 */ /* nop */
|
|
/* 024C7CB8 */ cpu->f[5] = cpu->f[8] - cpu->f[10];
|
|
/* 024C7CBC */ /* nop */
|
|
/* 024C7CC0 */ /* nop */
|
|
/* 024C7CC4 */ /* nop */
|
|
/* 024C7CC8 */ cpu->r[7] = 0x00000003u;
|
|
/* 024C7CCC */ /* nop */
|
|
/* 024C7CD0 */ _t34 = cpu->r[1] + 0x00000078u;
|
|
/* 024C7CD0 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[5]);
|
|
/* 024C7CD4 */ cpu->f[0] = cpu->f[13];
|
|
/* 024C7CD8 */ _t35 = cpu->r[29] + 0x00000068u;
|
|
/* 024C7CD8 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 024C7CDC */ cpu->f[8] = cpu->f[7];
|
|
/* 024C7CE0 */ _t36 = cpu->r[29] + 0x0000005Cu;
|
|
/* 024C7CE0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 024C7CE4 */ cpu->f[7] = fma(cpu->f[5], cpu->f[13], cpu->f[11]);
|
|
/* 024C7CE8 */ cpu->f[0] = fma(cpu->f[5], cpu->f[9], cpu->f[0]);
|
|
/* 024C7CEC */ _t37 = cpu->r[29] + 0x00000074u;
|
|
/* 024C7CEC */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024C7CF0 */ cpu->r[12] = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C7CF4 */ cpu->r[11] = cpu->r[1] + 0x00000004u;
|
|
/* 024C7CF8 */ _t38 = cpu->r[1] + 0x00000030u;
|
|
/* 024C7CF8 */ rbrew_write_f32(cpu->mem, _t38, cpu->f[7]);
|
|
/* 024C7CFC */ cpu->f[10] = fma(cpu->f[5], cpu->f[9], cpu->f[8]);
|
|
/* 024C7D00 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C7D00 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 024C7D04 */ cpu->ctr = cpu->r[7];
|
|
/* 024C7D08 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C7D0C */ _t40 = cpu->r[1] + 0x00000034u;
|
|
/* 024C7D0C */ rbrew_write_f32(cpu->mem, _t40, cpu->f[10]);
|
|
L_024C7D10: ; // 0x24c7d10
|
|
/* 024C7D10 */ _t41 = cpu->r[11] + 0x00000004u;
|
|
/* 024C7D10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C7D14 */ _t42 = cpu->r[12] + 0x00000004u;
|
|
/* 024C7D14 */ rbrew_write32(cpu->mem, _t42, cpu->r[8]);
|
|
/* 024C7D18 */ _t43 = cpu->r[11] + 0x00000008u;
|
|
/* 024C7D18 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024C7D1C */ _t44 = cpu->r[12] + 0x00000008u;
|
|
/* 024C7D1C */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024C7D20 */ _t45 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024C7D20 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024C7D24 */ _t46 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C7D24 */ rbrew_write32(cpu->mem, _t46, cpu->r[10]);
|
|
/* 024C7D28 */ _t47 = cpu->r[11] + 0x00000010u;
|
|
/* 024C7D28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C7D28 */ cpu->r[11] = _t47;
|
|
/* 024C7D2C */ _t48 = cpu->r[12] + 0x00000010u;
|
|
/* 024C7D2C */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 024C7D2C */ cpu->r[12] = _t48;
|
|
/* 024C7D30 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C7D30 */ _t49 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C7D30 */ _t50 = _t49 >> (0x00000002u & 31u);
|
|
/* 024C7D30 */ _t51 = _t50 & 0x00000001u;
|
|
/* 024C7D30 */ if (_t51) goto L_024C7D10; else goto L_024C7D34;
|
|
L_024C7D34: ; // 0x24c7d34
|
|
/* 024C7D34 */ _t52 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C7D34 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024C7D38 */ _t53 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C7D38 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 024C7D3C */ _t54 = cpu->r[30] + 0x00000564u;
|
|
/* 024C7D3C */ rbrew_write_f32(cpu->mem, _t54, cpu->f[13]);
|
|
/* 024C7D40 */ _t55 = cpu->r[30] + 0x00000584u;
|
|
/* 024C7D40 */ rbrew_write_f32(cpu->mem, _t55, cpu->f[0]);
|
|
/* 024C7D44 */ _t56 = cpu->r[1] + 0x00000040u;
|
|
/* 024C7D44 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024C7D48 */ _t57 = cpu->r[1] + 0x00000054u;
|
|
/* 024C7D48 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 024C7D4C */ _t58 = cpu->r[30] + 0x00000558u;
|
|
/* 024C7D4C */ rbrew_write_f32(cpu->mem, _t58, cpu->f[10]);
|
|
/* 024C7D50 */ _t59 = cpu->r[30] + 0x0000056Cu;
|
|
/* 024C7D50 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[8]);
|
|
/* 024C7D54 */ _t60 = cpu->r[1] + 0x00000050u;
|
|
/* 024C7D54 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 024C7D58 */ _t61 = cpu->r[1] + 0x00000068u;
|
|
/* 024C7D58 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 024C7D5C */ _t62 = cpu->r[1] + 0x00000058u;
|
|
/* 024C7D5C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 024C7D60 */ _t63 = cpu->r[30] + 0x00000580u;
|
|
/* 024C7D60 */ rbrew_write_f32(cpu->mem, _t63, cpu->f[13]);
|
|
/* 024C7D64 */ _t64 = cpu->r[1] + 0x00000044u;
|
|
/* 024C7D64 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 024C7D68 */ _t65 = cpu->r[30] + 0x00000568u;
|
|
/* 024C7D68 */ rbrew_write_f32(cpu->mem, _t65, cpu->f[7]);
|
|
/* 024C7D6C */ _t66 = cpu->r[30] + 0x0000055Cu;
|
|
/* 024C7D6C */ rbrew_write_f32(cpu->mem, _t66, cpu->f[11]);
|
|
/* 024C7D70 */ _t67 = cpu->r[1] + 0x00000060u;
|
|
/* 024C7D70 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t67);
|
|
/* 024C7D74 */ _t68 = cpu->r[30] + 0x00000570u;
|
|
/* 024C7D74 */ rbrew_write_f32(cpu->mem, _t68, cpu->f[9]);
|
|
/* 024C7D78 */ _t69 = cpu->r[1] + 0x00000048u;
|
|
/* 024C7D78 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 024C7D7C */ _t70 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C7D7C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t70);
|
|
/* 024C7D80 */ _t71 = cpu->r[30] + 0x00000578u;
|
|
/* 024C7D80 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[11]);
|
|
/* 024C7D84 */ _t72 = cpu->r[30] + 0x00000560u;
|
|
/* 024C7D84 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[12]);
|
|
/* 024C7D88 */ _t73 = cpu->r[1] + 0x00000064u;
|
|
/* 024C7D88 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 024C7D8C */ _t74 = cpu->r[30] + 0x00000574u;
|
|
/* 024C7D8C */ rbrew_write_f32(cpu->mem, _t74, cpu->f[10]);
|
|
/* 024C7D90 */ /* nop */
|
|
/* 024C7D94 */ _t75 = cpu->r[30] + 0x0000057Cu;
|
|
/* 024C7D94 */ rbrew_write_f32(cpu->mem, _t75, cpu->f[12]);
|
|
/* 024C7D98 */ _t76 = cpu->r[29] + 0x00000008u;
|
|
/* 024C7D98 */ cpu->r[29] = rbrew_read32(cpu->mem, _t76);
|
|
/* 024C7D9C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C7DA0 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C7DA4 */ Gambit_fn_0297FC7C(cpu);
|
|
/* 024C7DA8 */ _t77 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C7DA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77);
|
|
/* 024C7DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 024C7DB0 */ cpu->r[11] = 0x00000000u;
|
|
/* 024C7DB4 */ _t78 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C7DB4 */ _t79 = _t78 & 0x00000001u;
|
|
/* 024C7DB4 */ if (_t79) goto L_024C7DB8; else goto L_024C7DC4;
|
|
L_024C7DB8: ; // 0x24c7db8
|
|
/* 024C7DB8 */ _t80 = cpu->r[29] + 0x00000024u;
|
|
/* 024C7DB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024C7DBC */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C7DC0 */ _t81 = cpu->r[12] + cpu->r[7];
|
|
/* 024C7DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
L_024C7DC4: ; // 0x24c7dc4
|
|
/* 024C7DC4 */ _t82 = cpu->r[11] + 0x00000000u;
|
|
/* 024C7DC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t82);
|
|
/* 024C7DC8 */ _t83 = cpu->r[3] + 0x00000088u;
|
|
/* 024C7DC8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 024C7DCC */ _t84 = cpu->r[8] + 0x0000007Cu;
|
|
/* 024C7DCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 024C7DD0 */ cpu->ctr = cpu->r[0];
|
|
/* 024C7DD4 */ /* nop */
|
|
/* 024C7DD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7DDC */ _t85 = cpu->r[30] + 0x00000588u;
|
|
/* 024C7DDC */ rbrew_write32(cpu->mem, _t85, cpu->r[3]);
|
|
L_024C7DE0: ; // 0x24c7de0
|
|
/* 024C7DE0 */ _t86 = cpu->r[1] + 0x00000080u;
|
|
/* 024C7DE0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t86);
|
|
/* 024C7DE4 */ _t87 = cpu->r[1] + 0x00000084u;
|
|
/* 024C7DE4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024C7DE8 */ _t88 = cpu->r[1] + 0x00000094u;
|
|
/* 024C7DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 024C7DEC */ _t89 = cpu->r[1] + 0x00000088u;
|
|
/* 024C7DEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t89);
|
|
/* 024C7DF0 */ cpu->lr = cpu->r[0];
|
|
/* 024C7DF4 */ _t90 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024C7DF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t90);
|
|
/* 024C7DF8 */ cpu->r[1] = cpu->r[1] + 0x00000090u;
|
|
/* 024C7DFC */ return;
|
|
}
|
|
|
|
// fn_024C7E00 @ 0x24c7e00
|
|
void Gambit_fn_024C7E00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C7E00: ; // 0x24c7e00
|
|
/* 024C7E00 */ cpu->r[0] = cpu->lr;
|
|
/* 024C7E04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C7E04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7E04 */ cpu->r[1] = _t0;
|
|
/* 024C7E08 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7E08 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C7E0C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C7E10 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7E10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C7E14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7E14 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C7E18 */ Gambit_fn_024C6810(cpu);
|
|
/* 024C7E1C */ cpu->r[4] = 0x100B0000u;
|
|
/* 024C7E20 */ _t4 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024C7E20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C7E24 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C7E28 */ cpu->r[4] = cpu->r[4] + 0x00005250u;
|
|
/* 024C7E2C */ Gambit_fn_02398850(cpu);
|
|
/* 024C7E30 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C7E34 */ _t5 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024C7E34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C7E38 */ _t6 = cpu->r[12] + 0x0000524Cu;
|
|
/* 024C7E38 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C7E3C */ Gambit_fn_023988E0(cpu);
|
|
/* 024C7E40 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C7E44 */ _t7 = cpu->r[30] + 0x00000548u;
|
|
/* 024C7E44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7E48 */ _t8 = cpu->r[30] + 0x00000545u;
|
|
/* 024C7E48 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 024C7E4C */ Gambit_fn_024F21E0(cpu);
|
|
/* 024C7E50 */ _t9 = cpu->r[30] + 0x0000054Cu;
|
|
/* 024C7E50 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]);
|
|
/* 024C7E54 */ _t10 = cpu->r[30] + 0x0000054Du;
|
|
/* 024C7E54 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]);
|
|
/* 024C7E58 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E5C */ _t11 = cpu->r[30] + 0x00000550u;
|
|
/* 024C7E5C */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 024C7E60 */ Gambit_fn_024C7A28(cpu);
|
|
/* 024C7E64 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E68 */ Gambit_fn_024C7B40(cpu);
|
|
/* 024C7E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7E70 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7E70 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C7E70 */ if (_t13) goto L_024C7E7C; else goto L_024C7E74;
|
|
L_024C7E74: ; // 0x24c7e74
|
|
/* 024C7E74 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E78 */ Gambit_fn_024C7B54(cpu);
|
|
L_024C7E7C: ; // 0x24c7e7c
|
|
/* 024C7E7C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C7E80 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7E80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C7E84 */ cpu->lr = cpu->r[0];
|
|
/* 024C7E88 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7E88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C7E8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7E90 */ return;
|
|
}
|
|
|
|
// fn_024C7E04 @ 0x24c7e04
|
|
void Gambit_fn_024C7E04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C7E04: ; // 0x24c7e04
|
|
/* 024C7E04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C7E04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7E04 */ cpu->r[1] = _t0;
|
|
/* 024C7E08 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7E08 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C7E0C */ cpu->r[30] = cpu->r[3];
|
|
/* 024C7E10 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7E10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C7E14 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7E14 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C7E18 */ Gambit_fn_024C6810(cpu);
|
|
/* 024C7E1C */ cpu->r[4] = 0x100B0000u;
|
|
/* 024C7E20 */ _t4 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024C7E20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C7E24 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C7E28 */ cpu->r[4] = cpu->r[4] + 0x00005250u;
|
|
/* 024C7E2C */ Gambit_fn_02398850(cpu);
|
|
/* 024C7E30 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C7E34 */ _t5 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024C7E34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C7E38 */ _t6 = cpu->r[12] + 0x0000524Cu;
|
|
/* 024C7E38 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024C7E3C */ Gambit_fn_023988E0(cpu);
|
|
/* 024C7E40 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C7E44 */ _t7 = cpu->r[30] + 0x00000548u;
|
|
/* 024C7E44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7E48 */ _t8 = cpu->r[30] + 0x00000545u;
|
|
/* 024C7E48 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 024C7E4C */ Gambit_fn_024F21E0(cpu);
|
|
/* 024C7E50 */ _t9 = cpu->r[30] + 0x0000054Cu;
|
|
/* 024C7E50 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]);
|
|
/* 024C7E54 */ _t10 = cpu->r[30] + 0x0000054Du;
|
|
/* 024C7E54 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]);
|
|
/* 024C7E58 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E5C */ _t11 = cpu->r[30] + 0x00000550u;
|
|
/* 024C7E5C */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 024C7E60 */ Gambit_fn_024C7A28(cpu);
|
|
/* 024C7E64 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E68 */ Gambit_fn_024C7B40(cpu);
|
|
/* 024C7E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7E70 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7E70 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C7E70 */ if (_t13) goto L_024C7E7C; else goto L_024C7E74;
|
|
L_024C7E74: ; // 0x24c7e74
|
|
/* 024C7E74 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C7E78 */ Gambit_fn_024C7B54(cpu);
|
|
L_024C7E7C: ; // 0x24c7e7c
|
|
/* 024C7E7C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C7E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C7E80 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7E80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C7E84 */ cpu->lr = cpu->r[0];
|
|
/* 024C7E88 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C7E88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C7E8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C7E90 */ return;
|
|
}
|
|
|
|
// fn_024C7E94 @ 0x24c7e94
|
|
void Gambit_fn_024C7E94(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_024C7E94: ; // 0x24c7e94
|
|
/* 024C7E94 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024C7E94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7E94 */ cpu->r[1] = _t0;
|
|
/* 024C7E98 */ cpu->r[0] = cpu->lr;
|
|
/* 024C7E9C */ /* nop */
|
|
/* 024C7EA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C7EA4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C7EA8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C7EA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C7EAC */ Gambit_fn_02019890(cpu);
|
|
/* 024C7EB0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C7EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C7EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C7EB8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7EB8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C7EB8 */ if (_t4) goto L_024C7EBC; else goto L_024C7FAC;
|
|
L_024C7EBC: ; // 0x24c7ebc
|
|
/* 024C7EBC */ cpu->r[27] = 0x101D0000u;
|
|
/* 024C7EC0 */ cpu->r[29] = 0x101C0000u;
|
|
/* 024C7EC4 */ _t5 = cpu->r[27] + 0x000006C0u;
|
|
/* 024C7EC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C7EC4 */ cpu->r[27] = _t5;
|
|
/* 024C7EC8 */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C7ECC */ _t6 = cpu->r[29] + 0x00006000u;
|
|
/* 024C7ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C7ECC */ cpu->r[29] = _t6;
|
|
/* 024C7ED0 */ cpu->r[26] = 0x101D0000u;
|
|
/* 024C7ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C7ED8 */ cpu->r[28] = cpu->r[28] + 0x00005114u;
|
|
/* 024C7EDC */ _t7 = cpu->r[12] + 0x000002A4u;
|
|
/* 024C7EDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C7EE0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7EE0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C7EE0 */ if (_t9) goto L_024C7EE4; else goto L_024C7EF0;
|
|
L_024C7EE4: ; // 0x24c7ee4
|
|
/* 024C7EE4 */ _t10 = cpu->r[26] + 0x000006BCu;
|
|
/* 024C7EE4 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 024C7EE8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7EEC */ _t11 = cpu->r[27] + 0x00000000u;
|
|
/* 024C7EEC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024C7EF0: ; // 0x24c7ef0
|
|
/* 024C7EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C7EF4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7EF4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C7EF4 */ if (_t13) goto L_024C7F2C; else goto L_024C7EF8;
|
|
L_024C7EF8: ; // 0x24c7ef8
|
|
/* 024C7EF8 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 024C7EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C7EFC */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 024C7EFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C7F00 */ cpu->ctr = cpu->r[11];
|
|
/* 024C7F04 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7F08 */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024C7F0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7F14 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F14 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C7F14 */ if (_t17) goto L_024C7F2C; else goto L_024C7F18;
|
|
L_024C7F18: ; // 0x24c7f18
|
|
/* 024C7F18 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7F1C */ Gambit_fn_026CC898(cpu);
|
|
/* 024C7F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7F24 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F24 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C7F24 */ if (_t19) goto L_024C7F3C; else goto L_024C7F28;
|
|
L_024C7F28: ; // 0x24c7f28
|
|
/* 024C7F28 */ goto L_024C7F98;
|
|
L_024C7F2C: ; // 0x24c7f2c
|
|
/* 024C7F2C */ cpu->r[3] = 0x00000000u;
|
|
/* 024C7F30 */ Gambit_fn_026CC898(cpu);
|
|
/* 024C7F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7F38 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F38 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C7F38 */ if (_t21) goto L_024C7F3C; else goto L_024C7F98;
|
|
L_024C7F3C: ; // 0x24c7f3c
|
|
/* 024C7F3C */ _t22 = cpu->r[27] + 0x00000000u;
|
|
/* 024C7F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C7F40 */ _t23 = cpu->r[29] + 0x00000000u;
|
|
/* 024C7F40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C7F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C7F48 */ _t24 = cpu->r[10] + 0x000002A4u;
|
|
/* 024C7F48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C7F4C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F4C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C7F4C */ if (_t26) goto L_024C7F50; else goto L_024C7F5C;
|
|
L_024C7F50: ; // 0x24c7f50
|
|
/* 024C7F50 */ _t27 = cpu->r[26] + 0x000006BCu;
|
|
/* 024C7F50 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 024C7F54 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7F58 */ _t28 = cpu->r[27] + 0x00000000u;
|
|
/* 024C7F58 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
L_024C7F5C: ; // 0x24c7f5c
|
|
/* 024C7F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C7F60 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F60 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C7F60 */ if (_t30) goto L_024C7F84; else goto L_024C7F64;
|
|
L_024C7F64: ; // 0x24c7f64
|
|
/* 024C7F64 */ _t31 = cpu->r[31] + 0x00000004u;
|
|
/* 024C7F64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C7F68 */ _t32 = cpu->r[10] + 0x00000014u;
|
|
/* 024C7F68 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C7F6C */ cpu->ctr = cpu->r[11];
|
|
/* 024C7F70 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C7F74 */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024C7F78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C7F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C7F80 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F80 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C7F80 */ if (_t34) goto L_024C7F84; else goto L_024C7F88;
|
|
L_024C7F84: ; // 0x24c7f84
|
|
/* 024C7F84 */ cpu->r[31] = 0x00000000u;
|
|
L_024C7F88: ; // 0x24c7f88
|
|
/* 024C7F88 */ _t35 = cpu->r[31] + 0x00000254u;
|
|
/* 024C7F88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t35);
|
|
/* 024C7F8C */ /* nop */
|
|
/* 024C7F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x0000000Au);
|
|
/* 024C7F94 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7F94 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024C7F94 */ if (_t37) goto L_024C7F98; else goto L_024C7FA4;
|
|
L_024C7F98: ; // 0x24c7f98
|
|
/* 024C7F98 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C7F9C */ _t38 = cpu->r[30] + 0x000001A4u;
|
|
/* 024C7F9C */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[0]);
|
|
/* 024C7FA0 */ goto L_024C7FAC;
|
|
L_024C7FA4: ; // 0x24c7fa4
|
|
/* 024C7FA4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C7FA8 */ _t39 = cpu->r[30] + 0x000001A4u;
|
|
/* 024C7FA8 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]);
|
|
L_024C7FAC: ; // 0x24c7fac
|
|
/* 024C7FAC */ /* nop */
|
|
/* 024C7FB0 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C7FB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C7FB4 */ cpu->lr = cpu->r[0];
|
|
/* 024C7FB8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024C7FBC */ return;
|
|
}
|
|
|
|
// fn_024C7FC0 @ 0x24c7fc0
|
|
void Gambit_fn_024C7FC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_023A34EC: ; // 0x23a34ec
|
|
/* 023A34EC */ cpu->r[0] = cpu->lr;
|
|
/* 023A34F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A34F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A34F0 */ cpu->r[1] = _t0;
|
|
/* 023A34F4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 023A34F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 023A34F8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A34F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 023A34FC */ cpu->r[30] = cpu->r[3];
|
|
/* 023A3500 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3500 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 023A3504 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 023A3504 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 023A3508 */ /* nop */
|
|
/* 023A350C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 023A3510 */ cpu->r[31] = cpu->r[4];
|
|
/* 023A3514 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3514 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3514 */ if (_t6) goto L_023A3518; else goto L_023A352C;
|
|
L_023A3518: ; // 0x23a3518
|
|
/* 023A3518 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 023A3518 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 023A351C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 023A351C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 023A3520 */ cpu->ctr = cpu->r[0];
|
|
/* 023A3524 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3528 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A352C: ; // 0x23a352c
|
|
/* 023A352C */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3530 */ cpu->r[4] = cpu->r[31];
|
|
/* 023A3534 */ Gambit_fn_023A3464(cpu);
|
|
/* 023A3538 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A353C */ /* nop */
|
|
/* 023A3540 */ Gambit_fn_027FC35C(cpu);
|
|
/* 023A3544 */ cpu->r[3] = cpu->r[30];
|
|
/* 023A3548 */ Gambit_fn_023A32E4(cpu);
|
|
/* 023A354C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 023A354C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 023A3550 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 023A3550 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A3554 */ cpu->lr = cpu->r[0];
|
|
/* 023A3558 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A3558 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A355C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A3560 */ return;
|
|
L_024C7FC0: ; // 0x24c7fc0
|
|
/* 024C7FC0 */ cpu->r[12] = cpu->r[3];
|
|
/* 024C7FC4 */ _t12 = cpu->r[12] + 0x00000545u;
|
|
/* 024C7FC4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t12);
|
|
/* 024C7FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C7FCC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C7FCC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C7FCC */ if (_t14) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C7FCC */ goto L_024C7FD0;
|
|
L_024C7FD0: ; // 0x24c7fd0
|
|
/* 024C7FD0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C7FD4 */ cpu->r[3] = cpu->r[12] + 0x00000504u;
|
|
/* 024C7FD8 */ cpu->r[4] = 0x00000001u;
|
|
/* 024C7FDC */ _t15 = cpu->r[12] + 0x00000545u;
|
|
/* 024C7FDC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
/* 024C7FE0 */ goto L_023A34EC;
|
|
}
|
|
|
|
// fn_024C7FE4 @ 0x24c7fe4
|
|
void Gambit_fn_024C7FE4(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_024C7FE4: ; // 0x24c7fe4
|
|
/* 024C7FE4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C7FE8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C7FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7FE8 */ cpu->r[1] = _t0;
|
|
/* 024C7FEC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C7FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C7FF4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C7FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C7FF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C7FFC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 024C7FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C8000 */ _t4 = cpu->r[3] + 0x00006000u;
|
|
/* 024C8000 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8004 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8008 */ _t6 = cpu->r[12] + 0x00000154u;
|
|
/* 024C8008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C800C */ cpu->ctr = cpu->r[0];
|
|
/* 024C8010 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 024C8018 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8018 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C8018 */ if (_t8) goto L_024C8068; else goto L_024C801C;
|
|
L_024C801C: ; // 0x24c801c
|
|
/* 024C801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 024C8020 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8020 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C8020 */ if (_t10) goto L_024C8068; else goto L_024C8024;
|
|
L_024C8024: ; // 0x24c8024
|
|
/* 024C8024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 024C8028 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8028 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C8028 */ if (_t12) goto L_024C8068; else goto L_024C802C;
|
|
L_024C802C: ; // 0x24c802c
|
|
/* 024C802C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 024C8030 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C8030 */ if (_t14) goto L_024C8068; else goto L_024C8034;
|
|
L_024C8034: ; // 0x24c8034
|
|
/* 024C8034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024C8038 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C8038 */ if (_t16) goto L_024C8068; else goto L_024C803C;
|
|
L_024C803C: ; // 0x24c803c
|
|
/* 024C803C */ cpu->r[30] = 0x00000000u;
|
|
/* 024C8040 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8040 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 024C8044 */ cpu->r[4] = cpu->r[30];
|
|
/* 024C8048 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8048 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 024C804C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8050 */ _t19 = cpu->r[31] + 0x00000548u;
|
|
/* 024C8050 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C8054 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8054 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C8058 */ Gambit_fn_024F2540(cpu);
|
|
/* 024C805C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8060 */ _t21 = cpu->r[31] + 0x0000054Cu;
|
|
/* 024C8060 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[30]);
|
|
/* 024C8064 */ _t22 = cpu->r[31] + 0x0000054Du;
|
|
/* 024C8064 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
L_024C8068: ; // 0x24c8068
|
|
/* 024C8068 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 024C8068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C806C */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 024C806C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C8070 */ cpu->lr = cpu->r[0];
|
|
/* 024C8074 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8074 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C8078 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C807C */ return;
|
|
}
|
|
|
|
// fn_024C7FE8 @ 0x24c7fe8
|
|
void Gambit_fn_024C7FE8(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_024C7FE8: ; // 0x24c7fe8
|
|
/* 024C7FE8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C7FE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C7FE8 */ cpu->r[1] = _t0;
|
|
/* 024C7FEC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C7FEC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C7FF0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C7FF4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024C7FF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C7FF8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C7FFC */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 024C7FFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C8000 */ _t4 = cpu->r[3] + 0x00006000u;
|
|
/* 024C8000 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8004 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8008 */ _t6 = cpu->r[12] + 0x00000154u;
|
|
/* 024C8008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C800C */ cpu->ctr = cpu->r[0];
|
|
/* 024C8010 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000002u);
|
|
/* 024C8018 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8018 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C8018 */ if (_t8) goto L_024C8068; else goto L_024C801C;
|
|
L_024C801C: ; // 0x24c801c
|
|
/* 024C801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 024C8020 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8020 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C8020 */ if (_t10) goto L_024C8068; else goto L_024C8024;
|
|
L_024C8024: ; // 0x24c8024
|
|
/* 024C8024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000008u);
|
|
/* 024C8028 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8028 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C8028 */ if (_t12) goto L_024C8068; else goto L_024C802C;
|
|
L_024C802C: ; // 0x24c802c
|
|
/* 024C802C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000004u);
|
|
/* 024C8030 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8030 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C8030 */ if (_t14) goto L_024C8068; else goto L_024C8034;
|
|
L_024C8034: ; // 0x24c8034
|
|
/* 024C8034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024C8038 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8038 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C8038 */ if (_t16) goto L_024C8068; else goto L_024C803C;
|
|
L_024C803C: ; // 0x24c803c
|
|
/* 024C803C */ cpu->r[30] = 0x00000000u;
|
|
/* 024C8040 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8040 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 024C8044 */ cpu->r[4] = cpu->r[30];
|
|
/* 024C8048 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8048 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 024C804C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8050 */ _t19 = cpu->r[31] + 0x00000548u;
|
|
/* 024C8050 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C8054 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8054 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C8058 */ Gambit_fn_024F2540(cpu);
|
|
/* 024C805C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8060 */ _t21 = cpu->r[31] + 0x0000054Cu;
|
|
/* 024C8060 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[30]);
|
|
/* 024C8064 */ _t22 = cpu->r[31] + 0x0000054Du;
|
|
/* 024C8064 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
L_024C8068: ; // 0x24c8068
|
|
/* 024C8068 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 024C8068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C806C */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 024C806C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C8070 */ cpu->lr = cpu->r[0];
|
|
/* 024C8074 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8074 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C8078 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C807C */ return;
|
|
}
|
|
|
|
// fn_024C8080 @ 0x24c8080
|
|
void Gambit_fn_024C8080(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;
|
|
|
|
L_024C8080: ; // 0x24c8080
|
|
/* 024C8080 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 024C8080 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8080 */ cpu->r[1] = _t0;
|
|
/* 024C8084 */ _t1 = cpu->r[1] + 0x000000A0u;
|
|
/* 024C8084 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[29]);
|
|
/* 024C8088 */ /* nop */
|
|
/* 024C808C */ _t2 = cpu->r[1] + 0x000000C0u;
|
|
/* 024C808C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 024C8090 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8094 */ _t3 = cpu->r[1] + 0x000000A8u;
|
|
/* 024C8094 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[29]);
|
|
/* 024C8098 */ /* nop */
|
|
/* 024C809C */ _t4 = cpu->r[1] + 0x000000B0u;
|
|
/* 024C809C */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]);
|
|
/* 024C80A0 */ _t5 = cpu->r[1] + 0x000000C8u;
|
|
/* 024C80A0 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 024C80A4 */ /* nop */
|
|
/* 024C80A8 */ _t6 = cpu->r[1] + 0x0000009Cu;
|
|
/* 024C80A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 024C80AC */ _t7 = cpu->r[1] + 0x000000B8u;
|
|
/* 024C80AC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 024C80B0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C80B4 */ _t8 = cpu->r[1] + 0x000000D4u;
|
|
/* 024C80B4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024C80B8 */ _t9 = cpu->r[31] + 0x00000588u;
|
|
/* 024C80B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C80BC */ _t10 = cpu->r[9] + 0x00000010u;
|
|
/* 024C80BC */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C80C0 */ _t11 = cpu->r[9] + 0x00000000u;
|
|
/* 024C80C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024C80C4 */ _t12 = cpu->r[9] + 0x00000020u;
|
|
/* 024C80C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C80C8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024C80C8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[13]);
|
|
/* 024C80CC */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C80CC */ rbrew_write_f32(cpu->mem, _t14, cpu->f[7]);
|
|
/* 024C80D0 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 024C80D0 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[8]);
|
|
/* 024C80D4 */ _t16 = cpu->r[9] + 0x00000014u;
|
|
/* 024C80D4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C80D8 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 024C80D8 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C80DC */ _t18 = cpu->r[9] + 0x00000024u;
|
|
/* 024C80DC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024C80E0 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C80E0 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[9]);
|
|
/* 024C80E4 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 024C80E4 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[11]);
|
|
/* 024C80E8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C80E8 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[12]);
|
|
/* 024C80EC */ _t22 = cpu->r[9] + 0x00000028u;
|
|
/* 024C80EC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024C80F0 */ _t23 = cpu->r[9] + 0x00000018u;
|
|
/* 024C80F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024C80F4 */ _t24 = cpu->r[9] + 0x00000008u;
|
|
/* 024C80F4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024C80F8 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 024C80F8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[9]);
|
|
/* 024C80FC */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 024C80FC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[10]);
|
|
/* 024C8100 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 024C8100 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[8]);
|
|
/* 024C8104 */ _t28 = cpu->r[9] + 0x0000000Cu;
|
|
/* 024C8104 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024C8108 */ _t29 = cpu->r[9] + 0x0000001Cu;
|
|
/* 024C8108 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024C810C */ _t30 = cpu->r[9] + 0x0000002Cu;
|
|
/* 024C810C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 024C8110 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C8110 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 024C8114 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8118 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 024C8118 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[13]);
|
|
/* 024C811C */ _t33 = cpu->r[1] + 0x00000030u;
|
|
/* 024C811C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[12]);
|
|
/* 024C8120 */ Gambit_fn_0204CAC0(cpu);
|
|
/* 024C8124 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8124 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 024C8128 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8128 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 024C812C */ _t36 = cpu->r[1] + 0x00000038u;
|
|
/* 024C812C */ rbrew_write_f32(cpu->mem, _t36, cpu->f[29]);
|
|
/* 024C8130 */ _t37 = cpu->r[31] + 0x00000558u;
|
|
/* 024C8130 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024C8134 */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8134 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t38);
|
|
/* 024C8138 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8138 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 024C813C */ cpu->f[0] = cpu->f[7] * cpu->f[8];
|
|
/* 024C8140 */ _t40 = cpu->r[31] + 0x00000570u;
|
|
/* 024C8140 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 024C8144 */ _t41 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024C8144 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[30]);
|
|
/* 024C8148 */ /* nop */
|
|
/* 024C814C */ cpu->f[9] = cpu->f[7] * cpu->f[5];
|
|
/* 024C8150 */ _t42 = cpu->r[31] + 0x0000055Cu;
|
|
/* 024C8150 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t42);
|
|
/* 024C8154 */ _t43 = cpu->r[1] + 0x00000028u;
|
|
/* 024C8154 */ cpu->f[2] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 024C8158 */ cpu->f[0] = fma(cpu->f[12], cpu->f[1], cpu->f[0]);
|
|
/* 024C815C */ _t44 = cpu->r[31] + 0x00000560u;
|
|
/* 024C815C */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 024C8160 */ /* nop */
|
|
/* 024C8164 */ _t45 = cpu->r[31] + 0x00000564u;
|
|
/* 024C8164 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t45);
|
|
/* 024C8168 */ cpu->f[0] = fma(cpu->f[3], cpu->f[2], cpu->f[0]);
|
|
/* 024C816C */ _t46 = cpu->r[1] + 0x00000048u;
|
|
/* 024C816C */ rbrew_write_f32(cpu->mem, _t46, cpu->f[30]);
|
|
/* 024C8170 */ /* nop */
|
|
/* 024C8174 */ cpu->f[10] = cpu->f[7] * cpu->f[11];
|
|
/* 024C8178 */ _t47 = cpu->r[31] + 0x00000568u;
|
|
/* 024C8178 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t47);
|
|
/* 024C817C */ _t48 = cpu->r[1] + 0x00000040u;
|
|
/* 024C817C */ rbrew_write_f32(cpu->mem, _t48, cpu->f[0]);
|
|
/* 024C8180 */ /* nop */
|
|
/* 024C8184 */ _t49 = cpu->r[1] + 0x00000044u;
|
|
/* 024C8184 */ rbrew_write_f32(cpu->mem, _t49, cpu->f[29]);
|
|
/* 024C8188 */ /* nop */
|
|
/* 024C818C */ cpu->f[10] = fma(cpu->f[8], cpu->f[1], cpu->f[10]);
|
|
/* 024C8190 */ _t50 = cpu->r[1] + 0x00000054u;
|
|
/* 024C8190 */ rbrew_write_f32(cpu->mem, _t50, cpu->f[30]);
|
|
/* 024C8194 */ /* nop */
|
|
/* 024C8198 */ _t51 = cpu->r[31] + 0x0000056Cu;
|
|
/* 024C8198 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 024C819C */ _t52 = cpu->r[31] + 0x00000574u;
|
|
/* 024C819C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t52);
|
|
/* 024C81A0 */ /* nop */
|
|
/* 024C81A4 */ _t53 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C81A4 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[29]);
|
|
/* 024C81A8 */ cpu->f[10] = fma(cpu->f[12], cpu->f[2], cpu->f[10]);
|
|
/* 024C81AC */ /* nop */
|
|
/* 024C81B0 */ cpu->f[9] = fma(cpu->f[0], cpu->f[1], cpu->f[9]);
|
|
/* 024C81B4 */ _t54 = cpu->r[31] + 0x00000578u;
|
|
/* 024C81B4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 024C81B8 */ /* nop */
|
|
/* 024C81BC */ _t55 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C81BC */ rbrew_write_f32(cpu->mem, _t55, cpu->f[10]);
|
|
/* 024C81C0 */ /* nop */
|
|
/* 024C81C4 */ _t56 = cpu->r[1] + 0x00000050u;
|
|
/* 024C81C4 */ rbrew_write_f32(cpu->mem, _t56, cpu->f[29]);
|
|
/* 024C81C8 */ /* nop */
|
|
/* 024C81CC */ cpu->f[12] = fma(cpu->f[8], cpu->f[2], cpu->f[9]);
|
|
/* 024C81D0 */ _t57 = cpu->r[31] + 0x0000057Cu;
|
|
/* 024C81D0 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 024C81D4 */ /* nop */
|
|
/* 024C81D8 */ _t58 = cpu->r[1] + 0x00000060u;
|
|
/* 024C81D8 */ rbrew_write_f32(cpu->mem, _t58, cpu->f[30]);
|
|
/* 024C81DC */ /* nop */
|
|
/* 024C81E0 */ /* nop */
|
|
/* 024C81E4 */ _t59 = cpu->r[1] + 0x00000058u;
|
|
/* 024C81E4 */ rbrew_write_f32(cpu->mem, _t59, cpu->f[12]);
|
|
/* 024C81E8 */ cpu->f[7] = cpu->f[7] * cpu->f[6];
|
|
/* 024C81EC */ _t60 = cpu->r[31] + 0x00000580u;
|
|
/* 024C81EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 024C81F0 */ /* nop */
|
|
/* 024C81F4 */ /* nop */
|
|
/* 024C81F8 */ /* nop */
|
|
/* 024C81FC */ cpu->f[7] = fma(cpu->f[12], cpu->f[1], cpu->f[7]);
|
|
/* 024C8200 */ _t61 = cpu->r[31] + 0x00000584u;
|
|
/* 024C8200 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 024C8204 */ /* nop */
|
|
/* 024C8208 */ _t62 = cpu->r[1] + 0x00000034u;
|
|
/* 024C8208 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62);
|
|
/* 024C820C */ cpu->f[7] = fma(cpu->f[0], cpu->f[2], cpu->f[7]);
|
|
/* 024C8210 */ /* nop */
|
|
/* 024C8214 */ /* nop */
|
|
/* 024C8218 */ /* nop */
|
|
/* 024C821C */ cpu->r[7] = cpu->r[1] + 0x00000034u;
|
|
/* 024C8220 */ cpu->f[7] = cpu->f[7] + cpu->f[10];
|
|
/* 024C8224 */ /* nop */
|
|
/* 024C8228 */ cpu->r[11] = 0x00000003u;
|
|
/* 024C822C */ /* nop */
|
|
/* 024C8230 */ cpu->r[9] = cpu->r[1] + 0x00000064u;
|
|
/* 024C8234 */ /* nop */
|
|
/* 024C8238 */ cpu->ctr = cpu->r[11];
|
|
/* 024C823C */ _t63 = cpu->r[1] + 0x00000064u;
|
|
/* 024C823C */ rbrew_write_f32(cpu->mem, _t63, cpu->f[7]);
|
|
L_024C8240: ; // 0x24c8240
|
|
/* 024C8240 */ _t64 = cpu->r[7] + 0x00000004u;
|
|
/* 024C8240 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024C8244 */ _t65 = cpu->r[9] + 0x00000004u;
|
|
/* 024C8244 */ rbrew_write32(cpu->mem, _t65, cpu->r[12]);
|
|
/* 024C8248 */ _t66 = cpu->r[7] + 0x00000008u;
|
|
/* 024C8248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 024C824C */ _t67 = cpu->r[9] + 0x00000008u;
|
|
/* 024C824C */ rbrew_write32(cpu->mem, _t67, cpu->r[0]);
|
|
/* 024C8250 */ _t68 = cpu->r[7] + 0x0000000Cu;
|
|
/* 024C8250 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 024C8254 */ _t69 = cpu->r[9] + 0x0000000Cu;
|
|
/* 024C8254 */ rbrew_write32(cpu->mem, _t69, cpu->r[8]);
|
|
/* 024C8258 */ _t70 = cpu->r[7] + 0x00000010u;
|
|
/* 024C8258 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024C8258 */ cpu->r[7] = _t70;
|
|
/* 024C825C */ _t71 = cpu->r[9] + 0x00000010u;
|
|
/* 024C825C */ rbrew_write32(cpu->mem, _t71, cpu->r[0]);
|
|
/* 024C825C */ cpu->r[9] = _t71;
|
|
/* 024C8260 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C8260 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C8260 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 024C8260 */ _t74 = _t73 & 0x00000001u;
|
|
/* 024C8260 */ if (_t74) goto L_024C8240; else goto L_024C8264;
|
|
L_024C8264: ; // 0x24c8264
|
|
/* 024C8264 */ _t75 = cpu->r[1] + 0x00000070u;
|
|
/* 024C8264 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t75);
|
|
/* 024C8268 */ _t76 = cpu->r[1] + 0x0000007Cu;
|
|
/* 024C8268 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 024C826C */ _t77 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024C826C */ rbrew_write_f32(cpu->mem, _t77, cpu->f[10]);
|
|
/* 024C8270 */ _t78 = cpu->r[31] + 0x00000068u;
|
|
/* 024C8270 */ rbrew_write_f32(cpu->mem, _t78, cpu->f[13]);
|
|
/* 024C8274 */ _t79 = cpu->r[1] + 0x00000078u;
|
|
/* 024C8274 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 024C8278 */ _t80 = cpu->r[1] + 0x0000008Cu;
|
|
/* 024C8278 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 024C827C */ _t81 = cpu->r[31] + 0x00000064u;
|
|
/* 024C827C */ rbrew_write_f32(cpu->mem, _t81, cpu->f[12]);
|
|
/* 024C8280 */ _t82 = cpu->r[31] + 0x00000078u;
|
|
/* 024C8280 */ rbrew_write_f32(cpu->mem, _t82, cpu->f[13]);
|
|
/* 024C8284 */ _t83 = cpu->r[1] + 0x00000094u;
|
|
/* 024C8284 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t83);
|
|
/* 024C8288 */ _t84 = cpu->r[1] + 0x00000088u;
|
|
/* 024C8288 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t84);
|
|
/* 024C828C */ _t85 = cpu->r[31] + 0x00000080u;
|
|
/* 024C828C */ rbrew_write_f32(cpu->mem, _t85, cpu->f[9]);
|
|
/* 024C8290 */ _t86 = cpu->r[31] + 0x00000074u;
|
|
/* 024C8290 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[0]);
|
|
/* 024C8294 */ _t87 = cpu->r[1] + 0x00000084u;
|
|
/* 024C8294 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 024C8298 */ _t88 = cpu->r[1] + 0x00000090u;
|
|
/* 024C8298 */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 024C829C */ _t89 = cpu->r[1] + 0x00000080u;
|
|
/* 024C829C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t89);
|
|
/* 024C82A0 */ _t90 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024C82A0 */ rbrew_write_f32(cpu->mem, _t90, cpu->f[7]);
|
|
/* 024C82A4 */ _t91 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024C82A4 */ rbrew_write_f32(cpu->mem, _t91, cpu->f[8]);
|
|
/* 024C82A8 */ _t92 = cpu->r[1] + 0x00000068u;
|
|
/* 024C82A8 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t92);
|
|
/* 024C82AC */ _t93 = cpu->r[1] + 0x00000074u;
|
|
/* 024C82AC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t93);
|
|
/* 024C82B0 */ _t94 = cpu->r[31] + 0x00000054u;
|
|
/* 024C82B0 */ rbrew_write_f32(cpu->mem, _t94, cpu->f[6]);
|
|
/* 024C82B4 */ _t95 = cpu->r[31] + 0x00000060u;
|
|
/* 024C82B4 */ rbrew_write_f32(cpu->mem, _t95, cpu->f[11]);
|
|
/* 024C82B8 */ _t96 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C82B8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 024C82BC */ _t97 = cpu->r[31] + 0x00000070u;
|
|
/* 024C82BC */ rbrew_write_f32(cpu->mem, _t97, cpu->f[10]);
|
|
/* 024C82C0 */ _t98 = cpu->r[31] + 0x00000058u;
|
|
/* 024C82C0 */ rbrew_write_f32(cpu->mem, _t98, cpu->f[8]);
|
|
/* 024C82C4 */ _t99 = cpu->r[1] + 0x000000B8u;
|
|
/* 024C82C4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 024C82C8 */ _t100 = cpu->r[1] + 0x000000C8u;
|
|
/* 024C82C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 024C82CC */ _t101 = cpu->r[1] + 0x000000B0u;
|
|
/* 024C82CC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t101);
|
|
/* 024C82D0 */ _t102 = cpu->r[1] + 0x000000A8u;
|
|
/* 024C82D0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t102);
|
|
/* 024C82D4 */ _t103 = cpu->r[1] + 0x000000C0u;
|
|
/* 024C82D4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t103);
|
|
/* 024C82D8 */ _t104 = cpu->r[1] + 0x000000A0u;
|
|
/* 024C82D8 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t104);
|
|
/* 024C82DC */ _t105 = cpu->r[1] + 0x0000009Cu;
|
|
/* 024C82DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t105);
|
|
/* 024C82E0 */ _t106 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C82E0 */ _t107 = _t106 & 0x00000001u;
|
|
/* 024C82E0 */ if (_t107) goto L_024C82E4; // else: addr-0 trap, fall-through
|
|
L_024C82E4: ; // 0x24c82e4
|
|
/* 024C82E4 */ _t108 = cpu->r[1] + 0x000000D4u;
|
|
/* 024C82E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108);
|
|
/* 024C82E8 */ cpu->lr = cpu->r[0];
|
|
/* 024C82EC */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 024C82F0 */ return;
|
|
}
|
|
|
|
// fn_024C82F4 @ 0x24c82f4
|
|
void Gambit_fn_024C82F4(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;
|
|
|
|
L_024C82F4: ; // 0x24c82f4
|
|
/* 024C82F4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024C82F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C82F4 */ cpu->r[1] = _t0;
|
|
/* 024C82F8 */ /* nop */
|
|
/* 024C82FC */ cpu->r[0] = cpu->lr;
|
|
/* 024C8300 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C8304 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C8304 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C8308 */ Gambit_fn_024C69EC(cpu);
|
|
/* 024C830C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8310 */ Gambit_fn_024C7E94(cpu);
|
|
/* 024C8314 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8318 */ Gambit_fn_024C7FC0(cpu);
|
|
/* 024C831C */ _t2 = cpu->r[30] + 0x0000054Cu;
|
|
/* 024C831C */ cpu->r[11] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C8320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C8324 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8324 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C8324 */ if (_t4) goto L_024C833C; else goto L_024C8328;
|
|
L_024C8328: ; // 0x24c8328
|
|
/* 024C8328 */ _t5 = cpu->r[30] + 0x0000054Du;
|
|
/* 024C8328 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 024C832C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8330 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8330 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C8330 */ if (_t7) goto L_024C8334; else goto L_024C833C;
|
|
L_024C8334: ; // 0x24c8334
|
|
/* 024C8334 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8338 */ Gambit_fn_024C7FE4(cpu);
|
|
L_024C833C: ; // 0x24c833c
|
|
/* 024C833C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8340 */ Gambit_fn_02019890(cpu);
|
|
/* 024C8344 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8344 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C834C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C834C */ _t10 = _t9 & 0x00000001u;
|
|
/* 024C834C */ if (_t10) goto L_024C8350; else goto L_024C8440;
|
|
L_024C8350: ; // 0x24c8350
|
|
/* 024C8350 */ cpu->r[27] = 0x101D0000u;
|
|
/* 024C8354 */ cpu->r[29] = 0x101C0000u;
|
|
/* 024C8358 */ _t11 = cpu->r[27] + 0x000006C0u;
|
|
/* 024C8358 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8358 */ cpu->r[27] = _t11;
|
|
/* 024C835C */ cpu->r[28] = 0x100B0000u;
|
|
/* 024C8360 */ _t12 = cpu->r[29] + 0x00006000u;
|
|
/* 024C8360 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C8360 */ cpu->r[29] = _t12;
|
|
/* 024C8364 */ cpu->r[26] = 0x101D0000u;
|
|
/* 024C8368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C836C */ cpu->r[28] = cpu->r[28] + 0x00005114u;
|
|
/* 024C8370 */ _t13 = cpu->r[11] + 0x000002A4u;
|
|
/* 024C8370 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C8374 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8374 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C8374 */ if (_t15) goto L_024C8378; else goto L_024C8384;
|
|
L_024C8378: ; // 0x24c8378
|
|
/* 024C8378 */ _t16 = cpu->r[26] + 0x000006BCu;
|
|
/* 024C8378 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 024C837C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8380 */ _t17 = cpu->r[27] + 0x00000000u;
|
|
/* 024C8380 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
L_024C8384: ; // 0x24c8384
|
|
/* 024C8384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8388 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8388 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024C8388 */ if (_t19) goto L_024C83C0; else goto L_024C838C;
|
|
L_024C838C: ; // 0x24c838c
|
|
/* 024C838C */ _t20 = cpu->r[31] + 0x00000004u;
|
|
/* 024C838C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C8390 */ _t21 = cpu->r[11] + 0x00000014u;
|
|
/* 024C8390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C8394 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8398 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C839C */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024C83A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C83A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C83A8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C83A8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C83A8 */ if (_t23) goto L_024C83C0; else goto L_024C83AC;
|
|
L_024C83AC: ; // 0x24c83ac
|
|
/* 024C83AC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C83B0 */ Gambit_fn_026CC898(cpu);
|
|
/* 024C83B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C83B8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C83B8 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C83B8 */ if (_t25) goto L_024C83D0; else goto L_024C83BC;
|
|
L_024C83BC: ; // 0x24c83bc
|
|
/* 024C83BC */ goto L_024C842C;
|
|
L_024C83C0: ; // 0x24c83c0
|
|
/* 024C83C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C83C4 */ Gambit_fn_026CC898(cpu);
|
|
/* 024C83C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C83CC */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C83CC */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C83CC */ if (_t27) goto L_024C83D0; else goto L_024C842C;
|
|
L_024C83D0: ; // 0x24c83d0
|
|
/* 024C83D0 */ _t28 = cpu->r[27] + 0x00000000u;
|
|
/* 024C83D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C83D4 */ _t29 = cpu->r[29] + 0x00000000u;
|
|
/* 024C83D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C83D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C83DC */ _t30 = cpu->r[11] + 0x000002A4u;
|
|
/* 024C83DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C83E0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C83E0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024C83E0 */ if (_t32) goto L_024C83E4; else goto L_024C83F0;
|
|
L_024C83E4: ; // 0x24c83e4
|
|
/* 024C83E4 */ _t33 = cpu->r[26] + 0x000006BCu;
|
|
/* 024C83E4 */ rbrew_write32(cpu->mem, _t33, cpu->r[28]);
|
|
/* 024C83E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C83EC */ _t34 = cpu->r[27] + 0x00000000u;
|
|
/* 024C83EC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
L_024C83F0: ; // 0x24c83f0
|
|
/* 024C83F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C83F4 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C83F4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024C83F4 */ if (_t36) goto L_024C8418; else goto L_024C83F8;
|
|
L_024C83F8: ; // 0x24c83f8
|
|
/* 024C83F8 */ _t37 = cpu->r[31] + 0x00000004u;
|
|
/* 024C83F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C83FC */ _t38 = cpu->r[12] + 0x00000014u;
|
|
/* 024C83FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C8400 */ cpu->ctr = cpu->r[11];
|
|
/* 024C8404 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8408 */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024C840C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8414 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8414 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C8414 */ if (_t40) goto L_024C8418; else goto L_024C841C;
|
|
L_024C8418: ; // 0x24c8418
|
|
/* 024C8418 */ cpu->r[31] = 0x00000000u;
|
|
L_024C841C: ; // 0x24c841c
|
|
/* 024C841C */ _t41 = cpu->r[31] + 0x00000254u;
|
|
/* 024C841C */ cpu->r[12] = rbrew_read8(cpu->mem, _t41);
|
|
/* 024C8420 */ /* nop */
|
|
/* 024C8424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x0000000Au);
|
|
/* 024C8428 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8428 */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C8428 */ if (_t43) goto L_024C842C; else goto L_024C8440;
|
|
L_024C842C: ; // 0x24c842c
|
|
/* 024C842C */ _t44 = cpu->r[30] + 0x00000588u;
|
|
/* 024C842C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024C8430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8434 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8434 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C8434 */ if (_t46) goto L_024C8440; else goto L_024C8438;
|
|
L_024C8438: ; // 0x24c8438
|
|
/* 024C8438 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C843C */ Gambit_fn_024C8080(cpu);
|
|
L_024C8440: ; // 0x24c8440
|
|
/* 024C8440 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8444 */ Gambit_fn_024C7A28(cpu);
|
|
/* 024C8448 */ /* nop */
|
|
/* 024C844C */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C844C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C8450 */ cpu->lr = cpu->r[0];
|
|
/* 024C8454 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024C8458 */ return;
|
|
}
|
|
|
|
// fn_024C845C @ 0x24c845c
|
|
void Gambit_fn_024C845C(CPUState* cpu) {
|
|
L_024C7290: ; // 0x24c7290
|
|
/* 024C7290 */ return;
|
|
L_024C845C: ; // 0x24c845c
|
|
/* 024C845C */ goto L_024C7290;
|
|
}
|
|
|
|
// fn_024C8460 @ 0x24c8460
|
|
void Gambit_fn_024C8460(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_024C8460: ; // 0x24c8460
|
|
/* 024C8460 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8464 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8464 */ cpu->r[1] = _t0;
|
|
/* 024C8468 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8468 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C846C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8470 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8470 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8474 */ _t3 = cpu->r[31] + 0x00000510u;
|
|
/* 024C8474 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C8478 */ /* nop */
|
|
/* 024C847C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 024C8480 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C8480 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8480 */ if (_t5) goto L_024C8484; else goto L_024C84A0;
|
|
L_024C8484: ; // 0x24c8484
|
|
/* 024C8484 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024C8488 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C8488 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C8488 */ if (_t7) goto L_024C848C; else goto L_024C84B4;
|
|
L_024C848C: ; // 0x24c848c
|
|
/* 024C848C */ _t8 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C848C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8490 */ Gambit_fn_0239859C(cpu);
|
|
/* 024C8494 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8498 */ Gambit_fn_024C6A28(cpu);
|
|
/* 024C849C */ goto L_024C84F4;
|
|
L_024C84A0: ; // 0x24c84a0
|
|
/* 024C84A0 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C84A4 */ _t9 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C84A8 */ _t10 = cpu->r[11] + 0x0000524Cu;
|
|
/* 024C84A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C84AC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C84B0 */ goto L_024C84E4;
|
|
L_024C84B4: ; // 0x24c84b4
|
|
/* 024C84B4 */ _t11 = cpu->r[31] + 0x000003E0u;
|
|
/* 024C84B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C84B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C84BC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C84BC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C84BC */ if (_t13) goto L_024C84C0; else goto L_024C84D4;
|
|
L_024C84C0: ; // 0x24c84c0
|
|
/* 024C84C0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C84C4 */ _t14 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C84C8 */ _t15 = cpu->r[12] + 0x0000525Cu;
|
|
/* 024C84C8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C84CC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C84D0 */ goto L_024C84E4;
|
|
L_024C84D4: ; // 0x24c84d4
|
|
/* 024C84D4 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C84D8 */ _t16 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C84DC */ _t17 = cpu->r[12] + 0x00005260u;
|
|
/* 024C84DC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C84E0 */ Gambit_fn_02398CF8(cpu);
|
|
L_024C84E4: ; // 0x24c84e4
|
|
/* 024C84E4 */ _t18 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C84E8 */ Gambit_fn_0239859C(cpu);
|
|
/* 024C84EC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C84F0 */ Gambit_fn_024C6A28(cpu);
|
|
L_024C84F4: ; // 0x24c84f4
|
|
/* 024C84F4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C84F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C84F8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C84F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C84FC */ cpu->lr = cpu->r[0];
|
|
/* 024C8500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8504 */ return;
|
|
}
|
|
|
|
// fn_024C8464 @ 0x24c8464
|
|
void Gambit_fn_024C8464(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_024C8464: ; // 0x24c8464
|
|
/* 024C8464 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8464 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8464 */ cpu->r[1] = _t0;
|
|
/* 024C8468 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8468 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C846C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8470 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8470 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8474 */ _t3 = cpu->r[31] + 0x00000510u;
|
|
/* 024C8474 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C8478 */ /* nop */
|
|
/* 024C847C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 024C8480 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C8480 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8480 */ if (_t5) goto L_024C8484; else goto L_024C84A0;
|
|
L_024C8484: ; // 0x24c8484
|
|
/* 024C8484 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024C8488 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C8488 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C8488 */ if (_t7) goto L_024C848C; else goto L_024C84B4;
|
|
L_024C848C: ; // 0x24c848c
|
|
/* 024C848C */ _t8 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C848C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8490 */ Gambit_fn_0239859C(cpu);
|
|
/* 024C8494 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8498 */ Gambit_fn_024C6A28(cpu);
|
|
/* 024C849C */ goto L_024C84F4;
|
|
L_024C84A0: ; // 0x24c84a0
|
|
/* 024C84A0 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C84A4 */ _t9 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C84A8 */ _t10 = cpu->r[11] + 0x0000524Cu;
|
|
/* 024C84A8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C84AC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C84B0 */ goto L_024C84E4;
|
|
L_024C84B4: ; // 0x24c84b4
|
|
/* 024C84B4 */ _t11 = cpu->r[31] + 0x000003E0u;
|
|
/* 024C84B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C84B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C84BC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C84BC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C84BC */ if (_t13) goto L_024C84C0; else goto L_024C84D4;
|
|
L_024C84C0: ; // 0x24c84c0
|
|
/* 024C84C0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C84C4 */ _t14 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C84C8 */ _t15 = cpu->r[12] + 0x0000525Cu;
|
|
/* 024C84C8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C84CC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024C84D0 */ goto L_024C84E4;
|
|
L_024C84D4: ; // 0x24c84d4
|
|
/* 024C84D4 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C84D8 */ _t16 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C84DC */ _t17 = cpu->r[12] + 0x00005260u;
|
|
/* 024C84DC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C84E0 */ Gambit_fn_02398CF8(cpu);
|
|
L_024C84E4: ; // 0x24c84e4
|
|
/* 024C84E4 */ _t18 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C84E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C84E8 */ Gambit_fn_0239859C(cpu);
|
|
/* 024C84EC */ cpu->r[3] = cpu->r[31];
|
|
/* 024C84F0 */ Gambit_fn_024C6A28(cpu);
|
|
L_024C84F4: ; // 0x24c84f4
|
|
/* 024C84F4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C84F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C84F8 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C84F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C84FC */ cpu->lr = cpu->r[0];
|
|
/* 024C8500 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8504 */ return;
|
|
}
|
|
|
|
// fn_024C8508 @ 0x24c8508
|
|
void Gambit_fn_024C8508(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C8508: ; // 0x24c8508
|
|
/* 024C8508 */ cpu->r[0] = cpu->lr;
|
|
/* 024C850C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C850C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C850C */ cpu->r[1] = _t0;
|
|
/* 024C8510 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8510 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8514 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8518 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8518 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C851C */ Gambit_fn_024C6A7C(cpu);
|
|
/* 024C8520 */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C8520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8524 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8524 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C8528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C852C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C852C */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C852C */ if (_t6) goto L_024C8530; else goto L_024C8540;
|
|
L_024C8530: ; // 0x24c8530
|
|
/* 024C8530 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8534 */ Gambit_fn_0203F288(cpu);
|
|
/* 024C8538 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C853C */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C853C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_024C8540: ; // 0x24c8540
|
|
/* 024C8540 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8544 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8544 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8548 */ cpu->lr = cpu->r[0];
|
|
/* 024C854C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8550 */ return;
|
|
}
|
|
|
|
// fn_024C850C @ 0x24c850c
|
|
void Gambit_fn_024C850C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C850C: ; // 0x24c850c
|
|
/* 024C850C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C850C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C850C */ cpu->r[1] = _t0;
|
|
/* 024C8510 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8510 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8514 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8518 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8518 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C851C */ Gambit_fn_024C6A7C(cpu);
|
|
/* 024C8520 */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C8520 */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8524 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8524 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C8528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C852C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C852C */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C852C */ if (_t6) goto L_024C8530; else goto L_024C8540;
|
|
L_024C8530: ; // 0x24c8530
|
|
/* 024C8530 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8534 */ Gambit_fn_0203F288(cpu);
|
|
/* 024C8538 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C853C */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C853C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_024C8540: ; // 0x24c8540
|
|
/* 024C8540 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8544 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8544 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8548 */ cpu->lr = cpu->r[0];
|
|
/* 024C854C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8550 */ return;
|
|
}
|
|
|
|
// fn_024C8554 @ 0x24c8554
|
|
void Gambit_fn_024C8554(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C8554: ; // 0x24c8554
|
|
/* 024C8554 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8558 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8558 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8558 */ cpu->r[1] = _t0;
|
|
/* 024C855C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C855C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8560 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8564 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8564 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8568 */ Gambit_fn_024C6AFC(cpu);
|
|
/* 024C856C */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C856C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8570 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8570 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C8574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8578 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8578 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C8578 */ if (_t6) goto L_024C858C; else goto L_024C857C;
|
|
L_024C857C: ; // 0x24c857c
|
|
/* 024C857C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8580 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 024C8584 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C8588 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8588 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_024C858C: ; // 0x24c858c
|
|
/* 024C858C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C858C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8590 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8590 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8594 */ cpu->lr = cpu->r[0];
|
|
/* 024C8598 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C859C */ return;
|
|
}
|
|
|
|
// fn_024C8558 @ 0x24c8558
|
|
void Gambit_fn_024C8558(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C8558: ; // 0x24c8558
|
|
/* 024C8558 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8558 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8558 */ cpu->r[1] = _t0;
|
|
/* 024C855C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C855C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8560 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8564 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8564 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8568 */ Gambit_fn_024C6AFC(cpu);
|
|
/* 024C856C */ _t3 = cpu->r[31] + 0x00000554u;
|
|
/* 024C856C */ cpu->r[31] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8570 */ _t4 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8570 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024C8574 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8578 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8578 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C8578 */ if (_t6) goto L_024C858C; else goto L_024C857C;
|
|
L_024C857C: ; // 0x24c857c
|
|
/* 024C857C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8580 */ Gambit_fn_0203F2A4(cpu);
|
|
/* 024C8584 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C8588 */ _t7 = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8588 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
L_024C858C: ; // 0x24c858c
|
|
/* 024C858C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C858C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8590 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8590 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8594 */ cpu->lr = cpu->r[0];
|
|
/* 024C8598 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C859C */ return;
|
|
}
|
|
|
|
// fn_024C85A0 @ 0x24c85a0
|
|
void Gambit_fn_024C85A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C85A0: ; // 0x24c85a0
|
|
/* 024C85A0 */ _t0 = cpu->r[3] + 0x000003E0u;
|
|
/* 024C85A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C85A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024C85A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C85A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C85A8 */ if (_t2) goto L_024C85AC; else goto L_024C85B4;
|
|
L_024C85AC: ; // 0x24c85ac
|
|
/* 024C85AC */ cpu->r[3] = 0x00000001u;
|
|
/* 024C85B0 */ return;
|
|
L_024C85B4: ; // 0x24c85b4
|
|
/* 024C85B4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C85B8 */ return;
|
|
}
|
|
|
|
// fn_024C85BC @ 0x24c85bc
|
|
void Gambit_fn_024C85BC(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_024C85BC: ; // 0x24c85bc
|
|
/* 024C85BC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024C85BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C85BC */ cpu->r[1] = _t0;
|
|
/* 024C85C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024C85C4 */ /* nop */
|
|
/* 024C85C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C85CC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024C85CC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C85D0 */ Gambit_fn_02019890(cpu);
|
|
/* 024C85D4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C85D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C85D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024C85DC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C85DC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C85DC */ if (_t4) goto L_024C85E0; else goto L_024C86C4;
|
|
L_024C85E0: ; // 0x24c85e0
|
|
/* 024C85E0 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C85E4 */ cpu->r[28] = 0x101D0000u;
|
|
/* 024C85E8 */ _t5 = cpu->r[30] + 0x00006000u;
|
|
/* 024C85E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C85E8 */ cpu->r[30] = _t5;
|
|
/* 024C85EC */ _t6 = cpu->r[28] + 0x000006C0u;
|
|
/* 024C85EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C85EC */ cpu->r[28] = _t6;
|
|
/* 024C85F0 */ _t7 = cpu->r[11] + 0x000002A4u;
|
|
/* 024C85F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C85F4 */ cpu->r[29] = 0x100B0000u;
|
|
/* 024C85F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C85FC */ cpu->r[27] = 0x101D0000u;
|
|
/* 024C8600 */ cpu->r[29] = cpu->r[29] + 0x00005114u;
|
|
/* 024C8604 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8604 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8604 */ if (_t9) goto L_024C8608; else goto L_024C8614;
|
|
L_024C8608: ; // 0x24c8608
|
|
/* 024C8608 */ _t10 = cpu->r[27] + 0x000006BCu;
|
|
/* 024C8608 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024C860C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8610 */ _t11 = cpu->r[28] + 0x00000000u;
|
|
/* 024C8610 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024C8614: ; // 0x24c8614
|
|
/* 024C8614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8618 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8618 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8618 */ if (_t13) goto L_024C863C; else goto L_024C861C;
|
|
L_024C861C: ; // 0x24c861c
|
|
/* 024C861C */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 024C861C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8620 */ _t15 = cpu->r[12] + 0x00000014u;
|
|
/* 024C8620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C8624 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8628 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C862C */ cpu->r[4] = cpu->r[27] + 0x000006BCu;
|
|
/* 024C8630 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8634 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8638 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8638 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024C8638 */ if (_t17) goto L_024C863C; else goto L_024C8640;
|
|
L_024C863C: ; // 0x24c863c
|
|
/* 024C863C */ cpu->r[31] = 0x00000000u;
|
|
L_024C8640: ; // 0x24c8640
|
|
/* 024C8640 */ _t18 = cpu->r[31] + 0x00000254u;
|
|
/* 024C8640 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024C8644 */ /* nop */
|
|
/* 024C8648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000009u);
|
|
/* 024C864C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C864C */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C864C */ if (_t20) goto L_024C86AC; else goto L_024C8650;
|
|
L_024C8650: ; // 0x24c8650
|
|
/* 024C8650 */ _t21 = cpu->r[28] + 0x00000000u;
|
|
/* 024C8650 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C8654 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 024C8654 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C8658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C865C */ _t23 = cpu->r[11] + 0x000002A4u;
|
|
/* 024C865C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C8660 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8660 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C8660 */ if (_t25) goto L_024C8664; else goto L_024C8670;
|
|
L_024C8664: ; // 0x24c8664
|
|
/* 024C8664 */ _t26 = cpu->r[27] + 0x000006BCu;
|
|
/* 024C8664 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 024C8668 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C866C */ _t27 = cpu->r[28] + 0x00000000u;
|
|
/* 024C866C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
L_024C8670: ; // 0x24c8670
|
|
/* 024C8670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8674 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8674 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024C8674 */ if (_t29) goto L_024C8698; else goto L_024C8678;
|
|
L_024C8678: ; // 0x24c8678
|
|
/* 024C8678 */ _t30 = cpu->r[31] + 0x00000004u;
|
|
/* 024C8678 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C867C */ _t31 = cpu->r[12] + 0x00000014u;
|
|
/* 024C867C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C8680 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8684 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8688 */ cpu->r[4] = cpu->r[27] + 0x000006BCu;
|
|
/* 024C868C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8694 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8694 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C8694 */ if (_t33) goto L_024C8698; else goto L_024C869C;
|
|
L_024C8698: ; // 0x24c8698
|
|
/* 024C8698 */ cpu->r[31] = 0x00000000u;
|
|
L_024C869C: ; // 0x24c869c
|
|
/* 024C869C */ _t34 = cpu->r[31] + 0x00000254u;
|
|
/* 024C869C */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 024C86A0 */ /* nop */
|
|
/* 024C86A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000007u);
|
|
/* 024C86A8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C86A8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024C86A8 */ if (_t36) goto L_024C86AC; else goto L_024C86C4;
|
|
L_024C86AC: ; // 0x24c86ac
|
|
/* 024C86AC */ /* nop */
|
|
/* 024C86B0 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 024C86B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C86B4 */ cpu->lr = cpu->r[0];
|
|
/* 024C86B8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C86BC */ cpu->r[3] = 0x00000000u;
|
|
/* 024C86C0 */ return;
|
|
L_024C86C4: ; // 0x24c86c4
|
|
/* 024C86C4 */ /* nop */
|
|
/* 024C86C8 */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 024C86C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C86CC */ cpu->lr = cpu->r[0];
|
|
/* 024C86D0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024C86D4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C86D8 */ return;
|
|
}
|
|
|
|
// fn_024C86DC @ 0x24c86dc
|
|
void Gambit_fn_024C86DC(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_024C86DC: ; // 0x24c86dc
|
|
/* 024C86DC */ cpu->r[0] = cpu->lr;
|
|
/* 024C86E0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024C86E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C86E0 */ cpu->r[1] = _t0;
|
|
/* 024C86E4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024C86E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C86E8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024C86E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024C86EC */ cpu->r[30] = cpu->r[4];
|
|
/* 024C86F0 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C86F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C86F4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 024C86F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C86F8 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C86FC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8700 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C8704 */ cpu->r[31] = cpu->r[5];
|
|
/* 024C8708 */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C870C */ _t5 = cpu->r[29] + 0x00000134u;
|
|
/* 024C870C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8710 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 024C8710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8714 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024C8714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8718 */ /* nop */
|
|
/* 024C871C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C871C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C871C */ if (_t8) goto L_024C87BC; else goto L_024C8720;
|
|
L_024C8720: ; // 0x24c8720
|
|
/* 024C8720 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8720 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C8724 */ _t10 = cpu->r[10] + 0x00000030u;
|
|
/* 024C8724 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C8728 */ cpu->f[6] = cpu->f[9] - cpu->f[10];
|
|
/* 024C872C */ /* nop */
|
|
/* 024C8730 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8730 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[6]);
|
|
/* 024C8734 */ /* nop */
|
|
/* 024C8738 */ /* nop */
|
|
/* 024C873C */ /* nop */
|
|
/* 024C8740 */ /* nop */
|
|
/* 024C8744 */ /* nop */
|
|
/* 024C8748 */ /* nop */
|
|
/* 024C874C */ /* nop */
|
|
/* 024C8750 */ /* nop */
|
|
/* 024C8754 */ cpu->f[7] = cpu->f[13];
|
|
/* 024C8758 */ _t12 = cpu->r[10] + 0x00000018u;
|
|
/* 024C8758 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C875C */ /* nop */
|
|
/* 024C8760 */ _t13 = cpu->r[10] + 0x0000000Cu;
|
|
/* 024C8760 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C8764 */ cpu->f[11] = fma(cpu->f[6], cpu->f[13], cpu->f[11]);
|
|
/* 024C8768 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C876C */ cpu->f[7] = fma(cpu->f[6], cpu->f[8], cpu->f[7]);
|
|
/* 024C8770 */ _t14 = cpu->r[10] + 0x00000024u;
|
|
/* 024C8770 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C8774 */ /* nop */
|
|
/* 024C8778 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 024C8778 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 024C877C */ cpu->f[13] = fma(cpu->f[6], cpu->f[10], cpu->f[8]);
|
|
/* 024C8780 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 024C8780 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[7]);
|
|
/* 024C8784 */ _t17 = cpu->r[12] + 0x00005260u;
|
|
/* 024C8784 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C8788 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 024C8788 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 024C878C */ _t19 = cpu->r[10] + 0x00000034u;
|
|
/* 024C878C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C8790 */ cpu->f[12] = cpu->f[0] / cpu->f[9];
|
|
/* 024C8794 */ cpu->f[10] = cpu->f[7] * cpu->f[12];
|
|
/* 024C8798 */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 024C879C */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 024C879C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[10]);
|
|
/* 024C87A0 */ cpu->f[0] = cpu->f[13] * cpu->f[12];
|
|
/* 024C87A4 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 024C87A4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 024C87A8 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 024C87A8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 024C87AC */ _t23 = cpu->r[29] + 0x00000134u;
|
|
/* 024C87AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C87B0 */ Gambit_fn_02043A74(cpu);
|
|
/* 024C87B4 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 024C87B4 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 024C87B8 */ goto L_024C8814;
|
|
L_024C87BC: ; // 0x24c87bc
|
|
/* 024C87BC */ /* nop */
|
|
/* 024C87C0 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 024C87C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C87C4 */ /* nop */
|
|
/* 024C87C8 */ /* nop */
|
|
/* 024C87CC */ _t26 = cpu->r[10] + 0x00000030u;
|
|
/* 024C87CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C87D0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C87D4 */ cpu->f[13] = cpu->f[13] - cpu->f[8];
|
|
/* 024C87D8 */ _t27 = cpu->r[12] + 0x00005260u;
|
|
/* 024C87D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024C87DC */ _t28 = cpu->r[30] + 0x00000008u;
|
|
/* 024C87DC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 024C87E0 */ _t29 = cpu->r[10] + 0x00000034u;
|
|
/* 024C87E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024C87E4 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 024C87E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 024C87E8 */ cpu->f[12] = cpu->f[0] / cpu->f[9];
|
|
/* 024C87EC */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 024C87EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 024C87F0 */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 024C87F4 */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 024C87F8 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 024C87F8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[10]);
|
|
/* 024C87FC */ cpu->f[0] = cpu->f[13] * cpu->f[12];
|
|
/* 024C8800 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 024C8800 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 024C8804 */ _t34 = cpu->r[30] + 0x00000008u;
|
|
/* 024C8804 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 024C8808 */ _t35 = cpu->r[29] + 0x00000134u;
|
|
/* 024C8808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C880C */ Gambit_fn_02043A74(cpu);
|
|
/* 024C8810 */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8810 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
L_024C8814: ; // 0x24c8814
|
|
/* 024C8814 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 024C8814 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C8818 */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 024C8818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C881C */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 024C881C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024C8820 */ cpu->lr = cpu->r[0];
|
|
/* 024C8824 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C8824 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C8828 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024C882C */ return;
|
|
}
|
|
|
|
// fn_024C86E0 @ 0x24c86e0
|
|
void Gambit_fn_024C86E0(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_024C86E0: ; // 0x24c86e0
|
|
/* 024C86E0 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024C86E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C86E0 */ cpu->r[1] = _t0;
|
|
/* 024C86E4 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024C86E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C86E8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024C86E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024C86EC */ cpu->r[30] = cpu->r[4];
|
|
/* 024C86F0 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C86F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024C86F4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 024C86F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C86F8 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C86FC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8700 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C8704 */ cpu->r[31] = cpu->r[5];
|
|
/* 024C8708 */ Gambit_fn_024F51B0(cpu);
|
|
/* 024C870C */ _t5 = cpu->r[29] + 0x00000134u;
|
|
/* 024C870C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8710 */ _t6 = cpu->r[10] + 0x00000000u;
|
|
/* 024C8710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8714 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024C8714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8718 */ /* nop */
|
|
/* 024C871C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C871C */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C871C */ if (_t8) goto L_024C87BC; else goto L_024C8720;
|
|
L_024C8720: ; // 0x24c8720
|
|
/* 024C8720 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8720 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 024C8724 */ _t10 = cpu->r[10] + 0x00000030u;
|
|
/* 024C8724 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 024C8728 */ cpu->f[6] = cpu->f[9] - cpu->f[10];
|
|
/* 024C872C */ /* nop */
|
|
/* 024C8730 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8730 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[6]);
|
|
/* 024C8734 */ /* nop */
|
|
/* 024C8738 */ /* nop */
|
|
/* 024C873C */ /* nop */
|
|
/* 024C8740 */ /* nop */
|
|
/* 024C8744 */ /* nop */
|
|
/* 024C8748 */ /* nop */
|
|
/* 024C874C */ /* nop */
|
|
/* 024C8750 */ /* nop */
|
|
/* 024C8754 */ cpu->f[7] = cpu->f[13];
|
|
/* 024C8758 */ _t12 = cpu->r[10] + 0x00000018u;
|
|
/* 024C8758 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024C875C */ /* nop */
|
|
/* 024C8760 */ _t13 = cpu->r[10] + 0x0000000Cu;
|
|
/* 024C8760 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024C8764 */ cpu->f[11] = fma(cpu->f[6], cpu->f[13], cpu->f[11]);
|
|
/* 024C8768 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C876C */ cpu->f[7] = fma(cpu->f[6], cpu->f[8], cpu->f[7]);
|
|
/* 024C8770 */ _t14 = cpu->r[10] + 0x00000024u;
|
|
/* 024C8770 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024C8774 */ /* nop */
|
|
/* 024C8778 */ _t15 = cpu->r[30] + 0x00000004u;
|
|
/* 024C8778 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[11]);
|
|
/* 024C877C */ cpu->f[13] = fma(cpu->f[6], cpu->f[10], cpu->f[8]);
|
|
/* 024C8780 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 024C8780 */ rbrew_write_f32(cpu->mem, _t16, cpu->f[7]);
|
|
/* 024C8784 */ _t17 = cpu->r[12] + 0x00005260u;
|
|
/* 024C8784 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C8788 */ _t18 = cpu->r[30] + 0x00000008u;
|
|
/* 024C8788 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 024C878C */ _t19 = cpu->r[10] + 0x00000034u;
|
|
/* 024C878C */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024C8790 */ cpu->f[12] = cpu->f[0] / cpu->f[9];
|
|
/* 024C8794 */ cpu->f[10] = cpu->f[7] * cpu->f[12];
|
|
/* 024C8798 */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 024C879C */ _t20 = cpu->r[30] + 0x00000000u;
|
|
/* 024C879C */ rbrew_write_f32(cpu->mem, _t20, cpu->f[10]);
|
|
/* 024C87A0 */ cpu->f[0] = cpu->f[13] * cpu->f[12];
|
|
/* 024C87A4 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 024C87A4 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]);
|
|
/* 024C87A8 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 024C87A8 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 024C87AC */ _t23 = cpu->r[29] + 0x00000134u;
|
|
/* 024C87AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C87B0 */ Gambit_fn_02043A74(cpu);
|
|
/* 024C87B4 */ _t24 = cpu->r[31] + 0x00000000u;
|
|
/* 024C87B4 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
/* 024C87B8 */ goto L_024C8814;
|
|
L_024C87BC: ; // 0x24c87bc
|
|
/* 024C87BC */ /* nop */
|
|
/* 024C87C0 */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 024C87C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024C87C4 */ /* nop */
|
|
/* 024C87C8 */ /* nop */
|
|
/* 024C87CC */ _t26 = cpu->r[10] + 0x00000030u;
|
|
/* 024C87CC */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024C87D0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C87D4 */ cpu->f[13] = cpu->f[13] - cpu->f[8];
|
|
/* 024C87D8 */ _t27 = cpu->r[12] + 0x00005260u;
|
|
/* 024C87D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024C87DC */ _t28 = cpu->r[30] + 0x00000008u;
|
|
/* 024C87DC */ rbrew_write_f32(cpu->mem, _t28, cpu->f[13]);
|
|
/* 024C87E0 */ _t29 = cpu->r[10] + 0x00000034u;
|
|
/* 024C87E0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024C87E4 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 024C87E4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 024C87E8 */ cpu->f[12] = cpu->f[0] / cpu->f[9];
|
|
/* 024C87EC */ _t31 = cpu->r[30] + 0x00000004u;
|
|
/* 024C87EC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 024C87F0 */ cpu->f[10] = cpu->f[10] * cpu->f[12];
|
|
/* 024C87F4 */ cpu->f[11] = cpu->f[11] * cpu->f[12];
|
|
/* 024C87F8 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 024C87F8 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[10]);
|
|
/* 024C87FC */ cpu->f[0] = cpu->f[13] * cpu->f[12];
|
|
/* 024C8800 */ _t33 = cpu->r[30] + 0x00000004u;
|
|
/* 024C8800 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 024C8804 */ _t34 = cpu->r[30] + 0x00000008u;
|
|
/* 024C8804 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]);
|
|
/* 024C8808 */ _t35 = cpu->r[29] + 0x00000134u;
|
|
/* 024C8808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C880C */ Gambit_fn_02043A74(cpu);
|
|
/* 024C8810 */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8810 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
L_024C8814: ; // 0x24c8814
|
|
/* 024C8814 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 024C8814 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C8818 */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 024C8818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C881C */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 024C881C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024C8820 */ cpu->lr = cpu->r[0];
|
|
/* 024C8824 */ _t40 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C8824 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024C8828 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024C882C */ return;
|
|
}
|
|
|
|
// fn_024C8830 @ 0x24c8830
|
|
void Gambit_fn_024C8830(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_024C8830: ; // 0x24c8830
|
|
/* 024C8830 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 024C8830 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8830 */ cpu->r[1] = _t0;
|
|
/* 024C8834 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8838 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024C8838 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 024C883C */ /* nop */
|
|
/* 024C8840 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8840 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024C8844 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 024C8844 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024C8848 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8848 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024C884C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C884C */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 024C8850 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 024C8850 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[29]);
|
|
/* 024C8854 */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C8854 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024C8858 */ /* nop */
|
|
/* 024C885C */ _t8 = cpu->r[1] + 0x00000030u;
|
|
/* 024C885C */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 024C8860 */ /* nop */
|
|
/* 024C8864 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 024C8864 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 024C8868 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C886C */ _t10 = cpu->r[1] + 0x00000040u;
|
|
/* 024C886C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 024C8870 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8870 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C8870 */ if (_t12) goto L_024C8874; else goto L_024C8884;
|
|
L_024C8874: ; // 0x24c8874
|
|
/* 024C8874 */ cpu->r[3] = 0x00000308u;
|
|
/* 024C8878 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C887C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C887C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8880 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8880 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C8880 */ if (_t14) goto L_024C8A04; else goto L_024C8884;
|
|
L_024C8884: ; // 0x24c8884
|
|
/* 024C8884 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8888 */ Gambit_fn_025015D0(cpu);
|
|
/* 024C888C */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C8890 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C8894 */ _t15 = cpu->r[12] + 0x0000524Cu;
|
|
/* 024C8894 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8898 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C889C */ _t16 = cpu->r[10] + 0x00005268u;
|
|
/* 024C889C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024C88A0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C88A4 */ _t17 = cpu->r[12] + 0x00005264u;
|
|
/* 024C88A4 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024C88A8 */ cpu->r[29] = 0x10110000u;
|
|
/* 024C88AC */ cpu->r[0] = cpu->r[0] + 0x0000513Cu;
|
|
/* 024C88B0 */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 024C88B4 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 024C88B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C88B8 */ _t18 = cpu->r[31] + 0x00000000u;
|
|
/* 024C88B8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024C88BC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C88BC */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C88BC */ if (_t20) goto L_024C88C0; else goto L_024C88D0;
|
|
L_024C88C0: ; // 0x24c88c0
|
|
/* 024C88C0 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C88C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C88C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C88C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C88CC */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C88CC */ _t22 = _t21 & 0x00000001u;
|
|
/* 024C88CC */ if (_t22) goto L_024C8904; else goto L_024C88D0;
|
|
L_024C88D0: ; // 0x24c88d0
|
|
/* 024C88D0 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C88D4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C88D8 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C88DC */ cpu->r[5] = cpu->r[5] + 0x00005290u;
|
|
/* 024C88E0 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C88E4 */ cpu->r[6] = cpu->r[6] + 0x000052A0u;
|
|
/* 024C88E8 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C88EC */ cpu->r[3] = cpu->r[30];
|
|
/* 024C88F0 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C88F4 */ _t23 = cpu->r[30] + 0x00000058u;
|
|
/* 024C88F4 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[29]);
|
|
/* 024C88F8 */ _t24 = cpu->r[30] + 0x00000054u;
|
|
/* 024C88F8 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[31]);
|
|
/* 024C88FC */ _t25 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C88FC */ rbrew_write_f32(cpu->mem, _t25, cpu->f[30]);
|
|
/* 024C8900 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 024C8900 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
L_024C8904: ; // 0x24c8904
|
|
/* 024C8904 */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 024C8904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C8908 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8908 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C8908 */ if (_t28) goto L_024C890C; else goto L_024C891C;
|
|
L_024C890C: ; // 0x24c890c
|
|
/* 024C890C */ cpu->r[3] = 0x00000060u;
|
|
/* 024C8910 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C8914 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C8914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C8918 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8918 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C8918 */ if (_t30) goto L_024C8958; else goto L_024C891C;
|
|
L_024C891C: ; // 0x24c891c
|
|
/* 024C891C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C8920 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C8924 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C8928 */ cpu->r[5] = cpu->r[5] + 0x00005270u;
|
|
/* 024C892C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C8930 */ cpu->r[6] = cpu->r[6] + 0x000052B8u;
|
|
/* 024C8934 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C8938 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C893C */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C8940 */ _t31 = cpu->r[30] + 0x00000058u;
|
|
/* 024C8940 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[29]);
|
|
/* 024C8944 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C8948 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 024C8948 */ rbrew_write32(cpu->mem, _t32, cpu->r[29]);
|
|
/* 024C894C */ _t33 = cpu->r[11] + 0x0000526Cu;
|
|
/* 024C894C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 024C8950 */ _t34 = cpu->r[30] + 0x00000054u;
|
|
/* 024C8950 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[30]);
|
|
/* 024C8954 */ _t35 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C8954 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
L_024C8958: ; // 0x24c8958
|
|
/* 024C8958 */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 024C8958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C895C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C895C */ _t37 = _t36 & 0x00000001u;
|
|
/* 024C895C */ if (_t37) goto L_024C8960; else goto L_024C8970;
|
|
L_024C8960: ; // 0x24c8960
|
|
/* 024C8960 */ cpu->r[3] = 0x00000060u;
|
|
/* 024C8964 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C8968 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C8968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C896C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C896C */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C896C */ if (_t39) goto L_024C89A4; else goto L_024C8970;
|
|
L_024C8970: ; // 0x24c8970
|
|
/* 024C8970 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C8974 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C8978 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C897C */ cpu->r[5] = cpu->r[5] + 0x000052D8u;
|
|
/* 024C8980 */ cpu->r[8] = 0x00000000u;
|
|
/* 024C8984 */ cpu->r[6] = cpu->r[6] + 0x000052F4u;
|
|
/* 024C8988 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C898C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8990 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C8994 */ _t40 = cpu->r[30] + 0x00000058u;
|
|
/* 024C8994 */ rbrew_write_f32(cpu->mem, _t40, cpu->f[29]);
|
|
/* 024C8998 */ _t41 = cpu->r[30] + 0x00000054u;
|
|
/* 024C8998 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[31]);
|
|
/* 024C899C */ _t42 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C899C */ rbrew_write_f32(cpu->mem, _t42, cpu->f[30]);
|
|
/* 024C89A0 */ _t43 = cpu->r[30] + 0x00000000u;
|
|
/* 024C89A0 */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
L_024C89A4: ; // 0x24c89a4
|
|
/* 024C89A4 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 024C89A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C89A8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C89A8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 024C89A8 */ if (_t45) goto L_024C89AC; else goto L_024C89BC;
|
|
L_024C89AC: ; // 0x24c89ac
|
|
/* 024C89AC */ cpu->r[3] = 0x00000060u;
|
|
/* 024C89B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C89B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C89B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C89B8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C89B8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C89B8 */ if (_t47) goto L_024C8A04; else goto L_024C89BC;
|
|
L_024C89BC: ; // 0x24c89bc
|
|
/* 024C89BC */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C89C0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C89C4 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C89C8 */ cpu->r[5] = cpu->r[5] + 0x00005314u;
|
|
/* 024C89CC */ cpu->r[8] = 0x00000000u;
|
|
/* 024C89D0 */ cpu->r[6] = cpu->r[6] + 0x00005284u;
|
|
/* 024C89D4 */ cpu->r[7] = cpu->r[5];
|
|
/* 024C89D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C89DC */ Gambit_fn_027F84F0(cpu);
|
|
/* 024C89E0 */ cpu->r[11] = 0x00000078u;
|
|
/* 024C89E4 */ cpu->r[9] = 0x10110000u;
|
|
/* 024C89E8 */ _t48 = cpu->r[30] + 0x00000054u;
|
|
/* 024C89E8 */ rbrew_write32(cpu->mem, _t48, cpu->r[11]);
|
|
/* 024C89EC */ cpu->r[9] = cpu->r[9] + 0x0000095Cu;
|
|
/* 024C89F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C89F4 */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 024C89F4 */ rbrew_write32(cpu->mem, _t49, cpu->r[9]);
|
|
/* 024C89F8 */ cpu->r[9] = 0x0000012Cu;
|
|
/* 024C89FC */ _t50 = cpu->r[30] + 0x00000058u;
|
|
/* 024C89FC */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 024C8A00 */ _t51 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024C8A00 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
L_024C8A04: ; // 0x24c8a04
|
|
/* 024C8A04 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8A04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C8A08 */ _t53 = cpu->r[1] + 0x00000040u;
|
|
/* 024C8A08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t53);
|
|
/* 024C8A0C */ _t54 = cpu->r[1] + 0x00000020u;
|
|
/* 024C8A0C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t54);
|
|
/* 024C8A10 */ _t55 = cpu->r[1] + 0x00000038u;
|
|
/* 024C8A10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t55);
|
|
/* 024C8A14 */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 024C8A14 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t56);
|
|
/* 024C8A18 */ _t57 = cpu->r[1] + 0x00000018u;
|
|
/* 024C8A18 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t57);
|
|
/* 024C8A1C */ _t58 = cpu->r[1] + 0x00000028u;
|
|
/* 024C8A1C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t58);
|
|
/* 024C8A20 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8A24 */ _t59 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8A24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C8A28 */ _t60 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8A28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C8A2C */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C8A2C */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C8A2C */ if (_t62) goto L_024C8A30; // else: addr-0 trap, fall-through
|
|
L_024C8A30: ; // 0x24c8a30
|
|
/* 024C8A30 */ _t63 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C8A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024C8A34 */ cpu->lr = cpu->r[0];
|
|
/* 024C8A38 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 024C8A3C */ return;
|
|
}
|
|
|
|
// fn_024C8A40 @ 0x24c8a40
|
|
void Gambit_fn_024C8A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C8A40: ; // 0x24c8a40
|
|
/* 024C8A40 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8A44 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C8A44 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C8A48 */ cpu->r[3] = 0x00000308u;
|
|
/* 024C8A4C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C8A4C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C8A4C */ cpu->r[1] = _t1;
|
|
/* 024C8A50 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C8A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8A58 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8A58 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C8A58 */ if (_t3) goto L_024C8A60; else goto L_024C8A5C;
|
|
L_024C8A5C: ; // 0x24c8a5c
|
|
/* 024C8A5C */ Gambit_fn_024C8830(cpu);
|
|
L_024C8A60: ; // 0x24c8a60
|
|
/* 024C8A60 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8A64 */ cpu->lr = cpu->r[0];
|
|
/* 024C8A68 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8A6C */ return;
|
|
}
|
|
|
|
// fn_024C8A4C @ 0x24c8a4c
|
|
void Gambit_fn_024C8A4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024C8A4C: ; // 0x24c8a4c
|
|
/* 024C8A4C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024C8A4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8A4C */ cpu->r[1] = _t0;
|
|
/* 024C8A50 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C8A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8A58 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8A58 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8A58 */ if (_t2) goto L_024C8A60; else goto L_024C8A5C;
|
|
L_024C8A5C: ; // 0x24c8a5c
|
|
/* 024C8A5C */ Gambit_fn_024C8830(cpu);
|
|
L_024C8A60: ; // 0x24c8a60
|
|
/* 024C8A60 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8A60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8A64 */ cpu->lr = cpu->r[0];
|
|
/* 024C8A68 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8A6C */ return;
|
|
}
|
|
|
|
// fn_024C8A70 @ 0x24c8a70
|
|
void Gambit_fn_024C8A70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8A70: ; // 0x24c8a70
|
|
/* 024C8A70 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8A74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8A74 */ cpu->r[1] = _t0;
|
|
/* 024C8A78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8A78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8A7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8A7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8A80 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8A84 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8A88 */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8A88 */ cpu->r[11] = _t3;
|
|
/* 024C8A8C */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8A90 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8A98 */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8A9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8A9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8A9C */ if (_t5) goto L_024C8AA0; else goto L_024C8AB4;
|
|
L_024C8AA0: ; // 0x24c8aa0
|
|
/* 024C8AA0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8AA4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8AA8 */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8AAC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8AAC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8AB0 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8AB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8AB4: ; // 0x24c8ab4
|
|
/* 024C8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8AB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8AB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8AB8 */ if (_t9) goto L_024C8AD8; else goto L_024C8ABC;
|
|
L_024C8ABC: ; // 0x24c8abc
|
|
/* 024C8ABC */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8AC0 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8AC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8AC4 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8AC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8ACC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8AD4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8AD4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8AD4 */ if (_t13) goto L_024C8AD8; else goto L_024C8ADC;
|
|
L_024C8AD8: ; // 0x24c8ad8
|
|
/* 024C8AD8 */ cpu->r[31] = 0x00000000u;
|
|
L_024C8ADC: ; // 0x24c8adc
|
|
/* 024C8ADC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8AE0 */ _t15 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C8AE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8AE4 */ cpu->lr = cpu->r[0];
|
|
/* 024C8AE8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8AE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8AEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8AF0 */ return;
|
|
}
|
|
|
|
// fn_024C8A74 @ 0x24c8a74
|
|
void Gambit_fn_024C8A74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8A74: ; // 0x24c8a74
|
|
/* 024C8A74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8A74 */ cpu->r[1] = _t0;
|
|
/* 024C8A78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8A78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8A7C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8A7C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8A80 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8A84 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8A88 */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8A88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8A88 */ cpu->r[11] = _t3;
|
|
/* 024C8A8C */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8A90 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8A98 */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8A9C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8A9C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8A9C */ if (_t5) goto L_024C8AA0; else goto L_024C8AB4;
|
|
L_024C8AA0: ; // 0x24c8aa0
|
|
/* 024C8AA0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8AA4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8AA8 */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8AAC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8AAC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8AB0 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8AB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8AB4: ; // 0x24c8ab4
|
|
/* 024C8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8AB8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8AB8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8AB8 */ if (_t9) goto L_024C8AD8; else goto L_024C8ABC;
|
|
L_024C8ABC: ; // 0x24c8abc
|
|
/* 024C8ABC */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8AC0 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8AC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8AC4 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8AC8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8ACC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8AD4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8AD4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8AD4 */ if (_t13) goto L_024C8AD8; else goto L_024C8ADC;
|
|
L_024C8AD8: ; // 0x24c8ad8
|
|
/* 024C8AD8 */ cpu->r[31] = 0x00000000u;
|
|
L_024C8ADC: ; // 0x24c8adc
|
|
/* 024C8ADC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8AE0 */ _t15 = cpu->r[31] + 0x000001DCu;
|
|
/* 024C8AE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8AE4 */ cpu->lr = cpu->r[0];
|
|
/* 024C8AE8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8AE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8AEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8AF0 */ return;
|
|
}
|
|
|
|
// fn_024C8AF4 @ 0x24c8af4
|
|
void Gambit_fn_024C8AF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8AF4: ; // 0x24c8af4
|
|
/* 024C8AF4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8AF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8AF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8AF8 */ cpu->r[1] = _t0;
|
|
/* 024C8AFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8AFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8B00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8B04 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8B08 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8B0C */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8B0C */ cpu->r[11] = _t3;
|
|
/* 024C8B10 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8B14 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8B1C */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8B20 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B20 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8B20 */ if (_t5) goto L_024C8B24; else goto L_024C8B38;
|
|
L_024C8B24: ; // 0x24c8b24
|
|
/* 024C8B24 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8B28 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8B2C */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8B30 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8B30 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8B34 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8B34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8B38: ; // 0x24c8b38
|
|
/* 024C8B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8B3C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B3C */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8B3C */ if (_t9) goto L_024C8B5C; else goto L_024C8B40;
|
|
L_024C8B40: ; // 0x24c8b40
|
|
/* 024C8B40 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8B44 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8B44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8B48 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8B4C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8B58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8B58 */ if (_t13) goto L_024C8B5C; else goto L_024C8B60;
|
|
L_024C8B5C: ; // 0x24c8b5c
|
|
/* 024C8B5C */ cpu->r[31] = 0x00000000u;
|
|
L_024C8B60: ; // 0x24c8b60
|
|
/* 024C8B60 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8B64 */ _t15 = cpu->r[31] + 0x0000023Cu;
|
|
/* 024C8B64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8B68 */ cpu->lr = cpu->r[0];
|
|
/* 024C8B6C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8B6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8B70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8B74 */ return;
|
|
}
|
|
|
|
// fn_024C8AF8 @ 0x24c8af8
|
|
void Gambit_fn_024C8AF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8AF8: ; // 0x24c8af8
|
|
/* 024C8AF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8AF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8AF8 */ cpu->r[1] = _t0;
|
|
/* 024C8AFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8AFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8B00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8B04 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8B08 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8B0C */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8B0C */ cpu->r[11] = _t3;
|
|
/* 024C8B10 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8B14 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8B1C */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8B20 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B20 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8B20 */ if (_t5) goto L_024C8B24; else goto L_024C8B38;
|
|
L_024C8B24: ; // 0x24c8b24
|
|
/* 024C8B24 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8B28 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8B2C */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8B30 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8B30 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8B34 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8B34 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8B38: ; // 0x24c8b38
|
|
/* 024C8B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8B3C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B3C */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8B3C */ if (_t9) goto L_024C8B5C; else goto L_024C8B40;
|
|
L_024C8B40: ; // 0x24c8b40
|
|
/* 024C8B40 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8B40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8B44 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8B44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8B48 */ cpu->ctr = cpu->r[12];
|
|
/* 024C8B4C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8B50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8B58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8B58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8B58 */ if (_t13) goto L_024C8B5C; else goto L_024C8B60;
|
|
L_024C8B5C: ; // 0x24c8b5c
|
|
/* 024C8B5C */ cpu->r[31] = 0x00000000u;
|
|
L_024C8B60: ; // 0x24c8b60
|
|
/* 024C8B60 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8B64 */ _t15 = cpu->r[31] + 0x0000023Cu;
|
|
/* 024C8B64 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8B68 */ cpu->lr = cpu->r[0];
|
|
/* 024C8B6C */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8B6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8B70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8B74 */ return;
|
|
}
|
|
|
|
// fn_024C8B78 @ 0x24c8b78
|
|
void Gambit_fn_024C8B78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8B78: ; // 0x24c8b78
|
|
/* 024C8B78 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8B7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8B7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8B7C */ cpu->r[1] = _t0;
|
|
/* 024C8B80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8B80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8B84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8B88 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8B8C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8B90 */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8B90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8B90 */ cpu->r[11] = _t3;
|
|
/* 024C8B94 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8B98 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8BA0 */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8BA4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BA4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8BA4 */ if (_t5) goto L_024C8BA8; else goto L_024C8BBC;
|
|
L_024C8BA8: ; // 0x24c8ba8
|
|
/* 024C8BA8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8BAC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8BB0 */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8BB4 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8BB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8BB8 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8BB8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8BBC: ; // 0x24c8bbc
|
|
/* 024C8BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8BC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8BC0 */ if (_t9) goto L_024C8BE0; else goto L_024C8BC4;
|
|
L_024C8BC4: ; // 0x24c8bc4
|
|
/* 024C8BC4 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8BC8 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8BC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8BCC */ cpu->ctr = cpu->r[12];
|
|
/* 024C8BD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8BD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8BDC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BDC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8BDC */ if (_t13) goto L_024C8BE0; else goto L_024C8BE4;
|
|
L_024C8BE0: ; // 0x24c8be0
|
|
/* 024C8BE0 */ cpu->r[31] = 0x00000000u;
|
|
L_024C8BE4: ; // 0x24c8be4
|
|
/* 024C8BE4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8BE8 */ _t15 = cpu->r[31] + 0x0000029Cu;
|
|
/* 024C8BE8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8BEC */ cpu->lr = cpu->r[0];
|
|
/* 024C8BF0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8BF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8BF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8BF8 */ return;
|
|
}
|
|
|
|
// fn_024C8B7C @ 0x24c8b7c
|
|
void Gambit_fn_024C8B7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024C8B7C: ; // 0x24c8b7c
|
|
/* 024C8B7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8B7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8B7C */ cpu->r[1] = _t0;
|
|
/* 024C8B80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8B80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8B84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8B84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8B88 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8B8C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C8B90 */ _t3 = cpu->r[11] + 0x000004BCu;
|
|
/* 024C8B90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8B90 */ cpu->r[11] = _t3;
|
|
/* 024C8B94 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8B98 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8BA0 */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8BA4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BA4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8BA4 */ if (_t5) goto L_024C8BA8; else goto L_024C8BBC;
|
|
L_024C8BA8: ; // 0x24c8ba8
|
|
/* 024C8BA8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C8BAC */ cpu->r[9] = 0x00000001u;
|
|
/* 024C8BB0 */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C8BB4 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C8BB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024C8BB8 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8BB8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024C8BBC: ; // 0x24c8bbc
|
|
/* 024C8BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8BC0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BC0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C8BC0 */ if (_t9) goto L_024C8BE0; else goto L_024C8BC4;
|
|
L_024C8BC4: ; // 0x24c8bc4
|
|
/* 024C8BC4 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8BC8 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024C8BC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8BCC */ cpu->ctr = cpu->r[12];
|
|
/* 024C8BD0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8BD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8BDC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8BDC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C8BDC */ if (_t13) goto L_024C8BE0; else goto L_024C8BE4;
|
|
L_024C8BE0: ; // 0x24c8be0
|
|
/* 024C8BE0 */ cpu->r[31] = 0x00000000u;
|
|
L_024C8BE4: ; // 0x24c8be4
|
|
/* 024C8BE4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8BE8 */ _t15 = cpu->r[31] + 0x0000029Cu;
|
|
/* 024C8BE8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024C8BEC */ cpu->lr = cpu->r[0];
|
|
/* 024C8BF0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8BF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C8BF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8BF8 */ return;
|
|
}
|
|
|
|
// fn_024C8BFC @ 0x24c8bfc
|
|
void Gambit_fn_024C8BFC(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_024C8BFC: ; // 0x24c8bfc
|
|
/* 024C8BFC */ cpu->r[0] = cpu->lr;
|
|
/* 024C8C00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8C00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8C00 */ cpu->r[1] = _t0;
|
|
/* 024C8C04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8C04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C8C08 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C8C0C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8C0C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C8C10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8C10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C8C14 */ Gambit_fn_024C7B40(cpu);
|
|
/* 024C8C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8C1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C1C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8C1C */ if (_t5) goto L_024C8C20; else goto L_024C8C88;
|
|
L_024C8C20: ; // 0x24c8c20
|
|
/* 024C8C20 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8C24 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8C28 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C8C2C */ _t6 = cpu->r[10] + 0x000004BCu;
|
|
/* 024C8C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8C2C */ cpu->r[10] = _t6;
|
|
/* 024C8C30 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8C34 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C8C3C */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8C40 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C40 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C8C40 */ if (_t8) goto L_024C8C44; else goto L_024C8C58;
|
|
L_024C8C44: ; // 0x24c8c44
|
|
/* 024C8C44 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C8C48 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8C4C */ cpu->r[7] = cpu->r[7] + 0x000050E4u;
|
|
/* 024C8C50 */ _t9 = cpu->r[10] + 0x00000000u;
|
|
/* 024C8C50 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C8C54 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8C54 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
L_024C8C58: ; // 0x24c8c58
|
|
/* 024C8C58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8C5C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C5C */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C8C5C */ if (_t12) goto L_024C8C7C; else goto L_024C8C60;
|
|
L_024C8C60: ; // 0x24c8c60
|
|
/* 024C8C60 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8C60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C8C64 */ _t14 = cpu->r[8] + 0x0000006Cu;
|
|
/* 024C8C64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8C68 */ cpu->ctr = cpu->r[9];
|
|
/* 024C8C6C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8C70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8C78 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C78 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C8C78 */ if (_t16) goto L_024C8C7C; else goto L_024C8C80;
|
|
L_024C8C7C: ; // 0x24c8c7c
|
|
/* 024C8C7C */ cpu->r[31] = 0x00000000u;
|
|
L_024C8C80: ; // 0x24c8c80
|
|
/* 024C8C80 */ _t17 = cpu->r[31] + 0x000002FCu;
|
|
/* 024C8C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C8C84 */ _t18 = cpu->r[30] + 0x00000550u;
|
|
/* 024C8C84 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_024C8C88: ; // 0x24c8c88
|
|
/* 024C8C88 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C8C8C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8C8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C8C90 */ cpu->lr = cpu->r[0];
|
|
/* 024C8C94 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8C94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C8C98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8C9C */ return;
|
|
}
|
|
|
|
// fn_024C8C00 @ 0x24c8c00
|
|
void Gambit_fn_024C8C00(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_024C8C00: ; // 0x24c8c00
|
|
/* 024C8C00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8C00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8C00 */ cpu->r[1] = _t0;
|
|
/* 024C8C04 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8C04 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C8C08 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C8C0C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8C0C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C8C10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8C10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C8C14 */ Gambit_fn_024C7B40(cpu);
|
|
/* 024C8C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8C1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C1C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8C1C */ if (_t5) goto L_024C8C20; else goto L_024C8C88;
|
|
L_024C8C20: ; // 0x24c8c20
|
|
/* 024C8C20 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C8C24 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024C8C28 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C8C2C */ _t6 = cpu->r[10] + 0x000004BCu;
|
|
/* 024C8C2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8C2C */ cpu->r[10] = _t6;
|
|
/* 024C8C30 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024C8C34 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C8C3C */ cpu->r[4] = cpu->r[4] + 0x000007D0u;
|
|
/* 024C8C40 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C40 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C8C40 */ if (_t8) goto L_024C8C44; else goto L_024C8C58;
|
|
L_024C8C44: ; // 0x24c8c44
|
|
/* 024C8C44 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C8C48 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8C4C */ cpu->r[7] = cpu->r[7] + 0x000050E4u;
|
|
/* 024C8C50 */ _t9 = cpu->r[10] + 0x00000000u;
|
|
/* 024C8C50 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C8C54 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 024C8C54 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
L_024C8C58: ; // 0x24c8c58
|
|
/* 024C8C58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C8C5C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C5C */ _t12 = _t11 & 0x00000001u;
|
|
/* 024C8C5C */ if (_t12) goto L_024C8C7C; else goto L_024C8C60;
|
|
L_024C8C60: ; // 0x24c8c60
|
|
/* 024C8C60 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 024C8C60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C8C64 */ _t14 = cpu->r[8] + 0x0000006Cu;
|
|
/* 024C8C64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C8C68 */ cpu->ctr = cpu->r[9];
|
|
/* 024C8C6C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C8C70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C8C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8C78 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8C78 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C8C78 */ if (_t16) goto L_024C8C7C; else goto L_024C8C80;
|
|
L_024C8C7C: ; // 0x24c8c7c
|
|
/* 024C8C7C */ cpu->r[31] = 0x00000000u;
|
|
L_024C8C80: ; // 0x24c8c80
|
|
/* 024C8C80 */ _t17 = cpu->r[31] + 0x000002FCu;
|
|
/* 024C8C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C8C84 */ _t18 = cpu->r[30] + 0x00000550u;
|
|
/* 024C8C84 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_024C8C88: ; // 0x24c8c88
|
|
/* 024C8C88 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8C88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C8C8C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8C8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C8C90 */ cpu->lr = cpu->r[0];
|
|
/* 024C8C94 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8C94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C8C98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8C9C */ return;
|
|
}
|
|
|
|
// fn_024C8CA4 @ 0x24c8ca4
|
|
void Gambit_fn_024C8CA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C8CA4: ; // 0x24c8ca4
|
|
/* 024C8CA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8CA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8CA4 */ cpu->r[1] = _t0;
|
|
/* 024C8CA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8CA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8CAC */ cpu->r[4] = 0x100B0000u;
|
|
/* 024C8CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8CB4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C8CB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8CB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8CBC */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C8CBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8CC0 */ cpu->r[4] = cpu->r[4] + 0x00005324u;
|
|
/* 024C8CC4 */ Gambit_fn_02398850(cpu);
|
|
/* 024C8CC8 */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 024C8CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8CCC */ cpu->r[12] = 0x00000000u;
|
|
/* 024C8CD0 */ _t5 = cpu->r[11] + 0x000001C8u;
|
|
/* 024C8CD0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 024C8CD4 */ _t6 = cpu->r[31] + 0x00000554u;
|
|
/* 024C8CD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8CD8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C8CDC */ _t7 = cpu->r[11] + 0x000001C8u;
|
|
/* 024C8CDC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 024C8CE0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8CE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8CE4 */ cpu->lr = cpu->r[0];
|
|
/* 024C8CE8 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8CE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8CEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8CF0 */ return;
|
|
}
|
|
|
|
// fn_024C8D0C @ 0x24c8d0c
|
|
void Gambit_fn_024C8D0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024C8D0C: ; // 0x24c8d0c
|
|
/* 024C8D0C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C8D0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8D0C */ cpu->r[1] = _t0;
|
|
/* 024C8D10 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8D10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8D14 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8D18 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8D18 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8D1C */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C8D1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8D20 */ Gambit_fn_02398FA8(cpu);
|
|
/* 024C8D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8D28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8D28 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C8D28 */ if (_t5) goto L_024C8D54; else goto L_024C8D2C;
|
|
L_024C8D2C: ; // 0x24c8d2c
|
|
/* 024C8D2C */ _t6 = cpu->r[31] + 0x00000548u;
|
|
/* 024C8D2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8D30 */ cpu->r[4] = 0x00000000u;
|
|
/* 024C8D34 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 024C8D34 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 024C8D38 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8D38 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 024C8D3C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024C8D40 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8D40 */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 024C8D44 */ Gambit_fn_024F2540(cpu);
|
|
/* 024C8D48 */ cpu->r[4] = 0x00000002u;
|
|
/* 024C8D4C */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024C8D50 */ Gambit_fn_023A34EC(cpu);
|
|
L_024C8D54: ; // 0x24c8d54
|
|
/* 024C8D54 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C8D54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C8D58 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8D58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8D5C */ cpu->lr = cpu->r[0];
|
|
/* 024C8D60 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C8D64 */ return;
|
|
}
|
|
|
|
// fn_024C8D6C @ 0x24c8d6c
|
|
void Gambit_fn_024C8D6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024C8D6C: ; // 0x24c8d6c
|
|
/* 024C8D6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8D6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8D6C */ cpu->r[1] = _t0;
|
|
/* 024C8D70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8D70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C8D74 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024C8D78 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C8D7C */ cpu->r[5] = 0x00000001u;
|
|
/* 024C8D80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8D80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C8D84 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024C8D84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C8D88 */ cpu->r[4] = cpu->r[4] + 0x00005338u;
|
|
/* 024C8D8C */ Gambit_fn_02398850(cpu);
|
|
/* 024C8D90 */ _t4 = cpu->r[31] + 0x00000134u;
|
|
/* 024C8D90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8D94 */ cpu->r[12] = 0x00000001u;
|
|
/* 024C8D98 */ _t5 = cpu->r[11] + 0x000001C8u;
|
|
/* 024C8D98 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 024C8D9C */ _t6 = cpu->r[31] + 0x00000554u;
|
|
/* 024C8D9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C8DA0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C8DA4 */ _t7 = cpu->r[11] + 0x000001C8u;
|
|
/* 024C8DA4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 024C8DA8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8DA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C8DAC */ cpu->lr = cpu->r[0];
|
|
/* 024C8DB0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C8DB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C8DB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8DB8 */ return;
|
|
}
|
|
|
|
// fn_024C8E10 @ 0x24c8e10
|
|
void Gambit_fn_024C8E10(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_024C8E10: ; // 0x24c8e10
|
|
/* 024C8E10 */ cpu->r[0] = cpu->lr;
|
|
/* 024C8E14 */ cpu->r[3] = 0x101F0000u;
|
|
/* 024C8E18 */ cpu->r[3] = cpu->r[3] + 0xFFFF8B7Cu;
|
|
/* 024C8E1C */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C8E20 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C8E24 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024C8E28 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C8E2C */ cpu->r[8] = 0x101F0000u;
|
|
/* 024C8E30 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024C8E34 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C8E34 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C8E38 */ cpu->r[9] = cpu->r[9] + 0x00005124u;
|
|
/* 024C8E3C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8E3C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C8E3C */ cpu->r[1] = _t1;
|
|
/* 024C8E40 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 024C8E40 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 024C8E44 */ cpu->r[12] = cpu->r[12] + 0xFFFF8B68u;
|
|
/* 024C8E48 */ _t3 = cpu->r[8] + 0xFFFF8B50u;
|
|
/* 024C8E48 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 024C8E48 */ cpu->r[8] = _t3;
|
|
/* 024C8E4C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C8E50 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 024C8E50 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024C8E54 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C8E58 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C8E5C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024C8E5C */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024C8E60 */ cpu->r[7] = cpu->r[7] + 0x00005348u;
|
|
/* 024C8E64 */ _t6 = cpu->r[11] + 0xFFFF8B60u;
|
|
/* 024C8E64 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 024C8E64 */ cpu->r[11] = _t6;
|
|
/* 024C8E68 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024C8E6C */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 024C8E6C */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 024C8E70 */ cpu->r[8] = 0x00000002u;
|
|
/* 024C8E74 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024C8E74 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 024C8E78 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 024C8E78 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 024C8E7C */ cpu->r[10] = cpu->r[10] + 0x00005044u;
|
|
/* 024C8E80 */ _t10 = cpu->r[6] + 0xFFFF8B58u;
|
|
/* 024C8E80 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024C8E80 */ cpu->r[6] = _t10;
|
|
/* 024C8E84 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C8E88 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8E88 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024C8E8C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8E8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C8E90 */ cpu->r[11] = cpu->r[11] + 0xFFFF97C8u;
|
|
/* 024C8E94 */ _t13 = cpu->r[6] + 0x00000004u;
|
|
/* 024C8E94 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 024C8E98 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8E98 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024C8E9C */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C8E9C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 024C8EA0 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C8EA4 */ _t16 = cpu->r[6] + 0xFFFF8B70u;
|
|
/* 024C8EA4 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 024C8EA4 */ cpu->r[6] = _t16;
|
|
/* 024C8EA8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C8EAC */ _t17 = cpu->r[6] + 0x00000004u;
|
|
/* 024C8EAC */ rbrew_write32(cpu->mem, _t17, cpu->r[4]);
|
|
/* 024C8EB0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C8EB4 */ _t18 = cpu->r[3] + 0x00000010u;
|
|
/* 024C8EB4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 024C8EB8 */ _t19 = cpu->r[12] + 0xFFFF8B78u;
|
|
/* 024C8EB8 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024C8EBC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024C8EC0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C8EC4 */ cpu->r[3] = cpu->r[3] + 0x00006484u;
|
|
/* 024C8EC8 */ Gambit_fn_02C83090(cpu);
|
|
/* 024C8ECC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C8ED0 */ cpu->lr = cpu->r[0];
|
|
/* 024C8ED4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8ED8 */ return;
|
|
}
|
|
|
|
// fn_024C8E3C @ 0x24c8e3c
|
|
void Gambit_fn_024C8E3C(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_024C8E3C: ; // 0x24c8e3c
|
|
/* 024C8E3C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C8E3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C8E3C */ cpu->r[1] = _t0;
|
|
/* 024C8E40 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024C8E40 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024C8E44 */ cpu->r[12] = cpu->r[12] + 0xFFFF8B68u;
|
|
/* 024C8E48 */ _t2 = cpu->r[8] + 0xFFFF8B50u;
|
|
/* 024C8E48 */ rbrew_write32(cpu->mem, _t2, cpu->r[5]);
|
|
/* 024C8E48 */ cpu->r[8] = _t2;
|
|
/* 024C8E4C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C8E50 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024C8E50 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024C8E54 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C8E58 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C8E5C */ _t4 = cpu->r[8] + 0x00000004u;
|
|
/* 024C8E5C */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024C8E60 */ cpu->r[7] = cpu->r[7] + 0x00005348u;
|
|
/* 024C8E64 */ _t5 = cpu->r[11] + 0xFFFF8B60u;
|
|
/* 024C8E64 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024C8E64 */ cpu->r[11] = _t5;
|
|
/* 024C8E68 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024C8E6C */ _t6 = cpu->r[12] + 0x00000000u;
|
|
/* 024C8E6C */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 024C8E70 */ cpu->r[8] = 0x00000002u;
|
|
/* 024C8E74 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 024C8E74 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 024C8E78 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024C8E78 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 024C8E7C */ cpu->r[10] = cpu->r[10] + 0x00005044u;
|
|
/* 024C8E80 */ _t9 = cpu->r[6] + 0xFFFF8B58u;
|
|
/* 024C8E80 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024C8E80 */ cpu->r[6] = _t9;
|
|
/* 024C8E84 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C8E88 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8E88 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 024C8E8C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024C8E8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C8E90 */ cpu->r[11] = cpu->r[11] + 0xFFFF97C8u;
|
|
/* 024C8E94 */ _t12 = cpu->r[6] + 0x00000004u;
|
|
/* 024C8E94 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 024C8E98 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8E98 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 024C8E9C */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C8E9C */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024C8EA0 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024C8EA4 */ _t15 = cpu->r[6] + 0xFFFF8B70u;
|
|
/* 024C8EA4 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 024C8EA4 */ cpu->r[6] = _t15;
|
|
/* 024C8EA8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C8EAC */ _t16 = cpu->r[6] + 0x00000004u;
|
|
/* 024C8EAC */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 024C8EB0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024C8EB4 */ _t17 = cpu->r[3] + 0x00000010u;
|
|
/* 024C8EB4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 024C8EB8 */ _t18 = cpu->r[12] + 0xFFFF8B78u;
|
|
/* 024C8EB8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024C8EBC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024C8EC0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C8EC4 */ cpu->r[3] = cpu->r[3] + 0x00006484u;
|
|
/* 024C8EC8 */ Gambit_fn_02C83090(cpu);
|
|
/* 024C8ECC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024C8ECC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C8ED0 */ cpu->lr = cpu->r[0];
|
|
/* 024C8ED4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C8ED8 */ return;
|
|
}
|
|
|
|
// fn_024C8EDC @ 0x24c8edc
|
|
void Gambit_fn_024C8EDC(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_024C8EDC: ; // 0x24c8edc
|
|
/* 024C8EDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8EE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8EE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C8EE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8EE0 */ goto L_024C8EE4;
|
|
L_024C8EE4: ; // 0x24c8ee4
|
|
/* 024C8EE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8EE8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8EE8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C8EE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8EE8 */ goto L_024C8EEC;
|
|
L_024C8EEC: ; // 0x24c8eec
|
|
/* 024C8EEC */ 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_024C8EF0 @ 0x24c8ef0
|
|
void Gambit_fn_024C8EF0(CPUState* cpu) {
|
|
L_024C8EF0: ; // 0x24c8ef0
|
|
/* 024C8EF0 */ return;
|
|
}
|
|
|
|
// fn_024C8EF4 @ 0x24c8ef4
|
|
void Gambit_fn_024C8EF4(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_024C8EF4: ; // 0x24c8ef4
|
|
/* 024C8EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8EF8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8EF8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C8EF8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8EF8 */ goto L_024C8EFC;
|
|
L_024C8EFC: ; // 0x24c8efc
|
|
/* 024C8EFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8F00 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F00 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C8F00 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8F00 */ goto L_024C8F04;
|
|
L_024C8F04: ; // 0x24c8f04
|
|
/* 024C8F04 */ 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_024C8F08 @ 0x24c8f08
|
|
void Gambit_fn_024C8F08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024C8F08: ; // 0x24c8f08
|
|
/* 024C8F08 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024C8F08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8F0C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024C8F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C8F10 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 024C8F14 */ cpu->r[11] = 0x10110000u;
|
|
/* 024C8F18 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 024C8F18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C8F1C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024C8F1C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 024C8F20 */ return;
|
|
}
|
|
|
|
// fn_024C8F24 @ 0x24c8f24
|
|
void Gambit_fn_024C8F24(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_024C8F24: ; // 0x24c8f24
|
|
/* 024C8F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8F28 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F28 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C8F28 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8F28 */ goto L_024C8F2C;
|
|
L_024C8F2C: ; // 0x24c8f2c
|
|
/* 024C8F2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8F30 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F30 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C8F30 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8F30 */ goto L_024C8F34;
|
|
L_024C8F34: ; // 0x24c8f34
|
|
/* 024C8F34 */ 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_024C8F38 @ 0x24c8f38
|
|
void Gambit_fn_024C8F38(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_024C8F38: ; // 0x24c8f38
|
|
/* 024C8F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C8F3C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F3C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C8F3C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8F3C */ goto L_024C8F40;
|
|
L_024C8F40: ; // 0x24c8f40
|
|
/* 024C8F40 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C8F44 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F44 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C8F44 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8F44 */ goto L_024C8F48;
|
|
L_024C8F48: ; // 0x24c8f48
|
|
/* 024C8F48 */ 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_024C8F4C @ 0x24c8f4c
|
|
void Gambit_fn_024C8F4C(CPUState* cpu) {
|
|
L_024C8F4C: ; // 0x24c8f4c
|
|
/* 024C8F4C */ return;
|
|
}
|
|
|
|
// fn_024C8F50 @ 0x24c8f50
|
|
void Gambit_fn_024C8F50(CPUState* cpu) {
|
|
L_024C8F50: ; // 0x24c8f50
|
|
/* 024C8F50 */ return;
|
|
}
|
|
|
|
// fn_024C8F54 @ 0x24c8f54
|
|
void Gambit_fn_024C8F54(CPUState* cpu) {
|
|
L_024C8F54: ; // 0x24c8f54
|
|
/* 024C8F54 */ return;
|
|
}
|
|
|
|
// fn_024C8F58 @ 0x24c8f58
|
|
void Gambit_fn_024C8F58(CPUState* cpu) {
|
|
L_024C8F58: ; // 0x24c8f58
|
|
/* 024C8F58 */ return;
|
|
}
|
|
|
|
// fn_024C8F5C @ 0x24c8f5c
|
|
void Gambit_fn_024C8F5C(CPUState* cpu) {
|
|
L_024C8F5C: ; // 0x24c8f5c
|
|
/* 024C8F5C */ return;
|
|
}
|
|
|
|
// fn_024C8F60 @ 0x24c8f60
|
|
void Gambit_fn_024C8F60(CPUState* cpu) {
|
|
L_024C8F60: ; // 0x24c8f60
|
|
/* 024C8F60 */ return;
|
|
}
|
|
|
|
// fn_024C8F64 @ 0x24c8f64
|
|
void Gambit_fn_024C8F64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C8F64: ; // 0x24c8f64
|
|
/* 024C8F64 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C8F64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8F6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8F6C */ if (_t2) goto L_024C8F78; else goto L_024C8F70;
|
|
L_024C8F70: ; // 0x24c8f70
|
|
/* 024C8F70 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 024C8F74 */ return;
|
|
L_024C8F78: ; // 0x24c8f78
|
|
/* 024C8F78 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C8F7C */ return;
|
|
}
|
|
|
|
// fn_024C8F80 @ 0x24c8f80
|
|
void Gambit_fn_024C8F80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024C8F80: ; // 0x24c8f80
|
|
/* 024C8F80 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024C8F80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8F84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8F88 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8F88 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8F88 */ if (_t2) goto L_024C8F94; else goto L_024C8F8C;
|
|
L_024C8F8C: ; // 0x24c8f8c
|
|
/* 024C8F8C */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 024C8F90 */ return;
|
|
L_024C8F94: ; // 0x24c8f94
|
|
/* 024C8F94 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C8F98 */ return;
|
|
}
|
|
|
|
// fn_024C8F9C @ 0x24c8f9c
|
|
void Gambit_fn_024C8F9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C8F9C: ; // 0x24c8f9c
|
|
/* 024C8F9C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C8F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8FA0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8FA4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8FA4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8FA4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C8FA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8FA4 */ goto L_024C8FA8;
|
|
L_024C8FA8: ; // 0x24c8fa8
|
|
/* 024C8FA8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8FA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8FAC */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 024C8FAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8FB0 */ cpu->ctr = cpu->r[0];
|
|
/* 024C8FB4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C8FB8 @ 0x24c8fb8
|
|
void Gambit_fn_024C8FB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C8FB8: ; // 0x24c8fb8
|
|
/* 024C8FB8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C8FB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8FBC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8FC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8FC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8FC0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C8FC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8FC0 */ goto L_024C8FC4;
|
|
L_024C8FC4: ; // 0x24c8fc4
|
|
/* 024C8FC4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8FC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8FC8 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 024C8FC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8FCC */ cpu->ctr = cpu->r[0];
|
|
/* 024C8FD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C8FD4 @ 0x24c8fd4
|
|
void Gambit_fn_024C8FD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C8FD4: ; // 0x24c8fd4
|
|
/* 024C8FD4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C8FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8FD8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C8FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C8FDC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C8FDC */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C8FDC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024C8FDC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C8FDC */ goto L_024C8FE0;
|
|
L_024C8FE0: ; // 0x24c8fe0
|
|
/* 024C8FE0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8FE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C8FE4 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 024C8FE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C8FE8 */ cpu->ctr = cpu->r[0];
|
|
/* 024C8FEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C8FF0 @ 0x24c8ff0
|
|
void Gambit_fn_024C8FF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C8FF0: ; // 0x24c8ff0
|
|
/* 024C8FF0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C8FF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C8FF4 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 024C8FF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C8FF8 */ cpu->ctr = cpu->r[0];
|
|
/* 024C8FFC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C9000 @ 0x24c9000
|
|
void Gambit_fn_024C9000(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C9000: ; // 0x24c9000
|
|
/* 024C9000 */ cpu->r[0] = cpu->lr;
|
|
/* 024C9004 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9004 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9004 */ cpu->r[1] = _t0;
|
|
/* 024C9008 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9008 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C900C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C9010 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9010 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C9014 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C9014 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C9018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C901C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C901C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C901C */ if (_t5) goto L_024C9020; else goto L_024C903C;
|
|
L_024C9020: ; // 0x24c9020
|
|
/* 024C9020 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C9020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C9024 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C9024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9028 */ cpu->ctr = cpu->r[0];
|
|
/* 024C902C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C9030 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9034 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C9038 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C9038 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C903C: ; // 0x24c903c
|
|
/* 024C903C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C903C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C9040 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C9044 */ cpu->lr = cpu->r[0];
|
|
/* 024C9048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C904C */ return;
|
|
}
|
|
|
|
// fn_024C9004 @ 0x24c9004
|
|
void Gambit_fn_024C9004(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024C9004: ; // 0x24c9004
|
|
/* 024C9004 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9004 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9004 */ cpu->r[1] = _t0;
|
|
/* 024C9008 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9008 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C900C */ cpu->r[31] = cpu->r[3];
|
|
/* 024C9010 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9010 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C9014 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C9014 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C9018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024C901C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C901C */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C901C */ if (_t5) goto L_024C9020; else goto L_024C903C;
|
|
L_024C9020: ; // 0x24c9020
|
|
/* 024C9020 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024C9020 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C9024 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024C9024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9028 */ cpu->ctr = cpu->r[0];
|
|
/* 024C902C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C9030 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9034 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C9038 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024C9038 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024C903C: ; // 0x24c903c
|
|
/* 024C903C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024C903C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C9040 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9040 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C9044 */ cpu->lr = cpu->r[0];
|
|
/* 024C9048 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C904C */ return;
|
|
}
|
|
|
|
// fn_024C9058 @ 0x24c9058
|
|
void Gambit_fn_024C9058(CPUState* cpu) {
|
|
L_024C9058: ; // 0x24c9058
|
|
/* 024C9058 */ return;
|
|
}
|
|
|
|
// fn_024C905C @ 0x24c905c
|
|
void Gambit_fn_024C905C(CPUState* cpu) {
|
|
L_024C905C: ; // 0x24c905c
|
|
/* 024C905C */ return;
|
|
}
|
|
|
|
// fn_024C9060 @ 0x24c9060
|
|
void Gambit_fn_024C9060(CPUState* cpu) {
|
|
L_024C9060: ; // 0x24c9060
|
|
/* 024C9060 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C9064 */ return;
|
|
}
|
|
|
|
// fn_024C9068 @ 0x24c9068
|
|
void Gambit_fn_024C9068(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_024C9068: ; // 0x24c9068
|
|
/* 024C9068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C906C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C906C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024C906C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C906C */ goto L_024C9070;
|
|
L_024C9070: ; // 0x24c9070
|
|
/* 024C9070 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024C9070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C9074 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9074 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C9074 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024C9074 */ goto L_024C9078;
|
|
L_024C9078: ; // 0x24c9078
|
|
/* 024C9078 */ 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_024C907C @ 0x24c907c
|
|
void Gambit_fn_024C907C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C907C: ; // 0x24c907c
|
|
/* 024C907C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C907C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C9080 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 024C9080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C9084 */ cpu->ctr = cpu->r[0];
|
|
/* 024C9088 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C908C @ 0x24c908c
|
|
void Gambit_fn_024C908C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C908C: ; // 0x24c908c
|
|
/* 024C908C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C908C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C9090 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C9090 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C9094 */ cpu->ctr = cpu->r[0];
|
|
/* 024C9098 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C909C @ 0x24c909c
|
|
void Gambit_fn_024C909C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C909C: ; // 0x24c909c
|
|
/* 024C909C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C909C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C90A0 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024C90A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C90A4 */ cpu->ctr = cpu->r[0];
|
|
/* 024C90A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C90AC @ 0x24c90ac
|
|
void Gambit_fn_024C90AC(CPUState* cpu) {
|
|
L_024C90AC: ; // 0x24c90ac
|
|
/* 024C90AC */ cpu->r[3] = 0x00000001u;
|
|
/* 024C90B0 */ return;
|
|
}
|
|
|
|
// fn_024C90B4 @ 0x24c90b4
|
|
void Gambit_fn_024C90B4(CPUState* cpu) {
|
|
L_024C90B4: ; // 0x24c90b4
|
|
/* 024C90B4 */ return;
|
|
}
|
|
|
|
// fn_024C90B8 @ 0x24c90b8
|
|
void Gambit_fn_024C90B8(CPUState* cpu) {
|
|
L_024C90B8: ; // 0x24c90b8
|
|
/* 024C90B8 */ return;
|
|
}
|
|
|
|
// fn_024C90BC @ 0x24c90bc
|
|
void Gambit_fn_024C90BC(CPUState* cpu) {
|
|
L_024C90BC: ; // 0x24c90bc
|
|
/* 024C90BC */ return;
|
|
}
|
|
|
|
// fn_024C90C0 @ 0x24c90c0
|
|
void Gambit_fn_024C90C0(CPUState* cpu) {
|
|
L_024C90C0: ; // 0x24c90c0
|
|
/* 024C90C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C90C4 */ return;
|
|
}
|
|
|
|
// fn_024C90C8 @ 0x24c90c8
|
|
void Gambit_fn_024C90C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C90C8: ; // 0x24c90c8
|
|
/* 024C90C8 */ cpu->r[10] = 0x101F0000u;
|
|
/* 024C90CC */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 024C90CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C90CC */ cpu->r[10] = _t0;
|
|
/* 024C90D0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C90D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024C90D4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024C90D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C90D8 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C90D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024C90DC */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 024C90DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C90E0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C90E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024C90E4 */ return;
|
|
}
|
|
|
|
// fn_024C90E8 @ 0x24c90e8
|
|
void Gambit_fn_024C90E8(CPUState* cpu) {
|
|
L_024C90E8: ; // 0x24c90e8
|
|
/* 024C90E8 */ return;
|
|
}
|
|
|
|
// fn_024C90EC @ 0x24c90ec
|
|
void Gambit_fn_024C90EC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C90EC: ; // 0x24c90ec
|
|
/* 024C90EC */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 024C90EC */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C90F0 */ return;
|
|
}
|
|
|
|
// fn_024C90F4 @ 0x24c90f4
|
|
void Gambit_fn_024C90F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024C90F4: ; // 0x24c90f4
|
|
/* 024C90F4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024C90F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C90F8 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 024C90F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C90FC */ cpu->ctr = cpu->r[0];
|
|
/* 024C9100 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024C9104 @ 0x24c9104
|
|
void Gambit_fn_024C9104(CPUState* cpu) {
|
|
L_024C9104: ; // 0x24c9104
|
|
/* 024C9104 */ return;
|
|
}
|
|
|
|
// fn_024C9108 @ 0x24c9108
|
|
void Gambit_fn_024C9108(CPUState* cpu) {
|
|
L_024C9108: ; // 0x24c9108
|
|
/* 024C9108 */ return;
|
|
}
|
|
|
|
// fn_024C910C @ 0x24c910c
|
|
void Gambit_fn_024C910C(CPUState* cpu) {
|
|
L_024C910C: ; // 0x24c910c
|
|
/* 024C910C */ return;
|
|
}
|
|
|
|
// fn_024C9110 @ 0x24c9110
|
|
void Gambit_fn_024C9110(CPUState* cpu) {
|
|
L_024C9110: ; // 0x24c9110
|
|
/* 024C9110 */ return;
|
|
}
|
|
|
|
// fn_024C9114 @ 0x24c9114
|
|
void Gambit_fn_024C9114(CPUState* cpu) {
|
|
L_024C9114: ; // 0x24c9114
|
|
/* 024C9114 */ return;
|
|
}
|
|
|
|
// fn_024C9118 @ 0x24c9118
|
|
void Gambit_fn_024C9118(CPUState* cpu) {
|
|
L_024C9118: ; // 0x24c9118
|
|
/* 024C9118 */ return;
|
|
}
|
|
|
|
// fn_024C911C @ 0x24c911c
|
|
void Gambit_fn_024C911C(CPUState* cpu) {
|
|
L_024C911C: ; // 0x24c911c
|
|
/* 024C911C */ return;
|
|
}
|
|
|
|
// fn_024C9120 @ 0x24c9120
|
|
void Gambit_fn_024C9120(CPUState* cpu) {
|
|
L_024C9120: ; // 0x24c9120
|
|
/* 024C9120 */ return;
|
|
}
|
|
|
|
// fn_024C9124 @ 0x24c9124
|
|
void Gambit_fn_024C9124(CPUState* cpu) {
|
|
L_024C9124: ; // 0x24c9124
|
|
/* 024C9124 */ return;
|
|
}
|
|
|
|
// fn_024C9128 @ 0x24c9128
|
|
void Gambit_fn_024C9128(CPUState* cpu) {
|
|
L_024C9128: ; // 0x24c9128
|
|
/* 024C9128 */ return;
|
|
}
|
|
|
|
// fn_024C912C @ 0x24c912c
|
|
void Gambit_fn_024C912C(CPUState* cpu) {
|
|
L_024C912C: ; // 0x24c912c
|
|
/* 024C912C */ cpu->r[3] = 0x00000001u;
|
|
/* 024C9130 */ return;
|
|
}
|
|
|
|
// fn_024C9134 @ 0x24c9134
|
|
void Gambit_fn_024C9134(CPUState* cpu) {
|
|
L_024C9134: ; // 0x24c9134
|
|
/* 024C9134 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C9138 */ return;
|
|
}
|
|
|
|
// fn_024C913C @ 0x24c913c
|
|
void Gambit_fn_024C913C(CPUState* cpu) {
|
|
L_024C913C: ; // 0x24c913c
|
|
/* 024C913C */ cpu->r[3] = 0x00000000u;
|
|
/* 024C9140 */ return;
|
|
}
|
|
|
|
// fn_024C9144 @ 0x24c9144
|
|
void Gambit_fn_024C9144(CPUState* cpu) {
|
|
L_024C9144: ; // 0x24c9144
|
|
/* 024C9144 */ cpu->r[3] = 0x00000000u;
|
|
/* 024C9148 */ return;
|
|
}
|
|
|
|
// fn_024C914C @ 0x24c914c
|
|
void Gambit_fn_024C914C(CPUState* cpu) {
|
|
L_024C914C: ; // 0x24c914c
|
|
/* 024C914C */ cpu->r[3] = 0x00000000u;
|
|
/* 024C9150 */ return;
|
|
}
|
|
|
|
// fn_024C9154 @ 0x24c9154
|
|
void Gambit_fn_024C9154(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C9154: ; // 0x24c9154
|
|
/* 024C9154 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 024C9154 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 024C9158 */ return;
|
|
}
|
|
|
|
// fn_024C915C @ 0x24c915c
|
|
void Gambit_fn_024C915C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C915C: ; // 0x24c915c
|
|
/* 024C915C */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 024C915C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C9160 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024C9160 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024C9164 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 024C9164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C9168 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024C9168 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C916C */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 024C916C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C9170 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024C9170 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024C9174 */ return;
|
|
}
|
|
|
|
// fn_024C9178 @ 0x24c9178
|
|
void Gambit_fn_024C9178(CPUState* cpu) {
|
|
L_024C9178: ; // 0x24c9178
|
|
/* 024C9178 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C917C */ return;
|
|
}
|
|
|
|
// fn_024C9180 @ 0x24c9180
|
|
void Gambit_fn_024C9180(CPUState* cpu) {
|
|
L_024C9180: ; // 0x24c9180
|
|
/* 024C9180 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C9184 */ return;
|
|
}
|
|
|
|
// fn_024C9188 @ 0x24c9188
|
|
void Gambit_fn_024C9188(CPUState* cpu) {
|
|
L_024C9188: ; // 0x24c9188
|
|
/* 024C9188 */ cpu->r[3] = 0x100B0000u;
|
|
/* 024C918C */ cpu->r[3] = cpu->r[3] + 0x00005130u;
|
|
/* 024C9190 */ return;
|
|
}
|
|
|
|
// fn_024C9194 @ 0x24c9194
|
|
void Gambit_fn_024C9194(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_024C9194: ; // 0x24c9194
|
|
/* 024C9194 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C9198 */ _t0 = cpu->r[8] + 0x000004B8u;
|
|
/* 024C9198 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C919C */ cpu->r[6] = 0x101D0000u;
|
|
/* 024C91A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C91A4 */ cpu->r[6] = cpu->r[6] + 0x000007D4u;
|
|
/* 024C91A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C91A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C91A8 */ if (_t2) goto L_024C91AC; else goto L_024C91C4;
|
|
L_024C91AC: ; // 0x24c91ac
|
|
/* 024C91AC */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C91B0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C91B4 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C91B8 */ cpu->r[5] = cpu->r[5] + 0x00005104u;
|
|
/* 024C91BC */ _t3 = cpu->r[8] + 0x000004B8u;
|
|
/* 024C91BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C91C0 */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 024C91C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_024C91C4: ; // 0x24c91c4
|
|
/* 024C91C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 024C91C8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C91C8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C91C8 */ if (_t6) goto L_024C91CC; else goto L_024C91D4;
|
|
L_024C91CC: ; // 0x24c91cc
|
|
/* 024C91CC */ cpu->r[3] = 0x00000001u;
|
|
/* 024C91D0 */ return;
|
|
L_024C91D4: ; // 0x24c91d4
|
|
/* 024C91D4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C91D8 */ _t7 = cpu->r[10] + 0xFFFFE6DCu;
|
|
/* 024C91D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C91DC */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C91E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C91E4 */ cpu->r[8] = cpu->r[8] + 0x000007CCu;
|
|
/* 024C91E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C91E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C91E8 */ if (_t9) goto L_024C91EC; else goto L_024C9204;
|
|
L_024C91EC: ; // 0x24c91ec
|
|
/* 024C91EC */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C91F0 */ cpu->r[7] = 0x00000001u;
|
|
/* 024C91F4 */ cpu->r[6] = 0x101D0000u;
|
|
/* 024C91F8 */ cpu->r[0] = cpu->r[0] + 0x000050F4u;
|
|
/* 024C91FC */ _t10 = cpu->r[6] + 0xFFFFE6DCu;
|
|
/* 024C91FC */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 024C9200 */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 024C9200 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024C9204: ; // 0x24c9204
|
|
/* 024C9204 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 024C9208 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9208 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C9208 */ if (_t13) goto L_024C920C; else goto L_024C9214;
|
|
L_024C920C: ; // 0x24c920c
|
|
/* 024C920C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C9210 */ goto L_024C930C;
|
|
L_024C9214: ; // 0x24c9214
|
|
/* 024C9214 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9218 */ _t14 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 024C9218 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C921C */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C9220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C9224 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF40u;
|
|
/* 024C9228 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9228 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C9228 */ if (_t16) goto L_024C922C; else goto L_024C9244;
|
|
L_024C922C: ; // 0x24c922c
|
|
/* 024C922C */ cpu->r[7] = 0x100B0000u;
|
|
/* 024C9230 */ cpu->r[5] = 0x00000001u;
|
|
/* 024C9234 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9238 */ cpu->r[7] = cpu->r[7] + 0x000050C4u;
|
|
/* 024C923C */ _t17 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 024C923C */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 024C9240 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 024C9240 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_024C9244: ; // 0x24c9244
|
|
/* 024C9244 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C9248 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9248 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C9248 */ if (_t20) goto L_024C924C; else goto L_024C9254;
|
|
L_024C924C: ; // 0x24c924c
|
|
/* 024C924C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C9250 */ goto L_024C930C;
|
|
L_024C9254: ; // 0x24c9254
|
|
/* 024C9254 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C9258 */ _t21 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 024C9258 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C925C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C9264 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBBCu;
|
|
/* 024C9268 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9268 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C9268 */ if (_t23) goto L_024C926C; else goto L_024C9284;
|
|
L_024C926C: ; // 0x24c926c
|
|
/* 024C926C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C9270 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C9274 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C9278 */ cpu->r[10] = cpu->r[10] + 0x000050B4u;
|
|
/* 024C927C */ _t24 = cpu->r[8] + 0xFFFFDA10u;
|
|
/* 024C927C */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 024C9280 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 024C9280 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_024C9284: ; // 0x24c9284
|
|
/* 024C9284 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024C9288 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9288 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024C9288 */ if (_t27) goto L_024C928C; else goto L_024C9294;
|
|
L_024C928C: ; // 0x24c928c
|
|
/* 024C928C */ cpu->r[0] = 0x00000001u;
|
|
/* 024C9290 */ goto L_024C9308;
|
|
L_024C9294: ; // 0x24c9294
|
|
/* 024C9294 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C9298 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 024C9298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024C9298 */ cpu->r[10] = _t28;
|
|
/* 024C929C */ cpu->r[7] = 0x101D0000u;
|
|
/* 024C92A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C92A4 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 024C92A8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C92A8 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024C92A8 */ if (_t30) goto L_024C92AC; else goto L_024C92C0;
|
|
L_024C92AC: ; // 0x24c92ac
|
|
/* 024C92AC */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C92B0 */ cpu->r[12] = 0x00000001u;
|
|
/* 024C92B4 */ cpu->r[0] = cpu->r[0] + 0x000050A4u;
|
|
/* 024C92B8 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 024C92B8 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 024C92BC */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 024C92BC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_024C92C0: ; // 0x24c92c0
|
|
/* 024C92C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 024C92C4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C92C4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C92C4 */ if (_t34) goto L_024C92C8; else goto L_024C92D0;
|
|
L_024C92C8: ; // 0x24c92c8
|
|
/* 024C92C8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C92CC */ goto L_024C9308;
|
|
L_024C92D0: ; // 0x24c92d0
|
|
/* 024C92D0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C92D4 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 024C92D4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C92D4 */ cpu->r[8] = _t35;
|
|
/* 024C92D8 */ cpu->r[6] = 0x101D0000u;
|
|
/* 024C92DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024C92E0 */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 024C92E4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C92E4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024C92E4 */ if (_t37) goto L_024C92E8; else goto L_024C92FC;
|
|
L_024C92E8: ; // 0x24c92e8
|
|
/* 024C92E8 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024C92EC */ cpu->r[7] = 0x00000001u;
|
|
/* 024C92F0 */ cpu->r[9] = cpu->r[9] + 0x00005034u;
|
|
/* 024C92F4 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 024C92F4 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 024C92F8 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 024C92F8 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_024C92FC: ; // 0x24c92fc
|
|
/* 024C92FC */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 024C9300 */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 024C9304 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024C9308: ; // 0x24c9308
|
|
/* 024C9308 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_024C930C: ; // 0x24c930c
|
|
/* 024C930C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C9310 */ return;
|
|
}
|
|
|
|
// fn_024C9314 @ 0x24c9314
|
|
void Gambit_fn_024C9314(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024C9314: ; // 0x24c9314
|
|
/* 024C9314 */ _t0 = cpu->r[3] + 0x00000510u;
|
|
/* 024C9314 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C9318 */ /* nop */
|
|
/* 024C931C */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 024C9320 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024C9324 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024C9328 */ return;
|
|
}
|
|
|
|
// fn_024C9334 @ 0x24c9334
|
|
void Gambit_fn_024C9334(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023A33F4: ; // 0x23a33f4
|
|
/* 023A33F4 */ cpu->r[0] = cpu->lr;
|
|
/* 023A33F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A33F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A33F8 */ cpu->r[1] = _t0;
|
|
/* 023A33FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A33FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A3400 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A3404 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3404 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023A3408 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 023A3408 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 023A340C */ cpu->r[12] = 0x00000000u;
|
|
/* 023A3410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A3414 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 023A3414 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 023A3418 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3418 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3418 */ if (_t6) goto L_023A3440; else goto L_023A341C;
|
|
L_023A341C: ; // 0x23a341c
|
|
/* 023A341C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A341C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A3420 */ /* nop */
|
|
/* 023A3424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023A3428 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3428 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A3428 */ if (_t9) goto L_023A342C; else goto L_023A3440;
|
|
L_023A342C: ; // 0x23a342c
|
|
/* 023A342C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 023A342C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A3430 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 023A3430 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A3434 */ cpu->ctr = cpu->r[0];
|
|
/* 023A3438 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A343C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A3440: ; // 0x23a3440
|
|
/* 023A3440 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A3444 */ Gambit_fn_023A336C(cpu);
|
|
/* 023A3448 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A344C */ Gambit_fn_027FC37C(cpu);
|
|
/* 023A3450 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A3454 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A3454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A3458 */ cpu->lr = cpu->r[0];
|
|
/* 023A345C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A3460 */ return;
|
|
L_024C9334: ; // 0x24c9334
|
|
/* 024C9334 */ cpu->r[3] = cpu->r[3] + 0x00000504u;
|
|
/* 024C9338 */ goto L_023A33F4;
|
|
}
|
|
|
|
// fn_024C933C @ 0x24c933c
|
|
void Gambit_fn_024C933C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C933C: ; // 0x24c933c
|
|
/* 024C933C */ cpu->r[0] = cpu->lr;
|
|
/* 024C9340 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9340 */ cpu->r[1] = _t0;
|
|
/* 024C9344 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9344 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C9348 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C934C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C934C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C9350 */ _t3 = cpu->r[31] + 0x00000512u;
|
|
/* 024C9350 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C9354 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024C9358 */ /* nop */
|
|
/* 024C935C */ Gambit_fn_027FC35C(cpu);
|
|
/* 024C9360 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024C9364 */ Gambit_fn_023A32E4(cpu);
|
|
/* 024C9368 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C936C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C936C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C9370 */ cpu->lr = cpu->r[0];
|
|
/* 024C9374 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C9378 */ return;
|
|
}
|
|
|
|
// fn_024C9340 @ 0x24c9340
|
|
void Gambit_fn_024C9340(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C9340: ; // 0x24c9340
|
|
/* 024C9340 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9340 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9340 */ cpu->r[1] = _t0;
|
|
/* 024C9344 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9344 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C9348 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C934C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C934C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C9350 */ _t3 = cpu->r[31] + 0x00000512u;
|
|
/* 024C9350 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024C9354 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024C9358 */ /* nop */
|
|
/* 024C935C */ Gambit_fn_027FC35C(cpu);
|
|
/* 024C9360 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024C9364 */ Gambit_fn_023A32E4(cpu);
|
|
/* 024C9368 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C936C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C936C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C9370 */ cpu->lr = cpu->r[0];
|
|
/* 024C9374 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C9378 */ return;
|
|
}
|
|
|
|
// fn_024C937C @ 0x24c937c
|
|
void Gambit_fn_024C937C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024C937C: ; // 0x24c937c
|
|
/* 024C937C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9380 */ _t0 = cpu->r[12] + 0x000004BCu;
|
|
/* 024C9380 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024C9384 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C9388 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C938C */ cpu->r[12] = cpu->r[12] + 0x000007D0u;
|
|
/* 024C9390 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9390 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024C9390 */ if (_t2) goto L_024C9394; else goto L_024C93AC;
|
|
L_024C9394: ; // 0x24c9394
|
|
/* 024C9394 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9398 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C939C */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C93A0 */ cpu->r[0] = cpu->r[0] + 0x000050E4u;
|
|
/* 024C93A4 */ _t3 = cpu->r[8] + 0x000004BCu;
|
|
/* 024C93A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 024C93A8 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 024C93A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_024C93AC: ; // 0x24c93ac
|
|
/* 024C93AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024C93B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C93B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C93B0 */ if (_t6) goto L_024C93B4; else goto L_024C93BC;
|
|
L_024C93B4: ; // 0x24c93b4
|
|
/* 024C93B4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024C93B8 */ return;
|
|
L_024C93BC: ; // 0x24c93bc
|
|
/* 024C93BC */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C93C0 */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 024C93C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C93C0 */ cpu->r[11] = _t7;
|
|
/* 024C93C4 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C93C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C93CC */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 024C93D0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C93D0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C93D0 */ if (_t9) goto L_024C93D4; else goto L_024C93E8;
|
|
L_024C93D4: ; // 0x24c93d4
|
|
/* 024C93D4 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C93D8 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C93DC */ cpu->r[12] = cpu->r[12] + 0x000050D4u;
|
|
/* 024C93E0 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 024C93E0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024C93E4 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 024C93E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_024C93E8: ; // 0x24c93e8
|
|
/* 024C93E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024C93EC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C93EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C93EC */ if (_t13) goto L_024C93F0; else goto L_024C93F8;
|
|
L_024C93F0: ; // 0x24c93f0
|
|
/* 024C93F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C93F4 */ goto L_024C9430;
|
|
L_024C93F8: ; // 0x24c93f8
|
|
/* 024C93F8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024C93FC */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 024C93FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C93FC */ cpu->r[8] = _t14;
|
|
/* 024C9400 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C9404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024C9408 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 024C940C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C940C */ _t16 = _t15 & 0x00000001u;
|
|
/* 024C940C */ if (_t16) goto L_024C9410; else goto L_024C9424;
|
|
L_024C9410: ; // 0x24c9410
|
|
/* 024C9410 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C9414 */ cpu->r[9] = 0x00000001u;
|
|
/* 024C9418 */ cpu->r[10] = cpu->r[10] + 0x00005034u;
|
|
/* 024C941C */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 024C941C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 024C9420 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9420 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_024C9424: ; // 0x24c9424
|
|
/* 024C9424 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024C9428 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 024C942C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024C9430: ; // 0x24c9430
|
|
/* 024C9430 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024C9434 */ return;
|
|
}
|
|
|
|
// fn_024C9438 @ 0x24c9438
|
|
void Gambit_fn_024C9438(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024C9438: ; // 0x24c9438
|
|
/* 024C9438 */ cpu->r[0] = cpu->lr;
|
|
/* 024C943C */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9440 */ cpu->r[7] = 0x024D0000u;
|
|
/* 024C9444 */ cpu->r[6] = 0x024D0000u;
|
|
/* 024C9448 */ cpu->r[10] = 0x101C0000u;
|
|
/* 024C944C */ cpu->r[7] = cpu->r[7] + 0xFFFF9050u;
|
|
/* 024C9450 */ cpu->r[6] = cpu->r[6] + 0xFFFF9050u;
|
|
/* 024C9454 */ cpu->r[10] = cpu->r[10] + 0x00006494u;
|
|
/* 024C9458 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024C9458 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024C945C */ cpu->r[0] = 0x101C0000u;
|
|
/* 024C9460 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9460 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024C9460 */ cpu->r[1] = _t1;
|
|
/* 024C9464 */ cpu->r[0] = cpu->r[0] + 0x00006490u;
|
|
/* 024C9468 */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024C9468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C946C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C9470 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9470 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C9474 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9478 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9478 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024C947C */ Gambit_fn_02791B10(cpu);
|
|
/* 024C9480 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C9484 */ cpu->lr = cpu->r[0];
|
|
/* 024C9488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C948C */ return;
|
|
}
|
|
|
|
// fn_024C9460 @ 0x24c9460
|
|
void Gambit_fn_024C9460(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024C9460: ; // 0x24c9460
|
|
/* 024C9460 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C9460 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9460 */ cpu->r[1] = _t0;
|
|
/* 024C9464 */ cpu->r[0] = cpu->r[0] + 0x00006490u;
|
|
/* 024C9468 */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024C9468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C946C */ cpu->r[8] = 0x00000000u;
|
|
/* 024C9470 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9470 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C9474 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9478 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9478 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024C947C */ Gambit_fn_02791B10(cpu);
|
|
/* 024C9480 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C9484 */ cpu->lr = cpu->r[0];
|
|
/* 024C9488 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C948C */ return;
|
|
}
|
|
|
|
// fn_024C9490 @ 0x24c9490
|
|
void Gambit_fn_024C9490(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_024C9490: ; // 0x24c9490
|
|
/* 024C9490 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024C9490 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9490 */ cpu->r[1] = _t0;
|
|
/* 024C9494 */ /* nop */
|
|
/* 024C9498 */ cpu->r[0] = cpu->lr;
|
|
/* 024C949C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 024C949C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C94A0 */ cpu->r[29] = cpu->r[6];
|
|
/* 024C94A4 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C94A8 */ cpu->r[30] = cpu->r[5];
|
|
/* 024C94AC */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 024C94AC */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024C94B0 */ cpu->r[31] = 0x101D0000u;
|
|
/* 024C94B4 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 024C94B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024C94B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C94BC */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C94BC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 024C94C0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C94C0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C94C0 */ if (_t6) goto L_024C9504; else goto L_024C94C4;
|
|
L_024C94C4: ; // 0x24c94c4
|
|
/* 024C94C4 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C94C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C94C8 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C94CC */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C94CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024C94D0 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 024C94D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C94D4 */ cpu->ctr = cpu->r[0];
|
|
/* 024C94D8 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C94DC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C94E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C94E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C94E8 */ cpu->r[0] = cpu->r[27];
|
|
/* 024C94EC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C94EC */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C94EC */ if (_t11) goto L_024C94F4; else goto L_024C94F0;
|
|
L_024C94F0: ; // 0x24c94f0
|
|
/* 024C94F0 */ cpu->r[0] = 0x00000001u;
|
|
L_024C94F4: ; // 0x24c94f4
|
|
/* 024C94F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C94F8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C94F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C94F8 */ if (_t13) goto L_024C9504; else goto L_024C94FC;
|
|
L_024C94FC: ; // 0x24c94fc
|
|
/* 024C94FC */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 024C94FC */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 024C9500 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 024C9500 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_024C9504: ; // 0x24c9504
|
|
/* 024C9504 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 024C9504 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C9508 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C950C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024C9510 */ cpu->r[12] = cpu->r[0];
|
|
/* 024C9514 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9514 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C9514 */ if (_t18) goto L_024C9518; else goto L_024C953C;
|
|
L_024C9518: ; // 0x24c9518
|
|
/* 024C9518 */ cpu->ctr = cpu->r[7];
|
|
/* 024C951C */ cpu->r[10] = 0x00000000u;
|
|
L_024C9520: ; // 0x24c9520
|
|
/* 024C9520 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 024C9520 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C9524 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 024C9524 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 024C9528 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 024C952C */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 024C952C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 024C9530 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 024C9534 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 024C9534 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 024C9538 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C9538 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C9538 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 024C9538 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024C9538 */ if (_t25) goto L_024C9520; else goto L_024C953C;
|
|
L_024C953C: ; // 0x24c953c
|
|
/* 024C953C */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C953C */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 024C9540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C9544 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9544 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C9544 */ if (_t28) goto L_024C9588; else goto L_024C9548;
|
|
L_024C9548: ; // 0x24c9548
|
|
/* 024C9548 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C9548 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C954C */ Gambit_fn_02826F20(cpu);
|
|
/* 024C9550 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C9550 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C9554 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 024C9554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C9558 */ cpu->ctr = cpu->r[0];
|
|
/* 024C955C */ cpu->r[5] = 0x00000004u;
|
|
/* 024C9560 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C9564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C956C */ cpu->r[11] = cpu->r[27];
|
|
/* 024C9570 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9570 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024C9570 */ if (_t33) goto L_024C9578; else goto L_024C9574;
|
|
L_024C9574: ; // 0x24c9574
|
|
/* 024C9574 */ cpu->r[11] = 0x00000001u;
|
|
L_024C9578: ; // 0x24c9578
|
|
/* 024C9578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C957C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C957C */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C957C */ if (_t35) goto L_024C9588; else goto L_024C9580;
|
|
L_024C9580: ; // 0x24c9580
|
|
/* 024C9580 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C9580 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 024C9584 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 024C9584 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_024C9588: ; // 0x24c9588
|
|
/* 024C9588 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 024C9588 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C958C */ cpu->r[0] = 0x00000000u;
|
|
/* 024C9590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024C9594 */ cpu->r[12] = cpu->r[0];
|
|
/* 024C9598 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9598 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024C9598 */ if (_t40) goto L_024C959C; else goto L_024C95C0;
|
|
L_024C959C: ; // 0x24c959c
|
|
/* 024C959C */ cpu->ctr = cpu->r[6];
|
|
/* 024C95A0 */ cpu->r[9] = 0x00000000u;
|
|
L_024C95A4: ; // 0x24c95a4
|
|
/* 024C95A4 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C95A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024C95A8 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 024C95A8 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 024C95AC */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 024C95B0 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 024C95B0 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 024C95B4 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 024C95B8 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 024C95B8 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 024C95BC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C95BC */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C95BC */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 024C95BC */ _t47 = _t46 & 0x00000001u;
|
|
/* 024C95BC */ if (_t47) goto L_024C95A4; else goto L_024C95C0;
|
|
L_024C95C0: ; // 0x24c95c0
|
|
/* 024C95C0 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024C95C0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024C95C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C95C8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C95C8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C95C8 */ if (_t50) goto L_024C960C; else goto L_024C95CC;
|
|
L_024C95CC: ; // 0x24c95cc
|
|
/* 024C95CC */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C95CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C95D0 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C95D4 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C95D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C95D8 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 024C95D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C95DC */ cpu->ctr = cpu->r[0];
|
|
/* 024C95E0 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C95E4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C95E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C95EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C95F0 */ cpu->r[10] = cpu->r[27];
|
|
/* 024C95F4 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C95F4 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024C95F4 */ if (_t55) goto L_024C95FC; else goto L_024C95F8;
|
|
L_024C95F8: ; // 0x24c95f8
|
|
/* 024C95F8 */ cpu->r[10] = 0x00000001u;
|
|
L_024C95FC: ; // 0x24c95fc
|
|
/* 024C95FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9600 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9600 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C9600 */ if (_t57) goto L_024C960C; else goto L_024C9604;
|
|
L_024C9604: ; // 0x24c9604
|
|
/* 024C9604 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 024C9604 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 024C9608 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 024C9608 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_024C960C: ; // 0x24c960c
|
|
/* 024C960C */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 024C960C */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C9610 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C9614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024C9618 */ cpu->r[5] = cpu->r[0];
|
|
/* 024C961C */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C961C */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C961C */ if (_t62) goto L_024C9620; else goto L_024C9644;
|
|
L_024C9620: ; // 0x24c9620
|
|
/* 024C9620 */ cpu->ctr = cpu->r[12];
|
|
/* 024C9624 */ cpu->r[8] = 0x00000000u;
|
|
L_024C9628: ; // 0x24c9628
|
|
/* 024C9628 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 024C9628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024C962C */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 024C962C */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 024C9630 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 024C9634 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 024C9634 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 024C9638 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 024C963C */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 024C963C */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 024C9640 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C9640 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C9640 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 024C9640 */ _t69 = _t68 & 0x00000001u;
|
|
/* 024C9640 */ if (_t69) goto L_024C9628; else goto L_024C9644;
|
|
L_024C9644: ; // 0x24c9644
|
|
/* 024C9644 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024C9644 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 024C9648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024C964C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C964C */ _t72 = _t71 & 0x00000001u;
|
|
/* 024C964C */ if (_t72) goto L_024C9728; else goto L_024C9650;
|
|
L_024C9650: ; // 0x24c9650
|
|
/* 024C9650 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024C9650 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024C9654 */ Gambit_fn_02826F20(cpu);
|
|
/* 024C9658 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024C9658 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C965C */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 024C965C */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024C9660 */ cpu->ctr = cpu->r[12];
|
|
/* 024C9664 */ cpu->r[5] = 0x00000004u;
|
|
/* 024C9668 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 024C966C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9670 */ cpu->r[24] = cpu->r[3];
|
|
/* 024C9674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024C9678 */ cpu->r[30] = cpu->r[25];
|
|
/* 024C967C */ cpu->r[7] = 0x00000000u;
|
|
/* 024C9680 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9680 */ _t77 = _t76 & 0x00000001u;
|
|
/* 024C9680 */ if (_t77) goto L_024C9688; else goto L_024C9684;
|
|
L_024C9684: ; // 0x24c9684
|
|
/* 024C9684 */ cpu->r[30] = 0x00000001u;
|
|
L_024C9688: ; // 0x24c9688
|
|
/* 024C9688 */ cpu->r[31] = 0x10110000u;
|
|
/* 024C968C */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 024C9690 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 024C9690 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 024C9694 */ cpu->r[23] = 0x00000018u;
|
|
L_024C9698: ; // 0x24c9698
|
|
/* 024C9698 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 024C9698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C969C */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C969C */ _t80 = _t79 & 0x00000001u;
|
|
/* 024C969C */ if (_t80) goto L_024C970C; else goto L_024C96A0;
|
|
L_024C96A0: ; // 0x24c96a0
|
|
/* 024C96A0 */ cpu->r[26] = cpu->r[27];
|
|
/* 024C96A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C96A4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C96A4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024C96A4 */ if (_t82) goto L_024C96A8; else goto L_024C96B8;
|
|
L_024C96A8: ; // 0x24c96a8
|
|
/* 024C96A8 */ cpu->r[3] = 0x00000024u;
|
|
/* 024C96AC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C96B0 */ cpu->r[26] = cpu->r[3];
|
|
/* 024C96B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024C96B4 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C96B4 */ _t84 = _t83 & 0x00000001u;
|
|
/* 024C96B4 */ if (_t84) goto L_024C9700; else goto L_024C96B8;
|
|
L_024C96B8: ; // 0x24c96b8
|
|
/* 024C96B8 */ cpu->r[11] = cpu->r[26];
|
|
/* 024C96B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C96BC */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C96BC */ _t86 = _t85 & 0x00000001u;
|
|
/* 024C96BC */ if (_t86) goto L_024C96C0; else goto L_024C96D0;
|
|
L_024C96C0: ; // 0x24c96c0
|
|
/* 024C96C0 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C96C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C96C8 */ cpu->r[11] = cpu->r[3];
|
|
/* 024C96C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024C96CC */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C96CC */ _t88 = _t87 & 0x00000001u;
|
|
/* 024C96CC */ if (_t88) goto L_024C96EC; else goto L_024C96D0;
|
|
L_024C96D0: ; // 0x24c96d0
|
|
/* 024C96D0 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C96D4 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 024C96D4 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 024C96D8 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 024C96DC */ cpu->r[5] = cpu->r[5] + 0x0000505Cu;
|
|
/* 024C96E0 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 024C96E0 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 024C96E4 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 024C96E4 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 024C96E8 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 024C96E8 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_024C96EC: ; // 0x24c96ec
|
|
/* 024C96EC */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C96F0 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 024C96F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024C96F4 */ cpu->r[6] = cpu->r[6] + 0x00005074u;
|
|
/* 024C96F8 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 024C96F8 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 024C96FC */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 024C96FC */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_024C9700: ; // 0x24c9700
|
|
/* 024C9700 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9704 */ cpu->r[0] = cpu->r[0] + 0x0000508Cu;
|
|
/* 024C9708 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 024C9708 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_024C970C: ; // 0x24c970c
|
|
/* 024C970C */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 024C970C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024C9710 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 024C9714 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9714 */ _t98 = _t97 & 0x00000001u;
|
|
/* 024C9714 */ if (_t98) goto L_024C9718; else goto L_024C9698;
|
|
L_024C9718: ; // 0x24c9718
|
|
/* 024C9718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 024C971C */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C971C */ _t100 = _t99 & 0x00000001u;
|
|
/* 024C971C */ if (_t100) goto L_024C9728; else goto L_024C9720;
|
|
L_024C9720: ; // 0x24c9720
|
|
/* 024C9720 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 024C9720 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 024C9724 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 024C9724 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_024C9728: ; // 0x24c9728
|
|
/* 024C9728 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 024C9728 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 024C972C */ /* nop */
|
|
/* 024C9730 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 024C9730 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 024C9734 */ cpu->lr = cpu->r[0];
|
|
/* 024C9738 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024C973C */ return;
|
|
}
|
|
|
|
// fn_024C9740 @ 0x24c9740
|
|
void Gambit_fn_024C9740(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_024C9740: ; // 0x24c9740
|
|
/* 024C9740 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 024C9740 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024C9744 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 024C9744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024C9748 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 024C9748 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C974C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 024C9750 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 024C9750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C9754 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C9754 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024C9754 */ if (_t5) goto L_024C9758; else goto L_024C9760;
|
|
L_024C9758: ; // 0x24c9758
|
|
/* 024C9758 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C975C */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024C9760: ; // 0x24c9760
|
|
/* 024C9760 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9760 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024C9764 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 024C9764 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9768 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024C9768 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024C976C */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 024C976C */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024C9770 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 024C9770 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C9774 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 024C9778 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024C9778 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C977C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C977C */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C977C */ if (_t13) goto L_024C9780; else goto L_024C9788;
|
|
L_024C9780: ; // 0x24c9780
|
|
/* 024C9780 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C9784 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024C9788: ; // 0x24c9788
|
|
/* 024C9788 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 024C9788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C978C */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024C978C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024C9790 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 024C9790 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C9794 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 024C9794 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 024C9798 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 024C9798 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C979C */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 024C979C */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024C97A0 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 024C97A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C97A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 024C97A8 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 024C97A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C97AC */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C97AC */ _t23 = _t22 & 0x00000001u;
|
|
/* 024C97AC */ if (_t23) goto L_024C97B0; else goto L_024C97B8;
|
|
L_024C97B0: ; // 0x24c97b0
|
|
/* 024C97B0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024C97B4 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_024C97B8: ; // 0x24c97b8
|
|
/* 024C97B8 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 024C97B8 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 024C97BC */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 024C97BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C97C0 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 024C97C0 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 024C97C4 */ return;
|
|
}
|
|
|
|
// fn_024C97C8 @ 0x24c97c8
|
|
void Gambit_fn_024C97C8(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_024C97C8: ; // 0x24c97c8
|
|
/* 024C97C8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024C97C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C97C8 */ cpu->r[1] = _t0;
|
|
/* 024C97CC */ cpu->r[0] = cpu->lr;
|
|
/* 024C97D0 */ /* nop */
|
|
/* 024C97D4 */ cpu->r[30] = cpu->r[5];
|
|
/* 024C97D8 */ cpu->r[26] = cpu->r[3];
|
|
/* 024C97DC */ cpu->r[27] = cpu->r[7];
|
|
/* 024C97E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C97E4 */ cpu->r[31] = cpu->r[6];
|
|
/* 024C97E8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C97E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C97EC */ cpu->r[29] = cpu->r[4];
|
|
/* 024C97F0 */ cpu->r[4] = cpu->r[27];
|
|
/* 024C97F4 */ Gambit_fn_027DB318(cpu);
|
|
/* 024C97F8 */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 024C97F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024C97FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C97FC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024C97FC */ if (_t3) goto L_024C9890; else goto L_024C9800;
|
|
L_024C9800: ; // 0x24c9800
|
|
/* 024C9800 */ cpu->r[5] = cpu->r[28];
|
|
/* 024C9804 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C9808 */ cpu->r[3] = cpu->r[26];
|
|
/* 024C980C */ Gambit_fn_024C9438(cpu);
|
|
/* 024C9810 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024C9810 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C9814 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 024C9814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C9818 */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 024C981C */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024C9820 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024C9824 */ cpu->r[25] = 0x00000000u;
|
|
/* 024C9828 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9828 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024C9828 */ if (_t7) goto L_024C9890; else goto L_024C982C;
|
|
L_024C982C: ; // 0x24c982c
|
|
/* 024C982C */ cpu->r[24] = 0x101C0000u;
|
|
L_024C9830: ; // 0x24c9830
|
|
/* 024C9830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024C9834 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9834 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024C9834 */ if (_t9) goto L_024C984C; else goto L_024C9838;
|
|
L_024C9838: ; // 0x24c9838
|
|
/* 024C9838 */ cpu->ctr = cpu->r[27];
|
|
/* 024C983C */ cpu->r[3] = cpu->r[31];
|
|
/* 024C9840 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9848 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9848 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C9848 */ if (_t11) goto L_024C987C; else goto L_024C984C;
|
|
L_024C984C: ; // 0x24c984c
|
|
/* 024C984C */ _t12 = cpu->r[24] + 0x00006490u;
|
|
/* 024C984C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024C9850 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 024C9854 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 024C9854 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024C9858 */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 024C9858 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C985C */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C9860 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 024C9860 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C9864 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024C9868 */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 024C9868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024C986C */ cpu->r[4] = cpu->r[31];
|
|
/* 024C9870 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 024C9870 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C9874 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024C9878 */ Gambit_fn_024C73BC(cpu);
|
|
L_024C987C: ; // 0x24c987c
|
|
/* 024C987C */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 024C9880 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 024C9880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024C9884 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024C9888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024C988C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C988C */ _t20 = _t19 & 0x00000001u;
|
|
/* 024C988C */ if (_t20) goto L_024C9890; else goto L_024C9830;
|
|
L_024C9890: ; // 0x24c9890
|
|
/* 024C9890 */ cpu->r[3] = cpu->r[28];
|
|
/* 024C9894 */ /* nop */
|
|
/* 024C9898 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C9898 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024C989C */ cpu->lr = cpu->r[0];
|
|
/* 024C98A0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024C98A4 */ return;
|
|
}
|
|
|
|
// fn_024C98AC @ 0x24c98ac
|
|
void Gambit_fn_024C98AC(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_024C98AC: ; // 0x24c98ac
|
|
/* 024C98AC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024C98AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C98AC */ cpu->r[1] = _t0;
|
|
/* 024C98B0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C98B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024C98B4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C98B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C98B8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 024C98B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024C98BC */ cpu->r[31] = cpu->r[3];
|
|
/* 024C98BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C98C0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C98C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C98C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C98C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024C98C4 */ if (_t6) goto L_024C98C8; else goto L_024C98D8;
|
|
L_024C98C8: ; // 0x24c98c8
|
|
/* 024C98C8 */ cpu->r[3] = 0x00000594u;
|
|
/* 024C98CC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C98D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C98D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024C98D4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C98D4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024C98D4 */ if (_t8) goto L_024C99FC; else goto L_024C98D8;
|
|
L_024C98D8: ; // 0x24c98d8
|
|
/* 024C98D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C98DC */ Gambit_fn_024C60CC(cpu);
|
|
/* 024C98E0 */ cpu->r[8] = 0x100B0000u;
|
|
/* 024C98E4 */ cpu->r[29] = cpu->r[31] + 0x00000504u;
|
|
/* 024C98E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C98E8 */ cpu->r[8] = cpu->r[8] + 0x00005A54u;
|
|
/* 024C98EC */ cpu->r[30] = 0x00000000u;
|
|
/* 024C98F0 */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 024C98F0 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 024C98F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C98F4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024C98F4 */ if (_t11) goto L_024C98F8; else goto L_024C9908;
|
|
L_024C98F8: ; // 0x24c98f8
|
|
/* 024C98F8 */ cpu->r[3] = 0x00000038u;
|
|
/* 024C98FC */ Gambit_fn_02801A78(cpu);
|
|
/* 024C9900 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C9900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024C9904 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9904 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C9904 */ if (_t13) goto L_024C9938; else goto L_024C9908;
|
|
L_024C9908: ; // 0x24c9908
|
|
/* 024C9908 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C990C */ Gambit_fn_027FC29C(cpu);
|
|
/* 024C9910 */ cpu->r[9] = 0x10080000u;
|
|
/* 024C9914 */ _t14 = cpu->r[29] + 0x00000030u;
|
|
/* 024C9914 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 024C9918 */ cpu->r[9] = cpu->r[9] + 0x00007264u;
|
|
/* 024C991C */ _t15 = cpu->r[29] + 0x00000034u;
|
|
/* 024C991C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 024C9920 */ _t16 = cpu->r[29] + 0x00000004u;
|
|
/* 024C9920 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 024C9924 */ _t17 = cpu->r[29] + 0x00000024u;
|
|
/* 024C9924 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 024C9928 */ _t18 = cpu->r[29] + 0x00000028u;
|
|
/* 024C9928 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 024C992C */ _t19 = cpu->r[29] + 0x0000002Cu;
|
|
/* 024C992C */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 024C9930 */ _t20 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C9930 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C9934 */ _t21 = cpu->r[29] + 0x00000020u;
|
|
/* 024C9934 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
L_024C9938: ; // 0x24c9938
|
|
/* 024C9938 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024C993C */ _t22 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C993C */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 024C9940 */ cpu->r[0] = 0x00000003u;
|
|
/* 024C9944 */ cpu->r[11] = cpu->r[11] + 0x00005E2Cu;
|
|
/* 024C9948 */ _t23 = cpu->r[31] + 0x00000540u;
|
|
/* 024C9948 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 024C994C */ cpu->r[12] = cpu->r[31] + 0x00000544u;
|
|
/* 024C9950 */ cpu->ctr = cpu->r[0];
|
|
/* 024C9954 */ _t24 = cpu->r[31] + 0x00000544u;
|
|
/* 024C9954 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
L_024C9958: ; // 0x24c9958
|
|
/* 024C9958 */ _t25 = cpu->r[11] + 0x00000004u;
|
|
/* 024C9958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C995C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 024C995C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 024C9960 */ _t27 = cpu->r[11] + 0x00000008u;
|
|
/* 024C9960 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024C9964 */ _t28 = cpu->r[12] + 0x00000008u;
|
|
/* 024C9964 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 024C9968 */ _t29 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024C9968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C996C */ _t30 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024C996C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 024C9970 */ _t31 = cpu->r[11] + 0x00000010u;
|
|
/* 024C9970 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C9970 */ cpu->r[11] = _t31;
|
|
/* 024C9974 */ _t32 = cpu->r[12] + 0x00000010u;
|
|
/* 024C9974 */ rbrew_write32(cpu->mem, _t32, cpu->r[10]);
|
|
/* 024C9974 */ cpu->r[12] = _t32;
|
|
/* 024C9978 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024C9978 */ _t33 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024C9978 */ _t34 = _t33 >> (0x00000002u & 31u);
|
|
/* 024C9978 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024C9978 */ if (_t35) goto L_024C9958; else goto L_024C997C;
|
|
L_024C997C: ; // 0x24c997c
|
|
/* 024C997C */ cpu->r[3] = cpu->r[31] + 0x00000578u;
|
|
/* 024C997C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9980 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9980 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024C9980 */ if (_t37) goto L_024C9984; else goto L_024C9994;
|
|
L_024C9984: ; // 0x24c9984
|
|
/* 024C9984 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C9988 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C998C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9990 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9990 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024C9990 */ if (_t39) goto L_024C99C0; else goto L_024C9994;
|
|
L_024C9994: ; // 0x24c9994
|
|
/* 024C9994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9998 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9998 */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C9998 */ if (_t41) goto L_024C999C; else goto L_024C99AC;
|
|
L_024C999C: ; // 0x24c999c
|
|
/* 024C999C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C99A0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C99A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C99A8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C99A8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C99A8 */ if (_t43) goto L_024C99C0; else goto L_024C99AC;
|
|
L_024C99AC: ; // 0x24c99ac
|
|
/* 024C99AC */ cpu->r[10] = 0x100B0000u;
|
|
/* 024C99B0 */ _t44 = cpu->r[10] + 0x000058B8u;
|
|
/* 024C99B0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t44);
|
|
/* 024C99B4 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 024C99B4 */ rbrew_write_f32(cpu->mem, _t45, cpu->f[0]);
|
|
/* 024C99B8 */ _t46 = cpu->r[3] + 0x00000008u;
|
|
/* 024C99B8 */ rbrew_write_f32(cpu->mem, _t46, cpu->f[0]);
|
|
/* 024C99BC */ _t47 = cpu->r[3] + 0x00000004u;
|
|
/* 024C99BC */ rbrew_write_f32(cpu->mem, _t47, cpu->f[0]);
|
|
L_024C99C0: ; // 0x24c99c0
|
|
/* 024C99C0 */ cpu->r[3] = cpu->r[31] + 0x00000588u;
|
|
/* 024C99C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C99C4 */ _t48 = cpu->r[31] + 0x00000584u;
|
|
/* 024C99C4 */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 024C99C8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C99C8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C99C8 */ if (_t50) goto L_024C99CC; else goto L_024C99DC;
|
|
L_024C99CC: ; // 0x24c99cc
|
|
/* 024C99CC */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024C99D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024C99D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C99D8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C99D8 */ _t52 = _t51 & 0x00000001u;
|
|
/* 024C99D8 */ if (_t52) goto L_024C99F0; else goto L_024C99DC;
|
|
L_024C99DC: ; // 0x24c99dc
|
|
/* 024C99DC */ cpu->r[12] = 0x100B0000u;
|
|
/* 024C99E0 */ _t53 = cpu->r[3] + 0x00000004u;
|
|
/* 024C99E0 */ rbrew_write32(cpu->mem, _t53, cpu->r[30]);
|
|
/* 024C99E4 */ cpu->r[12] = cpu->r[12] + 0x000057B8u;
|
|
/* 024C99E8 */ _t54 = cpu->r[3] + 0x00000000u;
|
|
/* 024C99E8 */ rbrew_write32(cpu->mem, _t54, cpu->r[30]);
|
|
/* 024C99EC */ _t55 = cpu->r[3] + 0x00000008u;
|
|
/* 024C99EC */ rbrew_write32(cpu->mem, _t55, cpu->r[12]);
|
|
L_024C99F0: ; // 0x24c99f0
|
|
/* 024C99F0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C99F4 */ cpu->r[0] = cpu->r[0] + 0x000057C8u;
|
|
/* 024C99F8 */ _t56 = cpu->r[31] + 0x00000590u;
|
|
/* 024C99F8 */ rbrew_write32(cpu->mem, _t56, cpu->r[0]);
|
|
L_024C99FC: ; // 0x24c99fc
|
|
/* 024C99FC */ _t57 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C99FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024C9A00 */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C9A04 */ cpu->r[3] = cpu->r[31];
|
|
/* 024C9A08 */ _t59 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9A08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C9A0C */ cpu->lr = cpu->r[0];
|
|
/* 024C9A10 */ _t60 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C9A14 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024C9A18 */ return;
|
|
}
|
|
|
|
// fn_024C9A1C @ 0x24c9a1c
|
|
void Gambit_fn_024C9A1C(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;
|
|
|
|
L_024C62A8: ; // 0x24c62a8
|
|
/* 024C62A8 */ _t0 = cpu->r[1] + 0xFFFFFFA8u;
|
|
/* 024C62A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C62A8 */ cpu->r[1] = _t0;
|
|
/* 024C62AC */ /* nop */
|
|
/* 024C62B0 */ cpu->r[28] = cpu->r[3];
|
|
/* 024C62B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024C62B8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024C62BC */ cpu->r[31] = cpu->r[4];
|
|
/* 024C62C0 */ _t1 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C62C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C62C4 */ Gambit_fn_024F6710(cpu);
|
|
/* 024C62C8 */ cpu->r[5] = cpu->r[3];
|
|
/* 024C62CC */ cpu->r[3] = cpu->r[28];
|
|
/* 024C62D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024C62D4 */ Gambit_fn_024F4798(cpu);
|
|
/* 024C62D8 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024C62DC */ cpu->r[5] = cpu->r[5] + 0x00004C94u;
|
|
/* 024C62E0 */ _t2 = cpu->r[31] + 0x00000000u;
|
|
/* 024C62E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C62E4 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 024C62E8 */ Gambit_fn_027DBA48(cpu);
|
|
/* 024C62EC */ cpu->r[27] = 0x100B0000u;
|
|
/* 024C62F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C62F4 */ cpu->r[31] = 0x10110000u;
|
|
/* 024C62F8 */ cpu->r[27] = cpu->r[27] + 0x00004BD8u;
|
|
/* 024C62FC */ cpu->r[26] = 0x101C0000u;
|
|
/* 024C6300 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6300 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C6300 */ if (_t4) goto L_024C63C4; else goto L_024C6304;
|
|
L_024C6304: ; // 0x24c6304
|
|
/* 024C6304 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C6308 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C630C */ _t5 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C630C */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6310 */ cpu->ctr = cpu->r[25];
|
|
/* 024C6314 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 024C6314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6318 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6318 */ rbrew_write32(cpu->mem, _t7, cpu->r[27]);
|
|
/* 024C631C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C631C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024C6320 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6324 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6328 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6328 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C632C */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 024C632C */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C6330 */ _t11 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6330 */ cpu->r[8] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024C6334 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 024C633C */ cpu->r[6] = 0x00080000u;
|
|
/* 024C6340 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6340 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024C6340 */ if (_t13) goto L_024C6368; else goto L_024C6344;
|
|
L_024C6344: ; // 0x24c6344
|
|
/* 024C6344 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 024C634C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C6350 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6350 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024C6350 */ if (_t15) goto L_024C6364; else goto L_024C6354;
|
|
L_024C6354: ; // 0x24c6354
|
|
/* 024C6354 */ _t16 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6354 */ cpu->r[9] = rbrew_read8(cpu->mem, _t16);
|
|
/* 024C6358 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 024C635C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C635C */ _t18 = _t17 & 0x00000001u;
|
|
/* 024C635C */ if (_t18) goto L_024C6360; else goto L_024C6344;
|
|
L_024C6360: ; // 0x24c6360
|
|
/* 024C6360 */ goto L_024C6368;
|
|
L_024C6364: ; // 0x24c6364
|
|
/* 024C6364 */ cpu->r[30] = 0x00000000u;
|
|
L_024C6368: ; // 0x24c6368
|
|
/* 024C6368 */ _t19 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C6368 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 024C6370 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6370 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024C6370 */ if (_t21) goto L_024C6378; else goto L_024C6374;
|
|
L_024C6374: ; // 0x24c6374
|
|
/* 024C6374 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C6378: ; // 0x24c6378
|
|
/* 024C6378 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 024C6378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024C637C */ _t23 = cpu->r[10] + 0x00000014u;
|
|
/* 024C637C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024C6380 */ cpu->ctr = cpu->r[11];
|
|
/* 024C6384 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6388 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C638C */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C638C */ cpu->r[4] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C6390 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6394 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6398 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C639C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C63A0 */ _t25 = cpu->r[29] + cpu->r[30];
|
|
/* 024C63A0 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[31]);
|
|
/* 024C63A4 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C63A8 */ _t26 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C63A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C63AC */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C63B0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C63B4 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C63B8 */ cpu->r[10] = cpu->r[3];
|
|
/* 024C63B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C63BC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C63BC */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C63BC */ if (_t28) goto L_024C6644; else goto L_024C63C0;
|
|
L_024C63C0: ; // 0x24c63c0
|
|
/* 024C63C0 */ goto L_024C6550;
|
|
L_024C63C4: ; // 0x24c63c4
|
|
/* 024C63C4 */ _t29 = cpu->r[26] + 0x00001358u;
|
|
/* 024C63C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024C63C8 */ _t30 = cpu->r[30] + 0x00000128u;
|
|
/* 024C63C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C63CC */ _t31 = cpu->r[31] + 0x00007399u;
|
|
/* 024C63CC */ cpu->r[31] = rbrew_read8(cpu->mem, _t31);
|
|
/* 024C63D0 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 024C63D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32);
|
|
/* 024C63D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C63D8 */ cpu->r[25] = cpu->r[30] + 0x00000128u;
|
|
/* 024C63DC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C63DC */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C63DC */ if (_t34) goto L_024C6498; else goto L_024C63E0;
|
|
L_024C63E0: ; // 0x24c63e0
|
|
/* 024C63E0 */ _t35 = cpu->r[25] + 0x00000004u;
|
|
/* 024C63E0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C63E4 */ _t36 = cpu->r[5] + 0x00000014u;
|
|
/* 024C63E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C63E8 */ cpu->ctr = cpu->r[6];
|
|
/* 024C63EC */ _t37 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C63EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C63F0 */ cpu->r[3] = cpu->r[25];
|
|
/* 024C63F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C63F8 */ _t38 = cpu->r[25] + 0x00000000u;
|
|
/* 024C63F8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024C63FC */ _t39 = cpu->r[5] + 0x00000000u;
|
|
/* 024C63FC */ cpu->r[7] = rbrew_read8(cpu->mem, _t39);
|
|
/* 024C6400 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 024C6408 */ cpu->r[0] = 0x00080000u;
|
|
/* 024C640C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C640C */ _t41 = _t40 & 0x00000001u;
|
|
/* 024C640C */ if (_t41) goto L_024C6434; else goto L_024C6410;
|
|
L_024C6410: ; // 0x24c6410
|
|
/* 024C6410 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 024C6418 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 024C641C */ _t42 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C641C */ _t43 = _t42 & 0x00000001u;
|
|
/* 024C641C */ if (_t43) goto L_024C6430; else goto L_024C6420;
|
|
L_024C6420: ; // 0x24c6420
|
|
/* 024C6420 */ _t44 = cpu->r[5] + 0x00000000u;
|
|
/* 024C6420 */ cpu->r[8] = rbrew_read8(cpu->mem, _t44);
|
|
/* 024C6424 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 024C6428 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6428 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024C6428 */ if (_t46) goto L_024C642C; else goto L_024C6410;
|
|
L_024C642C: ; // 0x24c642c
|
|
/* 024C642C */ goto L_024C6434;
|
|
L_024C6430: ; // 0x24c6430
|
|
/* 024C6430 */ cpu->r[30] = 0x00000000u;
|
|
L_024C6434: ; // 0x24c6434
|
|
/* 024C6434 */ _t47 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C6434 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C6438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 024C643C */ _t48 = cpu->r[25] + 0x00000004u;
|
|
/* 024C643C */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024C6440 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6440 */ _t50 = _t49 & 0x00000001u;
|
|
/* 024C6440 */ if (_t50) goto L_024C6448; else goto L_024C6444;
|
|
L_024C6444: ; // 0x24c6444
|
|
/* 024C6444 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C6448: ; // 0x24c6448
|
|
/* 024C6448 */ _t51 = cpu->r[9] + 0x00000014u;
|
|
/* 024C6448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024C644C */ cpu->ctr = cpu->r[10];
|
|
/* 024C6450 */ cpu->r[3] = cpu->r[25];
|
|
/* 024C6454 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6458 */ _t52 = cpu->r[25] + 0x00000000u;
|
|
/* 024C6458 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024C645C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6460 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6464 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6468 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C646C */ _t53 = cpu->r[29] + cpu->r[30];
|
|
/* 024C646C */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[31]);
|
|
/* 024C6470 */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6474 */ _t54 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C6474 */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C6478 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C647C */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6480 */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6484 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C6488 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C648C */ cpu->r[10] = cpu->r[3];
|
|
/* 024C648C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C6490 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6490 */ _t56 = _t55 & 0x00000001u;
|
|
/* 024C6490 */ if (_t56) goto L_024C6644; else goto L_024C6494;
|
|
L_024C6494: ; // 0x24c6494
|
|
/* 024C6494 */ goto L_024C6550;
|
|
L_024C6498: ; // 0x24c6498
|
|
/* 024C6498 */ _t57 = cpu->r[30] + 0x00000020u;
|
|
/* 024C6498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024C649C */ _t58 = cpu->r[11] + 0x00000014u;
|
|
/* 024C649C */ cpu->r[12] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024C64A0 */ cpu->r[25] = cpu->r[30] + 0x0000001Cu;
|
|
/* 024C64A4 */ cpu->ctr = cpu->r[12];
|
|
/* 024C64A8 */ _t59 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C64A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024C64AC */ cpu->r[3] = cpu->r[25];
|
|
/* 024C64B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C64B4 */ _t60 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024C64B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024C64B8 */ _t61 = cpu->r[9] + 0x00000000u;
|
|
/* 024C64B8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 024C64BC */ cpu->r[30] = 0x00000000u;
|
|
/* 024C64C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C64C4 */ cpu->r[11] = 0x00080000u;
|
|
/* 024C64C8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C64C8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024C64C8 */ if (_t63) goto L_024C64F0; else goto L_024C64CC;
|
|
L_024C64CC: ; // 0x24c64cc
|
|
/* 024C64CC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C64D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C64D4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024C64D8 */ _t64 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C64D8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 024C64D8 */ if (_t65) goto L_024C64EC; else goto L_024C64DC;
|
|
L_024C64DC: ; // 0x24c64dc
|
|
/* 024C64DC */ _t66 = cpu->r[9] + 0x00000000u;
|
|
/* 024C64DC */ cpu->r[5] = rbrew_read8(cpu->mem, _t66);
|
|
/* 024C64E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 024C64E4 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C64E4 */ _t68 = _t67 & 0x00000001u;
|
|
/* 024C64E4 */ if (_t68) goto L_024C64E8; else goto L_024C64CC;
|
|
L_024C64E8: ; // 0x24c64e8
|
|
/* 024C64E8 */ goto L_024C64F0;
|
|
L_024C64EC: ; // 0x24c64ec
|
|
/* 024C64EC */ cpu->r[30] = 0x00000000u;
|
|
L_024C64F0: ; // 0x24c64f0
|
|
/* 024C64F0 */ _t69 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C64F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024C64F4 */ _t70 = cpu->r[25] + 0x00000004u;
|
|
/* 024C64F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024C64F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C64FC */ _t71 = cpu->r[7] + 0x00000014u;
|
|
/* 024C64FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024C6500 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C6500 */ _t73 = _t72 & 0x00000001u;
|
|
/* 024C6500 */ if (_t73) goto L_024C6508; else goto L_024C6504;
|
|
L_024C6504: ; // 0x24c6504
|
|
/* 024C6504 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C6508: ; // 0x24c6508
|
|
/* 024C6508 */ cpu->ctr = cpu->r[8];
|
|
/* 024C650C */ cpu->r[3] = cpu->r[25];
|
|
/* 024C6510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6514 */ _t74 = cpu->r[25] + 0x00000000u;
|
|
/* 024C6514 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024C6518 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C651C */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6520 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6524 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C6528 */ _t75 = cpu->r[29] + cpu->r[30];
|
|
/* 024C6528 */ rbrew_write8(cpu->mem, _t75, (uint8_t)cpu->r[31]);
|
|
/* 024C652C */ cpu->r[30] = 0x101C0000u;
|
|
/* 024C6530 */ _t76 = cpu->r[30] + 0x000036BCu;
|
|
/* 024C6530 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 024C6534 */ cpu->r[25] = 0x024C0000u;
|
|
/* 024C6538 */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C653C */ cpu->r[3] = cpu->r[30];
|
|
/* 024C6540 */ cpu->r[25] = cpu->r[25] + 0x00006ED4u;
|
|
/* 024C6544 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C6548 */ cpu->r[10] = cpu->r[3];
|
|
/* 024C6548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024C654C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C654C */ _t78 = _t77 & 0x00000001u;
|
|
/* 024C654C */ if (_t78) goto L_024C6644; else goto L_024C6550;
|
|
L_024C6550: ; // 0x24c6550
|
|
/* 024C6550 */ cpu->ctr = cpu->r[25];
|
|
/* 024C6554 */ _t79 = cpu->r[1] + 0x00000018u;
|
|
/* 024C6554 */ rbrew_write32(cpu->mem, _t79, cpu->r[27]);
|
|
/* 024C6558 */ _t80 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C6558 */ cpu->r[29] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024C655C */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 024C6560 */ _t81 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6560 */ rbrew_write32(cpu->mem, _t81, cpu->r[10]);
|
|
/* 024C6564 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6568 */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6568 */ cpu->r[9] = rbrew_read32(cpu->mem, _t82);
|
|
/* 024C656C */ _t83 = cpu->r[9] + 0x00000000u;
|
|
/* 024C656C */ cpu->r[0] = rbrew_read8(cpu->mem, _t83);
|
|
/* 024C6570 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6574 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6578 */ cpu->r[11] = 0x00080000u;
|
|
/* 024C657C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C657C */ _t85 = _t84 & 0x00000001u;
|
|
/* 024C657C */ if (_t85) goto L_024C65A4; else goto L_024C6580;
|
|
L_024C6580: ; // 0x24c6580
|
|
/* 024C6580 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C6584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C6588 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024C658C */ _t86 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C658C */ _t87 = _t86 & 0x00000001u;
|
|
/* 024C658C */ if (_t87) goto L_024C65A0; else goto L_024C6590;
|
|
L_024C6590: ; // 0x24c6590
|
|
/* 024C6590 */ _t88 = cpu->r[9] + 0x00000000u;
|
|
/* 024C6590 */ cpu->r[0] = rbrew_read8(cpu->mem, _t88);
|
|
/* 024C6594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6598 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6598 */ _t90 = _t89 & 0x00000001u;
|
|
/* 024C6598 */ if (_t90) goto L_024C659C; else goto L_024C6580;
|
|
L_024C659C: ; // 0x24c659c
|
|
/* 024C659C */ goto L_024C65A4;
|
|
L_024C65A0: ; // 0x24c65a0
|
|
/* 024C65A0 */ cpu->r[30] = 0x00000000u;
|
|
L_024C65A4: ; // 0x24c65a4
|
|
/* 024C65A4 */ _t91 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C65A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t91);
|
|
/* 024C65A8 */ _t92 = cpu->r[1] + 0x00000018u;
|
|
/* 024C65A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 024C65AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C65B0 */ _t93 = cpu->r[7] + 0x00000014u;
|
|
/* 024C65B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024C65B4 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C65B4 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024C65B4 */ if (_t95) goto L_024C65BC; else goto L_024C65B8;
|
|
L_024C65B8: ; // 0x24c65b8
|
|
/* 024C65B8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C65BC: ; // 0x24c65bc
|
|
/* 024C65BC */ cpu->ctr = cpu->r[0];
|
|
/* 024C65C0 */ cpu->r[3] = cpu->r[1] + 0x00000014u;
|
|
/* 024C65C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C65C8 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 024C65C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024C65CC */ cpu->r[6] = 0x00000000u;
|
|
/* 024C65D0 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C65D4 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C65D8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C65DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C65E0 */ _t97 = cpu->r[29] + cpu->r[30];
|
|
/* 024C65E0 */ rbrew_write8(cpu->mem, _t97, (uint8_t)cpu->r[31]);
|
|
/* 024C65E4 */ _t98 = cpu->r[12] + 0x00001344u;
|
|
/* 024C65E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 024C65E8 */ _t99 = cpu->r[12] + 0x00000010u;
|
|
/* 024C65E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t99);
|
|
/* 024C65EC */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C65F0 */ Gambit_fn_0201A440(cpu);
|
|
/* 024C65F4 */ _t100 = cpu->r[28] + 0x000003D8u;
|
|
/* 024C65F4 */ rbrew_write32(cpu->mem, _t100, cpu->r[3]);
|
|
/* 024C65F8 */ _t101 = cpu->r[3] + 0x00000010u;
|
|
/* 024C65F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101);
|
|
/* 024C65FC */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6600 */ _t102 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6600 */ rbrew_write32(cpu->mem, _t102, cpu->r[0]);
|
|
/* 024C6604 */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C6608 */ _t103 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6608 */ cpu->r[5] = rbrew_read32(cpu->mem, _t103);
|
|
/* 024C660C */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024C6610 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6614 */ Gambit_fn_02173E28(cpu);
|
|
/* 024C6618 */ _t104 = cpu->r[1] + 0x00000028u;
|
|
/* 024C6618 */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 024C661C */ cpu->r[4] = 0x00000002u;
|
|
/* 024C6620 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6624 */ _t105 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C6624 */ rbrew_write32(cpu->mem, _t105, cpu->r[5]);
|
|
/* 024C6628 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C662C */ _t106 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C662C */ cpu->r[6] = rbrew_read32(cpu->mem, _t106);
|
|
/* 024C6630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000000u);
|
|
/* 024C6634 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6634 */ _t108 = _t107 & 0x00000001u;
|
|
/* 024C6634 */ if (_t108) goto L_024C6638; else goto L_024C67D0;
|
|
L_024C6638: ; // 0x24c6638
|
|
/* 024C6638 */ cpu->r[6] = 0x00000001u;
|
|
/* 024C663C */ _t109 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C663C */ rbrew_write32(cpu->mem, _t109, cpu->r[6]);
|
|
/* 024C6640 */ goto L_024C67FC;
|
|
L_024C6644: ; // 0x24c6644
|
|
/* 024C6644 */ _t110 = cpu->r[26] + 0x00001358u;
|
|
/* 024C6644 */ cpu->r[29] = rbrew_read32(cpu->mem, _t110);
|
|
/* 024C6648 */ _t111 = cpu->r[29] + 0x00000020u;
|
|
/* 024C6648 */ cpu->r[11] = rbrew_read32(cpu->mem, _t111);
|
|
/* 024C664C */ _t112 = cpu->r[11] + 0x00000014u;
|
|
/* 024C664C */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 024C6650 */ cpu->r[26] = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C6654 */ cpu->ctr = cpu->r[5];
|
|
/* 024C6658 */ _t113 = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6658 */ cpu->r[24] = rbrew_read32(cpu->mem, _t113);
|
|
/* 024C665C */ cpu->r[3] = cpu->r[26];
|
|
/* 024C6660 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6664 */ _t114 = cpu->r[29] + 0x0000001Cu;
|
|
/* 024C6664 */ cpu->r[8] = rbrew_read32(cpu->mem, _t114);
|
|
/* 024C6668 */ _t115 = cpu->r[8] + 0x00000000u;
|
|
/* 024C6668 */ cpu->r[7] = rbrew_read8(cpu->mem, _t115);
|
|
/* 024C666C */ cpu->r[10] = 0x00080000u;
|
|
/* 024C6670 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 024C6674 */ cpu->r[29] = 0x00000000u;
|
|
/* 024C6678 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6678 */ _t117 = _t116 & 0x00000001u;
|
|
/* 024C6678 */ if (_t117) goto L_024C66A0; else goto L_024C667C;
|
|
L_024C667C: ; // 0x24c667c
|
|
/* 024C667C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 024C6680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 024C6684 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024C6688 */ _t118 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6688 */ _t119 = _t118 & 0x00000001u;
|
|
/* 024C6688 */ if (_t119) goto L_024C669C; else goto L_024C668C;
|
|
L_024C668C: ; // 0x24c668c
|
|
/* 024C668C */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 024C668C */ cpu->r[0] = rbrew_read8(cpu->mem, _t120);
|
|
/* 024C6690 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6694 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6694 */ _t122 = _t121 & 0x00000001u;
|
|
/* 024C6694 */ if (_t122) goto L_024C6698; else goto L_024C667C;
|
|
L_024C6698: ; // 0x24c6698
|
|
/* 024C6698 */ goto L_024C66A0;
|
|
L_024C669C: ; // 0x24c669c
|
|
/* 024C669C */ cpu->r[29] = 0x00000000u;
|
|
L_024C66A0: ; // 0x24c66a0
|
|
/* 024C66A0 */ _t123 = cpu->r[28] + 0x000001C0u;
|
|
/* 024C66A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024C66A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 024C66A8 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C66A8 */ _t125 = _t124 & 0x00000001u;
|
|
/* 024C66A8 */ if (_t125) goto L_024C66B0; else goto L_024C66AC;
|
|
L_024C66AC: ; // 0x24c66ac
|
|
/* 024C66AC */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C66B0: ; // 0x24c66b0
|
|
/* 024C66B0 */ _t126 = cpu->r[26] + 0x00000004u;
|
|
/* 024C66B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t126);
|
|
/* 024C66B4 */ _t127 = cpu->r[10] + 0x00000014u;
|
|
/* 024C66B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t127);
|
|
/* 024C66B8 */ cpu->ctr = cpu->r[12];
|
|
/* 024C66BC */ cpu->r[3] = cpu->r[26];
|
|
/* 024C66C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C66C4 */ _t128 = cpu->r[26] + 0x00000000u;
|
|
/* 024C66C4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t128);
|
|
/* 024C66C8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C66CC */ cpu->r[5] = cpu->r[29];
|
|
/* 024C66D0 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C66D4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C66D8 */ cpu->r[4] = cpu->r[26];
|
|
/* 024C66DC */ cpu->r[3] = cpu->r[30];
|
|
/* 024C66E0 */ _t129 = cpu->r[24] + cpu->r[29];
|
|
/* 024C66E0 */ rbrew_write8(cpu->mem, _t129, (uint8_t)cpu->r[31]);
|
|
/* 024C66E4 */ Gambit_fn_020F6CF0(cpu);
|
|
/* 024C66E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024C66EC */ _t130 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C66EC */ rbrew_write32(cpu->mem, _t130, cpu->r[3]);
|
|
/* 024C66F0 */ _t131 = cpu->r[1] + 0x00000020u;
|
|
/* 024C66F0 */ rbrew_write32(cpu->mem, _t131, cpu->r[27]);
|
|
/* 024C66F4 */ _t132 = cpu->r[28] + 0x000002C4u;
|
|
/* 024C66F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t132);
|
|
/* 024C66F8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C66FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6700 */ _t133 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t133);
|
|
/* 024C6704 */ _t134 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6704 */ cpu->r[0] = rbrew_read8(cpu->mem, _t134);
|
|
/* 024C6708 */ cpu->r[5] = 0x00080000u;
|
|
/* 024C670C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024C6710 */ cpu->r[30] = 0x00000000u;
|
|
/* 024C6714 */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6714 */ _t136 = _t135 & 0x00000001u;
|
|
/* 024C6714 */ if (_t136) goto L_024C673C; else goto L_024C6718;
|
|
L_024C6718: ; // 0x24c6718
|
|
/* 024C6718 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024C671C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 024C6720 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 024C6724 */ _t137 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C6724 */ _t138 = _t137 & 0x00000001u;
|
|
/* 024C6724 */ if (_t138) goto L_024C6738; else goto L_024C6728;
|
|
L_024C6728: ; // 0x24c6728
|
|
/* 024C6728 */ _t139 = cpu->r[12] + 0x00000000u;
|
|
/* 024C6728 */ cpu->r[6] = rbrew_read8(cpu->mem, _t139);
|
|
/* 024C672C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 024C6730 */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C6730 */ _t141 = _t140 & 0x00000001u;
|
|
/* 024C6730 */ if (_t141) goto L_024C6734; else goto L_024C6718;
|
|
L_024C6734: ; // 0x24c6734
|
|
/* 024C6734 */ goto L_024C673C;
|
|
L_024C6738: ; // 0x24c6738
|
|
/* 024C6738 */ cpu->r[30] = 0x00000000u;
|
|
L_024C673C: ; // 0x24c673c
|
|
/* 024C673C */ _t142 = cpu->r[28] + 0x000002CCu;
|
|
/* 024C673C */ cpu->r[11] = rbrew_read32(cpu->mem, _t142);
|
|
/* 024C6740 */ _t143 = cpu->r[1] + 0x00000020u;
|
|
/* 024C6740 */ cpu->r[8] = rbrew_read32(cpu->mem, _t143);
|
|
/* 024C6744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 024C6748 */ _t144 = cpu->r[8] + 0x00000014u;
|
|
/* 024C6748 */ cpu->r[0] = rbrew_read32(cpu->mem, _t144);
|
|
/* 024C674C */ _t145 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C674C */ _t146 = _t145 & 0x00000001u;
|
|
/* 024C674C */ if (_t146) goto L_024C6754; else goto L_024C6750;
|
|
L_024C6750: ; // 0x24c6750
|
|
/* 024C6750 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024C6754: ; // 0x24c6754
|
|
/* 024C6754 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6758 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C675C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6760 */ _t147 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C6760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147);
|
|
/* 024C6764 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C6768 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C676C */ cpu->r[3] = cpu->r[29];
|
|
/* 024C6770 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C6774 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C6778 */ _t148 = cpu->r[29] + cpu->r[30];
|
|
/* 024C6778 */ rbrew_write8(cpu->mem, _t148, (uint8_t)cpu->r[31]);
|
|
/* 024C677C */ _t149 = cpu->r[12] + 0x00001344u;
|
|
/* 024C677C */ cpu->r[12] = rbrew_read32(cpu->mem, _t149);
|
|
/* 024C6780 */ _t150 = cpu->r[12] + 0x00000010u;
|
|
/* 024C6780 */ cpu->r[3] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024C6784 */ cpu->r[4] = cpu->r[28] + 0x000001B8u;
|
|
/* 024C6788 */ Gambit_fn_0201A440(cpu);
|
|
/* 024C678C */ _t151 = cpu->r[28] + 0x000003D8u;
|
|
/* 024C678C */ rbrew_write32(cpu->mem, _t151, cpu->r[3]);
|
|
/* 024C6790 */ _t152 = cpu->r[3] + 0x00000010u;
|
|
/* 024C6790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t152);
|
|
/* 024C6794 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C6798 */ _t153 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C6798 */ rbrew_write32(cpu->mem, _t153, cpu->r[0]);
|
|
/* 024C679C */ Gambit_fn_02173CCC(cpu);
|
|
/* 024C67A0 */ _t154 = cpu->r[28] + 0x000003DCu;
|
|
/* 024C67A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t154);
|
|
/* 024C67A4 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024C67A8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C67AC */ Gambit_fn_02173E28(cpu);
|
|
/* 024C67B0 */ _t155 = cpu->r[1] + 0x00000028u;
|
|
/* 024C67B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155);
|
|
/* 024C67B4 */ cpu->r[4] = 0x00000002u;
|
|
/* 024C67B8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 024C67BC */ _t156 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C67BC */ rbrew_write32(cpu->mem, _t156, cpu->r[5]);
|
|
/* 024C67C0 */ Gambit_fn_02173D6C(cpu);
|
|
/* 024C67C4 */ _t157 = cpu->r[28] + 0x000003E0u;
|
|
/* 024C67C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t157);
|
|
/* 024C67C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000000u);
|
|
/* 024C67CC */ _t158 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67CC */ _t159 = _t158 & 0x00000001u;
|
|
/* 024C67CC */ if (_t159) goto L_024C6638; else goto L_024C67D0;
|
|
L_024C67D0: ; // 0x24c67d0
|
|
/* 024C67D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000002u);
|
|
/* 024C67D4 */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67D4 */ _t161 = _t160 & 0x00000001u;
|
|
/* 024C67D4 */ if (_t161) goto L_024C6638; else goto L_024C67D8;
|
|
L_024C67D8: ; // 0x24c67d8
|
|
/* 024C67D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x00000003u);
|
|
/* 024C67DC */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C67DC */ _t163 = _t162 & 0x00000001u;
|
|
/* 024C67DC */ if (_t163) goto L_024C67F4; else goto L_024C67E0;
|
|
L_024C67E0: ; // 0x24c67e0
|
|
/* 024C67E0 */ /* nop */
|
|
/* 024C67E4 */ _t164 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C67E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164);
|
|
/* 024C67E8 */ cpu->lr = cpu->r[0];
|
|
/* 024C67EC */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 024C67F0 */ return;
|
|
L_024C67F4: ; // 0x24c67f4
|
|
/* 024C67F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C67F8 */ _t165 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024C67F8 */ rbrew_write32(cpu->mem, _t165, cpu->r[6]);
|
|
L_024C67FC: ; // 0x24c67fc
|
|
/* 024C67FC */ /* nop */
|
|
/* 024C6800 */ _t166 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C6800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t166);
|
|
/* 024C6804 */ cpu->lr = cpu->r[0];
|
|
/* 024C6808 */ cpu->r[1] = cpu->r[1] + 0x00000058u;
|
|
/* 024C680C */ return;
|
|
L_024C9A1C: ; // 0x24c9a1c
|
|
/* 024C9A1C */ goto L_024C62A8;
|
|
}
|
|
|
|
// fn_024C9A20 @ 0x24c9a20
|
|
void Gambit_fn_024C9A20(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_024C9A20: ; // 0x24c9a20
|
|
/* 024C9A20 */ cpu->r[0] = cpu->lr;
|
|
/* 024C9A24 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 024C9A24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9A24 */ cpu->r[1] = _t0;
|
|
/* 024C9A28 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 024C9A28 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C9A2C */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 024C9A2C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C9A30 */ cpu->r[5] = 0x00000000u;
|
|
/* 024C9A34 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C9A34 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024C9A38 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C9A3C */ cpu->r[6] = cpu->r[5];
|
|
/* 024C9A40 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C9A44 */ _t4 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C9A44 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C9A48 */ cpu->r[29] = 0x100B0000u;
|
|
/* 024C9A4C */ cpu->r[30] = cpu->r[30] + 0x000056F8u;
|
|
/* 024C9A50 */ cpu->r[29] = cpu->r[29] + 0x000058BCu;
|
|
/* 024C9A54 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024C9A58 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9A58 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 024C9A5C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 024C9A60 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024C9A64 */ Gambit_fn_027C6980(cpu);
|
|
/* 024C9A68 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 024C9A6C */ Gambit_fn_02982574(cpu);
|
|
/* 024C9A70 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C9A74 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9A78 */ _t7 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 024C9A78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9A7C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C9A80 */ _t8 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 024C9A80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 024C9A84 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 024C9A84 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 024C9A88 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C9A8C */ _t10 = cpu->r[11] + 0xFFFF97D8u;
|
|
/* 024C9A8C */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C9A90 */ _t11 = cpu->r[9] + 0xFFFF97D0u;
|
|
/* 024C9A90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C9A94 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 024C9A94 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[8]);
|
|
/* 024C9A98 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 024C9A98 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 024C9A9C */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C9AA0 */ _t14 = cpu->r[1] + 0x00000049u;
|
|
/* 024C9AA0 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 024C9AA4 */ Gambit_fn_02984F3C(cpu);
|
|
/* 024C9AA8 */ cpu->r[9] = 0x00000006u;
|
|
/* 024C9AAC */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9AAC */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 024C9AB0 */ cpu->r[10] = 0x00000000u;
|
|
/* 024C9AB4 */ _t16 = cpu->r[1] + 0x00000050u;
|
|
/* 024C9AB4 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 024C9AB8 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C9ABC */ _t17 = cpu->r[31] + 0x0000002Cu;
|
|
/* 024C9ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C9AC0 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 024C9AC4 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 024C9AC4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 024C9AC8 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 024C9ACC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9ACC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024C9AD0 */ cpu->r[6] = cpu->r[5];
|
|
/* 024C9AD4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9AD4 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C9AD8 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 024C9ADC */ cpu->r[7] = cpu->r[1] + 0x00000030u;
|
|
/* 024C9AE0 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024C9AE0 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 024C9AE4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9AE8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9AE8 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 024C9AEC */ Gambit_fn_023C982C(cpu);
|
|
/* 024C9AF0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C9AF4 */ _t23 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C9AF4 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 024C9AF8 */ _t24 = cpu->r[12] + 0x00006000u;
|
|
/* 024C9AF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C9AFC */ _t25 = cpu->r[12] + 0x0000025Cu;
|
|
/* 024C9AFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C9B00 */ _t26 = cpu->r[8] + 0x00000008u;
|
|
/* 024C9B00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C9B04 */ Gambit_fn_0297FD44(cpu);
|
|
/* 024C9B08 */ cpu->r[3] = 0x00000008u;
|
|
/* 024C9B0C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C9B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9B14 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9B14 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C9B14 */ if (_t28) goto L_024C9B28; else goto L_024C9B18;
|
|
L_024C9B18: ; // 0x24c9b18
|
|
/* 024C9B18 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9B1C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 024C9B1C */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 024C9B20 */ cpu->r[0] = cpu->r[0] + 0x00005DE4u;
|
|
/* 024C9B24 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 024C9B24 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_024C9B28: ; // 0x24c9b28
|
|
/* 024C9B28 */ _t31 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C9B28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C9B2C */ _t32 = cpu->r[31] + 0x00000540u;
|
|
/* 024C9B2C */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 024C9B30 */ _t33 = cpu->r[11] + 0x000000A8u;
|
|
/* 024C9B30 */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
/* 024C9B34 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C9B34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C9B38 */ _t35 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C9B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C9B3C */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 024C9B3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C9B40 */ cpu->lr = cpu->r[0];
|
|
/* 024C9B44 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 024C9B44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C9B48 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024C9B4C */ return;
|
|
}
|
|
|
|
// fn_024C9A24 @ 0x24c9a24
|
|
void Gambit_fn_024C9A24(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_024C9A24: ; // 0x24c9a24
|
|
/* 024C9A24 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 024C9A24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9A24 */ cpu->r[1] = _t0;
|
|
/* 024C9A28 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 024C9A28 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C9A2C */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 024C9A2C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C9A30 */ cpu->r[5] = 0x00000000u;
|
|
/* 024C9A34 */ _t3 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C9A34 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024C9A38 */ cpu->r[30] = 0x100B0000u;
|
|
/* 024C9A3C */ cpu->r[6] = cpu->r[5];
|
|
/* 024C9A40 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C9A44 */ _t4 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C9A44 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C9A48 */ cpu->r[29] = 0x100B0000u;
|
|
/* 024C9A4C */ cpu->r[30] = cpu->r[30] + 0x000056F8u;
|
|
/* 024C9A50 */ cpu->r[29] = cpu->r[29] + 0x000058BCu;
|
|
/* 024C9A54 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024C9A58 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9A58 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 024C9A5C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 024C9A60 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024C9A64 */ Gambit_fn_027C6980(cpu);
|
|
/* 024C9A68 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 024C9A6C */ Gambit_fn_02982574(cpu);
|
|
/* 024C9A70 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024C9A74 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024C9A78 */ _t7 = cpu->r[10] + 0xFFFF97D4u;
|
|
/* 024C9A78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9A7C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024C9A80 */ _t8 = cpu->r[12] + 0xFFFF97D9u;
|
|
/* 024C9A80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 024C9A84 */ _t9 = cpu->r[1] + 0x00000044u;
|
|
/* 024C9A84 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 024C9A88 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024C9A8C */ _t10 = cpu->r[11] + 0xFFFF97D8u;
|
|
/* 024C9A8C */ cpu->r[8] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024C9A90 */ _t11 = cpu->r[9] + 0xFFFF97D0u;
|
|
/* 024C9A90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C9A94 */ _t12 = cpu->r[1] + 0x00000048u;
|
|
/* 024C9A94 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[8]);
|
|
/* 024C9A98 */ _t13 = cpu->r[1] + 0x00000034u;
|
|
/* 024C9A98 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 024C9A9C */ cpu->r[3] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C9AA0 */ _t14 = cpu->r[1] + 0x00000049u;
|
|
/* 024C9AA0 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 024C9AA4 */ Gambit_fn_02984F3C(cpu);
|
|
/* 024C9AA8 */ cpu->r[9] = 0x00000006u;
|
|
/* 024C9AAC */ _t15 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9AAC */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 024C9AB0 */ cpu->r[10] = 0x00000000u;
|
|
/* 024C9AB4 */ _t16 = cpu->r[1] + 0x00000050u;
|
|
/* 024C9AB4 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 024C9AB8 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu;
|
|
/* 024C9ABC */ _t17 = cpu->r[31] + 0x0000002Cu;
|
|
/* 024C9ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C9AC0 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 024C9AC4 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 024C9AC4 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 024C9AC8 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 024C9ACC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9ACC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024C9AD0 */ cpu->r[6] = cpu->r[5];
|
|
/* 024C9AD4 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9AD4 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]);
|
|
/* 024C9AD8 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 024C9ADC */ cpu->r[7] = cpu->r[1] + 0x00000030u;
|
|
/* 024C9AE0 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024C9AE0 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 024C9AE4 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9AE8 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9AE8 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]);
|
|
/* 024C9AEC */ Gambit_fn_023C982C(cpu);
|
|
/* 024C9AF0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024C9AF4 */ _t23 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C9AF4 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 024C9AF8 */ _t24 = cpu->r[12] + 0x00006000u;
|
|
/* 024C9AF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024C9AFC */ _t25 = cpu->r[12] + 0x0000025Cu;
|
|
/* 024C9AFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024C9B00 */ _t26 = cpu->r[8] + 0x00000008u;
|
|
/* 024C9B00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024C9B04 */ Gambit_fn_0297FD44(cpu);
|
|
/* 024C9B08 */ cpu->r[3] = 0x00000008u;
|
|
/* 024C9B0C */ Gambit_fn_02801A78(cpu);
|
|
/* 024C9B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024C9B14 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9B14 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024C9B14 */ if (_t28) goto L_024C9B28; else goto L_024C9B18;
|
|
L_024C9B18: ; // 0x24c9b18
|
|
/* 024C9B18 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9B1C */ _t29 = cpu->r[3] + 0x00000004u;
|
|
/* 024C9B1C */ rbrew_write32(cpu->mem, _t29, cpu->r[31]);
|
|
/* 024C9B20 */ cpu->r[0] = cpu->r[0] + 0x00005DE4u;
|
|
/* 024C9B24 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 024C9B24 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_024C9B28: ; // 0x24c9b28
|
|
/* 024C9B28 */ _t31 = cpu->r[31] + 0x0000053Cu;
|
|
/* 024C9B28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C9B2C */ _t32 = cpu->r[31] + 0x00000540u;
|
|
/* 024C9B2C */ rbrew_write32(cpu->mem, _t32, cpu->r[3]);
|
|
/* 024C9B30 */ _t33 = cpu->r[11] + 0x000000A8u;
|
|
/* 024C9B30 */ rbrew_write32(cpu->mem, _t33, cpu->r[3]);
|
|
/* 024C9B34 */ _t34 = cpu->r[1] + 0x0000005Cu;
|
|
/* 024C9B34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024C9B38 */ _t35 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024C9B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C9B3C */ _t36 = cpu->r[1] + 0x00000060u;
|
|
/* 024C9B3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024C9B40 */ cpu->lr = cpu->r[0];
|
|
/* 024C9B44 */ _t37 = cpu->r[1] + 0x00000064u;
|
|
/* 024C9B44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024C9B48 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024C9B4C */ return;
|
|
}
|
|
|
|
// fn_024C9B50 @ 0x24c9b50
|
|
void Gambit_fn_024C9B50(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;
|
|
|
|
L_024C9B50: ; // 0x24c9b50
|
|
/* 024C9B50 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 024C9B50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C9B50 */ cpu->r[1] = _t0;
|
|
/* 024C9B54 */ /* nop */
|
|
/* 024C9B58 */ cpu->r[0] = cpu->lr;
|
|
/* 024C9B5C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 024C9B5C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024C9B60 */ cpu->r[29] = cpu->r[3];
|
|
/* 024C9B64 */ _t2 = cpu->r[29] + 0x000003E0u;
|
|
/* 024C9B64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024C9B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024C9B6C */ cpu->r[28] = 0x00000000u;
|
|
/* 024C9B70 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9B70 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024C9B70 */ if (_t4) goto L_024C9B74; else goto L_024C9BF4;
|
|
L_024C9B74: ; // 0x24c9b74
|
|
/* 024C9B74 */ cpu->r[12] = 0x00000004u;
|
|
/* 024C9B78 */ cpu->r[5] = cpu->r[1] + 0x00000009u;
|
|
/* 024C9B7C */ cpu->r[6] = 0x00000000u;
|
|
/* 024C9B80 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C9B84 */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9B88 */ _t5 = cpu->r[1] + 0x00000009u;
|
|
/* 024C9B88 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 024C9B8C */ Gambit_fn_024CB5C4(cpu);
|
|
/* 024C9B90 */ cpu->r[4] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9B94 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C9B98 */ Gambit_fn_02000834(cpu);
|
|
/* 024C9B9C */ cpu->r[25] = 0x024D0000u;
|
|
/* 024C9BA0 */ cpu->r[26] = 0x100B0000u;
|
|
/* 024C9BA4 */ cpu->r[25] = cpu->r[25] + 0xFFFFB020u;
|
|
/* 024C9BA8 */ cpu->r[26] = cpu->r[26] + 0x000056F8u;
|
|
/* 024C9BAC */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C9BB0 */ cpu->ctr = cpu->r[25];
|
|
/* 024C9BB4 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9BB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 024C9BB8 */ cpu->r[11] = cpu->r[11] + 0x000058ECu;
|
|
/* 024C9BBC */ _t7 = cpu->r[29] + 0x0000051Cu;
|
|
/* 024C9BBC */ cpu->r[24] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024C9BC0 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9BC0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024C9BC4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9BC8 */ _t9 = cpu->r[24] + 0x00000000u;
|
|
/* 024C9BC8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C9BCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9BD0 */ cpu->r[30] = 0x10110000u;
|
|
/* 024C9BD4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C9BD8 */ _t11 = cpu->r[30] + 0x00007399u;
|
|
/* 024C9BD8 */ cpu->r[30] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024C9BDC */ _t12 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9BDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t12);
|
|
/* 024C9BE0 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C9BE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 024C9BE8 */ cpu->r[5] = 0x00080000u;
|
|
/* 024C9BEC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9BEC */ _t14 = _t13 & 0x00000001u;
|
|
/* 024C9BEC */ if (_t14) goto L_024C9BF0; else goto L_024C9C70;
|
|
L_024C9BF0: ; // 0x24c9bf0
|
|
/* 024C9BF0 */ goto L_024C9C94;
|
|
L_024C9BF4: ; // 0x24c9bf4
|
|
/* 024C9BF4 */ cpu->r[0] = 0x00000004u;
|
|
/* 024C9BF8 */ cpu->r[5] = cpu->r[1] + 0x0000000Au;
|
|
/* 024C9BFC */ cpu->r[6] = 0x00000002u;
|
|
/* 024C9C00 */ cpu->r[4] = cpu->r[29];
|
|
/* 024C9C04 */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9C08 */ _t15 = cpu->r[1] + 0x0000000Au;
|
|
/* 024C9C08 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[0]);
|
|
/* 024C9C0C */ Gambit_fn_024CB5C4(cpu);
|
|
/* 024C9C10 */ cpu->r[4] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9C14 */ cpu->r[3] = cpu->r[29];
|
|
/* 024C9C18 */ Gambit_fn_02000834(cpu);
|
|
/* 024C9C1C */ cpu->r[25] = 0x024D0000u;
|
|
/* 024C9C20 */ cpu->r[26] = 0x100B0000u;
|
|
/* 024C9C24 */ cpu->r[25] = cpu->r[25] + 0xFFFFB020u;
|
|
/* 024C9C28 */ cpu->r[26] = cpu->r[26] + 0x000056F8u;
|
|
/* 024C9C2C */ cpu->r[11] = 0x100B0000u;
|
|
/* 024C9C30 */ cpu->ctr = cpu->r[25];
|
|
/* 024C9C34 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9C34 */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 024C9C38 */ cpu->r[11] = cpu->r[11] + 0x000058ECu;
|
|
/* 024C9C3C */ _t17 = cpu->r[29] + 0x0000051Cu;
|
|
/* 024C9C3C */ cpu->r[24] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024C9C40 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9C40 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 024C9C44 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9C48 */ _t19 = cpu->r[24] + 0x00000000u;
|
|
/* 024C9C48 */ cpu->r[27] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024C9C4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9C50 */ cpu->r[30] = 0x10110000u;
|
|
/* 024C9C54 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9C54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024C9C58 */ _t21 = cpu->r[30] + 0x00007399u;
|
|
/* 024C9C58 */ cpu->r[30] = rbrew_read8(cpu->mem, _t21);
|
|
/* 024C9C5C */ _t22 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9C5C */ cpu->r[12] = rbrew_read8(cpu->mem, _t22);
|
|
/* 024C9C60 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C9C64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 024C9C68 */ cpu->r[5] = 0x00080000u;
|
|
/* 024C9C6C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9C6C */ _t24 = _t23 & 0x00000001u;
|
|
/* 024C9C6C */ if (_t24) goto L_024C9BF0; else goto L_024C9C70;
|
|
L_024C9C70: ; // 0x24c9c70
|
|
/* 024C9C70 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C9C74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 024C9C78 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C9C7C */ _t25 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9C7C */ _t26 = _t25 & 0x00000001u;
|
|
/* 024C9C7C */ if (_t26) goto L_024C9C90; else goto L_024C9C80;
|
|
L_024C9C80: ; // 0x24c9c80
|
|
/* 024C9C80 */ _t27 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9C80 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27);
|
|
/* 024C9C84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C9C88 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9C88 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024C9C88 */ if (_t29) goto L_024C9C8C; else goto L_024C9C70;
|
|
L_024C9C8C: ; // 0x24c9c8c
|
|
/* 024C9C8C */ goto L_024C9C94;
|
|
L_024C9C90: ; // 0x24c9c90
|
|
/* 024C9C90 */ cpu->r[31] = 0x00000000u;
|
|
L_024C9C94: ; // 0x24c9c94
|
|
/* 024C9C94 */ _t30 = cpu->r[24] + 0x00000008u;
|
|
/* 024C9C94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024C9C98 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9C98 */ cpu->r[7] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024C9C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]);
|
|
/* 024C9CA0 */ _t32 = cpu->r[7] + 0x00000014u;
|
|
/* 024C9CA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024C9CA4 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C9CA4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024C9CA4 */ if (_t34) goto L_024C9CAC; else goto L_024C9CA8;
|
|
L_024C9CA8: ; // 0x24c9ca8
|
|
/* 024C9CA8 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_024C9CAC: ; // 0x24c9cac
|
|
/* 024C9CAC */ cpu->ctr = cpu->r[8];
|
|
/* 024C9CB0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9CB8 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9CB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024C9CBC */ cpu->r[3] = cpu->r[27];
|
|
/* 024C9CC0 */ cpu->r[5] = cpu->r[31];
|
|
/* 024C9CC4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C9CC8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C9CCC */ _t36 = cpu->r[27] + cpu->r[31];
|
|
/* 024C9CCC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[30]);
|
|
/* 024C9CD0 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C9CD4 */ _t37 = cpu->r[1] + 0x00000024u;
|
|
/* 024C9CD4 */ rbrew_write16(cpu->mem, _t37, (uint16_t)cpu->r[28]);
|
|
/* 024C9CD8 */ cpu->r[9] = 0x024D0000u;
|
|
/* 024C9CDC */ _t38 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9CDC */ rbrew_write16(cpu->mem, _t38, (uint16_t)cpu->r[28]);
|
|
/* 024C9CE0 */ cpu->r[9] = cpu->r[9] + 0xFFFFB438u;
|
|
/* 024C9CE4 */ _t39 = cpu->r[1] + 0x00000028u;
|
|
/* 024C9CE4 */ rbrew_write32(cpu->mem, _t39, cpu->r[28]);
|
|
/* 024C9CE8 */ cpu->r[11] = cpu->r[11] + 0xFFFFAC7Cu;
|
|
/* 024C9CEC */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 024C9CEC */ rbrew_write32(cpu->mem, _t40, cpu->r[9]);
|
|
/* 024C9CF0 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9CF0 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]);
|
|
/* 024C9CF4 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 024C9CF8 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9CF8 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[28]);
|
|
/* 024C9CFC */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9D00 */ _t43 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C9D00 */ rbrew_write16(cpu->mem, _t43, (uint16_t)cpu->r[10]);
|
|
/* 024C9D04 */ cpu->r[9] = 0x00000000u;
|
|
/* 024C9D08 */ _t44 = cpu->r[1] + 0x00000026u;
|
|
/* 024C9D08 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[28]);
|
|
/* 024C9D0C */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024C9D10 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C9D14 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9D14 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[9]);
|
|
/* 024C9D18 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C9D1C */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9D20 */ _t46 = cpu->r[1] + 0x00000016u;
|
|
/* 024C9D20 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[10]);
|
|
/* 024C9D24 */ Gambit_fn_024CB874(cpu);
|
|
/* 024C9D28 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9D2C */ _t47 = cpu->r[29] + 0x00000518u;
|
|
/* 024C9D2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024C9D30 */ cpu->r[0] = cpu->r[0] + 0x00005900u;
|
|
/* 024C9D34 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9D34 */ rbrew_write32(cpu->mem, _t48, cpu->r[26]);
|
|
/* 024C9D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 024C9D3C */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9D3C */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 024C9D40 */ _t50 = cpu->r[29] + 0x0000051Cu;
|
|
/* 024C9D40 */ cpu->r[27] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024C9D44 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9D44 */ _t52 = _t51 & 0x00000001u;
|
|
/* 024C9D44 */ if (_t52) goto L_024C9D48; else goto L_024C9D4C;
|
|
L_024C9D48: ; // 0x24c9d48
|
|
/* 024C9D48 */ cpu->r[27] = cpu->r[27] + 0x00000024u;
|
|
L_024C9D4C: ; // 0x24c9d4c
|
|
/* 024C9D4C */ cpu->ctr = cpu->r[25];
|
|
/* 024C9D50 */ _t53 = cpu->r[27] + 0x00000000u;
|
|
/* 024C9D50 */ cpu->r[24] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024C9D54 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9D58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9D5C */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9D5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024C9D60 */ _t55 = cpu->r[7] + 0x00000000u;
|
|
/* 024C9D60 */ cpu->r[6] = rbrew_read8(cpu->mem, _t55);
|
|
/* 024C9D64 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C9D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 024C9D6C */ cpu->r[8] = 0x00080000u;
|
|
/* 024C9D70 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9D70 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024C9D70 */ if (_t57) goto L_024C9D98; else goto L_024C9D74;
|
|
L_024C9D74: ; // 0x24c9d74
|
|
/* 024C9D74 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C9D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 024C9D7C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 024C9D80 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9D80 */ _t59 = _t58 & 0x00000001u;
|
|
/* 024C9D80 */ if (_t59) goto L_024C9D94; else goto L_024C9D84;
|
|
L_024C9D84: ; // 0x24c9d84
|
|
/* 024C9D84 */ _t60 = cpu->r[7] + 0x00000000u;
|
|
/* 024C9D84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t60);
|
|
/* 024C9D88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C9D8C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9D8C */ _t62 = _t61 & 0x00000001u;
|
|
/* 024C9D8C */ if (_t62) goto L_024C9D90; else goto L_024C9D74;
|
|
L_024C9D90: ; // 0x24c9d90
|
|
/* 024C9D90 */ goto L_024C9D98;
|
|
L_024C9D94: ; // 0x24c9d94
|
|
/* 024C9D94 */ cpu->r[31] = 0x00000000u;
|
|
L_024C9D98: ; // 0x24c9d98
|
|
/* 024C9D98 */ _t63 = cpu->r[27] + 0x00000008u;
|
|
/* 024C9D98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024C9D9C */ _t64 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9D9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024C9DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]);
|
|
/* 024C9DA4 */ _t65 = cpu->r[8] + 0x00000014u;
|
|
/* 024C9DA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t65);
|
|
/* 024C9DA8 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C9DA8 */ _t67 = _t66 & 0x00000001u;
|
|
/* 024C9DA8 */ if (_t67) goto L_024C9DB0; else goto L_024C9DAC;
|
|
L_024C9DAC: ; // 0x24c9dac
|
|
/* 024C9DAC */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_024C9DB0: ; // 0x24c9db0
|
|
/* 024C9DB0 */ cpu->ctr = cpu->r[9];
|
|
/* 024C9DB4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9DB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9DBC */ _t68 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9DBC */ cpu->r[4] = rbrew_read32(cpu->mem, _t68);
|
|
/* 024C9DC0 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C9DC4 */ cpu->r[5] = cpu->r[31];
|
|
/* 024C9DC8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C9DCC */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C9DD0 */ _t69 = cpu->r[24] + cpu->r[31];
|
|
/* 024C9DD0 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[30]);
|
|
/* 024C9DD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024C9DD8 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 024C9DD8 */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
/* 024C9DDC */ cpu->r[10] = 0x024D0000u;
|
|
/* 024C9DE0 */ _t71 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9DE0 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[0]);
|
|
/* 024C9DE4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024C9DE8 */ _t72 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9DE8 */ rbrew_write16(cpu->mem, _t72, (uint16_t)cpu->r[28]);
|
|
/* 024C9DEC */ cpu->r[12] = 0x024D0000u;
|
|
/* 024C9DF0 */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 024C9DF0 */ rbrew_write16(cpu->mem, _t73, (uint16_t)cpu->r[28]);
|
|
/* 024C9DF4 */ _t74 = cpu->r[1] + 0x00000026u;
|
|
/* 024C9DF4 */ rbrew_write16(cpu->mem, _t74, (uint16_t)cpu->r[28]);
|
|
/* 024C9DF8 */ cpu->r[10] = cpu->r[10] + 0xFFFFAD80u;
|
|
/* 024C9DFC */ _t75 = cpu->r[1] + 0x00000016u;
|
|
/* 024C9DFC */ rbrew_write16(cpu->mem, _t75, (uint16_t)cpu->r[0]);
|
|
/* 024C9E00 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C9E04 */ _t76 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9E04 */ rbrew_write32(cpu->mem, _t76, cpu->r[10]);
|
|
/* 024C9E08 */ cpu->r[12] = cpu->r[12] + 0xFFFFAD94u;
|
|
/* 024C9E0C */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9E0C */ rbrew_write16(cpu->mem, _t77, (uint16_t)cpu->r[28]);
|
|
/* 024C9E10 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C9E14 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C9E18 */ _t78 = cpu->r[1] + 0x00000018u;
|
|
/* 024C9E18 */ rbrew_write32(cpu->mem, _t78, cpu->r[12]);
|
|
/* 024C9E1C */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9E20 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9E24 */ _t79 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C9E24 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[0]);
|
|
/* 024C9E28 */ Gambit_fn_024CB874(cpu);
|
|
/* 024C9E2C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024C9E30 */ _t80 = cpu->r[29] + 0x00000518u;
|
|
/* 024C9E30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024C9E34 */ cpu->r[0] = cpu->r[0] + 0x000058DCu;
|
|
/* 024C9E38 */ _t81 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9E38 */ rbrew_write32(cpu->mem, _t81, cpu->r[26]);
|
|
/* 024C9E3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u);
|
|
/* 024C9E40 */ _t82 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9E40 */ rbrew_write32(cpu->mem, _t82, cpu->r[0]);
|
|
/* 024C9E44 */ _t83 = cpu->r[29] + 0x0000051Cu;
|
|
/* 024C9E44 */ cpu->r[27] = rbrew_read32(cpu->mem, _t83);
|
|
/* 024C9E48 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9E48 */ _t85 = _t84 & 0x00000001u;
|
|
/* 024C9E48 */ if (_t85) goto L_024C9E4C; else goto L_024C9E50;
|
|
L_024C9E4C: ; // 0x24c9e4c
|
|
/* 024C9E4C */ cpu->r[27] = cpu->r[27] + 0x00000048u;
|
|
L_024C9E50: ; // 0x24c9e50
|
|
/* 024C9E50 */ cpu->ctr = cpu->r[25];
|
|
/* 024C9E54 */ _t86 = cpu->r[27] + 0x00000000u;
|
|
/* 024C9E54 */ cpu->r[24] = rbrew_read32(cpu->mem, _t86);
|
|
/* 024C9E58 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9E5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9E60 */ _t87 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9E60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024C9E64 */ _t88 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9E64 */ cpu->r[10] = rbrew_read8(cpu->mem, _t88);
|
|
/* 024C9E68 */ cpu->r[31] = 0x00000000u;
|
|
/* 024C9E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 024C9E70 */ cpu->r[0] = 0x00080000u;
|
|
/* 024C9E74 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9E74 */ _t90 = _t89 & 0x00000001u;
|
|
/* 024C9E74 */ if (_t90) goto L_024C9E9C; else goto L_024C9E78;
|
|
L_024C9E78: ; // 0x24c9e78
|
|
/* 024C9E78 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C9E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]);
|
|
/* 024C9E80 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024C9E84 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9E84 */ _t92 = _t91 & 0x00000001u;
|
|
/* 024C9E84 */ if (_t92) goto L_024C9E98; else goto L_024C9E88;
|
|
L_024C9E88: ; // 0x24c9e88
|
|
/* 024C9E88 */ _t93 = cpu->r[11] + 0x00000000u;
|
|
/* 024C9E88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t93);
|
|
/* 024C9E8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 024C9E90 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9E90 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024C9E90 */ if (_t95) goto L_024C9E94; else goto L_024C9E78;
|
|
L_024C9E94: ; // 0x24c9e94
|
|
/* 024C9E94 */ goto L_024C9E9C;
|
|
L_024C9E98: ; // 0x24c9e98
|
|
/* 024C9E98 */ cpu->r[31] = 0x00000000u;
|
|
L_024C9E9C: ; // 0x24c9e9c
|
|
/* 024C9E9C */ _t96 = cpu->r[27] + 0x00000008u;
|
|
/* 024C9E9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024C9EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 024C9EA4 */ _t97 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9EA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t97);
|
|
/* 024C9EA8 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C9EA8 */ _t99 = _t98 & 0x00000001u;
|
|
/* 024C9EA8 */ if (_t99) goto L_024C9EB0; else goto L_024C9EAC;
|
|
L_024C9EAC: ; // 0x24c9eac
|
|
/* 024C9EAC */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_024C9EB0: ; // 0x24c9eb0
|
|
/* 024C9EB0 */ _t100 = cpu->r[5] + 0x00000014u;
|
|
/* 024C9EB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t100);
|
|
/* 024C9EB4 */ cpu->ctr = cpu->r[6];
|
|
/* 024C9EB8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9EBC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9EC0 */ _t101 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9EC0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t101);
|
|
/* 024C9EC4 */ cpu->r[3] = cpu->r[24];
|
|
/* 024C9EC8 */ cpu->r[5] = cpu->r[31];
|
|
/* 024C9ECC */ cpu->r[6] = 0x00000000u;
|
|
/* 024C9ED0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C9ED4 */ _t102 = cpu->r[24] + cpu->r[31];
|
|
/* 024C9ED4 */ rbrew_write8(cpu->mem, _t102, (uint8_t)cpu->r[30]);
|
|
/* 024C9ED8 */ cpu->r[0] = 0x00000002u;
|
|
/* 024C9EDC */ _t103 = cpu->r[1] + 0x00000028u;
|
|
/* 024C9EDC */ rbrew_write32(cpu->mem, _t103, cpu->r[28]);
|
|
/* 024C9EE0 */ cpu->r[9] = 0x024D0000u;
|
|
/* 024C9EE4 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9EE4 */ rbrew_write8(cpu->mem, _t104, (uint8_t)cpu->r[0]);
|
|
/* 024C9EE8 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 024C9EEC */ _t105 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9EEC */ rbrew_write16(cpu->mem, _t105, (uint16_t)cpu->r[28]);
|
|
/* 024C9EF0 */ _t106 = cpu->r[1] + 0x00000016u;
|
|
/* 024C9EF0 */ rbrew_write16(cpu->mem, _t106, (uint16_t)cpu->r[6]);
|
|
/* 024C9EF4 */ cpu->r[9] = cpu->r[9] + 0xFFFFADD8u;
|
|
/* 024C9EF8 */ _t107 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9EF8 */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[28]);
|
|
/* 024C9EFC */ cpu->r[12] = 0x024D0000u;
|
|
/* 024C9F00 */ _t108 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024C9F00 */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[6]);
|
|
/* 024C9F04 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024C9F08 */ _t109 = cpu->r[1] + 0x00000026u;
|
|
/* 024C9F08 */ rbrew_write16(cpu->mem, _t109, (uint16_t)cpu->r[28]);
|
|
/* 024C9F0C */ cpu->r[12] = cpu->r[12] + 0xFFFFAE84u;
|
|
/* 024C9F10 */ _t110 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9F10 */ rbrew_write32(cpu->mem, _t110, cpu->r[9]);
|
|
/* 024C9F14 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024C9F18 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9F1C */ _t111 = cpu->r[1] + 0x00000018u;
|
|
/* 024C9F1C */ rbrew_write32(cpu->mem, _t111, cpu->r[12]);
|
|
/* 024C9F20 */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024C9F24 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024C9F28 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 024C9F28 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[28]);
|
|
/* 024C9F2C */ Gambit_fn_024CB874(cpu);
|
|
/* 024C9F30 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024C9F34 */ _t113 = cpu->r[29] + 0x00000518u;
|
|
/* 024C9F34 */ cpu->r[7] = rbrew_read32(cpu->mem, _t113);
|
|
/* 024C9F38 */ cpu->r[6] = cpu->r[6] + 0x00005910u;
|
|
/* 024C9F3C */ _t114 = cpu->r[29] + 0x0000051Cu;
|
|
/* 024C9F3C */ cpu->r[27] = rbrew_read32(cpu->mem, _t114);
|
|
/* 024C9F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], 0x00000003u);
|
|
/* 024C9F44 */ _t115 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9F44 */ rbrew_write32(cpu->mem, _t115, cpu->r[6]);
|
|
/* 024C9F48 */ _t116 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9F48 */ rbrew_write32(cpu->mem, _t116, cpu->r[26]);
|
|
/* 024C9F4C */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9F4C */ _t118 = _t117 & 0x00000001u;
|
|
/* 024C9F4C */ if (_t118) goto L_024C9F50; else goto L_024C9F54;
|
|
L_024C9F50: ; // 0x24c9f50
|
|
/* 024C9F50 */ cpu->r[27] = cpu->r[27] + 0x0000006Cu;
|
|
L_024C9F54: ; // 0x24c9f54
|
|
/* 024C9F54 */ cpu->ctr = cpu->r[25];
|
|
/* 024C9F58 */ _t119 = cpu->r[27] + 0x00000000u;
|
|
/* 024C9F58 */ cpu->r[26] = rbrew_read32(cpu->mem, _t119);
|
|
/* 024C9F5C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9F60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9F64 */ _t120 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9F64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t120);
|
|
/* 024C9F68 */ _t121 = cpu->r[7] + 0x00000000u;
|
|
/* 024C9F68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t121);
|
|
/* 024C9F6C */ cpu->r[31] = 0x00000000u;
|
|
/* 024C9F70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C9F74 */ cpu->r[9] = 0x00080000u;
|
|
/* 024C9F78 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9F78 */ _t123 = _t122 & 0x00000001u;
|
|
/* 024C9F78 */ if (_t123) goto L_024C9FA0; else goto L_024C9F7C;
|
|
L_024C9F7C: ; // 0x24c9f7c
|
|
/* 024C9F7C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 024C9F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]);
|
|
/* 024C9F84 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 024C9F88 */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024C9F88 */ _t125 = _t124 & 0x00000001u;
|
|
/* 024C9F88 */ if (_t125) goto L_024C9F9C; else goto L_024C9F8C;
|
|
L_024C9F8C: ; // 0x24c9f8c
|
|
/* 024C9F8C */ _t126 = cpu->r[7] + 0x00000000u;
|
|
/* 024C9F8C */ cpu->r[0] = rbrew_read8(cpu->mem, _t126);
|
|
/* 024C9F90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 024C9F94 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024C9F94 */ _t128 = _t127 & 0x00000001u;
|
|
/* 024C9F94 */ if (_t128) goto L_024C9F98; else goto L_024C9F7C;
|
|
L_024C9F98: ; // 0x24c9f98
|
|
/* 024C9F98 */ goto L_024C9FA0;
|
|
L_024C9F9C: ; // 0x24c9f9c
|
|
/* 024C9F9C */ cpu->r[31] = 0x00000000u;
|
|
L_024C9FA0: ; // 0x24c9fa0
|
|
/* 024C9FA0 */ _t129 = cpu->r[27] + 0x00000008u;
|
|
/* 024C9FA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t129);
|
|
/* 024C9FA4 */ _t130 = cpu->r[1] + 0x00000010u;
|
|
/* 024C9FA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t130);
|
|
/* 024C9FA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 024C9FAC */ _t131 = cpu->r[5] + 0x00000014u;
|
|
/* 024C9FAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t131);
|
|
/* 024C9FB0 */ _t132 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024C9FB0 */ _t133 = _t132 & 0x00000001u;
|
|
/* 024C9FB0 */ if (_t133) goto L_024C9FB8; else goto L_024C9FB4;
|
|
L_024C9FB4: ; // 0x24c9fb4
|
|
/* 024C9FB4 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_024C9FB8: ; // 0x24c9fb8
|
|
/* 024C9FB8 */ cpu->ctr = cpu->r[7];
|
|
/* 024C9FBC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9FC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C9FC4 */ _t134 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C9FC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t134);
|
|
/* 024C9FC8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024C9FCC */ cpu->r[5] = cpu->r[31];
|
|
/* 024C9FD0 */ cpu->r[3] = cpu->r[26];
|
|
/* 024C9FD4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 024C9FD8 */ _t135 = cpu->r[26] + cpu->r[31];
|
|
/* 024C9FD8 */ rbrew_write8(cpu->mem, _t135, (uint8_t)cpu->r[30]);
|
|
/* 024C9FDC */ cpu->r[0] = 0x00000003u;
|
|
/* 024C9FE0 */ _t136 = cpu->r[1] + 0x00000014u;
|
|
/* 024C9FE0 */ rbrew_write16(cpu->mem, _t136, (uint16_t)cpu->r[28]);
|
|
/* 024C9FE4 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024C9FE8 */ _t137 = cpu->r[1] + 0x00000026u;
|
|
/* 024C9FE8 */ rbrew_write16(cpu->mem, _t137, (uint16_t)cpu->r[28]);
|
|
/* 024C9FEC */ cpu->r[11] = cpu->r[11] + 0xFFFFAEC4u;
|
|
/* 024C9FF0 */ _t138 = cpu->r[1] + 0x00000008u;
|
|
/* 024C9FF0 */ rbrew_write8(cpu->mem, _t138, (uint8_t)cpu->r[0]);
|
|
/* 024C9FF4 */ cpu->r[0] = 0x024D0000u;
|
|
/* 024C9FF8 */ _t139 = cpu->r[1] + 0x00000020u;
|
|
/* 024C9FF8 */ rbrew_write32(cpu->mem, _t139, cpu->r[11]);
|
|
/* 024C9FFC */ _t140 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024C9FFC */ rbrew_write16(cpu->mem, _t140, (uint16_t)cpu->r[28]);
|
|
/* 024CA000 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 024CA004 */ _t141 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA004 */ rbrew_write16(cpu->mem, _t141, (uint16_t)cpu->r[28]);
|
|
/* 024CA008 */ cpu->r[0] = cpu->r[0] + 0xFFFFB43Cu;
|
|
/* 024CA00C */ _t142 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024CA00C */ rbrew_write16(cpu->mem, _t142, (uint16_t)cpu->r[9]);
|
|
/* 024CA010 */ cpu->r[3] = cpu->r[29] + 0x00000504u;
|
|
/* 024CA014 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024CA018 */ _t143 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA018 */ rbrew_write32(cpu->mem, _t143, cpu->r[0]);
|
|
/* 024CA01C */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CA020 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024CA024 */ _t144 = cpu->r[1] + 0x00000028u;
|
|
/* 024CA024 */ rbrew_write32(cpu->mem, _t144, cpu->r[28]);
|
|
/* 024CA028 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA02C */ _t145 = cpu->r[1] + 0x00000016u;
|
|
/* 024CA02C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[9]);
|
|
/* 024CA030 */ Gambit_fn_024CB874(cpu);
|
|
/* 024CA034 */ cpu->r[3] = cpu->r[29];
|
|
/* 024CA038 */ Gambit_fn_024C728C(cpu);
|
|
/* 024CA03C */ _t146 = cpu->r[29] + 0x000003E0u;
|
|
/* 024CA03C */ cpu->r[8] = rbrew_read32(cpu->mem, _t146);
|
|
/* 024CA040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024CA044 */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA044 */ _t148 = _t147 & 0x00000001u;
|
|
/* 024CA044 */ if (_t148) goto L_024CA048; else goto L_024CA070;
|
|
L_024CA048: ; // 0x24ca048
|
|
/* 024CA048 */ cpu->r[3] = cpu->r[29];
|
|
/* 024CA04C */ Gambit_fn_024C9A20(cpu);
|
|
/* 024CA050 */ cpu->r[3] = cpu->r[29];
|
|
/* 024CA054 */ Gambit_fn_024F6654(cpu);
|
|
/* 024CA058 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CA05C */ _t149 = cpu->r[29] + 0x0000053Cu;
|
|
/* 024CA05C */ cpu->r[5] = rbrew_read32(cpu->mem, _t149);
|
|
/* 024CA060 */ cpu->r[3] = cpu->r[29];
|
|
/* 024CA064 */ cpu->r[4] = cpu->r[4] + 0x000058D4u;
|
|
/* 024CA068 */ cpu->r[6] = 0x00000000u;
|
|
/* 024CA06C */ Gambit_fn_024F6694(cpu);
|
|
L_024CA070: ; // 0x24ca070
|
|
/* 024CA070 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CA074 */ cpu->r[4] = 0x00000001u;
|
|
/* 024CA078 */ cpu->r[5] = cpu->r[3];
|
|
/* 024CA07C */ Gambit_fn_02398200(cpu);
|
|
/* 024CA080 */ _t150 = cpu->r[29] + 0x00000008u;
|
|
/* 024CA080 */ cpu->r[12] = rbrew_read32(cpu->mem, _t150);
|
|
/* 024CA084 */ _t151 = cpu->r[29] + 0x00000544u;
|
|
/* 024CA084 */ rbrew_write32(cpu->mem, _t151, cpu->r[3]);
|
|
/* 024CA088 */ _t152 = cpu->r[3] + 0x00000014u;
|
|
/* 024CA088 */ rbrew_write32(cpu->mem, _t152, cpu->r[12]);
|
|
/* 024CA08C */ _t153 = cpu->r[29] + 0x00000544u;
|
|
/* 024CA08C */ cpu->r[3] = rbrew_read32(cpu->mem, _t153);
|
|
/* 024CA090 */ cpu->r[4] = 0x00000002u;
|
|
/* 024CA094 */ Gambit_fn_023982F0(cpu);
|
|
/* 024CA098 */ _t154 = cpu->r[29] + 0x00000544u;
|
|
/* 024CA098 */ cpu->r[3] = rbrew_read32(cpu->mem, _t154);
|
|
/* 024CA09C */ cpu->r[4] = 0x00000003u;
|
|
/* 024CA0A0 */ Gambit_fn_02398484(cpu);
|
|
/* 024CA0A4 */ /* nop */
|
|
/* 024CA0A8 */ _t155 = cpu->r[1] + 0x00000054u;
|
|
/* 024CA0A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 024CA0AC */ cpu->lr = cpu->r[0];
|
|
/* 024CA0B0 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 024CA0B4 */ return;
|
|
}
|
|
|
|
// fn_024CA0B8 @ 0x24ca0b8
|
|
void Gambit_fn_024CA0B8(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_024CA0B8: ; // 0x24ca0b8
|
|
/* 024CA0B8 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA0BC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024CA0BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA0BC */ cpu->r[1] = _t0;
|
|
/* 024CA0C0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA0C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024CA0C4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA0C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CA0C8 */ /* nop */
|
|
/* 024CA0CC */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA0CC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024CA0D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA0D4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA0D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024CA0D8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA0D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CA0DC */ Gambit_fn_024C6810(cpu);
|
|
/* 024CA0E0 */ _t6 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA0E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CA0E8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA0E8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CA0E8 */ if (_t8) goto L_024CA164; else goto L_024CA0EC;
|
|
L_024CA0EC: ; // 0x24ca0ec
|
|
/* 024CA0EC */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA0F0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CA0F4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CA0F8 */ _t9 = cpu->r[12] + 0x000004B4u;
|
|
/* 024CA0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CA0F8 */ cpu->r[12] = _t9;
|
|
/* 024CA0FC */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CA100 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CA108 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CA10C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA10C */ _t11 = _t10 & 0x00000001u;
|
|
/* 024CA10C */ if (_t11) goto L_024CA110; else goto L_024CA124;
|
|
L_024CA110: ; // 0x24ca110
|
|
/* 024CA110 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA114 */ cpu->r[11] = 0x00000001u;
|
|
/* 024CA118 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CA11C */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 024CA11C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 024CA120 */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 024CA120 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_024CA124: ; // 0x24ca124
|
|
/* 024CA124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA128 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA128 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024CA128 */ if (_t15) goto L_024CA148; else goto L_024CA12C;
|
|
L_024CA12C: ; // 0x24ca12c
|
|
/* 024CA12C */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 024CA12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CA130 */ _t17 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CA130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CA134 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA138 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA13C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA144 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA144 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024CA144 */ if (_t19) goto L_024CA148; else goto L_024CA14C;
|
|
L_024CA148: ; // 0x24ca148
|
|
/* 024CA148 */ cpu->r[31] = 0x00000000u;
|
|
L_024CA14C: ; // 0x24ca14c
|
|
/* 024CA14C */ _t20 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA14C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CA150 */ _t21 = cpu->r[31] + 0x000001DCu;
|
|
/* 024CA150 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024CA154 */ Gambit_fn_024F1978(cpu);
|
|
/* 024CA158 */ _t22 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CA15C */ cpu->r[0] = 0x00000004u;
|
|
/* 024CA160 */ _t23 = cpu->r[9] + 0x00000024u;
|
|
/* 024CA160 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_024CA164: ; // 0x24ca164
|
|
/* 024CA164 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CA168 */ cpu->r[5] = 0x00000001u;
|
|
/* 024CA16C */ _t24 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA16C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024CA170 */ cpu->r[4] = cpu->r[4] + 0x00005920u;
|
|
/* 024CA174 */ Gambit_fn_02398850(cpu);
|
|
/* 024CA178 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024CA17C */ _t25 = cpu->r[11] + 0x0000591Cu;
|
|
/* 024CA17C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024CA180 */ _t26 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024CA184 */ cpu->f[1] = cpu->f[31];
|
|
/* 024CA188 */ Gambit_fn_023988E0(cpu);
|
|
/* 024CA18C */ _t27 = cpu->r[30] + 0x000003E0u;
|
|
/* 024CA18C */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CA190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000000u);
|
|
/* 024CA194 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA194 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024CA194 */ if (_t29) goto L_024CA1B4; else goto L_024CA198;
|
|
L_024CA198: ; // 0x24ca198
|
|
/* 024CA198 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 024CA19C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA19C */ _t31 = _t30 & 0x00000001u;
|
|
/* 024CA19C */ if (_t31) goto L_024CA1B4; else goto L_024CA1A0;
|
|
L_024CA1A0: ; // 0x24ca1a0
|
|
/* 024CA1A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 024CA1A4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA1A4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024CA1A4 */ if (_t33) goto L_024CA1C4; else goto L_024CA1A8;
|
|
L_024CA1A8: ; // 0x24ca1a8
|
|
/* 024CA1A8 */ cpu->r[10] = 0x00000000u;
|
|
/* 024CA1AC */ _t34 = cpu->r[30] + 0x00000584u;
|
|
/* 024CA1AC */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 024CA1B0 */ goto L_024CA1DC;
|
|
L_024CA1B4: ; // 0x24ca1b4
|
|
/* 024CA1B4 */ cpu->f[1] = cpu->f[31];
|
|
/* 024CA1B8 */ _t35 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA1B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024CA1BC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024CA1C0 */ goto L_024CA1D4;
|
|
L_024CA1C4: ; // 0x24ca1c4
|
|
/* 024CA1C4 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024CA1C8 */ _t36 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA1C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024CA1CC */ _t37 = cpu->r[9] + 0x000058B8u;
|
|
/* 024CA1CC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024CA1D0 */ Gambit_fn_02398CF8(cpu);
|
|
L_024CA1D4: ; // 0x24ca1d4
|
|
/* 024CA1D4 */ cpu->r[10] = 0x00000000u;
|
|
/* 024CA1D8 */ _t38 = cpu->r[30] + 0x00000584u;
|
|
/* 024CA1D8 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
L_024CA1DC: ; // 0x24ca1dc
|
|
/* 024CA1DC */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA1DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 024CA1E0 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA1E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024CA1E4 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA1E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 024CA1E8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA1E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024CA1EC */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CA1EC */ _t44 = _t43 & 0x00000001u;
|
|
/* 024CA1EC */ if (_t44) goto L_024CA1F0; // else: addr-0 trap, fall-through
|
|
L_024CA1F0: ; // 0x24ca1f0
|
|
/* 024CA1F0 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA1F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024CA1F4 */ cpu->lr = cpu->r[0];
|
|
/* 024CA1F8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024CA1FC */ return;
|
|
}
|
|
|
|
// fn_024CA0BC @ 0x24ca0bc
|
|
void Gambit_fn_024CA0BC(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_024CA0BC: ; // 0x24ca0bc
|
|
/* 024CA0BC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024CA0BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA0BC */ cpu->r[1] = _t0;
|
|
/* 024CA0C0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA0C0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 024CA0C4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA0C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CA0C8 */ /* nop */
|
|
/* 024CA0CC */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA0CC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024CA0D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA0D4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA0D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024CA0D8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA0D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CA0DC */ Gambit_fn_024C6810(cpu);
|
|
/* 024CA0E0 */ _t6 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA0E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CA0E8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA0E8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CA0E8 */ if (_t8) goto L_024CA164; else goto L_024CA0EC;
|
|
L_024CA0EC: ; // 0x24ca0ec
|
|
/* 024CA0EC */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA0F0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CA0F4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CA0F8 */ _t9 = cpu->r[12] + 0x000004B4u;
|
|
/* 024CA0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CA0F8 */ cpu->r[12] = _t9;
|
|
/* 024CA0FC */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CA100 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CA108 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CA10C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA10C */ _t11 = _t10 & 0x00000001u;
|
|
/* 024CA10C */ if (_t11) goto L_024CA110; else goto L_024CA124;
|
|
L_024CA110: ; // 0x24ca110
|
|
/* 024CA110 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA114 */ cpu->r[11] = 0x00000001u;
|
|
/* 024CA118 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CA11C */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 024CA11C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 024CA120 */ _t13 = cpu->r[4] + 0x00000000u;
|
|
/* 024CA120 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_024CA124: ; // 0x24ca124
|
|
/* 024CA124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA128 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA128 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024CA128 */ if (_t15) goto L_024CA148; else goto L_024CA12C;
|
|
L_024CA12C: ; // 0x24ca12c
|
|
/* 024CA12C */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 024CA12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CA130 */ _t17 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CA130 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CA134 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA138 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA13C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA144 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA144 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024CA144 */ if (_t19) goto L_024CA148; else goto L_024CA14C;
|
|
L_024CA148: ; // 0x24ca148
|
|
/* 024CA148 */ cpu->r[31] = 0x00000000u;
|
|
L_024CA14C: ; // 0x24ca14c
|
|
/* 024CA14C */ _t20 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA14C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CA150 */ _t21 = cpu->r[31] + 0x000001DCu;
|
|
/* 024CA150 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024CA154 */ Gambit_fn_024F1978(cpu);
|
|
/* 024CA158 */ _t22 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CA158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CA15C */ cpu->r[0] = 0x00000004u;
|
|
/* 024CA160 */ _t23 = cpu->r[9] + 0x00000024u;
|
|
/* 024CA160 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
L_024CA164: ; // 0x24ca164
|
|
/* 024CA164 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CA168 */ cpu->r[5] = 0x00000001u;
|
|
/* 024CA16C */ _t24 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA16C */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024CA170 */ cpu->r[4] = cpu->r[4] + 0x00005920u;
|
|
/* 024CA174 */ Gambit_fn_02398850(cpu);
|
|
/* 024CA178 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024CA17C */ _t25 = cpu->r[11] + 0x0000591Cu;
|
|
/* 024CA17C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024CA180 */ _t26 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024CA184 */ cpu->f[1] = cpu->f[31];
|
|
/* 024CA188 */ Gambit_fn_023988E0(cpu);
|
|
/* 024CA18C */ _t27 = cpu->r[30] + 0x000003E0u;
|
|
/* 024CA18C */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CA190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000000u);
|
|
/* 024CA194 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA194 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024CA194 */ if (_t29) goto L_024CA1B4; else goto L_024CA198;
|
|
L_024CA198: ; // 0x24ca198
|
|
/* 024CA198 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 024CA19C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA19C */ _t31 = _t30 & 0x00000001u;
|
|
/* 024CA19C */ if (_t31) goto L_024CA1B4; else goto L_024CA1A0;
|
|
L_024CA1A0: ; // 0x24ca1a0
|
|
/* 024CA1A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000003u);
|
|
/* 024CA1A4 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA1A4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024CA1A4 */ if (_t33) goto L_024CA1C4; else goto L_024CA1A8;
|
|
L_024CA1A8: ; // 0x24ca1a8
|
|
/* 024CA1A8 */ cpu->r[10] = 0x00000000u;
|
|
/* 024CA1AC */ _t34 = cpu->r[30] + 0x00000584u;
|
|
/* 024CA1AC */ rbrew_write32(cpu->mem, _t34, cpu->r[10]);
|
|
/* 024CA1B0 */ goto L_024CA1DC;
|
|
L_024CA1B4: ; // 0x24ca1b4
|
|
/* 024CA1B4 */ cpu->f[1] = cpu->f[31];
|
|
/* 024CA1B8 */ _t35 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA1B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024CA1BC */ Gambit_fn_02398CF8(cpu);
|
|
/* 024CA1C0 */ goto L_024CA1D4;
|
|
L_024CA1C4: ; // 0x24ca1c4
|
|
/* 024CA1C4 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024CA1C8 */ _t36 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA1C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024CA1CC */ _t37 = cpu->r[9] + 0x000058B8u;
|
|
/* 024CA1CC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024CA1D0 */ Gambit_fn_02398CF8(cpu);
|
|
L_024CA1D4: ; // 0x24ca1d4
|
|
/* 024CA1D4 */ cpu->r[10] = 0x00000000u;
|
|
/* 024CA1D8 */ _t38 = cpu->r[30] + 0x00000584u;
|
|
/* 024CA1D8 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]);
|
|
L_024CA1DC: ; // 0x24ca1dc
|
|
/* 024CA1DC */ _t39 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA1DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t39);
|
|
/* 024CA1E0 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA1E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024CA1E4 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA1E4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t41);
|
|
/* 024CA1E8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA1E8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024CA1EC */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CA1EC */ _t44 = _t43 & 0x00000001u;
|
|
/* 024CA1EC */ if (_t44) goto L_024CA1F0; // else: addr-0 trap, fall-through
|
|
L_024CA1F0: ; // 0x24ca1f0
|
|
/* 024CA1F0 */ _t45 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA1F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024CA1F4 */ cpu->lr = cpu->r[0];
|
|
/* 024CA1F8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024CA1FC */ return;
|
|
}
|
|
|
|
// fn_024CA200 @ 0x24ca200
|
|
void Gambit_fn_024CA200(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;
|
|
|
|
L_024CA200: ; // 0x24ca200
|
|
/* 024CA200 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024CA200 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA200 */ cpu->r[1] = _t0;
|
|
/* 024CA204 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA208 */ /* nop */
|
|
/* 024CA20C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CA20C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024CA210 */ cpu->r[29] = cpu->r[3];
|
|
/* 024CA214 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA218 */ cpu->r[30] = 0x00000000u;
|
|
/* 024CA21C */ Gambit_fn_02019890(cpu);
|
|
/* 024CA220 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA220 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CA224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024CA228 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA228 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024CA228 */ if (_t4) goto L_024CA22C; else goto L_024CA2FC;
|
|
L_024CA22C: ; // 0x24ca22c
|
|
/* 024CA22C */ cpu->r[25] = 0x101D0000u;
|
|
/* 024CA230 */ cpu->r[28] = 0x101C0000u;
|
|
/* 024CA234 */ _t5 = cpu->r[25] + 0x000006C0u;
|
|
/* 024CA234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CA234 */ cpu->r[25] = _t5;
|
|
/* 024CA238 */ cpu->r[27] = 0x100B0000u;
|
|
/* 024CA23C */ _t6 = cpu->r[28] + 0x00006000u;
|
|
/* 024CA23C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA23C */ cpu->r[28] = _t6;
|
|
/* 024CA240 */ cpu->r[26] = 0x101D0000u;
|
|
/* 024CA244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CA248 */ cpu->r[27] = cpu->r[27] + 0x000057E8u;
|
|
/* 024CA24C */ _t7 = cpu->r[12] + 0x000002A4u;
|
|
/* 024CA24C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CA250 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA250 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA250 */ if (_t9) goto L_024CA254; else goto L_024CA260;
|
|
L_024CA254: ; // 0x24ca254
|
|
/* 024CA254 */ _t10 = cpu->r[26] + 0x000006BCu;
|
|
/* 024CA254 */ rbrew_write32(cpu->mem, _t10, cpu->r[27]);
|
|
/* 024CA258 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CA25C */ _t11 = cpu->r[25] + 0x00000000u;
|
|
/* 024CA25C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024CA260: ; // 0x24ca260
|
|
/* 024CA260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA264 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA264 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CA264 */ if (_t13) goto L_024CA288; else goto L_024CA268;
|
|
L_024CA268: ; // 0x24ca268
|
|
/* 024CA268 */ _t14 = cpu->r[31] + 0x00000004u;
|
|
/* 024CA268 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CA26C */ _t15 = cpu->r[8] + 0x00000014u;
|
|
/* 024CA26C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CA270 */ cpu->ctr = cpu->r[9];
|
|
/* 024CA274 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA278 */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024CA27C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA284 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA284 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024CA284 */ if (_t17) goto L_024CA288; else goto L_024CA28C;
|
|
L_024CA288: ; // 0x24ca288
|
|
/* 024CA288 */ cpu->r[31] = 0x00000000u;
|
|
L_024CA28C: ; // 0x24ca28c
|
|
/* 024CA28C */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA290 */ Gambit_fn_026CC7B0(cpu);
|
|
/* 024CA294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA298 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA298 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024CA298 */ if (_t19) goto L_024CA29C; else goto L_024CA2F8;
|
|
L_024CA29C: ; // 0x24ca29c
|
|
/* 024CA29C */ _t20 = cpu->r[25] + 0x00000000u;
|
|
/* 024CA29C */ cpu->r[10] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CA2A0 */ _t21 = cpu->r[28] + 0x00000000u;
|
|
/* 024CA2A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CA2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024CA2A8 */ _t22 = cpu->r[9] + 0x000002A4u;
|
|
/* 024CA2A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CA2AC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA2AC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024CA2AC */ if (_t24) goto L_024CA2B0; else goto L_024CA2BC;
|
|
L_024CA2B0: ; // 0x24ca2b0
|
|
/* 024CA2B0 */ _t25 = cpu->r[26] + 0x000006BCu;
|
|
/* 024CA2B0 */ rbrew_write32(cpu->mem, _t25, cpu->r[27]);
|
|
/* 024CA2B4 */ cpu->r[11] = 0x00000001u;
|
|
/* 024CA2B8 */ _t26 = cpu->r[25] + 0x00000000u;
|
|
/* 024CA2B8 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
L_024CA2BC: ; // 0x24ca2bc
|
|
/* 024CA2BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA2C0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA2C0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024CA2C0 */ if (_t28) goto L_024CA2E4; else goto L_024CA2C4;
|
|
L_024CA2C4: ; // 0x24ca2c4
|
|
/* 024CA2C4 */ _t29 = cpu->r[31] + 0x00000004u;
|
|
/* 024CA2C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024CA2C8 */ _t30 = cpu->r[12] + 0x00000014u;
|
|
/* 024CA2C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024CA2CC */ cpu->ctr = cpu->r[0];
|
|
/* 024CA2D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA2D4 */ cpu->r[4] = cpu->r[26] + 0x000006BCu;
|
|
/* 024CA2D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA2E0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA2E0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024CA2E0 */ if (_t32) goto L_024CA2E4; else goto L_024CA2E8;
|
|
L_024CA2E4: ; // 0x24ca2e4
|
|
/* 024CA2E4 */ cpu->r[31] = 0x00000000u;
|
|
L_024CA2E8: ; // 0x24ca2e8
|
|
/* 024CA2E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA2EC */ Gambit_fn_026CC824(cpu);
|
|
/* 024CA2F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA2F4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA2F4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024CA2F4 */ if (_t34) goto L_024CA2FC; else goto L_024CA2F8;
|
|
L_024CA2F8: ; // 0x24ca2f8
|
|
/* 024CA2F8 */ cpu->r[30] = 0x00000001u;
|
|
L_024CA2FC: ; // 0x24ca2fc
|
|
/* 024CA2FC */ _t35 = cpu->r[29] + 0x00000510u;
|
|
/* 024CA2FC */ cpu->r[8] = rbrew_read8(cpu->mem, _t35);
|
|
/* 024CA300 */ /* nop */
|
|
/* 024CA304 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000002u);
|
|
/* 024CA308 */ cpu->r[30] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024CA30C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA30C */ _t37 = _t36 & 0x00000001u;
|
|
/* 024CA30C */ if (_t37) goto L_024CA310; else goto L_024CA358;
|
|
L_024CA310: ; // 0x24ca310
|
|
/* 024CA310 */ _t38 = cpu->r[29] + 0x00000588u;
|
|
/* 024CA310 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024CA314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024CA318 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA318 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024CA318 */ if (_t40) goto L_024CA32C; else goto L_024CA31C;
|
|
L_024CA31C: ; // 0x24ca31c
|
|
/* 024CA31C */ _t41 = cpu->r[8] + 0x0000000Cu;
|
|
/* 024CA31C */ cpu->r[9] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024CA320 */ _t42 = cpu->r[29] + 0x0000058Cu;
|
|
/* 024CA320 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024CA324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 024CA328 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA328 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024CA328 */ if (_t44) goto L_024CA358; else goto L_024CA32C;
|
|
L_024CA32C: ; // 0x24ca32c
|
|
/* 024CA32C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA330 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA330 */ _t46 = _t45 & 0x00000001u;
|
|
/* 024CA330 */ if (_t46) goto L_024CA334; else goto L_024CA358;
|
|
L_024CA334: ; // 0x24ca334
|
|
/* 024CA334 */ _t47 = cpu->r[29] + 0x00000030u;
|
|
/* 024CA334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024CA338 */ _t48 = cpu->r[3] + 0x000000E0u;
|
|
/* 024CA338 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024CA33C */ _t49 = cpu->r[11] + 0x0000003Cu;
|
|
/* 024CA33C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024CA340 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA344 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA348 */ cpu->r[5] = cpu->r[5] + 0x00005928u;
|
|
/* 024CA34C */ cpu->r[4] = cpu->r[29] + 0x00000588u;
|
|
/* 024CA350 */ cpu->r[6] = 0x00000000u;
|
|
/* 024CA354 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024CA358: ; // 0x24ca358
|
|
/* 024CA358 */ cpu->r[3] = cpu->r[29];
|
|
/* 024CA35C */ Gambit_fn_024C69EC(cpu);
|
|
/* 024CA360 */ /* nop */
|
|
/* 024CA364 */ _t50 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CA364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024CA368 */ cpu->lr = cpu->r[0];
|
|
/* 024CA36C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024CA370 */ return;
|
|
}
|
|
|
|
// fn_024CA374 @ 0x24ca374
|
|
void Gambit_fn_024CA374(CPUState* cpu) {
|
|
L_024C7290: ; // 0x24c7290
|
|
/* 024C7290 */ return;
|
|
L_024CA374: ; // 0x24ca374
|
|
/* 024CA374 */ goto L_024C7290;
|
|
}
|
|
|
|
// fn_024CA378 @ 0x24ca378
|
|
void Gambit_fn_024CA378(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;
|
|
|
|
L_024CA378: ; // 0x24ca378
|
|
/* 024CA378 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA37C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 024CA37C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA37C */ cpu->r[1] = _t0;
|
|
/* 024CA380 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA380 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CA384 */ _t2 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA384 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CA388 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA38C */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA38C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CA390 */ _t4 = cpu->r[30] + 0x00000510u;
|
|
/* 024CA390 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024CA394 */ /* nop */
|
|
/* 024CA398 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA398 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CA398 */ if (_t6) goto L_024CA3BC; else goto L_024CA39C;
|
|
L_024CA39C: ; // 0x24ca39c
|
|
/* 024CA39C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024CA3A0 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CA3A0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CA3A0 */ if (_t8) goto L_024CA3A4; else goto L_024CA4C0;
|
|
L_024CA3A4: ; // 0x24ca3a4
|
|
/* 024CA3A4 */ _t9 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA3A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CA3A8 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA3A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA3AC */ cpu->lr = cpu->r[0];
|
|
/* 024CA3B0 */ _t11 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA3B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA3B4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA3B8 */ return;
|
|
L_024CA3BC: ; // 0x24ca3bc
|
|
/* 024CA3BC */ _t12 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA3BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024CA3C0 */ _t13 = cpu->r[30] + 0x00000064u;
|
|
/* 024CA3C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024CA3C4 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA3C4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 024CA3C8 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 024CA3C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CA3CC */ _t16 = cpu->r[30] + 0x00000070u;
|
|
/* 024CA3CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024CA3D0 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CA3D0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 024CA3D4 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 024CA3D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024CA3D8 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 024CA3D8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024CA3DC */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 024CA3DC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 024CA3E0 */ _t21 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA3E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024CA3E4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA3E4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 024CA3E8 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA3E8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 024CA3EC */ _t24 = cpu->r[30] + 0x00000074u;
|
|
/* 024CA3EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024CA3F0 */ _t25 = cpu->r[30] + 0x00000060u;
|
|
/* 024CA3F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024CA3F4 */ _t26 = cpu->r[1] + 0x00000030u;
|
|
/* 024CA3F4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 024CA3F8 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA3F8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[9]);
|
|
/* 024CA3FC */ _t28 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA3FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024CA400 */ _t29 = cpu->r[30] + 0x0000006Cu;
|
|
/* 024CA400 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024CA404 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 024CA404 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 024CA408 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA408 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 024CA40C */ cpu->r[6] = cpu->r[1] + 0x00000004u;
|
|
/* 024CA410 */ _t32 = cpu->r[30] + 0x0000007Cu;
|
|
/* 024CA410 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024CA414 */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
/* 024CA418 */ _t33 = cpu->r[30] + 0x00000068u;
|
|
/* 024CA418 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 024CA41C */ cpu->r[7] = 0x00000003u;
|
|
/* 024CA420 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA420 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 024CA424 */ cpu->ctr = cpu->r[7];
|
|
/* 024CA428 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CA428 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
L_024CA42C: ; // 0x24ca42c
|
|
/* 024CA42C */ _t36 = cpu->r[6] + 0x00000004u;
|
|
/* 024CA42C */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024CA430 */ _t37 = cpu->r[12] + 0x00000004u;
|
|
/* 024CA430 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 024CA434 */ _t38 = cpu->r[6] + 0x00000008u;
|
|
/* 024CA434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024CA438 */ _t39 = cpu->r[12] + 0x00000008u;
|
|
/* 024CA438 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
/* 024CA43C */ _t40 = cpu->r[6] + 0x0000000Cu;
|
|
/* 024CA43C */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024CA440 */ _t41 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024CA440 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 024CA444 */ _t42 = cpu->r[6] + 0x00000010u;
|
|
/* 024CA444 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024CA444 */ cpu->r[6] = _t42;
|
|
/* 024CA448 */ _t43 = cpu->r[12] + 0x00000010u;
|
|
/* 024CA448 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]);
|
|
/* 024CA448 */ cpu->r[12] = _t43;
|
|
/* 024CA44C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024CA44C */ _t44 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024CA44C */ _t45 = _t44 >> (0x00000002u & 31u);
|
|
/* 024CA44C */ _t46 = _t45 & 0x00000001u;
|
|
/* 024CA44C */ if (_t46) goto L_024CA42C; else goto L_024CA450;
|
|
L_024CA450: ; // 0x24ca450
|
|
/* 024CA450 */ _t47 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024CA450 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024CA454 */ _t48 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA454 */ cpu->r[12] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024CA458 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024CA45C */ cpu->r[12] = cpu->r[12] | 0x00000001u;
|
|
/* 024CA460 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024CA464 */ _t49 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA464 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[12]);
|
|
/* 024CA468 */ Gambit_fn_02C69510(cpu);
|
|
/* 024CA46C */ cpu->r[4] = 0x00000003u;
|
|
/* 024CA470 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA474 */ Gambit_fn_02980304(cpu);
|
|
/* 024CA478 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA47C */ Gambit_fn_02980318(cpu);
|
|
/* 024CA480 */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 024CA480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024CA484 */ _t51 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA484 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 024CA488 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024CA48C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024CA490 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024CA494 */ _t52 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA494 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
/* 024CA498 */ Gambit_fn_02C69510(cpu);
|
|
/* 024CA49C */ cpu->r[4] = 0x00000003u;
|
|
/* 024CA4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA4A4 */ Gambit_fn_02980304(cpu);
|
|
/* 024CA4A8 */ _t53 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024CA4AC */ _t54 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA4AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024CA4B0 */ cpu->lr = cpu->r[0];
|
|
/* 024CA4B4 */ _t55 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA4B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024CA4B8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA4BC */ return;
|
|
L_024CA4C0: ; // 0x24ca4c0
|
|
/* 024CA4C0 */ _t56 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA4C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 024CA4C4 */ Gambit_fn_0239859C(cpu);
|
|
/* 024CA4C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA4CC */ Gambit_fn_024C6A28(cpu);
|
|
/* 024CA4D0 */ _t57 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA4D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024CA4D4 */ _t58 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA4D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024CA4D8 */ cpu->lr = cpu->r[0];
|
|
/* 024CA4DC */ _t59 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA4DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024CA4E0 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA4E4 */ return;
|
|
}
|
|
|
|
// fn_024CA37C @ 0x24ca37c
|
|
void Gambit_fn_024CA37C(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;
|
|
|
|
L_024CA37C: ; // 0x24ca37c
|
|
/* 024CA37C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 024CA37C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA37C */ cpu->r[1] = _t0;
|
|
/* 024CA380 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA380 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CA384 */ _t2 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA384 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CA388 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA38C */ _t3 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA38C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CA390 */ _t4 = cpu->r[30] + 0x00000510u;
|
|
/* 024CA390 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 024CA394 */ /* nop */
|
|
/* 024CA398 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA398 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CA398 */ if (_t6) goto L_024CA3BC; else goto L_024CA39C;
|
|
L_024CA39C: ; // 0x24ca39c
|
|
/* 024CA39C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024CA3A0 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CA3A0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CA3A0 */ if (_t8) goto L_024CA3A4; else goto L_024CA4C0;
|
|
L_024CA3A4: ; // 0x24ca3a4
|
|
/* 024CA3A4 */ _t9 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA3A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CA3A8 */ _t10 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA3A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA3AC */ cpu->lr = cpu->r[0];
|
|
/* 024CA3B0 */ _t11 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA3B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA3B4 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA3B8 */ return;
|
|
L_024CA3BC: ; // 0x24ca3bc
|
|
/* 024CA3BC */ _t12 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA3BC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024CA3C0 */ _t13 = cpu->r[30] + 0x00000064u;
|
|
/* 024CA3C0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t13);
|
|
/* 024CA3C4 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA3C4 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 024CA3C8 */ _t15 = cpu->r[30] + 0x00000078u;
|
|
/* 024CA3C8 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CA3CC */ _t16 = cpu->r[30] + 0x00000070u;
|
|
/* 024CA3CC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024CA3D0 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CA3D0 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[13]);
|
|
/* 024CA3D4 */ _t18 = cpu->r[30] + 0x00000080u;
|
|
/* 024CA3D4 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024CA3D8 */ _t19 = cpu->r[1] + 0x00000020u;
|
|
/* 024CA3D8 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]);
|
|
/* 024CA3DC */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 024CA3DC */ rbrew_write_f32(cpu->mem, _t20, cpu->f[13]);
|
|
/* 024CA3E0 */ _t21 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA3E0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024CA3E4 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA3E4 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[11]);
|
|
/* 024CA3E8 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA3E8 */ rbrew_write_f32(cpu->mem, _t23, cpu->f[12]);
|
|
/* 024CA3EC */ _t24 = cpu->r[30] + 0x00000074u;
|
|
/* 024CA3EC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024CA3F0 */ _t25 = cpu->r[30] + 0x00000060u;
|
|
/* 024CA3F0 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024CA3F4 */ _t26 = cpu->r[1] + 0x00000030u;
|
|
/* 024CA3F4 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[12]);
|
|
/* 024CA3F8 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA3F8 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[9]);
|
|
/* 024CA3FC */ _t28 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA3FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024CA400 */ _t29 = cpu->r[30] + 0x0000006Cu;
|
|
/* 024CA400 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 024CA404 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 024CA404 */ rbrew_write_f32(cpu->mem, _t30, cpu->f[11]);
|
|
/* 024CA408 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA408 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[10]);
|
|
/* 024CA40C */ cpu->r[6] = cpu->r[1] + 0x00000004u;
|
|
/* 024CA410 */ _t32 = cpu->r[30] + 0x0000007Cu;
|
|
/* 024CA410 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024CA414 */ cpu->r[12] = cpu->r[1] + 0x00000034u;
|
|
/* 024CA418 */ _t33 = cpu->r[30] + 0x00000068u;
|
|
/* 024CA418 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 024CA41C */ cpu->r[7] = 0x00000003u;
|
|
/* 024CA420 */ _t34 = cpu->r[1] + 0x00000024u;
|
|
/* 024CA420 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[10]);
|
|
/* 024CA424 */ cpu->ctr = cpu->r[7];
|
|
/* 024CA428 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CA428 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
L_024CA42C: ; // 0x24ca42c
|
|
/* 024CA42C */ _t36 = cpu->r[6] + 0x00000004u;
|
|
/* 024CA42C */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024CA430 */ _t37 = cpu->r[12] + 0x00000004u;
|
|
/* 024CA430 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 024CA434 */ _t38 = cpu->r[6] + 0x00000008u;
|
|
/* 024CA434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024CA438 */ _t39 = cpu->r[12] + 0x00000008u;
|
|
/* 024CA438 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
/* 024CA43C */ _t40 = cpu->r[6] + 0x0000000Cu;
|
|
/* 024CA43C */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024CA440 */ _t41 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024CA440 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]);
|
|
/* 024CA444 */ _t42 = cpu->r[6] + 0x00000010u;
|
|
/* 024CA444 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024CA444 */ cpu->r[6] = _t42;
|
|
/* 024CA448 */ _t43 = cpu->r[12] + 0x00000010u;
|
|
/* 024CA448 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]);
|
|
/* 024CA448 */ cpu->r[12] = _t43;
|
|
/* 024CA44C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024CA44C */ _t44 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024CA44C */ _t45 = _t44 >> (0x00000002u & 31u);
|
|
/* 024CA44C */ _t46 = _t45 & 0x00000001u;
|
|
/* 024CA44C */ if (_t46) goto L_024CA42C; else goto L_024CA450;
|
|
L_024CA450: ; // 0x24ca450
|
|
/* 024CA450 */ _t47 = cpu->r[30] + 0x0000053Cu;
|
|
/* 024CA450 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024CA454 */ _t48 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA454 */ cpu->r[12] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024CA458 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024CA45C */ cpu->r[12] = cpu->r[12] | 0x00000001u;
|
|
/* 024CA460 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024CA464 */ _t49 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA464 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[12]);
|
|
/* 024CA468 */ Gambit_fn_02C69510(cpu);
|
|
/* 024CA46C */ cpu->r[4] = 0x00000003u;
|
|
/* 024CA470 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA474 */ Gambit_fn_02980304(cpu);
|
|
/* 024CA478 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA47C */ Gambit_fn_02980318(cpu);
|
|
/* 024CA480 */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 024CA480 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024CA484 */ _t51 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA484 */ cpu->r[0] = rbrew_read8(cpu->mem, _t51);
|
|
/* 024CA488 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024CA48C */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024CA490 */ cpu->r[4] = cpu->r[31] + 0x00000034u;
|
|
/* 024CA494 */ _t52 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA494 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[0]);
|
|
/* 024CA498 */ Gambit_fn_02C69510(cpu);
|
|
/* 024CA49C */ cpu->r[4] = 0x00000003u;
|
|
/* 024CA4A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA4A4 */ Gambit_fn_02980304(cpu);
|
|
/* 024CA4A8 */ _t53 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA4A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024CA4AC */ _t54 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA4AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024CA4B0 */ cpu->lr = cpu->r[0];
|
|
/* 024CA4B4 */ _t55 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA4B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024CA4B8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA4BC */ return;
|
|
L_024CA4C0: ; // 0x24ca4c0
|
|
/* 024CA4C0 */ _t56 = cpu->r[30] + 0x00000544u;
|
|
/* 024CA4C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 024CA4C4 */ Gambit_fn_0239859C(cpu);
|
|
/* 024CA4C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA4CC */ Gambit_fn_024C6A28(cpu);
|
|
/* 024CA4D0 */ _t57 = cpu->r[1] + 0x00000074u;
|
|
/* 024CA4D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024CA4D4 */ _t58 = cpu->r[1] + 0x00000068u;
|
|
/* 024CA4D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024CA4D8 */ cpu->lr = cpu->r[0];
|
|
/* 024CA4DC */ _t59 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024CA4DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024CA4E0 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 024CA4E4 */ return;
|
|
}
|
|
|
|
// fn_024CA4E8 @ 0x24ca4e8
|
|
void Gambit_fn_024CA4E8(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_024CA4E8: ; // 0x24ca4e8
|
|
/* 024CA4E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA4EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA4EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA4EC */ cpu->r[1] = _t0;
|
|
/* 024CA4F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA4F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA4F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA4F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA4F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA4FC */ Gambit_fn_024CA378(cpu);
|
|
/* 024CA500 */ _t3 = cpu->r[31] + 0x00000060u;
|
|
/* 024CA500 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 024CA504 */ _t4 = cpu->r[31] + 0x00000064u;
|
|
/* 024CA504 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024CA508 */ _t5 = cpu->r[31] + 0x0000054Cu;
|
|
/* 024CA508 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 024CA50C */ _t6 = cpu->r[31] + 0x0000055Cu;
|
|
/* 024CA50C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 024CA510 */ _t7 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA510 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024CA514 */ _t8 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024CA514 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024CA518 */ _t9 = cpu->r[31] + 0x00000564u;
|
|
/* 024CA518 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 024CA51C */ _t10 = cpu->r[31] + 0x00000550u;
|
|
/* 024CA51C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 024CA520 */ _t11 = cpu->r[31] + 0x00000058u;
|
|
/* 024CA520 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024CA524 */ _t12 = cpu->r[31] + 0x00000068u;
|
|
/* 024CA524 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024CA528 */ _t13 = cpu->r[31] + 0x0000056Cu;
|
|
/* 024CA528 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 024CA52C */ _t14 = cpu->r[31] + 0x00000074u;
|
|
/* 024CA52C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024CA530 */ _t15 = cpu->r[31] + 0x00000558u;
|
|
/* 024CA530 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 024CA534 */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 024CA534 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024CA538 */ _t17 = cpu->r[31] + 0x00000570u;
|
|
/* 024CA538 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024CA53C */ _t18 = cpu->r[31] + 0x00000560u;
|
|
/* 024CA53C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 024CA540 */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024CA540 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024CA544 */ _t20 = cpu->r[31] + 0x00000080u;
|
|
/* 024CA544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024CA548 */ _t21 = cpu->r[31] + 0x00000568u;
|
|
/* 024CA548 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 024CA54C */ _t22 = cpu->r[31] + 0x00000574u;
|
|
/* 024CA54C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 024CA550 */ _t23 = cpu->r[31] + 0x00000054u;
|
|
/* 024CA550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024CA554 */ _t24 = cpu->r[31] + 0x00000078u;
|
|
/* 024CA554 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024CA558 */ _t25 = cpu->r[31] + 0x00000548u;
|
|
/* 024CA558 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024CA55C */ _t26 = cpu->r[31] + 0x00000554u;
|
|
/* 024CA55C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 024CA560 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CA564 */ cpu->lr = cpu->r[0];
|
|
/* 024CA568 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA568 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024CA56C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA570 */ return;
|
|
}
|
|
|
|
// fn_024CA4EC @ 0x24ca4ec
|
|
void Gambit_fn_024CA4EC(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_024CA4EC: ; // 0x24ca4ec
|
|
/* 024CA4EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA4EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA4EC */ cpu->r[1] = _t0;
|
|
/* 024CA4F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA4F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA4F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA4F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA4F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA4FC */ Gambit_fn_024CA378(cpu);
|
|
/* 024CA500 */ _t3 = cpu->r[31] + 0x00000060u;
|
|
/* 024CA500 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 024CA504 */ _t4 = cpu->r[31] + 0x00000064u;
|
|
/* 024CA504 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024CA508 */ _t5 = cpu->r[31] + 0x0000054Cu;
|
|
/* 024CA508 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[13]);
|
|
/* 024CA50C */ _t6 = cpu->r[31] + 0x0000055Cu;
|
|
/* 024CA50C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 024CA510 */ _t7 = cpu->r[31] + 0x0000007Cu;
|
|
/* 024CA510 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024CA514 */ _t8 = cpu->r[31] + 0x0000006Cu;
|
|
/* 024CA514 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024CA518 */ _t9 = cpu->r[31] + 0x00000564u;
|
|
/* 024CA518 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 024CA51C */ _t10 = cpu->r[31] + 0x00000550u;
|
|
/* 024CA51C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 024CA520 */ _t11 = cpu->r[31] + 0x00000058u;
|
|
/* 024CA520 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024CA524 */ _t12 = cpu->r[31] + 0x00000068u;
|
|
/* 024CA524 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024CA528 */ _t13 = cpu->r[31] + 0x0000056Cu;
|
|
/* 024CA528 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]);
|
|
/* 024CA52C */ _t14 = cpu->r[31] + 0x00000074u;
|
|
/* 024CA52C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024CA530 */ _t15 = cpu->r[31] + 0x00000558u;
|
|
/* 024CA530 */ rbrew_write_f32(cpu->mem, _t15, cpu->f[13]);
|
|
/* 024CA534 */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 024CA534 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 024CA538 */ _t17 = cpu->r[31] + 0x00000570u;
|
|
/* 024CA538 */ rbrew_write_f32(cpu->mem, _t17, cpu->f[0]);
|
|
/* 024CA53C */ _t18 = cpu->r[31] + 0x00000560u;
|
|
/* 024CA53C */ rbrew_write_f32(cpu->mem, _t18, cpu->f[13]);
|
|
/* 024CA540 */ _t19 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024CA540 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 024CA544 */ _t20 = cpu->r[31] + 0x00000080u;
|
|
/* 024CA544 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024CA548 */ _t21 = cpu->r[31] + 0x00000568u;
|
|
/* 024CA548 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[13]);
|
|
/* 024CA54C */ _t22 = cpu->r[31] + 0x00000574u;
|
|
/* 024CA54C */ rbrew_write_f32(cpu->mem, _t22, cpu->f[0]);
|
|
/* 024CA550 */ _t23 = cpu->r[31] + 0x00000054u;
|
|
/* 024CA550 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024CA554 */ _t24 = cpu->r[31] + 0x00000078u;
|
|
/* 024CA554 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024CA558 */ _t25 = cpu->r[31] + 0x00000548u;
|
|
/* 024CA558 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024CA55C */ _t26 = cpu->r[31] + 0x00000554u;
|
|
/* 024CA55C */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]);
|
|
/* 024CA560 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA560 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CA564 */ cpu->lr = cpu->r[0];
|
|
/* 024CA568 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA568 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024CA56C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA570 */ return;
|
|
}
|
|
|
|
// fn_024CA574 @ 0x24ca574
|
|
void Gambit_fn_024CA574(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024C6A7C: ; // 0x24c6a7c
|
|
/* 024C6A7C */ cpu->r[0] = cpu->lr;
|
|
/* 024C6A80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6A80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6A80 */ cpu->r[1] = _t0;
|
|
/* 024C6A84 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024C6A88 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6A88 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024C6A8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6A8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024C6A90 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024C6A90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024C6A94 */ _t5 = cpu->r[12] + 0x0000035Cu;
|
|
/* 024C6A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6A98 */ cpu->ctr = cpu->r[0];
|
|
/* 024C6A9C */ _t6 = cpu->r[3] + 0x000001B4u;
|
|
/* 024C6A9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6AA0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024C6AA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024C6AA8 */ _t7 = cpu->r[30] + 0x00000078u;
|
|
/* 024C6AA8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024C6AAC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6AB0 */ _t8 = cpu->r[30] + 0x00000080u;
|
|
/* 024C6AB0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024C6AB4 */ cpu->f[2] = cpu->f[0] + cpu->f[1];
|
|
/* 024C6AB8 */ _t9 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024C6ABC */ cpu->f[3] = cpu->f[13] - cpu->f[1];
|
|
/* 024C6AC0 */ cpu->r[4] = 0x101C0000u;
|
|
/* 024C6AC4 */ cpu->f[4] = cpu->f[13] + cpu->f[1];
|
|
/* 024C6AC8 */ _t10 = cpu->r[3] + 0x00005444u;
|
|
/* 024C6AC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024C6ACC */ cpu->f[1] = cpu->f[0] - cpu->f[1];
|
|
/* 024C6AD0 */ _t11 = cpu->r[4] + 0x00006648u;
|
|
/* 024C6AD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024C6AD4 */ cpu->r[6] = cpu->r[31];
|
|
/* 024C6AD8 */ cpu->r[5] = cpu->r[30];
|
|
/* 024C6ADC */ Gambit_fn_02031B20(cpu);
|
|
/* 024C6AE0 */ _t12 = cpu->r[30] + 0x000001B0u;
|
|
/* 024C6AE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 024C6AE4 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024C6AE8 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024C6AE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024C6AEC */ cpu->lr = cpu->r[0];
|
|
/* 024C6AF0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6AF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024C6AF4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6AF8 */ return;
|
|
L_024CA574: ; // 0x24ca574
|
|
/* 024CA574 */ goto L_024C6A7C;
|
|
}
|
|
|
|
// fn_024CA578 @ 0x24ca578
|
|
void Gambit_fn_024CA578(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024C6AFC: ; // 0x24c6afc
|
|
/* 024C6AFC */ cpu->r[0] = cpu->lr;
|
|
/* 024C6B00 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024C6B00 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024C6B00 */ cpu->r[1] = _t0;
|
|
/* 024C6B04 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B04 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024C6B08 */ cpu->r[31] = cpu->r[3];
|
|
/* 024C6B0C */ cpu->r[3] = 0x101C0000u;
|
|
/* 024C6B10 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B10 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024C6B14 */ _t3 = cpu->r[3] + 0x00001D14u;
|
|
/* 024C6B14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024C6B18 */ cpu->r[4] = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B1C */ Gambit_fn_02031BD0(cpu);
|
|
/* 024C6B20 */ cpu->r[0] = 0x00000000u;
|
|
/* 024C6B24 */ _t4 = cpu->r[31] + 0x000001B0u;
|
|
/* 024C6B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024C6B28 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024C6B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024C6B2C */ cpu->lr = cpu->r[0];
|
|
/* 024C6B30 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024C6B30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024C6B34 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024C6B38 */ return;
|
|
L_024CA578: ; // 0x24ca578
|
|
/* 024CA578 */ goto L_024C6AFC;
|
|
}
|
|
|
|
// fn_024CA57C @ 0x24ca57c
|
|
void Gambit_fn_024CA57C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024CA57C: ; // 0x24ca57c
|
|
/* 024CA57C */ _t0 = cpu->r[3] + 0x00000510u;
|
|
/* 024CA57C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CA580 */ /* nop */
|
|
/* 024CA584 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 024CA588 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024CA58C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024CA590 */ return;
|
|
}
|
|
|
|
// fn_024CA594 @ 0x24ca594
|
|
void Gambit_fn_024CA594(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CA594: ; // 0x24ca594
|
|
/* 024CA594 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA598 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CA59C */ cpu->r[12] = cpu->r[12] + 0x00005930u;
|
|
/* 024CA5A0 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024CA5A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024CA5A4 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA5A8 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024CA5A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024CA5A8 */ cpu->r[1] = _t1;
|
|
/* 024CA5AC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA5AC */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 024CA5B0 */ cpu->r[0] = cpu->r[0] + 0x000056F8u;
|
|
/* 024CA5B4 */ _t3 = cpu->r[3] + 0x00000030u;
|
|
/* 024CA5B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA5B8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA5BC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA5BC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024CA5C0 */ Gambit_fn_027B70B8(cpu);
|
|
/* 024CA5C4 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CA5C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CA5C8 */ cpu->lr = cpu->r[0];
|
|
/* 024CA5CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024CA5D0 */ return;
|
|
}
|
|
|
|
// fn_024CA5A8 @ 0x24ca5a8
|
|
void Gambit_fn_024CA5A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024CA5A8: ; // 0x24ca5a8
|
|
/* 024CA5A8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024CA5A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA5A8 */ cpu->r[1] = _t0;
|
|
/* 024CA5AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA5AC */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024CA5B0 */ cpu->r[0] = cpu->r[0] + 0x000056F8u;
|
|
/* 024CA5B4 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 024CA5B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CA5B8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA5BC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA5BC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CA5C0 */ Gambit_fn_027B70B8(cpu);
|
|
/* 024CA5C4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CA5C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CA5C8 */ cpu->lr = cpu->r[0];
|
|
/* 024CA5CC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024CA5D0 */ return;
|
|
}
|
|
|
|
// fn_024CA5D4 @ 0x24ca5d4
|
|
void Gambit_fn_024CA5D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024CA5D4: ; // 0x24ca5d4
|
|
/* 024CA5D4 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA5D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA5D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA5D8 */ cpu->r[1] = _t0;
|
|
/* 024CA5DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA5DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA5E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA5E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA5E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA5E8 */ _t3 = cpu->r[31] + 0x00000510u;
|
|
/* 024CA5E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024CA5EC */ /* nop */
|
|
/* 024CA5F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA5F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA5F0 */ if (_t5) goto L_024CA5F4; else goto L_024CA640;
|
|
L_024CA5F4: ; // 0x24ca5f4
|
|
/* 024CA5F4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024CA5F8 */ _t6 = cpu->r[31] + 0x0000019Cu;
|
|
/* 024CA5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA5FC */ cpu->r[6] = cpu->r[31] + 0x00000078u;
|
|
/* 024CA600 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA604 */ cpu->r[5] = cpu->r[31];
|
|
/* 024CA608 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA60C */ cpu->r[9] = cpu->r[8];
|
|
/* 024CA610 */ cpu->r[10] = cpu->r[8];
|
|
/* 024CA614 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA614 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024CA618 */ Gambit_fn_024F19BC(cpu);
|
|
/* 024CA61C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024CA620 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA620 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA620 */ if (_t9) goto L_024CA624; else goto L_024CA640;
|
|
L_024CA624: ; // 0x24ca624
|
|
/* 024CA624 */ _t10 = cpu->r[31] + 0x00000030u;
|
|
/* 024CA624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA628 */ _t11 = cpu->r[3] + 0x000000E0u;
|
|
/* 024CA628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA62C */ _t12 = cpu->r[12] + 0x00000034u;
|
|
/* 024CA62C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CA630 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CA634 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA638 */ cpu->r[4] = cpu->r[4] + 0x00005938u;
|
|
/* 024CA63C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024CA640: ; // 0x24ca640
|
|
/* 024CA640 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024CA644 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA644 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CA648 */ cpu->lr = cpu->r[0];
|
|
/* 024CA64C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA650 */ return;
|
|
}
|
|
|
|
// fn_024CA5D8 @ 0x24ca5d8
|
|
void Gambit_fn_024CA5D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024CA5D8: ; // 0x24ca5d8
|
|
/* 024CA5D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA5D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA5D8 */ cpu->r[1] = _t0;
|
|
/* 024CA5DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA5DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA5E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA5E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA5E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA5E8 */ _t3 = cpu->r[31] + 0x00000510u;
|
|
/* 024CA5E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024CA5EC */ /* nop */
|
|
/* 024CA5F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA5F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA5F0 */ if (_t5) goto L_024CA5F4; else goto L_024CA640;
|
|
L_024CA5F4: ; // 0x24ca5f4
|
|
/* 024CA5F4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024CA5F8 */ _t6 = cpu->r[31] + 0x0000019Cu;
|
|
/* 024CA5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA5FC */ cpu->r[6] = cpu->r[31] + 0x00000078u;
|
|
/* 024CA600 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA604 */ cpu->r[5] = cpu->r[31];
|
|
/* 024CA608 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA60C */ cpu->r[9] = cpu->r[8];
|
|
/* 024CA610 */ cpu->r[10] = cpu->r[8];
|
|
/* 024CA614 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024CA614 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024CA618 */ Gambit_fn_024F19BC(cpu);
|
|
/* 024CA61C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u);
|
|
/* 024CA620 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA620 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA620 */ if (_t9) goto L_024CA624; else goto L_024CA640;
|
|
L_024CA624: ; // 0x24ca624
|
|
/* 024CA624 */ _t10 = cpu->r[31] + 0x00000030u;
|
|
/* 024CA624 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA628 */ _t11 = cpu->r[3] + 0x000000E0u;
|
|
/* 024CA628 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA62C */ _t12 = cpu->r[12] + 0x00000034u;
|
|
/* 024CA62C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CA630 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CA634 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA638 */ cpu->r[4] = cpu->r[4] + 0x00005938u;
|
|
/* 024CA63C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024CA640: ; // 0x24ca640
|
|
/* 024CA640 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA640 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024CA644 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA644 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CA648 */ cpu->lr = cpu->r[0];
|
|
/* 024CA64C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA650 */ return;
|
|
}
|
|
|
|
// fn_024CA654 @ 0x24ca654
|
|
void Gambit_fn_024CA654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024CA654: ; // 0x24ca654
|
|
/* 024CA654 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA658 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA658 */ cpu->r[1] = _t0;
|
|
/* 024CA65C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA65C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA660 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA664 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA664 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA668 */ Gambit_fn_024C6E48(cpu);
|
|
/* 024CA66C */ _t3 = cpu->r[31] + 0x00000588u;
|
|
/* 024CA66C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CA674 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA674 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA674 */ if (_t5) goto L_024CA694; else goto L_024CA678;
|
|
L_024CA678: ; // 0x24ca678
|
|
/* 024CA678 */ _t6 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024CA678 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA67C */ _t7 = cpu->r[31] + 0x0000058Cu;
|
|
/* 024CA67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CA680 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 024CA684 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA684 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA684 */ if (_t9) goto L_024CA688; else goto L_024CA694;
|
|
L_024CA688: ; // 0x24ca688
|
|
/* 024CA688 */ cpu->r[3] = cpu->r[31] + 0x00000588u;
|
|
/* 024CA68C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024CA690 */ Gambit_fn_028B2FD8(cpu);
|
|
L_024CA694: ; // 0x24ca694
|
|
/* 024CA694 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA698 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA69C */ cpu->lr = cpu->r[0];
|
|
/* 024CA6A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA6A4 */ return;
|
|
}
|
|
|
|
// fn_024CA658 @ 0x24ca658
|
|
void Gambit_fn_024CA658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024CA658: ; // 0x24ca658
|
|
/* 024CA658 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA658 */ cpu->r[1] = _t0;
|
|
/* 024CA65C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA65C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA660 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA664 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA664 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA668 */ Gambit_fn_024C6E48(cpu);
|
|
/* 024CA66C */ _t3 = cpu->r[31] + 0x00000588u;
|
|
/* 024CA66C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CA674 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA674 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA674 */ if (_t5) goto L_024CA694; else goto L_024CA678;
|
|
L_024CA678: ; // 0x24ca678
|
|
/* 024CA678 */ _t6 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024CA678 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CA67C */ _t7 = cpu->r[31] + 0x0000058Cu;
|
|
/* 024CA67C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CA680 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 024CA684 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA684 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA684 */ if (_t9) goto L_024CA688; else goto L_024CA694;
|
|
L_024CA688: ; // 0x24ca688
|
|
/* 024CA688 */ cpu->r[3] = cpu->r[31] + 0x00000588u;
|
|
/* 024CA68C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024CA690 */ Gambit_fn_028B2FD8(cpu);
|
|
L_024CA694: ; // 0x24ca694
|
|
/* 024CA694 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA698 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA698 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA69C */ cpu->lr = cpu->r[0];
|
|
/* 024CA6A0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CA6A4 */ return;
|
|
}
|
|
|
|
// fn_024CA6A8 @ 0x24ca6a8
|
|
void Gambit_fn_024CA6A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024CA6A8: ; // 0x24ca6a8
|
|
/* 024CA6A8 */ cpu->r[10] = cpu->r[3];
|
|
/* 024CA6AC */ _t0 = cpu->r[10] + 0x00000510u;
|
|
/* 024CA6AC */ cpu->r[11] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CA6B0 */ /* nop */
|
|
/* 024CA6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 024CA6B8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA6B8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CA6B8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CA6B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CA6B8 */ goto L_024CA6BC;
|
|
L_024CA6BC: ; // 0x24ca6bc
|
|
/* 024CA6BC */ _t4 = cpu->r[10] + 0x00000588u;
|
|
/* 024CA6BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CA6C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CA6C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA6C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CA6C4 */ if (_t6) goto L_024CA6D8; else goto L_024CA6C8;
|
|
L_024CA6C8: ; // 0x24ca6c8
|
|
/* 024CA6C8 */ _t7 = cpu->r[11] + 0x0000000Cu;
|
|
/* 024CA6C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CA6CC */ _t8 = cpu->r[10] + 0x0000058Cu;
|
|
/* 024CA6CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024CA6D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 024CA6D4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA6D4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CA6D4 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CA6D4 */ goto L_024CA6D8;
|
|
L_024CA6D8: ; // 0x24ca6d8
|
|
/* 024CA6D8 */ _t11 = cpu->r[10] + 0x00000030u;
|
|
/* 024CA6D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA6DC */ _t12 = cpu->r[3] + 0x000000E0u;
|
|
/* 024CA6DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CA6E0 */ _t13 = cpu->r[12] + 0x0000003Cu;
|
|
/* 024CA6E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024CA6E4 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA6E8 */ cpu->ctr = cpu->r[0];
|
|
/* 024CA6EC */ cpu->r[5] = cpu->r[5] + 0x00005940u;
|
|
/* 024CA6F0 */ cpu->r[4] = cpu->r[10] + 0x00000588u;
|
|
/* 024CA6F4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024CA6F8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CA6FC @ 0x24ca6fc
|
|
void Gambit_fn_024CA6FC(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;
|
|
|
|
L_024CA6FC: ; // 0x24ca6fc
|
|
/* 024CA6FC */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 024CA6FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA6FC */ cpu->r[1] = _t0;
|
|
/* 024CA700 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA704 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024CA704 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 024CA708 */ /* nop */
|
|
/* 024CA70C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA70C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CA710 */ _t3 = cpu->r[1] + 0x00000038u;
|
|
/* 024CA710 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 024CA714 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA714 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024CA718 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA718 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 024CA71C */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA71C */ rbrew_write_f64(cpu->mem, _t6, cpu->f[29]);
|
|
/* 024CA720 */ _t7 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024CA720 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024CA724 */ /* nop */
|
|
/* 024CA728 */ _t8 = cpu->r[1] + 0x00000030u;
|
|
/* 024CA728 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[30]);
|
|
/* 024CA72C */ /* nop */
|
|
/* 024CA730 */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 024CA730 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[29]);
|
|
/* 024CA734 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA738 */ _t10 = cpu->r[1] + 0x00000040u;
|
|
/* 024CA738 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[31]);
|
|
/* 024CA73C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA73C */ _t12 = _t11 & 0x00000001u;
|
|
/* 024CA73C */ if (_t12) goto L_024CA740; else goto L_024CA750;
|
|
L_024CA740: ; // 0x24ca740
|
|
/* 024CA740 */ cpu->r[3] = 0x00000368u;
|
|
/* 024CA744 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA748 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA74C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA74C */ _t14 = _t13 & 0x00000001u;
|
|
/* 024CA74C */ if (_t14) goto L_024CA92C; else goto L_024CA750;
|
|
L_024CA750: ; // 0x24ca750
|
|
/* 024CA750 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA754 */ Gambit_fn_025015D0(cpu);
|
|
/* 024CA758 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA75C */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CA760 */ cpu->r[0] = cpu->r[0] + 0x00005818u;
|
|
/* 024CA764 */ _t15 = cpu->r[12] + 0x0000591Cu;
|
|
/* 024CA764 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CA768 */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 024CA768 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 024CA76C */ cpu->r[29] = 0x10110000u;
|
|
/* 024CA770 */ cpu->r[30] = cpu->r[31] + 0x00000188u;
|
|
/* 024CA770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA774 */ cpu->r[29] = cpu->r[29] + 0x00000A2Cu;
|
|
/* 024CA778 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA778 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CA778 */ if (_t18) goto L_024CA77C; else goto L_024CA78C;
|
|
L_024CA77C: ; // 0x24ca77c
|
|
/* 024CA77C */ cpu->r[3] = 0x00000060u;
|
|
/* 024CA780 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA784 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA788 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA788 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024CA788 */ if (_t20) goto L_024CA7D0; else goto L_024CA78C;
|
|
L_024CA78C: ; // 0x24ca78c
|
|
/* 024CA78C */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA790 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CA794 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CA798 */ cpu->r[5] = cpu->r[5] + 0x0000597Cu;
|
|
/* 024CA79C */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA7A0 */ cpu->r[6] = cpu->r[6] + 0x0000598Cu;
|
|
/* 024CA7A4 */ cpu->r[7] = cpu->r[5];
|
|
/* 024CA7A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA7AC */ Gambit_fn_027F84F0(cpu);
|
|
/* 024CA7B0 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024CA7B4 */ _t21 = cpu->r[30] + 0x00000000u;
|
|
/* 024CA7B4 */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
/* 024CA7B8 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024CA7BC */ _t22 = cpu->r[11] + 0x00005948u;
|
|
/* 024CA7BC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024CA7C0 */ _t23 = cpu->r[9] + 0x0000594Cu;
|
|
/* 024CA7C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 024CA7C4 */ _t24 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA7C4 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[13]);
|
|
/* 024CA7C8 */ _t25 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA7C8 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[0]);
|
|
/* 024CA7CC */ _t26 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA7CC */ rbrew_write_f32(cpu->mem, _t26, cpu->f[29]);
|
|
L_024CA7D0: ; // 0x24ca7d0
|
|
/* 024CA7D0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CA7D4 */ cpu->r[11] = 0x100B0000u;
|
|
/* 024CA7D8 */ _t27 = cpu->r[12] + 0x00005950u;
|
|
/* 024CA7D8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024CA7DC */ cpu->r[30] = cpu->r[31] + 0x000001E8u;
|
|
/* 024CA7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA7E0 */ _t28 = cpu->r[11] + 0x00005954u;
|
|
/* 024CA7E0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024CA7E4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA7E4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024CA7E4 */ if (_t30) goto L_024CA7E8; else goto L_024CA7F8;
|
|
L_024CA7E8: ; // 0x24ca7e8
|
|
/* 024CA7E8 */ cpu->r[3] = 0x00000060u;
|
|
/* 024CA7EC */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA7F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA7F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA7F4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA7F4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 024CA7F4 */ if (_t32) goto L_024CA82C; else goto L_024CA7F8;
|
|
L_024CA7F8: ; // 0x24ca7f8
|
|
/* 024CA7F8 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA7FC */ cpu->r[4] = cpu->r[31];
|
|
/* 024CA800 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CA804 */ cpu->r[5] = cpu->r[5] + 0x00005998u;
|
|
/* 024CA808 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA80C */ cpu->r[6] = cpu->r[6] + 0x000059A8u;
|
|
/* 024CA810 */ cpu->r[7] = cpu->r[5];
|
|
/* 024CA814 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA818 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024CA81C */ _t33 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA81C */ rbrew_write_f32(cpu->mem, _t33, cpu->f[29]);
|
|
/* 024CA820 */ _t34 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA820 */ rbrew_write_f32(cpu->mem, _t34, cpu->f[31]);
|
|
/* 024CA824 */ _t35 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA824 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[30]);
|
|
/* 024CA828 */ _t36 = cpu->r[30] + 0x00000000u;
|
|
/* 024CA828 */ rbrew_write32(cpu->mem, _t36, cpu->r[29]);
|
|
L_024CA82C: ; // 0x24ca82c
|
|
/* 024CA82C */ cpu->r[30] = cpu->r[31] + 0x00000248u;
|
|
/* 024CA82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA830 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA830 */ _t38 = _t37 & 0x00000001u;
|
|
/* 024CA830 */ if (_t38) goto L_024CA834; else goto L_024CA844;
|
|
L_024CA834: ; // 0x24ca834
|
|
/* 024CA834 */ cpu->r[3] = 0x00000060u;
|
|
/* 024CA838 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA83C */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA83C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA840 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA840 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024CA840 */ if (_t40) goto L_024CA880; else goto L_024CA844;
|
|
L_024CA844: ; // 0x24ca844
|
|
/* 024CA844 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA848 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CA84C */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CA850 */ cpu->r[5] = cpu->r[5] + 0x0000595Cu;
|
|
/* 024CA854 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA858 */ cpu->r[6] = cpu->r[6] + 0x000059C0u;
|
|
/* 024CA85C */ cpu->r[7] = cpu->r[5];
|
|
/* 024CA860 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA864 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024CA868 */ _t41 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA868 */ rbrew_write_f32(cpu->mem, _t41, cpu->f[29]);
|
|
/* 024CA86C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CA870 */ _t42 = cpu->r[30] + 0x00000000u;
|
|
/* 024CA870 */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 024CA874 */ _t43 = cpu->r[10] + 0x00005958u;
|
|
/* 024CA874 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 024CA878 */ _t44 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA878 */ rbrew_write_f32(cpu->mem, _t44, cpu->f[30]);
|
|
/* 024CA87C */ _t45 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA87C */ rbrew_write_f32(cpu->mem, _t45, cpu->f[12]);
|
|
L_024CA880: ; // 0x24ca880
|
|
/* 024CA880 */ cpu->r[30] = cpu->r[31] + 0x000002A8u;
|
|
/* 024CA880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA884 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA884 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024CA884 */ if (_t47) goto L_024CA888; else goto L_024CA898;
|
|
L_024CA888: ; // 0x24ca888
|
|
/* 024CA888 */ cpu->r[3] = 0x00000060u;
|
|
/* 024CA88C */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA890 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA894 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA894 */ _t49 = _t48 & 0x00000001u;
|
|
/* 024CA894 */ if (_t49) goto L_024CA8CC; else goto L_024CA898;
|
|
L_024CA898: ; // 0x24ca898
|
|
/* 024CA898 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA89C */ cpu->r[4] = cpu->r[31];
|
|
/* 024CA8A0 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CA8A4 */ cpu->r[5] = cpu->r[5] + 0x000059E0u;
|
|
/* 024CA8A8 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA8AC */ cpu->r[6] = cpu->r[6] + 0x000059FCu;
|
|
/* 024CA8B0 */ cpu->r[7] = cpu->r[5];
|
|
/* 024CA8B4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA8B8 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024CA8BC */ _t50 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA8BC */ rbrew_write_f32(cpu->mem, _t50, cpu->f[29]);
|
|
/* 024CA8C0 */ _t51 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA8C0 */ rbrew_write_f32(cpu->mem, _t51, cpu->f[31]);
|
|
/* 024CA8C4 */ _t52 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA8C4 */ rbrew_write_f32(cpu->mem, _t52, cpu->f[30]);
|
|
/* 024CA8C8 */ _t53 = cpu->r[30] + 0x00000000u;
|
|
/* 024CA8C8 */ rbrew_write32(cpu->mem, _t53, cpu->r[29]);
|
|
L_024CA8CC: ; // 0x24ca8cc
|
|
/* 024CA8CC */ cpu->r[30] = cpu->r[31] + 0x00000308u;
|
|
/* 024CA8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA8D0 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA8D0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024CA8D0 */ if (_t55) goto L_024CA8D4; else goto L_024CA8E4;
|
|
L_024CA8D4: ; // 0x24ca8d4
|
|
/* 024CA8D4 */ cpu->r[3] = 0x00000060u;
|
|
/* 024CA8D8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA8DC */ cpu->r[30] = cpu->r[3];
|
|
/* 024CA8DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CA8E0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA8E0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024CA8E0 */ if (_t57) goto L_024CA92C; else goto L_024CA8E4;
|
|
L_024CA8E4: ; // 0x24ca8e4
|
|
/* 024CA8E4 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CA8E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CA8EC */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CA8F0 */ cpu->r[5] = cpu->r[5] + 0x00005A1Cu;
|
|
/* 024CA8F4 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA8F8 */ cpu->r[6] = cpu->r[6] + 0x00005970u;
|
|
/* 024CA8FC */ cpu->r[7] = cpu->r[5];
|
|
/* 024CA900 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CA904 */ Gambit_fn_027F84F0(cpu);
|
|
/* 024CA908 */ cpu->r[7] = 0x00000078u;
|
|
/* 024CA90C */ cpu->r[0] = 0x10110000u;
|
|
/* 024CA910 */ _t58 = cpu->r[30] + 0x00000054u;
|
|
/* 024CA910 */ rbrew_write32(cpu->mem, _t58, cpu->r[7]);
|
|
/* 024CA914 */ cpu->r[0] = cpu->r[0] + 0x0000095Cu;
|
|
/* 024CA918 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CA91C */ _t59 = cpu->r[30] + 0x00000000u;
|
|
/* 024CA91C */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 024CA920 */ cpu->r[0] = 0x0000012Cu;
|
|
/* 024CA924 */ _t60 = cpu->r[30] + 0x00000058u;
|
|
/* 024CA924 */ rbrew_write32(cpu->mem, _t60, cpu->r[8]);
|
|
/* 024CA928 */ _t61 = cpu->r[30] + 0x0000005Cu;
|
|
/* 024CA928 */ rbrew_write32(cpu->mem, _t61, cpu->r[0]);
|
|
L_024CA92C: ; // 0x24ca92c
|
|
/* 024CA92C */ _t62 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA92C */ cpu->r[29] = rbrew_read32(cpu->mem, _t62);
|
|
/* 024CA930 */ _t63 = cpu->r[1] + 0x00000040u;
|
|
/* 024CA930 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t63);
|
|
/* 024CA934 */ _t64 = cpu->r[1] + 0x00000020u;
|
|
/* 024CA934 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t64);
|
|
/* 024CA938 */ _t65 = cpu->r[1] + 0x00000038u;
|
|
/* 024CA938 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t65);
|
|
/* 024CA93C */ _t66 = cpu->r[1] + 0x00000030u;
|
|
/* 024CA93C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t66);
|
|
/* 024CA940 */ _t67 = cpu->r[1] + 0x00000018u;
|
|
/* 024CA940 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t67);
|
|
/* 024CA944 */ _t68 = cpu->r[1] + 0x00000028u;
|
|
/* 024CA944 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t68);
|
|
/* 024CA948 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA94C */ _t69 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA94C */ cpu->r[31] = rbrew_read32(cpu->mem, _t69);
|
|
/* 024CA950 */ _t70 = cpu->r[1] + 0x00000010u;
|
|
/* 024CA950 */ cpu->r[30] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024CA954 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CA954 */ _t72 = _t71 & 0x00000001u;
|
|
/* 024CA954 */ if (_t72) goto L_024CA958; // else: addr-0 trap, fall-through
|
|
L_024CA958: ; // 0x24ca958
|
|
/* 024CA958 */ _t73 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024CA958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024CA95C */ cpu->lr = cpu->r[0];
|
|
/* 024CA960 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 024CA964 */ return;
|
|
}
|
|
|
|
// fn_024CA968 @ 0x24ca968
|
|
void Gambit_fn_024CA968(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024CA968: ; // 0x24ca968
|
|
/* 024CA968 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA96C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024CA96C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024CA970 */ cpu->r[3] = 0x00000368u;
|
|
/* 024CA974 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024CA974 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024CA974 */ cpu->r[1] = _t1;
|
|
/* 024CA978 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA980 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA980 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CA980 */ if (_t3) goto L_024CA988; else goto L_024CA984;
|
|
L_024CA984: ; // 0x24ca984
|
|
/* 024CA984 */ Gambit_fn_024CA6FC(cpu);
|
|
L_024CA988: ; // 0x24ca988
|
|
/* 024CA988 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CA98C */ cpu->lr = cpu->r[0];
|
|
/* 024CA990 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA994 */ return;
|
|
}
|
|
|
|
// fn_024CA974 @ 0x24ca974
|
|
void Gambit_fn_024CA974(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024CA974: ; // 0x24ca974
|
|
/* 024CA974 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024CA974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA974 */ cpu->r[1] = _t0;
|
|
/* 024CA978 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CA97C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA980 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA980 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CA980 */ if (_t2) goto L_024CA988; else goto L_024CA984;
|
|
L_024CA984: ; // 0x24ca984
|
|
/* 024CA984 */ Gambit_fn_024CA6FC(cpu);
|
|
L_024CA988: ; // 0x24ca988
|
|
/* 024CA988 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA98C */ cpu->lr = cpu->r[0];
|
|
/* 024CA990 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024CA994 */ return;
|
|
}
|
|
|
|
// fn_024CA998 @ 0x24ca998
|
|
void Gambit_fn_024CA998(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CA998: ; // 0x24ca998
|
|
/* 024CA998 */ cpu->r[0] = cpu->lr;
|
|
/* 024CA99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA99C */ cpu->r[1] = _t0;
|
|
/* 024CA9A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA9A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA9A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA9A8 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CA9AC */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CA9B0 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CA9B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA9B0 */ cpu->r[11] = _t3;
|
|
/* 024CA9B4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CA9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA9BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CA9C0 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CA9C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA9C4 */ if (_t5) goto L_024CA9C8; else goto L_024CA9DC;
|
|
L_024CA9C8: ; // 0x24ca9c8
|
|
/* 024CA9C8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA9CC */ cpu->r[9] = 0x00000001u;
|
|
/* 024CA9D0 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CA9D4 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CA9D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CA9D8 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CA9D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CA9DC: ; // 0x24ca9dc
|
|
/* 024CA9DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA9E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA9E0 */ if (_t9) goto L_024CAA00; else goto L_024CA9E4;
|
|
L_024CA9E4: ; // 0x24ca9e4
|
|
/* 024CA9E4 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CA9E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA9E8 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CA9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA9EC */ cpu->ctr = cpu->r[12];
|
|
/* 024CA9F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA9F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA9FC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9FC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CA9FC */ if (_t13) goto L_024CAA00; else goto L_024CAA04;
|
|
L_024CAA00: ; // 0x24caa00
|
|
/* 024CAA00 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAA04: ; // 0x24caa04
|
|
/* 024CAA04 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAA08 */ _t15 = cpu->r[31] + 0x0000023Cu;
|
|
/* 024CAA08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAA0C */ cpu->lr = cpu->r[0];
|
|
/* 024CAA10 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAA14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAA18 */ return;
|
|
}
|
|
|
|
// fn_024CA99C @ 0x24ca99c
|
|
void Gambit_fn_024CA99C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CA99C: ; // 0x24ca99c
|
|
/* 024CA99C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CA99C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CA99C */ cpu->r[1] = _t0;
|
|
/* 024CA9A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CA9A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CA9A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CA9A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CA9A8 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CA9AC */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CA9B0 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CA9B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CA9B0 */ cpu->r[11] = _t3;
|
|
/* 024CA9B4 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CA9B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CA9BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CA9C0 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CA9C4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9C4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CA9C4 */ if (_t5) goto L_024CA9C8; else goto L_024CA9DC;
|
|
L_024CA9C8: ; // 0x24ca9c8
|
|
/* 024CA9C8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CA9CC */ cpu->r[9] = 0x00000001u;
|
|
/* 024CA9D0 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CA9D4 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CA9D4 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CA9D8 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CA9D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CA9DC: ; // 0x24ca9dc
|
|
/* 024CA9DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CA9E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CA9E0 */ if (_t9) goto L_024CAA00; else goto L_024CA9E4;
|
|
L_024CA9E4: ; // 0x24ca9e4
|
|
/* 024CA9E4 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CA9E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CA9E8 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CA9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CA9EC */ cpu->ctr = cpu->r[12];
|
|
/* 024CA9F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CA9F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CA9F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CA9FC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CA9FC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CA9FC */ if (_t13) goto L_024CAA00; else goto L_024CAA04;
|
|
L_024CAA00: ; // 0x24caa00
|
|
/* 024CAA00 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAA04: ; // 0x24caa04
|
|
/* 024CAA04 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAA08 */ _t15 = cpu->r[31] + 0x0000023Cu;
|
|
/* 024CAA08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAA0C */ cpu->lr = cpu->r[0];
|
|
/* 024CAA10 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAA14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAA18 */ return;
|
|
}
|
|
|
|
// fn_024CAA1C @ 0x24caa1c
|
|
void Gambit_fn_024CAA1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CAA1C: ; // 0x24caa1c
|
|
/* 024CAA1C */ cpu->r[0] = cpu->lr;
|
|
/* 024CAA20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAA20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAA20 */ cpu->r[1] = _t0;
|
|
/* 024CAA24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CAA28 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CAA2C */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAA30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAA34 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAA34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAA34 */ cpu->r[11] = _t3;
|
|
/* 024CAA38 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAA3C */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAA40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAA44 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAA48 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA48 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CAA48 */ if (_t5) goto L_024CAA4C; else goto L_024CAA60;
|
|
L_024CAA4C: ; // 0x24caa4c
|
|
/* 024CAA4C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAA50 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CAA54 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAA58 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAA58 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CAA5C */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAA5C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CAA60: ; // 0x24caa60
|
|
/* 024CAA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAA64 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA64 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CAA64 */ if (_t9) goto L_024CAA84; else goto L_024CAA68;
|
|
L_024CAA68: ; // 0x24caa68
|
|
/* 024CAA68 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CAA6C */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAA6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAA70 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAA74 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAA78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAA80 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA80 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CAA80 */ if (_t13) goto L_024CAA84; else goto L_024CAA88;
|
|
L_024CAA84: ; // 0x24caa84
|
|
/* 024CAA84 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAA88: ; // 0x24caa88
|
|
/* 024CAA88 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAA8C */ _t15 = cpu->r[31] + 0x0000029Cu;
|
|
/* 024CAA8C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAA90 */ cpu->lr = cpu->r[0];
|
|
/* 024CAA94 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAA98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAA9C */ return;
|
|
}
|
|
|
|
// fn_024CAA20 @ 0x24caa20
|
|
void Gambit_fn_024CAA20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CAA20: ; // 0x24caa20
|
|
/* 024CAA20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAA20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAA20 */ cpu->r[1] = _t0;
|
|
/* 024CAA24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CAA28 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CAA2C */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAA30 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAA34 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAA34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAA34 */ cpu->r[11] = _t3;
|
|
/* 024CAA38 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAA3C */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAA40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAA44 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAA48 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA48 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CAA48 */ if (_t5) goto L_024CAA4C; else goto L_024CAA60;
|
|
L_024CAA4C: ; // 0x24caa4c
|
|
/* 024CAA4C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAA50 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CAA54 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAA58 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAA58 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CAA5C */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAA5C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CAA60: ; // 0x24caa60
|
|
/* 024CAA60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAA64 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA64 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CAA64 */ if (_t9) goto L_024CAA84; else goto L_024CAA68;
|
|
L_024CAA68: ; // 0x24caa68
|
|
/* 024CAA68 */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAA68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CAA6C */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAA6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAA70 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAA74 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAA78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAA7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAA80 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAA80 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CAA80 */ if (_t13) goto L_024CAA84; else goto L_024CAA88;
|
|
L_024CAA84: ; // 0x24caa84
|
|
/* 024CAA84 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAA88: ; // 0x24caa88
|
|
/* 024CAA88 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAA8C */ _t15 = cpu->r[31] + 0x0000029Cu;
|
|
/* 024CAA8C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAA90 */ cpu->lr = cpu->r[0];
|
|
/* 024CAA94 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAA94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAA98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAA9C */ return;
|
|
}
|
|
|
|
// fn_024CAAA0 @ 0x24caaa0
|
|
void Gambit_fn_024CAAA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CAAA0: ; // 0x24caaa0
|
|
/* 024CAAA0 */ cpu->r[0] = cpu->lr;
|
|
/* 024CAAA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAAA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAAA4 */ cpu->r[1] = _t0;
|
|
/* 024CAAA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAAA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CAAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CAAB0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAAB4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAAB8 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAAB8 */ cpu->r[11] = _t3;
|
|
/* 024CAABC */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAAC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAAC8 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAACC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAACC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CAACC */ if (_t5) goto L_024CAAD0; else goto L_024CAAE4;
|
|
L_024CAAD0: ; // 0x24caad0
|
|
/* 024CAAD0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAAD4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CAAD8 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAADC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAADC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CAAE0 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAAE0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CAAE4: ; // 0x24caae4
|
|
/* 024CAAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAAE8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAAE8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CAAE8 */ if (_t9) goto L_024CAB08; else goto L_024CAAEC;
|
|
L_024CAAEC: ; // 0x24caaec
|
|
/* 024CAAEC */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAAEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CAAF0 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAAF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAAF4 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAAF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAAFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAB04 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB04 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CAB04 */ if (_t13) goto L_024CAB08; else goto L_024CAB0C;
|
|
L_024CAB08: ; // 0x24cab08
|
|
/* 024CAB08 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAB0C: ; // 0x24cab0c
|
|
/* 024CAB0C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAB10 */ _t15 = cpu->r[31] + 0x000002FCu;
|
|
/* 024CAB10 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAB14 */ cpu->lr = cpu->r[0];
|
|
/* 024CAB18 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAB18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAB1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAB20 */ return;
|
|
}
|
|
|
|
// fn_024CAAA4 @ 0x24caaa4
|
|
void Gambit_fn_024CAAA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CAAA4: ; // 0x24caaa4
|
|
/* 024CAAA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAAA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAAA4 */ cpu->r[1] = _t0;
|
|
/* 024CAAA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAAA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CAAAC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAAAC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CAAB0 */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAAB4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAAB8 */ _t3 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAAB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAAB8 */ cpu->r[11] = _t3;
|
|
/* 024CAABC */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAAC0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAAC8 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAACC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAACC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CAACC */ if (_t5) goto L_024CAAD0; else goto L_024CAAE4;
|
|
L_024CAAD0: ; // 0x24caad0
|
|
/* 024CAAD0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAAD4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CAAD8 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAADC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAADC */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
/* 024CAAE0 */ _t7 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAAE0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
L_024CAAE4: ; // 0x24caae4
|
|
/* 024CAAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAAE8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAAE8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CAAE8 */ if (_t9) goto L_024CAB08; else goto L_024CAAEC;
|
|
L_024CAAEC: ; // 0x24caaec
|
|
/* 024CAAEC */ _t10 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAAEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CAAF0 */ _t11 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAAF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAAF4 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAAF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAAFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAB04 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB04 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CAB04 */ if (_t13) goto L_024CAB08; else goto L_024CAB0C;
|
|
L_024CAB08: ; // 0x24cab08
|
|
/* 024CAB08 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAB0C: ; // 0x24cab0c
|
|
/* 024CAB0C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAB0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CAB10 */ _t15 = cpu->r[31] + 0x000002FCu;
|
|
/* 024CAB10 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 024CAB14 */ cpu->lr = cpu->r[0];
|
|
/* 024CAB18 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAB18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAB1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAB20 */ return;
|
|
}
|
|
|
|
// fn_024CAB24 @ 0x24cab24
|
|
void Gambit_fn_024CAB24(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_024CAB24: ; // 0x24cab24
|
|
/* 024CAB24 */ cpu->r[0] = cpu->lr;
|
|
/* 024CAB28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAB28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAB28 */ cpu->r[1] = _t0;
|
|
/* 024CAB2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAB2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CAB30 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CAB34 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAB34 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CAB38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAB38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CAB3C */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAB40 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAB44 */ _t4 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CAB44 */ cpu->r[11] = _t4;
|
|
/* 024CAB48 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAB4C */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAB54 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAB58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB58 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CAB58 */ if (_t6) goto L_024CAB5C; else goto L_024CAB70;
|
|
L_024CAB5C: ; // 0x24cab5c
|
|
/* 024CAB5C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAB60 */ cpu->r[8] = 0x00000001u;
|
|
/* 024CAB64 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAB68 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAB68 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024CAB6C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAB6C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CAB70: ; // 0x24cab70
|
|
/* 024CAB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAB74 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB74 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CAB74 */ if (_t10) goto L_024CAB94; else goto L_024CAB78;
|
|
L_024CAB78: ; // 0x24cab78
|
|
/* 024CAB78 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAB78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAB7C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAB7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CAB80 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAB84 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAB88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAB90 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB90 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024CAB90 */ if (_t14) goto L_024CAB94; else goto L_024CAB98;
|
|
L_024CAB94: ; // 0x24cab94
|
|
/* 024CAB94 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAB98: ; // 0x24cab98
|
|
/* 024CAB98 */ _t15 = cpu->r[31] + 0x0000035Cu;
|
|
/* 024CAB98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CAB9C */ _t16 = cpu->r[30] + 0x00000584u;
|
|
/* 024CAB9C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 024CABA0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 024CABA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CABA4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 024CABA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024CABA8 */ cpu->lr = cpu->r[0];
|
|
/* 024CABAC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CABAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CABB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CABB4 */ return;
|
|
}
|
|
|
|
// fn_024CAB28 @ 0x24cab28
|
|
void Gambit_fn_024CAB28(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_024CAB28: ; // 0x24cab28
|
|
/* 024CAB28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAB28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAB28 */ cpu->r[1] = _t0;
|
|
/* 024CAB2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAB2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CAB30 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CAB34 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAB34 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CAB38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAB38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CAB3C */ Gambit_fn_024F65FC(cpu);
|
|
/* 024CAB40 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAB44 */ _t4 = cpu->r[11] + 0x000004B4u;
|
|
/* 024CAB44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CAB44 */ cpu->r[11] = _t4;
|
|
/* 024CAB48 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAB4C */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAB54 */ cpu->r[4] = cpu->r[4] + 0x000007D8u;
|
|
/* 024CAB58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB58 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CAB58 */ if (_t6) goto L_024CAB5C; else goto L_024CAB70;
|
|
L_024CAB5C: ; // 0x24cab5c
|
|
/* 024CAB5C */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAB60 */ cpu->r[8] = 0x00000001u;
|
|
/* 024CAB64 */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CAB68 */ _t7 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAB68 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024CAB6C */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAB6C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CAB70: ; // 0x24cab70
|
|
/* 024CAB70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAB74 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB74 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CAB74 */ if (_t10) goto L_024CAB94; else goto L_024CAB78;
|
|
L_024CAB78: ; // 0x24cab78
|
|
/* 024CAB78 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 024CAB78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAB7C */ _t12 = cpu->r[12] + 0x0000006Cu;
|
|
/* 024CAB7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CAB80 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAB84 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAB88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAB90 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAB90 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024CAB90 */ if (_t14) goto L_024CAB94; else goto L_024CAB98;
|
|
L_024CAB94: ; // 0x24cab94
|
|
/* 024CAB94 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAB98: ; // 0x24cab98
|
|
/* 024CAB98 */ _t15 = cpu->r[31] + 0x0000035Cu;
|
|
/* 024CAB98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CAB9C */ _t16 = cpu->r[30] + 0x00000584u;
|
|
/* 024CAB9C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 024CABA0 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 024CABA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CABA4 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 024CABA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024CABA8 */ cpu->lr = cpu->r[0];
|
|
/* 024CABAC */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CABAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CABB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CABB4 */ return;
|
|
}
|
|
|
|
// fn_024CABB8 @ 0x24cabb8
|
|
void Gambit_fn_024CABB8(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_024CABB8: ; // 0x24cabb8
|
|
/* 024CABB8 */ cpu->r[0] = cpu->lr;
|
|
/* 024CABBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CABBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CABBC */ cpu->r[1] = _t0;
|
|
/* 024CABC0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CABC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CABC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024CABC8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CABC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CABCC */ Gambit_fn_02019890(cpu);
|
|
/* 024CABD0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024CABD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CABD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 024CABD8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CABD8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CABD8 */ if (_t5) goto L_024CABDC; else goto L_024CAC64;
|
|
L_024CABDC: ; // 0x24cabdc
|
|
/* 024CABDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024CABE0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CABE4 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 024CABE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CABE8 */ _t7 = cpu->r[11] + 0x000006C0u;
|
|
/* 024CABE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CABE8 */ cpu->r[11] = _t7;
|
|
/* 024CABEC */ _t8 = cpu->r[12] + 0x000002A4u;
|
|
/* 024CABEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024CABF0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CABF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024CABF8 */ cpu->r[4] = cpu->r[4] + 0x000006BCu;
|
|
/* 024CABFC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CABFC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CABFC */ if (_t10) goto L_024CAC00; else goto L_024CAC14;
|
|
L_024CAC00: ; // 0x24cac00
|
|
/* 024CAC00 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CAC04 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CAC08 */ cpu->r[12] = cpu->r[12] + 0x000057E8u;
|
|
/* 024CAC0C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAC0C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024CAC10 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAC10 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
L_024CAC14: ; // 0x24cac14
|
|
/* 024CAC14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAC18 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAC18 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024CAC18 */ if (_t14) goto L_024CAC38; else goto L_024CAC1C;
|
|
L_024CAC1C: ; // 0x24cac1c
|
|
/* 024CAC1C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 024CAC1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CAC20 */ _t16 = cpu->r[8] + 0x00000014u;
|
|
/* 024CAC20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAC24 */ cpu->ctr = cpu->r[9];
|
|
/* 024CAC28 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAC2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAC30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAC34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAC34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CAC34 */ if (_t18) goto L_024CAC38; else goto L_024CAC3C;
|
|
L_024CAC38: ; // 0x24cac38
|
|
/* 024CAC38 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAC3C: ; // 0x24cac3c
|
|
/* 024CAC3C */ _t19 = cpu->r[31] + 0x00000254u;
|
|
/* 024CAC3C */ cpu->r[10] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024CAC40 */ /* nop */
|
|
/* 024CAC44 */ cpu->r[0] = cpu->r[10] ^ 0x0000000Bu;
|
|
/* 024CAC48 */ cpu->r[8] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 024CAC4C */ cpu->r[3] = cpu->r[0] - cpu->r[8];
|
|
/* 024CAC50 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CAC54 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAC54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CAC58 */ cpu->lr = cpu->r[0];
|
|
/* 024CAC5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAC60 */ return;
|
|
L_024CAC64: ; // 0x24cac64
|
|
/* 024CAC64 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAC64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CAC68 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAC68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024CAC6C */ cpu->lr = cpu->r[0];
|
|
/* 024CAC70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAC74 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CAC78 */ return;
|
|
}
|
|
|
|
// fn_024CABBC @ 0x24cabbc
|
|
void Gambit_fn_024CABBC(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_024CABBC: ; // 0x24cabbc
|
|
/* 024CABBC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CABBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CABBC */ cpu->r[1] = _t0;
|
|
/* 024CABC0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CABC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CABC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024CABC8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CABC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CABCC */ Gambit_fn_02019890(cpu);
|
|
/* 024CABD0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024CABD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CABD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u);
|
|
/* 024CABD8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CABD8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CABD8 */ if (_t5) goto L_024CABDC; else goto L_024CAC64;
|
|
L_024CABDC: ; // 0x24cabdc
|
|
/* 024CABDC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024CABE0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CABE4 */ _t6 = cpu->r[12] + 0x00006000u;
|
|
/* 024CABE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CABE8 */ _t7 = cpu->r[11] + 0x000006C0u;
|
|
/* 024CABE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CABE8 */ cpu->r[11] = _t7;
|
|
/* 024CABEC */ _t8 = cpu->r[12] + 0x000002A4u;
|
|
/* 024CABEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024CABF0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CABF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024CABF8 */ cpu->r[4] = cpu->r[4] + 0x000006BCu;
|
|
/* 024CABFC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CABFC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CABFC */ if (_t10) goto L_024CAC00; else goto L_024CAC14;
|
|
L_024CAC00: ; // 0x24cac00
|
|
/* 024CAC00 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CAC04 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CAC08 */ cpu->r[12] = cpu->r[12] + 0x000057E8u;
|
|
/* 024CAC0C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024CAC0C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024CAC10 */ _t12 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAC10 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
L_024CAC14: ; // 0x24cac14
|
|
/* 024CAC14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAC18 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAC18 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024CAC18 */ if (_t14) goto L_024CAC38; else goto L_024CAC1C;
|
|
L_024CAC1C: ; // 0x24cac1c
|
|
/* 024CAC1C */ _t15 = cpu->r[31] + 0x00000004u;
|
|
/* 024CAC1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CAC20 */ _t16 = cpu->r[8] + 0x00000014u;
|
|
/* 024CAC20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAC24 */ cpu->ctr = cpu->r[9];
|
|
/* 024CAC28 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAC2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAC30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAC34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAC34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CAC34 */ if (_t18) goto L_024CAC38; else goto L_024CAC3C;
|
|
L_024CAC38: ; // 0x24cac38
|
|
/* 024CAC38 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAC3C: ; // 0x24cac3c
|
|
/* 024CAC3C */ _t19 = cpu->r[31] + 0x00000254u;
|
|
/* 024CAC3C */ cpu->r[10] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024CAC40 */ /* nop */
|
|
/* 024CAC44 */ cpu->r[0] = cpu->r[10] ^ 0x0000000Bu;
|
|
/* 024CAC48 */ cpu->r[8] = cpu->r[0] + 0xFFFFFFFFu;
|
|
/* 024CAC4C */ cpu->r[3] = cpu->r[0] - cpu->r[8];
|
|
/* 024CAC50 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CAC54 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAC54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CAC58 */ cpu->lr = cpu->r[0];
|
|
/* 024CAC5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAC60 */ return;
|
|
L_024CAC64: ; // 0x24cac64
|
|
/* 024CAC64 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAC64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CAC68 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAC68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024CAC6C */ cpu->lr = cpu->r[0];
|
|
/* 024CAC70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAC74 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CAC78 */ return;
|
|
}
|
|
|
|
// fn_024CAC84 @ 0x24cac84
|
|
void Gambit_fn_024CAC84(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;
|
|
|
|
L_024CAC84: ; // 0x24cac84
|
|
/* 024CAC84 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024CAC84 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAC84 */ cpu->r[1] = _t0;
|
|
/* 024CAC88 */ _t1 = cpu->r[11] + 0x0000591Cu;
|
|
/* 024CAC88 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 024CAC8C */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024CAC8C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CAC90 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CAC90 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024CAC94 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CAC98 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 024CAC98 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024CAC9C */ _t5 = cpu->r[30] + 0x0000019Cu;
|
|
/* 024CAC9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CACA0 */ _t6 = cpu->r[11] + 0x00000004u;
|
|
/* 024CACA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 024CACA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[0]);
|
|
/* 024CACA8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CACA8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CACA8 */ if (_t8) goto L_024CACAC; else goto L_024CAD68;
|
|
L_024CACAC: ; // 0x24cacac
|
|
/* 024CACAC */ cpu->r[3] = cpu->r[30] + 0x00000504u;
|
|
/* 024CACB0 */ cpu->r[4] = 0x00000002u;
|
|
/* 024CACB4 */ Gambit_fn_023A326C(cpu);
|
|
/* 024CACB8 */ cpu->r[31] = 0x100B0000u;
|
|
/* 024CACBC */ cpu->r[31] = cpu->r[31] + 0x00005A2Cu;
|
|
/* 024CACC0 */ _t9 = cpu->r[30] + 0x00000030u;
|
|
/* 024CACC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CACC4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CACC8 */ Gambit_fn_027B7210(cpu);
|
|
/* 024CACCC */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CACD0 */ _t10 = cpu->r[30] + 0x00000030u;
|
|
/* 024CACD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CACD4 */ cpu->r[0] = cpu->r[0] + 0x000056F8u;
|
|
/* 024CACD8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CACD8 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 024CACDC */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CACE0 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024CACE0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024CACE4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 024CACE8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024CACEC */ Gambit_fn_02019890(cpu);
|
|
/* 024CACF0 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024CACF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024CACF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024CACF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CACF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024CACF8 */ if (_t15) goto L_024CACFC; else goto L_024CAD68;
|
|
L_024CACFC: ; // 0x24cacfc
|
|
/* 024CACFC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024CAD00 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024CAD04 */ _t16 = cpu->r[12] + 0x00006000u;
|
|
/* 024CAD04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CAD08 */ _t17 = cpu->r[10] + 0x000006C0u;
|
|
/* 024CAD08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CAD08 */ cpu->r[10] = _t17;
|
|
/* 024CAD0C */ _t18 = cpu->r[12] + 0x000002A4u;
|
|
/* 024CAD0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024CAD10 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024CAD14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CAD18 */ cpu->r[4] = cpu->r[4] + 0x000006BCu;
|
|
/* 024CAD1C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAD1C */ _t20 = _t19 & 0x00000001u;
|
|
/* 024CAD1C */ if (_t20) goto L_024CAD20; else goto L_024CAD34;
|
|
L_024CAD20: ; // 0x24cad20
|
|
/* 024CAD20 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CAD24 */ cpu->r[12] = 0x00000001u;
|
|
/* 024CAD28 */ cpu->r[0] = cpu->r[0] + 0x000057E8u;
|
|
/* 024CAD2C */ _t21 = cpu->r[10] + 0x00000000u;
|
|
/* 024CAD2C */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 024CAD30 */ _t22 = cpu->r[4] + 0x00000000u;
|
|
/* 024CAD30 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
L_024CAD34: ; // 0x24cad34
|
|
/* 024CAD34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CAD38 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAD38 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024CAD38 */ if (_t24) goto L_024CAD58; else goto L_024CAD3C;
|
|
L_024CAD3C: ; // 0x24cad3c
|
|
/* 024CAD3C */ _t25 = cpu->r[31] + 0x00000004u;
|
|
/* 024CAD3C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024CAD40 */ _t26 = cpu->r[11] + 0x00000014u;
|
|
/* 024CAD40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024CAD44 */ cpu->ctr = cpu->r[12];
|
|
/* 024CAD48 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAD4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CAD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CAD54 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAD54 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024CAD54 */ if (_t28) goto L_024CAD58; else goto L_024CAD5C;
|
|
L_024CAD58: ; // 0x24cad58
|
|
/* 024CAD58 */ cpu->r[31] = 0x00000000u;
|
|
L_024CAD5C: ; // 0x24cad5c
|
|
/* 024CAD5C */ cpu->r[3] = cpu->r[31];
|
|
/* 024CAD60 */ cpu->r[4] = cpu->r[30];
|
|
/* 024CAD64 */ Gambit_fn_026CC8D8(cpu);
|
|
L_024CAD68: ; // 0x24cad68
|
|
/* 024CAD68 */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 024CAD68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024CAD6C */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 024CAD6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024CAD70 */ cpu->lr = cpu->r[0];
|
|
/* 024CAD74 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CAD74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024CAD78 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024CAD7C */ return;
|
|
}
|
|
|
|
// fn_024CAD98 @ 0x24cad98
|
|
void Gambit_fn_024CAD98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024CAD98: ; // 0x24cad98
|
|
/* 024CAD98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAD98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAD98 */ cpu->r[1] = _t0;
|
|
/* 024CAD9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAD9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CADA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CADA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CADA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CADA8 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024CADA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CADAC */ Gambit_fn_02398FA8(cpu);
|
|
/* 024CADB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CADB4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CADB4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CADB4 */ if (_t5) goto L_024CADC4; else goto L_024CADB8;
|
|
L_024CADB8: ; // 0x24cadb8
|
|
/* 024CADB8 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024CADBC */ cpu->r[4] = 0x00000002u;
|
|
/* 024CADC0 */ Gambit_fn_023A326C(cpu);
|
|
L_024CADC4: ; // 0x24cadc4
|
|
/* 024CADC4 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024CADC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CADC8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CADC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CADCC */ cpu->lr = cpu->r[0];
|
|
/* 024CADD0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CADD4 */ return;
|
|
}
|
|
|
|
// fn_024CADDC @ 0x24caddc
|
|
void Gambit_fn_024CADDC(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;
|
|
|
|
L_024CADDC: ; // 0x24caddc
|
|
/* 024CADDC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024CADDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CADDC */ cpu->r[1] = _t0;
|
|
/* 024CADE0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024CADE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CADE4 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CADE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CADEC */ cpu->r[5] = 0x00000001u;
|
|
/* 024CADF0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CADF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CADF4 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024CADF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CADF8 */ cpu->r[4] = cpu->r[4] + 0x00005A3Cu;
|
|
/* 024CADFC */ Gambit_fn_02398850(cpu);
|
|
/* 024CAE00 */ _t4 = cpu->r[31] + 0x00000130u;
|
|
/* 024CAE00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CAE04 */ Gambit_fn_02398E88(cpu);
|
|
/* 024CAE08 */ _t5 = cpu->r[31] + 0x000003E0u;
|
|
/* 024CAE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CAE0C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CAE10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u);
|
|
/* 024CAE14 */ _t6 = cpu->r[11] + 0xFFFF85A8u;
|
|
/* 024CAE14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CAE18 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAE18 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024CAE18 */ if (_t8) goto L_024CAE1C; else goto L_024CAE48;
|
|
L_024CAE1C: ; // 0x24cae1c
|
|
/* 024CAE1C */ Gambit_fn_026C84D4(cpu);
|
|
/* 024CAE20 */ _t9 = cpu->r[31] + 0x00000078u;
|
|
/* 024CAE20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CAE24 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAE24 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024CAE28 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CAE2C */ _t11 = cpu->r[31] + 0x00000080u;
|
|
/* 024CAE2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAE30 */ _t12 = cpu->r[10] + 0x0000591Cu;
|
|
/* 024CAE30 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024CAE34 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024CAE34 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024CAE38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024CAE3C */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAE3C */ rbrew_write_f32(cpu->mem, _t14, cpu->f[0]);
|
|
/* 024CAE40 */ Gambit_fn_023C63B0(cpu);
|
|
/* 024CAE44 */ goto L_024CAE70;
|
|
L_024CAE48: ; // 0x24cae48
|
|
/* 024CAE48 */ Gambit_fn_026C8574(cpu);
|
|
/* 024CAE4C */ _t15 = cpu->r[31] + 0x00000078u;
|
|
/* 024CAE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CAE50 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAE50 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 024CAE54 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CAE58 */ _t17 = cpu->r[31] + 0x00000080u;
|
|
/* 024CAE58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CAE5C */ _t18 = cpu->r[10] + 0x0000591Cu;
|
|
/* 024CAE5C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 024CAE60 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 024CAE60 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024CAE64 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024CAE68 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAE68 */ rbrew_write_f32(cpu->mem, _t20, cpu->f[0]);
|
|
/* 024CAE6C */ Gambit_fn_023C63B0(cpu);
|
|
L_024CAE70: ; // 0x24cae70
|
|
/* 024CAE70 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CAE70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CAE74 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAE74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024CAE78 */ cpu->lr = cpu->r[0];
|
|
/* 024CAE7C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024CAE80 */ return;
|
|
}
|
|
|
|
// fn_024CAEC8 @ 0x24caec8
|
|
void Gambit_fn_024CAEC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024CAEC8: ; // 0x24caec8
|
|
/* 024CAEC8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAEC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAEC8 */ cpu->r[1] = _t0;
|
|
/* 024CAECC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAECC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CAED0 */ cpu->r[4] = 0x100B0000u;
|
|
/* 024CAED4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CAED8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024CAEDC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAEDC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CAEE0 */ _t3 = cpu->r[31] + 0x00000130u;
|
|
/* 024CAEE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAEE4 */ cpu->r[4] = cpu->r[4] + 0x00005A44u;
|
|
/* 024CAEE8 */ Gambit_fn_02398850(cpu);
|
|
/* 024CAEEC */ _t4 = cpu->r[31] + 0x00000588u;
|
|
/* 024CAEEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CAEF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CAEF4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAEF4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CAEF4 */ if (_t6) goto L_024CAF14; else goto L_024CAEF8;
|
|
L_024CAEF8: ; // 0x24caef8
|
|
/* 024CAEF8 */ _t7 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024CAEF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CAEFC */ _t8 = cpu->r[31] + 0x0000058Cu;
|
|
/* 024CAEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024CAF00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 024CAF04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CAF04 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024CAF04 */ if (_t10) goto L_024CAF08; else goto L_024CAF14;
|
|
L_024CAF08: ; // 0x24caf08
|
|
/* 024CAF08 */ cpu->r[3] = cpu->r[31] + 0x00000588u;
|
|
/* 024CAF0C */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024CAF10 */ Gambit_fn_028B2FD8(cpu);
|
|
L_024CAF14: ; // 0x24caf14
|
|
/* 024CAF14 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAF18 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CAF18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CAF1C */ cpu->lr = cpu->r[0];
|
|
/* 024CAF20 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CAF24 */ return;
|
|
}
|
|
|
|
// fn_024CAF28 @ 0x24caf28
|
|
void Gambit_fn_024CAF28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024CAF28: ; // 0x24caf28
|
|
/* 024CAF28 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CAF28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CAF2C */ _t1 = cpu->r[12] + 0x00000030u;
|
|
/* 024CAF2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CAF30 */ _t2 = cpu->r[3] + 0x000000E0u;
|
|
/* 024CAF30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CAF34 */ _t3 = cpu->r[12] + 0x0000007Cu;
|
|
/* 024CAF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CAF38 */ cpu->ctr = cpu->r[0];
|
|
/* 024CAF3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CAF40 @ 0x24caf40
|
|
void Gambit_fn_024CAF40(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_024CAF40: ; // 0x24caf40
|
|
/* 024CAF40 */ cpu->r[0] = cpu->lr;
|
|
/* 024CAF44 */ cpu->r[3] = 0x101F0000u;
|
|
/* 024CAF48 */ cpu->r[3] = cpu->r[3] + 0xFFFF8BBCu;
|
|
/* 024CAF4C */ cpu->r[6] = 0x101F0000u;
|
|
/* 024CAF50 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024CAF54 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024CAF58 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024CAF5C */ cpu->r[8] = 0x101F0000u;
|
|
/* 024CAF60 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024CAF64 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024CAF64 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024CAF68 */ cpu->r[9] = cpu->r[9] + 0x000057F8u;
|
|
/* 024CAF6C */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAF6C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024CAF6C */ cpu->r[1] = _t1;
|
|
/* 024CAF70 */ _t2 = cpu->r[3] + 0x00000008u;
|
|
/* 024CAF70 */ rbrew_write32(cpu->mem, _t2, cpu->r[9]);
|
|
/* 024CAF74 */ cpu->r[12] = cpu->r[12] + 0xFFFF8BA8u;
|
|
/* 024CAF78 */ _t3 = cpu->r[8] + 0xFFFF8B90u;
|
|
/* 024CAF78 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]);
|
|
/* 024CAF78 */ cpu->r[8] = _t3;
|
|
/* 024CAF7C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CAF80 */ _t4 = cpu->r[12] + 0x00000004u;
|
|
/* 024CAF80 */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024CAF84 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024CAF88 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024CAF8C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024CAF8C */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024CAF90 */ cpu->r[7] = cpu->r[7] + 0x00005A48u;
|
|
/* 024CAF94 */ _t6 = cpu->r[11] + 0xFFFF8BA0u;
|
|
/* 024CAF94 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]);
|
|
/* 024CAF94 */ cpu->r[11] = _t6;
|
|
/* 024CAF98 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024CAF9C */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 024CAF9C */ rbrew_write32(cpu->mem, _t7, cpu->r[5]);
|
|
/* 024CAFA0 */ cpu->r[8] = 0x00000002u;
|
|
/* 024CAFA4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024CAFA4 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 024CAFA8 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 024CAFA8 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 024CAFAC */ cpu->r[10] = cpu->r[10] + 0x000056F8u;
|
|
/* 024CAFB0 */ _t10 = cpu->r[6] + 0xFFFF8B98u;
|
|
/* 024CAFB0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024CAFB0 */ cpu->r[6] = _t10;
|
|
/* 024CAFB4 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024CAFB8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAFB8 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]);
|
|
/* 024CAFBC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAFBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CAFC0 */ cpu->r[11] = cpu->r[11] + 0xFFFFB8FCu;
|
|
/* 024CAFC4 */ _t13 = cpu->r[6] + 0x00000004u;
|
|
/* 024CAFC4 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 024CAFC8 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 024CAFC8 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024CAFCC */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CAFCC */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 024CAFD0 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024CAFD4 */ _t16 = cpu->r[6] + 0xFFFF8BB0u;
|
|
/* 024CAFD4 */ rbrew_write32(cpu->mem, _t16, cpu->r[5]);
|
|
/* 024CAFD4 */ cpu->r[6] = _t16;
|
|
/* 024CAFD8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024CAFDC */ _t17 = cpu->r[6] + 0x00000004u;
|
|
/* 024CAFDC */ rbrew_write32(cpu->mem, _t17, cpu->r[4]);
|
|
/* 024CAFE0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024CAFE4 */ _t18 = cpu->r[3] + 0x00000010u;
|
|
/* 024CAFE4 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
/* 024CAFE8 */ _t19 = cpu->r[12] + 0xFFFF8BB8u;
|
|
/* 024CAFE8 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024CAFEC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024CAFF0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024CAFF4 */ cpu->r[3] = cpu->r[3] + 0x00006498u;
|
|
/* 024CAFF8 */ Gambit_fn_02C83090(cpu);
|
|
/* 024CAFFC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CB000 */ cpu->lr = cpu->r[0];
|
|
/* 024CB004 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB008 */ return;
|
|
}
|
|
|
|
// fn_024CAF6C @ 0x24caf6c
|
|
void Gambit_fn_024CAF6C(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_024CAF6C: ; // 0x24caf6c
|
|
/* 024CAF6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CAF6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CAF6C */ cpu->r[1] = _t0;
|
|
/* 024CAF70 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024CAF70 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024CAF74 */ cpu->r[12] = cpu->r[12] + 0xFFFF8BA8u;
|
|
/* 024CAF78 */ _t2 = cpu->r[8] + 0xFFFF8B90u;
|
|
/* 024CAF78 */ rbrew_write32(cpu->mem, _t2, cpu->r[5]);
|
|
/* 024CAF78 */ cpu->r[8] = _t2;
|
|
/* 024CAF7C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CAF80 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024CAF80 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024CAF84 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024CAF88 */ cpu->r[11] = 0x101F0000u;
|
|
/* 024CAF8C */ _t4 = cpu->r[8] + 0x00000004u;
|
|
/* 024CAF8C */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 024CAF90 */ cpu->r[7] = cpu->r[7] + 0x00005A48u;
|
|
/* 024CAF94 */ _t5 = cpu->r[11] + 0xFFFF8BA0u;
|
|
/* 024CAF94 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 024CAF94 */ cpu->r[11] = _t5;
|
|
/* 024CAF98 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 024CAF9C */ _t6 = cpu->r[12] + 0x00000000u;
|
|
/* 024CAF9C */ rbrew_write32(cpu->mem, _t6, cpu->r[5]);
|
|
/* 024CAFA0 */ cpu->r[8] = 0x00000002u;
|
|
/* 024CAFA4 */ _t7 = cpu->r[11] + 0x00000004u;
|
|
/* 024CAFA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 024CAFA8 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 024CAFA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 024CAFAC */ cpu->r[10] = cpu->r[10] + 0x000056F8u;
|
|
/* 024CAFB0 */ _t9 = cpu->r[6] + 0xFFFF8B98u;
|
|
/* 024CAFB0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024CAFB0 */ cpu->r[6] = _t9;
|
|
/* 024CAFB4 */ cpu->r[11] = 0x024D0000u;
|
|
/* 024CAFB8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAFB8 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 024CAFBC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024CAFBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CAFC0 */ cpu->r[11] = cpu->r[11] + 0xFFFFB8FCu;
|
|
/* 024CAFC4 */ _t12 = cpu->r[6] + 0x00000004u;
|
|
/* 024CAFC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 024CAFC8 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 024CAFC8 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 024CAFCC */ _t14 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CAFCC */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 024CAFD0 */ cpu->r[6] = 0x101F0000u;
|
|
/* 024CAFD4 */ _t15 = cpu->r[6] + 0xFFFF8BB0u;
|
|
/* 024CAFD4 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 024CAFD4 */ cpu->r[6] = _t15;
|
|
/* 024CAFD8 */ cpu->r[0] = 0x00000004u;
|
|
/* 024CAFDC */ _t16 = cpu->r[6] + 0x00000004u;
|
|
/* 024CAFDC */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 024CAFE0 */ cpu->r[12] = 0x101F0000u;
|
|
/* 024CAFE4 */ _t17 = cpu->r[3] + 0x00000010u;
|
|
/* 024CAFE4 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 024CAFE8 */ _t18 = cpu->r[12] + 0xFFFF8BB8u;
|
|
/* 024CAFE8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024CAFEC */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024CAFF0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024CAFF4 */ cpu->r[3] = cpu->r[3] + 0x00006498u;
|
|
/* 024CAFF8 */ Gambit_fn_02C83090(cpu);
|
|
/* 024CAFFC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024CAFFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CB000 */ cpu->lr = cpu->r[0];
|
|
/* 024CB004 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB008 */ return;
|
|
}
|
|
|
|
// fn_024CB00C @ 0x24cb00c
|
|
void Gambit_fn_024CB00C(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_024CB00C: ; // 0x24cb00c
|
|
/* 024CB00C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB010 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB010 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB010 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB010 */ goto L_024CB014;
|
|
L_024CB014: ; // 0x24cb014
|
|
/* 024CB014 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB018 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB018 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB018 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB018 */ goto L_024CB01C;
|
|
L_024CB01C: ; // 0x24cb01c
|
|
/* 024CB01C */ 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_024CB020 @ 0x24cb020
|
|
void Gambit_fn_024CB020(CPUState* cpu) {
|
|
L_024CB020: ; // 0x24cb020
|
|
/* 024CB020 */ return;
|
|
}
|
|
|
|
// fn_024CB024 @ 0x24cb024
|
|
void Gambit_fn_024CB024(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_024CB024: ; // 0x24cb024
|
|
/* 024CB024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB028 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB028 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB028 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB028 */ goto L_024CB02C;
|
|
L_024CB02C: ; // 0x24cb02c
|
|
/* 024CB02C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB02C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB030 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB030 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB030 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB030 */ goto L_024CB034;
|
|
L_024CB034: ; // 0x24cb034
|
|
/* 024CB034 */ 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_024CB038 @ 0x24cb038
|
|
void Gambit_fn_024CB038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024CB038: ; // 0x24cb038
|
|
/* 024CB038 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024CB038 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB03C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 024CB03C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB040 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 024CB044 */ cpu->r[11] = 0x10110000u;
|
|
/* 024CB048 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 024CB048 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024CB04C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024CB04C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 024CB050 */ return;
|
|
}
|
|
|
|
// fn_024CB054 @ 0x24cb054
|
|
void Gambit_fn_024CB054(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_024CB054: ; // 0x24cb054
|
|
/* 024CB054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB058 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB058 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB058 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB058 */ goto L_024CB05C;
|
|
L_024CB05C: ; // 0x24cb05c
|
|
/* 024CB05C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB060 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB060 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB060 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB060 */ goto L_024CB064;
|
|
L_024CB064: ; // 0x24cb064
|
|
/* 024CB064 */ 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_024CB068 @ 0x24cb068
|
|
void Gambit_fn_024CB068(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_024CB068: ; // 0x24cb068
|
|
/* 024CB068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB06C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB06C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB06C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB06C */ goto L_024CB070;
|
|
L_024CB070: ; // 0x24cb070
|
|
/* 024CB070 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB074 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB074 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB074 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB074 */ goto L_024CB078;
|
|
L_024CB078: ; // 0x24cb078
|
|
/* 024CB078 */ 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_024CB07C @ 0x24cb07c
|
|
void Gambit_fn_024CB07C(CPUState* cpu) {
|
|
L_024CB07C: ; // 0x24cb07c
|
|
/* 024CB07C */ return;
|
|
}
|
|
|
|
// fn_024CB080 @ 0x24cb080
|
|
void Gambit_fn_024CB080(CPUState* cpu) {
|
|
L_024CB080: ; // 0x24cb080
|
|
/* 024CB080 */ return;
|
|
}
|
|
|
|
// fn_024CB084 @ 0x24cb084
|
|
void Gambit_fn_024CB084(CPUState* cpu) {
|
|
L_024CB084: ; // 0x24cb084
|
|
/* 024CB084 */ return;
|
|
}
|
|
|
|
// fn_024CB088 @ 0x24cb088
|
|
void Gambit_fn_024CB088(CPUState* cpu) {
|
|
L_024CB088: ; // 0x24cb088
|
|
/* 024CB088 */ return;
|
|
}
|
|
|
|
// fn_024CB08C @ 0x24cb08c
|
|
void Gambit_fn_024CB08C(CPUState* cpu) {
|
|
L_024CB08C: ; // 0x24cb08c
|
|
/* 024CB08C */ return;
|
|
}
|
|
|
|
// fn_024CB090 @ 0x24cb090
|
|
void Gambit_fn_024CB090(CPUState* cpu) {
|
|
L_024CB090: ; // 0x24cb090
|
|
/* 024CB090 */ return;
|
|
}
|
|
|
|
// fn_024CB094 @ 0x24cb094
|
|
void Gambit_fn_024CB094(CPUState* cpu) {
|
|
L_024CB094: ; // 0x24cb094
|
|
/* 024CB094 */ return;
|
|
}
|
|
|
|
// fn_024CB098 @ 0x24cb098
|
|
void Gambit_fn_024CB098(CPUState* cpu) {
|
|
L_024CB098: ; // 0x24cb098
|
|
/* 024CB098 */ return;
|
|
}
|
|
|
|
// fn_024CB09C @ 0x24cb09c
|
|
void Gambit_fn_024CB09C(CPUState* cpu) {
|
|
L_024CB09C: ; // 0x24cb09c
|
|
/* 024CB09C */ return;
|
|
}
|
|
|
|
// fn_024CB0A0 @ 0x24cb0a0
|
|
void Gambit_fn_024CB0A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB0A0: ; // 0x24cb0a0
|
|
/* 024CB0A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB0A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB0A4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB0A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB0A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB0A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CB0A8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CB0A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB0A8 */ goto L_024CB0AC;
|
|
L_024CB0AC: ; // 0x24cb0ac
|
|
/* 024CB0AC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB0AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB0B0 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 024CB0B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB0B4 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB0B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB0BC @ 0x24cb0bc
|
|
void Gambit_fn_024CB0BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB0BC: ; // 0x24cb0bc
|
|
/* 024CB0BC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB0BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB0C0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB0C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB0C4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB0C4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CB0C4 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CB0C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB0C4 */ goto L_024CB0C8;
|
|
L_024CB0C8: ; // 0x24cb0c8
|
|
/* 024CB0C8 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB0C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB0CC */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 024CB0CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB0D0 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB0D4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB0D8 @ 0x24cb0d8
|
|
void Gambit_fn_024CB0D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB0D8: ; // 0x24cb0d8
|
|
/* 024CB0D8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB0D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB0DC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB0E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB0E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CB0E0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CB0E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB0E0 */ goto L_024CB0E4;
|
|
L_024CB0E4: ; // 0x24cb0e4
|
|
/* 024CB0E4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB0E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB0E8 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 024CB0E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB0EC */ cpu->ctr = cpu->r[0];
|
|
/* 024CB0F0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB0F4 @ 0x24cb0f4
|
|
void Gambit_fn_024CB0F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CB0F4: ; // 0x24cb0f4
|
|
/* 024CB0F4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB0F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB0F8 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 024CB0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB0FC */ cpu->ctr = cpu->r[0];
|
|
/* 024CB100 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB104 @ 0x24cb104
|
|
void Gambit_fn_024CB104(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024CB104: ; // 0x24cb104
|
|
/* 024CB104 */ cpu->r[0] = cpu->lr;
|
|
/* 024CB108 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB108 */ cpu->r[1] = _t0;
|
|
/* 024CB10C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB10C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CB110 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB114 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB114 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB118 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CB118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CB11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024CB120 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB120 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CB120 */ if (_t5) goto L_024CB124; else goto L_024CB140;
|
|
L_024CB124: ; // 0x24cb124
|
|
/* 024CB124 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024CB124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CB128 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024CB128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB12C */ cpu->ctr = cpu->r[0];
|
|
/* 024CB130 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CB134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB138 */ cpu->r[0] = 0x00000002u;
|
|
/* 024CB13C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CB13C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CB140: ; // 0x24cb140
|
|
/* 024CB140 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CB144 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB144 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CB148 */ cpu->lr = cpu->r[0];
|
|
/* 024CB14C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB150 */ return;
|
|
}
|
|
|
|
// fn_024CB108 @ 0x24cb108
|
|
void Gambit_fn_024CB108(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024CB108: ; // 0x24cb108
|
|
/* 024CB108 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB108 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB108 */ cpu->r[1] = _t0;
|
|
/* 024CB10C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB10C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CB110 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB114 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB114 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB118 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CB118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CB11C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024CB120 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB120 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CB120 */ if (_t5) goto L_024CB124; else goto L_024CB140;
|
|
L_024CB124: ; // 0x24cb124
|
|
/* 024CB124 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024CB124 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CB128 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024CB128 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB12C */ cpu->ctr = cpu->r[0];
|
|
/* 024CB130 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CB134 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB138 */ cpu->r[0] = 0x00000002u;
|
|
/* 024CB13C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CB13C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CB140: ; // 0x24cb140
|
|
/* 024CB140 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB140 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CB144 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB144 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CB148 */ cpu->lr = cpu->r[0];
|
|
/* 024CB14C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB150 */ return;
|
|
}
|
|
|
|
// fn_024CB15C @ 0x24cb15c
|
|
void Gambit_fn_024CB15C(CPUState* cpu) {
|
|
L_024CB15C: ; // 0x24cb15c
|
|
/* 024CB15C */ return;
|
|
}
|
|
|
|
// fn_024CB160 @ 0x24cb160
|
|
void Gambit_fn_024CB160(CPUState* cpu) {
|
|
L_024CB160: ; // 0x24cb160
|
|
/* 024CB160 */ return;
|
|
}
|
|
|
|
// fn_024CB164 @ 0x24cb164
|
|
void Gambit_fn_024CB164(CPUState* cpu) {
|
|
L_024CB164: ; // 0x24cb164
|
|
/* 024CB164 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB168 */ return;
|
|
}
|
|
|
|
// fn_024CB16C @ 0x24cb16c
|
|
void Gambit_fn_024CB16C(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_024CB16C: ; // 0x24cb16c
|
|
/* 024CB16C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB170 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB170 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB170 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB170 */ goto L_024CB174;
|
|
L_024CB174: ; // 0x24cb174
|
|
/* 024CB174 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB178 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB178 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB178 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB178 */ goto L_024CB17C;
|
|
L_024CB17C: ; // 0x24cb17c
|
|
/* 024CB17C */ 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_024CB180 @ 0x24cb180
|
|
void Gambit_fn_024CB180(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CB180: ; // 0x24cb180
|
|
/* 024CB180 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB180 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB184 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 024CB184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB188 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB18C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB190 @ 0x24cb190
|
|
void Gambit_fn_024CB190(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CB190: ; // 0x24cb190
|
|
/* 024CB190 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB190 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB194 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024CB194 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB198 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB19C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB1A0 @ 0x24cb1a0
|
|
void Gambit_fn_024CB1A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CB1A0: ; // 0x24cb1a0
|
|
/* 024CB1A0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB1A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB1A4 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024CB1A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB1A8 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB1AC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB1B0 @ 0x24cb1b0
|
|
void Gambit_fn_024CB1B0(CPUState* cpu) {
|
|
L_024CB1B0: ; // 0x24cb1b0
|
|
/* 024CB1B0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB1B4 */ return;
|
|
}
|
|
|
|
// fn_024CB1B8 @ 0x24cb1b8
|
|
void Gambit_fn_024CB1B8(CPUState* cpu) {
|
|
L_024CB1B8: ; // 0x24cb1b8
|
|
/* 024CB1B8 */ return;
|
|
}
|
|
|
|
// fn_024CB1BC @ 0x24cb1bc
|
|
void Gambit_fn_024CB1BC(CPUState* cpu) {
|
|
L_024CB1BC: ; // 0x24cb1bc
|
|
/* 024CB1BC */ return;
|
|
}
|
|
|
|
// fn_024CB1C0 @ 0x24cb1c0
|
|
void Gambit_fn_024CB1C0(CPUState* cpu) {
|
|
L_024CB1C0: ; // 0x24cb1c0
|
|
/* 024CB1C0 */ return;
|
|
}
|
|
|
|
// fn_024CB1C4 @ 0x24cb1c4
|
|
void Gambit_fn_024CB1C4(CPUState* cpu) {
|
|
L_024CB1C4: ; // 0x24cb1c4
|
|
/* 024CB1C4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB1C8 */ return;
|
|
}
|
|
|
|
// fn_024CB1CC @ 0x24cb1cc
|
|
void Gambit_fn_024CB1CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB1CC: ; // 0x24cb1cc
|
|
/* 024CB1CC */ cpu->r[10] = 0x101F0000u;
|
|
/* 024CB1D0 */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 024CB1D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB1D0 */ cpu->r[10] = _t0;
|
|
/* 024CB1D4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024CB1D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024CB1D8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024CB1D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CB1DC */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB1DC */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024CB1E0 */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 024CB1E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB1E4 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024CB1E4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CB1E8 */ return;
|
|
}
|
|
|
|
// fn_024CB1EC @ 0x24cb1ec
|
|
void Gambit_fn_024CB1EC(CPUState* cpu) {
|
|
L_024CB1EC: ; // 0x24cb1ec
|
|
/* 024CB1EC */ return;
|
|
}
|
|
|
|
// fn_024CB1F0 @ 0x24cb1f0
|
|
void Gambit_fn_024CB1F0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024CB1F0: ; // 0x24cb1f0
|
|
/* 024CB1F0 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 024CB1F0 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CB1F4 */ return;
|
|
}
|
|
|
|
// fn_024CB1F8 @ 0x24cb1f8
|
|
void Gambit_fn_024CB1F8(CPUState* cpu) {
|
|
L_024CB1F8: ; // 0x24cb1f8
|
|
/* 024CB1F8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB1FC */ return;
|
|
}
|
|
|
|
// fn_024CB200 @ 0x24cb200
|
|
void Gambit_fn_024CB200(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CB200: ; // 0x24cb200
|
|
/* 024CB200 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB204 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 024CB204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB208 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB20C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CB210 @ 0x24cb210
|
|
void Gambit_fn_024CB210(CPUState* cpu) {
|
|
L_024CB210: ; // 0x24cb210
|
|
/* 024CB210 */ return;
|
|
}
|
|
|
|
// fn_024CB214 @ 0x24cb214
|
|
void Gambit_fn_024CB214(CPUState* cpu) {
|
|
L_024CB214: ; // 0x24cb214
|
|
/* 024CB214 */ return;
|
|
}
|
|
|
|
// fn_024CB218 @ 0x24cb218
|
|
void Gambit_fn_024CB218(CPUState* cpu) {
|
|
L_024CB218: ; // 0x24cb218
|
|
/* 024CB218 */ return;
|
|
}
|
|
|
|
// fn_024CB21C @ 0x24cb21c
|
|
void Gambit_fn_024CB21C(CPUState* cpu) {
|
|
L_024CB21C: ; // 0x24cb21c
|
|
/* 024CB21C */ return;
|
|
}
|
|
|
|
// fn_024CB220 @ 0x24cb220
|
|
void Gambit_fn_024CB220(CPUState* cpu) {
|
|
L_024CB220: ; // 0x24cb220
|
|
/* 024CB220 */ return;
|
|
}
|
|
|
|
// fn_024CB224 @ 0x24cb224
|
|
void Gambit_fn_024CB224(CPUState* cpu) {
|
|
L_024CB224: ; // 0x24cb224
|
|
/* 024CB224 */ return;
|
|
}
|
|
|
|
// fn_024CB228 @ 0x24cb228
|
|
void Gambit_fn_024CB228(CPUState* cpu) {
|
|
L_024CB228: ; // 0x24cb228
|
|
/* 024CB228 */ return;
|
|
}
|
|
|
|
// fn_024CB22C @ 0x24cb22c
|
|
void Gambit_fn_024CB22C(CPUState* cpu) {
|
|
L_024CB22C: ; // 0x24cb22c
|
|
/* 024CB22C */ return;
|
|
}
|
|
|
|
// fn_024CB230 @ 0x24cb230
|
|
void Gambit_fn_024CB230(CPUState* cpu) {
|
|
L_024CB230: ; // 0x24cb230
|
|
/* 024CB230 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB234 */ return;
|
|
}
|
|
|
|
// fn_024CB238 @ 0x24cb238
|
|
void Gambit_fn_024CB238(CPUState* cpu) {
|
|
L_024CB238: ; // 0x24cb238
|
|
/* 024CB238 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CB23C */ return;
|
|
}
|
|
|
|
// fn_024CB240 @ 0x24cb240
|
|
void Gambit_fn_024CB240(CPUState* cpu) {
|
|
L_024CB240: ; // 0x24cb240
|
|
/* 024CB240 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CB244 */ return;
|
|
}
|
|
|
|
// fn_024CB248 @ 0x24cb248
|
|
void Gambit_fn_024CB248(CPUState* cpu) {
|
|
L_024CB248: ; // 0x24cb248
|
|
/* 024CB248 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CB24C */ return;
|
|
}
|
|
|
|
// fn_024CB250 @ 0x24cb250
|
|
void Gambit_fn_024CB250(CPUState* cpu) {
|
|
L_024CB250: ; // 0x24cb250
|
|
/* 024CB250 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CB254 */ return;
|
|
}
|
|
|
|
// fn_024CB258 @ 0x24cb258
|
|
void Gambit_fn_024CB258(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024CB258: ; // 0x24cb258
|
|
/* 024CB258 */ _t0 = cpu->r[3] + 0x000000E4u;
|
|
/* 024CB258 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 024CB25C */ return;
|
|
}
|
|
|
|
// fn_024CB260 @ 0x24cb260
|
|
void Gambit_fn_024CB260(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB260: ; // 0x24cb260
|
|
/* 024CB260 */ _t0 = cpu->r[4] + 0x00000078u;
|
|
/* 024CB260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB264 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024CB264 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024CB268 */ _t2 = cpu->r[4] + 0x0000007Cu;
|
|
/* 024CB268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CB26C */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024CB26C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CB270 */ _t4 = cpu->r[4] + 0x00000080u;
|
|
/* 024CB270 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB274 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024CB274 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024CB278 */ return;
|
|
}
|
|
|
|
// fn_024CB27C @ 0x24cb27c
|
|
void Gambit_fn_024CB27C(CPUState* cpu) {
|
|
L_024CB27C: ; // 0x24cb27c
|
|
/* 024CB27C */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB280 */ return;
|
|
}
|
|
|
|
// fn_024CB284 @ 0x24cb284
|
|
void Gambit_fn_024CB284(CPUState* cpu) {
|
|
L_024CB284: ; // 0x24cb284
|
|
/* 024CB284 */ cpu->r[3] = 0x100B0000u;
|
|
/* 024CB288 */ cpu->r[3] = cpu->r[3] + 0x00005808u;
|
|
/* 024CB28C */ return;
|
|
}
|
|
|
|
// fn_024CB290 @ 0x24cb290
|
|
void Gambit_fn_024CB290(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_024CB290: ; // 0x24cb290
|
|
/* 024CB290 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB294 */ _t0 = cpu->r[8] + 0x000004B0u;
|
|
/* 024CB294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB298 */ cpu->r[6] = 0x101D0000u;
|
|
/* 024CB29C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024CB2A0 */ cpu->r[6] = cpu->r[6] + 0x000007DCu;
|
|
/* 024CB2A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB2A4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CB2A4 */ if (_t2) goto L_024CB2A8; else goto L_024CB2C0;
|
|
L_024CB2A8: ; // 0x24cb2a8
|
|
/* 024CB2A8 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CB2AC */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB2B0 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB2B4 */ cpu->r[5] = cpu->r[5] + 0x000057D8u;
|
|
/* 024CB2B8 */ _t3 = cpu->r[8] + 0x000004B0u;
|
|
/* 024CB2B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CB2BC */ _t4 = cpu->r[6] + 0x00000000u;
|
|
/* 024CB2BC */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
L_024CB2C0: ; // 0x24cb2c0
|
|
/* 024CB2C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 024CB2C4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB2C4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CB2C4 */ if (_t6) goto L_024CB2C8; else goto L_024CB2D0;
|
|
L_024CB2C8: ; // 0x24cb2c8
|
|
/* 024CB2C8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB2CC */ return;
|
|
L_024CB2D0: ; // 0x24cb2d0
|
|
/* 024CB2D0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024CB2D4 */ _t7 = cpu->r[10] + 0xFFFFE6DCu;
|
|
/* 024CB2D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB2D8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024CB2E0 */ cpu->r[8] = cpu->r[8] + 0x000007CCu;
|
|
/* 024CB2E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB2E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CB2E4 */ if (_t9) goto L_024CB2E8; else goto L_024CB300;
|
|
L_024CB2E8: ; // 0x24cb2e8
|
|
/* 024CB2E8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CB2EC */ cpu->r[7] = 0x00000001u;
|
|
/* 024CB2F0 */ cpu->r[6] = 0x101D0000u;
|
|
/* 024CB2F4 */ cpu->r[0] = cpu->r[0] + 0x000057A8u;
|
|
/* 024CB2F8 */ _t10 = cpu->r[6] + 0xFFFFE6DCu;
|
|
/* 024CB2F8 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 024CB2FC */ _t11 = cpu->r[8] + 0x00000000u;
|
|
/* 024CB2FC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024CB300: ; // 0x24cb300
|
|
/* 024CB300 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 024CB304 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB304 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CB304 */ if (_t13) goto L_024CB308; else goto L_024CB310;
|
|
L_024CB308: ; // 0x24cb308
|
|
/* 024CB308 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB30C */ goto L_024CB408;
|
|
L_024CB310: ; // 0x24cb310
|
|
/* 024CB310 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB314 */ _t14 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 024CB314 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CB318 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024CB31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB320 */ cpu->r[10] = cpu->r[10] + 0xFFFFFF40u;
|
|
/* 024CB324 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB324 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024CB324 */ if (_t16) goto L_024CB328; else goto L_024CB340;
|
|
L_024CB328: ; // 0x24cb328
|
|
/* 024CB328 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024CB32C */ cpu->r[5] = 0x00000001u;
|
|
/* 024CB330 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB334 */ cpu->r[7] = cpu->r[7] + 0x00005778u;
|
|
/* 024CB338 */ _t17 = cpu->r[12] + 0xFFFFDDF0u;
|
|
/* 024CB338 */ rbrew_write32(cpu->mem, _t17, cpu->r[5]);
|
|
/* 024CB33C */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 024CB33C */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
L_024CB340: ; // 0x24cb340
|
|
/* 024CB340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024CB344 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB344 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024CB344 */ if (_t20) goto L_024CB348; else goto L_024CB350;
|
|
L_024CB348: ; // 0x24cb348
|
|
/* 024CB348 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB34C */ goto L_024CB408;
|
|
L_024CB350: ; // 0x24cb350
|
|
/* 024CB350 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CB354 */ _t21 = cpu->r[11] + 0xFFFFDA10u;
|
|
/* 024CB354 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CB358 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB35C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CB360 */ cpu->r[12] = cpu->r[12] + 0xFFFFFBBCu;
|
|
/* 024CB364 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB364 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024CB364 */ if (_t23) goto L_024CB368; else goto L_024CB380;
|
|
L_024CB368: ; // 0x24cb368
|
|
/* 024CB368 */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CB36C */ cpu->r[9] = 0x00000001u;
|
|
/* 024CB370 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB374 */ cpu->r[10] = cpu->r[10] + 0x00005768u;
|
|
/* 024CB378 */ _t24 = cpu->r[8] + 0xFFFFDA10u;
|
|
/* 024CB378 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]);
|
|
/* 024CB37C */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 024CB37C */ rbrew_write32(cpu->mem, _t25, cpu->r[10]);
|
|
L_024CB380: ; // 0x24cb380
|
|
/* 024CB380 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024CB384 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB384 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024CB384 */ if (_t27) goto L_024CB388; else goto L_024CB390;
|
|
L_024CB388: ; // 0x24cb388
|
|
/* 024CB388 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB38C */ goto L_024CB404;
|
|
L_024CB390: ; // 0x24cb390
|
|
/* 024CB390 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024CB394 */ _t28 = cpu->r[10] + 0xFFFFD4E8u;
|
|
/* 024CB394 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024CB394 */ cpu->r[10] = _t28;
|
|
/* 024CB398 */ cpu->r[7] = 0x101D0000u;
|
|
/* 024CB39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CB3A0 */ cpu->r[7] = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 024CB3A4 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB3A4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024CB3A4 */ if (_t30) goto L_024CB3A8; else goto L_024CB3BC;
|
|
L_024CB3A8: ; // 0x24cb3a8
|
|
/* 024CB3A8 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CB3AC */ cpu->r[12] = 0x00000001u;
|
|
/* 024CB3B0 */ cpu->r[0] = cpu->r[0] + 0x00005758u;
|
|
/* 024CB3B4 */ _t31 = cpu->r[10] + 0x00000000u;
|
|
/* 024CB3B4 */ rbrew_write32(cpu->mem, _t31, cpu->r[12]);
|
|
/* 024CB3B8 */ _t32 = cpu->r[7] + 0x00000000u;
|
|
/* 024CB3B8 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
L_024CB3BC: ; // 0x24cb3bc
|
|
/* 024CB3BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]);
|
|
/* 024CB3C0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB3C0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 024CB3C0 */ if (_t34) goto L_024CB3C4; else goto L_024CB3CC;
|
|
L_024CB3C4: ; // 0x24cb3c4
|
|
/* 024CB3C4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB3C8 */ goto L_024CB404;
|
|
L_024CB3CC: ; // 0x24cb3cc
|
|
/* 024CB3CC */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB3D0 */ _t35 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 024CB3D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024CB3D0 */ cpu->r[8] = _t35;
|
|
/* 024CB3D4 */ cpu->r[6] = 0x101D0000u;
|
|
/* 024CB3D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 024CB3DC */ cpu->r[6] = cpu->r[6] + 0xFFFFD4E4u;
|
|
/* 024CB3E0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB3E0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024CB3E0 */ if (_t37) goto L_024CB3E4; else goto L_024CB3F8;
|
|
L_024CB3E4: ; // 0x24cb3e4
|
|
/* 024CB3E4 */ cpu->r[9] = 0x100B0000u;
|
|
/* 024CB3E8 */ cpu->r[7] = 0x00000001u;
|
|
/* 024CB3EC */ cpu->r[9] = cpu->r[9] + 0x000056E8u;
|
|
/* 024CB3F0 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 024CB3F0 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]);
|
|
/* 024CB3F4 */ _t39 = cpu->r[6] + 0x00000000u;
|
|
/* 024CB3F4 */ rbrew_write32(cpu->mem, _t39, cpu->r[9]);
|
|
L_024CB3F8: ; // 0x24cb3f8
|
|
/* 024CB3F8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[6];
|
|
/* 024CB3FC */ cpu->r[5] = rbrew_clz32(cpu->r[0]);
|
|
/* 024CB400 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024CB404: ; // 0x24cb404
|
|
/* 024CB404 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
L_024CB408: ; // 0x24cb408
|
|
/* 024CB408 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024CB40C */ return;
|
|
}
|
|
|
|
// fn_024CB410 @ 0x24cb410
|
|
void Gambit_fn_024CB410(CPUState* cpu) {
|
|
L_024CB410: ; // 0x24cb410
|
|
/* 024CB410 */ cpu->r[3] = cpu->r[3] + 0x00000548u;
|
|
/* 024CB414 */ return;
|
|
}
|
|
|
|
// fn_024CB418 @ 0x24cb418
|
|
void Gambit_fn_024CB418(CPUState* cpu) {
|
|
L_024CB418: ; // 0x24cb418
|
|
/* 024CB418 */ cpu->r[3] = cpu->r[3] + 0x00000578u;
|
|
/* 024CB41C */ return;
|
|
}
|
|
|
|
// fn_024CB420 @ 0x24cb420
|
|
void Gambit_fn_024CB420(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024CB420: ; // 0x24cb420
|
|
/* 024CB420 */ _t0 = cpu->r[3] + 0x00000510u;
|
|
/* 024CB420 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CB424 */ /* nop */
|
|
/* 024CB428 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 024CB42C */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024CB430 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024CB434 */ return;
|
|
}
|
|
|
|
// fn_024CB440 @ 0x24cb440
|
|
void Gambit_fn_024CB440(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_023A3174: ; // 0x23a3174
|
|
/* 023A3174 */ cpu->r[0] = cpu->lr;
|
|
/* 023A3178 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 023A3178 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 023A3178 */ cpu->r[1] = _t0;
|
|
/* 023A317C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A317C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 023A3180 */ cpu->r[31] = cpu->r[3];
|
|
/* 023A3184 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 023A3184 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 023A3188 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 023A3188 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 023A318C */ cpu->r[12] = 0x00000000u;
|
|
/* 023A3190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 023A3194 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 023A3194 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 023A3198 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A3198 */ _t6 = _t5 & 0x00000001u;
|
|
/* 023A3198 */ if (_t6) goto L_023A31C0; else goto L_023A319C;
|
|
L_023A319C: ; // 0x23a319c
|
|
/* 023A319C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 023A319C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 023A31A0 */ /* nop */
|
|
/* 023A31A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 023A31A8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 023A31A8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 023A31A8 */ if (_t9) goto L_023A31AC; else goto L_023A31C0;
|
|
L_023A31AC: ; // 0x23a31ac
|
|
/* 023A31AC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 023A31AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 023A31B0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 023A31B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 023A31B4 */ cpu->ctr = cpu->r[0];
|
|
/* 023A31B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A31BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_023A31C0: ; // 0x23a31c0
|
|
/* 023A31C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A31C4 */ Gambit_fn_023A30EC(cpu);
|
|
/* 023A31C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 023A31CC */ Gambit_fn_027FC37C(cpu);
|
|
/* 023A31D0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 023A31D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 023A31D4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 023A31D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 023A31D8 */ cpu->lr = cpu->r[0];
|
|
/* 023A31DC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 023A31E0 */ return;
|
|
L_024CB440: ; // 0x24cb440
|
|
/* 024CB440 */ cpu->r[3] = cpu->r[3] + 0x00000504u;
|
|
/* 024CB444 */ goto L_023A3174;
|
|
}
|
|
|
|
// fn_024CB448 @ 0x24cb448
|
|
void Gambit_fn_024CB448(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB448: ; // 0x24cb448
|
|
/* 024CB448 */ cpu->r[0] = cpu->lr;
|
|
/* 024CB44C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB44C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB44C */ cpu->r[1] = _t0;
|
|
/* 024CB450 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB450 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CB454 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB458 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB458 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB45C */ _t3 = cpu->r[31] + 0x00000512u;
|
|
/* 024CB45C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024CB460 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024CB464 */ /* nop */
|
|
/* 024CB468 */ Gambit_fn_027FC35C(cpu);
|
|
/* 024CB46C */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024CB470 */ Gambit_fn_023A3064(cpu);
|
|
/* 024CB474 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB474 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB478 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB478 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB47C */ cpu->lr = cpu->r[0];
|
|
/* 024CB480 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB484 */ return;
|
|
}
|
|
|
|
// fn_024CB44C @ 0x24cb44c
|
|
void Gambit_fn_024CB44C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB44C: ; // 0x24cb44c
|
|
/* 024CB44C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB44C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB44C */ cpu->r[1] = _t0;
|
|
/* 024CB450 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB450 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CB454 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB458 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB458 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB45C */ _t3 = cpu->r[31] + 0x00000512u;
|
|
/* 024CB45C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 024CB460 */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024CB464 */ /* nop */
|
|
/* 024CB468 */ Gambit_fn_027FC35C(cpu);
|
|
/* 024CB46C */ cpu->r[3] = cpu->r[31] + 0x00000504u;
|
|
/* 024CB470 */ Gambit_fn_023A3064(cpu);
|
|
/* 024CB474 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB474 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB478 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB478 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB47C */ cpu->lr = cpu->r[0];
|
|
/* 024CB480 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB484 */ return;
|
|
}
|
|
|
|
// fn_024CB488 @ 0x24cb488
|
|
void Gambit_fn_024CB488(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024CB488: ; // 0x24cb488
|
|
/* 024CB488 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB48C */ _t0 = cpu->r[12] + 0x000004B4u;
|
|
/* 024CB48C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CB490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB494 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB498 */ cpu->r[12] = cpu->r[12] + 0x000007D8u;
|
|
/* 024CB49C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB49C */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CB49C */ if (_t2) goto L_024CB4A0; else goto L_024CB4B8;
|
|
L_024CB4A0: ; // 0x24cb4a0
|
|
/* 024CB4A0 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CB4A4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CB4A8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB4AC */ cpu->r[0] = cpu->r[0] + 0x00005798u;
|
|
/* 024CB4B0 */ _t3 = cpu->r[8] + 0x000004B4u;
|
|
/* 024CB4B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 024CB4B4 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 024CB4B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_024CB4B8: ; // 0x24cb4b8
|
|
/* 024CB4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024CB4BC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB4BC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CB4BC */ if (_t6) goto L_024CB4C0; else goto L_024CB4C8;
|
|
L_024CB4C0: ; // 0x24cb4c0
|
|
/* 024CB4C0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CB4C4 */ return;
|
|
L_024CB4C8: ; // 0x24cb4c8
|
|
/* 024CB4C8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CB4CC */ _t7 = cpu->r[11] + 0xFFFFE6D4u;
|
|
/* 024CB4CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB4CC */ cpu->r[11] = _t7;
|
|
/* 024CB4D0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 024CB4D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024CB4D8 */ cpu->r[10] = cpu->r[10] + 0x000006A4u;
|
|
/* 024CB4DC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB4DC */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CB4DC */ if (_t9) goto L_024CB4E0; else goto L_024CB4F4;
|
|
L_024CB4E0: ; // 0x24cb4e0
|
|
/* 024CB4E0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CB4E4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CB4E8 */ cpu->r[12] = cpu->r[12] + 0x00005788u;
|
|
/* 024CB4EC */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 024CB4EC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024CB4F0 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 024CB4F0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_024CB4F4: ; // 0x24cb4f4
|
|
/* 024CB4F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 024CB4F8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB4F8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CB4F8 */ if (_t13) goto L_024CB4FC; else goto L_024CB504;
|
|
L_024CB4FC: ; // 0x24cb4fc
|
|
/* 024CB4FC */ cpu->r[0] = 0x00000001u;
|
|
/* 024CB500 */ goto L_024CB53C;
|
|
L_024CB504: ; // 0x24cb504
|
|
/* 024CB504 */ cpu->r[8] = 0x101D0000u;
|
|
/* 024CB508 */ _t14 = cpu->r[8] + 0xFFFFDA34u;
|
|
/* 024CB508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CB508 */ cpu->r[8] = _t14;
|
|
/* 024CB50C */ cpu->r[11] = 0x101D0000u;
|
|
/* 024CB510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB514 */ cpu->r[11] = cpu->r[11] + 0xFFFFDDE4u;
|
|
/* 024CB518 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB518 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024CB518 */ if (_t16) goto L_024CB51C; else goto L_024CB530;
|
|
L_024CB51C: ; // 0x24cb51c
|
|
/* 024CB51C */ cpu->r[10] = 0x100B0000u;
|
|
/* 024CB520 */ cpu->r[9] = 0x00000001u;
|
|
/* 024CB524 */ cpu->r[10] = cpu->r[10] + 0x000056E8u;
|
|
/* 024CB528 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 024CB528 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 024CB52C */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 024CB52C */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_024CB530: ; // 0x24cb530
|
|
/* 024CB530 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024CB534 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 024CB538 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_024CB53C: ; // 0x24cb53c
|
|
/* 024CB53C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024CB540 */ return;
|
|
}
|
|
|
|
// fn_024CB544 @ 0x24cb544
|
|
void Gambit_fn_024CB544(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_024CB544: ; // 0x24cb544
|
|
/* 024CB544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB548 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB548 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB548 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB548 */ goto L_024CB54C;
|
|
L_024CB54C: ; // 0x24cb54c
|
|
/* 024CB54C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB550 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB550 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB550 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB550 */ goto L_024CB554;
|
|
L_024CB554: ; // 0x24cb554
|
|
/* 024CB554 */ 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_024CB558 @ 0x24cb558
|
|
void Gambit_fn_024CB558(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_024CB558: ; // 0x24cb558
|
|
/* 024CB558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB55C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB55C */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CB55C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB55C */ goto L_024CB560;
|
|
L_024CB560: ; // 0x24cb560
|
|
/* 024CB560 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CB560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CB564 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB564 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB564 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CB564 */ goto L_024CB568;
|
|
L_024CB568: ; // 0x24cb568
|
|
/* 024CB568 */ 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_024CB56C @ 0x24cb56c
|
|
void Gambit_fn_024CB56C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CB56C: ; // 0x24cb56c
|
|
/* 024CB56C */ cpu->r[0] = cpu->lr;
|
|
/* 024CB570 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024CB574 */ cpu->r[7] = 0x024D0000u;
|
|
/* 024CB578 */ cpu->r[6] = 0x024D0000u;
|
|
/* 024CB57C */ cpu->r[10] = 0x101C0000u;
|
|
/* 024CB580 */ cpu->r[7] = cpu->r[7] + 0xFFFFB154u;
|
|
/* 024CB584 */ cpu->r[6] = cpu->r[6] + 0xFFFFB154u;
|
|
/* 024CB588 */ cpu->r[10] = cpu->r[10] + 0x000064A8u;
|
|
/* 024CB58C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024CB58C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024CB590 */ cpu->r[0] = 0x101C0000u;
|
|
/* 024CB594 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB594 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024CB594 */ cpu->r[1] = _t1;
|
|
/* 024CB598 */ cpu->r[0] = cpu->r[0] + 0x000064A4u;
|
|
/* 024CB59C */ _t2 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024CB59C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CB5A0 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CB5A4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024CB5A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CB5A8 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB5AC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB5AC */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024CB5B0 */ Gambit_fn_02791B10(cpu);
|
|
/* 024CB5B4 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB5B8 */ cpu->lr = cpu->r[0];
|
|
/* 024CB5BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB5C0 */ return;
|
|
}
|
|
|
|
// fn_024CB594 @ 0x24cb594
|
|
void Gambit_fn_024CB594(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024CB594: ; // 0x24cb594
|
|
/* 024CB594 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB594 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB594 */ cpu->r[1] = _t0;
|
|
/* 024CB598 */ cpu->r[0] = cpu->r[0] + 0x000064A4u;
|
|
/* 024CB59C */ _t1 = cpu->r[12] + 0xFFFF9034u;
|
|
/* 024CB59C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB5A0 */ cpu->r[8] = 0x00000000u;
|
|
/* 024CB5A4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024CB5A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB5A8 */ cpu->r[9] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB5AC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB5AC */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024CB5B0 */ Gambit_fn_02791B10(cpu);
|
|
/* 024CB5B4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB5B8 */ cpu->lr = cpu->r[0];
|
|
/* 024CB5BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CB5C0 */ return;
|
|
}
|
|
|
|
// fn_024CB5C4 @ 0x24cb5c4
|
|
void Gambit_fn_024CB5C4(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_024CB5C4: ; // 0x24cb5c4
|
|
/* 024CB5C4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024CB5C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB5C4 */ cpu->r[1] = _t0;
|
|
/* 024CB5C8 */ /* nop */
|
|
/* 024CB5CC */ cpu->r[0] = cpu->lr;
|
|
/* 024CB5D0 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 024CB5D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024CB5D4 */ cpu->r[29] = cpu->r[6];
|
|
/* 024CB5D8 */ cpu->r[28] = cpu->r[3];
|
|
/* 024CB5DC */ cpu->r[30] = cpu->r[5];
|
|
/* 024CB5E0 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 024CB5E0 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 024CB5E4 */ cpu->r[31] = 0x101D0000u;
|
|
/* 024CB5E8 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 024CB5E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 024CB5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB5F0 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024CB5F0 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 024CB5F4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB5F4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CB5F4 */ if (_t6) goto L_024CB638; else goto L_024CB5F8;
|
|
L_024CB5F8: ; // 0x24cb5f8
|
|
/* 024CB5F8 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024CB5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB5FC */ Gambit_fn_02826F20(cpu);
|
|
/* 024CB600 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024CB604 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 024CB604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CB608 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB60C */ cpu->r[5] = 0x00000004u;
|
|
/* 024CB610 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB614 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB61C */ cpu->r[0] = cpu->r[27];
|
|
/* 024CB620 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB620 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024CB620 */ if (_t11) goto L_024CB628; else goto L_024CB624;
|
|
L_024CB624: ; // 0x24cb624
|
|
/* 024CB624 */ cpu->r[0] = 0x00000001u;
|
|
L_024CB628: ; // 0x24cb628
|
|
/* 024CB628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB62C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB62C */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CB62C */ if (_t13) goto L_024CB638; else goto L_024CB630;
|
|
L_024CB630: ; // 0x24cb630
|
|
/* 024CB630 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 024CB630 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 024CB634 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 024CB634 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_024CB638: ; // 0x24cb638
|
|
/* 024CB638 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 024CB638 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CB63C */ cpu->r[0] = 0x00000000u;
|
|
/* 024CB640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 024CB644 */ cpu->r[12] = cpu->r[0];
|
|
/* 024CB648 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB648 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CB648 */ if (_t18) goto L_024CB64C; else goto L_024CB670;
|
|
L_024CB64C: ; // 0x24cb64c
|
|
/* 024CB64C */ cpu->ctr = cpu->r[7];
|
|
/* 024CB650 */ cpu->r[10] = 0x00000000u;
|
|
L_024CB654: ; // 0x24cb654
|
|
/* 024CB654 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 024CB654 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CB658 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 024CB658 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 024CB65C */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 024CB660 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 024CB660 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 024CB664 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 024CB668 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 024CB668 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 024CB66C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024CB66C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024CB66C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 024CB66C */ _t25 = _t24 & 0x00000001u;
|
|
/* 024CB66C */ if (_t25) goto L_024CB654; else goto L_024CB670;
|
|
L_024CB670: ; // 0x24cb670
|
|
/* 024CB670 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024CB670 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 024CB674 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB678 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB678 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024CB678 */ if (_t28) goto L_024CB6BC; else goto L_024CB67C;
|
|
L_024CB67C: ; // 0x24cb67c
|
|
/* 024CB67C */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024CB67C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024CB680 */ Gambit_fn_02826F20(cpu);
|
|
/* 024CB684 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB684 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024CB688 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 024CB688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024CB68C */ cpu->ctr = cpu->r[0];
|
|
/* 024CB690 */ cpu->r[5] = 0x00000004u;
|
|
/* 024CB694 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB698 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB6A0 */ cpu->r[11] = cpu->r[27];
|
|
/* 024CB6A4 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB6A4 */ _t33 = _t32 & 0x00000001u;
|
|
/* 024CB6A4 */ if (_t33) goto L_024CB6AC; else goto L_024CB6A8;
|
|
L_024CB6A8: ; // 0x24cb6a8
|
|
/* 024CB6A8 */ cpu->r[11] = 0x00000001u;
|
|
L_024CB6AC: ; // 0x24cb6ac
|
|
/* 024CB6AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB6B0 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB6B0 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024CB6B0 */ if (_t35) goto L_024CB6BC; else goto L_024CB6B4;
|
|
L_024CB6B4: ; // 0x24cb6b4
|
|
/* 024CB6B4 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024CB6B4 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 024CB6B8 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 024CB6B8 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_024CB6BC: ; // 0x24cb6bc
|
|
/* 024CB6BC */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 024CB6BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024CB6C0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024CB6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024CB6C8 */ cpu->r[12] = cpu->r[0];
|
|
/* 024CB6CC */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB6CC */ _t40 = _t39 & 0x00000001u;
|
|
/* 024CB6CC */ if (_t40) goto L_024CB6D0; else goto L_024CB6F4;
|
|
L_024CB6D0: ; // 0x24cb6d0
|
|
/* 024CB6D0 */ cpu->ctr = cpu->r[6];
|
|
/* 024CB6D4 */ cpu->r[9] = 0x00000000u;
|
|
L_024CB6D8: ; // 0x24cb6d8
|
|
/* 024CB6D8 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024CB6D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024CB6DC */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 024CB6DC */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 024CB6E0 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 024CB6E4 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 024CB6E4 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 024CB6E8 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 024CB6EC */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 024CB6EC */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 024CB6F0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024CB6F0 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024CB6F0 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 024CB6F0 */ _t47 = _t46 & 0x00000001u;
|
|
/* 024CB6F0 */ if (_t47) goto L_024CB6D8; else goto L_024CB6F4;
|
|
L_024CB6F4: ; // 0x24cb6f4
|
|
/* 024CB6F4 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 024CB6F4 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 024CB6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB6FC */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB6FC */ _t50 = _t49 & 0x00000001u;
|
|
/* 024CB6FC */ if (_t50) goto L_024CB740; else goto L_024CB700;
|
|
L_024CB700: ; // 0x24cb700
|
|
/* 024CB700 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024CB700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024CB704 */ Gambit_fn_02826F20(cpu);
|
|
/* 024CB708 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB708 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 024CB70C */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 024CB70C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024CB710 */ cpu->ctr = cpu->r[0];
|
|
/* 024CB714 */ cpu->r[5] = 0x00000004u;
|
|
/* 024CB718 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB71C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB724 */ cpu->r[10] = cpu->r[27];
|
|
/* 024CB728 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB728 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024CB728 */ if (_t55) goto L_024CB730; else goto L_024CB72C;
|
|
L_024CB72C: ; // 0x24cb72c
|
|
/* 024CB72C */ cpu->r[10] = 0x00000001u;
|
|
L_024CB730: ; // 0x24cb730
|
|
/* 024CB730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB734 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB734 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024CB734 */ if (_t57) goto L_024CB740; else goto L_024CB738;
|
|
L_024CB738: ; // 0x24cb738
|
|
/* 024CB738 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 024CB738 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 024CB73C */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 024CB73C */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_024CB740: ; // 0x24cb740
|
|
/* 024CB740 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 024CB740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024CB744 */ cpu->r[0] = 0x00000000u;
|
|
/* 024CB748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CB74C */ cpu->r[5] = cpu->r[0];
|
|
/* 024CB750 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB750 */ _t62 = _t61 & 0x00000001u;
|
|
/* 024CB750 */ if (_t62) goto L_024CB754; else goto L_024CB778;
|
|
L_024CB754: ; // 0x24cb754
|
|
/* 024CB754 */ cpu->ctr = cpu->r[12];
|
|
/* 024CB758 */ cpu->r[8] = 0x00000000u;
|
|
L_024CB75C: ; // 0x24cb75c
|
|
/* 024CB75C */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 024CB75C */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 024CB760 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 024CB760 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 024CB764 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 024CB768 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 024CB768 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 024CB76C */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 024CB770 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 024CB770 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 024CB774 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024CB774 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024CB774 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 024CB774 */ _t69 = _t68 & 0x00000001u;
|
|
/* 024CB774 */ if (_t69) goto L_024CB75C; else goto L_024CB778;
|
|
L_024CB778: ; // 0x24cb778
|
|
/* 024CB778 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024CB778 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 024CB77C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024CB780 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB780 */ _t72 = _t71 & 0x00000001u;
|
|
/* 024CB780 */ if (_t72) goto L_024CB85C; else goto L_024CB784;
|
|
L_024CB784: ; // 0x24cb784
|
|
/* 024CB784 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024CB784 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024CB788 */ Gambit_fn_02826F20(cpu);
|
|
/* 024CB78C */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CB78C */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024CB790 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 024CB790 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024CB794 */ cpu->ctr = cpu->r[12];
|
|
/* 024CB798 */ cpu->r[5] = 0x00000004u;
|
|
/* 024CB79C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 024CB7A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB7A4 */ cpu->r[24] = cpu->r[3];
|
|
/* 024CB7A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024CB7AC */ cpu->r[30] = cpu->r[25];
|
|
/* 024CB7B0 */ cpu->r[7] = 0x00000000u;
|
|
/* 024CB7B4 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024CB7B4 */ _t77 = _t76 & 0x00000001u;
|
|
/* 024CB7B4 */ if (_t77) goto L_024CB7BC; else goto L_024CB7B8;
|
|
L_024CB7B8: ; // 0x24cb7b8
|
|
/* 024CB7B8 */ cpu->r[30] = 0x00000001u;
|
|
L_024CB7BC: ; // 0x24cb7bc
|
|
/* 024CB7BC */ cpu->r[31] = 0x10110000u;
|
|
/* 024CB7C0 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 024CB7C4 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 024CB7C4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 024CB7C8 */ cpu->r[23] = 0x00000018u;
|
|
L_024CB7CC: ; // 0x24cb7cc
|
|
/* 024CB7CC */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 024CB7CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB7D0 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB7D0 */ _t80 = _t79 & 0x00000001u;
|
|
/* 024CB7D0 */ if (_t80) goto L_024CB840; else goto L_024CB7D4;
|
|
L_024CB7D4: ; // 0x24cb7d4
|
|
/* 024CB7D4 */ cpu->r[26] = cpu->r[27];
|
|
/* 024CB7D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024CB7D8 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB7D8 */ _t82 = _t81 & 0x00000001u;
|
|
/* 024CB7D8 */ if (_t82) goto L_024CB7DC; else goto L_024CB7EC;
|
|
L_024CB7DC: ; // 0x24cb7dc
|
|
/* 024CB7DC */ cpu->r[3] = 0x00000024u;
|
|
/* 024CB7E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CB7E4 */ cpu->r[26] = cpu->r[3];
|
|
/* 024CB7E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 024CB7E8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB7E8 */ _t84 = _t83 & 0x00000001u;
|
|
/* 024CB7E8 */ if (_t84) goto L_024CB834; else goto L_024CB7EC;
|
|
L_024CB7EC: ; // 0x24cb7ec
|
|
/* 024CB7EC */ cpu->r[11] = cpu->r[26];
|
|
/* 024CB7EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CB7F0 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB7F0 */ _t86 = _t85 & 0x00000001u;
|
|
/* 024CB7F0 */ if (_t86) goto L_024CB7F4; else goto L_024CB804;
|
|
L_024CB7F4: ; // 0x24cb7f4
|
|
/* 024CB7F4 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024CB7F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CB7FC */ cpu->r[11] = cpu->r[3];
|
|
/* 024CB7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024CB800 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB800 */ _t88 = _t87 & 0x00000001u;
|
|
/* 024CB800 */ if (_t88) goto L_024CB820; else goto L_024CB804;
|
|
L_024CB804: ; // 0x24cb804
|
|
/* 024CB804 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024CB808 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 024CB808 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 024CB80C */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 024CB810 */ cpu->r[5] = cpu->r[5] + 0x00005710u;
|
|
/* 024CB814 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 024CB814 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 024CB818 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 024CB818 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 024CB81C */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 024CB81C */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_024CB820: ; // 0x24cb820
|
|
/* 024CB820 */ cpu->r[6] = 0x100B0000u;
|
|
/* 024CB824 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 024CB824 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024CB828 */ cpu->r[6] = cpu->r[6] + 0x00005728u;
|
|
/* 024CB82C */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 024CB82C */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 024CB830 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 024CB830 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_024CB834: ; // 0x24cb834
|
|
/* 024CB834 */ cpu->r[0] = 0x100B0000u;
|
|
/* 024CB838 */ cpu->r[0] = cpu->r[0] + 0x00005740u;
|
|
/* 024CB83C */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 024CB83C */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_024CB840: ; // 0x24cb840
|
|
/* 024CB840 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 024CB840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024CB844 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 024CB848 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB848 */ _t98 = _t97 & 0x00000001u;
|
|
/* 024CB848 */ if (_t98) goto L_024CB84C; else goto L_024CB7CC;
|
|
L_024CB84C: ; // 0x24cb84c
|
|
/* 024CB84C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 024CB850 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB850 */ _t100 = _t99 & 0x00000001u;
|
|
/* 024CB850 */ if (_t100) goto L_024CB85C; else goto L_024CB854;
|
|
L_024CB854: ; // 0x24cb854
|
|
/* 024CB854 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 024CB854 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 024CB858 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 024CB858 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_024CB85C: ; // 0x24cb85c
|
|
/* 024CB85C */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 024CB85C */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 024CB860 */ /* nop */
|
|
/* 024CB864 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 024CB864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 024CB868 */ cpu->lr = cpu->r[0];
|
|
/* 024CB86C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024CB870 */ return;
|
|
}
|
|
|
|
// fn_024CB874 @ 0x24cb874
|
|
void Gambit_fn_024CB874(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_024CB874: ; // 0x24cb874
|
|
/* 024CB874 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 024CB874 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CB878 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 024CB878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CB87C */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 024CB87C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CB880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 024CB884 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 024CB884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CB888 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CB888 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CB888 */ if (_t5) goto L_024CB88C; else goto L_024CB894;
|
|
L_024CB88C: ; // 0x24cb88c
|
|
/* 024CB88C */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB890 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024CB894: ; // 0x24cb894
|
|
/* 024CB894 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024CB894 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024CB898 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 024CB898 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CB89C */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024CB89C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024CB8A0 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 024CB8A0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024CB8A4 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 024CB8A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CB8A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 024CB8AC */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024CB8AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CB8B0 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CB8B0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CB8B0 */ if (_t13) goto L_024CB8B4; else goto L_024CB8BC;
|
|
L_024CB8B4: ; // 0x24cb8b4
|
|
/* 024CB8B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB8B8 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024CB8BC: ; // 0x24cb8bc
|
|
/* 024CB8BC */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 024CB8BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CB8C0 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024CB8C0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024CB8C4 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 024CB8C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CB8C8 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 024CB8C8 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 024CB8CC */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 024CB8CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024CB8D0 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 024CB8D0 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024CB8D4 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 024CB8D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024CB8D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 024CB8DC */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 024CB8DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CB8E0 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024CB8E0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 024CB8E0 */ if (_t23) goto L_024CB8E4; else goto L_024CB8EC;
|
|
L_024CB8E4: ; // 0x24cb8e4
|
|
/* 024CB8E4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024CB8E8 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_024CB8EC: ; // 0x24cb8ec
|
|
/* 024CB8EC */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 024CB8EC */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 024CB8F0 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 024CB8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024CB8F4 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 024CB8F4 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 024CB8F8 */ return;
|
|
}
|
|
|
|
// fn_024CB8FC @ 0x24cb8fc
|
|
void Gambit_fn_024CB8FC(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_024CB8FC: ; // 0x24cb8fc
|
|
/* 024CB8FC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024CB8FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB8FC */ cpu->r[1] = _t0;
|
|
/* 024CB900 */ cpu->r[0] = cpu->lr;
|
|
/* 024CB904 */ /* nop */
|
|
/* 024CB908 */ cpu->r[30] = cpu->r[5];
|
|
/* 024CB90C */ cpu->r[26] = cpu->r[3];
|
|
/* 024CB910 */ cpu->r[27] = cpu->r[7];
|
|
/* 024CB914 */ cpu->r[3] = cpu->r[30];
|
|
/* 024CB918 */ cpu->r[31] = cpu->r[6];
|
|
/* 024CB91C */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CB91C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024CB920 */ cpu->r[29] = cpu->r[4];
|
|
/* 024CB924 */ cpu->r[4] = cpu->r[27];
|
|
/* 024CB928 */ Gambit_fn_027DB318(cpu);
|
|
/* 024CB92C */ cpu->r[28] = cpu->r[3] + cpu->r[31];
|
|
/* 024CB92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024CB930 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB930 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CB930 */ if (_t3) goto L_024CB9C4; else goto L_024CB934;
|
|
L_024CB934: ; // 0x24cb934
|
|
/* 024CB934 */ cpu->r[5] = cpu->r[28];
|
|
/* 024CB938 */ cpu->r[4] = cpu->r[29];
|
|
/* 024CB93C */ cpu->r[3] = cpu->r[26];
|
|
/* 024CB940 */ Gambit_fn_024CB56C(cpu);
|
|
/* 024CB944 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024CB944 */ cpu->r[29] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CB948 */ _t5 = cpu->r[30] + 0x00000004u;
|
|
/* 024CB948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CB94C */ cpu->r[30] = cpu->r[30] - cpu->r[29];
|
|
/* 024CB950 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024CB954 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024CB958 */ cpu->r[25] = 0x00000000u;
|
|
/* 024CB95C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB95C */ _t7 = _t6 & 0x00000001u;
|
|
/* 024CB95C */ if (_t7) goto L_024CB9C4; else goto L_024CB960;
|
|
L_024CB960: ; // 0x24cb960
|
|
/* 024CB960 */ cpu->r[24] = 0x101C0000u;
|
|
L_024CB964: ; // 0x24cb964
|
|
/* 024CB964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024CB968 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB968 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CB968 */ if (_t9) goto L_024CB980; else goto L_024CB96C;
|
|
L_024CB96C: ; // 0x24cb96c
|
|
/* 024CB96C */ cpu->ctr = cpu->r[27];
|
|
/* 024CB970 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CB974 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CB978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CB97C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB97C */ _t11 = _t10 & 0x00000001u;
|
|
/* 024CB97C */ if (_t11) goto L_024CB9B0; else goto L_024CB980;
|
|
L_024CB980: ; // 0x24cb980
|
|
/* 024CB980 */ _t12 = cpu->r[24] + 0x000064A4u;
|
|
/* 024CB980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CB984 */ cpu->r[6] = cpu->r[26] + cpu->r[0];
|
|
/* 024CB988 */ _t13 = cpu->r[6] + 0x00000104u;
|
|
/* 024CB988 */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024CB98C */ _t14 = cpu->r[26] + 0x00000030u;
|
|
/* 024CB98C */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CB990 */ cpu->r[9] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024CB994 */ _t15 = cpu->r[9] + cpu->r[10];
|
|
/* 024CB994 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CB998 */ cpu->r[8] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024CB99C */ _t16 = cpu->r[11] + 0x00000004u;
|
|
/* 024CB99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CB9A0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CB9A4 */ _t17 = cpu->r[8] + cpu->r[0];
|
|
/* 024CB9A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024CB9A8 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 024CB9AC */ Gambit_fn_024C9A1C(cpu);
|
|
L_024CB9B0: ; // 0x24cb9b0
|
|
/* 024CB9B0 */ cpu->r[12] = cpu->r[31] + cpu->r[29];
|
|
/* 024CB9B4 */ _t18 = cpu->r[12] + 0x00000004u;
|
|
/* 024CB9B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024CB9B8 */ cpu->r[31] = cpu->r[0] - cpu->r[29];
|
|
/* 024CB9BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]);
|
|
/* 024CB9C0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB9C0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 024CB9C0 */ if (_t20) goto L_024CB9C4; else goto L_024CB964;
|
|
L_024CB9C4: ; // 0x24cb9c4
|
|
/* 024CB9C4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024CB9C8 */ /* nop */
|
|
/* 024CB9CC */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CB9CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024CB9D0 */ cpu->lr = cpu->r[0];
|
|
/* 024CB9D4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024CB9D8 */ return;
|
|
}
|
|
|
|
// fn_024CB9E0 @ 0x24cb9e0
|
|
void Gambit_fn_024CB9E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024CB9E0: ; // 0x24cb9e0
|
|
/* 024CB9E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CB9E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CB9E0 */ cpu->r[1] = _t0;
|
|
/* 024CB9E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CB9E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CB9E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB9E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CB9EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CB9EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CB9F0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CB9F0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024CB9F0 */ if (_t4) goto L_024CB9F4; else goto L_024CBA04;
|
|
L_024CB9F4: ; // 0x24cb9f4
|
|
/* 024CB9F4 */ cpu->r[3] = 0x000001D8u;
|
|
/* 024CB9F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CB9FC */ cpu->r[31] = cpu->r[3];
|
|
/* 024CB9FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CBA00 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024CBA00 */ if (_t6) goto L_024CBA20; else goto L_024CBA04;
|
|
L_024CBA04: ; // 0x24cba04
|
|
/* 024CBA04 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA08 */ Gambit_fn_024ADE54(cpu);
|
|
/* 024CBA0C */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CBA10 */ cpu->r[0] = 0x00000000u;
|
|
/* 024CBA14 */ cpu->r[12] = cpu->r[12] + 0x00005EB4u;
|
|
/* 024CBA18 */ _t7 = cpu->r[31] + 0x000001D4u;
|
|
/* 024CBA18 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024CBA1C */ _t8 = cpu->r[31] + 0x00000004u;
|
|
/* 024CBA1C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
L_024CBA20: ; // 0x24cba20
|
|
/* 024CBA20 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBA20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CBA24 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA28 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBA28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CBA2C */ cpu->lr = cpu->r[0];
|
|
/* 024CBA30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CBA34 */ return;
|
|
}
|
|
|
|
// fn_024CBA38 @ 0x24cba38
|
|
void Gambit_fn_024CBA38(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;
|
|
|
|
L_024ADF5C: ; // 0x24adf5c
|
|
/* 024ADF5C */ cpu->r[0] = cpu->lr;
|
|
/* 024ADF60 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024ADF60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024ADF60 */ cpu->r[1] = _t0;
|
|
/* 024ADF64 */ _t1 = cpu->r[1] + 0x00000030u;
|
|
/* 024ADF64 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024ADF68 */ cpu->r[30] = cpu->r[3];
|
|
/* 024ADF6C */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 024ADF6C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024ADF70 */ cpu->r[31] = cpu->r[4];
|
|
/* 024ADF74 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024ADF78 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024ADF78 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024ADF7C */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024ADF7C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024ADF80 */ Gambit_fn_024F6710(cpu);
|
|
/* 024ADF84 */ cpu->r[5] = cpu->r[3];
|
|
/* 024ADF88 */ cpu->r[3] = cpu->r[30];
|
|
/* 024ADF8C */ cpu->r[4] = cpu->r[31];
|
|
/* 024ADF90 */ Gambit_fn_024F4798(cpu);
|
|
/* 024ADF94 */ _t5 = cpu->r[31] + 0x000046BCu;
|
|
/* 024ADF94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024ADF98 */ _t6 = cpu->r[8] + 0x0000002Cu;
|
|
/* 024ADF98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024ADF9C */ cpu->ctr = cpu->r[9];
|
|
/* 024ADFA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024ADFA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024ADFA8 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024ADFA8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024ADFAC */ _t8 = cpu->r[31] + 0x00000090u;
|
|
/* 024ADFAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024ADFB0 */ cpu->r[7] = 0x100B0000u;
|
|
/* 024ADFB4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024ADFB4 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 024ADFB8 */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 024ADFB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024ADFBC */ _t11 = cpu->r[7] + 0x00000150u;
|
|
/* 024ADFBC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 024ADFC0 */ _t12 = cpu->r[1] + 0x00000020u;
|
|
/* 024ADFC0 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024ADFC4 */ _t13 = cpu->r[3] + 0x00000008u;
|
|
/* 024ADFC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024ADFC8 */ _t14 = cpu->r[31] + 0x00000094u;
|
|
/* 024ADFC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024ADFCC */ _t15 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024ADFCC */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024ADFD0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024ADFD0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 024ADFD4 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 024ADFD4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 024ADFD8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024ADFD8 */ rbrew_write32(cpu->mem, _t18, cpu->r[7]);
|
|
/* 024ADFDC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 024ADFDC */ rbrew_write32(cpu->mem, _t19, cpu->r[8]);
|
|
/* 024ADFE0 */ cpu->f[8] = cpu->f[8] * cpu->f[0];
|
|
/* 024ADFE4 */ /* nop */
|
|
/* 024ADFE8 */ cpu->r[5] = 0x100B0000u;
|
|
/* 024ADFEC */ _t20 = cpu->r[5] + 0x00000154u;
|
|
/* 024ADFEC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 024ADFF0 */ /* nop */
|
|
/* 024ADFF4 */ /* nop */
|
|
/* 024ADFF8 */ cpu->f[12] = cpu->f[8] * cpu->f[13];
|
|
/* 024ADFFC */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 024ADFFC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 024AE000 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024AE000 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 024AE004 */ cpu->f[10] = cpu->f[11] * cpu->f[13];
|
|
/* 024AE008 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 024AE008 */ rbrew_write32(cpu->mem, _t23, cpu->r[11]);
|
|
/* 024AE00C */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 024AE00C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 024AE010 */ cpu->f[13] = cpu->f[0] * cpu->f[13];
|
|
/* 024AE014 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024AE014 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 024AE018 */ cpu->r[10] = 0x00000000u;
|
|
/* 024AE01C */ cpu->f[11] = cpu->f[7] - cpu->f[12];
|
|
/* 024AE020 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 024AE020 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 024AE024 */ cpu->f[9] = cpu->f[5] - cpu->f[13];
|
|
/* 024AE028 */ cpu->f[13] = cpu->f[5] + cpu->f[13];
|
|
/* 024AE02C */ _t27 = cpu->r[30] + 0x000001B4u;
|
|
/* 024AE02C */ rbrew_write32(cpu->mem, _t27, cpu->r[10]);
|
|
/* 024AE030 */ cpu->f[0] = cpu->f[6] - cpu->f[10];
|
|
/* 024AE034 */ _t28 = cpu->r[30] + 0x000001BCu;
|
|
/* 024AE034 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[9]);
|
|
/* 024AE038 */ _t29 = cpu->r[30] + 0x000001C8u;
|
|
/* 024AE038 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]);
|
|
/* 024AE03C */ _t30 = cpu->r[30] + 0x000001C0u;
|
|
/* 024AE03C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[0]);
|
|
/* 024AE040 */ cpu->f[0] = cpu->f[6] + cpu->f[10];
|
|
/* 024AE044 */ _t31 = cpu->r[30] + 0x000001C4u;
|
|
/* 024AE044 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[11]);
|
|
/* 024AE048 */ cpu->f[11] = cpu->f[7] + cpu->f[12];
|
|
/* 024AE04C */ _t32 = cpu->r[30] + 0x000001CCu;
|
|
/* 024AE04C */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 024AE050 */ cpu->r[29] = 0x101F0000u;
|
|
/* 024AE054 */ cpu->r[29] = cpu->r[29] + 0xFFFF85D8u;
|
|
/* 024AE058 */ _t33 = cpu->r[30] + 0x000001D0u;
|
|
/* 024AE058 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[11]);
|
|
/* 024AE05C */ _t34 = cpu->r[29] + 0x00000004u;
|
|
/* 024AE05C */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024AE060 */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 024AE060 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[8]);
|
|
/* 024AE064 */ _t36 = cpu->r[12] + 0x00000014u;
|
|
/* 024AE064 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024AE068 */ _t37 = cpu->r[30] + 0x000001B4u;
|
|
/* 024AE068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 024AE06C */ cpu->ctr = cpu->r[6];
|
|
/* 024AE070 */ _t38 = cpu->r[31] + 0x00000000u;
|
|
/* 024AE070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024AE074 */ cpu->r[3] = cpu->r[29];
|
|
/* 024AE078 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024AE07C */ _t39 = cpu->r[29] + 0x00000000u;
|
|
/* 024AE07C */ cpu->r[4] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024AE080 */ cpu->r[3] = cpu->r[31];
|
|
/* 024AE084 */ Gambit_fn_027DB750(cpu);
|
|
/* 024AE088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024AE08C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024AE08C */ _t41 = _t40 & 0x00000001u;
|
|
/* 024AE08C */ if (_t41) goto L_024AE0BC; else goto L_024AE090;
|
|
L_024AE090: ; // 0x24ae090
|
|
/* 024AE090 */ _t42 = cpu->r[29] + 0x00000004u;
|
|
/* 024AE090 */ cpu->r[10] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024AE094 */ _t43 = cpu->r[10] + 0x00000014u;
|
|
/* 024AE094 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024AE098 */ cpu->ctr = cpu->r[0];
|
|
/* 024AE09C */ cpu->r[3] = cpu->r[29];
|
|
/* 024AE0A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024AE0A4 */ _t44 = cpu->r[29] + 0x00000000u;
|
|
/* 024AE0A4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024AE0A8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 024AE0AC */ cpu->r[3] = cpu->r[31];
|
|
/* 024AE0B0 */ Gambit_fn_027DBAD4(cpu);
|
|
/* 024AE0B4 */ _t45 = cpu->r[1] + 0x00000018u;
|
|
/* 024AE0B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024AE0B8 */ _t46 = cpu->r[30] + 0x000001B4u;
|
|
/* 024AE0B8 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]);
|
|
L_024AE0BC: ; // 0x24ae0bc
|
|
/* 024AE0BC */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024AE0BC */ cpu->r[29] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024AE0C0 */ _t48 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024AE0C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024AE0C4 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 024AE0C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 024AE0C8 */ cpu->lr = cpu->r[0];
|
|
/* 024AE0CC */ _t50 = cpu->r[1] + 0x00000034u;
|
|
/* 024AE0CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024AE0D0 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024AE0D4 */ return;
|
|
L_024CBA38: ; // 0x24cba38
|
|
/* 024CBA38 */ goto L_024ADF5C;
|
|
}
|
|
|
|
// fn_024CBA3C @ 0x24cba3c
|
|
void Gambit_fn_024CBA3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CBA3C: ; // 0x24cba3c
|
|
/* 024CBA3C */ cpu->r[0] = cpu->lr;
|
|
/* 024CBA40 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CBA40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBA40 */ cpu->r[1] = _t0;
|
|
/* 024CBA44 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBA44 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CBA48 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CBA4C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBA4C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CBA50 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024CBA54 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBA54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CBA58 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CBA5C */ cpu->r[31] = cpu->r[3];
|
|
/* 024CBA5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CBA60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA60 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CBA60 */ if (_t5) goto L_024CBA94; else goto L_024CBA64;
|
|
L_024CBA64: ; // 0x24cba64
|
|
/* 024CBA64 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA68 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 024CBA6C */ Gambit_fn_02C89380(cpu);
|
|
/* 024CBA70 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBA74 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA74 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024CBA74 */ if (_t7) goto L_024CBA78; else goto L_024CBA88;
|
|
L_024CBA78: ; // 0x24cba78
|
|
/* 024CBA78 */ cpu->r[3] = 0x00000008u;
|
|
/* 024CBA7C */ Gambit_fn_02801A78(cpu);
|
|
/* 024CBA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBA84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CBA84 */ if (_t9) goto L_024CBA94; else goto L_024CBA88;
|
|
L_024CBA88: ; // 0x24cba88
|
|
/* 024CBA88 */ cpu->r[12] = 0x00000000u;
|
|
/* 024CBA8C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBA8C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024CBA90 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 024CBA90 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_024CBA94: ; // 0x24cba94
|
|
/* 024CBA94 */ _t12 = cpu->r[30] + 0x00000050u;
|
|
/* 024CBA94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CBA98 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA9C */ _t13 = cpu->r[30] + 0x000001D4u;
|
|
/* 024CBA9C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 024CBAA0 */ Gambit_fn_024F212C(cpu);
|
|
/* 024CBAA4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBAA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CBAA8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBAA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CBAAC */ cpu->lr = cpu->r[0];
|
|
/* 024CBAB0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBAB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CBAB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CBAB8 */ return;
|
|
}
|
|
|
|
// fn_024CBA40 @ 0x24cba40
|
|
void Gambit_fn_024CBA40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024CBA40: ; // 0x24cba40
|
|
/* 024CBA40 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CBA40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBA40 */ cpu->r[1] = _t0;
|
|
/* 024CBA44 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBA44 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024CBA48 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CBA4C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBA4C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024CBA50 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 024CBA54 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBA54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CBA58 */ Gambit_fn_02801A78(cpu);
|
|
/* 024CBA5C */ cpu->r[31] = cpu->r[3];
|
|
/* 024CBA5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024CBA60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA60 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CBA60 */ if (_t5) goto L_024CBA94; else goto L_024CBA64;
|
|
L_024CBA64: ; // 0x24cba64
|
|
/* 024CBA64 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA68 */ cpu->r[4] = 0x0000000Cu;
|
|
/* 024CBA6C */ Gambit_fn_02C89380(cpu);
|
|
/* 024CBA70 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBA74 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA74 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024CBA74 */ if (_t7) goto L_024CBA78; else goto L_024CBA88;
|
|
L_024CBA78: ; // 0x24cba78
|
|
/* 024CBA78 */ cpu->r[3] = 0x00000008u;
|
|
/* 024CBA7C */ Gambit_fn_02801A78(cpu);
|
|
/* 024CBA80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBA84 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBA84 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CBA84 */ if (_t9) goto L_024CBA94; else goto L_024CBA88;
|
|
L_024CBA88: ; // 0x24cba88
|
|
/* 024CBA88 */ cpu->r[12] = 0x00000000u;
|
|
/* 024CBA8C */ _t10 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBA8C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024CBA90 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 024CBA90 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_024CBA94: ; // 0x24cba94
|
|
/* 024CBA94 */ _t12 = cpu->r[30] + 0x00000050u;
|
|
/* 024CBA94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024CBA98 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBA9C */ _t13 = cpu->r[30] + 0x000001D4u;
|
|
/* 024CBA9C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 024CBAA0 */ Gambit_fn_024F212C(cpu);
|
|
/* 024CBAA4 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBAA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CBAA8 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBAA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CBAAC */ cpu->lr = cpu->r[0];
|
|
/* 024CBAB0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBAB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CBAB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CBAB8 */ return;
|
|
}
|
|
|
|
// fn_024CBABC @ 0x24cbabc
|
|
void Gambit_fn_024CBABC(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;
|
|
|
|
L_024CBABC: ; // 0x24cbabc
|
|
/* 024CBABC */ _t0 = cpu->r[3] + 0x000001D4u;
|
|
/* 024CBABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBAC0 */ goto L_024F21E0;
|
|
L_024F21E0: ; // 0x24f21e0
|
|
/* 024F21E0 */ _t1 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 024F21E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024F21E0 */ cpu->r[1] = _t1;
|
|
/* 024F21E4 */ /* nop */
|
|
/* 024F21E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024F21EC */ _t2 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024F21EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024F21F0 */ cpu->r[27] = cpu->r[3];
|
|
/* 024F21F4 */ _t3 = cpu->r[27] + 0x00000008u;
|
|
/* 024F21F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024F21F8 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024F21FC */ _t4 = cpu->r[10] + 0x000023B8u;
|
|
/* 024F21FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024F2200 */ cpu->r[28] = 0x00000000u;
|
|
/* 024F2204 */ _t5 = cpu->r[12] + 0x00006000u;
|
|
/* 024F2204 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024F2208 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[11]);
|
|
/* 024F220C */ _t6 = cpu->r[12] + 0x00000254u;
|
|
/* 024F220C */ cpu->r[24] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024F2210 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024F2210 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024F2210 */ if (_t8) goto L_024F2214; else goto L_024F252C;
|
|
L_024F2214: ; // 0x24f2214
|
|
/* 024F2214 */ cpu->r[31] = 0x10110000u;
|
|
/* 024F2218 */ cpu->r[25] = 0x100C0000u;
|
|
/* 024F221C */ cpu->r[26] = 0x100C0000u;
|
|
/* 024F2220 */ cpu->r[23] = 0x00080000u;
|
|
/* 024F2224 */ cpu->r[25] = cpu->r[25] + 0xFFFFC124u;
|
|
/* 024F2228 */ _t9 = cpu->r[31] + 0x00007399u;
|
|
/* 024F2228 */ cpu->r[31] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024F222C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 024F2230 */ cpu->r[26] = cpu->r[26] + 0xFFFFC248u;
|
|
L_024F2234: ; // 0x24f2234
|
|
/* 024F2234 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000020u);
|
|
/* 024F2238 */ cpu->r[22] = cpu->r[10] + 0x000023BCu;
|
|
/* 024F223C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024F223C */ _t11 = _t10 & 0x00000001u;
|
|
/* 024F223C */ if (_t11) goto L_024F2240; else goto L_024F2248;
|
|
L_024F2240: ; // 0x24f2240
|
|
/* 024F2240 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[28] * (int32_t)0x00000118u);
|
|
/* 024F2244 */ cpu->r[22] = cpu->r[22] + cpu->r[0];
|
|
L_024F2248: ; // 0x24f2248
|
|
/* 024F2248 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024F2248 */ rbrew_write32(cpu->mem, _t12, cpu->r[26]);
|
|
/* 024F224C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024F224C */ rbrew_write32(cpu->mem, _t13, cpu->r[25]);
|
|
/* 024F2250 */ _t14 = cpu->r[22] + 0x00000004u;
|
|
/* 024F2250 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024F2254 */ _t15 = cpu->r[5] + 0x00000014u;
|
|
/* 024F2254 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024F2258 */ cpu->ctr = cpu->r[7];
|
|
/* 024F225C */ cpu->r[29] = 0x00000000u;
|
|
/* 024F2260 */ cpu->r[21] = 0x00000001u;
|
|
/* 024F2264 */ cpu->r[3] = cpu->r[22];
|
|
/* 024F2268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F226C */ _t16 = cpu->r[22] + 0x00000000u;
|
|
/* 024F226C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024F2270 */ _t17 = cpu->r[11] + 0x00000000u;
|
|
/* 024F2270 */ cpu->r[4] = rbrew_read8(cpu->mem, _t17);
|
|
/* 024F2274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 024F2278 */ cpu->r[4] = 0x00080000u;
|
|
/* 024F227C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F227C */ _t19 = _t18 & 0x00000001u;
|
|
/* 024F227C */ if (_t19) goto L_024F22A4; else goto L_024F2280;
|
|
L_024F2280: ; // 0x24f2280
|
|
/* 024F2280 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 024F2284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[4]);
|
|
/* 024F2288 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 024F228C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024F228C */ _t21 = _t20 & 0x00000001u;
|
|
/* 024F228C */ if (_t21) goto L_024F22A0; else goto L_024F2290;
|
|
L_024F2290: ; // 0x24f2290
|
|
/* 024F2290 */ _t22 = cpu->r[11] + 0x00000000u;
|
|
/* 024F2290 */ cpu->r[6] = rbrew_read8(cpu->mem, _t22);
|
|
/* 024F2294 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 024F2298 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2298 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024F2298 */ if (_t24) goto L_024F229C; else goto L_024F2280;
|
|
L_024F229C: ; // 0x24f229c
|
|
/* 024F229C */ goto L_024F22A4;
|
|
L_024F22A0: ; // 0x24f22a0
|
|
/* 024F22A0 */ cpu->r[29] = 0x00000000u;
|
|
L_024F22A4: ; // 0x24f22a4
|
|
/* 024F22A4 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 024F22A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024F22A8 */ _t26 = cpu->r[8] + 0x00000014u;
|
|
/* 024F22A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024F22AC */ cpu->ctr = cpu->r[9];
|
|
/* 024F22B0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024F22B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F22B8 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 024F22B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024F22BC */ _t28 = cpu->r[9] + 0x00000000u;
|
|
/* 024F22BC */ cpu->r[10] = rbrew_read8(cpu->mem, _t28);
|
|
/* 024F22C0 */ cpu->r[30] = 0x00000000u;
|
|
/* 024F22C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 024F22C8 */ cpu->r[10] = 0x00080000u;
|
|
/* 024F22CC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F22CC */ _t30 = _t29 & 0x00000001u;
|
|
/* 024F22CC */ if (_t30) goto L_024F22F4; else goto L_024F22D0;
|
|
L_024F22D0: ; // 0x24f22d0
|
|
/* 024F22D0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 024F22D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 024F22D8 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 024F22DC */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024F22DC */ _t32 = _t31 & 0x00000001u;
|
|
/* 024F22DC */ if (_t32) goto L_024F22F0; else goto L_024F22E0;
|
|
L_024F22E0: ; // 0x24f22e0
|
|
/* 024F22E0 */ _t33 = cpu->r[9] + 0x00000000u;
|
|
/* 024F22E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t33);
|
|
/* 024F22E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024F22E8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F22E8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024F22E8 */ if (_t35) goto L_024F22EC; else goto L_024F22D0;
|
|
L_024F22EC: ; // 0x24f22ec
|
|
/* 024F22EC */ goto L_024F22F4;
|
|
L_024F22F0: ; // 0x24f22f0
|
|
/* 024F22F0 */ cpu->r[30] = 0x00000000u;
|
|
L_024F22F4: ; // 0x24f22f4
|
|
/* 024F22F4 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 024F22F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024F22F8 */ cpu->r[18] = 0x00000000u;
|
|
/* 024F22FC */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024F22FC */ _t37 = _t36 & 0x00000001u;
|
|
/* 024F22FC */ if (_t37) goto L_024F242C; else goto L_024F2300;
|
|
L_024F2300: ; // 0x24f2300
|
|
/* 024F2300 */ cpu->r[20] = cpu->r[31];
|
|
L_024F2304: ; // 0x24f2304
|
|
/* 024F2304 */ _t38 = cpu->r[22] + 0x00000000u;
|
|
/* 024F2304 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024F2308 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024F230C */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024F230C */ rbrew_write32(cpu->mem, _t39, cpu->r[25]);
|
|
/* 024F2310 */ cpu->r[0] = cpu->r[12] + cpu->r[18];
|
|
/* 024F2314 */ cpu->r[19] = cpu->r[30];
|
|
/* 024F2318 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 024F2318 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 024F231C */ Gambit_fn_024F28F0(cpu);
|
|
/* 024F2320 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024F2320 */ cpu->r[4] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024F2324 */ _t42 = cpu->r[4] + 0x00000014u;
|
|
/* 024F2324 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024F2328 */ cpu->ctr = cpu->r[5];
|
|
/* 024F232C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024F2330 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F2334 */ _t43 = cpu->r[1] + 0x00000014u;
|
|
/* 024F2334 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024F2338 */ _t44 = cpu->r[7] + 0x00000014u;
|
|
/* 024F2338 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024F233C */ cpu->ctr = cpu->r[8];
|
|
/* 024F2340 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 024F2340 */ cpu->r[17] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024F2344 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024F2348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F234C */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 024F234C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024F2350 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[0]);
|
|
/* 024F2354 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2354 */ _t48 = _t47 & 0x00000001u;
|
|
/* 024F2354 */ if (_t48) goto L_024F2424; else goto L_024F2358;
|
|
L_024F2358: ; // 0x24f2358
|
|
/* 024F2358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 024F235C */ _t49 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024F235C */ _t50 = _t49 & 0x00000001u;
|
|
/* 024F235C */ if (_t50) goto L_024F2360; else goto L_024F2424;
|
|
L_024F2360: ; // 0x24f2360
|
|
/* 024F2360 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 024F2360 */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024F2364 */ cpu->ctr = cpu->r[19];
|
|
/* 024F2368 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 024F2368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
L_024F236C: ; // 0x24f236c
|
|
/* 024F236C */ _t53 = cpu->r[8] + 0x00000000u;
|
|
/* 024F236C */ cpu->r[7] = rbrew_read8(cpu->mem, _t53);
|
|
/* 024F2370 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[20]);
|
|
/* 024F2374 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2374 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024F2374 */ if (_t55) goto L_024F2378; else goto L_024F2388;
|
|
L_024F2378: ; // 0x24f2378
|
|
/* 024F2378 */ _t56 = cpu->r[5] + 0x00000000u;
|
|
/* 024F2378 */ cpu->r[10] = rbrew_read8(cpu->mem, _t56);
|
|
/* 024F237C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[20]);
|
|
/* 024F2380 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2380 */ _t58 = _t57 & 0x00000001u;
|
|
/* 024F2380 */ if (_t58) goto L_024F2424; else goto L_024F2384;
|
|
L_024F2384: ; // 0x24f2384
|
|
/* 024F2384 */ goto L_024F23B4;
|
|
L_024F2388: ; // 0x24f2388
|
|
/* 024F2388 */ _t59 = cpu->r[5] + 0x00000000u;
|
|
/* 024F2388 */ cpu->r[6] = rbrew_read8(cpu->mem, _t59);
|
|
/* 024F238C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[20]);
|
|
/* 024F2390 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2390 */ _t61 = _t60 & 0x00000001u;
|
|
/* 024F2390 */ if (_t61) goto L_024F23B4; else goto L_024F2394;
|
|
L_024F2394: ; // 0x24f2394
|
|
/* 024F2394 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 024F2398 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2398 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024F2398 */ if (_t63) goto L_024F239C; else goto L_024F23B4;
|
|
L_024F239C: ; // 0x24f239c
|
|
/* 024F239C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 024F23A0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024F23A4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024F23A4 */ _t64 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024F23A4 */ _t65 = _t64 >> (0x00000002u & 31u);
|
|
/* 024F23A4 */ _t66 = _t65 & 0x00000001u;
|
|
/* 024F23A4 */ if (_t66) goto L_024F236C; else goto L_024F23A8;
|
|
L_024F23A8: ; // 0x24f23a8
|
|
/* 024F23A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0xFFFFFFFFu);
|
|
/* 024F23AC */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F23AC */ _t68 = _t67 & 0x00000001u;
|
|
/* 024F23AC */ if (_t68) goto L_024F242C; else goto L_024F23B0;
|
|
L_024F23B0: ; // 0x24f23b0
|
|
/* 024F23B0 */ goto L_024F24BC;
|
|
L_024F23B4: ; // 0x24f23b4
|
|
/* 024F23B4 */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 024F23B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[29]);
|
|
/* 024F23BC */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024F23BC */ _t70 = _t69 & 0x00000001u;
|
|
/* 024F23BC */ if (_t70) goto L_024F23C0; else goto L_024F2304;
|
|
L_024F23C0: ; // 0x24f23c0
|
|
/* 024F23C0 */ cpu->r[11] = 0x100C0000u;
|
|
/* 024F23C4 */ _t71 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024F23C4 */ rbrew_write32(cpu->mem, _t71, cpu->r[25]);
|
|
/* 024F23C8 */ cpu->r[11] = cpu->r[11] + 0xFFFFC250u;
|
|
/* 024F23CC */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 024F23CC */ rbrew_write32(cpu->mem, _t72, cpu->r[11]);
|
|
/* 024F23D0 */ _t73 = cpu->r[22] + 0x00000004u;
|
|
/* 024F23D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024F23D4 */ _t74 = cpu->r[12] + 0x00000014u;
|
|
/* 024F23D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024F23D8 */ cpu->ctr = cpu->r[0];
|
|
/* 024F23DC */ cpu->r[29] = 0x00000001u;
|
|
/* 024F23E0 */ cpu->r[3] = cpu->r[22];
|
|
/* 024F23E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F23E8 */ _t75 = cpu->r[22] + 0x00000004u;
|
|
/* 024F23E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024F23EC */ _t76 = cpu->r[4] + 0x00000014u;
|
|
/* 024F23EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t76);
|
|
/* 024F23F0 */ cpu->ctr = cpu->r[5];
|
|
/* 024F23F4 */ cpu->r[3] = cpu->r[22];
|
|
/* 024F23F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F23FC */ _t77 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024F23FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t77);
|
|
/* 024F2400 */ _t78 = cpu->r[6] + 0x00000014u;
|
|
/* 024F2400 */ cpu->r[7] = rbrew_read32(cpu->mem, _t78);
|
|
/* 024F2404 */ cpu->ctr = cpu->r[7];
|
|
/* 024F2408 */ _t79 = cpu->r[22] + 0x00000000u;
|
|
/* 024F2408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 024F240C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 024F2410 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F2414 */ _t80 = cpu->r[1] + 0x00000018u;
|
|
/* 024F2414 */ cpu->r[8] = rbrew_read32(cpu->mem, _t80);
|
|
/* 024F2418 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[8]);
|
|
/* 024F241C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F241C */ _t82 = _t81 & 0x00000001u;
|
|
/* 024F241C */ if (_t82) goto L_024F24BC; else goto L_024F2420;
|
|
L_024F2420: ; // 0x24f2420
|
|
/* 024F2420 */ goto L_024F248C;
|
|
L_024F2424: ; // 0x24f2424
|
|
/* 024F2424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0xFFFFFFFFu);
|
|
/* 024F2428 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2428 */ _t84 = _t83 & 0x00000001u;
|
|
/* 024F2428 */ if (_t84) goto L_024F242C; else goto L_024F24BC;
|
|
L_024F242C: ; // 0x24f242c
|
|
/* 024F242C */ cpu->r[11] = 0x100C0000u;
|
|
/* 024F2430 */ _t85 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024F2430 */ rbrew_write32(cpu->mem, _t85, cpu->r[25]);
|
|
/* 024F2434 */ cpu->r[11] = cpu->r[11] + 0xFFFFC250u;
|
|
/* 024F2438 */ _t86 = cpu->r[1] + 0x00000018u;
|
|
/* 024F2438 */ rbrew_write32(cpu->mem, _t86, cpu->r[11]);
|
|
/* 024F243C */ _t87 = cpu->r[22] + 0x00000004u;
|
|
/* 024F243C */ cpu->r[12] = rbrew_read32(cpu->mem, _t87);
|
|
/* 024F2440 */ _t88 = cpu->r[12] + 0x00000014u;
|
|
/* 024F2440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88);
|
|
/* 024F2444 */ cpu->ctr = cpu->r[0];
|
|
/* 024F2448 */ cpu->r[29] = 0x00000001u;
|
|
/* 024F244C */ cpu->r[3] = cpu->r[22];
|
|
/* 024F2450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F2454 */ _t89 = cpu->r[22] + 0x00000004u;
|
|
/* 024F2454 */ cpu->r[4] = rbrew_read32(cpu->mem, _t89);
|
|
/* 024F2458 */ _t90 = cpu->r[4] + 0x00000014u;
|
|
/* 024F2458 */ cpu->r[5] = rbrew_read32(cpu->mem, _t90);
|
|
/* 024F245C */ cpu->ctr = cpu->r[5];
|
|
/* 024F2460 */ cpu->r[3] = cpu->r[22];
|
|
/* 024F2464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F2468 */ _t91 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024F2468 */ cpu->r[6] = rbrew_read32(cpu->mem, _t91);
|
|
/* 024F246C */ _t92 = cpu->r[6] + 0x00000014u;
|
|
/* 024F246C */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 024F2470 */ cpu->ctr = cpu->r[7];
|
|
/* 024F2474 */ _t93 = cpu->r[22] + 0x00000000u;
|
|
/* 024F2474 */ cpu->r[30] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024F2478 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 024F247C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F2480 */ _t94 = cpu->r[1] + 0x00000018u;
|
|
/* 024F2480 */ cpu->r[8] = rbrew_read32(cpu->mem, _t94);
|
|
/* 024F2484 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[8]);
|
|
/* 024F2488 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F2488 */ _t96 = _t95 & 0x00000001u;
|
|
/* 024F2488 */ if (_t96) goto L_024F24BC; else goto L_024F248C;
|
|
L_024F248C: ; // 0x24f248c
|
|
/* 024F248C */ _t97 = cpu->r[22] + 0x00000000u;
|
|
/* 024F248C */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 024F2490 */ cpu->r[11] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 024F2494 */ cpu->ctr = cpu->r[23];
|
|
/* 024F2498 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_024F249C: ; // 0x24f249c
|
|
/* 024F249C */ _t98 = cpu->r[12] + 0x00000001u;
|
|
/* 024F249C */ cpu->r[10] = rbrew_read8(cpu->mem, _t98);
|
|
/* 024F249C */ cpu->r[12] = _t98;
|
|
/* 024F24A0 */ _t99 = cpu->r[11] + 0x00000001u;
|
|
/* 024F24A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t99);
|
|
/* 024F24A0 */ cpu->r[11] = _t99;
|
|
/* 024F24A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]);
|
|
/* 024F24A8 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F24A8 */ _t101 = _t100 & 0x00000001u;
|
|
/* 024F24A8 */ if (_t101) goto L_024F24AC; else goto L_024F24B8;
|
|
L_024F24AC: ; // 0x24f24ac
|
|
/* 024F24AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 024F24B0 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F24B0 */ _t103 = _t102 & 0x00000001u;
|
|
/* 024F24B0 */ if (_t103) goto L_024F24BC; else goto L_024F24B4;
|
|
L_024F24B4: ; // 0x24f24b4
|
|
/* 024F24B4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024F24B4 */ _t104 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024F24B4 */ _t105 = _t104 >> (0x00000002u & 31u);
|
|
/* 024F24B4 */ _t106 = _t105 & 0x00000001u;
|
|
/* 024F24B4 */ if (_t106) goto L_024F249C; else goto L_024F24B8;
|
|
L_024F24B8: ; // 0x24f24b8
|
|
/* 024F24B8 */ cpu->r[21] = 0x00000000u;
|
|
L_024F24BC: ; // 0x24f24bc
|
|
/* 024F24BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 024F24C0 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F24C0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 024F24C0 */ if (_t108) goto L_024F2518; else goto L_024F24C4;
|
|
L_024F24C4: ; // 0x24f24c4
|
|
/* 024F24C4 */ _t109 = cpu->r[22] + 0x00000090u;
|
|
/* 024F24C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t109);
|
|
/* 024F24C8 */ _t110 = cpu->r[9] + 0x00000014u;
|
|
/* 024F24C8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t110);
|
|
/* 024F24CC */ cpu->ctr = cpu->r[8];
|
|
/* 024F24D0 */ cpu->r[3] = cpu->r[22] + 0x0000008Cu;
|
|
/* 024F24D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024F24D8 */ _t111 = cpu->r[22] + 0x0000008Cu;
|
|
/* 024F24D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t111);
|
|
/* 024F24DC */ cpu->r[3] = cpu->r[24];
|
|
/* 024F24E0 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 024F24E0 */ rbrew_write32(cpu->mem, _t112, cpu->r[25]);
|
|
/* 024F24E4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 024F24E8 */ _t113 = cpu->r[1] + 0x00000020u;
|
|
/* 024F24E8 */ rbrew_write32(cpu->mem, _t113, cpu->r[6]);
|
|
/* 024F24EC */ Gambit_fn_020EEE28(cpu);
|
|
/* 024F24F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024F24F4 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024F24F4 */ _t115 = _t114 & 0x00000001u;
|
|
/* 024F24F4 */ if (_t115) goto L_024F2518; else goto L_024F24F8;
|
|
L_024F24F8: ; // 0x24f24f8
|
|
/* 024F24F8 */ _t116 = cpu->r[27] + 0x00000000u;
|
|
/* 024F24F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t116);
|
|
/* 024F24FC */ _t117 = cpu->r[27] + 0x00000004u;
|
|
/* 024F24FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t117);
|
|
/* 024F2500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]);
|
|
/* 024F2504 */ _t118 = cpu->r[3] + 0x0000471Cu;
|
|
/* 024F2504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118);
|
|
/* 024F2508 */ _t119 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024F2508 */ _t120 = _t119 & 0x00000001u;
|
|
/* 024F2508 */ if (_t120) goto L_024F250C; else goto L_024F2514;
|
|
L_024F250C: ; // 0x24f250c
|
|
/* 024F250C */ cpu->r[10] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024F2510 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024F2514: ; // 0x24f2514
|
|
/* 024F2514 */ _t121 = cpu->r[11] + 0x00000000u;
|
|
/* 024F2514 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
L_024F2518: ; // 0x24f2518
|
|
/* 024F2518 */ _t122 = cpu->r[27] + 0x00000008u;
|
|
/* 024F2518 */ cpu->r[10] = rbrew_read32(cpu->mem, _t122);
|
|
/* 024F251C */ _t123 = cpu->r[10] + 0x000023B8u;
|
|
/* 024F251C */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024F2520 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 024F2524 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 024F2528 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024F2528 */ _t125 = _t124 & 0x00000001u;
|
|
/* 024F2528 */ if (_t125) goto L_024F2234; else goto L_024F252C;
|
|
L_024F252C: ; // 0x24f252c
|
|
/* 024F252C */ /* nop */
|
|
/* 024F2530 */ _t126 = cpu->r[1] + 0x0000006Cu;
|
|
/* 024F2530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 024F2534 */ cpu->lr = cpu->r[0];
|
|
/* 024F2538 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 024F253C */ return;
|
|
}
|
|
|
|
// fn_024CBAC4 @ 0x24cbac4
|
|
void Gambit_fn_024CBAC4(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_024CBAC4: ; // 0x24cbac4
|
|
/* 024CBAC4 */ cpu->r[0] = cpu->lr;
|
|
/* 024CBAC8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024CBAC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBAC8 */ cpu->r[1] = _t0;
|
|
/* 024CBACC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CBACC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024CBAD0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 024CBAD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CBAD4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024CBAD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024CBAD8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 024CBAD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024CBADC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CBADC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CBAE0 */ cpu->r[29] = 0x101C0000u;
|
|
/* 024CBAE4 */ _t6 = cpu->r[29] + 0x00006000u;
|
|
/* 024CBAE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CBAE4 */ cpu->r[29] = _t6;
|
|
/* 024CBAE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CBAEC */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 024CBAEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CBAF0 */ cpu->r[31] = cpu->r[5];
|
|
/* 024CBAF4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024CBAF8 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024CBAFC */ cpu->r[3] = cpu->r[30];
|
|
/* 024CBB00 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 024CBB04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBB08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CBB08 */ if (_t9) goto L_024CBB54; else goto L_024CBB0C;
|
|
L_024CBB0C: ; // 0x24cbb0c
|
|
/* 024CBB0C */ _t10 = cpu->r[30] + 0x00000050u;
|
|
/* 024CBB0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CBB10 */ _t11 = cpu->r[28] + 0x00004714u;
|
|
/* 024CBB10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CBB14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 024CBB18 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB18 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CBB18 */ if (_t13) goto L_024CBB38; else goto L_024CBB1C;
|
|
L_024CBB1C: ; // 0x24cbb1c
|
|
/* 024CBB1C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 024CBB1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CBB20 */ _t15 = cpu->r[7] + 0x00000270u;
|
|
/* 024CBB20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CBB24 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CBB28 */ Gambit_fn_0240DB38(cpu);
|
|
/* 024CBB2C */ _t16 = cpu->r[28] + 0x00004714u;
|
|
/* 024CBB2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CBB30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[3]);
|
|
/* 024CBB34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CBB34 */ if (_t18) goto L_024CBB38; else goto L_024CBB54;
|
|
L_024CBB38: ; // 0x24cbb38
|
|
/* 024CBB38 */ _t19 = cpu->r[30] + 0x000001D4u;
|
|
/* 024CBB38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CBB3C */ cpu->r[4] = 0x00000000u;
|
|
/* 024CBB40 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 024CBB40 */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 024CBB44 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBB44 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 024CBB48 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024CBB4C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBB4C */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 024CBB50 */ Gambit_fn_024F2540(cpu);
|
|
L_024CBB54: ; // 0x24cbb54
|
|
/* 024CBB54 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 024CBB54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024CBB58 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CBB58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024CBB5C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CBB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024CBB60 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 024CBB60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024CBB64 */ cpu->lr = cpu->r[0];
|
|
/* 024CBB68 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 024CBB68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CBB6C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024CBB70 */ return;
|
|
}
|
|
|
|
// fn_024CBAC8 @ 0x24cbac8
|
|
void Gambit_fn_024CBAC8(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_024CBAC8: ; // 0x24cbac8
|
|
/* 024CBAC8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024CBAC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBAC8 */ cpu->r[1] = _t0;
|
|
/* 024CBACC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CBACC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 024CBAD0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 024CBAD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024CBAD4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024CBAD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024CBAD8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 024CBAD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024CBADC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CBADC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CBAE0 */ cpu->r[29] = 0x101C0000u;
|
|
/* 024CBAE4 */ _t6 = cpu->r[29] + 0x00006000u;
|
|
/* 024CBAE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CBAE4 */ cpu->r[29] = _t6;
|
|
/* 024CBAE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 024CBAEC */ _t7 = cpu->r[12] + 0x00000268u;
|
|
/* 024CBAEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CBAF0 */ cpu->r[31] = cpu->r[5];
|
|
/* 024CBAF4 */ Gambit_fn_0261F55C(cpu);
|
|
/* 024CBAF8 */ cpu->r[4] = cpu->r[3] + 0x00000244u;
|
|
/* 024CBAFC */ cpu->r[3] = cpu->r[30];
|
|
/* 024CBB00 */ Gambit_fn_024AE2A0(cpu);
|
|
/* 024CBB04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBB08 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB08 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024CBB08 */ if (_t9) goto L_024CBB54; else goto L_024CBB0C;
|
|
L_024CBB0C: ; // 0x24cbb0c
|
|
/* 024CBB0C */ _t10 = cpu->r[30] + 0x00000050u;
|
|
/* 024CBB0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CBB10 */ _t11 = cpu->r[28] + 0x00004714u;
|
|
/* 024CBB10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024CBB14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 024CBB18 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB18 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024CBB18 */ if (_t13) goto L_024CBB38; else goto L_024CBB1C;
|
|
L_024CBB1C: ; // 0x24cbb1c
|
|
/* 024CBB1C */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 024CBB1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024CBB20 */ _t15 = cpu->r[7] + 0x00000270u;
|
|
/* 024CBB20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024CBB24 */ cpu->r[4] = cpu->r[31];
|
|
/* 024CBB28 */ Gambit_fn_0240DB38(cpu);
|
|
/* 024CBB2C */ _t16 = cpu->r[28] + 0x00004714u;
|
|
/* 024CBB2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024CBB30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[3]);
|
|
/* 024CBB34 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBB34 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024CBB34 */ if (_t18) goto L_024CBB38; else goto L_024CBB54;
|
|
L_024CBB38: ; // 0x24cbb38
|
|
/* 024CBB38 */ _t19 = cpu->r[30] + 0x000001D4u;
|
|
/* 024CBB38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024CBB3C */ cpu->r[4] = 0x00000000u;
|
|
/* 024CBB40 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 024CBB40 */ rbrew_write32(cpu->mem, _t20, cpu->r[4]);
|
|
/* 024CBB44 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 024CBB44 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 024CBB48 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024CBB4C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBB4C */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 024CBB50 */ Gambit_fn_024F2540(cpu);
|
|
L_024CBB54: ; // 0x24cbb54
|
|
/* 024CBB54 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 024CBB54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024CBB58 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024CBB58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024CBB5C */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024CBB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024CBB60 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 024CBB60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024CBB64 */ cpu->lr = cpu->r[0];
|
|
/* 024CBB68 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 024CBB68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024CBB6C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024CBB70 */ return;
|
|
}
|
|
|
|
// fn_024CBB74 @ 0x24cbb74
|
|
void Gambit_fn_024CBB74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024CBB74: ; // 0x24cbb74
|
|
/* 024CBB74 */ cpu->r[0] = cpu->lr;
|
|
/* 024CBB78 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CBB7C */ cpu->r[11] = 0x100B0000u;
|
|
/* 024CBB80 */ cpu->r[12] = cpu->r[12] + 0x00005EA0u;
|
|
/* 024CBB84 */ cpu->r[11] = cpu->r[11] + 0x00005E20u;
|
|
/* 024CBB88 */ cpu->r[3] = 0x101F0000u;
|
|
/* 024CBB8C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024CBB8C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024CBB90 */ cpu->r[0] = 0x024D0000u;
|
|
/* 024CBB94 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024CBB94 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024CBB94 */ cpu->r[1] = _t1;
|
|
/* 024CBB98 */ cpu->r[0] = cpu->r[0] + 0xFFFFC018u;
|
|
/* 024CBB9C */ _t2 = cpu->r[3] + 0xFFFF8BD0u;
|
|
/* 024CBB9C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 024CBB9C */ cpu->r[3] = _t2;
|
|
/* 024CBBA0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CBBA4 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBBA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024CBBA8 */ cpu->r[12] = cpu->r[12] + 0x00005E78u;
|
|
/* 024CBBAC */ _t4 = cpu->r[3] + 0x00000010u;
|
|
/* 024CBBAC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024CBBB0 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024CBBB0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 024CBBB4 */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CBBB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 024CBBB8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024CBBBC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024CBBC0 */ cpu->r[3] = cpu->r[3] + 0x000064ACu;
|
|
/* 024CBBC4 */ Gambit_fn_02C83090(cpu);
|
|
/* 024CBBC8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CBBCC */ cpu->lr = cpu->r[0];
|
|
/* 024CBBD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024CBBD4 */ return;
|
|
}
|
|
|
|
// fn_024CBB94 @ 0x24cbb94
|
|
void Gambit_fn_024CBB94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024CBB94: ; // 0x24cbb94
|
|
/* 024CBB94 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024CBB94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBB94 */ cpu->r[1] = _t0;
|
|
/* 024CBB98 */ cpu->r[0] = cpu->r[0] + 0xFFFFC018u;
|
|
/* 024CBB9C */ _t1 = cpu->r[3] + 0xFFFF8BD0u;
|
|
/* 024CBB9C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024CBB9C */ cpu->r[3] = _t1;
|
|
/* 024CBBA0 */ cpu->r[12] = 0x100B0000u;
|
|
/* 024CBBA4 */ _t2 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBBA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024CBBA8 */ cpu->r[12] = cpu->r[12] + 0x00005E78u;
|
|
/* 024CBBAC */ _t3 = cpu->r[3] + 0x00000010u;
|
|
/* 024CBBAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024CBBB0 */ _t4 = cpu->r[3] + 0x00000008u;
|
|
/* 024CBBB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024CBBB4 */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CBBB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024CBBB8 */ Gambit_fn_027DB2F8(cpu);
|
|
/* 024CBBBC */ cpu->r[3] = 0x101C0000u;
|
|
/* 024CBBC0 */ cpu->r[3] = cpu->r[3] + 0x000064ACu;
|
|
/* 024CBBC4 */ Gambit_fn_02C83090(cpu);
|
|
/* 024CBBC8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CBBCC */ cpu->lr = cpu->r[0];
|
|
/* 024CBBD0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024CBBD4 */ return;
|
|
}
|
|
|
|
// fn_024CBBD8 @ 0x24cbbd8
|
|
void Gambit_fn_024CBBD8(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_024CBBD8: ; // 0x24cbbd8
|
|
/* 024CBBD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBBDC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBBDC */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CBBDC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBBDC */ goto L_024CBBE0;
|
|
L_024CBBE0: ; // 0x24cbbe0
|
|
/* 024CBBE0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CBBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CBBE4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBBE4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CBBE4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBBE4 */ goto L_024CBBE8;
|
|
L_024CBBE8: ; // 0x24cbbe8
|
|
/* 024CBBE8 */ 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_024CBBEC @ 0x24cbbec
|
|
void Gambit_fn_024CBBEC(CPUState* cpu) {
|
|
L_024CBBEC: ; // 0x24cbbec
|
|
/* 024CBBEC */ return;
|
|
}
|
|
|
|
// fn_024CBBF0 @ 0x24cbbf0
|
|
void Gambit_fn_024CBBF0(CPUState* cpu) {
|
|
L_024CBBF0: ; // 0x24cbbf0
|
|
/* 024CBBF0 */ return;
|
|
}
|
|
|
|
// fn_024CBBF4 @ 0x24cbbf4
|
|
void Gambit_fn_024CBBF4(CPUState* cpu) {
|
|
L_024CBBF4: ; // 0x24cbbf4
|
|
/* 024CBBF4 */ return;
|
|
}
|
|
|
|
// fn_024CBBF8 @ 0x24cbbf8
|
|
void Gambit_fn_024CBBF8(CPUState* cpu) {
|
|
L_024CBBF8: ; // 0x24cbbf8
|
|
/* 024CBBF8 */ return;
|
|
}
|
|
|
|
// fn_024CBBFC @ 0x24cbbfc
|
|
void Gambit_fn_024CBBFC(CPUState* cpu) {
|
|
L_024CBBFC: ; // 0x24cbbfc
|
|
/* 024CBBFC */ return;
|
|
}
|
|
|
|
// fn_024CBC00 @ 0x24cbc00
|
|
void Gambit_fn_024CBC00(CPUState* cpu) {
|
|
L_024CBC00: ; // 0x24cbc00
|
|
/* 024CBC00 */ return;
|
|
}
|
|
|
|
// fn_024CBC04 @ 0x24cbc04
|
|
void Gambit_fn_024CBC04(CPUState* cpu) {
|
|
L_024CBC04: ; // 0x24cbc04
|
|
/* 024CBC04 */ return;
|
|
}
|
|
|
|
// fn_024CBC08 @ 0x24cbc08
|
|
void Gambit_fn_024CBC08(CPUState* cpu) {
|
|
L_024CBC08: ; // 0x24cbc08
|
|
/* 024CBC08 */ return;
|
|
}
|
|
|
|
// fn_024CBC0C @ 0x24cbc0c
|
|
void Gambit_fn_024CBC0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024CBC0C: ; // 0x24cbc0c
|
|
/* 024CBC0C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024CBC0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CBC14 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBC14 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CBC14 */ if (_t2) goto L_024CBC20; else goto L_024CBC18;
|
|
L_024CBC18: ; // 0x24cbc18
|
|
/* 024CBC18 */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 024CBC1C */ return;
|
|
L_024CBC20: ; // 0x24cbc20
|
|
/* 024CBC20 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CBC24 */ return;
|
|
}
|
|
|
|
// fn_024CBC28 @ 0x24cbc28
|
|
void Gambit_fn_024CBC28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024CBC28: ; // 0x24cbc28
|
|
/* 024CBC28 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 024CBC28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CBC30 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBC30 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CBC30 */ if (_t2) goto L_024CBC3C; else goto L_024CBC34;
|
|
L_024CBC34: ; // 0x24cbc34
|
|
/* 024CBC34 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 024CBC38 */ return;
|
|
L_024CBC3C: ; // 0x24cbc3c
|
|
/* 024CBC3C */ cpu->r[3] = 0x00000000u;
|
|
/* 024CBC40 */ return;
|
|
}
|
|
|
|
// fn_024CBC44 @ 0x24cbc44
|
|
void Gambit_fn_024CBC44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CBC44: ; // 0x24cbc44
|
|
/* 024CBC44 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CBC44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC48 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CBC48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CBC4C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBC4C */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CBC4C */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CBC4C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBC4C */ goto L_024CBC50;
|
|
L_024CBC50: ; // 0x24cbc50
|
|
/* 024CBC50 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBC50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CBC54 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 024CBC54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CBC58 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBC5C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBC60 @ 0x24cbc60
|
|
void Gambit_fn_024CBC60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CBC60: ; // 0x24cbc60
|
|
/* 024CBC60 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CBC60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC64 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CBC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CBC68 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBC68 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CBC68 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CBC68 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBC68 */ goto L_024CBC6C;
|
|
L_024CBC6C: ; // 0x24cbc6c
|
|
/* 024CBC6C */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBC6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CBC70 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 024CBC70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CBC74 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBC78 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBC7C @ 0x24cbc7c
|
|
void Gambit_fn_024CBC7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CBC7C: ; // 0x24cbc7c
|
|
/* 024CBC7C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024CBC7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC80 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CBC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024CBC84 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBC84 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024CBC84 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 024CBC84 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBC84 */ goto L_024CBC88;
|
|
L_024CBC88: ; // 0x24cbc88
|
|
/* 024CBC88 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBC88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CBC8C */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 024CBC8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024CBC90 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBC94 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBC98 @ 0x24cbc98
|
|
void Gambit_fn_024CBC98(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CBC98: ; // 0x24cbc98
|
|
/* 024CBC98 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBC98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBC9C */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 024CBC9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CBCA0 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBCA4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBCA8 @ 0x24cbca8
|
|
void Gambit_fn_024CBCA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024CBCA8: ; // 0x24cbca8
|
|
/* 024CBCA8 */ cpu->r[0] = cpu->lr;
|
|
/* 024CBCAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CBCAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBCAC */ cpu->r[1] = _t0;
|
|
/* 024CBCB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBCB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CBCB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CBCB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBCB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CBCBC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CBCBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CBCC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024CBCC4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBCC4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CBCC4 */ if (_t5) goto L_024CBCC8; else goto L_024CBCE4;
|
|
L_024CBCC8: ; // 0x24cbcc8
|
|
/* 024CBCC8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024CBCC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CBCCC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024CBCCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CBCD0 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBCD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBCD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CBCDC */ cpu->r[0] = 0x00000002u;
|
|
/* 024CBCE0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CBCE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CBCE4: ; // 0x24cbce4
|
|
/* 024CBCE4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CBCE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBCE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CBCEC */ cpu->lr = cpu->r[0];
|
|
/* 024CBCF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CBCF4 */ return;
|
|
}
|
|
|
|
// fn_024CBCAC @ 0x24cbcac
|
|
void Gambit_fn_024CBCAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024CBCAC: ; // 0x24cbcac
|
|
/* 024CBCAC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024CBCAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024CBCAC */ cpu->r[1] = _t0;
|
|
/* 024CBCB0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBCB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024CBCB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024CBCB8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBCB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024CBCBC */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CBCBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024CBCC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 024CBCC4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBCC4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024CBCC4 */ if (_t5) goto L_024CBCC8; else goto L_024CBCE4;
|
|
L_024CBCC8: ; // 0x24cbcc8
|
|
/* 024CBCC8 */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 024CBCC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024CBCCC */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 024CBCCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024CBCD0 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBCD4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024CBCD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024CBCDC */ cpu->r[0] = 0x00000002u;
|
|
/* 024CBCE0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024CBCE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_024CBCE4: ; // 0x24cbce4
|
|
/* 024CBCE4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 024CBCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024CBCE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024CBCE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024CBCEC */ cpu->lr = cpu->r[0];
|
|
/* 024CBCF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024CBCF4 */ return;
|
|
}
|
|
|
|
// fn_024CBD00 @ 0x24cbd00
|
|
void Gambit_fn_024CBD00(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_024CBD00: ; // 0x24cbd00
|
|
/* 024CBD00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024CBD04 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBD04 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024CBD04 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBD04 */ goto L_024CBD08;
|
|
L_024CBD08: ; // 0x24cbd08
|
|
/* 024CBD08 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024CBD08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024CBD0C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024CBD0C */ _t3 = _t2 & 0x00000001u;
|
|
/* 024CBD0C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024CBD0C */ goto L_024CBD10;
|
|
L_024CBD10: ; // 0x24cbd10
|
|
/* 024CBD10 */ 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_024CBD14 @ 0x24cbd14
|
|
void Gambit_fn_024CBD14(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CBD14: ; // 0x24cbd14
|
|
/* 024CBD14 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBD14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBD18 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 024CBD18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CBD1C */ cpu->ctr = cpu->r[0];
|
|
/* 024CBD20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBD24 @ 0x24cbd24
|
|
void Gambit_fn_024CBD24(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CBD24: ; // 0x24cbd24
|
|
/* 024CBD24 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBD24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBD28 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024CBD28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CBD2C */ cpu->ctr = cpu->r[0];
|
|
/* 024CBD30 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBD34 @ 0x24cbd34
|
|
void Gambit_fn_024CBD34(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CBD34: ; // 0x24cbd34
|
|
/* 024CBD34 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBD34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBD38 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 024CBD38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CBD3C */ cpu->ctr = cpu->r[0];
|
|
/* 024CBD40 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBD44 @ 0x24cbd44
|
|
void Gambit_fn_024CBD44(CPUState* cpu) {
|
|
L_024CBD44: ; // 0x24cbd44
|
|
/* 024CBD44 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CBD48 */ return;
|
|
}
|
|
|
|
// fn_024CBD4C @ 0x24cbd4c
|
|
void Gambit_fn_024CBD4C(CPUState* cpu) {
|
|
L_024CBD4C: ; // 0x24cbd4c
|
|
/* 024CBD4C */ return;
|
|
}
|
|
|
|
// fn_024CBD50 @ 0x24cbd50
|
|
void Gambit_fn_024CBD50(CPUState* cpu) {
|
|
L_024CBD50: ; // 0x24cbd50
|
|
/* 024CBD50 */ return;
|
|
}
|
|
|
|
// fn_024CBD54 @ 0x24cbd54
|
|
void Gambit_fn_024CBD54(CPUState* cpu) {
|
|
L_024CBD54: ; // 0x24cbd54
|
|
/* 024CBD54 */ return;
|
|
}
|
|
|
|
// fn_024CBD58 @ 0x24cbd58
|
|
void Gambit_fn_024CBD58(CPUState* cpu) {
|
|
L_024CBD58: ; // 0x24cbd58
|
|
/* 024CBD58 */ return;
|
|
}
|
|
|
|
// fn_024CBD5C @ 0x24cbd5c
|
|
void Gambit_fn_024CBD5C(CPUState* cpu) {
|
|
L_024CBD5C: ; // 0x24cbd5c
|
|
/* 024CBD5C */ return;
|
|
}
|
|
|
|
// fn_024CBD60 @ 0x24cbd60
|
|
void Gambit_fn_024CBD60(CPUState* cpu) {
|
|
L_024CBD60: ; // 0x24cbd60
|
|
/* 024CBD60 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CBD64 */ return;
|
|
}
|
|
|
|
// fn_024CBD68 @ 0x24cbd68
|
|
void Gambit_fn_024CBD68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024CBD68: ; // 0x24cbd68
|
|
/* 024CBD68 */ cpu->r[10] = 0x101F0000u;
|
|
/* 024CBD6C */ _t0 = cpu->r[10] + 0x00006338u;
|
|
/* 024CBD6C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBD6C */ cpu->r[10] = _t0;
|
|
/* 024CBD70 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024CBD70 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024CBD74 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024CBD74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024CBD78 */ _t3 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBD78 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024CBD7C */ _t4 = cpu->r[10] + 0x00000008u;
|
|
/* 024CBD7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024CBD80 */ _t5 = cpu->r[3] + 0x00000008u;
|
|
/* 024CBD80 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024CBD84 */ return;
|
|
}
|
|
|
|
// fn_024CBD88 @ 0x24cbd88
|
|
void Gambit_fn_024CBD88(CPUState* cpu) {
|
|
L_024CBD88: ; // 0x24cbd88
|
|
/* 024CBD88 */ return;
|
|
}
|
|
|
|
// fn_024CBD8C @ 0x24cbd8c
|
|
void Gambit_fn_024CBD8C(CPUState* cpu) {
|
|
L_024CBD8C: ; // 0x24cbd8c
|
|
/* 024CBD8C */ return;
|
|
}
|
|
|
|
// fn_024CBD90 @ 0x24cbd90
|
|
void Gambit_fn_024CBD90(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024CBD90: ; // 0x24cbd90
|
|
/* 024CBD90 */ _t0 = cpu->r[3] + 0x00000140u;
|
|
/* 024CBD90 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024CBD94 */ return;
|
|
}
|
|
|
|
// fn_024CBD98 @ 0x24cbd98
|
|
void Gambit_fn_024CBD98(CPUState* cpu) {
|
|
L_024CBD98: ; // 0x24cbd98
|
|
/* 024CBD98 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CBD9C */ return;
|
|
}
|
|
|
|
// fn_024CBDA0 @ 0x24cbda0
|
|
void Gambit_fn_024CBDA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024CBDA0: ; // 0x24cbda0
|
|
/* 024CBDA0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024CBDA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024CBDA4 */ _t1 = cpu->r[12] + 0x00000234u;
|
|
/* 024CBDA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024CBDA8 */ cpu->ctr = cpu->r[0];
|
|
/* 024CBDAC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024CBDB0 @ 0x24cbdb0
|
|
void Gambit_fn_024CBDB0(CPUState* cpu) {
|
|
L_024CBDB0: ; // 0x24cbdb0
|
|
/* 024CBDB0 */ return;
|
|
}
|
|
|
|
// fn_024CBDB4 @ 0x24cbdb4
|
|
void Gambit_fn_024CBDB4(CPUState* cpu) {
|
|
L_024CBDB4: ; // 0x24cbdb4
|
|
/* 024CBDB4 */ return;
|
|
}
|
|
|
|
// fn_024CBDB8 @ 0x24cbdb8
|
|
void Gambit_fn_024CBDB8(CPUState* cpu) {
|
|
L_024CBDB8: ; // 0x24cbdb8
|
|
/* 024CBDB8 */ return;
|
|
}
|
|
|
|
// fn_024CBDBC @ 0x24cbdbc
|
|
void Gambit_fn_024CBDBC(CPUState* cpu) {
|
|
L_024CBDBC: ; // 0x24cbdbc
|
|
/* 024CBDBC */ return;
|
|
}
|
|
|
|
// fn_024CBDC0 @ 0x24cbdc0
|
|
void Gambit_fn_024CBDC0(CPUState* cpu) {
|
|
L_024CBDC0: ; // 0x24cbdc0
|
|
/* 024CBDC0 */ return;
|
|
}
|
|
|
|
// fn_024CBDC4 @ 0x24cbdc4
|
|
void Gambit_fn_024CBDC4(CPUState* cpu) {
|
|
L_024CBDC4: ; // 0x24cbdc4
|
|
/* 024CBDC4 */ return;
|
|
}
|
|
|
|
// fn_024CBDC8 @ 0x24cbdc8
|
|
void Gambit_fn_024CBDC8(CPUState* cpu) {
|
|
L_024CBDC8: ; // 0x24cbdc8
|
|
/* 024CBDC8 */ return;
|
|
}
|
|
|
|
// fn_024CBDCC @ 0x24cbdcc
|
|
void Gambit_fn_024CBDCC(CPUState* cpu) {
|
|
L_024CBDCC: ; // 0x24cbdcc
|
|
/* 024CBDCC */ return;
|
|
}
|
|
|
|
// fn_024CBDD0 @ 0x24cbdd0
|
|
void Gambit_fn_024CBDD0(CPUState* cpu) {
|
|
L_024CBDD0: ; // 0x24cbdd0
|
|
/* 024CBDD0 */ return;
|
|
}
|
|
|
|
// fn_024CBDD4 @ 0x24cbdd4
|
|
void Gambit_fn_024CBDD4(CPUState* cpu) {
|
|
L_024CBDD4: ; // 0x24cbdd4
|
|
/* 024CBDD4 */ return;
|
|
}
|
|
|
|
// fn_024CBDD8 @ 0x24cbdd8
|
|
void Gambit_fn_024CBDD8(CPUState* cpu) {
|
|
L_024CBDD8: ; // 0x24cbdd8
|
|
/* 024CBDD8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024CBDDC */ return;
|
|
}
|
|
|
|
// fn_024CBDE0 @ 0x24cbde0
|
|
void Gambit_fn_024CBDE0(CPUState* cpu) {
|
|
L_024CBDE0: ; // 0x24cbde0
|
|
/* 024CBDE0 */ return;
|
|
}
|
|
|
|
// fn_024CBDE4 @ 0x24cbde4
|
|
void Gambit_fn_024CBDE4(CPUState* cpu) {
|
|
L_024CBDE4: ; // 0x24cbde4
|
|
/* 024CBDE4 */ return;
|
|
}
|
|
|
|
// fn_024CBDE8 @ 0x24cbde8
|
|
void Gambit_fn_024CBDE8(CPUState* cpu) {
|
|
L_024CBDE8: ; // 0x24cbde8
|
|
/* 024CBDE8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024CBDEC */ return;
|
|
}
|
|
|